diff --git a/package-lock.json b/package-lock.json index 687eadc8a..6f0db61ae 100644 --- a/package-lock.json +++ b/package-lock.json @@ -20,7 +20,7 @@ "lodash": "^4.18.1", "moment": "^2.29.4", "plotly.js": "^2.25.2", - "query-string": "^6.13.1", + "query-string": "^9.5.0", "raf": "^3.4.1", "react": "^18.2.0", "react-colorful": "^5.6.1", @@ -8525,11 +8525,12 @@ } }, "node_modules/decode-uri-component": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", - "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.5.0.tgz", + "integrity": "sha512-1BiQVoK8C9gUbQU6NzAtO/tkz2qOFpEObMWpcFvhx4fYnj4Oc5yzaJN/LD36ihkVUdXyh5ZekzX+yM+ty/SrPg==", + "license": "MIT", "engines": { - "node": ">=0.10" + "node": ">=14.16" } }, "node_modules/dedent": { @@ -10294,11 +10295,15 @@ } }, "node_modules/filter-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-1.1.0.tgz", - "integrity": "sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-5.1.0.tgz", + "integrity": "sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng==", + "license": "MIT", "engines": { - "node": ">=0.10.0" + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/finalhandler": { @@ -18127,17 +18132,17 @@ } }, "node_modules/query-string": { - "version": "6.14.1", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-6.14.1.tgz", - "integrity": "sha512-XDxAeVmpfu1/6IjyT/gXHOl+S0vQ9owggJ30hhWKdHAsNPOcasn5o9BW0eejZqL2e4vMjhAxoW3jVHcD6mbcYw==", + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-9.5.0.tgz", + "integrity": "sha512-YlJmwNyi0RGYjlxYcuDncMsxFU7YyutbuI7gTm8ySxIGBlwx5yiBCOD5ig9ZNoHkawk/1Dey0N5mEfcUybMVAA==", + "license": "MIT", "dependencies": { - "decode-uri-component": "^0.2.0", - "filter-obj": "^1.1.0", - "split-on-first": "^1.0.0", - "strict-uri-encode": "^2.0.0" + "decode-uri-component": "^0.5.0", + "filter-obj": "^5.1.0", + "split-on-first": "^3.0.0" }, "engines": { - "node": ">=6" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -20699,11 +20704,15 @@ } }, "node_modules/split-on-first": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz", - "integrity": "sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-3.0.0.tgz", + "integrity": "sha512-qxQJTx2ryR0Dw0ITYyekNQWpz6f8dGd7vffGNflQQ3Iqj9NJ6qiZ7ELpZsJ/QBhIVAiDfXdag3+Gp8RvWa62AA==", + "license": "MIT", "engines": { - "node": ">=6" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/sprintf-js": { @@ -20798,14 +20807,6 @@ "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.3.tgz", "integrity": "sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==" }, - "node_modules/strict-uri-encode": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz", - "integrity": "sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ==", - "engines": { - "node": ">=4" - } - }, "node_modules/string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", diff --git a/package.json b/package.json index 41a1c427e..4c9dce8b3 100644 --- a/package.json +++ b/package.json @@ -106,7 +106,7 @@ "lodash": "^4.18.1", "moment": "^2.29.4", "plotly.js": "^2.25.2", - "query-string": "^6.13.1", + "query-string": "^9.5.0", "raf": "^3.4.1", "react": "^18.2.0", "react-colorful": "^5.6.1", diff --git a/src/containers/Simularium/index.tsx b/src/containers/Simularium/index.tsx index 902cd0566..4b3101c89 100644 --- a/src/containers/Simularium/index.tsx +++ b/src/containers/Simularium/index.tsx @@ -111,7 +111,7 @@ class App extends React.Component { const fileName = parsed[URL_PARAM_KEY_FILE_NAME]; const userTrajectoryUrl = parsed[URL_PARAM_KEY_USER_URL]; - const loadNetworkedFile = (fileName: string | string[]) => { + const loadNetworkedFile = (fileName: string | (string | null)[]) => { const networkedFile = find(TRAJECTORIES, { id: fileName }); if (networkedFile) { const fileData = networkedFile as TrajectoryDisplayData; @@ -132,7 +132,7 @@ class App extends React.Component { }; const loadUserTrajectoryUrl = ( - userTrajectoryUrl: string | string[] + userTrajectoryUrl: string | (string | null)[] ) => { const verifiedUrl = urlCheck(userTrajectoryUrl); const fileId = getFileIdFromUrl(verifiedUrl, parsed.id); diff --git a/src/util/userUrlHandling.ts b/src/util/userUrlHandling.ts index dffbd58d7..5b0f1f399 100644 --- a/src/util/userUrlHandling.ts +++ b/src/util/userUrlHandling.ts @@ -33,7 +33,7 @@ export const isGoogleDriveUrl = (url: string) => /google.com/g.test(url); export const getGoogleDriveFileId = ( googleDriveUrl: string, - id?: string | string[] | null + id?: string | (string | null)[] | null ): string | undefined => { // already checked it was a google url before entering this function. if (id && isString(id)) { @@ -62,7 +62,7 @@ export const getGoogleDriveFileId = ( export const getFileIdFromUrl = ( url: string, - idParam?: string | string[] | null + idParam?: string | (string | null)[] | null ) => { if (isGoogleDriveUrl(url)) { return getGoogleDriveFileId(url, idParam);