From 962a2dfaaec000883b56768819ad128ba85353f0 Mon Sep 17 00:00:00 2001 From: Christina Holland Date: Tue, 27 May 2025 10:34:51 -0700 Subject: [PATCH 01/13] Build out e2e subdirectories --- .github/workflows/e2e-test.yml | 2 +- e2e/{ => smoke-tests}/.gitignore | 0 e2e/{ => smoke-tests}/README.md | 2 +- e2e/{ => smoke-tests}/babel.config.js | 0 e2e/{ => smoke-tests}/build/index.html | 0 e2e/{ => smoke-tests}/fix-jsdom-environment.ts | 0 e2e/{ => smoke-tests}/jest.config.ts | 0 e2e/{ => smoke-tests}/package.json | 0 e2e/{ => smoke-tests}/sample-apps/compat.js | 2 +- e2e/{ => smoke-tests}/sample-apps/modular.js | 2 +- e2e/{ => smoke-tests}/tests/compat.test.ts | 0 e2e/{ => smoke-tests}/tests/modular.test.ts | 0 e2e/{ => smoke-tests}/webpack.config.js | 0 e2e/{ => smoke-tests}/yarn.lock | 0 e2e/test-project/package.json | 15 +++++++++++++++ e2e/test-project/yarn.lock | 13 +++++++++++++ 16 files changed, 32 insertions(+), 4 deletions(-) rename e2e/{ => smoke-tests}/.gitignore (100%) rename e2e/{ => smoke-tests}/README.md (97%) rename e2e/{ => smoke-tests}/babel.config.js (100%) rename e2e/{ => smoke-tests}/build/index.html (100%) rename e2e/{ => smoke-tests}/fix-jsdom-environment.ts (100%) rename e2e/{ => smoke-tests}/jest.config.ts (100%) rename e2e/{ => smoke-tests}/package.json (100%) rename e2e/{ => smoke-tests}/sample-apps/compat.js (99%) rename e2e/{ => smoke-tests}/sample-apps/modular.js (99%) rename e2e/{ => smoke-tests}/tests/compat.test.ts (100%) rename e2e/{ => smoke-tests}/tests/modular.test.ts (100%) rename e2e/{ => smoke-tests}/webpack.config.js (100%) rename e2e/{ => smoke-tests}/yarn.lock (100%) create mode 100644 e2e/test-project/package.json create mode 100644 e2e/test-project/yarn.lock diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 0857860571f..4d95dd684ca 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -31,7 +31,7 @@ jobs: defaults: run: # Run any command steps in the /e2e subdir - working-directory: './e2e' + working-directory: './e2e/smoke-test' steps: - name: Checkout Repo diff --git a/e2e/.gitignore b/e2e/smoke-tests/.gitignore similarity index 100% rename from e2e/.gitignore rename to e2e/smoke-tests/.gitignore diff --git a/e2e/README.md b/e2e/smoke-tests/README.md similarity index 97% rename from e2e/README.md rename to e2e/smoke-tests/README.md index b2674506e8b..1c87c5f90b7 100644 --- a/e2e/README.md +++ b/e2e/smoke-tests/README.md @@ -15,7 +15,7 @@ Before running the tests, you will need: #### Project Config and Test User -Create a file named `firebase-config.js` in the top level of this `e2e/` directory. The contents of the file should be: +Create a file named `firebase-config.js` in the top level of this `e2e/smoke-test` directory. The contents of the file should be: ```javascript // A config for a project diff --git a/e2e/babel.config.js b/e2e/smoke-tests/babel.config.js similarity index 100% rename from e2e/babel.config.js rename to e2e/smoke-tests/babel.config.js diff --git a/e2e/build/index.html b/e2e/smoke-tests/build/index.html similarity index 100% rename from e2e/build/index.html rename to e2e/smoke-tests/build/index.html diff --git a/e2e/fix-jsdom-environment.ts b/e2e/smoke-tests/fix-jsdom-environment.ts similarity index 100% rename from e2e/fix-jsdom-environment.ts rename to e2e/smoke-tests/fix-jsdom-environment.ts diff --git a/e2e/jest.config.ts b/e2e/smoke-tests/jest.config.ts similarity index 100% rename from e2e/jest.config.ts rename to e2e/smoke-tests/jest.config.ts diff --git a/e2e/package.json b/e2e/smoke-tests/package.json similarity index 100% rename from e2e/package.json rename to e2e/smoke-tests/package.json diff --git a/e2e/sample-apps/compat.js b/e2e/smoke-tests/sample-apps/compat.js similarity index 99% rename from e2e/sample-apps/compat.js rename to e2e/smoke-tests/sample-apps/compat.js index 478b960d8e0..e77b7d087d0 100644 --- a/e2e/sample-apps/compat.js +++ b/e2e/smoke-tests/sample-apps/compat.js @@ -82,7 +82,7 @@ async function authLogout() { * * Call a deployed function. * This cloud function must be deployed in this project first. See - * e2e/README.md for more info. + * e2e/smoke-test/README.md for more info. */ async function callFunctions() { console.log('[FUNCTIONS] start'); diff --git a/e2e/sample-apps/modular.js b/e2e/smoke-tests/sample-apps/modular.js similarity index 99% rename from e2e/sample-apps/modular.js rename to e2e/smoke-tests/sample-apps/modular.js index d01b5b0139d..f72ec328391 100644 --- a/e2e/sample-apps/modular.js +++ b/e2e/smoke-tests/sample-apps/modular.js @@ -121,7 +121,7 @@ async function authLogout(app) { * * Call a deployed function. * This cloud function must be deployed in this project first. See - * e2e/README.md for more info. + * e2e/smoke-test/README.md for more info. */ async function callFunctions(app) { console.log('[FUNCTIONS] start'); diff --git a/e2e/tests/compat.test.ts b/e2e/smoke-tests/tests/compat.test.ts similarity index 100% rename from e2e/tests/compat.test.ts rename to e2e/smoke-tests/tests/compat.test.ts diff --git a/e2e/tests/modular.test.ts b/e2e/smoke-tests/tests/modular.test.ts similarity index 100% rename from e2e/tests/modular.test.ts rename to e2e/smoke-tests/tests/modular.test.ts diff --git a/e2e/webpack.config.js b/e2e/smoke-tests/webpack.config.js similarity index 100% rename from e2e/webpack.config.js rename to e2e/smoke-tests/webpack.config.js diff --git a/e2e/yarn.lock b/e2e/smoke-tests/yarn.lock similarity index 100% rename from e2e/yarn.lock rename to e2e/smoke-tests/yarn.lock diff --git a/e2e/test-project/package.json b/e2e/test-project/package.json new file mode 100644 index 00000000000..bfa1b1a800d --- /dev/null +++ b/e2e/test-project/package.json @@ -0,0 +1,15 @@ +{ + "name": "test-project", + "version": "1.0.0", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "", + "license": "ISC", + "description": "", + "dependencies": { + "react": "19.1.0", + "tailwindcss": "4.1.7" + } +} diff --git a/e2e/test-project/yarn.lock b/e2e/test-project/yarn.lock new file mode 100644 index 00000000000..1186994342e --- /dev/null +++ b/e2e/test-project/yarn.lock @@ -0,0 +1,13 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +react@19.1.0: + version "19.1.0" + resolved "https://registry.npmjs.org/react/-/react-19.1.0.tgz#926864b6c48da7627f004795d6cce50e90793b75" + integrity sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg== + +tailwindcss@4.1.7: + version "4.1.7" + resolved "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.1.7.tgz#949f76d50667946ddd7291e0c7a4b5a7dfc9e765" + integrity sha512-kr1o/ErIdNhTz8uzAYL7TpaUuzKIE6QPQ4qmSdxnoX/lo+5wmUHQA6h3L5yIqEImSRnAAURDirLu/BgiXGPAhg== From bd3dd4722497f8a0fb53bb897d36b2fc43dc0468 Mon Sep 17 00:00:00 2001 From: Christina Holland Date: Tue, 27 May 2025 11:28:46 -0700 Subject: [PATCH 02/13] Set up template and READMEs --- e2e/README.md | 11 +++++++++++ e2e/template/README.md | 3 +++ e2e/template/index.js | 1 + e2e/{test-project => template}/package.json | 4 ++-- e2e/template/yarn.lock | 8 ++++++++ e2e/test-project/yarn.lock | 13 ------------- 6 files changed, 25 insertions(+), 15 deletions(-) create mode 100644 e2e/README.md create mode 100644 e2e/template/README.md create mode 100644 e2e/template/index.js rename e2e/{test-project => template}/package.json (81%) create mode 100644 e2e/template/yarn.lock delete mode 100644 e2e/test-project/yarn.lock diff --git a/e2e/README.md b/e2e/README.md new file mode 100644 index 00000000000..042c134b808 --- /dev/null +++ b/e2e/README.md @@ -0,0 +1,11 @@ +# E2E Tests + +This directory is for Firebase E2E tests that are completely independent of the main SDK workspaces. Packages in here should + +* Have a start trigger independent of the main CI PR/push triggers (e.g., manual trigger, repository_dispatch, from an external runner like Kokoro, etc.) + + A common use case might be to clone this repo, cd into the chosen directory under e2e, npm install, and run npm scripts. + +* Have a self-contained set of NPM dependencies. They should not depend on the local version of Firebase in the SDK nor assume inherited availability of any packages in the top level package.json of this repo (typescript, firebase, karma, etc.). + +See the `template/` directory for an example. \ No newline at end of file diff --git a/e2e/template/README.md b/e2e/template/README.md new file mode 100644 index 00000000000..09b169b3e2f --- /dev/null +++ b/e2e/template/README.md @@ -0,0 +1,3 @@ +# E2E Test Package Template + +This is a template for an E2E test package. It contains one dependency not used in the global monorepo workspace to confirm the dependencies in this directory do not affect the global workspace. \ No newline at end of file diff --git a/e2e/template/index.js b/e2e/template/index.js new file mode 100644 index 00000000000..ea17b22ee52 --- /dev/null +++ b/e2e/template/index.js @@ -0,0 +1 @@ +console.log('hello'); \ No newline at end of file diff --git a/e2e/test-project/package.json b/e2e/template/package.json similarity index 81% rename from e2e/test-project/package.json rename to e2e/template/package.json index bfa1b1a800d..c07c4c5c080 100644 --- a/e2e/test-project/package.json +++ b/e2e/template/package.json @@ -3,13 +3,13 @@ "version": "1.0.0", "main": "index.js", "scripts": { + "start": "node index.js", "test": "echo \"Error: no test specified\" && exit 1" }, "author": "", "license": "ISC", "description": "", "dependencies": { - "react": "19.1.0", - "tailwindcss": "4.1.7" + "date-fns": "4.1.0" } } diff --git a/e2e/template/yarn.lock b/e2e/template/yarn.lock new file mode 100644 index 00000000000..4d7e448a31b --- /dev/null +++ b/e2e/template/yarn.lock @@ -0,0 +1,8 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +date-fns@4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/date-fns/-/date-fns-4.1.0.tgz#64b3d83fff5aa80438f5b1a633c2e83b8a1c2d14" + integrity sha512-Ukq0owbQXxa/U3EGtsdVBkR1w7KOQ5gIBqdH2hkvknzZPYvBxb/aa6E8L7tmjFtkwZBu3UXBbjIgPo/Ez4xaNg== diff --git a/e2e/test-project/yarn.lock b/e2e/test-project/yarn.lock deleted file mode 100644 index 1186994342e..00000000000 --- a/e2e/test-project/yarn.lock +++ /dev/null @@ -1,13 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -react@19.1.0: - version "19.1.0" - resolved "https://registry.npmjs.org/react/-/react-19.1.0.tgz#926864b6c48da7627f004795d6cce50e90793b75" - integrity sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg== - -tailwindcss@4.1.7: - version "4.1.7" - resolved "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.1.7.tgz#949f76d50667946ddd7291e0c7a4b5a7dfc9e765" - integrity sha512-kr1o/ErIdNhTz8uzAYL7TpaUuzKIE6QPQ4qmSdxnoX/lo+5wmUHQA6h3L5yIqEImSRnAAURDirLu/BgiXGPAhg== From f6bb5566d508a1439fe3bc31bfd891d1b173a4c5 Mon Sep 17 00:00:00 2001 From: Christina Holland Date: Tue, 27 May 2025 11:29:02 -0700 Subject: [PATCH 03/13] license I guess --- e2e/template/index.js | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/e2e/template/index.js b/e2e/template/index.js index ea17b22ee52..1e3a1a5d9af 100644 --- a/e2e/template/index.js +++ b/e2e/template/index.js @@ -1 +1,18 @@ -console.log('hello'); \ No newline at end of file +/** + * @license + * Copyright 2025 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +console.log('hello'); From 2537155f3a7459a35e975b8be57bb13f2b5591a8 Mon Sep 17 00:00:00 2001 From: Christina Holland Date: Tue, 27 May 2025 11:31:08 -0700 Subject: [PATCH 04/13] test on this pr --- e2e/smoke-tests/yarn.lock | 367 ++++++++++++++++++-------------------- 1 file changed, 172 insertions(+), 195 deletions(-) diff --git a/e2e/smoke-tests/yarn.lock b/e2e/smoke-tests/yarn.lock index c20459aecdd..b9a6d8e4451 100644 --- a/e2e/smoke-tests/yarn.lock +++ b/e2e/smoke-tests/yarn.lock @@ -19,16 +19,7 @@ js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/code-frame@^7.25.9": - version "7.26.0" - resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.0.tgz" - integrity sha512-INCKxTtbXtcNbUZ3YXutwMpEleqttcswhAdee7dhuoVrD2cnuc3PqtERBtxkX5nziX9vnBL8WXmSGwv8CuPV6g== - dependencies: - "@babel/helper-validator-identifier" "^7.25.9" - js-tokens "^4.0.0" - picocolors "^1.0.0" - -"@babel/code-frame@^7.26.0": +"@babel/code-frame@^7.25.9", "@babel/code-frame@^7.26.0": version "7.26.0" resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.0.tgz" integrity sha512-INCKxTtbXtcNbUZ3YXutwMpEleqttcswhAdee7dhuoVrD2cnuc3PqtERBtxkX5nziX9vnBL8WXmSGwv8CuPV6g== @@ -47,7 +38,7 @@ resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.26.8.tgz" integrity sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ== -"@babel/core@^7.0.0", "@babel/core@^7.0.0-0", "@babel/core@^7.0.0-0 || ^8.0.0-0 <8.0.0", "@babel/core@^7.12.0", "@babel/core@^7.13.0", "@babel/core@^7.4.0 || ^8.0.0-0 <8.0.0", "@babel/core@^7.8.0", "@babel/core@7.26.8": +"@babel/core@7.26.8": version "7.26.8" resolved "https://registry.npmjs.org/@babel/core/-/core-7.26.8.tgz" integrity sha512-l+lkXCHS6tQEc5oUpK28xBOZ6+HwaH7YwoYQbLFiYb4nS2/l1tKnZEtEWkD0GuiYdvArf9qBS0XlQGXzPMsNqQ== @@ -69,49 +60,7 @@ json5 "^2.2.3" semver "^6.3.1" -"@babel/core@^7.11.6": - version "7.26.0" - resolved "https://registry.npmjs.org/@babel/core/-/core-7.26.0.tgz" - integrity sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg== - dependencies: - "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.26.0" - "@babel/generator" "^7.26.0" - "@babel/helper-compilation-targets" "^7.25.9" - "@babel/helper-module-transforms" "^7.26.0" - "@babel/helpers" "^7.26.0" - "@babel/parser" "^7.26.0" - "@babel/template" "^7.25.9" - "@babel/traverse" "^7.25.9" - "@babel/types" "^7.26.0" - convert-source-map "^2.0.0" - debug "^4.1.0" - gensync "^1.0.0-beta.2" - json5 "^2.2.3" - semver "^6.3.1" - -"@babel/core@^7.12.3": - version "7.26.0" - resolved "https://registry.npmjs.org/@babel/core/-/core-7.26.0.tgz" - integrity sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg== - dependencies: - "@ampproject/remapping" "^2.2.0" - "@babel/code-frame" "^7.26.0" - "@babel/generator" "^7.26.0" - "@babel/helper-compilation-targets" "^7.25.9" - "@babel/helper-module-transforms" "^7.26.0" - "@babel/helpers" "^7.26.0" - "@babel/parser" "^7.26.0" - "@babel/template" "^7.25.9" - "@babel/traverse" "^7.25.9" - "@babel/types" "^7.26.0" - convert-source-map "^2.0.0" - debug "^4.1.0" - gensync "^1.0.0-beta.2" - json5 "^2.2.3" - semver "^6.3.1" - -"@babel/core@^7.23.9": +"@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.23.9": version "7.26.0" resolved "https://registry.npmjs.org/@babel/core/-/core-7.26.0.tgz" integrity sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg== @@ -354,34 +303,20 @@ "@babel/template" "^7.26.9" "@babel/types" "^7.26.9" -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9": +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.26.3": version "7.26.3" resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.26.3.tgz" integrity sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA== dependencies: "@babel/types" "^7.26.3" -"@babel/parser@^7.25.9": - version "7.26.0" - resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.26.0.tgz" - integrity sha512-aP8x5pIw3xvYr/sXT+SEUwyhrXT8rUJRZltK/qN3Db80dcKpTett8cJxHyjk+xYSVXvNnl2SfcJVjbwxpOSscA== - dependencies: - "@babel/types" "^7.26.0" - -"@babel/parser@^7.26.0": +"@babel/parser@^7.25.9", "@babel/parser@^7.26.0": version "7.26.0" resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.26.0.tgz" integrity sha512-aP8x5pIw3xvYr/sXT+SEUwyhrXT8rUJRZltK/qN3Db80dcKpTett8cJxHyjk+xYSVXvNnl2SfcJVjbwxpOSscA== dependencies: "@babel/types" "^7.26.0" -"@babel/parser@^7.26.3": - version "7.26.3" - resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.26.3.tgz" - integrity sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA== - dependencies: - "@babel/types" "^7.26.3" - "@babel/parser@^7.26.8", "@babel/parser@^7.26.9": version "7.26.9" resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.26.9.tgz" @@ -1120,15 +1055,7 @@ debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.0.0": - version "7.26.3" - resolved "https://registry.npmjs.org/@babel/types/-/types-7.26.3.tgz" - integrity sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA== - dependencies: - "@babel/helper-string-parser" "^7.25.9" - "@babel/helper-validator-identifier" "^7.25.9" - -"@babel/types@^7.20.7": +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.26.3", "@babel/types@^7.3.3": version "7.26.3" resolved "https://registry.npmjs.org/@babel/types/-/types-7.26.3.tgz" integrity sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA== @@ -1144,14 +1071,6 @@ "@babel/helper-string-parser" "^7.25.9" "@babel/helper-validator-identifier" "^7.25.9" -"@babel/types@^7.26.3", "@babel/types@^7.3.3": - version "7.26.3" - resolved "https://registry.npmjs.org/@babel/types/-/types-7.26.3.tgz" - integrity sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA== - dependencies: - "@babel/helper-string-parser" "^7.25.9" - "@babel/helper-validator-identifier" "^7.25.9" - "@babel/types@^7.26.8", "@babel/types@^7.26.9": version "7.26.9" resolved "https://registry.npmjs.org/@babel/types/-/types-7.26.9.tgz" @@ -1190,6 +1109,8 @@ "@firebase/analytics-compat@0.2.20-20250512211235": version "0.2.20-20250512211235" + resolved "https://registry.npmjs.org/@firebase/analytics-compat/-/analytics-compat-0.2.20-20250512211235.tgz#725ebf8e94ad9aba4ed22f79206c1a2420190a82" + integrity sha512-2MmqqNlHlbs6454pOnKnNbtz8cF54UYgCiFWc0tXV6VNrSAGAyWgY3Ujve5+ayuSmzMuTaLNKk8kOPC90nNmCA== dependencies: "@firebase/analytics" "0.10.14-20250512211235" "@firebase/analytics-types" "0.8.3" @@ -1204,6 +1125,8 @@ "@firebase/analytics@0.10.14-20250512211235": version "0.10.14-20250512211235" + resolved "https://registry.npmjs.org/@firebase/analytics/-/analytics-0.10.14-20250512211235.tgz#0c9fb8e352e0e641168d1968e616a0c775a4392f" + integrity sha512-yPo0D9Ec5jSWRmI6JYt8PCzTVUHtTvnmhN7s09Wh2ckrbv7kgejIAYOjKOK30Umro+teA6wTsY07Q27C1dOM4A== dependencies: "@firebase/component" "0.6.15-20250512211235" "@firebase/installations" "0.6.15-20250512211235" @@ -1213,6 +1136,8 @@ "@firebase/app-check-compat@0.3.23-20250512211235": version "0.3.23-20250512211235" + resolved "https://registry.npmjs.org/@firebase/app-check-compat/-/app-check-compat-0.3.23-20250512211235.tgz#f060c925f2bcd936299504a5f34bc81ea872388f" + integrity sha512-iI2mGM/f8z4aQhoB57HnErh8vCqyQJFVQS7USLy6dUyL15FcIe5HQ88N4oD9glagu4IDRlZ+Rohlrw9ObbyNxA== dependencies: "@firebase/app-check" "0.10.0-20250512211235" "@firebase/app-check-types" "0.5.3" @@ -1233,6 +1158,8 @@ "@firebase/app-check@0.10.0-20250512211235": version "0.10.0-20250512211235" + resolved "https://registry.npmjs.org/@firebase/app-check/-/app-check-0.10.0-20250512211235.tgz#304ae95ed148d0837f64b94527d6b2b68966b117" + integrity sha512-zFbNyt3j6ixg6/Gh3WdA+FvMhUxIRASEq/NRC+Jtofm5la5ZJ88wdLDJ/kSHtdMINQfKuneHbJJ832u5BTqpYQ== dependencies: "@firebase/component" "0.6.15-20250512211235" "@firebase/logger" "0.4.4" @@ -1241,6 +1168,8 @@ "@firebase/app-compat@0.4.0-20250512211235": version "0.4.0-20250512211235" + resolved "https://registry.npmjs.org/@firebase/app-compat/-/app-compat-0.4.0-20250512211235.tgz#4ae94412aa00afcf4663919af564e321ea17b335" + integrity sha512-epnyKsA97L0FMigDHWOcgJ2TeMnlpuyiGIVZdnQiElKfRs3UFgDvBb6AK5dHgT4REe7ZbXqGa/8TSUUGFhEcmw== dependencies: "@firebase/app" "0.13.0-20250512211235" "@firebase/component" "0.6.15-20250512211235" @@ -1248,13 +1177,15 @@ "@firebase/util" "1.12.0-20250512211235" tslib "^2.1.0" -"@firebase/app-types@0.9.3", "@firebase/app-types@0.x": +"@firebase/app-types@0.9.3": version "0.9.3" resolved "https://registry.npmjs.org/@firebase/app-types/-/app-types-0.9.3.tgz" integrity sha512-kRVpIl4vVGJ4baogMDINbyrIOtOxqhkZQg4jTq3l8Lw6WSk0xfpEYzezFu+Kl4ve4fbPl79dvwRtaFqAC/ucCw== -"@firebase/app@0.13.0-20250512211235", "@firebase/app@0.x": +"@firebase/app@0.13.0-20250512211235": version "0.13.0-20250512211235" + resolved "https://registry.npmjs.org/@firebase/app/-/app-0.13.0-20250512211235.tgz#b8028efcd45ac07b3304ac361008f08b0cfa445f" + integrity sha512-9qcJX9fKMFuZf5+8BxK0Dg1gJU+x4shoH+VFiKnZ7ri6sJ0OP67Y4PnHDYdzKmx7/HJt0KSyZMDUX/hT2Wbl/g== dependencies: "@firebase/component" "0.6.15-20250512211235" "@firebase/logger" "0.4.4" @@ -1264,6 +1195,8 @@ "@firebase/auth-compat@0.5.23-20250512211235": version "0.5.23-20250512211235" + resolved "https://registry.npmjs.org/@firebase/auth-compat/-/auth-compat-0.5.23-20250512211235.tgz#130b8583e137bae9b7e288e8991583ff04b1ab25" + integrity sha512-dWBbbYAiNmrD6+P5m2TgQ9GWPIffjedQ9HRXnPyqKytTiEQzxvYBd91NS3y3YI6bBg1RWAWccMnwtQVjl1eK6A== dependencies: "@firebase/auth" "1.10.3-20250512211235" "@firebase/auth-types" "0.13.0" @@ -1283,6 +1216,8 @@ "@firebase/auth@1.10.3-20250512211235": version "1.10.3-20250512211235" + resolved "https://registry.npmjs.org/@firebase/auth/-/auth-1.10.3-20250512211235.tgz#47f55c228e4eb441050914c6e545ccb1f021a712" + integrity sha512-f7Lov3vogDMyroncY7OipDmNL5bqZcDxdIVe1qN/LEaaKygG2wPxKMa+LjSFwxwo/oGp/i6R4ixT8otMkOL2MQ== dependencies: "@firebase/component" "0.6.15-20250512211235" "@firebase/logger" "0.4.4" @@ -1299,12 +1234,16 @@ "@firebase/component@0.6.15-20250512211235": version "0.6.15-20250512211235" + resolved "https://registry.npmjs.org/@firebase/component/-/component-0.6.15-20250512211235.tgz#91f4f234904480f34d26aa41922b8cf4603944c2" + integrity sha512-8U//EzcIE6frUcWUMcmrVzWBAXLBZt2eGWwt8Of1y+yU6t3Zwwu+1JpCz0hbiHpzXnkuTFjPwWA6fKgZQTk0MQ== dependencies: "@firebase/util" "1.12.0-20250512211235" tslib "^2.1.0" "@firebase/data-connect@0.3.6-20250512211235": version "0.3.6-20250512211235" + resolved "https://registry.npmjs.org/@firebase/data-connect/-/data-connect-0.3.6-20250512211235.tgz#f20ee3c0cc576f000244ad769e1813151e2aa3cd" + integrity sha512-ZMs7lX9/Sd7XNRaylht535sY1mFUasLCY0toKQWF4KIAdUeij0TNzqWpeULNqNJXtczu+eRrG3Nct1rY4JtiiQ== dependencies: "@firebase/auth-interop-types" "0.2.4" "@firebase/component" "0.6.15-20250512211235" @@ -1314,6 +1253,8 @@ "@firebase/database-compat@2.0.7-20250512211235": version "2.0.7-20250512211235" + resolved "https://registry.npmjs.org/@firebase/database-compat/-/database-compat-2.0.7-20250512211235.tgz#0d78c287cab62583d46525c690469576787aca22" + integrity sha512-8bt/9/EXqxce32RDg254yfkEUsG9x9h3K6+IFdsCeLhPH9mQLosrcRBSHusHGX65oNbY1ATgxkt/+v+uhoj+nw== dependencies: "@firebase/component" "0.6.15-20250512211235" "@firebase/database" "1.0.16-20250512211235" @@ -1324,12 +1265,16 @@ "@firebase/database-types@1.0.12-20250512211235": version "1.0.12-20250512211235" + resolved "https://registry.npmjs.org/@firebase/database-types/-/database-types-1.0.12-20250512211235.tgz#4b89e43e99e0fb621fc4abcec792d027c0669f44" + integrity sha512-FsZ/VeSyNLaJWQGLP0Yy955Zonlm/WSPhpdOpof84ToKAekUQobxlI08skPe+Gk2dAUnKrdqfGJPO9pagsByYA== dependencies: "@firebase/app-types" "0.9.3" "@firebase/util" "1.12.0-20250512211235" "@firebase/database@1.0.16-20250512211235": version "1.0.16-20250512211235" + resolved "https://registry.npmjs.org/@firebase/database/-/database-1.0.16-20250512211235.tgz#223f45e9010574d361cbaa53e56b51dab17a804d" + integrity sha512-l2jVH/uCzbuAhCYk37+YWFHE2nIkGyTiFL3RthkDvoT+KHDzvaIxnWmjnbAgrQEYSHaimziiw0DmpQM+Safb0g== dependencies: "@firebase/app-check-interop-types" "0.3.3" "@firebase/auth-interop-types" "0.2.4" @@ -1341,6 +1286,8 @@ "@firebase/firestore-compat@0.3.48-20250512211235": version "0.3.48-20250512211235" + resolved "https://registry.npmjs.org/@firebase/firestore-compat/-/firestore-compat-0.3.48-20250512211235.tgz#547d62fd41bc15495c26f9675d9ed24ff3c3f50c" + integrity sha512-8nWD3QRkN9rUoApULVfBMg112QNYstUWRm58cMwcdp0Wkx6+RV+9YraDYzg7GmsEklL4CnGF36HGNrtzraxOTg== dependencies: "@firebase/component" "0.6.15-20250512211235" "@firebase/firestore" "4.7.13-20250512211235" @@ -1355,6 +1302,8 @@ "@firebase/firestore@4.7.13-20250512211235": version "4.7.13-20250512211235" + resolved "https://registry.npmjs.org/@firebase/firestore/-/firestore-4.7.13-20250512211235.tgz#cdebb6b7ddba2b7738896458327ae064bb6b540e" + integrity sha512-m3xEnbYrsgp58a5if00Vqrrglm/22yU7amZ3CjwqUD+/M6TFSf1a9lvMqF9S33AuPbwHDxUb3hJ4ogpTQ+uSjQ== dependencies: "@firebase/component" "0.6.15-20250512211235" "@firebase/logger" "0.4.4" @@ -1366,6 +1315,8 @@ "@firebase/functions-compat@0.3.22-20250512211235": version "0.3.22-20250512211235" + resolved "https://registry.npmjs.org/@firebase/functions-compat/-/functions-compat-0.3.22-20250512211235.tgz#2ce718de863e7a26a9ec2f7e19ab6a15cb375306" + integrity sha512-/CrVsUlcVKoCtuzpYzIfBYjdiCBtpMkDIY3M2/MIKv5gwB90ydX4E2OP/E57Ne85eiYfezYoGurt27OXSno/Fg== dependencies: "@firebase/component" "0.6.15-20250512211235" "@firebase/functions" "0.12.5-20250512211235" @@ -1380,6 +1331,8 @@ "@firebase/functions@0.12.5-20250512211235": version "0.12.5-20250512211235" + resolved "https://registry.npmjs.org/@firebase/functions/-/functions-0.12.5-20250512211235.tgz#17696d8918136e319459628a43ea45e08e9bfa39" + integrity sha512-3BTjMHjx4ulr22+G1/ut8ZQW6OTGmpS5LC+2MhTl/W8OgSYP+3Hc844OhhlDq4kBjcWO752PG2+I1JwJNK6rPA== dependencies: "@firebase/app-check-interop-types" "0.3.3" "@firebase/auth-interop-types" "0.2.4" @@ -1390,6 +1343,8 @@ "@firebase/installations-compat@0.2.15-20250512211235": version "0.2.15-20250512211235" + resolved "https://registry.npmjs.org/@firebase/installations-compat/-/installations-compat-0.2.15-20250512211235.tgz#5c91a48c29c358164fe34f254f1509b7404373ca" + integrity sha512-i7sV28ZLE8p65lHyy/vni93aiIKIyo7PuOUNyaMnfdam++Sv2mBkNj0koo9B6LidDaWxZ3gZJ2bTxSyPOOukYg== dependencies: "@firebase/component" "0.6.15-20250512211235" "@firebase/installations" "0.6.15-20250512211235" @@ -1404,6 +1359,8 @@ "@firebase/installations@0.6.15-20250512211235": version "0.6.15-20250512211235" + resolved "https://registry.npmjs.org/@firebase/installations/-/installations-0.6.15-20250512211235.tgz#c0b5b07feda48a92b72e7d919a2a2f524a632b35" + integrity sha512-RinZjbNpImsz0JGi6u6B6Yb7ezrE6ej2pdBT7K3ju1cScpBmKRBeWSl7AevD5PEH+W9E5i6U2VX+q2gycI3ZRA== dependencies: "@firebase/component" "0.6.15-20250512211235" "@firebase/util" "1.12.0-20250512211235" @@ -1419,6 +1376,8 @@ "@firebase/messaging-compat@0.2.19-20250512211235": version "0.2.19-20250512211235" + resolved "https://registry.npmjs.org/@firebase/messaging-compat/-/messaging-compat-0.2.19-20250512211235.tgz#1980cc4c931085742e568596d7b28af0853aa020" + integrity sha512-vTL0hMyPosU/WRvZ1xmi01aURJyjUI3zeBByYnnwSUJN01eF0YX7eM1RId/HSFcHoT/HgfsHFvINUFjy58TVUQ== dependencies: "@firebase/component" "0.6.15-20250512211235" "@firebase/messaging" "0.12.19-20250512211235" @@ -1432,6 +1391,8 @@ "@firebase/messaging@0.12.19-20250512211235": version "0.12.19-20250512211235" + resolved "https://registry.npmjs.org/@firebase/messaging/-/messaging-0.12.19-20250512211235.tgz#f225f480879c8a550d2927d314ae62e17f30355f" + integrity sha512-h4fraiJuJrLSOSI6WIFlbV1u6L6/8zPfTzcNxqyjCIVj5eFVpgoLIW5lQ2O+G6h6RQiWG29AJkuWGnp26BOJ6Q== dependencies: "@firebase/component" "0.6.15-20250512211235" "@firebase/installations" "0.6.15-20250512211235" @@ -1442,6 +1403,8 @@ "@firebase/performance-compat@0.2.17-20250512211235": version "0.2.17-20250512211235" + resolved "https://registry.npmjs.org/@firebase/performance-compat/-/performance-compat-0.2.17-20250512211235.tgz#ead4a1201effd57aef5a8e1a4353196d6bde9b41" + integrity sha512-5uUlGWbEyoTzGa0JaS6OIUl5T69VwK4gYRAjcET79kuVSZU85l4M1gsDbXqhl/YH1o/gpQEPmm1T1UrK9bRQbw== dependencies: "@firebase/component" "0.6.15-20250512211235" "@firebase/logger" "0.4.4" @@ -1457,6 +1420,8 @@ "@firebase/performance@0.7.4-20250512211235": version "0.7.4-20250512211235" + resolved "https://registry.npmjs.org/@firebase/performance/-/performance-0.7.4-20250512211235.tgz#fadf55c6e8072320e8660e1b8dd97e3d3561650f" + integrity sha512-defCXX20kxX05/3b4qI+V2PreeH/qwn1Egvp82geS+hGyK6cDRFGgV7q94tIcc6idQJoRhsSW32ABKdI99XpWg== dependencies: "@firebase/component" "0.6.15-20250512211235" "@firebase/installations" "0.6.15-20250512211235" @@ -1467,6 +1432,8 @@ "@firebase/remote-config-compat@0.2.15-20250512211235": version "0.2.15-20250512211235" + resolved "https://registry.npmjs.org/@firebase/remote-config-compat/-/remote-config-compat-0.2.15-20250512211235.tgz#cb391f23f46aea88e3df0a7f1edb15d24000e965" + integrity sha512-DiHaFVywKBG1GGziN/NA5k8qkvJ68gX+AFe63yQOmzAfvH59W+dbxAgSG116pGrfF3xDH/e/lho4Cs3M6tbL8g== dependencies: "@firebase/component" "0.6.15-20250512211235" "@firebase/logger" "0.4.4" @@ -1482,6 +1449,8 @@ "@firebase/remote-config@0.6.2-20250512211235": version "0.6.2-20250512211235" + resolved "https://registry.npmjs.org/@firebase/remote-config/-/remote-config-0.6.2-20250512211235.tgz#c19a7057fdb4493efc70c065cebd85b0841744ee" + integrity sha512-FR/IDz/AkQiSXXZw80OJEl/MT++URfbrrUDev3p1Dgc5yuz2hGCReuiq/YYVTA3n/yppwY+BnRdVidV9dRaHSQ== dependencies: "@firebase/component" "0.6.15-20250512211235" "@firebase/installations" "0.6.15-20250512211235" @@ -1491,6 +1460,8 @@ "@firebase/storage-compat@0.3.19-20250512211235": version "0.3.19-20250512211235" + resolved "https://registry.npmjs.org/@firebase/storage-compat/-/storage-compat-0.3.19-20250512211235.tgz#d81a8cd4fb7c5222d11e8c4f67f83f48c8d064f6" + integrity sha512-Qz3kRo4qc6wRSDq/sCRT9ITqT/Of4puErdhideN+GBi40m42bLWOqBkxpkzPmHphOmFNwKUBA8/9Cksr/fj6IA== dependencies: "@firebase/component" "0.6.15-20250512211235" "@firebase/storage" "0.13.9-20250512211235" @@ -1505,12 +1476,14 @@ "@firebase/storage@0.13.9-20250512211235": version "0.13.9-20250512211235" + resolved "https://registry.npmjs.org/@firebase/storage/-/storage-0.13.9-20250512211235.tgz#1d809b25797bd118ee9b83ac220d8a6ae0eafed8" + integrity sha512-68vuBOmYVUu93Tbri++ubk8ECASRQWYnB1cvPpfBT0WoLSgdgxj+2F/+buXqzFZT/3ae8FBcEdgK6cD0gcT7tA== dependencies: "@firebase/component" "0.6.15-20250512211235" "@firebase/util" "1.12.0-20250512211235" tslib "^2.1.0" -"@firebase/util@1.11.1", "@firebase/util@1.x": +"@firebase/util@1.11.1": version "1.11.1" resolved "https://registry.npmjs.org/@firebase/util/-/util-1.11.1.tgz" integrity sha512-RXg4WE8C2LUrvoV/TMGRTu223zZf9Dq9MR8yHZio9nF9TpLnpCPURw9VWWB2WATDl6HfIdWfl2x2SJYtHkN4hw== @@ -1787,14 +1760,6 @@ resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz" integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ== -"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": - version "0.3.25" - resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz" - integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== - dependencies: - "@jridgewell/resolve-uri" "^3.1.0" - "@jridgewell/sourcemap-codec" "^1.4.14" - "@jridgewell/trace-mapping@0.3.9": version "0.3.9" resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz" @@ -1803,6 +1768,14 @@ "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" +"@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": + version "0.3.25" + resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz" + integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" + "@jsonjoy.com/base64@^1.1.1": version "1.1.2" resolved "https://registry.npmjs.org/@jsonjoy.com/base64/-/base64-1.1.2.tgz" @@ -1990,18 +1963,24 @@ "@types/eslint-scope@^3.7.7": version "3.7.7" + resolved "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz#3108bd5f18b0cdb277c867b3dd449c9ed7079ac5" + integrity sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg== dependencies: "@types/eslint" "*" "@types/estree" "*" "@types/eslint@*": version "9.6.1" + resolved "https://registry.npmjs.org/@types/eslint/-/eslint-9.6.1.tgz#d5795ad732ce81715f27f75da913004a56751584" + integrity sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag== dependencies: "@types/estree" "*" "@types/json-schema" "*" "@types/estree@*", "@types/estree@^1.0.6": version "1.0.7" + resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.7.tgz#4158d3105276773d5b7695cd4834b1722e4f37a8" + integrity sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ== "@types/express-serve-static-core@*", "@types/express-serve-static-core@^5.0.0": version "5.0.1" @@ -2033,7 +2012,7 @@ "@types/qs" "*" "@types/serve-static" "*" -"@types/express@^4.17.13", "@types/express@^4.17.21": +"@types/express@^4.17.21": version "4.17.21" resolved "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz" integrity sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ== @@ -2202,7 +2181,7 @@ dependencies: "@types/yargs-parser" "*" -"@webassemblyjs/ast@^1.14.1", "@webassemblyjs/ast@1.14.1": +"@webassemblyjs/ast@1.14.1", "@webassemblyjs/ast@^1.14.1": version "1.14.1" resolved "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.14.1.tgz" integrity sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ== @@ -2270,6 +2249,8 @@ "@webassemblyjs/wasm-edit@^1.14.1": version "1.14.1" + resolved "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz#ac6689f502219b59198ddec42dcd496b1004d597" + integrity sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ== dependencies: "@webassemblyjs/ast" "1.14.1" "@webassemblyjs/helper-buffer" "1.14.1" @@ -2301,7 +2282,7 @@ "@webassemblyjs/wasm-gen" "1.14.1" "@webassemblyjs/wasm-parser" "1.14.1" -"@webassemblyjs/wasm-parser@^1.14.1", "@webassemblyjs/wasm-parser@1.14.1": +"@webassemblyjs/wasm-parser@1.14.1", "@webassemblyjs/wasm-parser@^1.14.1": version "1.14.1" resolved "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz" integrity sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ== @@ -2381,6 +2362,8 @@ acorn@^8.1.0, acorn@^8.11.0, acorn@^8.4.1, acorn@^8.8.1: acorn@^8.14.0: version "8.14.1" + resolved "https://registry.npmjs.org/acorn/-/acorn-8.14.1.tgz#721d5dc10f7d5b5609a891773d47731796935dfb" + integrity sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg== acorn@^8.8.2: version "8.13.0" @@ -2413,7 +2396,7 @@ ajv-keywords@^5.1.0: dependencies: fast-deep-equal "^3.1.3" -ajv@^6.12.4, ajv@^6.9.1: +ajv@^6.12.4: version "6.12.6" resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -2423,7 +2406,7 @@ ajv@^6.12.4, ajv@^6.9.1: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@^8.0.0, ajv@^8.8.2, ajv@^8.9.0: +ajv@^8.0.0, ajv@^8.9.0: version "8.17.1" resolved "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz" integrity sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g== @@ -2492,7 +2475,7 @@ asynckit@^0.4.0: resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz" integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== -babel-jest@^29.7.0, babel-jest@29.7.0: +babel-jest@29.7.0, babel-jest@^29.7.0: version "29.7.0" resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz" integrity sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg== @@ -2650,7 +2633,7 @@ braces@^3.0.3, braces@~3.0.2: dependencies: fill-range "^7.1.1" -browserslist@^4.24.0, "browserslist@>= 4.21.0": +browserslist@^4.24.0: version "4.24.2" resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz" integrity sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg== @@ -2967,13 +2950,6 @@ data-urls@^3.0.2: whatwg-mimetype "^3.0.0" whatwg-url "^11.0.0" -debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@4: - version "4.3.7" - resolved "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz" - integrity sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ== - dependencies: - ms "^2.1.3" - debug@2.6.9: version "2.6.9" resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" @@ -2981,6 +2957,13 @@ debug@2.6.9: dependencies: ms "2.0.0" +debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1: + version "4.3.7" + resolved "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz" + integrity sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ== + dependencies: + ms "^2.1.3" + decimal.js@^10.4.2: version "10.4.3" resolved "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz" @@ -3028,16 +3011,16 @@ delayed-stream@~1.0.0: resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== -depd@~1.1.2: - version "1.1.2" - resolved "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz" - integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== - depd@2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== +depd@~1.1.2: + version "1.1.2" + resolved "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz" + integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== + destroy@1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz" @@ -3323,7 +3306,7 @@ fastest-levenshtein@^1.0.12: resolved "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.16.tgz" integrity sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg== -faye-websocket@^0.11.3, faye-websocket@0.11.4: +faye-websocket@0.11.4, faye-websocket@^0.11.3: version "0.11.4" resolved "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz" integrity sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g== @@ -3585,16 +3568,6 @@ http-deceiver@^1.2.7: resolved "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz" integrity sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw== -http-errors@~1.6.2: - version "1.6.3" - resolved "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz" - integrity sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A== - dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.4.0 < 2" - http-errors@2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz" @@ -3606,6 +3579,16 @@ http-errors@2.0.0: statuses "2.0.1" toidentifier "1.0.1" +http-errors@~1.6.2: + version "1.6.3" + resolved "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz" + integrity sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A== + dependencies: + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.0" + statuses ">= 1.4.0 < 2" + http-parser-js@>=0.5.1: version "0.5.8" resolved "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz" @@ -3698,7 +3681,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3, inherits@2, inherits@2.0.4: +inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3: version "2.0.4" resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -3713,16 +3696,16 @@ interpret@^3.1.1: resolved "https://registry.npmjs.org/interpret/-/interpret-3.1.1.tgz" integrity sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ== -ipaddr.js@^2.1.0: - version "2.2.0" - resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz" - integrity sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA== - ipaddr.js@1.9.1: version "1.9.1" resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz" integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== +ipaddr.js@^2.1.0: + version "2.2.0" + resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz" + integrity sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA== + is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" @@ -4101,7 +4084,7 @@ jest-resolve-dependencies@^29.7.0: jest-regex-util "^29.6.3" jest-snapshot "^29.7.0" -jest-resolve@*, jest-resolve@^29.7.0: +jest-resolve@^29.7.0: version "29.7.0" resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz" integrity sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA== @@ -4469,16 +4452,16 @@ micromatch@^4.0.2, micromatch@^4.0.4: braces "^3.0.3" picomatch "^2.3.1" -"mime-db@>= 1.43.0 < 2": - version "1.53.0" - resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.53.0.tgz" - integrity sha512-oHlN/w+3MQ3rba9rqFr6V/ypF10LSkdwUysQL7GkXoTgIWeV+tcXGA852TBxH+gsh8UWoyhR1hKcoMJTuWflpg== - mime-db@1.52.0: version "1.52.0" resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== +"mime-db@>= 1.43.0 < 2": + version "1.53.0" + resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.53.0.tgz" + integrity sha512-oHlN/w+3MQ3rba9rqFr6V/ypF10LSkdwUysQL7GkXoTgIWeV+tcXGA852TBxH+gsh8UWoyhR1hKcoMJTuWflpg== + mime-types@^2.1.12, mime-types@^2.1.27, mime-types@^2.1.31, mime-types@~2.1.17, mime-types@~2.1.24, mime-types@~2.1.34: version "2.1.35" resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz" @@ -4508,16 +4491,16 @@ minimatch@^3.0.4, minimatch@^3.1.1: dependencies: brace-expansion "^1.1.7" -ms@^2.1.3, ms@2.1.3: - version "2.1.3" - resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" - integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== - ms@2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== +ms@2.1.3, ms@^2.1.3: + version "2.1.3" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + multicast-dns@^7.2.5: version "7.2.5" resolved "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz" @@ -4588,7 +4571,7 @@ obuf@^1.0.0, obuf@^1.1.2: resolved "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz" integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== -on-finished@^2.4.1, on-finished@2.4.1: +on-finished@2.4.1, on-finished@^2.4.1: version "2.4.1" resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz" integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== @@ -4967,20 +4950,15 @@ run-applescript@^7.0.0: resolved "https://registry.npmjs.org/run-applescript/-/run-applescript-7.0.0.tgz" integrity sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A== -safe-buffer@^5.1.0, safe-buffer@>=5.1.0, safe-buffer@~5.2.0, safe-buffer@5.2.1: - version "5.2.1" - resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" - integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== - -safe-buffer@~5.1.0, safe-buffer@~5.1.1: +safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-buffer@5.1.2: - version "5.1.2" - resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== +safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.1.0, safe-buffer@~5.2.0: + version "5.2.1" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== "safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0": version "2.1.2" @@ -5041,12 +5019,7 @@ semver@^6.0.0, semver@^6.3.0, semver@^6.3.1: resolved "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.5.3: - version "7.6.3" - resolved "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz" - integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== - -semver@^7.5.4: +semver@^7.5.3, semver@^7.5.4: version "7.6.3" resolved "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz" integrity sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A== @@ -5180,14 +5153,6 @@ sockjs@^0.3.24: uuid "^8.3.2" websocket-driver "^0.7.4" -source-map-support@~0.5.20: - version "0.5.21" - resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz" - integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== - dependencies: - buffer-from "^1.0.0" - source-map "^0.6.0" - source-map-support@0.5.13: version "0.5.13" resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz" @@ -5196,6 +5161,14 @@ source-map-support@0.5.13: buffer-from "^1.0.0" source-map "^0.6.0" +source-map-support@~0.5.20: + version "0.5.21" + resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz" + integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: version "0.6.1" resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" @@ -5236,29 +5209,15 @@ stack-utils@^2.0.3: dependencies: escape-string-regexp "^2.0.0" -"statuses@>= 1.4.0 < 2": - version "1.5.0" - resolved "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz" - integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== - statuses@2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz" integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== -string_decoder@^1.1.1: - version "1.3.0" - resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz" - integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== - dependencies: - safe-buffer "~5.2.0" - -string_decoder@~1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz" - integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== - dependencies: - safe-buffer "~5.1.0" +"statuses@>= 1.4.0 < 2": + version "1.5.0" + resolved "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz" + integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== string-length@^4.0.1: version "4.0.2" @@ -5277,6 +5236,20 @@ string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + dependencies: + safe-buffer "~5.1.0" + strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz" @@ -5330,6 +5303,8 @@ tapable@^2.1.1, tapable@^2.2.0: terser-webpack-plugin@^5.3.11: version "5.3.14" + resolved "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.14.tgz#9031d48e57ab27567f02ace85c7d690db66c3e06" + integrity sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw== dependencies: "@jridgewell/trace-mapping" "^0.3.25" jest-worker "^27.4.5" @@ -5405,7 +5380,7 @@ tree-dump@^1.0.1: resolved "https://registry.npmjs.org/tree-dump/-/tree-dump-1.0.2.tgz" integrity sha512-dpev9ABuLWdEubk+cIaI9cHwRNNDjkBBLXTwI4UCUFdQ5xXKqNXoK4FEciw/vxf+NQ7Cb7sGUyeUtORvHIdRXQ== -ts-node@>=9.0.0, ts-node@10.9.2: +ts-node@10.9.2: version "10.9.2" resolved "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz" integrity sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ== @@ -5424,7 +5399,7 @@ ts-node@>=9.0.0, ts-node@10.9.2: v8-compile-cache-lib "^3.0.1" yn "3.1.1" -tslib@^2, tslib@^2.0.0, tslib@^2.1.0, tslib@2: +tslib@^2.0.0, tslib@^2.1.0: version "2.8.0" resolved "https://registry.npmjs.org/tslib/-/tslib-2.8.0.tgz" integrity sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA== @@ -5447,7 +5422,7 @@ type-is@~1.6.18: media-typer "0.3.0" mime-types "~2.1.24" -typescript@>=2.7, typescript@5.5.4: +typescript@5.5.4: version "5.5.4" resolved "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz" integrity sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q== @@ -5485,7 +5460,7 @@ universalify@^0.2.0: resolved "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz" integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== -unpipe@~1.0.0, unpipe@1.0.0: +unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== @@ -5586,7 +5561,7 @@ webidl-conversions@^7.0.0: resolved "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz" integrity sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g== -webpack-cli@5.1.4, webpack-cli@5.x.x: +webpack-cli@5.1.4: version "5.1.4" resolved "https://registry.npmjs.org/webpack-cli/-/webpack-cli-5.1.4.tgz" integrity sha512-pIDJHIEI9LR0yxHXQ+Qh95k2EvXpWzZ5l+d+jIo+RdSm9MiHfzazIxwwni/p7+x4eJZuvG1AJwgC4TNQ7NRgsg== @@ -5664,8 +5639,10 @@ webpack-sources@^3.2.3: resolved "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz" integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== -webpack@^5.0.0, webpack@^5.1.0, webpack@>=2, webpack@5.98.0, webpack@5.x.x: +webpack@5.98.0: version "5.98.0" + resolved "https://registry.npmjs.org/webpack/-/webpack-5.98.0.tgz#44ae19a8f2ba97537978246072fb89d10d1fbd17" + integrity sha512-UFynvx+gM44Gv9qFgj0acCQK2VE1CtdfwFdimkapco3hlPCJ/zeq73n2yVKimVbtm+TnApIugGhLJnkU6gjYXA== dependencies: "@types/eslint-scope" "^3.7.7" "@types/estree" "^1.0.6" @@ -5691,7 +5668,7 @@ webpack@^5.0.0, webpack@^5.1.0, webpack@>=2, webpack@5.98.0, webpack@5.x.x: watchpack "^2.4.1" webpack-sources "^3.2.3" -websocket-driver@^0.7.4, websocket-driver@>=0.5.1: +websocket-driver@>=0.5.1, websocket-driver@^0.7.4: version "0.7.4" resolved "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz" integrity sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg== From 43cf0bfa42a0872965dcab16129ea4afadd926b8 Mon Sep 17 00:00:00 2001 From: Christina Holland Date: Tue, 27 May 2025 11:31:23 -0700 Subject: [PATCH 05/13] test on this pr --- .github/workflows/e2e-test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 4d95dd684ca..059012b6f2d 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -16,6 +16,7 @@ name: E2E Smoke Tests # Allows REST trigger. Currently triggered by release-cli script during a staging run. on: + pull_request: repository_dispatch: types: [staging-tests,canary-tests] From 41e4e1ae782eef1aac83371528b248c4a8a4e31b Mon Sep 17 00:00:00 2001 From: Christina Holland Date: Tue, 27 May 2025 11:33:22 -0700 Subject: [PATCH 06/13] add s --- .github/workflows/e2e-test.yml | 2 +- e2e/smoke-tests/README.md | 2 +- e2e/smoke-tests/sample-apps/compat.js | 2 +- e2e/smoke-tests/sample-apps/modular.js | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 059012b6f2d..6ee52843bc3 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -32,7 +32,7 @@ jobs: defaults: run: # Run any command steps in the /e2e subdir - working-directory: './e2e/smoke-test' + working-directory: './e2e/smoke-tests' steps: - name: Checkout Repo diff --git a/e2e/smoke-tests/README.md b/e2e/smoke-tests/README.md index 1c87c5f90b7..e9de541d0bb 100644 --- a/e2e/smoke-tests/README.md +++ b/e2e/smoke-tests/README.md @@ -15,7 +15,7 @@ Before running the tests, you will need: #### Project Config and Test User -Create a file named `firebase-config.js` in the top level of this `e2e/smoke-test` directory. The contents of the file should be: +Create a file named `firebase-config.js` in the top level of this `s` directory. The contents of the file should be: ```javascript // A config for a project diff --git a/e2e/smoke-tests/sample-apps/compat.js b/e2e/smoke-tests/sample-apps/compat.js index e77b7d087d0..97387ac3d95 100644 --- a/e2e/smoke-tests/sample-apps/compat.js +++ b/e2e/smoke-tests/sample-apps/compat.js @@ -82,7 +82,7 @@ async function authLogout() { * * Call a deployed function. * This cloud function must be deployed in this project first. See - * e2e/smoke-test/README.md for more info. + * s/README.md for more info. */ async function callFunctions() { console.log('[FUNCTIONS] start'); diff --git a/e2e/smoke-tests/sample-apps/modular.js b/e2e/smoke-tests/sample-apps/modular.js index f72ec328391..2d66b752081 100644 --- a/e2e/smoke-tests/sample-apps/modular.js +++ b/e2e/smoke-tests/sample-apps/modular.js @@ -121,7 +121,7 @@ async function authLogout(app) { * * Call a deployed function. * This cloud function must be deployed in this project first. See - * e2e/smoke-test/README.md for more info. + * e2e/smoke-tests/README.md for more info. */ async function callFunctions(app) { console.log('[FUNCTIONS] start'); From b51e601ac759fa5a26fad5a443229a2c338c305e Mon Sep 17 00:00:00 2001 From: Christina Holland Date: Tue, 27 May 2025 11:35:13 -0700 Subject: [PATCH 07/13] use latest --- .github/workflows/e2e-test.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 6ee52843bc3..5ef97a5a3db 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -53,14 +53,14 @@ jobs: echo "export const config = $PROJECT_CONFIG; export const testAccount = $TEST_ACCOUNT" > firebase-config.js - name: Poll npm until version to test is available for install run: | - echo "Polling npm for firebase@${{ github.event.client_payload.versionOrTag }}" + echo "Polling npm for firebase@latest" node ../scripts/release/poll-npm-publish.js env: - VERSION: ${{ github.event.client_payload.versionOrTag }} + VERSION: latest - name: Yarn install run: | - echo "Installing firebase@${{ github.event.client_payload.versionOrTag }}" - yarn add firebase@${{ github.event.client_payload.versionOrTag }} + echo "Installing firebase@latest" + yarn add firebase@latest yarn - name: Deploy "callTest" cloud function run: | @@ -91,7 +91,7 @@ jobs: env: WEBHOOK_URL: ${{ secrets.JSCORE_CHAT_WEBHOOK_URL }} RELEASE_TRACKER_URL: ${{ secrets.RELEASE_TRACKER_URL }} - VERSION_OR_TAG: ${{ github.event.client_payload.versionOrTag }} + VERSION_OR_TAG: latest # run in root working-directory: '.' - name: Tests failed From fc58bcdeec7db04759d74bc53feb85cdf74e5f26 Mon Sep 17 00:00:00 2001 From: Christina Holland Date: Tue, 27 May 2025 11:37:25 -0700 Subject: [PATCH 08/13] fix script path --- .github/workflows/e2e-test.yml | 44 ++++++++++++++++++---------------- 1 file changed, 23 insertions(+), 21 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 5ef97a5a3db..b37afe20bd9 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -54,7 +54,9 @@ jobs: - name: Poll npm until version to test is available for install run: | echo "Polling npm for firebase@latest" - node ../scripts/release/poll-npm-publish.js + node ./scripts/release/poll-npm-publish.js + # run in root + working-directory: '.' env: VERSION: latest - name: Yarn install @@ -83,23 +85,23 @@ jobs: env: APP_CHECK_DEBUG_TOKEN: ${{ secrets.APP_CHECK_DEBUG_TOKEN }} run: xvfb-run yarn test:compat - - name: Tests succeeded - if: success() - run: node scripts/ci/notify-test-result.js success - # we don't want THIS step erroring to trigger the failure notification - continue-on-error: true - env: - WEBHOOK_URL: ${{ secrets.JSCORE_CHAT_WEBHOOK_URL }} - RELEASE_TRACKER_URL: ${{ secrets.RELEASE_TRACKER_URL }} - VERSION_OR_TAG: latest - # run in root - working-directory: '.' - - name: Tests failed - if: failure() - run: node scripts/ci/notify-test-result.js fail - env: - WEBHOOK_URL: ${{ secrets.JSCORE_CHAT_WEBHOOK_URL }} - RELEASE_TRACKER_URL: ${{ secrets.RELEASE_TRACKER_URL }} - VERSION_OR_TAG: ${{ github.event.client_payload.versionOrTag }} - # run in root - working-directory: '.' + # - name: Tests succeeded + # if: success() + # run: node scripts/ci/notify-test-result.js success + # # we don't want THIS step erroring to trigger the failure notification + # continue-on-error: true + # env: + # WEBHOOK_URL: ${{ secrets.JSCORE_CHAT_WEBHOOK_URL }} + # RELEASE_TRACKER_URL: ${{ secrets.RELEASE_TRACKER_URL }} + # VERSION_OR_TAG: latest + # # run in root + # working-directory: '.' + # - name: Tests failed + # if: failure() + # run: node scripts/ci/notify-test-result.js fail + # env: + # WEBHOOK_URL: ${{ secrets.JSCORE_CHAT_WEBHOOK_URL }} + # RELEASE_TRACKER_URL: ${{ secrets.RELEASE_TRACKER_URL }} + # VERSION_OR_TAG: ${{ github.event.client_payload.versionOrTag }} + # # run in root + # working-directory: '.' From 25e1cd3251c9cac8d8e49b19c5381908e86b40e5 Mon Sep 17 00:00:00 2001 From: Christina Holland Date: Tue, 27 May 2025 11:38:27 -0700 Subject: [PATCH 09/13] indent --- .github/workflows/e2e-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index b37afe20bd9..618639fa302 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -55,8 +55,8 @@ jobs: run: | echo "Polling npm for firebase@latest" node ./scripts/release/poll-npm-publish.js - # run in root - working-directory: '.' + # run in root + working-directory: '.' env: VERSION: latest - name: Yarn install From 8fdadd3b6965fa174d4246755a1aea1e129478d5 Mon Sep 17 00:00:00 2001 From: Christina Holland Date: Tue, 27 May 2025 11:39:57 -0700 Subject: [PATCH 10/13] fix version --- .github/workflows/e2e-test.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 618639fa302..b309094a98a 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -53,16 +53,16 @@ jobs: echo "export const config = $PROJECT_CONFIG; export const testAccount = $TEST_ACCOUNT" > firebase-config.js - name: Poll npm until version to test is available for install run: | - echo "Polling npm for firebase@latest" + echo "Polling npm for firebase@11.8.1" node ./scripts/release/poll-npm-publish.js # run in root working-directory: '.' env: - VERSION: latest + VERSION: 11.8.1 - name: Yarn install run: | - echo "Installing firebase@latest" - yarn add firebase@latest + echo "Installing firebase@11.8.1" + yarn add firebase@11.8.1 yarn - name: Deploy "callTest" cloud function run: | @@ -93,7 +93,7 @@ jobs: # env: # WEBHOOK_URL: ${{ secrets.JSCORE_CHAT_WEBHOOK_URL }} # RELEASE_TRACKER_URL: ${{ secrets.RELEASE_TRACKER_URL }} - # VERSION_OR_TAG: latest + # VERSION_OR_TAG: 11.8.1 # # run in root # working-directory: '.' # - name: Tests failed From b2ac830a5e63e48cbf11af0b7f091ab2419d92f2 Mon Sep 17 00:00:00 2001 From: Christina Holland Date: Tue, 27 May 2025 11:46:40 -0700 Subject: [PATCH 11/13] revert chagnes in yml for testing --- .github/workflows/e2e-test.yml | 49 +++++++++++++++++----------------- 1 file changed, 24 insertions(+), 25 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index b309094a98a..a46dbdcaf92 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -16,7 +16,6 @@ name: E2E Smoke Tests # Allows REST trigger. Currently triggered by release-cli script during a staging run. on: - pull_request: repository_dispatch: types: [staging-tests,canary-tests] @@ -31,7 +30,7 @@ jobs: defaults: run: - # Run any command steps in the /e2e subdir + # Run any command steps in the /e2e/smoke-tests subdir working-directory: './e2e/smoke-tests' steps: @@ -53,15 +52,15 @@ jobs: echo "export const config = $PROJECT_CONFIG; export const testAccount = $TEST_ACCOUNT" > firebase-config.js - name: Poll npm until version to test is available for install run: | - echo "Polling npm for firebase@11.8.1" + echo "Polling npm for firebase@${{ github.event.client_payload.versionOrTag }}" node ./scripts/release/poll-npm-publish.js # run in root working-directory: '.' env: - VERSION: 11.8.1 + VERSION: ${{ github.event.client_payload.versionOrTag }} - name: Yarn install run: | - echo "Installing firebase@11.8.1" + echo "Installing firebase@${{ github.event.client_payload.versionOrTag }}" yarn add firebase@11.8.1 yarn - name: Deploy "callTest" cloud function @@ -85,23 +84,23 @@ jobs: env: APP_CHECK_DEBUG_TOKEN: ${{ secrets.APP_CHECK_DEBUG_TOKEN }} run: xvfb-run yarn test:compat - # - name: Tests succeeded - # if: success() - # run: node scripts/ci/notify-test-result.js success - # # we don't want THIS step erroring to trigger the failure notification - # continue-on-error: true - # env: - # WEBHOOK_URL: ${{ secrets.JSCORE_CHAT_WEBHOOK_URL }} - # RELEASE_TRACKER_URL: ${{ secrets.RELEASE_TRACKER_URL }} - # VERSION_OR_TAG: 11.8.1 - # # run in root - # working-directory: '.' - # - name: Tests failed - # if: failure() - # run: node scripts/ci/notify-test-result.js fail - # env: - # WEBHOOK_URL: ${{ secrets.JSCORE_CHAT_WEBHOOK_URL }} - # RELEASE_TRACKER_URL: ${{ secrets.RELEASE_TRACKER_URL }} - # VERSION_OR_TAG: ${{ github.event.client_payload.versionOrTag }} - # # run in root - # working-directory: '.' + - name: Tests succeeded + if: success() + run: node scripts/ci/notify-test-result.js success + # we don't want THIS step erroring to trigger the failure notification + continue-on-error: true + env: + WEBHOOK_URL: ${{ secrets.JSCORE_CHAT_WEBHOOK_URL }} + RELEASE_TRACKER_URL: ${{ secrets.RELEASE_TRACKER_URL }} + VERSION_OR_TAG: ${{ github.event.client_payload.versionOrTag }} + # run in root + working-directory: '.' + - name: Tests failed + if: failure() + run: node scripts/ci/notify-test-result.js fail + env: + WEBHOOK_URL: ${{ secrets.JSCORE_CHAT_WEBHOOK_URL }} + RELEASE_TRACKER_URL: ${{ secrets.RELEASE_TRACKER_URL }} + VERSION_OR_TAG: ${{ github.event.client_payload.versionOrTag }} + # run in root + working-directory: '.' From 99e35d67e19c3e80ecfa1251d1db0e19f7a522ab Mon Sep 17 00:00:00 2001 From: Christina Holland Date: Fri, 30 May 2025 11:33:12 -0700 Subject: [PATCH 12/13] address comments --- .github/workflows/e2e-test.yml | 2 +- e2e/README.md | 2 +- e2e/smoke-tests/sample-apps/compat.js | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index a46dbdcaf92..fbf43beada1 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -61,7 +61,7 @@ jobs: - name: Yarn install run: | echo "Installing firebase@${{ github.event.client_payload.versionOrTag }}" - yarn add firebase@11.8.1 + yarn add firebase@${{ github.event.client_payload.versionOrTag }} yarn - name: Deploy "callTest" cloud function run: | diff --git a/e2e/README.md b/e2e/README.md index 042c134b808..25223edb371 100644 --- a/e2e/README.md +++ b/e2e/README.md @@ -1,6 +1,6 @@ # E2E Tests -This directory is for Firebase E2E tests that are completely independent of the main SDK workspaces. Packages in here should +This directory is for Firebase E2E tests that are completely independent of the main SDK workspaces. Packages in here should: * Have a start trigger independent of the main CI PR/push triggers (e.g., manual trigger, repository_dispatch, from an external runner like Kokoro, etc.) diff --git a/e2e/smoke-tests/sample-apps/compat.js b/e2e/smoke-tests/sample-apps/compat.js index 97387ac3d95..e77b7d087d0 100644 --- a/e2e/smoke-tests/sample-apps/compat.js +++ b/e2e/smoke-tests/sample-apps/compat.js @@ -82,7 +82,7 @@ async function authLogout() { * * Call a deployed function. * This cloud function must be deployed in this project first. See - * s/README.md for more info. + * e2e/smoke-test/README.md for more info. */ async function callFunctions() { console.log('[FUNCTIONS] start'); From 423d6b71fe9e19a613c51ea2a511ee3ea12e7919 Mon Sep 17 00:00:00 2001 From: Christina Holland Date: Fri, 30 May 2025 11:34:57 -0700 Subject: [PATCH 13/13] address comments --- e2e/smoke-tests/README.md | 2 +- e2e/template/README.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/e2e/smoke-tests/README.md b/e2e/smoke-tests/README.md index e9de541d0bb..eb72486e95e 100644 --- a/e2e/smoke-tests/README.md +++ b/e2e/smoke-tests/README.md @@ -15,7 +15,7 @@ Before running the tests, you will need: #### Project Config and Test User -Create a file named `firebase-config.js` in the top level of this `s` directory. The contents of the file should be: +Create a file named `firebase-config.js` in the top level of this `e2e/smoke-tests` directory. The contents of the file should be: ```javascript // A config for a project diff --git a/e2e/template/README.md b/e2e/template/README.md index 09b169b3e2f..ef2b2deb997 100644 --- a/e2e/template/README.md +++ b/e2e/template/README.md @@ -1,3 +1,3 @@ # E2E Test Package Template -This is a template for an E2E test package. It contains one dependency not used in the global monorepo workspace to confirm the dependencies in this directory do not affect the global workspace. \ No newline at end of file +This is a template for an E2E test package. It contains one small dependency (date-fns) not used in the global monorepo workspace to confirm the dependencies in this directory do not affect the global workspace. \ No newline at end of file