From b40c9dbaa3daf286c51df0e318c064e2a2033731 Mon Sep 17 00:00:00 2001 From: Caleb Cox Date: Thu, 21 May 2026 12:25:01 -0500 Subject: [PATCH 1/3] Migrate to TypeScript 6 --- .pnp.cjs | 27 ++++++++++++------- ...script-npm-6.0.3-585eecd158-0ef2357a4c.zip | 3 +++ ...typescript-patch-bfb0cdd3b9-22b67a18da.zip | 3 +++ .yarn/sdks/typescript/package.json | 2 +- app.d.ts | 1 + i18next.d.ts | 13 +++++++++ package.json | 2 +- pages/api/auth/[...nextauth].page.ts | 3 +-- pages/api/uploads/csv-upload.page.ts | 2 +- .../api/uploads/upload-person-avatar.page.ts | 2 +- .../MassActions/MassActionsDropdown.tsx | 2 +- tsconfig.json | 14 +++++++--- yarn.lock | 26 +++++++++++++++--- 13 files changed, 76 insertions(+), 24 deletions(-) create mode 100644 .yarn/cache/typescript-npm-6.0.3-585eecd158-0ef2357a4c.zip create mode 100644 .yarn/cache/typescript-patch-bfb0cdd3b9-22b67a18da.zip create mode 100644 i18next.d.ts diff --git a/.pnp.cjs b/.pnp.cjs index 6798983b40..fd857d7d46 100755 --- a/.pnp.cjs +++ b/.pnp.cjs @@ -140,7 +140,7 @@ const RAW_RUNTIME_STATE = ["ts-essentials", "virtual:9909ff5388c6b6a3a46f12eb37c0afb449fcd1eedb9f02d871bde711a076c929583f48ecc4b85fa6d71478b076104a25f83dee45bc69687a22f551c576d7595d#npm:9.3.0"],\ ["tslib", "npm:2.4.0"],\ ["tss-react", "virtual:9909ff5388c6b6a3a46f12eb37c0afb449fcd1eedb9f02d871bde711a076c929583f48ecc4b85fa6d71478b076104a25f83dee45bc69687a22f551c576d7595d#npm:4.1.3"],\ - ["typescript", "patch:typescript@npm%3A5.6.3#optional!builtin::version=5.6.3&hash=8c6c40"],\ + ["typescript", "patch:typescript@npm%3A6.0.3#optional!builtin::version=6.0.3&hash=5786d5"],\ ["url-loader", "virtual:9909ff5388c6b6a3a46f12eb37c0afb449fcd1eedb9f02d871bde711a076c929583f48ecc4b85fa6d71478b076104a25f83dee45bc69687a22f551c576d7595d#npm:4.1.1"],\ ["webpack", "virtual:9909ff5388c6b6a3a46f12eb37c0afb449fcd1eedb9f02d871bde711a076c929583f48ecc4b85fa6d71478b076104a25f83dee45bc69687a22f551c576d7595d#npm:5.96.1"],\ ["yup", "npm:1.4.0"]\ @@ -9141,7 +9141,7 @@ const RAW_RUNTIME_STATE = ["natural-compare", "npm:1.4.0"],\ ["semver", "npm:7.6.0"],\ ["ts-api-utils", "virtual:ffbd544ad0fe91b6a84d26da1b983efebd6dadd9a2ae0160d3effbd386edafd313452293d39a630ddc390a351a5cc7679a4b023d895be27d9a3a0972f47b5e95#npm:1.3.0"],\ - ["typescript", "patch:typescript@npm%3A5.6.3#optional!builtin::version=5.6.3&hash=8c6c40"]\ + ["typescript", "patch:typescript@npm%3A6.0.3#optional!builtin::version=6.0.3&hash=5786d5"]\ ],\ "packagePeers": [\ "@types/eslint",\ @@ -9174,7 +9174,7 @@ const RAW_RUNTIME_STATE = ["@typescript-eslint/visitor-keys", "npm:8.17.0"],\ ["debug", "virtual:428f325a939c2653ad822eb3d75efb02ac311523dd0d4f9645afc39ea00bd86eceac35a9d59c9b6977d76b670a4ef0ae057ea572338a44729aa592711a8c05a3#npm:4.3.4"],\ ["eslint", "npm:8.57.0"],\ - ["typescript", "patch:typescript@npm%3A5.6.3#optional!builtin::version=5.6.3&hash=8c6c40"]\ + ["typescript", "patch:typescript@npm%3A6.0.3#optional!builtin::version=6.0.3&hash=5786d5"]\ ],\ "packagePeers": [\ "@types/eslint",\ @@ -9233,7 +9233,7 @@ const RAW_RUNTIME_STATE = ["debug", "virtual:428f325a939c2653ad822eb3d75efb02ac311523dd0d4f9645afc39ea00bd86eceac35a9d59c9b6977d76b670a4ef0ae057ea572338a44729aa592711a8c05a3#npm:4.3.4"],\ ["eslint", "npm:8.57.0"],\ ["ts-api-utils", "virtual:ffbd544ad0fe91b6a84d26da1b983efebd6dadd9a2ae0160d3effbd386edafd313452293d39a630ddc390a351a5cc7679a4b023d895be27d9a3a0972f47b5e95#npm:1.3.0"],\ - ["typescript", "patch:typescript@npm%3A5.6.3#optional!builtin::version=5.6.3&hash=8c6c40"]\ + ["typescript", "patch:typescript@npm%3A6.0.3#optional!builtin::version=6.0.3&hash=5786d5"]\ ],\ "packagePeers": [\ "@types/eslint",\ @@ -9322,7 +9322,7 @@ const RAW_RUNTIME_STATE = ["minimatch", "npm:9.0.3"],\ ["semver", "npm:7.6.0"],\ ["ts-api-utils", "virtual:ffbd544ad0fe91b6a84d26da1b983efebd6dadd9a2ae0160d3effbd386edafd313452293d39a630ddc390a351a5cc7679a4b023d895be27d9a3a0972f47b5e95#npm:1.3.0"],\ - ["typescript", "patch:typescript@npm%3A5.6.3#optional!builtin::version=5.6.3&hash=8c6c40"]\ + ["typescript", "patch:typescript@npm%3A6.0.3#optional!builtin::version=6.0.3&hash=5786d5"]\ ],\ "packagePeers": [\ "@types/typescript",\ @@ -9343,7 +9343,7 @@ const RAW_RUNTIME_STATE = ["minimatch", "npm:9.0.5"],\ ["semver", "npm:7.6.3"],\ ["ts-api-utils", "virtual:ff45382f289877ead7011223e1a3e12ad5931bc5bb966ce16d645a7d92cd2edad32394d9fb08d21093dea26aa08aeb03e17de0977d68d796d54585998a88576c#npm:1.4.3"],\ - ["typescript", "patch:typescript@npm%3A5.6.3#optional!builtin::version=5.6.3&hash=8c6c40"]\ + ["typescript", "patch:typescript@npm%3A6.0.3#optional!builtin::version=6.0.3&hash=5786d5"]\ ],\ "packagePeers": [\ "@types/typescript",\ @@ -19131,7 +19131,7 @@ const RAW_RUNTIME_STATE = ["ts-essentials", "virtual:9909ff5388c6b6a3a46f12eb37c0afb449fcd1eedb9f02d871bde711a076c929583f48ecc4b85fa6d71478b076104a25f83dee45bc69687a22f551c576d7595d#npm:9.3.0"],\ ["tslib", "npm:2.4.0"],\ ["tss-react", "virtual:9909ff5388c6b6a3a46f12eb37c0afb449fcd1eedb9f02d871bde711a076c929583f48ecc4b85fa6d71478b076104a25f83dee45bc69687a22f551c576d7595d#npm:4.1.3"],\ - ["typescript", "patch:typescript@npm%3A5.6.3#optional!builtin::version=5.6.3&hash=8c6c40"],\ + ["typescript", "patch:typescript@npm%3A6.0.3#optional!builtin::version=6.0.3&hash=5786d5"],\ ["url-loader", "virtual:9909ff5388c6b6a3a46f12eb37c0afb449fcd1eedb9f02d871bde711a076c929583f48ecc4b85fa6d71478b076104a25f83dee45bc69687a22f551c576d7595d#npm:4.1.1"],\ ["webpack", "virtual:9909ff5388c6b6a3a46f12eb37c0afb449fcd1eedb9f02d871bde711a076c929583f48ecc4b85fa6d71478b076104a25f83dee45bc69687a22f551c576d7595d#npm:5.96.1"],\ ["yup", "npm:1.4.0"]\ @@ -23868,7 +23868,7 @@ const RAW_RUNTIME_STATE = "packageDependencies": [\ ["@types/typescript", null],\ ["ts-api-utils", "virtual:ff45382f289877ead7011223e1a3e12ad5931bc5bb966ce16d645a7d92cd2edad32394d9fb08d21093dea26aa08aeb03e17de0977d68d796d54585998a88576c#npm:1.4.3"],\ - ["typescript", "patch:typescript@npm%3A5.6.3#optional!builtin::version=5.6.3&hash=8c6c40"]\ + ["typescript", "patch:typescript@npm%3A6.0.3#optional!builtin::version=6.0.3&hash=5786d5"]\ ],\ "packagePeers": [\ "@types/typescript",\ @@ -23881,7 +23881,7 @@ const RAW_RUNTIME_STATE = "packageDependencies": [\ ["@types/typescript", null],\ ["ts-api-utils", "virtual:ffbd544ad0fe91b6a84d26da1b983efebd6dadd9a2ae0160d3effbd386edafd313452293d39a630ddc390a351a5cc7679a4b023d895be27d9a3a0972f47b5e95#npm:1.3.0"],\ - ["typescript", "patch:typescript@npm%3A5.6.3#optional!builtin::version=5.6.3&hash=8c6c40"]\ + ["typescript", "patch:typescript@npm%3A6.0.3#optional!builtin::version=6.0.3&hash=5786d5"]\ ],\ "packagePeers": [\ "@types/typescript",\ @@ -23903,7 +23903,7 @@ const RAW_RUNTIME_STATE = "packageDependencies": [\ ["@types/typescript", null],\ ["ts-essentials", "virtual:9909ff5388c6b6a3a46f12eb37c0afb449fcd1eedb9f02d871bde711a076c929583f48ecc4b85fa6d71478b076104a25f83dee45bc69687a22f551c576d7595d#npm:9.3.0"],\ - ["typescript", "patch:typescript@npm%3A5.6.3#optional!builtin::version=5.6.3&hash=8c6c40"]\ + ["typescript", "patch:typescript@npm%3A6.0.3#optional!builtin::version=6.0.3&hash=5786d5"]\ ],\ "packagePeers": [\ "@types/typescript",\ @@ -24117,6 +24117,13 @@ const RAW_RUNTIME_STATE = ["typescript", "patch:typescript@npm%3A5.6.3#optional!builtin::version=5.6.3&hash=8c6c40"]\ ],\ "linkType": "HARD"\ + }],\ + ["patch:typescript@npm%3A6.0.3#optional!builtin::version=6.0.3&hash=5786d5", {\ + "packageLocation": "./.yarn/cache/typescript-patch-bfb0cdd3b9-22b67a18da.zip/node_modules/typescript/",\ + "packageDependencies": [\ + ["typescript", "patch:typescript@npm%3A6.0.3#optional!builtin::version=6.0.3&hash=5786d5"]\ + ],\ + "linkType": "HARD"\ }]\ ]],\ ["ua-parser-js", [\ diff --git a/.yarn/cache/typescript-npm-6.0.3-585eecd158-0ef2357a4c.zip b/.yarn/cache/typescript-npm-6.0.3-585eecd158-0ef2357a4c.zip new file mode 100644 index 0000000000..d749fd6770 --- /dev/null +++ b/.yarn/cache/typescript-npm-6.0.3-585eecd158-0ef2357a4c.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76d54e74337fa7e24041b747019116c410ace3b707cb2c53dd03759904cdadff +size 4598427 diff --git a/.yarn/cache/typescript-patch-bfb0cdd3b9-22b67a18da.zip b/.yarn/cache/typescript-patch-bfb0cdd3b9-22b67a18da.zip new file mode 100644 index 0000000000..1088aa7338 --- /dev/null +++ b/.yarn/cache/typescript-patch-bfb0cdd3b9-22b67a18da.zip @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1af8cbfc5b84fcf3f8360f346b53f09190ad18a673737cda61641bea10e54723 +size 4602371 diff --git a/.yarn/sdks/typescript/package.json b/.yarn/sdks/typescript/package.json index a9c9401bc8..2f36993637 100644 --- a/.yarn/sdks/typescript/package.json +++ b/.yarn/sdks/typescript/package.json @@ -1,6 +1,6 @@ { "name": "typescript", - "version": "5.6.3-sdk", + "version": "6.0.3-sdk", "main": "./lib/typescript.js", "type": "commonjs", "bin": { diff --git a/app.d.ts b/app.d.ts index bc838befdd..c8f4497676 100644 --- a/app.d.ts +++ b/app.d.ts @@ -5,4 +5,5 @@ declare module '*.graphql' { export = value; } +declare module '*.css'; declare module '*.svg'; diff --git a/i18next.d.ts b/i18next.d.ts new file mode 100644 index 0000000000..93f56697ca --- /dev/null +++ b/i18next.d.ts @@ -0,0 +1,13 @@ +// Narrow react-i18next's `t()` return type to `string`. Without this, +// TFunction's TDefaultResult widens to `TFunctionResult | ReactNode`, +// which doesn't satisfy MUI props like `aria-label: string | undefined`. +// +// Remove this file once i18next is upgraded to v22+ and react-i18next to v12+, +// where `t()` returns `string` by default and this workaround is unnecessary. +import 'react-i18next'; + +declare module 'react-i18next' { + interface Resources { + translation: Record; + } +} diff --git a/package.json b/package.json index 6e27e0ae6a..7f257c92c9 100644 --- a/package.json +++ b/package.json @@ -141,7 +141,7 @@ "prettier": "^3.6.2", "puppeteer": "24.4.0", "ts-essentials": "^9.3.0", - "typescript": "~5.6.3", + "typescript": "~6.0.0", "url-loader": "^4.1.1", "webpack": "^5.96.1" }, diff --git a/pages/api/auth/[...nextauth].page.ts b/pages/api/auth/[...nextauth].page.ts index 22e8cf701d..1a5efabe24 100644 --- a/pages/api/auth/[...nextauth].page.ts +++ b/pages/api/auth/[...nextauth].page.ts @@ -1,6 +1,5 @@ import { NextApiRequest, NextApiResponse } from 'next'; import NextAuth, { NextAuthOptions } from 'next-auth'; -import { Provider } from 'next-auth/providers'; import OktaProvider from 'next-auth/providers/okta'; import rollbar, { isRollBarEnabled } from 'pages/api/utils/rollBar'; import { @@ -95,7 +94,7 @@ if ( ); } -const providersArray: Provider[] = []; +const providersArray: NextAuthOptions['providers'] = []; if (AUTH_PROVIDER === 'OKTA') { providersArray.push( diff --git a/pages/api/uploads/csv-upload.page.ts b/pages/api/uploads/csv-upload.page.ts index 958638c555..c07f14019e 100644 --- a/pages/api/uploads/csv-upload.page.ts +++ b/pages/api/uploads/csv-upload.page.ts @@ -54,7 +54,7 @@ const uploadFile = async ( } const csvFile = new File( - [await readFile(file.filepath)], + [new Uint8Array(await readFile(file.filepath))], file.originalFilename ?? 'csvFile', ); diff --git a/pages/api/uploads/upload-person-avatar.page.ts b/pages/api/uploads/upload-person-avatar.page.ts index 7fd1bac940..15f8447c04 100644 --- a/pages/api/uploads/upload-person-avatar.page.ts +++ b/pages/api/uploads/upload-person-avatar.page.ts @@ -59,7 +59,7 @@ const uploadPersonAvatar = async ( const pictureId = crypto.randomUUID(); const file = new File( - [await readFile(avatar.filepath)], + [new Uint8Array(await readFile(avatar.filepath))], avatar.originalFilename ?? 'avatar', ); diff --git a/src/components/Shared/MassActions/MassActionsDropdown.tsx b/src/components/Shared/MassActions/MassActionsDropdown.tsx index 834dd2f4ef..3e8c9ff952 100644 --- a/src/components/Shared/MassActions/MassActionsDropdown.tsx +++ b/src/components/Shared/MassActions/MassActionsDropdown.tsx @@ -17,7 +17,7 @@ const ActionsButton = styled(Button)(({ theme }) => ({ interface MassActionsDropdownProps { handleClick: (event: React.MouseEvent) => void; - children: React.ReactElement; + children: React.ReactNode; disabled?: boolean; open: boolean; } diff --git a/tsconfig.json b/tsconfig.json index 29c64a7f11..e540c91234 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,8 +1,7 @@ { "compilerOptions": { - "baseUrl": ".", "target": "esnext", - "lib": ["dom", "dom.iterable", "esnext"], + "lib": ["dom", "esnext"], "allowJs": true, "checkJs": true, "skipLibCheck": true, @@ -12,14 +11,21 @@ "incremental": true, "esModuleInterop": true, "module": "esnext", - "moduleResolution": "node", + "moduleResolution": "bundler", "noImplicitAny": false, "resolveJsonModule": true, "isolatedModules": true, - "jsx": "preserve" + "jsx": "preserve", + "types": ["node", "jest", "@testing-library/jest-dom"], + "paths": { + "src/*": ["./src/*"], + "pages/*": ["./pages/*"], + "__tests__/*": ["./__tests__/*"] + } }, "include": [ "app.d.ts", + "i18next.d.ts", "next-env.d.ts", "__tests__/jest.d.ts", "**/*.ts", diff --git a/yarn.lock b/yarn.lock index d3a54f4465..e7422525ff 100644 --- a/yarn.lock +++ b/yarn.lock @@ -14818,7 +14818,7 @@ __metadata: ts-essentials: "npm:^9.3.0" tslib: "npm:^2.4.0" tss-react: "npm:^4.1.3" - typescript: "npm:~5.6.3" + typescript: "npm:~6.0.0" url-loader: "npm:^4.1.1" webpack: "npm:^5.96.1" yup: "npm:^1.4.0" @@ -19150,7 +19150,7 @@ __metadata: languageName: node linkType: hard -"typescript@npm:^5.0.4, typescript@npm:~5.6.3": +"typescript@npm:^5.0.4": version: 5.6.3 resolution: "typescript@npm:5.6.3" bin: @@ -19160,7 +19160,17 @@ __metadata: languageName: node linkType: hard -"typescript@patch:typescript@npm%3A^5.0.4#optional!builtin, typescript@patch:typescript@npm%3A~5.6.3#optional!builtin": +"typescript@npm:~6.0.0": + version: 6.0.3 + resolution: "typescript@npm:6.0.3" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 10/0ef2357a4cffd916b52b683a021cdab0f81eea4e9aa35f2d254581c9a5106da02224e3392e1b0ed42b7a48f80c966e5f52b8e1a27941fa0523c1705a9c2e0330 + languageName: node + linkType: hard + +"typescript@patch:typescript@npm%3A^5.0.4#optional!builtin": version: 5.6.3 resolution: "typescript@patch:typescript@npm%3A5.6.3#optional!builtin::version=5.6.3&hash=8c6c40" bin: @@ -19170,6 +19180,16 @@ __metadata: languageName: node linkType: hard +"typescript@patch:typescript@npm%3A~6.0.0#optional!builtin": + version: 6.0.3 + resolution: "typescript@patch:typescript@npm%3A6.0.3#optional!builtin::version=6.0.3&hash=5786d5" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 10/22b67a18dafedf9b1468b64ca20d9aa02ea61d449b65413d8aa6552aeb63f52ef369e86beb25b6b4c91a803d9726ee5c196f391a9b64201263263410a4223ee6 + languageName: node + linkType: hard + "ua-parser-js@npm:^0.7.30": version: 0.7.33 resolution: "ua-parser-js@npm:0.7.33" From 43a35d10dd917430010abc7dfa1ee69b2bd896f4 Mon Sep 17 00:00:00 2001 From: Caleb Cox Date: Thu, 21 May 2026 12:40:25 -0500 Subject: [PATCH 2/3] Use openAsBlob --- pages/api/uploads/csv-upload.page.ts | 5 ++--- pages/api/uploads/upload-person-avatar.page.ts | 5 ++--- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/pages/api/uploads/csv-upload.page.ts b/pages/api/uploads/csv-upload.page.ts index c07f14019e..0744dc0409 100644 --- a/pages/api/uploads/csv-upload.page.ts +++ b/pages/api/uploads/csv-upload.page.ts @@ -1,8 +1,7 @@ -import { readFile } from 'fs/promises'; +import { openAsBlob } from 'node:fs'; import { NextApiRequest, NextApiResponse } from 'next'; import formidable, { IncomingForm } from 'formidable'; import { getToken } from 'next-auth/jwt'; -import fetch, { File, FormData } from 'node-fetch'; export const config = { api: { @@ -54,7 +53,7 @@ const uploadFile = async ( } const csvFile = new File( - [new Uint8Array(await readFile(file.filepath))], + [await openAsBlob(file.filepath)], file.originalFilename ?? 'csvFile', ); diff --git a/pages/api/uploads/upload-person-avatar.page.ts b/pages/api/uploads/upload-person-avatar.page.ts index 15f8447c04..cd3d475e35 100644 --- a/pages/api/uploads/upload-person-avatar.page.ts +++ b/pages/api/uploads/upload-person-avatar.page.ts @@ -1,8 +1,7 @@ -import { readFile } from 'fs/promises'; +import { openAsBlob } from 'node:fs'; import { NextApiRequest, NextApiResponse } from 'next'; import formidable, { IncomingForm } from 'formidable'; import { getToken } from 'next-auth/jwt'; -import fetch, { File, FormData } from 'node-fetch'; export const config = { api: { @@ -59,7 +58,7 @@ const uploadPersonAvatar = async ( const pictureId = crypto.randomUUID(); const file = new File( - [new Uint8Array(await readFile(avatar.filepath))], + [await openAsBlob(avatar.filepath)], avatar.originalFilename ?? 'avatar', ); From 6d0ce82fff1e3da9c75e61a8531284f7565857da Mon Sep 17 00:00:00 2001 From: Caleb Cox Date: Thu, 21 May 2026 12:41:14 -0500 Subject: [PATCH 3/3] Remove node-fetch --- .pnp.cjs | 49 ------------------- ...buffer-npm-4.0.1-5c66a78beb-0d0790b67f.zip | 3 -- ...h-blob-npm-3.2.0-28e01becfc-5264ecceb5.zip | 3 -- ...yfill-npm-4.0.10-e03013c013-9b5001d2ed.zip | 3 -- ...eption-npm-1.0.0-e1e813b76f-e332522f24.zip | 3 -- ...-fetch-npm-3.3.2-5267e015f2-24207ca8c8.zip | 3 -- package.json | 1 - pages/acceptInvite.test.tsx | 2 - .../api/auth/impersonate/impersonateHelper.ts | 1 - pages/api/csv-update.page.ts | 1 - yarn.lock | 47 +----------------- 11 files changed, 1 insertion(+), 115 deletions(-) delete mode 100644 .yarn/cache/data-uri-to-buffer-npm-4.0.1-5c66a78beb-0d0790b67f.zip delete mode 100644 .yarn/cache/fetch-blob-npm-3.2.0-28e01becfc-5264ecceb5.zip delete mode 100644 .yarn/cache/formdata-polyfill-npm-4.0.10-e03013c013-9b5001d2ed.zip delete mode 100644 .yarn/cache/node-domexception-npm-1.0.0-e1e813b76f-e332522f24.zip delete mode 100644 .yarn/cache/node-fetch-npm-3.3.2-5267e015f2-24207ca8c8.zip diff --git a/.pnp.cjs b/.pnp.cjs index fd857d7d46..c1b22ce3e3 100755 --- a/.pnp.cjs +++ b/.pnp.cjs @@ -122,7 +122,6 @@ const RAW_RUNTIME_STATE = ["next-compose-plugins", "npm:2.2.1"],\ ["next-optimized-images", "npm:2.6.2"],\ ["next-pwa", "virtual:9909ff5388c6b6a3a46f12eb37c0afb449fcd1eedb9f02d871bde711a076c929583f48ecc4b85fa6d71478b076104a25f83dee45bc69687a22f551c576d7595d#npm:5.6.0"],\ - ["node-fetch", "npm:3.3.2"],\ ["node-mocks-http", "virtual:9909ff5388c6b6a3a46f12eb37c0afb449fcd1eedb9f02d871bde711a076c929583f48ecc4b85fa6d71478b076104a25f83dee45bc69687a22f551c576d7595d#npm:1.16.2"],\ ["notistack", "virtual:9909ff5388c6b6a3a46f12eb37c0afb449fcd1eedb9f02d871bde711a076c929583f48ecc4b85fa6d71478b076104a25f83dee45bc69687a22f551c576d7595d#npm:2.0.5"],\ ["prettier", "npm:3.6.2"],\ @@ -12612,13 +12611,6 @@ const RAW_RUNTIME_STATE = }]\ ]],\ ["data-uri-to-buffer", [\ - ["npm:4.0.1", {\ - "packageLocation": "./.yarn/cache/data-uri-to-buffer-npm-4.0.1-5c66a78beb-0d0790b67f.zip/node_modules/data-uri-to-buffer/",\ - "packageDependencies": [\ - ["data-uri-to-buffer", "npm:4.0.1"]\ - ],\ - "linkType": "HARD"\ - }],\ ["npm:6.0.2", {\ "packageLocation": "./.yarn/cache/data-uri-to-buffer-npm-6.0.2-1725fff558-8b6927c33f.zip/node_modules/data-uri-to-buffer/",\ "packageDependencies": [\ @@ -14588,17 +14580,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["fetch-blob", [\ - ["npm:3.2.0", {\ - "packageLocation": "./.yarn/cache/fetch-blob-npm-3.2.0-28e01becfc-5264ecceb5.zip/node_modules/fetch-blob/",\ - "packageDependencies": [\ - ["fetch-blob", "npm:3.2.0"],\ - ["node-domexception", "npm:1.0.0"],\ - ["web-streams-polyfill", "npm:3.2.1"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["figures", [\ ["npm:2.0.0", {\ "packageLocation": "./.yarn/cache/figures-npm-2.0.0-f2db814eec-0e5bba8d2b.zip/node_modules/figures/",\ @@ -14799,16 +14780,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["formdata-polyfill", [\ - ["npm:4.0.10", {\ - "packageLocation": "./.yarn/cache/formdata-polyfill-npm-4.0.10-e03013c013-9b5001d2ed.zip/node_modules/formdata-polyfill/",\ - "packageDependencies": [\ - ["fetch-blob", "npm:3.2.0"],\ - ["formdata-polyfill", "npm:4.0.10"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["formidable", [\ ["npm:3.5.4", {\ "packageLocation": "./.yarn/cache/formidable-npm-3.5.4-a3473998f7-4645e6ce3d.zip/node_modules/formidable/",\ @@ -19113,7 +19084,6 @@ const RAW_RUNTIME_STATE = ["next-compose-plugins", "npm:2.2.1"],\ ["next-optimized-images", "npm:2.6.2"],\ ["next-pwa", "virtual:9909ff5388c6b6a3a46f12eb37c0afb449fcd1eedb9f02d871bde711a076c929583f48ecc4b85fa6d71478b076104a25f83dee45bc69687a22f551c576d7595d#npm:5.6.0"],\ - ["node-fetch", "npm:3.3.2"],\ ["node-mocks-http", "virtual:9909ff5388c6b6a3a46f12eb37c0afb449fcd1eedb9f02d871bde711a076c929583f48ecc4b85fa6d71478b076104a25f83dee45bc69687a22f551c576d7595d#npm:1.16.2"],\ ["notistack", "virtual:9909ff5388c6b6a3a46f12eb37c0afb449fcd1eedb9f02d871bde711a076c929583f48ecc4b85fa6d71478b076104a25f83dee45bc69687a22f551c576d7595d#npm:2.0.5"],\ ["prettier", "npm:3.6.2"],\ @@ -19440,15 +19410,6 @@ const RAW_RUNTIME_STATE = "linkType": "HARD"\ }]\ ]],\ - ["node-domexception", [\ - ["npm:1.0.0", {\ - "packageLocation": "./.yarn/cache/node-domexception-npm-1.0.0-e1e813b76f-e332522f24.zip/node_modules/node-domexception/",\ - "packageDependencies": [\ - ["node-domexception", "npm:1.0.0"]\ - ],\ - "linkType": "HARD"\ - }]\ - ]],\ ["node-fetch", [\ ["npm:2.6.12", {\ "packageLocation": "./.yarn/cache/node-fetch-npm-2.6.12-48619ce9d6-370ed4d906.zip/node_modules/node-fetch/",\ @@ -19471,16 +19432,6 @@ const RAW_RUNTIME_STATE = ],\ "linkType": "SOFT"\ }],\ - ["npm:3.3.2", {\ - "packageLocation": "./.yarn/cache/node-fetch-npm-3.3.2-5267e015f2-24207ca8c8.zip/node_modules/node-fetch/",\ - "packageDependencies": [\ - ["data-uri-to-buffer", "npm:4.0.1"],\ - ["fetch-blob", "npm:3.2.0"],\ - ["formdata-polyfill", "npm:4.0.10"],\ - ["node-fetch", "npm:3.3.2"]\ - ],\ - "linkType": "HARD"\ - }],\ ["virtual:9c67668db478e95ba4d6a763bc55027eeff0d22eaf59478017ea07386fc33a3c7b7b625af78aa86a33991a9a500a7aa216e28632de568f02adefd662ef53a42d#npm:2.6.12", {\ "packageLocation": "./.yarn/__virtual__/node-fetch-virtual-80ad860ad7/0/cache/node-fetch-npm-2.6.12-48619ce9d6-370ed4d906.zip/node_modules/node-fetch/",\ "packageDependencies": [\ diff --git a/.yarn/cache/data-uri-to-buffer-npm-4.0.1-5c66a78beb-0d0790b67f.zip b/.yarn/cache/data-uri-to-buffer-npm-4.0.1-5c66a78beb-0d0790b67f.zip deleted file mode 100644 index c58c66c2c6..0000000000 --- a/.yarn/cache/data-uri-to-buffer-npm-4.0.1-5c66a78beb-0d0790b67f.zip +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:48e0178dffbb34ff062232e8feb1895096595687274985a7bc7283ade0ce4612 -size 5961 diff --git a/.yarn/cache/fetch-blob-npm-3.2.0-28e01becfc-5264ecceb5.zip b/.yarn/cache/fetch-blob-npm-3.2.0-28e01becfc-5264ecceb5.zip deleted file mode 100644 index 7f273a5593..0000000000 --- a/.yarn/cache/fetch-blob-npm-3.2.0-28e01becfc-5264ecceb5.zip +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:06c28a80b90db84256fe8322d698c330afbb5e926a1be75eeb89c2807c7ca775 -size 10277 diff --git a/.yarn/cache/formdata-polyfill-npm-4.0.10-e03013c013-9b5001d2ed.zip b/.yarn/cache/formdata-polyfill-npm-4.0.10-e03013c013-9b5001d2ed.zip deleted file mode 100644 index d5a4d340ab..0000000000 --- a/.yarn/cache/formdata-polyfill-npm-4.0.10-e03013c013-9b5001d2ed.zip +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:07258f4e9ffee8a487d6ce194d0e7a4d8e1dde4ef70a5c769fbed3e57431aa08 -size 14051 diff --git a/.yarn/cache/node-domexception-npm-1.0.0-e1e813b76f-e332522f24.zip b/.yarn/cache/node-domexception-npm-1.0.0-e1e813b76f-e332522f24.zip deleted file mode 100644 index 9ddeacdf71..0000000000 --- a/.yarn/cache/node-domexception-npm-1.0.0-e1e813b76f-e332522f24.zip +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e89fddde5b26bf5366af7015dd1d07634166bfc9177b9be62be10a1445034a63 -size 23876 diff --git a/.yarn/cache/node-fetch-npm-3.3.2-5267e015f2-24207ca8c8.zip b/.yarn/cache/node-fetch-npm-3.3.2-5267e015f2-24207ca8c8.zip deleted file mode 100644 index 3186d2d593..0000000000 --- a/.yarn/cache/node-fetch-npm-3.3.2-5267e015f2-24207ca8c8.zip +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1ef0ef2bdfac64564412807d0f691fd45ccc43e3cf3eaa2969d7e1f8715b694c -size 38739 diff --git a/package.json b/package.json index 7f257c92c9..6da87b0c91 100644 --- a/package.json +++ b/package.json @@ -68,7 +68,6 @@ "next-auth": "^4.24.11", "next-optimized-images": "^2.6.2", "next-pwa": "^5.6.0", - "node-fetch": "^3.3.2", "notistack": "^2.0.5", "prop-types": "^15.8.1", "react": "^18.2.0", diff --git a/pages/acceptInvite.test.tsx b/pages/acceptInvite.test.tsx index f086ac8c07..351552c03a 100644 --- a/pages/acceptInvite.test.tsx +++ b/pages/acceptInvite.test.tsx @@ -3,9 +3,7 @@ import { render, waitFor } from '@testing-library/react'; import { SnackbarProvider } from 'notistack'; import TestRouter from '__tests__/util/TestRouter'; import AcceptInvitePage from './acceptInvite.page'; -import 'node-fetch'; -jest.mock('node-fetch', () => jest.fn()); jest.mock('src/hooks/useAccountListId'); const mockPush = jest.fn(); const dashboardLink = '/accountLists/_/'; diff --git a/pages/api/auth/impersonate/impersonateHelper.ts b/pages/api/auth/impersonate/impersonateHelper.ts index 753f900329..1e8b7567ff 100644 --- a/pages/api/auth/impersonate/impersonateHelper.ts +++ b/pages/api/auth/impersonate/impersonateHelper.ts @@ -1,6 +1,5 @@ import { NextApiRequest } from 'next'; import { getToken } from 'next-auth/jwt'; -import fetch from 'node-fetch'; import { getErrorMessage } from 'src/lib/getErrorFromCatch'; import { cookieDefaultInfo } from '../../utils/cookies'; import { signValue } from '../helpers'; diff --git a/pages/api/csv-update.page.ts b/pages/api/csv-update.page.ts index c82d9b34bc..1ad03c554a 100644 --- a/pages/api/csv-update.page.ts +++ b/pages/api/csv-update.page.ts @@ -1,7 +1,6 @@ import { NextApiRequest, NextApiResponse } from 'next'; import formidable, { IncomingForm } from 'formidable'; import { getToken } from 'next-auth/jwt'; -import fetch from 'node-fetch'; import createPatch from 'src/lib/createPatch'; import { camelToSnakeObject } from 'src/lib/snakeToCamel'; diff --git a/yarn.lock b/yarn.lock index e7422525ff..3653dc30de 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9046,13 +9046,6 @@ __metadata: languageName: node linkType: hard -"data-uri-to-buffer@npm:^4.0.0": - version: 4.0.1 - resolution: "data-uri-to-buffer@npm:4.0.1" - checksum: 10/0d0790b67ffec5302f204c2ccca4494f70b4e2d940fea3d36b09f0bb2b8539c2e86690429eb1f1dc4bcc9e4df0644193073e63d9ee48ac9fce79ec1506e4aa4c - languageName: node - linkType: hard - "data-uri-to-buffer@npm:^6.0.2": version: 6.0.2 resolution: "data-uri-to-buffer@npm:6.0.2" @@ -10776,16 +10769,6 @@ __metadata: languageName: node linkType: hard -"fetch-blob@npm:^3.1.2, fetch-blob@npm:^3.1.4": - version: 3.2.0 - resolution: "fetch-blob@npm:3.2.0" - dependencies: - node-domexception: "npm:^1.0.0" - web-streams-polyfill: "npm:^3.0.3" - checksum: 10/5264ecceb5fdc19eb51d1d0359921f12730941e333019e673e71eb73921146dceabcb0b8f534582be4497312d656508a439ad0f5edeec2b29ab2e10c72a1f86b - languageName: node - linkType: hard - "figures@npm:^2.0.0": version: 2.0.0 resolution: "figures@npm:2.0.0" @@ -10959,15 +10942,6 @@ __metadata: languageName: node linkType: hard -"formdata-polyfill@npm:^4.0.10": - version: 4.0.10 - resolution: "formdata-polyfill@npm:4.0.10" - dependencies: - fetch-blob: "npm:^3.1.2" - checksum: 10/9b5001d2edef3c9449ac3f48bd4f8cc92e7d0f2e7c1a5c8ba555ad4e77535cc5cf621fabe49e97f304067037282dd9093b9160a3cb533e46420b446c4e6bc06f - languageName: node - linkType: hard - "formidable@npm:^3.5.4": version: 3.5.4 resolution: "formidable@npm:3.5.4" @@ -14800,7 +14774,6 @@ __metadata: next-compose-plugins: "npm:^2.2.1" next-optimized-images: "npm:^2.6.2" next-pwa: "npm:^5.6.0" - node-fetch: "npm:^3.3.2" node-mocks-http: "npm:1.16.2" notistack: "npm:^2.0.5" prettier: "npm:^3.6.2" @@ -15076,13 +15049,6 @@ __metadata: languageName: node linkType: hard -"node-domexception@npm:^1.0.0": - version: 1.0.0 - resolution: "node-domexception@npm:1.0.0" - checksum: 10/e332522f242348c511640c25a6fc7da4f30e09e580c70c6b13cb0be83c78c3e71c8d4665af2527e869fc96848924a4316ae7ec9014c091e2156f41739d4fa233 - languageName: node - linkType: hard - "node-fetch@npm:2.6.7, node-fetch@npm:^2.6.1, node-fetch@npm:^2.6.7": version: 2.6.7 resolution: "node-fetch@npm:2.6.7" @@ -15125,17 +15091,6 @@ __metadata: languageName: node linkType: hard -"node-fetch@npm:^3.3.2": - version: 3.3.2 - resolution: "node-fetch@npm:3.3.2" - dependencies: - data-uri-to-buffer: "npm:^4.0.0" - fetch-blob: "npm:^3.1.4" - formdata-polyfill: "npm:^4.0.10" - checksum: 10/24207ca8c81231c7c59151840e3fded461d67a31cf3e3b3968e12201a42f89ce4a0b5fb7079b1fa0a4655957b1ca9257553200f03a9f668b45ebad265ca5593d - languageName: node - linkType: hard - "node-gyp@npm:latest": version: 9.1.0 resolution: "node-gyp@npm:9.1.0" @@ -19737,7 +19692,7 @@ __metadata: languageName: node linkType: hard -"web-streams-polyfill@npm:^3.0.3, web-streams-polyfill@npm:^3.2.1": +"web-streams-polyfill@npm:^3.2.1": version: 3.2.1 resolution: "web-streams-polyfill@npm:3.2.1" checksum: 10/08fcf97b7883c1511dd3da794f50e9bde75a660884783baaddb2163643c21a94086f394dc4bd20dff0f55c98d98d60c4bea05a5809ef5005bdf835b63ada8900