From 2a80136e8dce4aaf12edca04f0cb504fb75696c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matu=CC=81s=CC=8C=20Tomlein?= Date: Mon, 4 Nov 2024 15:21:10 +0100 Subject: [PATCH 01/16] Add @snowpow/react-native-tracker project --- .../rush/browser-approved-packages.json | 56 + common/config/rush/pnpm-lock.yaml | 5877 +++++++++++++---- common/config/rush/repo-state.json | 2 +- libraries/browser-tracker-core/package.json | 10 +- .../browser-plugin-ad-tracking/package.json | 10 +- .../package.json | 10 +- .../browser-plugin-client-hints/package.json | 10 +- plugins/browser-plugin-debugger/package.json | 10 +- .../package.json | 10 +- .../package.json | 10 +- .../package.json | 10 +- .../package.json | 10 +- .../browser-plugin-focalmeter/package.json | 10 +- .../browser-plugin-form-tracking/package.json | 10 +- .../browser-plugin-ga-cookies/package.json | 10 +- .../browser-plugin-geolocation/package.json | 10 +- .../package.json | 10 +- .../package.json | 10 +- plugins/browser-plugin-media/package.json | 10 +- .../browser-plugin-optimizely-x/package.json | 10 +- .../package.json | 10 +- .../package.json | 10 +- .../package.json | 10 +- .../browser-plugin-site-tracking/package.json | 10 +- .../package.json | 10 +- plugins/browser-plugin-timezone/package.json | 10 +- .../package.json | 10 +- .../browser-plugin-web-vitals/package.json | 10 +- .../package.json | 10 +- rush.json | 6 + trackers/browser-tracker/package.json | 10 +- trackers/javascript-tracker/package.json | 10 +- trackers/react-native-tracker/CHANGELOG.json | 5 + trackers/react-native-tracker/LICENSE | 29 + trackers/react-native-tracker/README.md | 86 + .../react-native-tracker/api-extractor.json | 361 + trackers/react-native-tracker/babel.config.js | 5 + trackers/react-native-tracker/jest.config.js | 4 + trackers/react-native-tracker/package.json | 60 + .../react-native-tracker/rollup.config.js | 33 + .../async-storage.js | 2 + .../react-native-tracker/src/event_store.ts | 55 + trackers/react-native-tracker/src/events.ts | 55 + trackers/react-native-tracker/src/index.ts | 6 + trackers/react-native-tracker/src/subject.ts | 87 + trackers/react-native-tracker/src/tracker.ts | 54 + trackers/react-native-tracker/src/types.ts | 628 ++ .../test/event_store.test.ts | 54 + .../react-native-tracker/test/events.test.ts | 7 + .../react-native-tracker/test/subject.test.ts | 4 + .../react-native-tracker/test/tracker.test.ts | 7 + trackers/react-native-tracker/tsconfig.json | 23 + 52 files changed, 6400 insertions(+), 1386 deletions(-) create mode 100644 trackers/react-native-tracker/CHANGELOG.json create mode 100644 trackers/react-native-tracker/LICENSE create mode 100644 trackers/react-native-tracker/README.md create mode 100644 trackers/react-native-tracker/api-extractor.json create mode 100644 trackers/react-native-tracker/babel.config.js create mode 100644 trackers/react-native-tracker/jest.config.js create mode 100644 trackers/react-native-tracker/package.json create mode 100644 trackers/react-native-tracker/rollup.config.js create mode 100644 trackers/react-native-tracker/src/__mocks__/@react-native-async-storage/async-storage.js create mode 100644 trackers/react-native-tracker/src/event_store.ts create mode 100644 trackers/react-native-tracker/src/events.ts create mode 100644 trackers/react-native-tracker/src/index.ts create mode 100644 trackers/react-native-tracker/src/subject.ts create mode 100644 trackers/react-native-tracker/src/tracker.ts create mode 100755 trackers/react-native-tracker/src/types.ts create mode 100644 trackers/react-native-tracker/test/event_store.test.ts create mode 100644 trackers/react-native-tracker/test/events.test.ts create mode 100644 trackers/react-native-tracker/test/subject.test.ts create mode 100644 trackers/react-native-tracker/test/tracker.test.ts create mode 100644 trackers/react-native-tracker/tsconfig.json diff --git a/common/config/rush/browser-approved-packages.json b/common/config/rush/browser-approved-packages.json index 60f7e3426..801ffb1e3 100644 --- a/common/config/rush/browser-approved-packages.json +++ b/common/config/rush/browser-approved-packages.json @@ -6,6 +6,18 @@ "name": "@ampproject/rollup-plugin-closure-compiler", "allowedCategories": [ "libraries", "plugins", "trackers" ] }, + { + "name": "@react-native-async-storage/async-storage", + "allowedCategories": [ "trackers" ] + }, + { + "name": "@react-native/babel-preset", + "allowedCategories": [ "trackers" ] + }, + { + "name": "@react-native/eslint-config", + "allowedCategories": [ "trackers" ] + }, { "name": "@rollup/plugin-alias", "allowedCategories": [ "trackers" ] @@ -186,6 +198,10 @@ "name": "@types/randomcolor", "allowedCategories": [ "plugins" ] }, + { + "name": "@types/react", + "allowedCategories": [ "trackers" ] + }, { "name": "@types/sha1", "allowedCategories": [ "libraries" ] @@ -282,6 +298,18 @@ "name": "eslint-plugin-ava", "allowedCategories": [ "trackers" ] }, + { + "name": "expo-crypto", + "allowedCategories": [ "trackers" ] + }, + { + "name": "expo-modules-core", + "allowedCategories": [ "trackers" ] + }, + { + "name": "expo-standard-web-crypto", + "allowedCategories": [ "trackers" ] + }, { "name": "got", "allowedCategories": [ "trackers" ] @@ -290,6 +318,10 @@ "name": "jest", "allowedCategories": [ "libraries", "plugins", "trackers" ] }, + { + "name": "jest-config", + "allowedCategories": [ "trackers" ] + }, { "name": "jest-environment-jsdom", "allowedCategories": [ "libraries", "plugins", "trackers" ] @@ -298,6 +330,18 @@ "name": "jest-environment-jsdom-global", "allowedCategories": [ "libraries", "plugins", "trackers" ] }, + { + "name": "jest-environment-node", + "allowedCategories": [ "trackers" ] + }, + { + "name": "jest-expo", + "allowedCategories": [ "trackers" ] + }, + { + "name": "jest-react-native", + "allowedCategories": [ "trackers" ] + }, { "name": "jest-standard-reporter", "allowedCategories": [ "libraries", "plugins", "trackers" ] @@ -330,6 +374,18 @@ "name": "randomcolor", "allowedCategories": [ "plugins" ] }, + { + "name": "react", + "allowedCategories": [ "trackers" ] + }, + { + "name": "react-native", + "allowedCategories": [ "trackers" ] + }, + { + "name": "react-native-builder-bob", + "allowedCategories": [ "trackers" ] + }, { "name": "rollup", "allowedCategories": [ "libraries", "plugins", "trackers" ] diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index e7b0a4c7f..d07fa8857 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -38,8 +38,8 @@ importers: specifier: ~9.3.1 version: 9.3.4 '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -59,14 +59,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -84,10 +84,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -151,7 +151,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-node: specifier: ~10.9.1 version: 10.9.2(@types/node@14.6.4)(typescript@4.6.4) @@ -181,8 +181,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -199,14 +199,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -227,10 +227,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -257,8 +257,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -275,14 +275,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -303,10 +303,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -333,8 +333,8 @@ importers: specifier: workspace:* version: link:../../libraries/tracker-core '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -348,14 +348,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -373,10 +373,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -406,8 +406,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -424,14 +424,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -449,10 +449,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -479,8 +479,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -497,14 +497,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -525,10 +525,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -555,8 +555,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -573,14 +573,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -601,10 +601,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -631,8 +631,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -649,14 +649,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -677,10 +677,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -707,8 +707,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -722,14 +722,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -747,10 +747,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -777,8 +777,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -792,14 +792,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -817,10 +817,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -847,8 +847,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -862,14 +862,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -887,10 +887,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -917,8 +917,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -932,14 +932,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -957,10 +957,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -987,8 +987,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -1002,14 +1002,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1027,10 +1027,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1057,8 +1057,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -1075,14 +1075,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1103,10 +1103,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1136,8 +1136,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -1154,14 +1154,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1179,10 +1179,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1215,8 +1215,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -1233,14 +1233,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1258,10 +1258,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1288,8 +1288,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -1303,14 +1303,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1328,10 +1328,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1358,8 +1358,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -1373,14 +1373,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1398,10 +1398,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1428,8 +1428,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -1443,14 +1443,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1468,10 +1468,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1498,8 +1498,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -1513,14 +1513,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1538,10 +1538,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1568,8 +1568,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -1586,14 +1586,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1614,10 +1614,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1644,8 +1644,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -1662,14 +1662,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1690,10 +1690,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1723,8 +1723,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -1741,14 +1741,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1769,10 +1769,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1805,8 +1805,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -1823,14 +1823,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1848,10 +1848,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1881,8 +1881,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -1896,14 +1896,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1921,10 +1921,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1957,8 +1957,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -1978,14 +1978,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -2003,10 +2003,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -2033,8 +2033,8 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -2051,14 +2051,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -2079,10 +2079,10 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -2196,8 +2196,8 @@ importers: specifier: ~3.3.5 version: 3.3.31 '@types/jest': - specifier: ~27.4.1 - version: 27.4.1 + specifier: ~29.5.14 + version: 29.5.14 '@types/jsdom': specifier: ~16.2.14 version: 16.2.15 @@ -2247,14 +2247,14 @@ importers: specifier: ~3.3.1 version: 3.3.5 jest: - specifier: ~27.5.1 - version: 27.5.1(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) + specifier: ~29.7.0 + version: 29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~27.5.1 - version: 27.5.1 + specifier: ~29.7.0 + version: 29.7.0 jest-environment-jsdom-global: - specifier: ~3.0.0 - version: 3.0.0(jest-environment-jsdom@27.5.1) + specifier: ~4.0.0 + version: 4.0.0(jest-environment-jsdom@29.7.0) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -2284,13 +2284,13 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) saucelabs: specifier: ~7.5.0 version: 7.5.0 ts-jest: - specifier: ~27.1.3 - version: 27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)))(typescript@4.6.4) ts-node: specifier: ~10.9.1 version: 10.9.2(@types/node@14.6.4)(typescript@4.6.4) @@ -2348,7 +2348,7 @@ importers: version: 2.6.1(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-node: specifier: ~10.9.1 version: 10.9.2(@types/node@14.6.4)(typescript@4.6.4) @@ -2356,6 +2356,67 @@ importers: specifier: ~4.6.2 version: 4.6.4 + ../../trackers/react-native-tracker: + dependencies: + '@react-native-async-storage/async-storage': + specifier: ~2.0.0 + version: 2.0.0(react-native@0.74.5(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0)) + '@snowplow/tracker-core': + specifier: workspace:* + version: link:../../libraries/tracker-core + tslib: + specifier: ^2.3.1 + version: 2.7.0 + devDependencies: + '@react-native/babel-preset': + specifier: ~0.76.1 + version: 0.76.1 + '@react-native/eslint-config': + specifier: ^0.73.1 + version: 0.73.2(eslint@8.11.0)(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + '@rollup/plugin-json': + specifier: ~4.1.0 + version: 4.1.0(rollup@2.70.2) + '@types/jest': + specifier: ~29.5.14 + version: 29.5.14 + '@types/react': + specifier: ^18.2.44 + version: 18.3.12 + '@typescript-eslint/eslint-plugin': + specifier: ~5.15.0 + version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) + '@typescript-eslint/parser': + specifier: ~5.15.0 + version: 5.15.0(eslint@8.11.0)(typescript@4.6.4) + eslint: + specifier: ~8.11.0 + version: 8.11.0 + jest: + specifier: ~29.7.0 + version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + react: + specifier: 18.2.0 + version: 18.2.0 + react-native: + specifier: 0.74.5 + version: 0.74.5(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0) + rollup: + specifier: ~2.70.1 + version: 2.70.2 + rollup-plugin-license: + specifier: ~2.6.1 + version: 2.6.1(rollup@2.70.2) + rollup-plugin-ts: + specifier: ~2.0.5 + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + ts-jest: + specifier: ~29.2.5 + version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + typescript: + specifier: ~4.6.2 + version: 4.6.4 + packages: '@ampproject/remapping@0.2.0': @@ -2380,50 +2441,138 @@ packages: resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==} engines: {node: '>=6.9.0'} + '@babel/code-frame@7.26.2': + resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} + engines: {node: '>=6.9.0'} + '@babel/compat-data@7.25.4': resolution: {integrity: sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ==} engines: {node: '>=6.9.0'} + '@babel/compat-data@7.26.2': + resolution: {integrity: sha512-Z0WgzSEa+aUcdiJuCIqgujCshpMWgUpgOxXotrYPSA53hA3qopNaqcJpyr0hVb1FeWdnqFA35/fUtXgBK8srQg==} + engines: {node: '>=6.9.0'} + '@babel/core@7.25.2': resolution: {integrity: sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==} engines: {node: '>=6.9.0'} + '@babel/eslint-parser@7.25.9': + resolution: {integrity: sha512-5UXfgpK0j0Xr/xIdgdLEhOFxaDZ0bRPWJJchRpqOSur/3rZoPbqqki5mm0p4NE2cs28krBEiSM2MB7//afRSQQ==} + engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0} + peerDependencies: + '@babel/core': ^7.11.0 + eslint: ^7.5.0 || ^8.0.0 || ^9.0.0 + '@babel/generator@7.25.6': resolution: {integrity: sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==} engines: {node: '>=6.9.0'} + '@babel/generator@7.26.2': + resolution: {integrity: sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-annotate-as-pure@7.25.9': + resolution: {integrity: sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==} + engines: {node: '>=6.9.0'} + '@babel/helper-compilation-targets@7.25.2': resolution: {integrity: sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==} engines: {node: '>=6.9.0'} - '@babel/helper-module-imports@7.24.7': - resolution: {integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==} + '@babel/helper-compilation-targets@7.25.9': + resolution: {integrity: sha512-j9Db8Suy6yV/VHa4qzrj9yZfZxhLWQdVnRlXxmKLYlhWUVB1sB2G5sxuWYXk/whHD9iW76PmNzxZ4UCnTQTVEQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-create-class-features-plugin@7.25.9': + resolution: {integrity: sha512-UTZQMvt0d/rSz6KI+qdu7GQze5TIajwTS++GUozlw8VBJDEOAqSXwm1WvmYEZwqdqSGQshRocPDqrt4HBZB3fQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-create-regexp-features-plugin@7.25.9': + resolution: {integrity: sha512-ORPNZ3h6ZRkOyAa/SaHU+XsLZr0UQzRwuDQ0cczIA17nAzZ+85G5cVkOJIj7QavLZGSe8QXUmNFxSZzjcZF9bw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-define-polyfill-provider@0.6.2': + resolution: {integrity: sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + + '@babel/helper-environment-visitor@7.24.7': + resolution: {integrity: sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-member-expression-to-functions@7.25.9': + resolution: {integrity: sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==} engines: {node: '>=6.9.0'} - '@babel/helper-module-transforms@7.25.2': - resolution: {integrity: sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==} + '@babel/helper-module-imports@7.25.9': + resolution: {integrity: sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-transforms@7.26.0': + resolution: {integrity: sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 + '@babel/helper-optimise-call-expression@7.25.9': + resolution: {integrity: sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==} + engines: {node: '>=6.9.0'} + '@babel/helper-plugin-utils@7.24.8': resolution: {integrity: sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==} engines: {node: '>=6.9.0'} - '@babel/helper-simple-access@7.24.7': - resolution: {integrity: sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==} + '@babel/helper-plugin-utils@7.25.9': + resolution: {integrity: sha512-kSMlyUVdWe25rEsRGviIgOWnoT/nfABVWlqt9N19/dIPWViAOW2s9wznP5tURbs/IDuNk4gPy3YdYRgH3uxhBw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-remap-async-to-generator@7.25.9': + resolution: {integrity: sha512-IZtukuUeBbhgOcaW2s06OXTzVNJR0ybm4W5xC1opWFFJMZbwRj5LCk+ByYH7WdZPZTt8KnFwA8pvjN2yqcPlgw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-replace-supers@7.25.9': + resolution: {integrity: sha512-IiDqTOTBQy0sWyeXyGSC5TBJpGFXBkRynjBeXsvbhQFKj2viwJC76Epz35YLU1fpe/Am6Vppb7W7zM4fPQzLsQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-simple-access@7.25.9': + resolution: {integrity: sha512-c6WHXuiaRsJTyHYLJV75t9IqsmTbItYfdj99PnzYGQZkYKvan5/2jKJ7gu31J3/BJ/A18grImSPModuyG/Eo0Q==} + engines: {node: '>=6.9.0'} + + '@babel/helper-skip-transparent-expression-wrappers@7.25.9': + resolution: {integrity: sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==} engines: {node: '>=6.9.0'} '@babel/helper-string-parser@7.24.8': resolution: {integrity: sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==} engines: {node: '>=6.9.0'} + '@babel/helper-string-parser@7.25.9': + resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==} + engines: {node: '>=6.9.0'} + '@babel/helper-validator-identifier@7.24.7': resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-option@7.24.8': - resolution: {integrity: sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==} + '@babel/helper-validator-identifier@7.25.9': + resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-option@7.25.9': + resolution: {integrity: sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-wrap-function@7.25.9': + resolution: {integrity: sha512-ETzz9UTjQSTmw39GboatdymDq4XIQbR8ySgVrylRhPOFpsd+JrKHIuF0de7GCWmem+T4uC5z7EZguod7Wj4A4g==} engines: {node: '>=6.9.0'} '@babel/helpers@7.25.6': @@ -2439,6 +2588,73 @@ packages: engines: {node: '>=6.0.0'} hasBin: true + '@babel/parser@7.26.2': + resolution: {integrity: sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/plugin-proposal-async-generator-functions@7.20.7': + resolution: {integrity: sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==} + engines: {node: '>=6.9.0'} + deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-async-generator-functions instead. + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-proposal-class-properties@7.18.6': + resolution: {integrity: sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==} + engines: {node: '>=6.9.0'} + deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead. + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-proposal-export-default-from@7.25.9': + resolution: {integrity: sha512-ykqgwNfSnNOB+C8fV5X4mG3AVmvu+WVxcaU9xHHtBb7PCrPeweMmPjGsn8eMaeJg6SJuoUuZENeeSWaarWqonQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-proposal-logical-assignment-operators@7.20.7': + resolution: {integrity: sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==} + engines: {node: '>=6.9.0'} + deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-logical-assignment-operators instead. + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-proposal-nullish-coalescing-operator@7.18.6': + resolution: {integrity: sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==} + engines: {node: '>=6.9.0'} + deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-nullish-coalescing-operator instead. + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-proposal-numeric-separator@7.18.6': + resolution: {integrity: sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==} + engines: {node: '>=6.9.0'} + deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-numeric-separator instead. + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-proposal-object-rest-spread@7.20.7': + resolution: {integrity: sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==} + engines: {node: '>=6.9.0'} + deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead. + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-proposal-optional-catch-binding@7.18.6': + resolution: {integrity: sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==} + engines: {node: '>=6.9.0'} + deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-catch-binding instead. + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-proposal-optional-chaining@7.21.0': + resolution: {integrity: sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==} + engines: {node: '>=6.9.0'} + deprecated: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-chaining instead. + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-async-generators@7.8.4': resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} peerDependencies: @@ -2460,6 +2676,23 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-dynamic-import@7.8.3': + resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-export-default-from@7.25.9': + resolution: {integrity: sha512-9MhJ/SMTsVqsd69GyQg89lYR4o9T+oDGv5F6IsigxxqFVOyR/IflDLYP8WDI1l8fkhNGGktqkvL5qwNCtGEpgQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-syntax-flow@7.26.0': + resolution: {integrity: sha512-B+O2DnPc0iG+YXFqOxv2WNuNU97ToWjOomUQ78DouOENWUaM5sVrmet9mcomUGQFwpJd//gvUagXBSdzO1fRKg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-import-attributes@7.25.6': resolution: {integrity: sha512-sXaDXaJN9SNLymBdlWFA+bjzBhFD617ZaFiY13dGt7TVslVvVgA6fkZOP7Ki3IGElC45lwHdOTrCtKZGVAWeLQ==} engines: {node: '>=6.9.0'} @@ -2476,6 +2709,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-jsx@7.25.9': + resolution: {integrity: sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-logical-assignment-operators@7.10.4': resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} peerDependencies: @@ -2518,105 +2757,367 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-syntax-typescript@7.25.4': - resolution: {integrity: sha512-uMOCoHVU52BsSWxPOMVv5qKRdeSlPuImUCB2dlPuBSU+W2/ROE7/Zg8F2Kepbk+8yBa68LlRKxO+xgEVWorsDg==} + '@babel/plugin-syntax-typescript@7.25.9': + resolution: {integrity: sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/runtime@7.25.6': - resolution: {integrity: sha512-VBj9MYyDb9tuLq7yzqjgzt6Q+IBQLrGZfdjOekyEirZPHxXWoTSGUTMrpsfi58Up73d13NfYLv8HT9vmznjzhQ==} + '@babel/plugin-transform-arrow-functions@7.25.9': + resolution: {integrity: sha512-6jmooXYIwn9ca5/RylZADJ+EnSxVUS5sjeJ9UPk6RWRzXCmOJCy6dqItPJFpw2cuCangPK4OYr5uhGKcmrm5Qg==} engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 - '@babel/template@7.25.0': - resolution: {integrity: sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==} + '@babel/plugin-transform-async-generator-functions@7.25.9': + resolution: {integrity: sha512-RXV6QAzTBbhDMO9fWwOmwwTuYaiPbggWQ9INdZqAYeSHyG7FzQ+nOZaUUjNwKv9pV3aE4WFqFm1Hnbci5tBCAw==} engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 - '@babel/traverse@7.25.6': - resolution: {integrity: sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==} + '@babel/plugin-transform-async-to-generator@7.25.9': + resolution: {integrity: sha512-NT7Ejn7Z/LjUH0Gv5KsBCxh7BH3fbLTV0ptHvpeMvrt3cPThHfJfst9Wrb7S8EvJ7vRTFI7z+VAvFVEQn/m5zQ==} engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 - '@babel/types@7.25.6': - resolution: {integrity: sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==} + '@babel/plugin-transform-block-scoping@7.25.9': + resolution: {integrity: sha512-1F05O7AYjymAtqbsFETboN1NvBdcnzMerO+zlMyJBEz6WkMdejvGWw9p05iTSjC85RLlBseHHQpYaM4gzJkBGg==} engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 - '@balena/dockerignore@1.0.2': - resolution: {integrity: sha512-wMue2Sy4GAVTk6Ic4tJVcnfdau+gx2EnG7S+uAEe+TWJFqE4YoWN4/H8MSLj4eYJKxGg26lZwboEniNiNwZQ6Q==} + '@babel/plugin-transform-class-properties@7.25.9': + resolution: {integrity: sha512-bbMAII8GRSkcd0h0b4X+36GksxuheLFjP65ul9w6C3KgAamI3JqErNgSrosX6ZPj+Mpim5VvEbawXxJCyEUV3Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 - '@bcoe/v8-coverage@0.2.3': - resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} + '@babel/plugin-transform-classes@7.25.9': + resolution: {integrity: sha512-mD8APIXmseE7oZvZgGABDyM34GUmK45Um2TXiBUt7PnuAxrgoSVf123qUzPxEr/+/BHrRn5NMZCdE2m/1F8DGg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 - '@cspotcode/source-map-support@0.8.1': - resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} - engines: {node: '>=12'} + '@babel/plugin-transform-computed-properties@7.25.9': + resolution: {integrity: sha512-HnBegGqXZR12xbcTHlJ9HGxw1OniltT26J5YpfruGqtUHlz/xKf/G2ak9e+t0rVqrjXa9WOhvYPz1ERfMj23AA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 - '@eggjs/yauzl@2.11.0': - resolution: {integrity: sha512-Jq+k2fCZJ3i3HShb0nxLUiAgq5pwo8JTT1TrH22JoehZQ0Nm2dvByGIja1NYfNyuE4Tx5/Dns5nVsBN/mlC8yg==} + '@babel/plugin-transform-destructuring@7.25.9': + resolution: {integrity: sha512-WkCGb/3ZxXepmMiX101nnGiU+1CAdut8oHyEOHxkKuS1qKpU2SMXE2uSvfz8PBuLd49V6LEsbtyPhWC7fnkgvQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 - '@eslint/eslintrc@1.4.1': - resolution: {integrity: sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + '@babel/plugin-transform-flow-strip-types@7.25.9': + resolution: {integrity: sha512-/VVukELzPDdci7UUsWQaSkhgnjIWXnIyRpM02ldxaVoFK96c41So8JcKT3m0gYjyv7j5FNPGS5vfELrWalkbDA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 - '@gar/promisify@1.1.3': - resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==} + '@babel/plugin-transform-for-of@7.25.9': + resolution: {integrity: sha512-LqHxduHoaGELJl2uhImHwRQudhCM50pT46rIBNvtT/Oql3nqiS3wOwP+5ten7NpYSXrrVLgtZU3DZmPtWZo16A==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 - '@humanwhocodes/config-array@0.9.5': - resolution: {integrity: sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==} - engines: {node: '>=10.10.0'} - deprecated: Use @eslint/config-array instead + '@babel/plugin-transform-function-name@7.25.9': + resolution: {integrity: sha512-8lP+Yxjv14Vc5MuWBpJsoUCd3hD6V9DgBon2FVYL4jJgbnVQ9fTgYmonchzZJOVNgzEgbxp4OwAf6xz6M/14XA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 - '@humanwhocodes/object-schema@1.2.1': - resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} - deprecated: Use @eslint/object-schema instead + '@babel/plugin-transform-literals@7.25.9': + resolution: {integrity: sha512-9N7+2lFziW8W9pBl2TzaNht3+pgMIRP74zizeCSrtnSKVdUl8mAjjOP2OOVQAfZ881P2cNjDj1uAMEdeD50nuQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 - '@isaacs/cliui@8.0.2': - resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} - engines: {node: '>=12'} + '@babel/plugin-transform-logical-assignment-operators@7.25.9': + resolution: {integrity: sha512-wI4wRAzGko551Y8eVf6iOY9EouIDTtPb0ByZx+ktDGHwv6bHFimrgJM/2T021txPZ2s4c7bqvHbd+vXG6K948Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 - '@istanbuljs/load-nyc-config@1.1.0': - resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} - engines: {node: '>=8'} + '@babel/plugin-transform-modules-commonjs@7.25.9': + resolution: {integrity: sha512-dwh2Ol1jWwL2MgkCzUSOvfmKElqQcuswAZypBSUsScMXvgdT8Ekq5YA6TtqpTVWH+4903NmboMuH1o9i8Rxlyg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 - '@istanbuljs/schema@0.1.3': - resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} - engines: {node: '>=8'} + '@babel/plugin-transform-named-capturing-groups-regex@7.25.9': + resolution: {integrity: sha512-oqB6WHdKTGl3q/ItQhpLSnWWOpjUJLsOCLVyeFgeTktkBSCiurvPOsyt93gibI9CmuKvTUEtWmG5VhZD+5T/KA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 - '@jest/console@26.6.2': - resolution: {integrity: sha512-IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g==} - engines: {node: '>= 10.14.2'} + '@babel/plugin-transform-nullish-coalescing-operator@7.25.9': + resolution: {integrity: sha512-ENfftpLZw5EItALAD4WsY/KUWvhUlZndm5GC7G3evUsVeSJB6p0pBeLQUnRnBCBx7zV0RKQjR9kCuwrsIrjWog==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 - '@jest/console@27.5.1': - resolution: {integrity: sha512-kZ/tNpS3NXn0mlXXXPNuDZnb4c0oZ20r4K5eemM2k30ZC3G0T02nXUvyhf5YdbXWHPEJLc9qGLxEZ216MdL+Zg==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + '@babel/plugin-transform-numeric-separator@7.25.9': + resolution: {integrity: sha512-TlprrJ1GBZ3r6s96Yq8gEQv82s8/5HnCVHtEJScUj90thHQbwe+E5MLhi2bbNHBEJuzrvltXSru+BUxHDoog7Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 - '@jest/core@27.5.1': - resolution: {integrity: sha512-AK6/UTrvQD0Cd24NSqmIA6rKsu0tKIxfiCducZvqxYdmMisOYAsdItspT+fQDQYARPf8XgjAFZi0ogW2agH5nQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + '@babel/plugin-transform-object-rest-spread@7.25.9': + resolution: {integrity: sha512-fSaXafEE9CVHPweLYw4J0emp1t8zYTXyzN3UuG+lylqkvYd7RMrsOQ8TYx5RF231be0vqtFC6jnx3UmpJmKBYg==} + engines: {node: '>=6.9.0'} peerDependencies: - node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-optional-catch-binding@7.25.9': + resolution: {integrity: sha512-qM/6m6hQZzDcZF3onzIhZeDHDO43bkNNlOX0i8n3lR6zLbu0GN2d8qfM/IERJZYauhAHSLHy39NF0Ctdvcid7g==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-optional-chaining@7.25.9': + resolution: {integrity: sha512-6AvV0FsLULbpnXeBjrY4dmWF8F7gf8QnvTEoO/wX/5xm/xE1Xo8oPuD3MPS+KS9f9XBEAWN7X1aWr4z9HdOr7A==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-parameters@7.25.9': + resolution: {integrity: sha512-wzz6MKwpnshBAiRmn4jR8LYz/g8Ksg0o80XmwZDlordjwEk9SxBzTWC7F5ef1jhbrbOW2DJ5J6ayRukrJmnr0g==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-private-methods@7.25.9': + resolution: {integrity: sha512-D/JUozNpQLAPUVusvqMxyvjzllRaF8/nSrP1s2YGQT/W4LHK4xxsMcHjhOGTS01mp9Hda8nswb+FblLdJornQw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-private-property-in-object@7.25.9': + resolution: {integrity: sha512-Evf3kcMqzXA3xfYJmZ9Pg1OvKdtqsDMSWBDzZOPLvHiTt36E75jLDQo5w1gtRU95Q4E5PDttrTf25Fw8d/uWLw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-react-display-name@7.25.9': + resolution: {integrity: sha512-KJfMlYIUxQB1CJfO3e0+h0ZHWOTLCPP115Awhaz8U0Zpq36Gl/cXlpoyMRnUWlhNUBAzldnCiAZNvCDj7CrKxQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-react-jsx-self@7.25.9': + resolution: {integrity: sha512-y8quW6p0WHkEhmErnfe58r7x0A70uKphQm8Sp8cV7tjNQwK56sNVK0M73LK3WuYmsuyrftut4xAkjjgU0twaMg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-react-jsx-source@7.25.9': + resolution: {integrity: sha512-+iqjT8xmXhhYv4/uiYd8FNQsraMFZIfxVSqxxVSZP0WbbSAWvBXAul0m/zu+7Vv4O/3WtApy9pmaTMiumEZgfg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-react-jsx@7.25.9': + resolution: {integrity: sha512-s5XwpQYCqGerXl+Pu6VDL3x0j2d82eiV77UJ8a2mDHAW7j9SWRqQ2y1fNo1Z74CdcYipl5Z41zvjj4Nfzq36rw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-regenerator@7.25.9': + resolution: {integrity: sha512-vwDcDNsgMPDGP0nMqzahDWE5/MLcX8sv96+wfX7as7LoF/kr97Bo/7fI00lXY4wUXYfVmwIIyG80fGZ1uvt2qg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-runtime@7.25.9': + resolution: {integrity: sha512-nZp7GlEl+yULJrClz0SwHPqir3lc0zsPrDHQUcxGspSL7AKrexNSEfTbfqnDNJUO13bgKyfuOLMF8Xqtu8j3YQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-shorthand-properties@7.25.9': + resolution: {integrity: sha512-MUv6t0FhO5qHnS/W8XCbHmiRWOphNufpE1IVxhK5kuN3Td9FT1x4rx4K42s3RYdMXCXpfWkGSbCSd0Z64xA7Ng==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-spread@7.25.9': + resolution: {integrity: sha512-oNknIB0TbURU5pqJFVbOOFspVlrpVwo2H1+HUIsVDvp5VauGGDP1ZEvO8Nn5xyMEs3dakajOxlmkNW7kNgSm6A==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-sticky-regex@7.25.9': + resolution: {integrity: sha512-WqBUSgeVwucYDP9U/xNRQam7xV8W5Zf+6Eo7T2SRVUFlhRiMNFdFz58u0KZmCVVqs2i7SHgpRnAhzRNmKfi2uA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-typescript@7.25.9': + resolution: {integrity: sha512-7PbZQZP50tzv2KGGnhh82GSyMB01yKY9scIjf1a+GfZCtInOWqUH5+1EBU4t9fyR5Oykkkc9vFTs4OHrhHXljQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-unicode-regex@7.25.9': + resolution: {integrity: sha512-yoxstj7Rg9dlNn9UQxzk4fcNivwv4nUYz7fYXBaKxvw/lnmPuOm/ikoELygbYq68Bls3D/D+NBPHiLwZdZZ4HA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/preset-flow@7.25.9': + resolution: {integrity: sha512-EASHsAhE+SSlEzJ4bzfusnXSHiU+JfAYzj+jbw2vgQKgq5HrUr8qs+vgtiEL5dOH6sEweI+PNt2D7AqrDSHyqQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/preset-typescript@7.26.0': + resolution: {integrity: sha512-NMk1IGZ5I/oHhoXEElcm+xUnL/szL6xflkFZmoEU9xj1qSJXpiS7rsspYo92B4DRCDvZn2erT5LdsCeXAKNCkg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/register@7.25.9': + resolution: {integrity: sha512-8D43jXtGsYmEeDvm4MWHYUpWf8iiXgWYx3fW7E7Wb7Oe6FWqJPl5K6TuFW0dOwNZzEE5rjlaSJYH9JjrUKJszA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/runtime@7.25.6': + resolution: {integrity: sha512-VBj9MYyDb9tuLq7yzqjgzt6Q+IBQLrGZfdjOekyEirZPHxXWoTSGUTMrpsfi58Up73d13NfYLv8HT9vmznjzhQ==} + engines: {node: '>=6.9.0'} + + '@babel/template@7.25.0': + resolution: {integrity: sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==} + engines: {node: '>=6.9.0'} + + '@babel/template@7.25.9': + resolution: {integrity: sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==} + engines: {node: '>=6.9.0'} + + '@babel/traverse@7.25.6': + resolution: {integrity: sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==} + engines: {node: '>=6.9.0'} + + '@babel/traverse@7.25.9': + resolution: {integrity: sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==} + engines: {node: '>=6.9.0'} + + '@babel/types@7.25.6': + resolution: {integrity: sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==} + engines: {node: '>=6.9.0'} + + '@babel/types@7.26.0': + resolution: {integrity: sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==} + engines: {node: '>=6.9.0'} + + '@balena/dockerignore@1.0.2': + resolution: {integrity: sha512-wMue2Sy4GAVTk6Ic4tJVcnfdau+gx2EnG7S+uAEe+TWJFqE4YoWN4/H8MSLj4eYJKxGg26lZwboEniNiNwZQ6Q==} + + '@bcoe/v8-coverage@0.2.3': + resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} + + '@cspotcode/source-map-support@0.8.1': + resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} + engines: {node: '>=12'} + + '@eggjs/yauzl@2.11.0': + resolution: {integrity: sha512-Jq+k2fCZJ3i3HShb0nxLUiAgq5pwo8JTT1TrH22JoehZQ0Nm2dvByGIja1NYfNyuE4Tx5/Dns5nVsBN/mlC8yg==} + + '@eslint-community/eslint-utils@4.4.1': + resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + + '@eslint-community/regexpp@4.12.1': + resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + + '@eslint/eslintrc@1.4.1': + resolution: {integrity: sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + + '@gar/promisify@1.1.3': + resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==} + + '@hapi/hoek@9.3.0': + resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==} + + '@hapi/topo@5.1.0': + resolution: {integrity: sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==} + + '@humanwhocodes/config-array@0.9.5': + resolution: {integrity: sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==} + engines: {node: '>=10.10.0'} + deprecated: Use @eslint/config-array instead + + '@humanwhocodes/object-schema@1.2.1': + resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} + deprecated: Use @eslint/object-schema instead + + '@isaacs/cliui@8.0.2': + resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} + engines: {node: '>=12'} + + '@isaacs/ttlcache@1.4.1': + resolution: {integrity: sha512-RQgQ4uQ+pLbqXfOmieB91ejmLwvSgv9nLx6sT6sD83s7umBypgg+OIBOBbEUiJXrfpnp9j0mRhYYdzp9uqq3lA==} + engines: {node: '>=12'} + + '@istanbuljs/load-nyc-config@1.1.0': + resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} + engines: {node: '>=8'} + + '@istanbuljs/schema@0.1.3': + resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} + engines: {node: '>=8'} + + '@jest/console@26.6.2': + resolution: {integrity: sha512-IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g==} + engines: {node: '>= 10.14.2'} + + '@jest/console@29.7.0': + resolution: {integrity: sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/core@29.7.0': + resolution: {integrity: sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: node-notifier: optional: true - '@jest/environment@27.5.1': - resolution: {integrity: sha512-/WQjhPJe3/ghaol/4Bq480JKXV/Rfw8nQdN7f41fM8VDHLcxKXou6QyXAh3EFr9/bVG3x74z1NWDkP87EiY8gA==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + '@jest/create-cache-key-function@29.7.0': + resolution: {integrity: sha512-4QqS3LY5PBmTRHj9sAg1HLoPzqAI0uOX6wI/TRqHIcOxlFidy6YEmCQJk6FSZjNLGCeubDMfmkWL+qaLKhSGQA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/environment@29.7.0': + resolution: {integrity: sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} '@jest/expect-utils@29.7.0': resolution: {integrity: sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - '@jest/fake-timers@27.5.1': - resolution: {integrity: sha512-/aPowoolwa07k7/oM3aASneNeBGCmGQsc3ugN4u6s4C/+s5M64MFo/+djTdiwcbQlRfFElGuDXWzaWj6QgKObQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + '@jest/expect@29.7.0': + resolution: {integrity: sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - '@jest/globals@27.5.1': - resolution: {integrity: sha512-ZEJNB41OBQQgGzgyInAv0UUfDDj3upmHydjieSxFvTRuZElrx7tXg/uVQ5hYVEwiXs3+aMsAeEc9X7xiSKCm4Q==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + '@jest/fake-timers@29.7.0': + resolution: {integrity: sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - '@jest/reporters@27.5.1': - resolution: {integrity: sha512-cPXh9hWIlVJMQkVk84aIvXuBB4uQQmFqZiacloFuGiP3ah1sbCxCosidXFDfqG8+6fO1oR2dTJTlsOy4VFmUfw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + '@jest/globals@29.7.0': + resolution: {integrity: sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jest/reporters@29.7.0': + resolution: {integrity: sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: @@ -2627,30 +3128,26 @@ packages: resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - '@jest/source-map@27.5.1': - resolution: {integrity: sha512-y9NIHUYF3PJRlHk98NdC/N1gl88BL08aQQgu4k4ZopQkCw9t9cV8mtl3TV8b/YCB8XaVTFrmUTAJvjsntDireg==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + '@jest/source-map@29.6.3': + resolution: {integrity: sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - '@jest/test-result@27.5.1': - resolution: {integrity: sha512-EW35l2RYFUcUQxFJz5Cv5MTOxlJIQs4I7gxzi2zVU7PJhOwfYq1MdC5nhSmYjX1gmMmLPvB3sIaC+BkcHRBfag==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + '@jest/test-result@29.7.0': + resolution: {integrity: sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - '@jest/test-sequencer@27.5.1': - resolution: {integrity: sha512-LCheJF7WB2+9JuCS7VB/EmGIdQuhtqjRNI9A43idHv3E4KltCTsPsLxvdaubFHSYwY/fNjMWjl6vNRhDiN7vpQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + '@jest/test-sequencer@29.7.0': + resolution: {integrity: sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - '@jest/transform@27.5.1': - resolution: {integrity: sha512-ipON6WtYgl/1329g5AIJVbUuEh0wZVbdpGwC99Jw4LwuoBNS95MVphU6zOeD9pDkon+LLbFL7lOQRapbB8SCHw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + '@jest/transform@29.7.0': + resolution: {integrity: sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} '@jest/types@26.6.2': resolution: {integrity: sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==} engines: {node: '>= 10.14.2'} - '@jest/types@27.5.1': - resolution: {integrity: sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - '@jest/types@29.6.3': resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -2690,6 +3187,9 @@ packages: '@mdn/browser-compat-data@4.2.1': resolution: {integrity: sha512-EWUguj2kd7ldmrF9F+vI5hUOralPd+sdsUnYbRy33vZTuZkduC1shE9TtEMEjAQwyfyMb4ole5KtjF8MsnQOlA==} + '@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1': + resolution: {integrity: sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==} + '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} @@ -2755,6 +3255,134 @@ packages: engines: {node: '>=16.3.0'} hasBin: true + '@react-native-async-storage/async-storage@2.0.0': + resolution: {integrity: sha512-af6H9JjfL6G/PktBfUivvexoiFKQTJGQCtSWxMdivLzNIY94mu9DdiY0JqCSg/LyPCLGKhHPUlRQhNvpu3/KVA==} + peerDependencies: + react-native: ^0.0.0-0 || >=0.65 <1.0 + + '@react-native-community/cli-clean@13.6.9': + resolution: {integrity: sha512-7Dj5+4p9JggxuVNOjPbduZBAP1SUgNhLKVw5noBUzT/3ZpUZkDM+RCSwyoyg8xKWoE4OrdUAXwAFlMcFDPKykA==} + + '@react-native-community/cli-config@13.6.9': + resolution: {integrity: sha512-rFfVBcNojcMm+KKHE/xqpqXg8HoKl4EC7bFHUrahMJ+y/tZll55+oX/PGG37rzB8QzP2UbMQ19DYQKC1G7kXeg==} + + '@react-native-community/cli-debugger-ui@13.6.9': + resolution: {integrity: sha512-TkN7IdFmGPPvTpAo3nCAH9uwGCPxWBEAwpqEZDrq0NWllI7Tdie8vDpGdrcuCcKalmhq6OYnkXzeBah7O1Ztpw==} + + '@react-native-community/cli-doctor@13.6.9': + resolution: {integrity: sha512-5quFaLdWFQB+677GXh5dGU9I5eg2z6Vg4jOX9vKnc9IffwyIFAyJfCZHrxLSRPDGNXD7biDQUdoezXYGwb6P/A==} + + '@react-native-community/cli-hermes@13.6.9': + resolution: {integrity: sha512-GvwiwgvFw4Ws+krg2+gYj8sR3g05evmNjAHkKIKMkDTJjZ8EdyxbkifRUs1ZCq3TMZy2oeblZBXCJVOH4W7ZbA==} + + '@react-native-community/cli-platform-android@13.6.9': + resolution: {integrity: sha512-9KsYGdr08QhdvT3Ht7e8phQB3gDX9Fs427NJe0xnoBh+PDPTI2BD5ks5ttsH8CzEw8/P6H8tJCHq6hf2nxd9cw==} + + '@react-native-community/cli-platform-apple@13.6.9': + resolution: {integrity: sha512-KoeIHfhxMhKXZPXmhQdl6EE+jGKWwoO9jUVWgBvibpVmsNjo7woaG/tfJMEWfWF3najX1EkQAoJWpCDBMYWtlA==} + + '@react-native-community/cli-platform-ios@13.6.9': + resolution: {integrity: sha512-CiUcHlGs8vE0CAB4oi1f+dzniqfGuhWPNrDvae2nm8dewlahTBwIcK5CawyGezjcJoeQhjBflh9vloska+nlnw==} + + '@react-native-community/cli-server-api@13.6.9': + resolution: {integrity: sha512-W8FSlCPWymO+tlQfM3E0JmM8Oei5HZsIk5S0COOl0MRi8h0NmHI4WSTF2GCfbFZkcr2VI/fRsocoN8Au4EZAug==} + + '@react-native-community/cli-tools@13.6.9': + resolution: {integrity: sha512-OXaSjoN0mZVw3nrAwcY1PC0uMfyTd9fz7Cy06dh+EJc+h0wikABsVRzV8cIOPrVV+PPEEXE0DBrH20T2puZzgQ==} + + '@react-native-community/cli-types@13.6.9': + resolution: {integrity: sha512-RLxDppvRxXfs3hxceW/mShi+6o5yS+kFPnPqZTaMKKR5aSg7LwDpLQW4K2D22irEG8e6RKDkZUeH9aL3vO2O0w==} + + '@react-native-community/cli@13.6.9': + resolution: {integrity: sha512-hFJL4cgLPxncJJd/epQ4dHnMg5Jy/7Q56jFvA3MHViuKpzzfTCJCB+pGY54maZbtym53UJON9WTGpM3S81UfjQ==} + engines: {node: '>=18'} + hasBin: true + + '@react-native/assets-registry@0.74.87': + resolution: {integrity: sha512-1XmRhqQchN+pXPKEKYdpJlwESxVomJOxtEnIkbo7GAlaN2sym84fHEGDXAjLilih5GVPpcpSmFzTy8jx3LtaFg==} + engines: {node: '>=18'} + + '@react-native/babel-plugin-codegen@0.74.87': + resolution: {integrity: sha512-+vJYpMnENFrwtgvDfUj+CtVJRJuUnzAUYT0/Pb68Sq9RfcZ5xdcCuUgyf7JO+akW2VTBoJY427wkcxU30qrWWw==} + engines: {node: '>=18'} + + '@react-native/babel-plugin-codegen@0.76.1': + resolution: {integrity: sha512-V9bGLyEdAF39nvn4L5gaJcPX1SvCHPJhaT3qfpVGvCnl7WPhdRyCq++WsN8HXlpo6WOAf6//oruLnLdl3RNM4Q==} + engines: {node: '>=18'} + + '@react-native/babel-preset@0.74.87': + resolution: {integrity: sha512-hyKpfqzN2nxZmYYJ0tQIHG99FQO0OWXp/gVggAfEUgiT+yNKas1C60LuofUsK7cd+2o9jrpqgqW4WzEDZoBlTg==} + engines: {node: '>=18'} + + '@react-native/babel-preset@0.76.1': + resolution: {integrity: sha512-b6YRmA13CmVuTQKHRen/Q0glHwmZFZoEDs+MJ1NL0UNHq9V5ytvdwTW1ntkmjtXuTnPMzkwYvumJBN9UTZjkBA==} + engines: {node: '>=18'} + + '@react-native/codegen@0.74.87': + resolution: {integrity: sha512-GMSYDiD+86zLKgMMgz9z0k6FxmRn+z6cimYZKkucW4soGbxWsbjUAZoZ56sJwt2FJ3XVRgXCrnOCgXoH/Bkhcg==} + engines: {node: '>=18'} + peerDependencies: + '@babel/preset-env': ^7.1.6 + + '@react-native/codegen@0.76.1': + resolution: {integrity: sha512-7lE0hk2qq27wVeK5eF654v7XsKoRa7ficrfSwIDEDZ1aLB2xgUzLrsq+glSAP9EuzT6ycHhtD3QyqI+TqnlS/A==} + engines: {node: '>=18'} + peerDependencies: + '@babel/preset-env': ^7.1.6 + + '@react-native/community-cli-plugin@0.74.87': + resolution: {integrity: sha512-EgJG9lSr8x3X67dHQKQvU6EkO+3ksVlJHYIVv6U/AmW9dN80BEFxgYbSJ7icXS4wri7m4kHdgeq2PQ7/3vvrTQ==} + engines: {node: '>=18'} + + '@react-native/debugger-frontend@0.74.87': + resolution: {integrity: sha512-MN95DJLYTv4EqJc+9JajA3AJZSBYJz2QEJ3uWlHrOky2vKrbbRVaW1ityTmaZa2OXIvNc6CZwSRSE7xCoHbXhQ==} + engines: {node: '>=18'} + + '@react-native/dev-middleware@0.74.87': + resolution: {integrity: sha512-7TmZ3hTHwooYgIHqc/z87BMe1ryrIqAUi+AF7vsD+EHCGxHFdMjSpf1BZ2SUPXuLnF2cTiTfV2RwhbPzx0tYIA==} + engines: {node: '>=18'} + + '@react-native/eslint-config@0.73.2': + resolution: {integrity: sha512-YzMfes19loTfbrkbYNAfHBDXX4oRBzc5wnvHs4h2GIHUj6YKs5ZK5lldqSrBJCdZAI3nuaO9Qj+t5JRwou571w==} + engines: {node: '>=18'} + peerDependencies: + eslint: '>=8' + prettier: '>=2' + + '@react-native/eslint-plugin@0.73.1': + resolution: {integrity: sha512-8BNMFE8CAI7JLWLOs3u33wcwcJ821LYs5g53Xyx9GhSg0h8AygTwDrwmYb/pp04FkCNCPjKPBoaYRthQZmxgwA==} + engines: {node: '>=18'} + + '@react-native/gradle-plugin@0.74.87': + resolution: {integrity: sha512-T+VX0N1qP+U9V4oAtn7FTX7pfsoVkd1ocyw9swYXgJqU2fK7hC9famW7b3s3ZiufPGPr1VPJe2TVGtSopBjL6A==} + engines: {node: '>=18'} + + '@react-native/js-polyfills@0.74.87': + resolution: {integrity: sha512-M5Evdn76CuVEF0GsaXiGi95CBZ4IWubHqwXxV9vG9CC9kq0PSkoM2Pn7Lx7dgyp4vT7ccJ8a3IwHbe+5KJRnpw==} + engines: {node: '>=18'} + + '@react-native/metro-babel-transformer@0.74.87': + resolution: {integrity: sha512-UsJCO24sNax2NSPBmV1zLEVVNkS88kcgAiYrZHtYSwSjpl4WZ656tIeedBfiySdJ94Hr3kQmBYLipV5zk0NI1A==} + engines: {node: '>=18'} + + '@react-native/normalize-colors@0.74.87': + resolution: {integrity: sha512-Xh7Nyk/MPefkb0Itl5Z+3oOobeG9lfLb7ZOY2DKpFnoCE1TzBmib9vMNdFaLdSxLIP+Ec6icgKtdzYg8QUPYzA==} + + '@react-native/virtualized-lists@0.74.87': + resolution: {integrity: sha512-lsGxoFMb0lyK/MiplNKJpD+A1EoEUumkLrCjH4Ht+ZlG8S0BfCxmskLZ6qXn3BiDSkLjfjI/qyZ3pnxNBvkXpQ==} + engines: {node: '>=18'} + peerDependencies: + '@types/react': ^18.2.6 + react: '*' + react-native: '*' + peerDependenciesMeta: + '@types/react': + optional: true + + '@rnx-kit/chromium-edge-launcher@1.0.0': + resolution: {integrity: sha512-lzD84av1ZQhYUS+jsGqJiCMaJO2dn9u+RTT9n9q6D3SaKVwWqv+7AoRKqBu19bkwyE+iFRl1ymr40QS90jVFYg==} + engines: {node: '>=14.15'} + '@rollup/plugin-alias@3.1.9': resolution: {integrity: sha512-QI5fsEvm9bDzt32k39wpOwZhVzRcL5ydcffUHMyLVaVaLeC70I8TJZ17F1z1eMoLu4E/UOcH9BWVkKpIKdrfiw==} engines: {node: '>=8.0.0'} @@ -2793,6 +3421,15 @@ packages: resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} engines: {node: '>= 8.0.0'} + '@sideway/address@4.1.5': + resolution: {integrity: sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==} + + '@sideway/formula@3.0.1': + resolution: {integrity: sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==} + + '@sideway/pinpoint@2.0.0': + resolution: {integrity: sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==} + '@sinclair/typebox@0.27.8': resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} @@ -2804,11 +3441,11 @@ packages: resolution: {integrity: sha512-TV7t8GKYaJWsn00tFDqBw8+Uqmr8A0fRU1tvTQhyZzGv0sJCGRQL3JGMI3ucuKo3XIZdUP+Lx7/gh2t3lewy7g==} engines: {node: '>=14.16'} - '@sinonjs/commons@1.8.6': - resolution: {integrity: sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==} + '@sinonjs/commons@3.0.1': + resolution: {integrity: sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==} - '@sinonjs/fake-timers@8.1.0': - resolution: {integrity: sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==} + '@sinonjs/fake-timers@10.3.0': + resolution: {integrity: sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==} '@szmarczak/http-timer@4.0.6': resolution: {integrity: sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==} @@ -2829,6 +3466,10 @@ packages: resolution: {integrity: sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==} engines: {node: '>= 6'} + '@tootallnate/once@2.0.0': + resolution: {integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==} + engines: {node: '>= 10'} + '@tootallnate/quickjs-emscripten@0.23.0': resolution: {integrity: sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==} @@ -2889,12 +3530,15 @@ packages: '@types/istanbul-reports@3.0.4': resolution: {integrity: sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==} - '@types/jest@27.4.1': - resolution: {integrity: sha512-23iPJADSmicDVrWk+HT58LMJtzLAnB2AgIzplQuq/bSrGaxCrlvRFjGbXmamnnk/mAmCdLStiGqggu28ocUyiw==} + '@types/jest@29.5.14': + resolution: {integrity: sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==} '@types/jsdom@16.2.15': resolution: {integrity: sha512-nwF87yjBKuX/roqGYerZZM0Nv1pZDMAT5YhOHYeM/72Fic+VEqJh4nyoqoapzJnW3pUlfxPY5FhgsJtM+dRnQQ==} + '@types/jsdom@20.0.1': + resolution: {integrity: sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==} + '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} @@ -2907,6 +3551,9 @@ packages: '@types/lodash@4.14.202': resolution: {integrity: sha512-OvlIYQK9tNneDlS0VN54LLd5uiPCBOp7gS5Z0f1mjoJYBrtStzgmJBxONW3U6OZqdtNzZPmn9BS/7WI7BFFcFQ==} + '@types/node-forge@1.3.11': + resolution: {integrity: sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==} + '@types/node@14.6.4': resolution: {integrity: sha512-Wk7nG1JSaMfMpoMJDKUsWYugliB2Vy55pdjLpmLixeyMi7HizW2I/9QoxsPCkXl3dO+ZOVqPumKaDUv5zJu2uQ==} @@ -2928,12 +3575,15 @@ packages: '@types/parse5@6.0.3': resolution: {integrity: sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==} - '@types/prettier@2.7.3': - resolution: {integrity: sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==} + '@types/prop-types@15.7.13': + resolution: {integrity: sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==} '@types/randomcolor@0.5.9': resolution: {integrity: sha512-k58cfpkK15AKn1m+oRd9nh5BnuiowhbyvBBdAzcddtARMr3xRzP0VlFaAKovSG6N6Knx08EicjPlOMzDejerrQ==} + '@types/react@18.3.12': + resolution: {integrity: sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==} + '@types/resolve@1.17.1': resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==} @@ -2982,9 +3632,6 @@ packages: '@types/yargs@15.0.19': resolution: {integrity: sha512-2XUaGVmyQjgyAZldf0D0c14vvo/yv0MhQBSTJcejMMaitsn3nxCB6TmH4G0ZQf+uxROOa9mpanoSm8h6SG/1ZA==} - '@types/yargs@16.0.9': - resolution: {integrity: sha512-tHhzvkFXZQeTECenFoRljLBYPZJ7jAVxqqtEI0qTLOmuultnFp4I9yKE17vTuhf7BkhCu7I4XuemPgikDVuYqA==} - '@types/yargs@17.0.33': resolution: {integrity: sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==} @@ -3005,6 +3652,17 @@ packages: typescript: optional: true + '@typescript-eslint/eslint-plugin@5.62.0': + resolution: {integrity: sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + '@typescript-eslint/parser': ^5.0.0 + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + '@typescript-eslint/parser@5.15.0': resolution: {integrity: sha512-NGAYP/+RDM2sVfmKiKOCgJYPstAO40vPAgACoWPO/+yoYKSgAXIFaBKsV8P0Cc7fwKgvj27SjRNX4L7f4/jCKQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -3015,10 +3673,24 @@ packages: typescript: optional: true - '@typescript-eslint/scope-manager@5.15.0': + '@typescript-eslint/parser@5.62.0': + resolution: {integrity: sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + + '@typescript-eslint/scope-manager@5.15.0': resolution: {integrity: sha512-EFiZcSKrHh4kWk0pZaa+YNJosvKE50EnmN4IfgjkA3bTHElPtYcd2U37QQkNTqwMCS7LXeDeZzEqnsOH8chjSg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + '@typescript-eslint/scope-manager@5.62.0': + resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + '@typescript-eslint/type-utils@5.15.0': resolution: {integrity: sha512-KGeDoEQ7gHieLydujGEFLyLofipe9PIzfvA/41urz4hv+xVxPEbmMQonKSynZ0Ks2xDhJQ4VYjB3DnRiywvKDA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -3029,10 +3701,24 @@ packages: typescript: optional: true + '@typescript-eslint/type-utils@5.62.0': + resolution: {integrity: sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: '*' + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + '@typescript-eslint/types@5.15.0': resolution: {integrity: sha512-yEiTN4MDy23vvsIksrShjNwQl2vl6kJeG9YkVJXjXZnkJElzVK8nfPsWKYxcsGWG8GhurYXP4/KGj3aZAxbeOA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + '@typescript-eslint/types@5.62.0': + resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + '@typescript-eslint/typescript-estree@5.15.0': resolution: {integrity: sha512-Hb0e3dGc35b75xLzixM3cSbG1sSbrTBQDfIScqdyvrfJZVEi4XWAT+UL/HMxEdrJNB8Yk28SKxPLtAhfCbBInA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -3042,16 +3728,35 @@ packages: typescript: optional: true + '@typescript-eslint/typescript-estree@5.62.0': + resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + '@typescript-eslint/utils@5.15.0': resolution: {integrity: sha512-081rWu2IPKOgTOhHUk/QfxuFog8m4wxW43sXNOMSCdh578tGJ1PAaWPsj42LOa7pguh173tNlMigsbrHvh/mtA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + '@typescript-eslint/utils@5.62.0': + resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + '@typescript-eslint/visitor-keys@5.15.0': resolution: {integrity: sha512-+vX5FKtgvyHbmIJdxMJ2jKm9z2BIlXJiuewI8dsDYMp5LzPUcuTT78Ya5iwvQg3VqSVdmxyM8Anj1Jeq7733ZQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + '@typescript-eslint/visitor-keys@5.62.0': + resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + '@vimeo/player@2.16.4': resolution: {integrity: sha512-i+ids9ziQuai3mp8XzF9Q5b2hLgRCekRcefdnoy+RkKUR8Xq0cJndnk9jHugEOw8v6PLj7tO3eEAw4lu2/AG2Q==} @@ -3155,8 +3860,8 @@ packages: resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} engines: {node: '>= 0.6'} - acorn-globals@6.0.0: - resolution: {integrity: sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==} + acorn-globals@7.0.1: + resolution: {integrity: sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==} acorn-jsx@5.3.2: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} @@ -3167,10 +3872,6 @@ packages: resolution: {integrity: sha512-wdlPY2tm/9XBr7QkKlq0WQVgiuGTX6YWPyRyBviSoScBuLfTVQhvwg6wJ369GJ/1nPfTLMfnrFIfjqVg6d+jQQ==} engines: {node: '>=0.4.0'} - acorn-walk@7.2.0: - resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==} - engines: {node: '>=0.4.0'} - acorn-walk@8.3.3: resolution: {integrity: sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==} engines: {node: '>=0.4.0'} @@ -3180,11 +3881,6 @@ packages: engines: {node: '>=0.4.0'} hasBin: true - acorn@7.4.1: - resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==} - engines: {node: '>=0.4.0'} - hasBin: true - acorn@8.12.1: resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} engines: {node: '>=0.4.0'} @@ -3213,6 +3909,9 @@ packages: ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + anser@1.4.10: + resolution: {integrity: sha512-hCv9AqTQ8ycjpSd3upOJd7vFwW1JaoYQ7tpham03GJ1ca8/65rqn0RpaWpItOAd6ylW9wAw6luXYPJIyPFVOww==} + ansi-align@3.0.1: resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} @@ -3220,10 +3919,17 @@ packages: resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} engines: {node: '>=8'} + ansi-fragments@0.2.1: + resolution: {integrity: sha512-DykbNHxuXQwUDRv5ibc2b0x7uw7wmwOGLBUd5RmaQ5z8Lhx19vwvKV+FAsM5rEA6dEcHxX+/Ad5s9eF2k2bB+w==} + ansi-regex@2.1.1: resolution: {integrity: sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==} engines: {node: '>=0.10.0'} + ansi-regex@4.1.1: + resolution: {integrity: sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==} + engines: {node: '>=6'} + ansi-regex@5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} @@ -3252,6 +3958,9 @@ packages: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} + appdirsjs@1.2.7: + resolution: {integrity: sha512-Quji6+8kLBC3NnBeo14nPDq0+2jUs5s3/xEye+udFHumHhRk4M7aAMXp/PBJqkKYGuuyR9M/6Dq7d2AViiGmhw==} + aproba@1.2.0: resolution: {integrity: sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==} @@ -3293,10 +4002,30 @@ packages: array-flatten@1.1.1: resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==} + array-includes@3.1.8: + resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==} + engines: {node: '>= 0.4'} + array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} + array.prototype.findlast@1.2.5: + resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} + engines: {node: '>= 0.4'} + + array.prototype.flat@1.3.2: + resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} + engines: {node: '>= 0.4'} + + array.prototype.flatmap@1.3.2: + resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} + engines: {node: '>= 0.4'} + + array.prototype.tosorted@1.1.4: + resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} + engines: {node: '>= 0.4'} + arraybuffer.prototype.slice@1.0.3: resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==} engines: {node: '>= 0.4'} @@ -3309,6 +4038,9 @@ packages: resolution: {integrity: sha512-tLkvA81vQG/XqE2mjDkGQHoOINtMHtysSnemrmoGe6PydDPMRbVugqyk4A6V/WDWEfm3l+0d8anA9r8cv/5Jaw==} engines: {node: '>=12'} + asap@2.0.6: + resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} + asn1@0.2.6: resolution: {integrity: sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==} @@ -3320,10 +4052,21 @@ packages: resolution: {integrity: sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==} engines: {node: '>=4'} + ast-types@0.15.2: + resolution: {integrity: sha512-c27loCv9QkZinsa5ProX751khO9DJl/AcB5c2KNtA6NRvHKS0PgLfcftz72KVq504vB0Gku5s2kUZzDBvQWvHg==} + engines: {node: '>=4'} + + astral-regex@1.0.0: + resolution: {integrity: sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==} + engines: {node: '>=4'} + async-exit-hook@2.0.1: resolution: {integrity: sha512-NW2cX8m1Q7KPA7a5M2ULQeZ2wR5qI5PAbw5L0UOMxdioVk9PMZ0h1TmyZEkPYrCvYjDlFICusOu1dlEKAAeXBw==} engines: {node: '>=0.12.0'} + async-limiter@1.0.1: + resolution: {integrity: sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==} + async@3.2.6: resolution: {integrity: sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==} @@ -3356,9 +4099,14 @@ packages: b4a@1.6.6: resolution: {integrity: sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==} - babel-jest@27.5.1: - resolution: {integrity: sha512-cdQ5dXjGRd0IBRATiQ4mZGlGlRE8kJpjPOixdNRdT+m3UcNqmYWN6rK6nvtXYfY3D76cb8s/O1Ss8ea24PIwcg==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + babel-core@7.0.0-bridge.0: + resolution: {integrity: sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==} + peerDependencies: + '@babel/core': ^7.0.0-0 + + babel-jest@29.7.0: + resolution: {integrity: sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} peerDependencies: '@babel/core': ^7.8.0 @@ -3366,18 +4114,39 @@ packages: resolution: {integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==} engines: {node: '>=8'} - babel-plugin-jest-hoist@27.5.1: - resolution: {integrity: sha512-50wCwD5EMNW4aRpOwtqzyZHIewTYNxLA4nhB+09d8BIssfNfzBRhkBIHiaPv1Si226TQSvp8gxAJm2iY2qs2hQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + babel-plugin-jest-hoist@29.6.3: + resolution: {integrity: sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + babel-plugin-polyfill-corejs2@0.4.11: + resolution: {integrity: sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + + babel-plugin-polyfill-corejs3@0.10.6: + resolution: {integrity: sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + + babel-plugin-polyfill-regenerator@0.6.2: + resolution: {integrity: sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg==} + peerDependencies: + '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 + + babel-plugin-syntax-hermes-parser@0.23.1: + resolution: {integrity: sha512-uNLD0tk2tLUjGFdmCk+u/3FEw2o+BAwW4g+z2QVlxJrzZYOOPADroEcNtTPt5lNiScctaUmnsTkVEnOwZUOLhA==} + + babel-plugin-transform-flow-enums@0.0.2: + resolution: {integrity: sha512-g4aaCrDDOsWjbm0PUUeVnkcVd6AKJsVc/MbnPhEotEpkeJQP6b8nzewohQi7+QS8UyPehOhGWn0nOwjvWpmMvQ==} babel-preset-current-node-syntax@1.1.0: resolution: {integrity: sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==} peerDependencies: '@babel/core': ^7.0.0 - babel-preset-jest@27.5.1: - resolution: {integrity: sha512-Nptf2FzlPCWYuJg41HBqXVT8ym6bXOevuCTbhxlUpjwtysGaIWFvDEjp4y+G7fl13FgOdjs7P/DmErqH7da0Ag==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + babel-preset-jest@29.6.3: + resolution: {integrity: sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} peerDependencies: '@babel/core': ^7.0.0 @@ -3448,9 +4217,6 @@ packages: resolution: {integrity: sha512-uA9fOtlTRC0iqKfzff1W34DXUA3GyVqbUaeo3Rw3d4gd1eavKVCETXrn3NzO74W+UVkG3UHu8WxUi+XvKI/huA==} engines: {node: '>= 10.16.0'} - browser-process-hrtime@1.0.0: - resolution: {integrity: sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==} - browserslist-generator@1.0.66: resolution: {integrity: sha512-aFDax4Qzh29DdyhHQBD2Yu2L5OvaDnvYFMbmpLrLwwaNK4H6dHEhC/Nxv93/+mfAA+a/t94ln0P2JZvHO6LZDA==} engines: {node: '>=8.0.0'} @@ -3465,6 +4231,11 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true + browserslist@4.24.2: + resolution: {integrity: sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + bs-logger@0.2.6: resolution: {integrity: sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==} engines: {node: '>= 6'} @@ -3536,6 +4307,18 @@ packages: resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==} engines: {node: '>= 0.4'} + caller-callsite@2.0.0: + resolution: {integrity: sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==} + engines: {node: '>=4'} + + caller-path@2.0.0: + resolution: {integrity: sha512-MCL3sf6nCSXOwCTzvPKhN18TU7AHTvdtam8DAogxcrJ8Rjfbbg7Lgng64H9Iy+vUV6VGFClN/TyxBkAebLRR4A==} + engines: {node: '>=4'} + + callsites@2.0.0: + resolution: {integrity: sha512-ksWePWBloaWPxJYQ8TL0JHvtci6G5QTKwQ95RcWAa/lzoAKuAOflGdAK92hpHXjkwb8zLxoLNUoNYZgVsaJzvQ==} + engines: {node: '>=4'} + callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} @@ -3558,6 +4341,9 @@ packages: caniuse-lite@1.0.30001655: resolution: {integrity: sha512-jRGVy3iSGO5Uutn2owlb5gR6qsGngTw9ZTb4ali9f3glshcNmJ2noam4Mo9zia5P9Dk3jNNydy7vQjuE5dQmfg==} + caniuse-lite@1.0.30001676: + resolution: {integrity: sha512-Qz6zwGCiPghQXGJvgQAem79esjitvJ+CxSbSQkW9H/UX5hg8XM88d4lp2W+MEQ81j+Hip58Il+jGVdazk1z9cw==} + capital-case@1.0.4: resolution: {integrity: sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==} @@ -3604,6 +4390,11 @@ packages: resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} engines: {node: '>=10'} + chrome-launcher@0.15.2: + resolution: {integrity: sha512-zdLEwNo3aUVzIhKhTtXfxhdvZhUghrnmkvcAq2NoDd+LeOHKf03H5jwZ8T/STsAlzyALkBVK552iaG1fGf1xVQ==} + engines: {node: '>=12.13.0'} + hasBin: true + chromedriver@129.0.4: resolution: {integrity: sha512-j5I55cQwodFJUaYa1tWUmj2ss9KcPRBWmUa5Qonq3X8kqv2ASPyTboFYb4YB/YLztkYTUUw2E43txXw0wYzT/A==} engines: {node: '>=18'} @@ -3662,8 +4453,8 @@ packages: resolution: {integrity: sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==} engines: {node: '>= 12'} - cliui@7.0.4: - resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} + cliui@6.0.0: + resolution: {integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==} cliui@8.0.1: resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} @@ -3673,6 +4464,10 @@ packages: resolution: {integrity: sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g==} engines: {node: '>= 0.10'} + clone-deep@4.0.1: + resolution: {integrity: sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==} + engines: {node: '>=6'} + clone-response@1.0.3: resolution: {integrity: sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==} @@ -3718,6 +4513,9 @@ packages: color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + colorette@1.4.0: + resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==} + colors@1.4.0: resolution: {integrity: sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==} engines: {node: '>=0.1.90'} @@ -3726,6 +4524,9 @@ packages: resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} engines: {node: '>= 0.8'} + command-exists@1.2.9: + resolution: {integrity: sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==} + commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} @@ -3755,10 +4556,18 @@ packages: resolution: {integrity: sha512-6FqVXeETqWPoGcfzrXb37E50NP0LXT8kAMu5ooZayhWWdgEY4lBEEcbQNXtkuKQsGduxiIcI4gOTsxTmuq/bSg==} engines: {node: '>= 14'} + compressible@2.0.18: + resolution: {integrity: sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==} + engines: {node: '>= 0.6'} + compressing@1.10.1: resolution: {integrity: sha512-XXwUffcVjqv8NGSQu1ttp6eMmuZ3zZEAec28Rt30o/vkXE20jXhowRQ9LXLY4uOgFkxXrNzApLobpam53Dc1AA==} engines: {node: '>= 4.0.0'} + compression@1.7.5: + resolution: {integrity: sha512-bQJ0YRck5ak3LgtnpKkiabX5pNF7tMUh1BSy2ZBOTh0Dim0BUu6aPPwByIns6/A5Prh8PufSPerMDUklpzes2Q==} + engines: {node: '>= 0.8.0'} + concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} @@ -3766,6 +4575,10 @@ packages: resolution: {integrity: sha512-OAcsnTEYu1ARJqWVGwf4zh4JDfHZEaSNlNccFmt8YjB2l/n19/PF2viLINHc57vO4FKIAFl2FWASIGZZWZ2Kxw==} engines: {node: '>=10.18.0 <11 || >=12.14.0 <13 || >=14'} + connect@3.7.0: + resolution: {integrity: sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==} + engines: {node: '>= 0.10.0'} + console-control-strings@1.1.0: resolution: {integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==} @@ -3780,9 +4593,6 @@ packages: resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} engines: {node: '>= 0.6'} - convert-source-map@1.9.0: - resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} - convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} @@ -3797,12 +4607,19 @@ packages: resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} engines: {node: '>= 0.6'} + core-js-compat@3.39.0: + resolution: {integrity: sha512-VgEUx3VwlExr5no0tXlBt+silBvhTryPwCXRI2Id1PN8WTKu7MreethvddqOubrYxkFdv/RnYrqlv1sFNAUelw==} + core-util-is@1.0.2: resolution: {integrity: sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==} core-util-is@1.0.3: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} + cosmiconfig@5.2.1: + resolution: {integrity: sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==} + engines: {node: '>=4'} + cpu-features@0.0.10: resolution: {integrity: sha512-9IkYqtX3YHPCzoVg1Py+o9057a3i0fp7S530UWokCSaFVTc7CwXPRiOjRjBQQ18ZCNafx78YfnG+HALxtVmOGA==} engines: {node: '>=10.0.0'} @@ -3816,6 +4633,11 @@ packages: resolution: {integrity: sha512-piICUB6ei4IlTv1+653yq5+KoqfBYmj9bw6LqXoOneTMDXk5nM1qt12mFW1caG3LlJXEKW1Bp0WggEmIfQB34g==} engines: {node: '>= 14'} + create-jest@29.7.0: + resolution: {integrity: sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + hasBin: true + create-require@1.1.1: resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} @@ -3846,13 +4668,16 @@ packages: cssom@0.3.8: resolution: {integrity: sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==} - cssom@0.4.4: - resolution: {integrity: sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==} + cssom@0.5.0: + resolution: {integrity: sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==} cssstyle@2.3.0: resolution: {integrity: sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==} engines: {node: '>=8'} + csstype@3.1.3: + resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} + currently-unhandled@0.4.1: resolution: {integrity: sha512-/fITjgjGU50vjQ4FH6eUoYu+iUoUKIXws2hL15JJpIR+BbTxaXQsMuuyjtNh2WqsSBS5nsaZHFsFecyw5CCAng==} engines: {node: '>=0.10.0'} @@ -3869,9 +4694,9 @@ packages: resolution: {integrity: sha512-7hvf7/GW8e86rW0ptuwS3OcBGDjIi6SZva7hCyWC0yYry2cOPmLIjXAUHI6DK2HsnwJd9ifmt57i8eV2n4YNpw==} engines: {node: '>= 14'} - data-urls@2.0.0: - resolution: {integrity: sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==} - engines: {node: '>=10'} + data-urls@3.0.2: + resolution: {integrity: sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==} + engines: {node: '>=12'} data-view-buffer@1.0.1: resolution: {integrity: sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==} @@ -3889,6 +4714,9 @@ packages: resolution: {integrity: sha512-uqCUKXE5q1PNBXjPqvwhwJf9SwMoAHBgWJ6DcrnS5o+W2JOiIILl0JEdVD8SGujrNS02GGxgwAg2PN2zONgtjg==} engines: {node: '>=6'} + dayjs@1.11.13: + resolution: {integrity: sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==} + debug@2.6.9: resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} @@ -3919,6 +4747,10 @@ packages: supports-color: optional: true + decamelize@1.2.0: + resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} + engines: {node: '>=0.10.0'} + decamelize@6.0.0: resolution: {integrity: sha512-Fv96DCsdOgB6mdGl67MT5JaTNKRzrzill5OH5s8bjYJXVlcXyPYGyPsUkWyGV5p1TXI5esYIYMMeDJL0hEIwaA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -3934,8 +4766,13 @@ packages: resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} engines: {node: '>=10'} - dedent@0.7.0: - resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==} + dedent@1.5.3: + resolution: {integrity: sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==} + peerDependencies: + babel-plugin-macros: ^3.1.0 + peerDependenciesMeta: + babel-plugin-macros: + optional: true deep-equal@2.2.3: resolution: {integrity: sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==} @@ -3982,6 +4819,9 @@ packages: delegates@1.0.0: resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==} + denodeify@1.2.1: + resolution: {integrity: sha512-KNTihKNmQENUZeKu5fzfpzRqR5S2VMp4gl9RFHiWzj9DfvYQPMJ6XHKNaQxaGCXwPk6y9yme3aUoaiAe+KX+vg==} + depd@2.0.0: resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} engines: {node: '>= 0.8'} @@ -4004,10 +4844,6 @@ packages: devtools-protocol@0.0.1302984: resolution: {integrity: sha512-Rgh2Sk5fUSCtEx4QGH9iwTyECdFPySG2nlz5J8guGh2Wlha6uzSOCq/DCEC8faHlLaMPZJMuZ4ovgcX4LvOkKA==} - diff-sequences@27.5.1: - resolution: {integrity: sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - diff-sequences@29.6.3: resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -4032,6 +4868,10 @@ packages: resolution: {integrity: sha512-/0YNa3ZDNeLr/tSckmD69+Gq+qVNhvKfAHNeZJBnp7EOP6RGKV8ORrJHkUn20So5wU+xxT7+1n5u8PjHbfjbSA==} engines: {node: '>= 8.0'} + doctrine@2.1.0: + resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} + engines: {node: '>=0.10.0'} + doctrine@3.0.0: resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} engines: {node: '>=6.0.0'} @@ -4039,9 +4879,9 @@ packages: dom-accessibility-api@0.5.16: resolution: {integrity: sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==} - domexception@2.0.1: - resolution: {integrity: sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==} - engines: {node: '>=8'} + domexception@4.0.0: + resolution: {integrity: sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==} + engines: {node: '>=12'} deprecated: Use your platform's native DOMException instead dot-case@3.0.4: @@ -4085,9 +4925,12 @@ packages: electron-to-chromium@1.5.13: resolution: {integrity: sha512-lbBcvtIJ4J6sS4tb5TLp1b4LyfCdMkwStzXPyAgVgTRAsep4bvrAGaBOP7ZJtQMNJpSQ9SqG4brWOroNaQtm7Q==} - emittery@0.8.1: - resolution: {integrity: sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==} - engines: {node: '>=10'} + electron-to-chromium@1.5.50: + resolution: {integrity: sha512-eMVObiUQ2LdgeO1F/ySTXsvqvxb6ZH2zPGaMYsWzRDdOddUa77tdmI0ltg+L16UpbWdhPmuF3wIQYyQq65WfZw==} + + emittery@0.13.1: + resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==} + engines: {node: '>=12'} emittery@1.0.3: resolution: {integrity: sha512-tJdCJitoy2lrC2ldJcqN4vkqJ00lT+tOWNT1hBJjO/3FDMJa5TTIiYGCKGkn/WfCyOzUMObeohbVTj00fhiLiA==} @@ -4113,16 +4956,32 @@ packages: resolution: {integrity: sha512-+29eJLiUixTEDRaZ35Vu8jP3gPLNcQQkQkOQjLp2X+6cZGGPDD/uasbFzvLsJKnGZnvmyZ0srxudwOtskHeIDA==} engines: {node: '>=4.0.0'} + entities@4.5.0: + resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} + engines: {node: '>=0.12'} + env-paths@2.2.1: resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} engines: {node: '>=6'} + envinfo@7.14.0: + resolution: {integrity: sha512-CO40UI41xDQzhLB1hWyqUKgFhs250pNcGbyGKe1l/e4FSaI/+YE4IMG76GDt0In67WLPACIITC+sOi08x4wIvg==} + engines: {node: '>=4'} + hasBin: true + err-code@2.0.3: resolution: {integrity: sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==} error-ex@1.3.2: resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} + error-stack-parser@2.1.4: + resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} + + errorhandler@1.5.1: + resolution: {integrity: sha512-rcOwbfvP1WTViVoUjcfZicVzjhjTuhSMntHh6mW3IrEiyE6mJyXvsToJUJGlGlw/2xU9P5whlWNGlIDVeCiT4A==} + engines: {node: '>= 0.8'} + es-abstract@1.23.3: resolution: {integrity: sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==} engines: {node: '>= 0.4'} @@ -4138,6 +4997,10 @@ packages: es-get-iterator@1.1.3: resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==} + es-iterator-helpers@1.1.0: + resolution: {integrity: sha512-/SurEfycdyssORP/E+bj4sEu1CWw4EmLDsHynHwSXQ7utgbrMRWW195pTrCjFgFCddf/UkYm3oqKPRq5i8bJbw==} + engines: {node: '>= 0.4'} + es-object-atoms@1.0.0: resolution: {integrity: sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==} engines: {node: '>= 0.4'} @@ -4146,6 +5009,9 @@ packages: resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==} engines: {node: '>= 0.4'} + es-shim-unscopables@1.0.2: + resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} + es-to-primitive@1.2.1: resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} engines: {node: '>= 0.4'} @@ -4178,12 +5044,75 @@ packages: engines: {node: '>=6.0'} hasBin: true + eslint-config-prettier@8.10.0: + resolution: {integrity: sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==} + hasBin: true + peerDependencies: + eslint: '>=7.0.0' + eslint-plugin-ava@13.2.0: resolution: {integrity: sha512-i5B5izsEdERKQLruk1nIWzTTE7C26/ju8qQf7JeyRv32XT2lRMW0zMFZNhIrEf5/5VvpSz2rqrV7UcjClGbKsw==} engines: {node: '>=12.22 <13 || >=14.17 <15 || >=16.4'} peerDependencies: eslint: '>=7.22.0' + eslint-plugin-eslint-comments@3.2.0: + resolution: {integrity: sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==} + engines: {node: '>=6.5.0'} + peerDependencies: + eslint: '>=4.19.1' + + eslint-plugin-ft-flow@2.0.3: + resolution: {integrity: sha512-Vbsd/b+LYA99jUbsL6viEUWShFaYQt2YQs3QN3f+aeszOhh2sgdcU0mjzDyD4yyBvMc8qy2uwvBBWfMzEX06tg==} + engines: {node: '>=12.22.0'} + peerDependencies: + '@babel/eslint-parser': ^7.12.0 + eslint: ^8.1.0 + + eslint-plugin-jest@26.9.0: + resolution: {integrity: sha512-TWJxWGp1J628gxh2KhaH1H1paEdgE2J61BBF1I59c6xWeL5+D1BzMxGDN/nXAfX+aSkR5u80K+XhskK6Gwq9ng==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + '@typescript-eslint/eslint-plugin': ^5.0.0 + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + jest: '*' + peerDependenciesMeta: + '@typescript-eslint/eslint-plugin': + optional: true + jest: + optional: true + + eslint-plugin-prettier@4.2.1: + resolution: {integrity: sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==} + engines: {node: '>=12.0.0'} + peerDependencies: + eslint: '>=7.28.0' + eslint-config-prettier: '*' + prettier: '>=2.0.0' + peerDependenciesMeta: + eslint-config-prettier: + optional: true + + eslint-plugin-react-hooks@4.6.2: + resolution: {integrity: sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==} + engines: {node: '>=10'} + peerDependencies: + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 + + eslint-plugin-react-native-globals@0.1.2: + resolution: {integrity: sha512-9aEPf1JEpiTjcFAmmyw8eiIXmcNZOqaZyHO77wgm0/dWfT/oxC1SrIq8ET38pMxHYrcB6Uew+TzUVsBeczF88g==} + + eslint-plugin-react-native@4.1.0: + resolution: {integrity: sha512-QLo7rzTBOl43FvVqDdq5Ql9IoElIuTdjrz9SKAXCvULvBoRZ44JGSkx9z4999ZusCsb4rK3gjS8gOGyeYqZv2Q==} + peerDependencies: + eslint: ^3.17.0 || ^4 || ^5 || ^6 || ^7 || ^8 + + eslint-plugin-react@7.37.2: + resolution: {integrity: sha512-EsTAnj9fLVr/GZleBLFbj/sSuXeWmp1eXIN60ceYnZveqEaUCyW4X+Vh4WTdUhCkW4xutXYqTXCUSyqD4rB75w==} + engines: {node: '>=4'} + peerDependencies: + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 + eslint-scope@5.1.1: resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} engines: {node: '>=8.0.0'} @@ -4283,14 +5212,13 @@ packages: resolution: {integrity: sha512-Op1xZoevlv1pohCq7g2Og5Gr3xP2NhY7MQueOApmopVxgweoJ/BqJxyvMNP0A//QsMg8v0WsN/1j81Sx2er9Wg==} engines: {node: '>=16 || >=18 || >=20'} - expect@27.5.1: - resolution: {integrity: sha512-E1q5hSUG2AmYQwQJ041nvgpkODHQvB+RKlB4IYdru6uJsyFTRyZAP463M+1lINorwbqAmUggi6+WwkD8lCS/Dw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - expect@29.7.0: resolution: {integrity: sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + exponential-backoff@3.1.1: + resolution: {integrity: sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==} + express@4.19.2: resolution: {integrity: sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==} engines: {node: '>= 0.10.0'} @@ -4380,10 +5308,22 @@ packages: resolution: {integrity: sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==} engines: {node: '>=0.10.0'} + finalhandler@1.1.2: + resolution: {integrity: sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==} + engines: {node: '>= 0.8'} + finalhandler@1.2.0: resolution: {integrity: sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==} engines: {node: '>= 0.8'} + find-cache-dir@2.1.0: + resolution: {integrity: sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==} + engines: {node: '>=6'} + + find-up@3.0.0: + resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==} + engines: {node: '>=6'} + find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} engines: {node: '>=8'} @@ -4403,6 +5343,13 @@ packages: flatted@3.3.1: resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} + flow-enums-runtime@0.0.6: + resolution: {integrity: sha512-3PYnM29RFXwvAN6Pc/scUfkI7RwhQ/xqyLUyPNlXUp9S40zI8nup9tUSrTLSVnWGBN38FNiGWbwZOB6uR4OGdw==} + + flow-parser@0.251.1: + resolution: {integrity: sha512-8ZuLqJPlL/T9K3zFdr1m88Lx8JOoJluTTdyvN4uH5NT9zoIIFqbCDoXVhkHh022k2lhuAyFF27cu0BYKh5SmDA==} + engines: {node: '>=0.4.0'} + flushwritable@1.0.0: resolution: {integrity: sha512-3VELfuWCLVzt5d2Gblk8qcqFro6nuwvxwMzHaENVDHI7rxcBRtMCwTk/E9FXcgh+82DSpavPNDueA9+RxXJoFg==} @@ -4433,10 +5380,6 @@ packages: resolution: {integrity: sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==} engines: {node: '>= 0.12'} - form-data@3.0.1: - resolution: {integrity: sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==} - engines: {node: '>= 6'} - form-data@4.0.0: resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} engines: {node: '>= 6'} @@ -4460,6 +5403,10 @@ packages: resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==} engines: {node: '>=14.14'} + fs-extra@8.1.0: + resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==} + engines: {node: '>=6 <7 || >=8'} + fs-minipass@2.1.0: resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} engines: {node: '>= 8'} @@ -4632,6 +5579,9 @@ packages: grapheme-splitter@1.0.4: resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} + graphemer@1.4.0: + resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + gzip-size@6.0.0: resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==} engines: {node: '>=10'} @@ -4688,6 +5638,22 @@ packages: resolution: {integrity: sha512-XRhfbSEmR+poXUC5/8AbmYNJb2riOT6qPzjGJZr0S9YedHiaY+/tzPYzWMUclYMEdCYo/1l8PDYrQFCj02v97w==} engines: {node: '>=10.0.0'} + hermes-estree@0.19.1: + resolution: {integrity: sha512-daLGV3Q2MKk8w4evNMKwS8zBE/rcpA800nu1Q5kM08IKijoSnPe9Uo1iIxzPKRkn95IxxsgBMPeYHt3VG4ej2g==} + + hermes-estree@0.23.1: + resolution: {integrity: sha512-eT5MU3f5aVhTqsfIReZ6n41X5sYn4IdQL0nvz6yO+MMlPxw49aSARHLg/MSehQftyjnrE8X6bYregzSumqc6cg==} + + hermes-parser@0.19.1: + resolution: {integrity: sha512-Vp+bXzxYJWrpEuJ/vXxUsLnt0+y4q9zyi4zUlkLqD8FKv4LjIfOvP69R/9Lty3dCyKh0E2BU7Eypqr63/rKT/A==} + + hermes-parser@0.23.1: + resolution: {integrity: sha512-oxl5h2DkFW83hT4DAUJorpah8ou4yvmweUzLJmmr6YV2cezduCdlil1AvU/a/xSsAFo4WUcNA4GoV5Bvq6JffA==} + + hermes-profile-transformer@0.0.6: + resolution: {integrity: sha512-cnN7bQUm65UWOy6cbGcCcZ3rpwW8Q/j4OP5aWRhEry4Z2t2aR1cjrbp0BS+KiBN0smvP1caBgAuxutvyvJILzQ==} + engines: {node: '>=8'} + hosted-git-info@2.8.9: resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} @@ -4699,9 +5665,9 @@ packages: resolution: {integrity: sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==} engines: {node: ^16.14.0 || >=18.0.0} - html-encoding-sniffer@2.0.1: - resolution: {integrity: sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==} - engines: {node: '>=10'} + html-encoding-sniffer@3.0.0: + resolution: {integrity: sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==} + engines: {node: '>=12'} html-escaper@2.0.2: resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} @@ -4717,6 +5683,10 @@ packages: resolution: {integrity: sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==} engines: {node: '>= 6'} + http-proxy-agent@5.0.0: + resolution: {integrity: sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==} + engines: {node: '>= 6'} + http-proxy-agent@7.0.2: resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==} engines: {node: '>= 14'} @@ -4778,9 +5748,18 @@ packages: resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} engines: {node: '>= 4'} + image-size@1.1.1: + resolution: {integrity: sha512-541xKlUw6jr/6gGuk92F+mYM5zaFAc5ahphvkqvNe2bQ6gVBkd6bfrmVJ2t4KDAfikAYZyIqTnktX3i6/aQDrQ==} + engines: {node: '>=16.x'} + hasBin: true + immediate@3.0.6: resolution: {integrity: sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==} + import-fresh@2.0.0: + resolution: {integrity: sha512-eZ5H8rcgYazHbKC3PG4ClHNykCSxtAhxSSEM+2mb+7evD2CKF5V7c0dNum7AdpDh0ZdICwZY9sRSn8f+KH96sg==} + engines: {node: '>=4'} + import-fresh@3.3.0: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} engines: {node: '>=6'} @@ -4830,6 +5809,9 @@ packages: resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==} engines: {node: '>= 0.4'} + invariant@2.2.4: + resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} + ip-address@9.0.5: resolution: {integrity: sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==} engines: {node: '>= 12'} @@ -4860,6 +5842,10 @@ packages: is-arrayish@0.2.1: resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + is-async-function@2.0.0: + resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} + engines: {node: '>= 0.4'} + is-bigint@1.0.4: resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} @@ -4891,6 +5877,15 @@ packages: resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} engines: {node: '>= 0.4'} + is-directory@0.3.1: + resolution: {integrity: sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==} + engines: {node: '>=0.10.0'} + + is-docker@2.2.1: + resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} + engines: {node: '>=8'} + hasBin: true + is-error@2.2.2: resolution: {integrity: sha512-IOQqts/aHWbiisY5DuPJQ0gcbvaLFCa7fBa9xoLfxBZvQ+ZI/Zh9xoI7Gk+G64N0FdK4AbibytHht2tWgpJWLg==} @@ -4898,10 +5893,17 @@ packages: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} + is-finalizationregistry@1.0.2: + resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==} + is-fullwidth-code-point@1.0.0: resolution: {integrity: sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==} engines: {node: '>=0.10.0'} + is-fullwidth-code-point@2.0.0: + resolution: {integrity: sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==} + engines: {node: '>=4'} + is-fullwidth-code-point@3.0.0: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} engines: {node: '>=8'} @@ -4914,6 +5916,10 @@ packages: resolution: {integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==} engines: {node: '>=6'} + is-generator-function@1.0.10: + resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} + engines: {node: '>= 0.4'} + is-glob@4.0.3: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} engines: {node: '>=0.10.0'} @@ -4952,10 +5958,18 @@ packages: resolution: {integrity: sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==} engines: {node: '>=12'} + is-plain-obj@2.1.0: + resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} + engines: {node: '>=8'} + is-plain-obj@4.1.0: resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} engines: {node: '>=12'} + is-plain-object@2.0.4: + resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==} + engines: {node: '>=0.10.0'} + is-plain-object@5.0.0: resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} engines: {node: '>=0.10.0'} @@ -5026,6 +6040,14 @@ packages: resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==} engines: {node: '>= 0.4'} + is-wsl@1.1.0: + resolution: {integrity: sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==} + engines: {node: '>=4'} + + is-wsl@2.2.0: + resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} + engines: {node: '>=8'} + is2@2.0.9: resolution: {integrity: sha512-rZkHeBn9Zzq52sd9IUIV3a5mfwBY+o2HePMh0wkGBM4z4qjvy2GwVxQ6nNXSfw6MmVP6gf1QIlWjiOavhM3x5g==} engines: {node: '>=v0.10.0'} @@ -5047,6 +6069,10 @@ packages: resolution: {integrity: sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==} engines: {node: '>=16'} + isobject@3.0.1: + resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==} + engines: {node: '>=0.10.0'} + isstream@0.1.2: resolution: {integrity: sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==} @@ -5058,6 +6084,10 @@ packages: resolution: {integrity: sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==} engines: {node: '>=8'} + istanbul-lib-instrument@6.0.3: + resolution: {integrity: sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==} + engines: {node: '>=10'} + istanbul-lib-report@3.0.1: resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==} engines: {node: '>=10'} @@ -5070,6 +6100,10 @@ packages: resolution: {integrity: sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==} engines: {node: '>=8'} + iterator.prototype@1.1.3: + resolution: {integrity: sha512-FW5iMbeQ6rBGm/oKgzq2aW4KvAGpxPzYES8N4g4xNXUKpL1mclMvOe+76AcLDTvD+Ze+sOpVhgdAQEKF4L9iGQ==} + engines: {node: '>= 0.4'} + jackspeak@3.4.3: resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} @@ -5085,17 +6119,17 @@ packages: resolution: {integrity: sha512-il+noV96N1BGU9/FMmc8QtAMxC8lPnXUiAvgb0o9MDZATRdxglTQe9wo6UdL049ropQL6MopDYwDlludKR6wJQ==} hasBin: true - jest-changed-files@27.5.1: - resolution: {integrity: sha512-buBLMiByfWGCoMsLLzGUUSpAmIAGnbR2KJoMN10ziLhOLvP4e0SlypHnAel8iqQXTrcbmfEY9sSqae5sgUsTvw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-changed-files@29.7.0: + resolution: {integrity: sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest-circus@27.5.1: - resolution: {integrity: sha512-D95R7x5UtlMA5iBYsOHFFbMD/GVA4R/Kdq15f7xYWUfWHBto9NYRsOvnSauTgdF+ogCpJ4tyKOXhUifxS65gdw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-circus@29.7.0: + resolution: {integrity: sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest-cli@27.5.1: - resolution: {integrity: sha512-Hc6HOOwYq4/74/c62dEE3r5elx8wjYqxY0r0G/nFrLDPMFRu6RA/u8qINOIkvhxG7mMQ5EJsOGfRpI8L6eFUVw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-cli@29.7.0: + resolution: {integrity: sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} hasBin: true peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 @@ -5103,68 +6137,60 @@ packages: node-notifier: optional: true - jest-config@27.5.1: - resolution: {integrity: sha512-5sAsjm6tGdsVbW9ahcChPAFCk4IlkQUknH5AvKjuLTSlcO/wCZKyFdn7Rg0EkC+OGgWODEy2hDpWB1PgzH0JNA==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-config@29.7.0: + resolution: {integrity: sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} peerDependencies: + '@types/node': '*' ts-node: '>=9.0.0' peerDependenciesMeta: + '@types/node': + optional: true ts-node: optional: true - jest-diff@27.5.1: - resolution: {integrity: sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - jest-diff@29.7.0: resolution: {integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest-docblock@27.5.1: - resolution: {integrity: sha512-rl7hlABeTsRYxKiUfpHrQrG4e2obOiTQWfMEH3PxPjOtdsfLQO4ReWSZaQ7DETm4xu07rl4q/h4zcKXyU0/OzQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-docblock@29.7.0: + resolution: {integrity: sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest-each@27.5.1: - resolution: {integrity: sha512-1Ff6p+FbhT/bXQnEouYy00bkNSY7OUpfIcmdl8vZ31A1UUaurOLPA8a8BbJOF2RDUElwJhmeaV7LnagI+5UwNQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-each@29.7.0: + resolution: {integrity: sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest-environment-jsdom-global@3.0.0: - resolution: {integrity: sha512-+7ZNxuB/35ybGug9vMaBYontqI7T8KhnUU55wtT5OYw6GRfDn2Vzak2YRvBwFjdm0so0Qz7KAL6NtEB0r+3x+g==} - engines: {node: '>= 12'} + jest-environment-jsdom-global@4.0.0: + resolution: {integrity: sha512-qEV8j61oV5XhOBUQbrld2nMYKnp/AGINUaoYTtkwJ9rjvMNRN7ZaZ/dgoPpW83oFtrSiVM1gie6ajdsKFBUlLA==} + engines: {node: '>= 14'} peerDependencies: - jest-environment-jsdom: 22.x || 23.x || 24.x || 25.x || 26.x || 27.x - - jest-environment-jsdom@27.5.1: - resolution: {integrity: sha512-TFBvkTC1Hnnnrka/fUb56atfDtJ9VMZ94JkjTbggl1PEpwrYtUBKMezB3inLmWqQsXYLcMwNoDQwoBTAvFfsfw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-environment-jsdom: 22.x || 23.x || 24.x || 25.x || 26.x || 27.x || 28.x || 29.x - jest-environment-node@27.5.1: - resolution: {integrity: sha512-Jt4ZUnxdOsTGwSRAfKEnE6BcwsSPNOijjwifq5sDFSA2kesnXTvNqKHYgM0hDq3549Uf/KzdXNYn4wMZJPlFLw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-environment-jsdom@29.7.0: + resolution: {integrity: sha512-k9iQbsf9OyOfdzWH8HDmrRT0gSIcX+FLNW7IQq94tFX0gynPwqDTW0Ho6iMVNjGz/nb+l/vW3dWM2bbLLpkbXA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + peerDependencies: + canvas: ^2.5.0 + peerDependenciesMeta: + canvas: + optional: true - jest-get-type@27.5.1: - resolution: {integrity: sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-environment-node@29.7.0: + resolution: {integrity: sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} jest-get-type@29.6.3: resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest-haste-map@27.5.1: - resolution: {integrity: sha512-7GgkZ4Fw4NFbMSDSpZwXeBiIbx+t/46nJ2QitkOjvwPYyZmqttu2TDSimMHP1EkPOi4xUZAN1doE5Vd25H4Jng==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-haste-map@29.7.0: + resolution: {integrity: sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest-jasmine2@27.5.1: - resolution: {integrity: sha512-jtq7VVyG8SqAorDpApwiJJImd0V2wv1xzdheGHRGyuT7gZm6gG47QEskOlzsN1PG/6WNaCo5pmwMHDf3AkG2pQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - - jest-leak-detector@27.5.1: - resolution: {integrity: sha512-POXfWAMvfU6WMUXftV4HolnJfnPOGEu10fscNCA76KBpRRhcMN2c8d3iT2pxQS3HLbA+5X4sOUPzYO2NUyIlHQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - - jest-matcher-utils@27.5.1: - resolution: {integrity: sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-leak-detector@29.7.0: + resolution: {integrity: sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} jest-matcher-utils@29.7.0: resolution: {integrity: sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==} @@ -5174,17 +6200,13 @@ packages: resolution: {integrity: sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==} engines: {node: '>= 10.14.2'} - jest-message-util@27.5.1: - resolution: {integrity: sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - jest-message-util@29.7.0: resolution: {integrity: sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest-mock@27.5.1: - resolution: {integrity: sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-mock@29.7.0: + resolution: {integrity: sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} jest-pnp-resolver@1.2.3: resolution: {integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==} @@ -5195,33 +6217,29 @@ packages: jest-resolve: optional: true - jest-regex-util@27.5.1: - resolution: {integrity: sha512-4bfKq2zie+x16okqDXjXn9ql2B0dScQu+vcwe4TvFVhkVyuWLqpZrZtXxLLWoXYgn0E87I6r6GRYHF7wFZBUvg==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - - jest-resolve-dependencies@27.5.1: - resolution: {integrity: sha512-QQOOdY4PE39iawDn5rzbIePNigfe5B9Z91GDD1ae/xNDlu9kaat8QQ5EKnNmVWPV54hUdxCVwwj6YMgR2O7IOg==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-regex-util@29.6.3: + resolution: {integrity: sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest-resolve@27.5.1: - resolution: {integrity: sha512-FFDy8/9E6CV83IMbDpcjOhumAQPDyETnU2KZ1O98DwTnz8AOBsW/Xv3GySr1mOZdItLR+zDZ7I/UdTFbgSOVCw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-resolve-dependencies@29.7.0: + resolution: {integrity: sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest-runner@27.5.1: - resolution: {integrity: sha512-g4NPsM4mFCOwFKXO4p/H/kWGdJp9V8kURY2lX8Me2drgXqG7rrZAx5kv+5H7wtt/cdFIjhqYx1HrlqWHaOvDaQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-resolve@29.7.0: + resolution: {integrity: sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest-runtime@27.5.1: - resolution: {integrity: sha512-o7gxw3Gf+H2IGt8fv0RiyE1+r83FJBRruoA+FXrlHw6xEyBsU8ugA6IPfTdVyA0w8HClpbK+DGJxH59UrNMx8A==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-runner@29.7.0: + resolution: {integrity: sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest-serializer@27.5.1: - resolution: {integrity: sha512-jZCyo6iIxO1aqUxpuBlwTDMkzOAJS4a3eYz3YzgxxVQFwLeSA7Jfq5cbqCY+JLvTDrWirgusI/0KwxKMgrdf7w==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-runtime@29.7.0: + resolution: {integrity: sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest-snapshot@27.5.1: - resolution: {integrity: sha512-yYykXI5a0I31xX67mgeLw1DZ0bJB+gpq5IpSuCAoyDi0+BhgU/RIrL+RTzDmkNTchvDFWKP8lp+w/42Z3us5sA==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-snapshot@29.7.0: + resolution: {integrity: sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} jest-standard-reporter@2.0.0: resolution: {integrity: sha512-JhV3qzNzs5u/T1mzN9ivVrf2i4xYOQJgyPMKQbAmwRAZIprCpkikt8GF1kQKrP5ch1qBMn5xYyNdUUOKi8bltA==} @@ -5230,33 +6248,29 @@ packages: resolution: {integrity: sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==} engines: {node: '>= 10.14.2'} - jest-util@27.5.1: - resolution: {integrity: sha512-Kv2o/8jNvX1MQ0KGtw480E/w4fBCDOnH6+6DmeKi6LZUIlKA5kwY0YNdlzaWTiVgxqAqik11QyxDOKk543aKXw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - jest-util@29.7.0: resolution: {integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest-validate@27.5.1: - resolution: {integrity: sha512-thkNli0LYTmOI1tDB3FI1S1RTp/Bqyd9pTarJwL87OIBFuqEb5Apv5EaApEudYg4g86e3CT6kM0RowkhtEnCBQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-validate@29.7.0: + resolution: {integrity: sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest-watcher@27.5.1: - resolution: {integrity: sha512-z676SuD6Z8o8qbmEGhoEUFOM1+jfEiL3DXHK/xgEiG2EyNYfFG60jluWcupY6dATjfEsKQuibReS1djInQnoVw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest-watcher@29.7.0: + resolution: {integrity: sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} jest-worker@26.6.2: resolution: {integrity: sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==} engines: {node: '>= 10.13.0'} - jest-worker@27.5.1: - resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} - engines: {node: '>= 10.13.0'} + jest-worker@29.7.0: + resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest@27.5.1: - resolution: {integrity: sha512-Yn0mADZB89zTtjkPJEXwrac3LHudkQMR+Paqa8uxJHCBr9agxztUifWCyiYrjhMPBoUVBjyny0I7XH6ozDr7QQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + jest@29.7.0: + resolution: {integrity: sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} hasBin: true peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 @@ -5264,6 +6278,9 @@ packages: node-notifier: optional: true + joi@17.13.3: + resolution: {integrity: sha512-otDA4ldcIx+ZXsKHWmp0YizCweVRZG96J10b0FevjfuncLO1oX59THoAmHkNubYJ+9gWsYsp5k8v4ib6oDv1fA==} + js-cleanup@1.2.0: resolution: {integrity: sha512-JeDD0yiiSt80fXzAVa/crrS0JDPQljyBG/RpOtaSbyDq03VHa9szJWMaWOYU/bcTn412uMN2MxApXq8v79cUiQ==} engines: {node: ^10.14.2 || >=12.0.0} @@ -5289,9 +6306,21 @@ packages: jsbn@1.1.0: resolution: {integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==} - jsdom@16.7.0: - resolution: {integrity: sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==} - engines: {node: '>=10'} + jsc-android@250231.0.0: + resolution: {integrity: sha512-rS46PvsjYmdmuz1OAWXY/1kCYG7pnf1TBqeTiOJr1iDz7s5DLxxC9n/ZMknLDxzYzNVfI7R95MH10emSSG1Wuw==} + + jsc-safe-url@0.2.4: + resolution: {integrity: sha512-0wM3YBWtYePOjfyXQH5MWQ8H7sdk5EXSwZvmSLKk2RboVQ2Bu239jycHDz5J/8Blf3K0Qnoy2b6xD+z10MFB+Q==} + + jscodeshift@0.14.0: + resolution: {integrity: sha512-7eCC1knD7bLUPuSCwXsMZUH51O8jIcoVyKtI6P0XM0IVzlGjckPy3FIwQlorzbN0Sg79oK+RlohN32Mqf/lrYA==} + hasBin: true + peerDependencies: + '@babel/preset-env': ^7.1.6 + + jsdom@20.0.3: + resolution: {integrity: sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==} + engines: {node: '>=14'} peerDependencies: canvas: ^2.5.0 peerDependenciesMeta: @@ -5303,6 +6332,11 @@ packages: engines: {node: '>=4'} hasBin: true + jsesc@3.0.2: + resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} + engines: {node: '>=6'} + hasBin: true + json-buffer@3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} @@ -5333,6 +6367,9 @@ packages: engines: {node: '>=6'} hasBin: true + jsonfile@4.0.0: + resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} + jsonfile@6.1.0: resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} @@ -5347,12 +6384,20 @@ packages: jstimezonedetect@1.0.7: resolution: {integrity: sha512-ARADHortktl9IZ1tr4GHwGPIAzgz3mLNCbR/YjWtRtc/O0o634O3NeFlpLjv95EvuDA5dc8z6yfgbS8nUc4zcQ==} + jsx-ast-utils@3.3.5: + resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} + engines: {node: '>=4.0'} + jszip@3.10.1: resolution: {integrity: sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==} keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} + kind-of@6.0.3: + resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} + engines: {node: '>=0.10.0'} + kleur@3.0.3: resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} engines: {node: '>=6'} @@ -5376,6 +6421,9 @@ packages: lie@3.3.0: resolution: {integrity: sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==} + lighthouse-logger@1.4.2: + resolution: {integrity: sha512-gPWxznF6TKmUHrOQjlVo2UbaL2EJ71mb2CCeRs/2qBpi4L/g4LUVc9+3lKQ6DTUZwJswfM7ainGrLO1+fOqa2g==} + lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} @@ -5394,6 +6442,10 @@ packages: locate-app@2.4.37: resolution: {integrity: sha512-NJjAzMx1LxOeFmmHM0qvMM7CjTC37IMtL4T+mYxUZlsMSn9QtZQzCcfYwp1pPY/Ey7D7HGzfUcxPzYOy4TaysQ==} + locate-path@3.0.0: + resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} + engines: {node: '>=6'} + locate-path@5.0.0: resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} engines: {node: '>=8'} @@ -5409,6 +6461,9 @@ packages: lodash.clonedeep@4.5.0: resolution: {integrity: sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==} + lodash.debounce@4.0.8: + resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} + lodash.flattendeep@4.4.0: resolution: {integrity: sha512-uHaJFihxmJcEX3kT4I23ABqKKalJ/zDrDg0lsFtc1h+3uw49SIJ5beyhx5ExVRti3AvKoOJngIj7xz3oylPdWQ==} @@ -5424,6 +6479,9 @@ packages: lodash.pickby@4.6.0: resolution: {integrity: sha512-AZV+GsS/6ckvPOVQPXSiFFacKvKB4kOQu6ynt9wz0F3LO4R9Ij4K1ddYsIytDpSgLz88JHd9P+oaLeej5/Sl7Q==} + lodash.throttle@4.1.1: + resolution: {integrity: sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==} + lodash.union@4.6.0: resolution: {integrity: sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw==} @@ -5437,6 +6495,10 @@ packages: resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} engines: {node: '>=10'} + logkitty@0.7.1: + resolution: {integrity: sha512-/3ER20CTTbahrCrpYfPn7Xavv9diBROZpoXGVZDWMw4b/X4uuUwAC0ki85tgsdMRONURyIJbcOvS94QsUBYPbQ==} + hasBin: true + loglevel-plugin-prefix@0.8.4: resolution: {integrity: sha512-WpG9CcFAOjz/FtNht+QJeGpvVl/cdR6P0z6OcXSkr8wFJOsV2GRj2j10JLfjuA4aYkcKCNIEqRGCyTife9R8/g==} @@ -5444,6 +6506,10 @@ packages: resolution: {integrity: sha512-hP3I3kCrDIMuRwAwHltphhDM1r8i55H33GgqjXbrisuJhF4kRhW1dNuxsRklp4bXl8DSdLaNLuiL4A/LWRfxvg==} engines: {node: '>= 0.6.0'} + loose-envify@1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + hasBin: true + lower-case@2.0.2: resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} @@ -5486,6 +6552,10 @@ packages: magic-string@0.30.11: resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==} + make-dir@2.1.0: + resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==} + engines: {node: '>=6'} + make-dir@4.0.0: resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} engines: {node: '>=10'} @@ -5504,6 +6574,9 @@ packages: resolution: {integrity: sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==} engines: {node: '>=6'} + marky@1.2.5: + resolution: {integrity: sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q==} + matcher@5.0.0: resolution: {integrity: sha512-s2EMBOWtXFc8dgqvoAzKJXxNHibcdJMV0gwqKUaw9E2JBJuGUK7DrNKrA6g/i+v72TT16+6sVm5mS3thaMLQUw==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -5524,6 +6597,9 @@ packages: resolution: {integrity: sha512-F2t4YIv9XQUBHt6AOJ0y7lSmP1+cY7Fm1DRh9GClTGzKST7UWLMx6ly9WZdLH/G/ppM5RL4MlQfRT71ri9t19A==} engines: {node: '>=12.20'} + memoize-one@5.2.1: + resolution: {integrity: sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==} + memorystream@0.3.1: resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==} engines: {node: '>= 0.10.0'} @@ -5531,6 +6607,10 @@ packages: merge-descriptors@1.0.1: resolution: {integrity: sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==} + merge-options@3.0.4: + resolution: {integrity: sha512-2Sug1+knBjkaMsMgf1ctR1Ujx+Ayku4EdJN4Z+C2+JzoeF7A3OZ9KM2GY0CpQS51NR61LTurMJrRKPhSs3ZRTQ==} + engines: {node: '>=10'} + merge-stream@2.0.0: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} @@ -5542,6 +6622,64 @@ packages: resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} engines: {node: '>= 0.6'} + metro-babel-transformer@0.80.12: + resolution: {integrity: sha512-YZziRs0MgA3pzCkkvOoQRXjIoVjvrpi/yRlJnObyIvMP6lFdtyG4nUGIwGY9VXnBvxmXD6mPY2e+NSw6JAyiRg==} + engines: {node: '>=18'} + + metro-cache-key@0.80.12: + resolution: {integrity: sha512-o4BspKnugg/pE45ei0LGHVuBJXwRgruW7oSFAeSZvBKA/sGr0UhOGY3uycOgWInnS3v5yTTfiBA9lHlNRhsvGA==} + engines: {node: '>=18'} + + metro-cache@0.80.12: + resolution: {integrity: sha512-p5kNHh2KJ0pbQI/H7ZBPCEwkyNcSz7OUkslzsiIWBMPQGFJ/xArMwkV7I+GJcWh+b4m6zbLxE5fk6fqbVK1xGA==} + engines: {node: '>=18'} + + metro-config@0.80.12: + resolution: {integrity: sha512-4rwOWwrhm62LjB12ytiuR5NgK1ZBNr24/He8mqCsC+HXZ+ATbrewLNztzbAZHtFsrxP4D4GLTGgh96pCpYLSAQ==} + engines: {node: '>=18'} + + metro-core@0.80.12: + resolution: {integrity: sha512-QqdJ/yAK+IpPs2HU/h5v2pKEdANBagSsc6DRSjnwSyJsCoHlmyJKCaCJ7KhWGx+N4OHxh37hoA8fc2CuZbx0Fw==} + engines: {node: '>=18'} + + metro-file-map@0.80.12: + resolution: {integrity: sha512-sYdemWSlk66bWzW2wp79kcPMzwuG32x1ZF3otI0QZTmrnTaaTiGyhE66P1z6KR4n2Eu5QXiABa6EWbAQv0r8bw==} + engines: {node: '>=18'} + + metro-minify-terser@0.80.12: + resolution: {integrity: sha512-muWzUw3y5k+9083ZoX9VaJLWEV2Jcgi+Oan0Mmb/fBNMPqP9xVDuy4pOMn/HOiGndgfh/MK7s4bsjkyLJKMnXQ==} + engines: {node: '>=18'} + + metro-resolver@0.80.12: + resolution: {integrity: sha512-PR24gYRZnYHM3xT9pg6BdbrGbM/Cu1TcyIFBVlAk7qDAuHkUNQ1nMzWumWs+kwSvtd9eZGzHoucGJpTUEeLZAw==} + engines: {node: '>=18'} + + metro-runtime@0.80.12: + resolution: {integrity: sha512-LIx7+92p5rpI0i6iB4S4GBvvLxStNt6fF0oPMaUd1Weku7jZdfkCZzmrtDD9CSQ6EPb0T9NUZoyXIxlBa3wOCw==} + engines: {node: '>=18'} + + metro-source-map@0.80.12: + resolution: {integrity: sha512-o+AXmE7hpvM8r8MKsx7TI21/eerYYy2DCDkWfoBkv+jNkl61khvDHlQn0cXZa6lrcNZiZkl9oHSMcwLLIrFmpw==} + engines: {node: '>=18'} + + metro-symbolicate@0.80.12: + resolution: {integrity: sha512-/dIpNdHksXkGHZXARZpL7doUzHqSNxgQ8+kQGxwpJuHnDhGkENxB5PS2QBaTDdEcmyTMjS53CN1rl9n1gR6fmw==} + engines: {node: '>=18'} + hasBin: true + + metro-transform-plugins@0.80.12: + resolution: {integrity: sha512-WQWp00AcZvXuQdbjQbx1LzFR31IInlkCDYJNRs6gtEtAyhwpMMlL2KcHmdY+wjDO9RPcliZ+Xl1riOuBecVlPA==} + engines: {node: '>=18'} + + metro-transform-worker@0.80.12: + resolution: {integrity: sha512-KAPFN1y3eVqEbKLx1I8WOarHPqDMUa8WelWxaJCNKO/yHCP26zELeqTJvhsQup+8uwB6EYi/sp0b6TGoh6lOEA==} + engines: {node: '>=18'} + + metro@0.80.12: + resolution: {integrity: sha512-1UsH5FzJd9quUsD1qY+zUG4JY3jo3YEMxbMYH9jT6NK3j4iORhlwTK8fYTfAUBhDKjgLfKjAh7aoazNE23oIRA==} + engines: {node: '>=18'} + hasBin: true + micro-spelling-correcter@1.1.1: resolution: {integrity: sha512-lkJ3Rj/mtjlRcHk6YyCbvZhyWTOzdBvTHsxMmZSk5jxN1YyVSQ+JETAom55mdzfcyDrY/49Z7UCW760BK30crg==} @@ -5562,6 +6700,11 @@ packages: engines: {node: '>=4'} hasBin: true + mime@2.6.0: + resolution: {integrity: sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==} + engines: {node: '>=4.0.0'} + hasBin: true + mimic-fn@2.1.0: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} engines: {node: '>=6'} @@ -5691,6 +6834,9 @@ packages: native-promise-only@0.8.1: resolution: {integrity: sha512-zkVhZUA3y8mbz652WrL5x0fB0ehrBkulWT3TomAQ9iDtyXZvzKeEA6GPxAItBYeNYl5yngKRX612qHOhvMkDeg==} + natural-compare-lite@1.4.0: + resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} + natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} @@ -5698,6 +6844,13 @@ packages: resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} engines: {node: '>= 0.6'} + negotiator@0.6.4: + resolution: {integrity: sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==} + engines: {node: '>= 0.6'} + + neo-async@2.6.2: + resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} + netmask@2.0.2: resolution: {integrity: sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==} engines: {node: '>= 0.4.0'} @@ -5708,6 +6861,17 @@ packages: no-case@3.0.4: resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} + nocache@3.0.4: + resolution: {integrity: sha512-WDD0bdg9mbq6F4mRxEYcPWwfA1vxd0mrvKOyxI7Xj/atfRHVeutzuWByG//jfm4uPzp0y4Kj051EORCBSQMycw==} + engines: {node: '>=12.0.0'} + + node-abort-controller@3.1.1: + resolution: {integrity: sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==} + + node-dir@0.1.17: + resolution: {integrity: sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg==} + engines: {node: '>= 0.10.5'} + node-domexception@1.0.0: resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==} engines: {node: '>=10.5.0'} @@ -5725,6 +6889,10 @@ packages: resolution: {integrity: sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + node-forge@1.3.1: + resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==} + engines: {node: '>= 6.13.0'} + node-gyp@7.1.2: resolution: {integrity: sha512-CbpcIo7C3eMu3dL1c3d0xw449fHIGALIJsRP4DDPHpyiW8vcriNY7ubh9TE4zEKfSxscY7PjeFnshE7h75ynjQ==} engines: {node: '>= 10.12.0'} @@ -5736,6 +6904,10 @@ packages: node-releases@2.0.18: resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==} + node-stream-zip@1.15.0: + resolution: {integrity: sha512-LN4fydt9TqhZhThkZIVQnF9cwjU3qmUH9h78Mx/K7d3VvfRqqwthLwJEUOEL0QPZ0XQmNN7be5Ggit5+4dq3Bw==} + engines: {node: '>=0.12.0'} + nofilter@3.1.0: resolution: {integrity: sha512-l2NNj07e9afPnhAhvgVrCD/oy2Ai1yfLpuo3EpiO1jFTsB4sFz6oIfAfSZyQzVpkZQ9xS8ZS5g1jCBgq4Hwo0g==} engines: {node: '>=12.19'} @@ -5807,6 +6979,9 @@ packages: resolution: {integrity: sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==} deprecated: This package is no longer supported. + nullthrows@1.1.1: + resolution: {integrity: sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==} + number-is-nan@1.0.1: resolution: {integrity: sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==} engines: {node: '>=0.10.0'} @@ -5817,6 +6992,10 @@ packages: oauth-sign@0.9.0: resolution: {integrity: sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==} + ob1@0.80.12: + resolution: {integrity: sha512-VMArClVT6LkhUGpnuEoBuyjG9rzUyEzg4PDkav6wK1cLhOK02gPCYFxoiB4mqVnrMhDpIzJcrGNAMVi9P+hXrw==} + engines: {node: '>=18'} + object-assign@4.1.1: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} @@ -5841,6 +7020,18 @@ packages: resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} engines: {node: '>= 0.4'} + object.entries@1.1.8: + resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==} + engines: {node: '>= 0.4'} + + object.fromentries@2.0.8: + resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} + engines: {node: '>= 0.4'} + + object.values@1.2.0: + resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==} + engines: {node: '>= 0.4'} + on-finished@2.3.0: resolution: {integrity: sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==} engines: {node: '>= 0.8'} @@ -5864,6 +7055,14 @@ packages: resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} engines: {node: '>=12'} + open@6.4.0: + resolution: {integrity: sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==} + engines: {node: '>=8'} + + open@7.4.2: + resolution: {integrity: sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==} + engines: {node: '>=8'} + optionator@0.9.4: resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} engines: {node: '>= 0.8.0'} @@ -5904,6 +7103,10 @@ packages: resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + p-locate@3.0.0: + resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==} + engines: {node: '>=6'} + p-locate@4.1.0: resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} engines: {node: '>=8'} @@ -5982,8 +7185,8 @@ packages: resolution: {integrity: sha512-Tpb8Z7r7XbbtBTrM9UhpkzzaMrqA2VXMT3YChzYltwV3P3pM6t8wl7TvpMnSTosz1aQAdVib7kdoys7vYOPerw==} engines: {node: '>=12'} - parse5@6.0.1: - resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} + parse5@7.2.1: + resolution: {integrity: sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==} parseurl@1.3.3: resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} @@ -5995,6 +7198,10 @@ packages: path-case@3.0.4: resolution: {integrity: sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg==} + path-exists@3.0.0: + resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} + engines: {node: '>=4'} + path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} @@ -6069,6 +7276,10 @@ packages: resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==} engines: {node: '>=4'} + pify@4.0.1: + resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} + engines: {node: '>=6'} + pirates@4.0.6: resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} engines: {node: '>= 6'} @@ -6077,6 +7288,10 @@ packages: resolution: {integrity: sha512-7dmgi4UY4qk+4mj5Cd8v/GExPo0K+SlY+hulOSdfZ/T6jVH6//y7NtzZo5WrfhDBxuQ0jCa7fLZmNaNh7EWL/w==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + pkg-dir@3.0.0: + resolution: {integrity: sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==} + engines: {node: '>=6'} + pkg-dir@4.2.0: resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} engines: {node: '>=8'} @@ -6100,6 +7315,10 @@ packages: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} + prettier-linter-helpers@1.0.0: + resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==} + engines: {node: '>=6.0.0'} + pretty-format@26.6.2: resolution: {integrity: sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==} engines: {node: '>= 10'} @@ -6138,10 +7357,16 @@ packages: resolution: {integrity: sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==} engines: {node: '>=10'} + promise@8.3.0: + resolution: {integrity: sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==} + prompts@2.4.2: resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} engines: {node: '>= 6'} + prop-types@15.8.1: + resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} + proxy-addr@2.0.7: resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} engines: {node: '>= 0.10'} @@ -6180,6 +7405,9 @@ packages: typescript: optional: true + pure-rand@6.1.0: + resolution: {integrity: sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==} + qs@6.11.0: resolution: {integrity: sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==} engines: {node: '>=0.6'} @@ -6195,6 +7423,11 @@ packages: resolution: {integrity: sha512-hh2WYhq4fi8+b+/2Kg9CEge4fDPvHS534aOOvOZeQ3+Vf2mCFsaFBYj0i+iXcAq6I9Vzp5fjMFBlONvayDC1qg==} engines: {node: '>=6'} + querystring@0.2.1: + resolution: {integrity: sha512-wkvS7mL/JMugcup3/rMitHmd9ecIGd2lhFhK9N3UUQ450h66d1r3Y9nvXzQAW1Lq+wyx61k/1pfKS5KuKiyEbg==} + engines: {node: '>=0.4.x'} + deprecated: The querystring API is considered Legacy. new code should use the URLSearchParams API instead. + querystringify@2.2.0: resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==} @@ -6204,6 +7437,9 @@ packages: queue-tick@1.0.1: resolution: {integrity: sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==} + queue@6.0.2: + resolution: {integrity: sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==} + quick-lru@5.1.1: resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} engines: {node: '>=10'} @@ -6222,12 +7458,42 @@ packages: resolution: {integrity: sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==} engines: {node: '>= 0.8'} + react-devtools-core@5.3.2: + resolution: {integrity: sha512-crr9HkVrDiJ0A4zot89oS0Cgv0Oa4OG1Em4jit3P3ZxZSKPMYyMjfwMqgcJna9o625g8oN87rBm8SWWrSTBZxg==} + + react-is@16.13.1: + resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} + react-is@17.0.2: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} react-is@18.3.1: resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} + react-native@0.74.5: + resolution: {integrity: sha512-Bgg2WvxaGODukJMTZFTZBNMKVaROHLwSb8VAGEdrlvKwfb1hHg/3aXTUICYk7dwgAnb+INbGMwnF8yeAgIUmqw==} + engines: {node: '>=18'} + hasBin: true + peerDependencies: + '@types/react': ^18.2.6 + react: 18.2.0 + peerDependenciesMeta: + '@types/react': + optional: true + + react-refresh@0.14.2: + resolution: {integrity: sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==} + engines: {node: '>=0.10.0'} + + react-shallow-renderer@16.15.0: + resolution: {integrity: sha512-oScf2FqQ9LFVQgA73vr86xl2NaOIX73rh+YFqcOp68CWj56tSfgtGKrEbyhCj0rSijyG9M1CYprTh39fBi5hzA==} + peerDependencies: + react: ^16.0.0 || ^17.0.0 || ^18.0.0 + + react@18.2.0: + resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} + engines: {node: '>=0.10.0'} + read-package-json-fast@2.0.3: resolution: {integrity: sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==} engines: {node: '>=10'} @@ -6262,13 +7528,37 @@ packages: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} + readline@1.3.0: + resolution: {integrity: sha512-k2d6ACCkiNYz222Fs/iNze30rRJ1iIicW7JuX/7/cozvih6YCkFZH+J6mAFDVgv0dRBaAyr4jDqC95R2y4IADg==} + + recast@0.21.5: + resolution: {integrity: sha512-hjMmLaUXAm1hIuTqOdeYObMslq/q+Xff6QE3Y2P+uoHAg2nmVlLBps2hzh1UJDdMtDTMXOFewK6ky51JQIeECg==} + engines: {node: '>= 4'} + recursive-readdir@2.2.3: resolution: {integrity: sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==} engines: {node: '>=6.0.0'} + reflect.getprototypeof@1.0.6: + resolution: {integrity: sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==} + engines: {node: '>= 0.4'} + + regenerate-unicode-properties@10.2.0: + resolution: {integrity: sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==} + engines: {node: '>=4'} + + regenerate@1.4.2: + resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} + + regenerator-runtime@0.13.11: + resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} + regenerator-runtime@0.14.1: resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} + regenerator-transform@0.15.2: + resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} + regexp.prototype.flags@1.5.2: resolution: {integrity: sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==} engines: {node: '>= 0.4'} @@ -6277,6 +7567,17 @@ packages: resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==} engines: {node: '>=8'} + regexpu-core@6.1.1: + resolution: {integrity: sha512-k67Nb9jvwJcJmVpw0jPttR1/zVfnKf8Km0IPatrU/zJ5XeG3+Slx0xLXs9HByJSzXzrlz5EDvN6yLNMDc2qdnw==} + engines: {node: '>=4'} + + regjsgen@0.8.0: + resolution: {integrity: sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==} + + regjsparser@0.11.2: + resolution: {integrity: sha512-3OGZZ4HoLJkkAZx/48mTXJNlmqTGOzc0o9OWQPuWpkOlXXPbyN6OafCcoXUnBqE2D3f/T5L+pWc1kdEmnfnRsA==} + hasBin: true + remove-trailing-separator@1.1.0: resolution: {integrity: sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==} @@ -6293,6 +7594,9 @@ packages: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} engines: {node: '>=0.10.0'} + require-main-filename@2.0.0: + resolution: {integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==} + requires-port@1.0.0: resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} @@ -6303,6 +7607,10 @@ packages: resolution: {integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==} engines: {node: '>=8'} + resolve-from@3.0.0: + resolution: {integrity: sha512-GnlH6vxLymXJNMBo7XP1fJIzBFbdYt49CuTwmB/6N53t+kMPRMFKz783LlQ4tv28XoQfMWinAJX6WCGf2IlaIw==} + engines: {node: '>=4'} + resolve-from@4.0.0: resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} engines: {node: '>=4'} @@ -6311,14 +7619,18 @@ packages: resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} engines: {node: '>=8'} - resolve.exports@1.1.1: - resolution: {integrity: sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==} + resolve.exports@2.0.2: + resolution: {integrity: sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==} engines: {node: '>=10'} resolve@1.22.8: resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} hasBin: true + resolve@2.0.0-next.5: + resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} + hasBin: true + responselike@2.0.1: resolution: {integrity: sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==} @@ -6344,6 +7656,11 @@ packages: rgb2hex@0.2.5: resolution: {integrity: sha512-22MOP1Rh7sAo1BZpDG6R5RFYzR2lYEgwq7HEmyW2qcsOqR2lQKmn+O//xV3YG/0rrhMC6KVX2hU+ZXuaw9a5bw==} + rimraf@2.6.3: + resolution: {integrity: sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==} + deprecated: Rimraf versions prior to v4 are no longer supported + hasBin: true + rimraf@3.0.2: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} deprecated: Rimraf versions prior to v4 are no longer supported @@ -6447,8 +7764,15 @@ packages: resolution: {integrity: sha512-wq89BtE7xb4ns7ApbgAshaUgXHlPoseytPTNwaVQNPwAaD+0klYpBrsCy/Lj77EJ+kf/vKvX1tjhRT67eDyCXg==} hasBin: true - saxes@5.0.1: - resolution: {integrity: sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==} + saxes@6.0.0: + resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==} + engines: {node: '>=v12.22.7'} + + scheduler@0.24.0-canary-efb381bbf-20230505: + resolution: {integrity: sha512-ABvovCDe/k9IluqSh4/ISoq8tIJnW8euVAWYt5j/bg6dRnqwQwiGO1F/V4AyK96NGF/FB04FhOUDuWj8IKfABA==} + + selfsigned@2.4.1: + resolution: {integrity: sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==} engines: {node: '>=10'} semver@5.7.2: @@ -6475,6 +7799,10 @@ packages: resolution: {integrity: sha512-2G2y++21dhj2R7iHAdd0FIzjGwuKZld+7Pl/bTU6YIkrC2ZMbVUjm+luj6A6V34Rv9XfKJDKpTWu9W4Gse1D9g==} engines: {node: '>=14.16'} + serialize-error@2.1.0: + resolution: {integrity: sha512-ghgmKt5o4Tly5yEG/UJp8qTd0AN7Xalw4XBtDEKP655B699qMEtra1WlXeE6WIvdEG481JvRxULKsInq/iNysw==} + engines: {node: '>=0.10.0'} + serialize-error@7.0.1: resolution: {integrity: sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==} engines: {node: '>=10'} @@ -6506,6 +7834,10 @@ packages: sha1@1.1.1: resolution: {integrity: sha512-dZBS6OrMjtgVkopB1Gmo4RQCDKiZsqcpAQpkV/aaj+FCrCg8r4I4qMkDPQjBgLIxlmu9k4nUbWq6ohXahOneYA==} + shallow-clone@3.0.1: + resolution: {integrity: sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==} + engines: {node: '>=8'} + shebang-command@1.2.0: resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} engines: {node: '>=0.10.0'} @@ -6551,6 +7883,10 @@ packages: resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} engines: {node: '>=12'} + slice-ansi@2.1.0: + resolution: {integrity: sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==} + engines: {node: '>=6'} + slice-ansi@5.0.0: resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} engines: {node: '>=12'} @@ -6574,6 +7910,9 @@ packages: resolution: {integrity: sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==} engines: {node: '>= 10.0.0', npm: '>= 3.0.0'} + source-map-support@0.5.13: + resolution: {integrity: sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==} + source-map-support@0.5.21: resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} @@ -6654,6 +7993,17 @@ packages: resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==} engines: {node: '>=10'} + stackframe@1.3.4: + resolution: {integrity: sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==} + + stacktrace-parser@0.1.10: + resolution: {integrity: sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==} + engines: {node: '>=6'} + + statuses@1.5.0: + resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==} + engines: {node: '>= 0.6'} + statuses@2.0.1: resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} engines: {node: '>= 0.8'} @@ -6681,6 +8031,9 @@ packages: resolution: {integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==} engines: {node: '>=10'} + string-natural-compare@3.0.1: + resolution: {integrity: sha512-n3sPwynL1nwKi3WJ6AIsClwBMa0zTi54fn2oLU6ndfTSIO05xaznjSf15PcBZU6FNWbmN5Q6cxT4V5hGvB4taw==} + string-width@1.0.2: resolution: {integrity: sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==} engines: {node: '>=0.10.0'} @@ -6693,10 +8046,17 @@ packages: resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} engines: {node: '>=12'} + string.prototype.matchall@4.0.11: + resolution: {integrity: sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==} + engines: {node: '>= 0.4'} + string.prototype.padend@3.1.6: resolution: {integrity: sha512-XZpspuSB7vJWhvJc9DLSlrXl1mcA2BdoY5jjnS135ydXqLoqhs96JjDtCkjJEQHvfqZIp9hBuBMgI589peyx9Q==} engines: {node: '>= 0.4'} + string.prototype.repeat@1.0.0: + resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} + string.prototype.trim@1.2.9: resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==} engines: {node: '>= 0.4'} @@ -6718,6 +8078,10 @@ packages: resolution: {integrity: sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==} engines: {node: '>=0.10.0'} + strip-ansi@5.2.0: + resolution: {integrity: sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==} + engines: {node: '>=6'} + strip-ansi@6.0.1: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} @@ -6749,6 +8113,9 @@ packages: strnum@1.0.5: resolution: {integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==} + sudo-prompt@9.2.1: + resolution: {integrity: sha512-Mu7R0g4ig9TUuGSxJavny5Rv0egCEtpZRNMrZaYS1vxkiIxGiGUwoezU3LazIQ+KE04hTrTfNPgxU5gzi7F5Pw==} + supertap@3.0.1: resolution: {integrity: sha512-u1ZpIBCawJnO+0QePsEiOknOfCRq0yERxiAchT0i4li0WHNUJbf0evXXSXOcCAR4M8iMDoajXYmstm/qO81Isw==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -6765,10 +8132,6 @@ packages: resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} engines: {node: '>=10'} - supports-hyperlinks@2.3.0: - resolution: {integrity: sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==} - engines: {node: '>=8'} - supports-preserve-symlinks-flag@1.0.0: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} @@ -6803,13 +8166,17 @@ packages: tcp-port-used@1.0.2: resolution: {integrity: sha512-l7ar8lLUD3XS1V2lfoJlCBaeoaWo/2xfYt81hM7VlvR4RrMVFqfmzfhLVk40hAb368uitje5gPtBRL1m/DGvLA==} + temp-dir@2.0.0: + resolution: {integrity: sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==} + engines: {node: '>=8'} + temp-dir@3.0.0: resolution: {integrity: sha512-nHc6S/bwIilKHNRgK/3jlhDoIHcp45YgyiwcAk46Tr0LfEqGBVpmiAyuiuxeVE44m3mXnEeVhaipLOEWmH+Njw==} engines: {node: '>=14.16'} - terminal-link@2.1.1: - resolution: {integrity: sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==} - engines: {node: '>=8'} + temp@0.8.4: + resolution: {integrity: sha512-s0ZZzd0BzYv5tLSptZooSjK8oj6C+c19p7Vqta9+6NPOf7r+fxq0cJe6/oN4LTC79sy5NY8ucOJNgwsKCSbfqg==} + engines: {node: '>=6.0.0'} terser@5.31.6: resolution: {integrity: sha512-PQ4DAriWzKj+qgehQ7LK5bQqCFNMmlhjR2PFFLuqGCpuCAauxemVBWwWOxo3UIwWQx8+Pr61Df++r76wDmkQBg==} @@ -6826,8 +8193,11 @@ packages: text-table@0.2.0: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} - throat@6.0.2: - resolution: {integrity: sha512-WKexMoJj3vEuK0yFEapj8y64V0A6xcuPuK9Gt1d0R+dzCSJc0lHqQytAbSB4cDAK0dWh4T0E2ETkoLE2WZ41OQ==} + throat@5.0.0: + resolution: {integrity: sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==} + + through2@2.0.5: + resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==} through@2.3.8: resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} @@ -6873,9 +8243,9 @@ packages: tr46@0.0.3: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} - tr46@2.1.0: - resolution: {integrity: sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==} - engines: {node: '>=8'} + tr46@3.0.0: + resolution: {integrity: sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==} + engines: {node: '>=12'} trouter@2.0.1: resolution: {integrity: sha512-kr8SKKw94OI+xTGOkfsvwZQ8mWoikZDd2n8XZHjJVZUARZT+4/VV6cacRS6CLsH9bNm+HFIPU1Zx4CnNnb4qlQ==} @@ -6887,21 +8257,24 @@ packages: peerDependencies: typescript: ^3.x || ^4.x - ts-jest@27.1.5: - resolution: {integrity: sha512-Xv6jBQPoBEvBq/5i2TeSG9tt/nqkbpcurrEG1b+2yfBrcJelOZF9Ml6dmyMh7bcW9JyFbRYpR5rxROSlBLTZHA==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + ts-jest@29.2.5: + resolution: {integrity: sha512-KD8zB2aAZrcKIdGk4OwpJggeLcH1FgrICqDSROWqlnJXGCXK4Mn6FcdK2B6670Xr73lHMG1kHw8R87A0ecZ+vA==} + engines: {node: ^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: '@babel/core': '>=7.0.0-beta.0 <8' - '@types/jest': ^27.0.0 - babel-jest: '>=27.0.0 <28' + '@jest/transform': ^29.0.0 + '@jest/types': ^29.0.0 + babel-jest: ^29.0.0 esbuild: '*' - jest: ^27.0.0 - typescript: '>=3.8 <5.0' + jest: ^29.0.0 + typescript: '>=4.3 <6' peerDependenciesMeta: '@babel/core': optional: true - '@types/jest': + '@jest/transform': + optional: true + '@jest/types': optional: true babel-jest: optional: true @@ -6964,6 +8337,10 @@ packages: resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} engines: {node: '>=10'} + type-fest@0.7.1: + resolution: {integrity: sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==} + engines: {node: '>=8'} + type-fest@2.13.0: resolution: {integrity: sha512-lPfAm42MxE4/456+QyIaaVBAwgpJb6xZ8PRu09utnhPdWwcyj9vgy6Sq0Z5yNbJ21EdxB5dRU/Qg8bsyAMtlcw==} engines: {node: '>=12.20'} @@ -7000,9 +8377,6 @@ packages: resolution: {integrity: sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==} engines: {node: '>= 0.4'} - typedarray-to-buffer@3.1.5: - resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==} - typescript@4.6.4: resolution: {integrity: sha512-9ia/jWHIEbo49HfjrLGfKbZSuWo9iTMwXO+Ca3pRsSpbsMbc7/IU8NKdCZVRRBafVPGnoJeFL76ZOAA84I9fEg==} engines: {node: '>=4.2.0'} @@ -7023,12 +8397,32 @@ packages: undici-types@6.19.8: resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} + unicode-canonical-property-names-ecmascript@2.0.1: + resolution: {integrity: sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==} + engines: {node: '>=4'} + + unicode-match-property-ecmascript@2.0.0: + resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==} + engines: {node: '>=4'} + + unicode-match-property-value-ecmascript@2.2.0: + resolution: {integrity: sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg==} + engines: {node: '>=4'} + + unicode-property-aliases-ecmascript@2.1.0: + resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==} + engines: {node: '>=4'} + unique-filename@1.1.1: resolution: {integrity: sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==} unique-slug@2.0.2: resolution: {integrity: sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==} + universalify@0.1.2: + resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} + engines: {node: '>= 4.0.0'} + universalify@0.2.0: resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==} engines: {node: '>= 4.0.0'} @@ -7047,6 +8441,12 @@ packages: peerDependencies: browserslist: '>= 4.21.0' + update-browserslist-db@1.1.1: + resolution: {integrity: sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + upper-case-first@2.0.2: resolution: {integrity: sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg==} @@ -7092,8 +8492,8 @@ packages: v8-compile-cache@2.4.0: resolution: {integrity: sha512-ocyWc3bAHBB/guyqJQVI5o4BZkPhznPYUG2ea80Gond/BgNWpap8TOmLSeeQG7bnh2KMISxskdADG59j7zruhw==} - v8-to-istanbul@8.1.1: - resolution: {integrity: sha512-FGtKtv3xIpR6BYhvgH8MI/y78oT7d8Au3ww4QIxymrCtZEh5b8gCw2siywE+puhEmuWKDtmfrvF5UlB298ut3w==} + v8-to-istanbul@9.3.0: + resolution: {integrity: sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==} engines: {node: '>=10.12.0'} validate-npm-package-license@3.0.4: @@ -7117,13 +8517,12 @@ packages: resolution: {integrity: sha512-LII3bXRFBZLlezoG5FfZVcXflZgWP/4dCwKtxd5ky9+LOtM4CS3bIRQsmR1KMnMW07jpE8fqR2lcxPZ+8sJIcw==} engines: {node: '>= 0.10'} - w3c-hr-time@1.0.2: - resolution: {integrity: sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==} - deprecated: Use your platform's native performance.now() and performance.timeOrigin. + vlq@1.0.1: + resolution: {integrity: sha512-gQpnTgkubC6hQgdIcRdYGDSDc+SaujOdyesZQMv6JlfQee/9Mp0Qhnys6WxDWvQnL5WZdT7o2Ul187aSt0Rq+w==} - w3c-xmlserializer@2.0.0: - resolution: {integrity: sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==} - engines: {node: '>=10'} + w3c-xmlserializer@4.0.0: + resolution: {integrity: sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==} + engines: {node: '>=14'} wait-port@1.1.0: resolution: {integrity: sha512-3e04qkoN3LxTMLakdqeWth8nih8usyg+sf1Bgdf9wwUkp05iuK1eSY/QpLvscT/+F/gA89+LpUmmgBtesbqI2Q==} @@ -7195,41 +8594,46 @@ packages: webidl-conversions@3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} - webidl-conversions@5.0.0: - resolution: {integrity: sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==} - engines: {node: '>=8'} - - webidl-conversions@6.1.0: - resolution: {integrity: sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==} - engines: {node: '>=10.4'} + webidl-conversions@7.0.0: + resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} + engines: {node: '>=12'} well-known-symbols@2.0.0: resolution: {integrity: sha512-ZMjC3ho+KXo0BfJb7JgtQ5IBuvnShdlACNkKkdsqBmYw3bPAaJfPeYUo6tLUaT5tG/Gkh7xkpBhKRQ9e7pyg9Q==} engines: {node: '>=6'} - whatwg-encoding@1.0.5: - resolution: {integrity: sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==} + whatwg-encoding@2.0.0: + resolution: {integrity: sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==} + engines: {node: '>=12'} whatwg-fetch@3.6.20: resolution: {integrity: sha512-EqhiFU6daOA8kpjOWTL0olhVOF3i7OrFzSYiGsEMB8GcXS+RrzauAERX65xMeNWVqxA6HXH2m69Z9LaKKdisfg==} - whatwg-mimetype@2.3.0: - resolution: {integrity: sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==} + whatwg-mimetype@3.0.0: + resolution: {integrity: sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==} + engines: {node: '>=12'} + + whatwg-url@11.0.0: + resolution: {integrity: sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==} + engines: {node: '>=12'} whatwg-url@5.0.0: resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} - whatwg-url@8.7.0: - resolution: {integrity: sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==} - engines: {node: '>=10'} - which-boxed-primitive@1.0.2: resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} + which-builtin-type@1.1.4: + resolution: {integrity: sha512-bppkmBSsHFmIMSl8BO9TbsyzsvGjVoppt8xUiGzwiu/bhDCGxnpOKCxgqj6GuyHE0mINMDecBFPlOm2hzY084w==} + engines: {node: '>= 0.4'} + which-collection@1.0.2: resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} engines: {node: '>= 0.4'} + which-module@2.0.1: + resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==} + which-typed-array@1.1.15: resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==} engines: {node: '>= 0.4'} @@ -7274,13 +8678,20 @@ packages: wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - write-file-atomic@3.0.3: - resolution: {integrity: sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==} + write-file-atomic@2.4.3: + resolution: {integrity: sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==} + + write-file-atomic@4.0.2: + resolution: {integrity: sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} write-file-atomic@5.0.1: resolution: {integrity: sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + ws@6.2.3: + resolution: {integrity: sha512-jmTjYU0j60B+vHey6TfR3Z7RD61z/hmxBS3VMSGIrroOWXQEneK1zNuotOUrGyBHQj0yrpsLHPWtigEFd13ndA==} + ws@7.5.10: resolution: {integrity: sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==} engines: {node: '>=8.3.0'} @@ -7317,8 +8728,9 @@ packages: utf-8-validate: optional: true - xml-name-validator@3.0.0: - resolution: {integrity: sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==} + xml-name-validator@4.0.0: + resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==} + engines: {node: '>=12'} xmlchars@2.2.0: resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==} @@ -7327,6 +8739,9 @@ packages: resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} engines: {node: '>=0.4'} + y18n@4.0.3: + resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==} + y18n@5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} @@ -7337,17 +8752,22 @@ packages: yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - yargs-parser@20.2.9: - resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} - engines: {node: '>=10'} + yaml@2.6.0: + resolution: {integrity: sha512-a6ae//JvKDEra2kdi1qzCyrJW/WZCgFi8ydDV+eXExl95t+5R+ijnqHJbz9tmMh8FUjx3iv2fCQ4dclAQlO2UQ==} + engines: {node: '>= 14'} + hasBin: true + + yargs-parser@18.1.3: + resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==} + engines: {node: '>=6'} yargs-parser@21.1.1: resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} engines: {node: '>=12'} - yargs@16.2.0: - resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} - engines: {node: '>=10'} + yargs@15.4.1: + resolution: {integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==} + engines: {node: '>=8'} yargs@17.7.1: resolution: {integrity: sha512-cwiTb08Xuv5fqF4AovYacTFNxk62th7LKJ6BL9IGUpTJrWoU7/7WdQGTP2SjKf1dUNBGzDd28p/Yfs/GI6JrLw==} @@ -7409,20 +8829,28 @@ snapshots: '@babel/highlight': 7.24.7 picocolors: 1.1.0 + '@babel/code-frame@7.26.2': + dependencies: + '@babel/helper-validator-identifier': 7.25.9 + js-tokens: 4.0.0 + picocolors: 1.1.0 + '@babel/compat-data@7.25.4': {} + '@babel/compat-data@7.26.2': {} + '@babel/core@7.25.2': dependencies: '@ampproject/remapping': 2.3.0 - '@babel/code-frame': 7.24.7 - '@babel/generator': 7.25.6 - '@babel/helper-compilation-targets': 7.25.2 - '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2) + '@babel/code-frame': 7.26.2 + '@babel/generator': 7.26.2 + '@babel/helper-compilation-targets': 7.25.9 + '@babel/helper-module-transforms': 7.26.0(@babel/core@7.25.2) '@babel/helpers': 7.25.6 - '@babel/parser': 7.25.6 - '@babel/template': 7.25.0 - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 + '@babel/parser': 7.26.2 + '@babel/template': 7.25.9 + '@babel/traverse': 7.25.9 + '@babel/types': 7.26.0 convert-source-map: 2.0.0 debug: 4.3.6 gensync: 1.0.0-beta.2 @@ -7431,6 +8859,14 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/eslint-parser@7.25.9(@babel/core@7.25.2)(eslint@8.11.0)': + dependencies: + '@babel/core': 7.25.2 + '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1 + eslint: 8.11.0 + eslint-visitor-keys: 2.1.0 + semver: 6.3.1 + '@babel/generator@7.25.6': dependencies: '@babel/types': 7.25.6 @@ -7438,50 +8874,154 @@ snapshots: '@jridgewell/trace-mapping': 0.3.25 jsesc: 2.5.2 + '@babel/generator@7.26.2': + dependencies: + '@babel/parser': 7.26.2 + '@babel/types': 7.26.0 + '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/trace-mapping': 0.3.25 + jsesc: 3.0.2 + + '@babel/helper-annotate-as-pure@7.25.9': + dependencies: + '@babel/types': 7.26.0 + '@babel/helper-compilation-targets@7.25.2': dependencies: '@babel/compat-data': 7.25.4 - '@babel/helper-validator-option': 7.24.8 - browserslist: 4.23.3 + '@babel/helper-validator-option': 7.25.9 + browserslist: 4.24.2 lru-cache: 5.1.1 semver: 6.3.1 - '@babel/helper-module-imports@7.24.7': + '@babel/helper-compilation-targets@7.25.9': + dependencies: + '@babel/compat-data': 7.26.2 + '@babel/helper-validator-option': 7.25.9 + browserslist: 4.24.2 + lru-cache: 5.1.1 + semver: 6.3.1 + + '@babel/helper-create-class-features-plugin@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-annotate-as-pure': 7.25.9 + '@babel/helper-member-expression-to-functions': 7.25.9 + '@babel/helper-optimise-call-expression': 7.25.9 + '@babel/helper-replace-supers': 7.25.9(@babel/core@7.25.2) + '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 + '@babel/traverse': 7.25.9 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/helper-create-regexp-features-plugin@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-annotate-as-pure': 7.25.9 + regexpu-core: 6.1.1 + semver: 6.3.1 + + '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-compilation-targets': 7.25.9 + '@babel/helper-plugin-utils': 7.25.9 + debug: 4.3.6 + lodash.debounce: 4.0.8 + resolve: 1.22.8 + transitivePeerDependencies: + - supports-color + + '@babel/helper-environment-visitor@7.24.7': dependencies: - '@babel/traverse': 7.25.6 '@babel/types': 7.25.6 + + '@babel/helper-member-expression-to-functions@7.25.9': + dependencies: + '@babel/traverse': 7.25.9 + '@babel/types': 7.26.0 transitivePeerDependencies: - supports-color - '@babel/helper-module-transforms@7.25.2(@babel/core@7.25.2)': + '@babel/helper-module-imports@7.25.9': + dependencies: + '@babel/traverse': 7.25.9 + '@babel/types': 7.26.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-module-transforms@7.26.0(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-module-imports': 7.24.7 - '@babel/helper-simple-access': 7.24.7 - '@babel/helper-validator-identifier': 7.24.7 - '@babel/traverse': 7.25.6 + '@babel/helper-module-imports': 7.25.9 + '@babel/helper-validator-identifier': 7.25.9 + '@babel/traverse': 7.25.9 transitivePeerDependencies: - supports-color + '@babel/helper-optimise-call-expression@7.25.9': + dependencies: + '@babel/types': 7.26.0 + '@babel/helper-plugin-utils@7.24.8': {} - '@babel/helper-simple-access@7.24.7': + '@babel/helper-plugin-utils@7.25.9': {} + + '@babel/helper-remap-async-to-generator@7.25.9(@babel/core@7.25.2)': dependencies: - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 + '@babel/core': 7.25.2 + '@babel/helper-annotate-as-pure': 7.25.9 + '@babel/helper-wrap-function': 7.25.9 + '@babel/traverse': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/helper-replace-supers@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-member-expression-to-functions': 7.25.9 + '@babel/helper-optimise-call-expression': 7.25.9 + '@babel/traverse': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/helper-simple-access@7.25.9': + dependencies: + '@babel/traverse': 7.25.9 + '@babel/types': 7.26.0 + transitivePeerDependencies: + - supports-color + + '@babel/helper-skip-transparent-expression-wrappers@7.25.9': + dependencies: + '@babel/traverse': 7.25.9 + '@babel/types': 7.26.0 transitivePeerDependencies: - supports-color '@babel/helper-string-parser@7.24.8': {} + '@babel/helper-string-parser@7.25.9': {} + '@babel/helper-validator-identifier@7.24.7': {} - '@babel/helper-validator-option@7.24.8': {} + '@babel/helper-validator-identifier@7.25.9': {} + + '@babel/helper-validator-option@7.25.9': {} + + '@babel/helper-wrap-function@7.25.9': + dependencies: + '@babel/template': 7.25.9 + '@babel/traverse': 7.25.9 + '@babel/types': 7.26.0 + transitivePeerDependencies: + - supports-color '@babel/helpers@7.25.6': dependencies: - '@babel/template': 7.25.0 - '@babel/types': 7.25.6 + '@babel/template': 7.25.9 + '@babel/types': 7.26.0 '@babel/highlight@7.24.7': dependencies: @@ -7494,6 +9034,75 @@ snapshots: dependencies: '@babel/types': 7.25.6 + '@babel/parser@7.26.2': + dependencies: + '@babel/types': 7.26.0 + + '@babel/plugin-proposal-async-generator-functions@7.20.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-environment-visitor': 7.24.7 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-remap-async-to-generator': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color + + '@babel/plugin-proposal-class-properties@7.18.6(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.24.8 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-proposal-export-default-from@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-proposal-logical-assignment-operators@7.20.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.25.2) + + '@babel/plugin-proposal-nullish-coalescing-operator@7.18.6(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.25.2) + + '@babel/plugin-proposal-numeric-separator@7.18.6(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.25.2) + + '@babel/plugin-proposal-object-rest-spread@7.20.7(@babel/core@7.25.2)': + dependencies: + '@babel/compat-data': 7.25.4 + '@babel/core': 7.25.2 + '@babel/helper-compilation-targets': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-transform-parameters': 7.25.9(@babel/core@7.25.2) + + '@babel/plugin-proposal-optional-catch-binding@7.18.6(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.25.2) + + '@babel/plugin-proposal-optional-chaining@7.21.0(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color + '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -7502,32 +9111,52 @@ snapshots: '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-syntax-export-default-from@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-syntax-flow@7.26.0(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-import-attributes@7.25.6(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-syntax-jsx@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.25.2)': dependencies: @@ -7537,7 +9166,7 @@ snapshots: '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.25.2)': dependencies: @@ -7557,22 +9186,287 @@ snapshots: '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-syntax-typescript@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-arrow-functions@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-async-generator-functions@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-remap-async-to-generator': 7.25.9(@babel/core@7.25.2) + '@babel/traverse': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-async-to-generator@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-module-imports': 7.25.9 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-remap-async-to-generator': 7.25.9(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-block-scoping@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-class-properties@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-classes@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-annotate-as-pure': 7.25.9 + '@babel/helper-compilation-targets': 7.25.9 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-replace-supers': 7.25.9(@babel/core@7.25.2) + '@babel/traverse': 7.25.9 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-computed-properties@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/template': 7.25.9 + + '@babel/plugin-transform-destructuring@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-flow-strip-types@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-syntax-flow': 7.26.0(@babel/core@7.25.2) + + '@babel/plugin-transform-for-of@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-function-name@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-compilation-targets': 7.25.9 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/traverse': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-literals@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-logical-assignment-operators@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-modules-commonjs@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-module-transforms': 7.26.0(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-simple-access': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-named-capturing-groups-regex@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-nullish-coalescing-operator@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-numeric-separator@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-object-rest-spread@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-compilation-targets': 7.25.9 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-transform-parameters': 7.25.9(@babel/core@7.25.2) + + '@babel/plugin-transform-optional-catch-binding@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-optional-chaining@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-parameters@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-private-methods@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-private-property-in-object@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-annotate-as-pure': 7.25.9 + '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-react-display-name@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-react-jsx-self@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-react-jsx-source@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-annotate-as-pure': 7.25.9 + '@babel/helper-module-imports': 7.25.9 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.25.2) + '@babel/types': 7.26.0 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-regenerator@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + regenerator-transform: 0.15.2 + + '@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-module-imports': 7.25.9 + '@babel/helper-plugin-utils': 7.25.9 + babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.25.2) + babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.25.2) + babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.25.2) + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-shorthand-properties@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-spread@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-sticky-regex@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-typescript@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-annotate-as-pure': 7.25.9 + '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 + '@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-unicode-regex@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/preset-flow@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-validator-option': 7.25.9 + '@babel/plugin-transform-flow-strip-types': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.25.2)': + '@babel/preset-typescript@7.26.0(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-validator-option': 7.25.9 + '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-modules-commonjs': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-typescript': 7.25.9(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color - '@babel/plugin-syntax-typescript@7.25.4(@babel/core@7.25.2)': + '@babel/register@7.25.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + clone-deep: 4.0.1 + find-cache-dir: 2.1.0 + make-dir: 2.1.0 + pirates: 4.0.6 + source-map-support: 0.5.21 '@babel/runtime@7.25.6': dependencies: @@ -7580,10 +9474,16 @@ snapshots: '@babel/template@7.25.0': dependencies: - '@babel/code-frame': 7.24.7 + '@babel/code-frame': 7.26.2 '@babel/parser': 7.25.6 '@babel/types': 7.25.6 + '@babel/template@7.25.9': + dependencies: + '@babel/code-frame': 7.26.2 + '@babel/parser': 7.26.2 + '@babel/types': 7.26.0 + '@babel/traverse@7.25.6': dependencies: '@babel/code-frame': 7.24.7 @@ -7596,12 +9496,29 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/traverse@7.25.9': + dependencies: + '@babel/code-frame': 7.26.2 + '@babel/generator': 7.26.2 + '@babel/parser': 7.26.2 + '@babel/template': 7.25.9 + '@babel/types': 7.26.0 + debug: 4.3.6 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + '@babel/types@7.25.6': dependencies: '@babel/helper-string-parser': 7.24.8 '@babel/helper-validator-identifier': 7.24.7 to-fast-properties: 2.0.0 + '@babel/types@7.26.0': + dependencies: + '@babel/helper-string-parser': 7.25.9 + '@babel/helper-validator-identifier': 7.25.9 + '@balena/dockerignore@1.0.2': {} '@bcoe/v8-coverage@0.2.3': {} @@ -7615,6 +9532,13 @@ snapshots: buffer-crc32: 0.2.13 fd-slicer2: 1.2.0 + '@eslint-community/eslint-utils@4.4.1(eslint@8.11.0)': + dependencies: + eslint: 8.11.0 + eslint-visitor-keys: 3.4.3 + + '@eslint-community/regexpp@4.12.1': {} + '@eslint/eslintrc@1.4.1': dependencies: ajv: 6.12.6 @@ -7631,6 +9555,12 @@ snapshots: '@gar/promisify@1.1.3': {} + '@hapi/hoek@9.3.0': {} + + '@hapi/topo@5.1.0': + dependencies: + '@hapi/hoek': 9.3.0 + '@humanwhocodes/config-array@0.9.5': dependencies: '@humanwhocodes/object-schema': 1.2.1 @@ -7650,6 +9580,8 @@ snapshots: wrap-ansi: 8.1.0 wrap-ansi-cjs: wrap-ansi@7.0.0 + '@isaacs/ttlcache@1.4.1': {} + '@istanbuljs/load-nyc-config@1.1.0': dependencies: camelcase: 5.3.1 @@ -7669,122 +9601,133 @@ snapshots: jest-util: 26.6.2 slash: 3.0.0 - '@jest/console@27.5.1': + '@jest/console@29.7.0': dependencies: - '@jest/types': 27.5.1 + '@jest/types': 29.6.3 '@types/node': 14.6.4 chalk: 4.1.2 - jest-message-util: 27.5.1 - jest-util: 27.5.1 + jest-message-util: 29.7.0 + jest-util: 29.7.0 slash: 3.0.0 - '@jest/core@27.5.1(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4))': + '@jest/core@29.7.0(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4))': dependencies: - '@jest/console': 27.5.1 - '@jest/reporters': 27.5.1 - '@jest/test-result': 27.5.1 - '@jest/transform': 27.5.1 - '@jest/types': 27.5.1 + '@jest/console': 29.7.0 + '@jest/reporters': 29.7.0 + '@jest/test-result': 29.7.0 + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 '@types/node': 14.6.4 ansi-escapes: 4.3.2 chalk: 4.1.2 - emittery: 0.8.1 + ci-info: 3.9.0 exit: 0.1.2 graceful-fs: 4.2.11 - jest-changed-files: 27.5.1 - jest-config: 27.5.1(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) - jest-haste-map: 27.5.1 - jest-message-util: 27.5.1 - jest-regex-util: 27.5.1 - jest-resolve: 27.5.1 - jest-resolve-dependencies: 27.5.1 - jest-runner: 27.5.1 - jest-runtime: 27.5.1 - jest-snapshot: 27.5.1 - jest-util: 27.5.1 - jest-validate: 27.5.1 - jest-watcher: 27.5.1 + jest-changed-files: 29.7.0 + jest-config: 29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) + jest-haste-map: 29.7.0 + jest-message-util: 29.7.0 + jest-regex-util: 29.6.3 + jest-resolve: 29.7.0 + jest-resolve-dependencies: 29.7.0 + jest-runner: 29.7.0 + jest-runtime: 29.7.0 + jest-snapshot: 29.7.0 + jest-util: 29.7.0 + jest-validate: 29.7.0 + jest-watcher: 29.7.0 micromatch: 4.0.8 - rimraf: 3.0.2 + pretty-format: 29.7.0 slash: 3.0.0 strip-ansi: 6.0.1 transitivePeerDependencies: - - bufferutil - - canvas + - babel-plugin-macros - supports-color - ts-node - - utf-8-validate - '@jest/core@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4))': + '@jest/core@29.7.0(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4))': dependencies: - '@jest/console': 27.5.1 - '@jest/reporters': 27.5.1 - '@jest/test-result': 27.5.1 - '@jest/transform': 27.5.1 - '@jest/types': 27.5.1 + '@jest/console': 29.7.0 + '@jest/reporters': 29.7.0 + '@jest/test-result': 29.7.0 + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 '@types/node': 14.6.4 ansi-escapes: 4.3.2 chalk: 4.1.2 - emittery: 0.8.1 + ci-info: 3.9.0 exit: 0.1.2 graceful-fs: 4.2.11 - jest-changed-files: 27.5.1 - jest-config: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) - jest-haste-map: 27.5.1 - jest-message-util: 27.5.1 - jest-regex-util: 27.5.1 - jest-resolve: 27.5.1 - jest-resolve-dependencies: 27.5.1 - jest-runner: 27.5.1 - jest-runtime: 27.5.1 - jest-snapshot: 27.5.1 - jest-util: 27.5.1 - jest-validate: 27.5.1 - jest-watcher: 27.5.1 + jest-changed-files: 29.7.0 + jest-config: 29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + jest-haste-map: 29.7.0 + jest-message-util: 29.7.0 + jest-regex-util: 29.6.3 + jest-resolve: 29.7.0 + jest-resolve-dependencies: 29.7.0 + jest-runner: 29.7.0 + jest-runtime: 29.7.0 + jest-snapshot: 29.7.0 + jest-util: 29.7.0 + jest-validate: 29.7.0 + jest-watcher: 29.7.0 micromatch: 4.0.8 - rimraf: 3.0.2 + pretty-format: 29.7.0 slash: 3.0.0 strip-ansi: 6.0.1 transitivePeerDependencies: - - bufferutil - - canvas + - babel-plugin-macros - supports-color - ts-node - - utf-8-validate - '@jest/environment@27.5.1': + '@jest/create-cache-key-function@29.7.0': + dependencies: + '@jest/types': 29.6.3 + + '@jest/environment@29.7.0': dependencies: - '@jest/fake-timers': 27.5.1 - '@jest/types': 27.5.1 + '@jest/fake-timers': 29.7.0 + '@jest/types': 29.6.3 '@types/node': 14.6.4 - jest-mock: 27.5.1 + jest-mock: 29.7.0 '@jest/expect-utils@29.7.0': dependencies: jest-get-type: 29.6.3 - '@jest/fake-timers@27.5.1': + '@jest/expect@29.7.0': + dependencies: + expect: 29.7.0 + jest-snapshot: 29.7.0 + transitivePeerDependencies: + - supports-color + + '@jest/fake-timers@29.7.0': dependencies: - '@jest/types': 27.5.1 - '@sinonjs/fake-timers': 8.1.0 + '@jest/types': 29.6.3 + '@sinonjs/fake-timers': 10.3.0 '@types/node': 14.6.4 - jest-message-util: 27.5.1 - jest-mock: 27.5.1 - jest-util: 27.5.1 + jest-message-util: 29.7.0 + jest-mock: 29.7.0 + jest-util: 29.7.0 - '@jest/globals@27.5.1': + '@jest/globals@29.7.0': dependencies: - '@jest/environment': 27.5.1 - '@jest/types': 27.5.1 - expect: 27.5.1 + '@jest/environment': 29.7.0 + '@jest/expect': 29.7.0 + '@jest/types': 29.6.3 + jest-mock: 29.7.0 + transitivePeerDependencies: + - supports-color - '@jest/reporters@27.5.1': + '@jest/reporters@29.7.0': dependencies: '@bcoe/v8-coverage': 0.2.3 - '@jest/console': 27.5.1 - '@jest/test-result': 27.5.1 - '@jest/transform': 27.5.1 - '@jest/types': 27.5.1 + '@jest/console': 29.7.0 + '@jest/test-result': 29.7.0 + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 + '@jridgewell/trace-mapping': 0.3.25 '@types/node': 14.6.4 chalk: 4.1.2 collect-v8-coverage: 1.0.2 @@ -7792,19 +9735,17 @@ snapshots: glob: 7.2.3 graceful-fs: 4.2.11 istanbul-lib-coverage: 3.2.2 - istanbul-lib-instrument: 5.2.1 + istanbul-lib-instrument: 6.0.3 istanbul-lib-report: 3.0.1 istanbul-lib-source-maps: 4.0.1 istanbul-reports: 3.1.7 - jest-haste-map: 27.5.1 - jest-resolve: 27.5.1 - jest-util: 27.5.1 - jest-worker: 27.5.1 + jest-message-util: 29.7.0 + jest-util: 29.7.0 + jest-worker: 29.7.0 slash: 3.0.0 - source-map: 0.6.1 string-length: 4.0.2 - terminal-link: 2.1.1 - v8-to-istanbul: 8.1.1 + strip-ansi: 6.0.1 + v8-to-istanbul: 9.3.0 transitivePeerDependencies: - supports-color @@ -7812,45 +9753,43 @@ snapshots: dependencies: '@sinclair/typebox': 0.27.8 - '@jest/source-map@27.5.1': + '@jest/source-map@29.6.3': dependencies: + '@jridgewell/trace-mapping': 0.3.25 callsites: 3.1.0 graceful-fs: 4.2.11 - source-map: 0.6.1 - '@jest/test-result@27.5.1': + '@jest/test-result@29.7.0': dependencies: - '@jest/console': 27.5.1 - '@jest/types': 27.5.1 + '@jest/console': 29.7.0 + '@jest/types': 29.6.3 '@types/istanbul-lib-coverage': 2.0.6 collect-v8-coverage: 1.0.2 - '@jest/test-sequencer@27.5.1': + '@jest/test-sequencer@29.7.0': dependencies: - '@jest/test-result': 27.5.1 + '@jest/test-result': 29.7.0 graceful-fs: 4.2.11 - jest-haste-map: 27.5.1 - jest-runtime: 27.5.1 - transitivePeerDependencies: - - supports-color + jest-haste-map: 29.7.0 + slash: 3.0.0 - '@jest/transform@27.5.1': + '@jest/transform@29.7.0': dependencies: '@babel/core': 7.25.2 - '@jest/types': 27.5.1 + '@jest/types': 29.6.3 + '@jridgewell/trace-mapping': 0.3.25 babel-plugin-istanbul: 6.1.1 chalk: 4.1.2 - convert-source-map: 1.9.0 + convert-source-map: 2.0.0 fast-json-stable-stringify: 2.1.0 graceful-fs: 4.2.11 - jest-haste-map: 27.5.1 - jest-regex-util: 27.5.1 - jest-util: 27.5.1 + jest-haste-map: 29.7.0 + jest-regex-util: 29.6.3 + jest-util: 29.7.0 micromatch: 4.0.8 pirates: 4.0.6 slash: 3.0.0 - source-map: 0.6.1 - write-file-atomic: 3.0.3 + write-file-atomic: 4.0.2 transitivePeerDependencies: - supports-color @@ -7862,14 +9801,6 @@ snapshots: '@types/yargs': 15.0.19 chalk: 4.1.2 - '@jest/types@27.5.1': - dependencies: - '@types/istanbul-lib-coverage': 2.0.6 - '@types/istanbul-reports': 3.0.4 - '@types/node': 14.6.4 - '@types/yargs': 16.0.9 - chalk: 4.1.2 - '@jest/types@29.6.3': dependencies: '@jest/schemas': 29.6.3 @@ -7903,104 +9834,491 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.0 - '@jridgewell/trace-mapping@0.3.9': + '@jridgewell/trace-mapping@0.3.9': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.0 + + '@ljharb/through@2.3.13': + dependencies: + call-bind: 1.0.7 + + '@mdn/browser-compat-data@4.2.1': {} + + '@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1': + dependencies: + eslint-scope: 5.1.1 + + '@nodelib/fs.scandir@2.1.5': + dependencies: + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + + '@nodelib/fs.stat@2.0.5': {} + + '@nodelib/fs.walk@1.2.8': + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.17.1 + + '@npmcli/fs@1.1.1': + dependencies: + '@gar/promisify': 1.1.3 + semver: 7.6.3 + + '@npmcli/git@2.1.0': + dependencies: + '@npmcli/promise-spawn': 1.3.2 + lru-cache: 6.0.0 + mkdirp: 1.0.4 + npm-pick-manifest: 6.1.1 + promise-inflight: 1.0.1 + promise-retry: 2.0.1 + semver: 7.6.3 + which: 2.0.2 + + '@npmcli/installed-package-contents@1.0.7': + dependencies: + npm-bundled: 1.1.2 + npm-normalize-package-bin: 1.0.1 + + '@npmcli/move-file@1.1.2': + dependencies: + mkdirp: 1.0.4 + rimraf: 3.0.2 + + '@npmcli/node-gyp@1.0.3': {} + + '@npmcli/promise-spawn@1.3.2': + dependencies: + infer-owner: 1.0.4 + + '@npmcli/run-script@1.8.6': + dependencies: + '@npmcli/node-gyp': 1.0.3 + '@npmcli/promise-spawn': 1.3.2 + node-gyp: 7.1.2 + read-package-json-fast: 2.0.3 + + '@pkgjs/parseargs@0.11.0': + optional: true + + '@polka/parse@1.0.0-next.0': {} + + '@polka/url@0.5.0': {} + + '@promptbook/utils@0.70.0-1': + dependencies: + spacetrim: 0.11.39 + + '@puppeteer/browsers@1.4.6(typescript@4.6.4)': + dependencies: + debug: 4.3.4 + extract-zip: 2.0.1 + progress: 2.0.3 + proxy-agent: 6.3.0 + tar-fs: 3.0.4 + unbzip2-stream: 1.4.3 + yargs: 17.7.1 + optionalDependencies: + typescript: 4.6.4 + transitivePeerDependencies: + - supports-color + + '@puppeteer/browsers@1.9.1': + dependencies: + debug: 4.3.4 + extract-zip: 2.0.1 + progress: 2.0.3 + proxy-agent: 6.3.1 + tar-fs: 3.0.4 + unbzip2-stream: 1.4.3 + yargs: 17.7.2 + transitivePeerDependencies: + - supports-color + + '@react-native-async-storage/async-storage@2.0.0(react-native@0.74.5(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0))': + dependencies: + merge-options: 3.0.4 + react-native: 0.74.5(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0) + + '@react-native-community/cli-clean@13.6.9(encoding@0.1.13)': + dependencies: + '@react-native-community/cli-tools': 13.6.9(encoding@0.1.13) + chalk: 4.1.2 + execa: 5.1.1 + fast-glob: 3.3.2 + transitivePeerDependencies: + - encoding + + '@react-native-community/cli-config@13.6.9(encoding@0.1.13)': + dependencies: + '@react-native-community/cli-tools': 13.6.9(encoding@0.1.13) + chalk: 4.1.2 + cosmiconfig: 5.2.1 + deepmerge: 4.3.1 + fast-glob: 3.3.2 + joi: 17.13.3 + transitivePeerDependencies: + - encoding + + '@react-native-community/cli-debugger-ui@13.6.9': + dependencies: + serve-static: 1.15.0 + + '@react-native-community/cli-doctor@13.6.9(encoding@0.1.13)': + dependencies: + '@react-native-community/cli-config': 13.6.9(encoding@0.1.13) + '@react-native-community/cli-platform-android': 13.6.9(encoding@0.1.13) + '@react-native-community/cli-platform-apple': 13.6.9(encoding@0.1.13) + '@react-native-community/cli-platform-ios': 13.6.9(encoding@0.1.13) + '@react-native-community/cli-tools': 13.6.9(encoding@0.1.13) + chalk: 4.1.2 + command-exists: 1.2.9 + deepmerge: 4.3.1 + envinfo: 7.14.0 + execa: 5.1.1 + hermes-profile-transformer: 0.0.6 + node-stream-zip: 1.15.0 + ora: 5.4.1 + semver: 7.6.3 + strip-ansi: 5.2.0 + wcwidth: 1.0.1 + yaml: 2.6.0 + transitivePeerDependencies: + - encoding + + '@react-native-community/cli-hermes@13.6.9(encoding@0.1.13)': + dependencies: + '@react-native-community/cli-platform-android': 13.6.9(encoding@0.1.13) + '@react-native-community/cli-tools': 13.6.9(encoding@0.1.13) + chalk: 4.1.2 + hermes-profile-transformer: 0.0.6 + transitivePeerDependencies: + - encoding + + '@react-native-community/cli-platform-android@13.6.9(encoding@0.1.13)': + dependencies: + '@react-native-community/cli-tools': 13.6.9(encoding@0.1.13) + chalk: 4.1.2 + execa: 5.1.1 + fast-glob: 3.3.2 + fast-xml-parser: 4.5.0 + logkitty: 0.7.1 + transitivePeerDependencies: + - encoding + + '@react-native-community/cli-platform-apple@13.6.9(encoding@0.1.13)': + dependencies: + '@react-native-community/cli-tools': 13.6.9(encoding@0.1.13) + chalk: 4.1.2 + execa: 5.1.1 + fast-glob: 3.3.2 + fast-xml-parser: 4.5.0 + ora: 5.4.1 + transitivePeerDependencies: + - encoding + + '@react-native-community/cli-platform-ios@13.6.9(encoding@0.1.13)': + dependencies: + '@react-native-community/cli-platform-apple': 13.6.9(encoding@0.1.13) + transitivePeerDependencies: + - encoding + + '@react-native-community/cli-server-api@13.6.9(encoding@0.1.13)': + dependencies: + '@react-native-community/cli-debugger-ui': 13.6.9 + '@react-native-community/cli-tools': 13.6.9(encoding@0.1.13) + compression: 1.7.5 + connect: 3.7.0 + errorhandler: 1.5.1 + nocache: 3.0.4 + pretty-format: 26.6.2 + serve-static: 1.15.0 + ws: 6.2.3 + transitivePeerDependencies: + - encoding + + '@react-native-community/cli-tools@13.6.9(encoding@0.1.13)': + dependencies: + appdirsjs: 1.2.7 + chalk: 4.1.2 + execa: 5.1.1 + find-up: 5.0.0 + mime: 2.6.0 + node-fetch: 2.7.0(encoding@0.1.13) + open: 6.4.0 + ora: 5.4.1 + semver: 7.6.3 + shell-quote: 1.8.1 + sudo-prompt: 9.2.1 + transitivePeerDependencies: + - encoding + + '@react-native-community/cli-types@13.6.9': dependencies: - '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.5.0 + joi: 17.13.3 - '@ljharb/through@2.3.13': + '@react-native-community/cli@13.6.9(encoding@0.1.13)': dependencies: - call-bind: 1.0.7 + '@react-native-community/cli-clean': 13.6.9(encoding@0.1.13) + '@react-native-community/cli-config': 13.6.9(encoding@0.1.13) + '@react-native-community/cli-debugger-ui': 13.6.9 + '@react-native-community/cli-doctor': 13.6.9(encoding@0.1.13) + '@react-native-community/cli-hermes': 13.6.9(encoding@0.1.13) + '@react-native-community/cli-server-api': 13.6.9(encoding@0.1.13) + '@react-native-community/cli-tools': 13.6.9(encoding@0.1.13) + '@react-native-community/cli-types': 13.6.9 + chalk: 4.1.2 + commander: 9.5.0 + deepmerge: 4.3.1 + execa: 5.1.1 + find-up: 4.1.0 + fs-extra: 8.1.0 + graceful-fs: 4.2.11 + prompts: 2.4.2 + semver: 7.6.3 + transitivePeerDependencies: + - encoding - '@mdn/browser-compat-data@4.2.1': {} + '@react-native/assets-registry@0.74.87': {} - '@nodelib/fs.scandir@2.1.5': + '@react-native/babel-plugin-codegen@0.74.87': dependencies: - '@nodelib/fs.stat': 2.0.5 - run-parallel: 1.2.0 + '@react-native/codegen': 0.74.87 + transitivePeerDependencies: + - '@babel/preset-env' + - supports-color - '@nodelib/fs.stat@2.0.5': {} + '@react-native/babel-plugin-codegen@0.76.1': + dependencies: + '@react-native/codegen': 0.76.1 + transitivePeerDependencies: + - '@babel/preset-env' + - supports-color - '@nodelib/fs.walk@1.2.8': + '@react-native/babel-preset@0.74.87': dependencies: - '@nodelib/fs.scandir': 2.1.5 - fastq: 1.17.1 + '@babel/core': 7.25.2 + '@babel/plugin-proposal-async-generator-functions': 7.20.7(@babel/core@7.25.2) + '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.25.2) + '@babel/plugin-proposal-export-default-from': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-proposal-logical-assignment-operators': 7.20.7(@babel/core@7.25.2) + '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6(@babel/core@7.25.2) + '@babel/plugin-proposal-numeric-separator': 7.18.6(@babel/core@7.25.2) + '@babel/plugin-proposal-object-rest-spread': 7.20.7(@babel/core@7.25.2) + '@babel/plugin-proposal-optional-catch-binding': 7.18.6(@babel/core@7.25.2) + '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.25.2) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-syntax-export-default-from': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-syntax-flow': 7.26.0(@babel/core@7.25.2) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-transform-arrow-functions': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-async-to-generator': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-block-scoping': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-classes': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-computed-properties': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-destructuring': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-flow-strip-types': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-function-name': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-literals': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-modules-commonjs': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-named-capturing-groups-regex': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-parameters': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-private-methods': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-private-property-in-object': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-react-display-name': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-react-jsx': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-runtime': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-shorthand-properties': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-spread': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-sticky-regex': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-typescript': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-unicode-regex': 7.25.9(@babel/core@7.25.2) + '@babel/template': 7.25.0 + '@react-native/babel-plugin-codegen': 0.74.87 + babel-plugin-transform-flow-enums: 0.0.2(@babel/core@7.25.2) + react-refresh: 0.14.2 + transitivePeerDependencies: + - '@babel/preset-env' + - supports-color - '@npmcli/fs@1.1.1': + '@react-native/babel-preset@0.76.1': dependencies: - '@gar/promisify': 1.1.3 - semver: 7.6.3 + '@babel/core': 7.25.2 + '@babel/plugin-proposal-export-default-from': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-syntax-export-default-from': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-transform-arrow-functions': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-async-generator-functions': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-async-to-generator': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-block-scoping': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-class-properties': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-classes': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-computed-properties': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-destructuring': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-flow-strip-types': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-for-of': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-function-name': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-literals': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-logical-assignment-operators': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-modules-commonjs': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-named-capturing-groups-regex': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-nullish-coalescing-operator': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-numeric-separator': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-object-rest-spread': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-optional-catch-binding': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-optional-chaining': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-parameters': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-private-methods': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-private-property-in-object': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-react-display-name': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-react-jsx': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-regenerator': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-runtime': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-shorthand-properties': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-spread': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-sticky-regex': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-typescript': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-unicode-regex': 7.25.9(@babel/core@7.25.2) + '@babel/template': 7.25.9 + '@react-native/babel-plugin-codegen': 0.76.1 + babel-plugin-syntax-hermes-parser: 0.23.1 + babel-plugin-transform-flow-enums: 0.0.2(@babel/core@7.25.2) + react-refresh: 0.14.2 + transitivePeerDependencies: + - '@babel/preset-env' + - supports-color - '@npmcli/git@2.1.0': + '@react-native/codegen@0.74.87': dependencies: - '@npmcli/promise-spawn': 1.3.2 - lru-cache: 6.0.0 - mkdirp: 1.0.4 - npm-pick-manifest: 6.1.1 - promise-inflight: 1.0.1 - promise-retry: 2.0.1 - semver: 7.6.3 - which: 2.0.2 + '@babel/parser': 7.25.6 + glob: 7.2.3 + hermes-parser: 0.19.1 + invariant: 2.2.4 + jscodeshift: 0.14.0 + mkdirp: 0.5.6 + nullthrows: 1.1.1 + transitivePeerDependencies: + - supports-color - '@npmcli/installed-package-contents@1.0.7': + '@react-native/codegen@0.76.1': dependencies: - npm-bundled: 1.1.2 - npm-normalize-package-bin: 1.0.1 + '@babel/parser': 7.26.2 + glob: 7.2.3 + hermes-parser: 0.23.1 + invariant: 2.2.4 + jscodeshift: 0.14.0 + mkdirp: 0.5.6 + nullthrows: 1.1.1 + yargs: 17.7.2 + transitivePeerDependencies: + - supports-color - '@npmcli/move-file@1.1.2': + '@react-native/community-cli-plugin@0.74.87(encoding@0.1.13)': dependencies: - mkdirp: 1.0.4 - rimraf: 3.0.2 + '@react-native-community/cli-server-api': 13.6.9(encoding@0.1.13) + '@react-native-community/cli-tools': 13.6.9(encoding@0.1.13) + '@react-native/dev-middleware': 0.74.87(encoding@0.1.13) + '@react-native/metro-babel-transformer': 0.74.87 + chalk: 4.1.2 + execa: 5.1.1 + metro: 0.80.12 + metro-config: 0.80.12 + metro-core: 0.80.12 + node-fetch: 2.7.0(encoding@0.1.13) + querystring: 0.2.1 + readline: 1.3.0 + transitivePeerDependencies: + - '@babel/preset-env' + - bufferutil + - encoding + - supports-color + - utf-8-validate - '@npmcli/node-gyp@1.0.3': {} + '@react-native/debugger-frontend@0.74.87': {} - '@npmcli/promise-spawn@1.3.2': + '@react-native/dev-middleware@0.74.87(encoding@0.1.13)': dependencies: - infer-owner: 1.0.4 + '@isaacs/ttlcache': 1.4.1 + '@react-native/debugger-frontend': 0.74.87 + '@rnx-kit/chromium-edge-launcher': 1.0.0 + chrome-launcher: 0.15.2 + connect: 3.7.0 + debug: 2.6.9 + node-fetch: 2.7.0(encoding@0.1.13) + nullthrows: 1.1.1 + open: 7.4.2 + selfsigned: 2.4.1 + serve-static: 1.15.0 + temp-dir: 2.0.0 + ws: 6.2.3 + transitivePeerDependencies: + - encoding - '@npmcli/run-script@1.8.6': + '@react-native/eslint-config@0.73.2(eslint@8.11.0)(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4)': dependencies: - '@npmcli/node-gyp': 1.0.3 - '@npmcli/promise-spawn': 1.3.2 - node-gyp: 7.1.2 - read-package-json-fast: 2.0.3 + '@babel/core': 7.25.2 + '@babel/eslint-parser': 7.25.9(@babel/core@7.25.2)(eslint@8.11.0) + '@react-native/eslint-plugin': 0.73.1 + '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) + '@typescript-eslint/parser': 5.62.0(eslint@8.11.0)(typescript@4.6.4) + eslint: 8.11.0 + eslint-config-prettier: 8.10.0(eslint@8.11.0) + eslint-plugin-eslint-comments: 3.2.0(eslint@8.11.0) + eslint-plugin-ft-flow: 2.0.3(@babel/eslint-parser@7.25.9(@babel/core@7.25.2)(eslint@8.11.0))(eslint@8.11.0) + eslint-plugin-jest: 26.9.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + eslint-plugin-prettier: 4.2.1(eslint-config-prettier@8.10.0(eslint@8.11.0))(eslint@8.11.0) + eslint-plugin-react: 7.37.2(eslint@8.11.0) + eslint-plugin-react-hooks: 4.6.2(eslint@8.11.0) + eslint-plugin-react-native: 4.1.0(eslint@8.11.0) + transitivePeerDependencies: + - jest + - supports-color + - typescript - '@pkgjs/parseargs@0.11.0': - optional: true + '@react-native/eslint-plugin@0.73.1': {} - '@polka/parse@1.0.0-next.0': {} + '@react-native/gradle-plugin@0.74.87': {} - '@polka/url@0.5.0': {} + '@react-native/js-polyfills@0.74.87': {} - '@promptbook/utils@0.70.0-1': + '@react-native/metro-babel-transformer@0.74.87': dependencies: - spacetrim: 0.11.39 + '@babel/core': 7.25.2 + '@react-native/babel-preset': 0.74.87 + hermes-parser: 0.19.1 + nullthrows: 1.1.1 + transitivePeerDependencies: + - '@babel/preset-env' + - supports-color - '@puppeteer/browsers@1.4.6(typescript@4.6.4)': + '@react-native/normalize-colors@0.74.87': {} + + '@react-native/virtualized-lists@0.74.87(@types/react@18.3.12)(react-native@0.74.5(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0))(react@18.2.0)': dependencies: - debug: 4.3.4 - extract-zip: 2.0.1 - progress: 2.0.3 - proxy-agent: 6.3.0 - tar-fs: 3.0.4 - unbzip2-stream: 1.4.3 - yargs: 17.7.1 + invariant: 2.2.4 + nullthrows: 1.1.1 + react: 18.2.0 + react-native: 0.74.5(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0) optionalDependencies: - typescript: 4.6.4 - transitivePeerDependencies: - - supports-color + '@types/react': 18.3.12 - '@puppeteer/browsers@1.9.1': + '@rnx-kit/chromium-edge-launcher@1.0.0': dependencies: - debug: 4.3.4 - extract-zip: 2.0.1 - progress: 2.0.3 - proxy-agent: 6.3.1 - tar-fs: 3.0.4 - unbzip2-stream: 1.4.3 - yargs: 17.7.2 - transitivePeerDependencies: - - supports-color + '@types/node': 18.19.48 + escape-string-regexp: 4.0.0 + is-wsl: 2.2.0 + lighthouse-logger: 1.4.2 + mkdirp: 1.0.4 + rimraf: 3.0.2 '@rollup/plugin-alias@3.1.9(rollup@2.70.2)': dependencies: @@ -8051,19 +10369,27 @@ snapshots: estree-walker: 2.0.2 picomatch: 2.3.1 + '@sideway/address@4.1.5': + dependencies: + '@hapi/hoek': 9.3.0 + + '@sideway/formula@3.0.1': {} + + '@sideway/pinpoint@2.0.0': {} + '@sinclair/typebox@0.27.8': {} '@sindresorhus/is@4.6.0': {} '@sindresorhus/is@5.6.0': {} - '@sinonjs/commons@1.8.6': + '@sinonjs/commons@3.0.1': dependencies: type-detect: 4.0.8 - '@sinonjs/fake-timers@8.1.0': + '@sinonjs/fake-timers@10.3.0': dependencies: - '@sinonjs/commons': 1.8.6 + '@sinonjs/commons': 3.0.1 '@szmarczak/http-timer@4.0.6': dependencies: @@ -8088,6 +10414,8 @@ snapshots: '@tootallnate/once@1.1.2': {} + '@tootallnate/once@2.0.0': {} + '@tootallnate/quickjs-emscripten@0.23.0': {} '@tsconfig/node10@1.0.11': {} @@ -8102,24 +10430,24 @@ snapshots: '@types/babel__core@7.20.5': dependencies: - '@babel/parser': 7.25.6 - '@babel/types': 7.25.6 + '@babel/parser': 7.26.2 + '@babel/types': 7.26.0 '@types/babel__generator': 7.6.8 '@types/babel__template': 7.4.4 '@types/babel__traverse': 7.20.6 '@types/babel__generator@7.6.8': dependencies: - '@babel/types': 7.25.6 + '@babel/types': 7.26.0 '@types/babel__template@7.4.4': dependencies: - '@babel/parser': 7.25.6 - '@babel/types': 7.25.6 + '@babel/parser': 7.26.2 + '@babel/types': 7.26.0 '@types/babel__traverse@7.20.6': dependencies: - '@babel/types': 7.25.6 + '@babel/types': 7.26.0 '@types/cacheable-request@6.0.3': dependencies: @@ -8159,10 +10487,10 @@ snapshots: dependencies: '@types/istanbul-lib-report': 3.0.3 - '@types/jest@27.4.1': + '@types/jest@29.5.14': dependencies: - jest-matcher-utils: 27.5.1 - pretty-format: 27.5.1 + expect: 29.7.0 + pretty-format: 29.7.0 '@types/jsdom@16.2.15': dependencies: @@ -8170,6 +10498,12 @@ snapshots: '@types/parse5': 6.0.3 '@types/tough-cookie': 4.0.5 + '@types/jsdom@20.0.1': + dependencies: + '@types/node': 14.6.4 + '@types/tough-cookie': 4.0.5 + parse5: 7.2.1 + '@types/json-schema@7.0.15': {} '@types/jstimezonedetect@1.0.6': {} @@ -8180,6 +10514,10 @@ snapshots: '@types/lodash@4.14.202': {} + '@types/node-forge@1.3.11': + dependencies: + '@types/node': 14.6.4 + '@types/node@14.6.4': {} '@types/node@16.18.106': {} @@ -8198,10 +10536,15 @@ snapshots: '@types/parse5@6.0.3': {} - '@types/prettier@2.7.3': {} + '@types/prop-types@15.7.13': {} '@types/randomcolor@0.5.9': {} + '@types/react@18.3.12': + dependencies: + '@types/prop-types': 15.7.13 + csstype: 3.1.3 + '@types/resolve@1.17.1': dependencies: '@types/node': 14.6.4 @@ -8248,10 +10591,6 @@ snapshots: dependencies: '@types/yargs-parser': 21.0.3 - '@types/yargs@16.0.9': - dependencies: - '@types/yargs-parser': 21.0.3 - '@types/yargs@17.0.33': dependencies: '@types/yargs-parser': 21.0.3 @@ -8281,6 +10620,25 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4)': + dependencies: + '@eslint-community/regexpp': 4.12.1 + '@typescript-eslint/parser': 5.62.0(eslint@8.11.0)(typescript@4.6.4) + '@typescript-eslint/scope-manager': 5.62.0 + '@typescript-eslint/type-utils': 5.62.0(eslint@8.11.0)(typescript@4.6.4) + '@typescript-eslint/utils': 5.62.0(eslint@8.11.0)(typescript@4.6.4) + debug: 4.3.6 + eslint: 8.11.0 + graphemer: 1.4.0 + ignore: 5.3.2 + natural-compare-lite: 1.4.0 + semver: 7.6.3 + tsutils: 3.21.0(typescript@4.6.4) + optionalDependencies: + typescript: 4.6.4 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4)': dependencies: '@typescript-eslint/scope-manager': 5.15.0 @@ -8293,11 +10651,28 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/parser@5.62.0(eslint@8.11.0)(typescript@4.6.4)': + dependencies: + '@typescript-eslint/scope-manager': 5.62.0 + '@typescript-eslint/types': 5.62.0 + '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.6.4) + debug: 4.3.6 + eslint: 8.11.0 + optionalDependencies: + typescript: 4.6.4 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/scope-manager@5.15.0': dependencies: '@typescript-eslint/types': 5.15.0 '@typescript-eslint/visitor-keys': 5.15.0 + '@typescript-eslint/scope-manager@5.62.0': + dependencies: + '@typescript-eslint/types': 5.62.0 + '@typescript-eslint/visitor-keys': 5.62.0 + '@typescript-eslint/type-utils@5.15.0(eslint@8.11.0)(typescript@4.6.4)': dependencies: '@typescript-eslint/utils': 5.15.0(eslint@8.11.0)(typescript@4.6.4) @@ -8309,8 +10684,22 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/type-utils@5.62.0(eslint@8.11.0)(typescript@4.6.4)': + dependencies: + '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.6.4) + '@typescript-eslint/utils': 5.62.0(eslint@8.11.0)(typescript@4.6.4) + debug: 4.3.6 + eslint: 8.11.0 + tsutils: 3.21.0(typescript@4.6.4) + optionalDependencies: + typescript: 4.6.4 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/types@5.15.0': {} + '@typescript-eslint/types@5.62.0': {} + '@typescript-eslint/typescript-estree@5.15.0(typescript@4.6.4)': dependencies: '@typescript-eslint/types': 5.15.0 @@ -8325,6 +10714,20 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/typescript-estree@5.62.0(typescript@4.6.4)': + dependencies: + '@typescript-eslint/types': 5.62.0 + '@typescript-eslint/visitor-keys': 5.62.0 + debug: 4.3.6 + globby: 11.1.0 + is-glob: 4.0.3 + semver: 7.6.3 + tsutils: 3.21.0(typescript@4.6.4) + optionalDependencies: + typescript: 4.6.4 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/utils@5.15.0(eslint@8.11.0)(typescript@4.6.4)': dependencies: '@types/json-schema': 7.0.15 @@ -8338,11 +10741,31 @@ snapshots: - supports-color - typescript + '@typescript-eslint/utils@5.62.0(eslint@8.11.0)(typescript@4.6.4)': + dependencies: + '@eslint-community/eslint-utils': 4.4.1(eslint@8.11.0) + '@types/json-schema': 7.0.15 + '@types/semver': 7.5.8 + '@typescript-eslint/scope-manager': 5.62.0 + '@typescript-eslint/types': 5.62.0 + '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.6.4) + eslint: 8.11.0 + eslint-scope: 5.1.1 + semver: 7.6.3 + transitivePeerDependencies: + - supports-color + - typescript + '@typescript-eslint/visitor-keys@5.15.0': dependencies: '@typescript-eslint/types': 5.15.0 eslint-visitor-keys: 3.4.3 + '@typescript-eslint/visitor-keys@5.62.0': + dependencies: + '@typescript-eslint/types': 5.62.0 + eslint-visitor-keys: 3.4.3 + '@vimeo/player@2.16.4': dependencies: native-promise-only: 0.8.1 @@ -8592,10 +11015,10 @@ snapshots: mime-types: 2.1.35 negotiator: 0.6.3 - acorn-globals@6.0.0: + acorn-globals@7.0.1: dependencies: - acorn: 7.4.1 - acorn-walk: 7.2.0 + acorn: 8.12.1 + acorn-walk: 8.3.3 acorn-jsx@5.3.2(acorn@8.12.1): dependencies: @@ -8603,16 +11026,12 @@ snapshots: acorn-walk@7.1.1: {} - acorn-walk@7.2.0: {} - acorn-walk@8.3.3: dependencies: acorn: 8.12.1 acorn@7.3.1: {} - acorn@7.4.1: {} - acorn@8.12.1: {} agent-base@6.0.2: @@ -8648,6 +11067,8 @@ snapshots: json-schema-traverse: 0.4.1 uri-js: 4.4.1 + anser@1.4.10: {} + ansi-align@3.0.1: dependencies: string-width: 4.2.3 @@ -8656,8 +11077,16 @@ snapshots: dependencies: type-fest: 0.21.3 + ansi-fragments@0.2.1: + dependencies: + colorette: 1.4.0 + slice-ansi: 2.1.0 + strip-ansi: 5.2.0 + ansi-regex@2.1.1: {} + ansi-regex@4.1.1: {} + ansi-regex@5.0.1: {} ansi-regex@6.0.1: {} @@ -8679,6 +11108,8 @@ snapshots: normalize-path: 3.0.0 picomatch: 2.3.1 + appdirsjs@1.2.7: {} + aproba@1.2.0: {} archiver-utils@5.0.2: @@ -8731,8 +11162,48 @@ snapshots: array-flatten@1.1.1: {} + array-includes@3.1.8: + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-abstract: 1.23.3 + es-object-atoms: 1.0.0 + get-intrinsic: 1.2.4 + is-string: 1.0.7 + array-union@2.1.0: {} + array.prototype.findlast@1.2.5: + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-abstract: 1.23.3 + es-errors: 1.3.0 + es-object-atoms: 1.0.0 + es-shim-unscopables: 1.0.2 + + array.prototype.flat@1.3.2: + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-abstract: 1.23.3 + es-shim-unscopables: 1.0.2 + + array.prototype.flatmap@1.3.2: + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-abstract: 1.23.3 + es-shim-unscopables: 1.0.2 + + array.prototype.tosorted@1.1.4: + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-abstract: 1.23.3 + es-errors: 1.3.0 + es-shim-unscopables: 1.0.2 + arraybuffer.prototype.slice@1.0.3: dependencies: array-buffer-byte-length: 1.0.1 @@ -8748,6 +11219,8 @@ snapshots: arrify@3.0.0: {} + asap@2.0.6: {} + asn1@0.2.6: dependencies: safer-buffer: 2.1.2 @@ -8758,8 +11231,16 @@ snapshots: dependencies: tslib: 2.7.0 + ast-types@0.15.2: + dependencies: + tslib: 2.7.0 + + astral-regex@1.0.0: {} + async-exit-hook@2.0.1: {} + async-limiter@1.0.1: {} + async@3.2.6: {} asynckit@0.4.0: {} @@ -8832,14 +11313,17 @@ snapshots: b4a@1.6.6: {} - babel-jest@27.5.1(@babel/core@7.25.2): + babel-core@7.0.0-bridge.0(@babel/core@7.25.2): + dependencies: + '@babel/core': 7.25.2 + + babel-jest@29.7.0(@babel/core@7.25.2): dependencies: '@babel/core': 7.25.2 - '@jest/transform': 27.5.1 - '@jest/types': 27.5.1 + '@jest/transform': 29.7.0 '@types/babel__core': 7.20.5 babel-plugin-istanbul: 6.1.1 - babel-preset-jest: 27.5.1(@babel/core@7.25.2) + babel-preset-jest: 29.6.3(@babel/core@7.25.2) chalk: 4.1.2 graceful-fs: 4.2.11 slash: 3.0.0 @@ -8848,7 +11332,7 @@ snapshots: babel-plugin-istanbul@6.1.1: dependencies: - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 '@istanbuljs/load-nyc-config': 1.1.0 '@istanbuljs/schema': 0.1.3 istanbul-lib-instrument: 5.2.1 @@ -8856,13 +11340,47 @@ snapshots: transitivePeerDependencies: - supports-color - babel-plugin-jest-hoist@27.5.1: + babel-plugin-jest-hoist@29.6.3: dependencies: - '@babel/template': 7.25.0 - '@babel/types': 7.25.6 + '@babel/template': 7.25.9 + '@babel/types': 7.26.0 '@types/babel__core': 7.20.5 '@types/babel__traverse': 7.20.6 + babel-plugin-polyfill-corejs2@0.4.11(@babel/core@7.25.2): + dependencies: + '@babel/compat-data': 7.26.2 + '@babel/core': 7.25.2 + '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.2) + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + babel-plugin-polyfill-corejs3@0.10.6(@babel/core@7.25.2): + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.2) + core-js-compat: 3.39.0 + transitivePeerDependencies: + - supports-color + + babel-plugin-polyfill-regenerator@0.6.2(@babel/core@7.25.2): + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color + + babel-plugin-syntax-hermes-parser@0.23.1: + dependencies: + hermes-parser: 0.23.1 + + babel-plugin-transform-flow-enums@0.0.2(@babel/core@7.25.2): + dependencies: + '@babel/plugin-syntax-flow': 7.26.0(@babel/core@7.25.2) + transitivePeerDependencies: + - '@babel/core' + babel-preset-current-node-syntax@1.1.0(@babel/core@7.25.2): dependencies: '@babel/core': 7.25.2 @@ -8882,10 +11400,10 @@ snapshots: '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.25.2) '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.25.2) - babel-preset-jest@27.5.1(@babel/core@7.25.2): + babel-preset-jest@29.6.3(@babel/core@7.25.2): dependencies: '@babel/core': 7.25.2 - babel-plugin-jest-hoist: 27.5.1 + babel-plugin-jest-hoist: 29.6.3 babel-preset-current-node-syntax: 1.1.0(@babel/core@7.25.2) balanced-match@1.0.2: {} @@ -8983,8 +11501,6 @@ snapshots: dependencies: duplexer: 0.1.1 - browser-process-hrtime@1.0.0: {} - browserslist-generator@1.0.66: dependencies: '@mdn/browser-compat-data': 4.2.1 @@ -9013,6 +11529,13 @@ snapshots: node-releases: 2.0.18 update-browserslist-db: 1.1.0(browserslist@4.23.3) + browserslist@4.24.2: + dependencies: + caniuse-lite: 1.0.30001676 + electron-to-chromium: 1.5.50 + node-releases: 2.0.18 + update-browserslist-db: 1.1.1(browserslist@4.24.2) + bs-logger@0.2.6: dependencies: fast-json-stable-stringify: 2.1.0 @@ -9108,6 +11631,16 @@ snapshots: get-intrinsic: 1.2.4 set-function-length: 1.2.2 + caller-callsite@2.0.0: + dependencies: + callsites: 2.0.0 + + caller-path@2.0.0: + dependencies: + caller-callsite: 2.0.0 + + callsites@2.0.0: {} + callsites@3.1.0: {} callsites@4.2.0: {} @@ -9123,6 +11656,8 @@ snapshots: caniuse-lite@1.0.30001655: {} + caniuse-lite@1.0.30001676: {} + capital-case@1.0.4: dependencies: no-case: 3.0.4 @@ -9185,6 +11720,13 @@ snapshots: chownr@2.0.0: {} + chrome-launcher@0.15.2: + dependencies: + '@types/node': 14.6.4 + escape-string-regexp: 4.0.0 + is-wsl: 2.2.0 + lighthouse-logger: 1.4.2 + chromedriver@129.0.4: dependencies: '@testim/chrome-version': 1.1.4 @@ -9236,11 +11778,11 @@ snapshots: cli-width@4.1.0: {} - cliui@7.0.4: + cliui@6.0.0: dependencies: string-width: 4.2.3 strip-ansi: 6.0.1 - wrap-ansi: 7.0.0 + wrap-ansi: 6.2.0 cliui@8.0.1: dependencies: @@ -9250,6 +11792,12 @@ snapshots: clone-buffer@1.0.0: {} + clone-deep@4.0.1: + dependencies: + is-plain-object: 2.0.4 + kind-of: 6.0.3 + shallow-clone: 3.0.1 + clone-response@1.0.3: dependencies: mimic-response: 1.0.1 @@ -9288,12 +11836,16 @@ snapshots: color-name@1.1.4: {} + colorette@1.4.0: {} + colors@1.4.0: {} combined-stream@1.0.8: dependencies: delayed-stream: 1.0.0 + command-exists@1.2.9: {} + commander@2.20.3: {} commander@9.5.0: {} @@ -9319,6 +11871,10 @@ snapshots: normalize-path: 3.0.0 readable-stream: 4.5.2 + compressible@2.0.18: + dependencies: + mime-db: 1.52.0 + compressing@1.10.1: dependencies: '@eggjs/yauzl': 2.11.0 @@ -9331,6 +11887,16 @@ snapshots: tar-stream: 1.6.2 yazl: 2.5.1 + compression@1.7.5: + dependencies: + bytes: 3.1.2 + compressible: 2.0.18 + debug: 2.6.9 + negotiator: 0.6.4 + on-headers: 1.0.2 + safe-buffer: 5.2.1 + vary: 1.1.2 + concat-map@0.0.1: {} concordance@5.0.4: @@ -9344,6 +11910,13 @@ snapshots: semver: 7.6.3 well-known-symbols: 2.0.0 + connect@3.7.0: + dependencies: + debug: 2.6.9 + finalhandler: 1.1.2 + parseurl: 1.3.3 + utils-merge: 1.0.1 + console-control-strings@1.1.0: {} constant-case@3.0.4: @@ -9358,8 +11931,6 @@ snapshots: content-type@1.0.5: {} - convert-source-map@1.9.0: {} - convert-source-map@2.0.0: {} convert-to-spaces@2.0.1: {} @@ -9368,10 +11939,21 @@ snapshots: cookie@0.6.0: {} + core-js-compat@3.39.0: + dependencies: + browserslist: 4.24.2 + core-util-is@1.0.2: {} core-util-is@1.0.3: {} + cosmiconfig@5.2.1: + dependencies: + import-fresh: 2.0.0 + is-directory: 0.3.1 + js-yaml: 3.14.1 + parse-json: 4.0.0 + cpu-features@0.0.10: dependencies: buildcheck: 0.0.6 @@ -9385,6 +11967,36 @@ snapshots: crc-32: 1.2.2 readable-stream: 4.5.2 + create-jest@29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)): + dependencies: + '@jest/types': 29.6.3 + chalk: 4.1.2 + exit: 0.1.2 + graceful-fs: 4.2.11 + jest-config: 29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) + jest-util: 29.7.0 + prompts: 2.4.2 + transitivePeerDependencies: + - '@types/node' + - babel-plugin-macros + - supports-color + - ts-node + + create-jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)): + dependencies: + '@jest/types': 29.6.3 + chalk: 4.1.2 + exit: 0.1.2 + graceful-fs: 4.2.11 + jest-config: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + jest-util: 29.7.0 + prompts: 2.4.2 + transitivePeerDependencies: + - '@types/node' + - babel-plugin-macros + - supports-color + - ts-node + create-require@1.1.1: {} cross-fetch@4.0.0(encoding@0.1.13): @@ -9419,12 +12031,14 @@ snapshots: cssom@0.3.8: {} - cssom@0.4.4: {} + cssom@0.5.0: {} cssstyle@2.3.0: dependencies: cssom: 0.3.8 + csstype@3.1.3: {} + currently-unhandled@0.4.1: dependencies: array-find-index: 1.0.2 @@ -9437,11 +12051,11 @@ snapshots: data-uri-to-buffer@6.0.2: {} - data-urls@2.0.0: + data-urls@3.0.2: dependencies: abab: 2.0.6 - whatwg-mimetype: 2.3.0 - whatwg-url: 8.7.0 + whatwg-mimetype: 3.0.0 + whatwg-url: 11.0.0 data-view-buffer@1.0.1: dependencies: @@ -9465,6 +12079,8 @@ snapshots: dependencies: time-zone: 1.0.0 + dayjs@1.11.13: {} + debug@2.6.9: dependencies: ms: 2.0.0 @@ -9481,6 +12097,8 @@ snapshots: dependencies: ms: 2.1.2 + decamelize@1.2.0: {} + decamelize@6.0.0: {} decimal.js@10.4.3: {} @@ -9491,7 +12109,7 @@ snapshots: dependencies: mimic-response: 3.1.0 - dedent@0.7.0: {} + dedent@1.5.3: {} deep-equal@2.2.3: dependencies: @@ -9559,6 +12177,8 @@ snapshots: delegates@1.0.0: {} + denodeify@1.2.1: {} + depd@2.0.0: {} dequal@2.0.3: {} @@ -9571,8 +12191,6 @@ snapshots: devtools-protocol@0.0.1302984: {} - diff-sequences@27.5.1: {} - diff-sequences@29.6.3: {} diff@4.0.2: {} @@ -9600,15 +12218,19 @@ snapshots: transitivePeerDependencies: - supports-color + doctrine@2.1.0: + dependencies: + esutils: 2.0.3 + doctrine@3.0.0: dependencies: esutils: 2.0.3 dom-accessibility-api@0.5.16: {} - domexception@2.0.1: + domexception@4.0.0: dependencies: - webidl-conversions: 5.0.0 + webidl-conversions: 7.0.0 dot-case@3.0.4: dependencies: @@ -9657,7 +12279,9 @@ snapshots: electron-to-chromium@1.5.13: {} - emittery@0.8.1: {} + electron-to-chromium@1.5.50: {} + + emittery@0.13.1: {} emittery@1.0.3: {} @@ -9680,14 +12304,27 @@ snapshots: dependencies: lodash: 4.17.21 + entities@4.5.0: {} + env-paths@2.2.1: {} + envinfo@7.14.0: {} + err-code@2.0.3: {} error-ex@1.3.2: dependencies: is-arrayish: 0.2.1 + error-stack-parser@2.1.4: + dependencies: + stackframe: 1.3.4 + + errorhandler@1.5.1: + dependencies: + accepts: 1.3.8 + escape-html: 1.0.3 + es-abstract@1.23.3: dependencies: array-buffer-byte-length: 1.0.1 @@ -9755,6 +12392,23 @@ snapshots: isarray: 2.0.5 stop-iteration-iterator: 1.0.0 + es-iterator-helpers@1.1.0: + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-abstract: 1.23.3 + es-errors: 1.3.0 + es-set-tostringtag: 2.0.3 + function-bind: 1.1.2 + get-intrinsic: 1.2.4 + globalthis: 1.0.4 + has-property-descriptors: 1.0.2 + has-proto: 1.0.3 + has-symbols: 1.0.3 + internal-slot: 1.0.7 + iterator.prototype: 1.1.3 + safe-array-concat: 1.1.2 + es-object-atoms@1.0.0: dependencies: es-errors: 1.3.0 @@ -9765,6 +12419,10 @@ snapshots: has-tostringtag: 1.0.2 hasown: 2.0.2 + es-shim-unscopables@1.0.2: + dependencies: + hasown: 2.0.2 + es-to-primitive@1.2.1: dependencies: is-callable: 1.2.7 @@ -9791,6 +12449,10 @@ snapshots: optionalDependencies: source-map: 0.6.1 + eslint-config-prettier@8.10.0(eslint@8.11.0): + dependencies: + eslint: 8.11.0 + eslint-plugin-ava@13.2.0(eslint@8.11.0): dependencies: enhance-visitors: 1.0.0 @@ -9803,6 +12465,70 @@ snapshots: pkg-dir: 5.0.0 resolve-from: 5.0.0 + eslint-plugin-eslint-comments@3.2.0(eslint@8.11.0): + dependencies: + escape-string-regexp: 1.0.5 + eslint: 8.11.0 + ignore: 5.3.2 + + eslint-plugin-ft-flow@2.0.3(@babel/eslint-parser@7.25.9(@babel/core@7.25.2)(eslint@8.11.0))(eslint@8.11.0): + dependencies: + '@babel/eslint-parser': 7.25.9(@babel/core@7.25.2)(eslint@8.11.0) + eslint: 8.11.0 + lodash: 4.17.21 + string-natural-compare: 3.0.1 + + eslint-plugin-jest@26.9.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4): + dependencies: + '@typescript-eslint/utils': 5.15.0(eslint@8.11.0)(typescript@4.6.4) + eslint: 8.11.0 + optionalDependencies: + '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) + jest: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + transitivePeerDependencies: + - supports-color + - typescript + + eslint-plugin-prettier@4.2.1(eslint-config-prettier@8.10.0(eslint@8.11.0))(eslint@8.11.0): + dependencies: + eslint: 8.11.0 + prettier-linter-helpers: 1.0.0 + optionalDependencies: + eslint-config-prettier: 8.10.0(eslint@8.11.0) + + eslint-plugin-react-hooks@4.6.2(eslint@8.11.0): + dependencies: + eslint: 8.11.0 + + eslint-plugin-react-native-globals@0.1.2: {} + + eslint-plugin-react-native@4.1.0(eslint@8.11.0): + dependencies: + eslint: 8.11.0 + eslint-plugin-react-native-globals: 0.1.2 + + eslint-plugin-react@7.37.2(eslint@8.11.0): + dependencies: + array-includes: 3.1.8 + array.prototype.findlast: 1.2.5 + array.prototype.flatmap: 1.3.2 + array.prototype.tosorted: 1.1.4 + doctrine: 2.1.0 + es-iterator-helpers: 1.1.0 + eslint: 8.11.0 + estraverse: 5.3.0 + hasown: 2.0.2 + jsx-ast-utils: 3.3.5 + minimatch: 3.1.2 + object.entries: 1.1.8 + object.fromentries: 2.0.8 + object.values: 1.2.0 + prop-types: 15.8.1 + resolve: 2.0.0-next.5 + semver: 6.3.1 + string.prototype.matchall: 4.0.11 + string.prototype.repeat: 1.0.0 + eslint-scope@5.1.1: dependencies: esrecurse: 4.3.0 @@ -9944,13 +12670,6 @@ snapshots: - typescript - utf-8-validate - expect@27.5.1: - dependencies: - '@jest/types': 27.5.1 - jest-get-type: 27.5.1 - jest-matcher-utils: 27.5.1 - jest-message-util: 27.5.1 - expect@29.7.0: dependencies: '@jest/expect-utils': 29.7.0 @@ -9959,6 +12678,8 @@ snapshots: jest-message-util: 29.7.0 jest-util: 29.7.0 + exponential-backoff@3.1.1: {} + express@4.19.2: dependencies: accepts: 1.3.8 @@ -10081,6 +12802,16 @@ snapshots: filter-obj@1.1.0: {} + finalhandler@1.1.2: + dependencies: + debug: 2.6.9 + encodeurl: 1.0.2 + escape-html: 1.0.3 + on-finished: 2.3.0 + parseurl: 1.3.3 + statuses: 1.5.0 + unpipe: 1.0.0 + finalhandler@1.2.0: dependencies: debug: 2.6.9 @@ -10091,6 +12822,16 @@ snapshots: statuses: 2.0.1 unpipe: 1.0.0 + find-cache-dir@2.1.0: + dependencies: + commondir: 1.0.1 + make-dir: 2.1.0 + pkg-dir: 3.0.0 + + find-up@3.0.0: + dependencies: + locate-path: 3.0.0 + find-up@4.1.0: dependencies: locate-path: 5.0.0 @@ -10114,6 +12855,10 @@ snapshots: flatted@3.3.1: {} + flow-enums-runtime@0.0.6: {} + + flow-parser@0.251.1: {} + flushwritable@1.0.0: {} follow-redirects@1.15.6: {} @@ -10137,12 +12882,6 @@ snapshots: combined-stream: 1.0.8 mime-types: 2.1.35 - form-data@3.0.1: - dependencies: - asynckit: 0.4.0 - combined-stream: 1.0.8 - mime-types: 2.1.35 - form-data@4.0.0: dependencies: asynckit: 0.4.0 @@ -10165,6 +12904,12 @@ snapshots: jsonfile: 6.1.0 universalify: 2.0.1 + fs-extra@8.1.0: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 4.0.0 + universalify: 0.1.2 + fs-minipass@2.1.0: dependencies: minipass: 3.3.6 @@ -10282,7 +13027,7 @@ snapshots: fs.realpath: 1.0.0 inflight: 1.0.6 inherits: 2.0.4 - minimatch: 3.0.8 + minimatch: 3.1.2 once: 1.4.0 path-is-absolute: 1.0.1 @@ -10397,6 +13142,8 @@ snapshots: grapheme-splitter@1.0.4: {} + graphemer@1.4.0: {} + gzip-size@6.0.0: dependencies: duplexer: 0.1.2 @@ -10444,6 +13191,22 @@ snapshots: helpertypes@0.0.18: {} + hermes-estree@0.19.1: {} + + hermes-estree@0.23.1: {} + + hermes-parser@0.19.1: + dependencies: + hermes-estree: 0.19.1 + + hermes-parser@0.23.1: + dependencies: + hermes-estree: 0.23.1 + + hermes-profile-transformer@0.0.6: + dependencies: + source-map: 0.7.4 + hosted-git-info@2.8.9: {} hosted-git-info@4.1.0: @@ -10454,9 +13217,9 @@ snapshots: dependencies: lru-cache: 10.4.3 - html-encoding-sniffer@2.0.1: + html-encoding-sniffer@3.0.0: dependencies: - whatwg-encoding: 1.0.5 + whatwg-encoding: 2.0.0 html-escaper@2.0.2: {} @@ -10478,6 +13241,14 @@ snapshots: transitivePeerDependencies: - supports-color + http-proxy-agent@5.0.0: + dependencies: + '@tootallnate/once': 2.0.0 + agent-base: 6.0.2 + debug: 4.3.6 + transitivePeerDependencies: + - supports-color + http-proxy-agent@7.0.2: dependencies: agent-base: 7.1.1 @@ -10534,7 +13305,6 @@ snapshots: iconv-lite@0.6.3: dependencies: safer-buffer: 2.1.2 - optional: true ieee754@1.2.1: {} @@ -10546,8 +13316,17 @@ snapshots: ignore@5.3.2: {} + image-size@1.1.1: + dependencies: + queue: 6.0.2 + immediate@3.0.6: {} + import-fresh@2.0.0: + dependencies: + caller-path: 2.0.0 + resolve-from: 3.0.0 + import-fresh@3.3.0: dependencies: parent-module: 1.0.1 @@ -10603,6 +13382,10 @@ snapshots: hasown: 2.0.2 side-channel: 1.0.6 + invariant@2.2.4: + dependencies: + loose-envify: 1.4.0 + ip-address@9.0.5: dependencies: jsbn: 1.1.0 @@ -10628,6 +13411,10 @@ snapshots: is-arrayish@0.2.1: {} + is-async-function@2.0.0: + dependencies: + has-tostringtag: 1.0.2 + is-bigint@1.0.4: dependencies: has-bigints: 1.0.2 @@ -10659,20 +13446,34 @@ snapshots: dependencies: has-tostringtag: 1.0.2 + is-directory@0.3.1: {} + + is-docker@2.2.1: {} + is-error@2.2.2: {} is-extglob@2.1.1: {} + is-finalizationregistry@1.0.2: + dependencies: + call-bind: 1.0.7 + is-fullwidth-code-point@1.0.0: dependencies: number-is-nan: 1.0.1 + is-fullwidth-code-point@2.0.0: {} + is-fullwidth-code-point@3.0.0: {} is-fullwidth-code-point@4.0.0: {} is-generator-fn@2.1.0: {} + is-generator-function@1.0.10: + dependencies: + has-tostringtag: 1.0.2 + is-glob@4.0.3: dependencies: is-extglob: 2.1.1 @@ -10697,8 +13498,14 @@ snapshots: is-path-inside@4.0.0: {} + is-plain-obj@2.1.0: {} + is-plain-obj@4.1.0: {} + is-plain-object@2.0.4: + dependencies: + isobject: 3.0.1 + is-plain-object@5.0.0: {} is-potential-custom-element-name@1.0.1: {} @@ -10755,6 +13562,12 @@ snapshots: call-bind: 1.0.7 get-intrinsic: 1.2.4 + is-wsl@1.1.0: {} + + is-wsl@2.2.0: + dependencies: + is-docker: 2.2.1 + is2@2.0.9: dependencies: deep-is: 0.1.4 @@ -10771,6 +13584,8 @@ snapshots: isexe@3.1.1: {} + isobject@3.0.1: {} + isstream@0.1.2: {} istanbul-lib-coverage@3.2.2: {} @@ -10778,13 +13593,23 @@ snapshots: istanbul-lib-instrument@5.2.1: dependencies: '@babel/core': 7.25.2 - '@babel/parser': 7.25.6 + '@babel/parser': 7.26.2 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.2 semver: 6.3.1 transitivePeerDependencies: - supports-color + istanbul-lib-instrument@6.0.3: + dependencies: + '@babel/core': 7.25.2 + '@babel/parser': 7.26.2 + '@istanbuljs/schema': 0.1.3 + istanbul-lib-coverage: 3.2.2 + semver: 7.6.3 + transitivePeerDependencies: + - supports-color + istanbul-lib-report@3.0.1: dependencies: istanbul-lib-coverage: 3.2.2 @@ -10804,6 +13629,14 @@ snapshots: html-escaper: 2.0.2 istanbul-lib-report: 3.0.1 + iterator.prototype@1.1.3: + dependencies: + define-properties: 1.2.1 + get-intrinsic: 1.2.4 + has-symbols: 1.0.3 + reflect.getprototypeof: 1.0.6 + set-function-name: 2.0.2 + jackspeak@3.4.3: dependencies: '@isaacs/cliui': 8.0.2 @@ -10824,152 +13657,168 @@ snapshots: glob: 10.4.5 jasmine-core: 5.2.0 - jest-changed-files@27.5.1: + jest-changed-files@29.7.0: dependencies: - '@jest/types': 27.5.1 execa: 5.1.1 - throat: 6.0.2 + jest-util: 29.7.0 + p-limit: 3.1.0 - jest-circus@27.5.1: + jest-circus@29.7.0: dependencies: - '@jest/environment': 27.5.1 - '@jest/test-result': 27.5.1 - '@jest/types': 27.5.1 + '@jest/environment': 29.7.0 + '@jest/expect': 29.7.0 + '@jest/test-result': 29.7.0 + '@jest/types': 29.6.3 '@types/node': 14.6.4 chalk: 4.1.2 co: 4.6.0 - dedent: 0.7.0 - expect: 27.5.1 + dedent: 1.5.3 is-generator-fn: 2.1.0 - jest-each: 27.5.1 - jest-matcher-utils: 27.5.1 - jest-message-util: 27.5.1 - jest-runtime: 27.5.1 - jest-snapshot: 27.5.1 - jest-util: 27.5.1 - pretty-format: 27.5.1 + jest-each: 29.7.0 + jest-matcher-utils: 29.7.0 + jest-message-util: 29.7.0 + jest-runtime: 29.7.0 + jest-snapshot: 29.7.0 + jest-util: 29.7.0 + p-limit: 3.1.0 + pretty-format: 29.7.0 + pure-rand: 6.1.0 slash: 3.0.0 stack-utils: 2.0.6 - throat: 6.0.2 transitivePeerDependencies: + - babel-plugin-macros - supports-color - jest-cli@27.5.1(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)): + jest-cli@29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)): dependencies: - '@jest/core': 27.5.1(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) - '@jest/test-result': 27.5.1 - '@jest/types': 27.5.1 + '@jest/core': 29.7.0(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) + '@jest/test-result': 29.7.0 + '@jest/types': 29.6.3 chalk: 4.1.2 + create-jest: 29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) exit: 0.1.2 - graceful-fs: 4.2.11 import-local: 3.2.0 - jest-config: 27.5.1(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) - jest-util: 27.5.1 - jest-validate: 27.5.1 - prompts: 2.4.2 - yargs: 16.2.0 + jest-config: 29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) + jest-util: 29.7.0 + jest-validate: 29.7.0 + yargs: 17.7.2 transitivePeerDependencies: - - bufferutil - - canvas + - '@types/node' + - babel-plugin-macros - supports-color - ts-node - - utf-8-validate - jest-cli@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)): + jest-cli@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)): dependencies: - '@jest/core': 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) - '@jest/test-result': 27.5.1 - '@jest/types': 27.5.1 + '@jest/core': 29.7.0(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + '@jest/test-result': 29.7.0 + '@jest/types': 29.6.3 chalk: 4.1.2 + create-jest: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) exit: 0.1.2 - graceful-fs: 4.2.11 import-local: 3.2.0 - jest-config: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) - jest-util: 27.5.1 - jest-validate: 27.5.1 - prompts: 2.4.2 - yargs: 16.2.0 + jest-config: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + jest-util: 29.7.0 + jest-validate: 29.7.0 + yargs: 17.7.2 transitivePeerDependencies: - - bufferutil - - canvas + - '@types/node' + - babel-plugin-macros - supports-color - ts-node - - utf-8-validate - jest-config@27.5.1(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)): + jest-config@29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)): dependencies: '@babel/core': 7.25.2 - '@jest/test-sequencer': 27.5.1 - '@jest/types': 27.5.1 - babel-jest: 27.5.1(@babel/core@7.25.2) + '@jest/test-sequencer': 29.7.0 + '@jest/types': 29.6.3 + babel-jest: 29.7.0(@babel/core@7.25.2) chalk: 4.1.2 ci-info: 3.9.0 deepmerge: 4.3.1 glob: 7.2.3 graceful-fs: 4.2.11 - jest-circus: 27.5.1 - jest-environment-jsdom: 27.5.1 - jest-environment-node: 27.5.1 - jest-get-type: 27.5.1 - jest-jasmine2: 27.5.1 - jest-regex-util: 27.5.1 - jest-resolve: 27.5.1 - jest-runner: 27.5.1 - jest-util: 27.5.1 - jest-validate: 27.5.1 + jest-circus: 29.7.0 + jest-environment-node: 29.7.0 + jest-get-type: 29.6.3 + jest-regex-util: 29.6.3 + jest-resolve: 29.7.0 + jest-runner: 29.7.0 + jest-util: 29.7.0 + jest-validate: 29.7.0 micromatch: 4.0.8 parse-json: 5.2.0 - pretty-format: 27.5.1 + pretty-format: 29.7.0 slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: + '@types/node': 14.6.4 ts-node: 10.9.2(@types/node@14.6.4)(typescript@4.6.4) transitivePeerDependencies: - - bufferutil - - canvas + - babel-plugin-macros - supports-color - - utf-8-validate - jest-config@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)): + jest-config@29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)): dependencies: '@babel/core': 7.25.2 - '@jest/test-sequencer': 27.5.1 - '@jest/types': 27.5.1 - babel-jest: 27.5.1(@babel/core@7.25.2) + '@jest/test-sequencer': 29.7.0 + '@jest/types': 29.6.3 + babel-jest: 29.7.0(@babel/core@7.25.2) chalk: 4.1.2 ci-info: 3.9.0 deepmerge: 4.3.1 glob: 7.2.3 graceful-fs: 4.2.11 - jest-circus: 27.5.1 - jest-environment-jsdom: 27.5.1 - jest-environment-node: 27.5.1 - jest-get-type: 27.5.1 - jest-jasmine2: 27.5.1 - jest-regex-util: 27.5.1 - jest-resolve: 27.5.1 - jest-runner: 27.5.1 - jest-util: 27.5.1 - jest-validate: 27.5.1 + jest-circus: 29.7.0 + jest-environment-node: 29.7.0 + jest-get-type: 29.6.3 + jest-regex-util: 29.6.3 + jest-resolve: 29.7.0 + jest-runner: 29.7.0 + jest-util: 29.7.0 + jest-validate: 29.7.0 micromatch: 4.0.8 parse-json: 5.2.0 - pretty-format: 27.5.1 + pretty-format: 29.7.0 slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: + '@types/node': 14.6.4 ts-node: 10.9.2(@types/node@20.16.3)(typescript@4.6.4) transitivePeerDependencies: - - bufferutil - - canvas + - babel-plugin-macros - supports-color - - utf-8-validate - jest-diff@27.5.1: + jest-config@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)): dependencies: + '@babel/core': 7.25.2 + '@jest/test-sequencer': 29.7.0 + '@jest/types': 29.6.3 + babel-jest: 29.7.0(@babel/core@7.25.2) chalk: 4.1.2 - diff-sequences: 27.5.1 - jest-get-type: 27.5.1 - pretty-format: 27.5.1 + ci-info: 3.9.0 + deepmerge: 4.3.1 + glob: 7.2.3 + graceful-fs: 4.2.11 + jest-circus: 29.7.0 + jest-environment-node: 29.7.0 + jest-get-type: 29.6.3 + jest-regex-util: 29.6.3 + jest-resolve: 29.7.0 + jest-runner: 29.7.0 + jest-util: 29.7.0 + jest-validate: 29.7.0 + micromatch: 4.0.8 + parse-json: 5.2.0 + pretty-format: 29.7.0 + slash: 3.0.0 + strip-json-comments: 3.1.1 + optionalDependencies: + '@types/node': 20.16.3 + ts-node: 10.9.2(@types/node@20.16.3)(typescript@4.6.4) + transitivePeerDependencies: + - babel-plugin-macros + - supports-color jest-diff@29.7.0: dependencies: @@ -10978,100 +13827,68 @@ snapshots: jest-get-type: 29.6.3 pretty-format: 29.7.0 - jest-docblock@27.5.1: + jest-docblock@29.7.0: dependencies: detect-newline: 3.1.0 - jest-each@27.5.1: + jest-each@29.7.0: dependencies: - '@jest/types': 27.5.1 + '@jest/types': 29.6.3 chalk: 4.1.2 - jest-get-type: 27.5.1 - jest-util: 27.5.1 - pretty-format: 27.5.1 + jest-get-type: 29.6.3 + jest-util: 29.7.0 + pretty-format: 29.7.0 - jest-environment-jsdom-global@3.0.0(jest-environment-jsdom@27.5.1): + jest-environment-jsdom-global@4.0.0(jest-environment-jsdom@29.7.0): dependencies: - jest-environment-jsdom: 27.5.1 + jest-environment-jsdom: 29.7.0 - jest-environment-jsdom@27.5.1: + jest-environment-jsdom@29.7.0: dependencies: - '@jest/environment': 27.5.1 - '@jest/fake-timers': 27.5.1 - '@jest/types': 27.5.1 + '@jest/environment': 29.7.0 + '@jest/fake-timers': 29.7.0 + '@jest/types': 29.6.3 + '@types/jsdom': 20.0.1 '@types/node': 14.6.4 - jest-mock: 27.5.1 - jest-util: 27.5.1 - jsdom: 16.7.0 + jest-mock: 29.7.0 + jest-util: 29.7.0 + jsdom: 20.0.3 transitivePeerDependencies: - bufferutil - - canvas - supports-color - utf-8-validate - jest-environment-node@27.5.1: + jest-environment-node@29.7.0: dependencies: - '@jest/environment': 27.5.1 - '@jest/fake-timers': 27.5.1 - '@jest/types': 27.5.1 + '@jest/environment': 29.7.0 + '@jest/fake-timers': 29.7.0 + '@jest/types': 29.6.3 '@types/node': 14.6.4 - jest-mock: 27.5.1 - jest-util: 27.5.1 - - jest-get-type@27.5.1: {} + jest-mock: 29.7.0 + jest-util: 29.7.0 jest-get-type@29.6.3: {} - jest-haste-map@27.5.1: + jest-haste-map@29.7.0: dependencies: - '@jest/types': 27.5.1 + '@jest/types': 29.6.3 '@types/graceful-fs': 4.1.9 '@types/node': 14.6.4 anymatch: 3.1.3 fb-watchman: 2.0.2 graceful-fs: 4.2.11 - jest-regex-util: 27.5.1 - jest-serializer: 27.5.1 - jest-util: 27.5.1 - jest-worker: 27.5.1 + jest-regex-util: 29.6.3 + jest-util: 29.7.0 + jest-worker: 29.7.0 micromatch: 4.0.8 walker: 1.0.8 optionalDependencies: fsevents: 2.3.3 - jest-jasmine2@27.5.1: - dependencies: - '@jest/environment': 27.5.1 - '@jest/source-map': 27.5.1 - '@jest/test-result': 27.5.1 - '@jest/types': 27.5.1 - '@types/node': 14.6.4 - chalk: 4.1.2 - co: 4.6.0 - expect: 27.5.1 - is-generator-fn: 2.1.0 - jest-each: 27.5.1 - jest-matcher-utils: 27.5.1 - jest-message-util: 27.5.1 - jest-runtime: 27.5.1 - jest-snapshot: 27.5.1 - jest-util: 27.5.1 - pretty-format: 27.5.1 - throat: 6.0.2 - transitivePeerDependencies: - - supports-color - - jest-leak-detector@27.5.1: - dependencies: - jest-get-type: 27.5.1 - pretty-format: 27.5.1 - - jest-matcher-utils@27.5.1: + jest-leak-detector@29.7.0: dependencies: - chalk: 4.1.2 - jest-diff: 27.5.1 - jest-get-type: 27.5.1 - pretty-format: 27.5.1 + jest-get-type: 29.6.3 + pretty-format: 29.7.0 jest-matcher-utils@29.7.0: dependencies: @@ -11092,21 +13909,9 @@ snapshots: slash: 3.0.0 stack-utils: 2.0.6 - jest-message-util@27.5.1: - dependencies: - '@babel/code-frame': 7.24.7 - '@jest/types': 27.5.1 - '@types/stack-utils': 2.0.3 - chalk: 4.1.2 - graceful-fs: 4.2.11 - micromatch: 4.0.8 - pretty-format: 27.5.1 - slash: 3.0.0 - stack-utils: 2.0.6 - jest-message-util@29.7.0: dependencies: - '@babel/code-frame': 7.24.7 + '@babel/code-frame': 7.26.2 '@jest/types': 29.6.3 '@types/stack-utils': 2.0.3 chalk: 4.1.2 @@ -11116,122 +13921,111 @@ snapshots: slash: 3.0.0 stack-utils: 2.0.6 - jest-mock@27.5.1: + jest-mock@29.7.0: dependencies: - '@jest/types': 27.5.1 + '@jest/types': 29.6.3 '@types/node': 14.6.4 + jest-util: 29.7.0 - jest-pnp-resolver@1.2.3(jest-resolve@27.5.1): + jest-pnp-resolver@1.2.3(jest-resolve@29.7.0): optionalDependencies: - jest-resolve: 27.5.1 + jest-resolve: 29.7.0 - jest-regex-util@27.5.1: {} + jest-regex-util@29.6.3: {} - jest-resolve-dependencies@27.5.1: + jest-resolve-dependencies@29.7.0: dependencies: - '@jest/types': 27.5.1 - jest-regex-util: 27.5.1 - jest-snapshot: 27.5.1 + jest-regex-util: 29.6.3 + jest-snapshot: 29.7.0 transitivePeerDependencies: - supports-color - jest-resolve@27.5.1: + jest-resolve@29.7.0: dependencies: - '@jest/types': 27.5.1 chalk: 4.1.2 graceful-fs: 4.2.11 - jest-haste-map: 27.5.1 - jest-pnp-resolver: 1.2.3(jest-resolve@27.5.1) - jest-util: 27.5.1 - jest-validate: 27.5.1 + jest-haste-map: 29.7.0 + jest-pnp-resolver: 1.2.3(jest-resolve@29.7.0) + jest-util: 29.7.0 + jest-validate: 29.7.0 resolve: 1.22.8 - resolve.exports: 1.1.1 + resolve.exports: 2.0.2 slash: 3.0.0 - jest-runner@27.5.1: + jest-runner@29.7.0: dependencies: - '@jest/console': 27.5.1 - '@jest/environment': 27.5.1 - '@jest/test-result': 27.5.1 - '@jest/transform': 27.5.1 - '@jest/types': 27.5.1 + '@jest/console': 29.7.0 + '@jest/environment': 29.7.0 + '@jest/test-result': 29.7.0 + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 '@types/node': 14.6.4 chalk: 4.1.2 - emittery: 0.8.1 + emittery: 0.13.1 graceful-fs: 4.2.11 - jest-docblock: 27.5.1 - jest-environment-jsdom: 27.5.1 - jest-environment-node: 27.5.1 - jest-haste-map: 27.5.1 - jest-leak-detector: 27.5.1 - jest-message-util: 27.5.1 - jest-resolve: 27.5.1 - jest-runtime: 27.5.1 - jest-util: 27.5.1 - jest-worker: 27.5.1 - source-map-support: 0.5.21 - throat: 6.0.2 + jest-docblock: 29.7.0 + jest-environment-node: 29.7.0 + jest-haste-map: 29.7.0 + jest-leak-detector: 29.7.0 + jest-message-util: 29.7.0 + jest-resolve: 29.7.0 + jest-runtime: 29.7.0 + jest-util: 29.7.0 + jest-watcher: 29.7.0 + jest-worker: 29.7.0 + p-limit: 3.1.0 + source-map-support: 0.5.13 transitivePeerDependencies: - - bufferutil - - canvas - supports-color - - utf-8-validate - jest-runtime@27.5.1: + jest-runtime@29.7.0: dependencies: - '@jest/environment': 27.5.1 - '@jest/fake-timers': 27.5.1 - '@jest/globals': 27.5.1 - '@jest/source-map': 27.5.1 - '@jest/test-result': 27.5.1 - '@jest/transform': 27.5.1 - '@jest/types': 27.5.1 + '@jest/environment': 29.7.0 + '@jest/fake-timers': 29.7.0 + '@jest/globals': 29.7.0 + '@jest/source-map': 29.6.3 + '@jest/test-result': 29.7.0 + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 + '@types/node': 14.6.4 chalk: 4.1.2 cjs-module-lexer: 1.4.0 collect-v8-coverage: 1.0.2 - execa: 5.1.1 glob: 7.2.3 graceful-fs: 4.2.11 - jest-haste-map: 27.5.1 - jest-message-util: 27.5.1 - jest-mock: 27.5.1 - jest-regex-util: 27.5.1 - jest-resolve: 27.5.1 - jest-snapshot: 27.5.1 - jest-util: 27.5.1 + jest-haste-map: 29.7.0 + jest-message-util: 29.7.0 + jest-mock: 29.7.0 + jest-regex-util: 29.6.3 + jest-resolve: 29.7.0 + jest-snapshot: 29.7.0 + jest-util: 29.7.0 slash: 3.0.0 strip-bom: 4.0.0 transitivePeerDependencies: - supports-color - jest-serializer@27.5.1: - dependencies: - '@types/node': 14.6.4 - graceful-fs: 4.2.11 - - jest-snapshot@27.5.1: + jest-snapshot@29.7.0: dependencies: '@babel/core': 7.25.2 - '@babel/generator': 7.25.6 - '@babel/plugin-syntax-typescript': 7.25.4(@babel/core@7.25.2) - '@babel/traverse': 7.25.6 - '@babel/types': 7.25.6 - '@jest/transform': 27.5.1 - '@jest/types': 27.5.1 - '@types/babel__traverse': 7.20.6 - '@types/prettier': 2.7.3 + '@babel/generator': 7.26.2 + '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.25.2) + '@babel/types': 7.26.0 + '@jest/expect-utils': 29.7.0 + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 babel-preset-current-node-syntax: 1.1.0(@babel/core@7.25.2) chalk: 4.1.2 - expect: 27.5.1 + expect: 29.7.0 graceful-fs: 4.2.11 - jest-diff: 27.5.1 - jest-get-type: 27.5.1 - jest-haste-map: 27.5.1 - jest-matcher-utils: 27.5.1 - jest-message-util: 27.5.1 - jest-util: 27.5.1 + jest-diff: 29.7.0 + jest-get-type: 29.6.3 + jest-matcher-utils: 29.7.0 + jest-message-util: 29.7.0 + jest-util: 29.7.0 natural-compare: 1.4.0 - pretty-format: 27.5.1 + pretty-format: 29.7.0 semver: 7.6.3 transitivePeerDependencies: - supports-color @@ -11254,15 +14048,6 @@ snapshots: is-ci: 2.0.0 micromatch: 4.0.8 - jest-util@27.5.1: - dependencies: - '@jest/types': 27.5.1 - '@types/node': 14.6.4 - chalk: 4.1.2 - ci-info: 3.9.0 - graceful-fs: 4.2.11 - picomatch: 2.3.1 - jest-util@29.7.0: dependencies: '@jest/types': 29.6.3 @@ -11272,23 +14057,24 @@ snapshots: graceful-fs: 4.2.11 picomatch: 2.3.1 - jest-validate@27.5.1: + jest-validate@29.7.0: dependencies: - '@jest/types': 27.5.1 + '@jest/types': 29.6.3 camelcase: 6.3.0 chalk: 4.1.2 - jest-get-type: 27.5.1 + jest-get-type: 29.6.3 leven: 3.1.0 - pretty-format: 27.5.1 + pretty-format: 29.7.0 - jest-watcher@27.5.1: + jest-watcher@29.7.0: dependencies: - '@jest/test-result': 27.5.1 - '@jest/types': 27.5.1 + '@jest/test-result': 29.7.0 + '@jest/types': 29.6.3 '@types/node': 14.6.4 ansi-escapes: 4.3.2 chalk: 4.1.2 - jest-util: 27.5.1 + emittery: 0.13.1 + jest-util: 29.7.0 string-length: 4.0.2 jest-worker@26.6.2: @@ -11297,35 +14083,44 @@ snapshots: merge-stream: 2.0.0 supports-color: 7.2.0 - jest-worker@27.5.1: + jest-worker@29.7.0: dependencies: '@types/node': 14.6.4 + jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 - jest@27.5.1(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)): + jest@29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)): dependencies: - '@jest/core': 27.5.1(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) + '@jest/core': 29.7.0(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) + '@jest/types': 29.6.3 import-local: 3.2.0 - jest-cli: 27.5.1(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) + jest-cli: 29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) transitivePeerDependencies: - - bufferutil - - canvas + - '@types/node' + - babel-plugin-macros - supports-color - ts-node - - utf-8-validate - jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)): + jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)): dependencies: - '@jest/core': 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + '@jest/core': 29.7.0(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + '@jest/types': 29.6.3 import-local: 3.2.0 - jest-cli: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + jest-cli: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) transitivePeerDependencies: - - bufferutil - - canvas + - '@types/node' + - babel-plugin-macros - supports-color - ts-node - - utf-8-validate + + joi@17.13.3: + dependencies: + '@hapi/hoek': 9.3.0 + '@hapi/topo': 5.1.0 + '@sideway/address': 4.1.5 + '@sideway/formula': 3.0.1 + '@sideway/pinpoint': 2.0.0 js-cleanup@1.2.0: dependencies: @@ -11350,35 +14145,62 @@ snapshots: jsbn@1.1.0: {} - jsdom@16.7.0: + jsc-android@250231.0.0: {} + + jsc-safe-url@0.2.4: {} + + jscodeshift@0.14.0: + dependencies: + '@babel/core': 7.25.2 + '@babel/parser': 7.25.6 + '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.25.2) + '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6(@babel/core@7.25.2) + '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.25.2) + '@babel/plugin-transform-modules-commonjs': 7.25.9(@babel/core@7.25.2) + '@babel/preset-flow': 7.25.9(@babel/core@7.25.2) + '@babel/preset-typescript': 7.26.0(@babel/core@7.25.2) + '@babel/register': 7.25.9(@babel/core@7.25.2) + babel-core: 7.0.0-bridge.0(@babel/core@7.25.2) + chalk: 4.1.2 + flow-parser: 0.251.1 + graceful-fs: 4.2.11 + micromatch: 4.0.8 + neo-async: 2.6.2 + node-dir: 0.1.17 + recast: 0.21.5 + temp: 0.8.4 + write-file-atomic: 2.4.3 + transitivePeerDependencies: + - supports-color + + jsdom@20.0.3: dependencies: abab: 2.0.6 acorn: 8.12.1 - acorn-globals: 6.0.0 - cssom: 0.4.4 + acorn-globals: 7.0.1 + cssom: 0.5.0 cssstyle: 2.3.0 - data-urls: 2.0.0 + data-urls: 3.0.2 decimal.js: 10.4.3 - domexception: 2.0.1 + domexception: 4.0.0 escodegen: 2.1.0 - form-data: 3.0.1 - html-encoding-sniffer: 2.0.1 - http-proxy-agent: 4.0.1 + form-data: 4.0.0 + html-encoding-sniffer: 3.0.0 + http-proxy-agent: 5.0.0 https-proxy-agent: 5.0.1 is-potential-custom-element-name: 1.0.1 nwsapi: 2.2.12 - parse5: 6.0.1 - saxes: 5.0.1 + parse5: 7.2.1 + saxes: 6.0.0 symbol-tree: 3.2.4 tough-cookie: 4.1.4 - w3c-hr-time: 1.0.2 - w3c-xmlserializer: 2.0.0 - webidl-conversions: 6.1.0 - whatwg-encoding: 1.0.5 - whatwg-mimetype: 2.3.0 - whatwg-url: 8.7.0 - ws: 7.5.10 - xml-name-validator: 3.0.0 + w3c-xmlserializer: 4.0.0 + webidl-conversions: 7.0.0 + whatwg-encoding: 2.0.0 + whatwg-mimetype: 3.0.0 + whatwg-url: 11.0.0 + ws: 8.18.0 + xml-name-validator: 4.0.0 transitivePeerDependencies: - bufferutil - supports-color @@ -11386,6 +14208,8 @@ snapshots: jsesc@2.5.2: {} + jsesc@3.0.2: {} + json-buffer@3.0.1: {} json-parse-better-errors@1.0.2: {} @@ -11404,6 +14228,10 @@ snapshots: json5@2.2.3: {} + jsonfile@4.0.0: + optionalDependencies: + graceful-fs: 4.2.11 + jsonfile@6.1.0: dependencies: universalify: 2.0.1 @@ -11421,6 +14249,13 @@ snapshots: jstimezonedetect@1.0.7: {} + jsx-ast-utils@3.3.5: + dependencies: + array-includes: 3.1.8 + array.prototype.flat: 1.3.2 + object.assign: 4.1.5 + object.values: 1.2.0 + jszip@3.10.1: dependencies: lie: 3.3.0 @@ -11432,6 +14267,8 @@ snapshots: dependencies: json-buffer: 3.0.1 + kind-of@6.0.3: {} + kleur@3.0.3: {} ky@0.33.3: {} @@ -11451,6 +14288,11 @@ snapshots: dependencies: immediate: 3.0.6 + lighthouse-logger@1.4.2: + dependencies: + debug: 2.6.9 + marky: 1.2.5 + lines-and-columns@1.2.4: {} lines-and-columns@2.0.4: {} @@ -11470,6 +14312,11 @@ snapshots: type-fest: 2.13.0 userhome: 1.0.0 + locate-path@3.0.0: + dependencies: + p-locate: 3.0.0 + path-exists: 3.0.0 + locate-path@5.0.0: dependencies: p-locate: 4.1.0 @@ -11484,6 +14331,8 @@ snapshots: lodash.clonedeep@4.5.0: {} + lodash.debounce@4.0.8: {} + lodash.flattendeep@4.4.0: {} lodash.isequal@4.5.0: {} @@ -11494,6 +14343,8 @@ snapshots: lodash.pickby@4.6.0: {} + lodash.throttle@4.1.1: {} + lodash.union@4.6.0: {} lodash.zip@4.2.0: {} @@ -11505,10 +14356,20 @@ snapshots: chalk: 4.1.2 is-unicode-supported: 0.1.0 + logkitty@0.7.1: + dependencies: + ansi-fragments: 0.2.1 + dayjs: 1.11.13 + yargs: 15.4.1 + loglevel-plugin-prefix@0.8.4: {} loglevel@1.9.1: {} + loose-envify@1.4.0: + dependencies: + js-tokens: 4.0.0 + lower-case@2.0.2: dependencies: tslib: 2.7.0 @@ -11547,6 +14408,11 @@ snapshots: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 + make-dir@2.1.0: + dependencies: + pify: 4.0.1 + semver: 5.7.2 + make-dir@4.0.0: dependencies: semver: 7.6.3 @@ -11582,6 +14448,8 @@ snapshots: dependencies: p-defer: 1.0.0 + marky@1.2.5: {} + matcher@5.0.0: dependencies: escape-string-regexp: 5.0.0 @@ -11601,16 +14469,198 @@ snapshots: map-age-cleaner: 0.1.3 mimic-fn: 4.0.0 + memoize-one@5.2.1: {} + memorystream@0.3.1: {} merge-descriptors@1.0.1: {} + merge-options@3.0.4: + dependencies: + is-plain-obj: 2.1.0 + merge-stream@2.0.0: {} merge2@1.4.1: {} methods@1.1.2: {} + metro-babel-transformer@0.80.12: + dependencies: + '@babel/core': 7.25.2 + flow-enums-runtime: 0.0.6 + hermes-parser: 0.23.1 + nullthrows: 1.1.1 + transitivePeerDependencies: + - supports-color + + metro-cache-key@0.80.12: + dependencies: + flow-enums-runtime: 0.0.6 + + metro-cache@0.80.12: + dependencies: + exponential-backoff: 3.1.1 + flow-enums-runtime: 0.0.6 + metro-core: 0.80.12 + + metro-config@0.80.12: + dependencies: + connect: 3.7.0 + cosmiconfig: 5.2.1 + flow-enums-runtime: 0.0.6 + jest-validate: 29.7.0 + metro: 0.80.12 + metro-cache: 0.80.12 + metro-core: 0.80.12 + metro-runtime: 0.80.12 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + metro-core@0.80.12: + dependencies: + flow-enums-runtime: 0.0.6 + lodash.throttle: 4.1.1 + metro-resolver: 0.80.12 + + metro-file-map@0.80.12: + dependencies: + anymatch: 3.1.3 + debug: 2.6.9 + fb-watchman: 2.0.2 + flow-enums-runtime: 0.0.6 + graceful-fs: 4.2.11 + invariant: 2.2.4 + jest-worker: 29.7.0 + micromatch: 4.0.8 + node-abort-controller: 3.1.1 + nullthrows: 1.1.1 + walker: 1.0.8 + optionalDependencies: + fsevents: 2.3.3 + + metro-minify-terser@0.80.12: + dependencies: + flow-enums-runtime: 0.0.6 + terser: 5.31.6 + + metro-resolver@0.80.12: + dependencies: + flow-enums-runtime: 0.0.6 + + metro-runtime@0.80.12: + dependencies: + '@babel/runtime': 7.25.6 + flow-enums-runtime: 0.0.6 + + metro-source-map@0.80.12: + dependencies: + '@babel/traverse': 7.25.6 + '@babel/types': 7.25.6 + flow-enums-runtime: 0.0.6 + invariant: 2.2.4 + metro-symbolicate: 0.80.12 + nullthrows: 1.1.1 + ob1: 0.80.12 + source-map: 0.5.7 + vlq: 1.0.1 + transitivePeerDependencies: + - supports-color + + metro-symbolicate@0.80.12: + dependencies: + flow-enums-runtime: 0.0.6 + invariant: 2.2.4 + metro-source-map: 0.80.12 + nullthrows: 1.1.1 + source-map: 0.5.7 + through2: 2.0.5 + vlq: 1.0.1 + transitivePeerDependencies: + - supports-color + + metro-transform-plugins@0.80.12: + dependencies: + '@babel/core': 7.25.2 + '@babel/generator': 7.25.6 + '@babel/template': 7.25.0 + '@babel/traverse': 7.25.6 + flow-enums-runtime: 0.0.6 + nullthrows: 1.1.1 + transitivePeerDependencies: + - supports-color + + metro-transform-worker@0.80.12: + dependencies: + '@babel/core': 7.25.2 + '@babel/generator': 7.25.6 + '@babel/parser': 7.25.6 + '@babel/types': 7.25.6 + flow-enums-runtime: 0.0.6 + metro: 0.80.12 + metro-babel-transformer: 0.80.12 + metro-cache: 0.80.12 + metro-cache-key: 0.80.12 + metro-minify-terser: 0.80.12 + metro-source-map: 0.80.12 + metro-transform-plugins: 0.80.12 + nullthrows: 1.1.1 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + + metro@0.80.12: + dependencies: + '@babel/code-frame': 7.24.7 + '@babel/core': 7.25.2 + '@babel/generator': 7.25.6 + '@babel/parser': 7.25.6 + '@babel/template': 7.25.0 + '@babel/traverse': 7.25.6 + '@babel/types': 7.25.6 + accepts: 1.3.8 + chalk: 4.1.2 + ci-info: 2.0.0 + connect: 3.7.0 + debug: 2.6.9 + denodeify: 1.2.1 + error-stack-parser: 2.1.4 + flow-enums-runtime: 0.0.6 + graceful-fs: 4.2.11 + hermes-parser: 0.23.1 + image-size: 1.1.1 + invariant: 2.2.4 + jest-worker: 29.7.0 + jsc-safe-url: 0.2.4 + lodash.throttle: 4.1.1 + metro-babel-transformer: 0.80.12 + metro-cache: 0.80.12 + metro-cache-key: 0.80.12 + metro-config: 0.80.12 + metro-core: 0.80.12 + metro-file-map: 0.80.12 + metro-resolver: 0.80.12 + metro-runtime: 0.80.12 + metro-source-map: 0.80.12 + metro-symbolicate: 0.80.12 + metro-transform-plugins: 0.80.12 + metro-transform-worker: 0.80.12 + mime-types: 2.1.35 + nullthrows: 1.1.1 + serialize-error: 2.1.0 + source-map: 0.5.7 + strip-ansi: 6.0.1 + throat: 5.0.0 + ws: 7.5.10 + yargs: 17.7.2 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + micro-spelling-correcter@1.1.1: {} micromatch@4.0.8: @@ -11626,6 +14676,8 @@ snapshots: mime@1.6.0: {} + mime@2.6.0: {} + mimic-fn@2.1.0: {} mimic-fn@4.0.0: {} @@ -11739,10 +14791,16 @@ snapshots: native-promise-only@0.8.1: {} + natural-compare-lite@1.4.0: {} + natural-compare@1.4.0: {} negotiator@0.6.3: {} + negotiator@0.6.4: {} + + neo-async@2.6.2: {} + netmask@2.0.2: {} nice-try@1.0.5: {} @@ -11752,6 +14810,14 @@ snapshots: lower-case: 2.0.2 tslib: 2.7.0 + nocache@3.0.4: {} + + node-abort-controller@3.1.1: {} + + node-dir@0.1.17: + dependencies: + minimatch: 3.1.2 + node-domexception@1.0.0: {} node-fetch@2.7.0(encoding@0.1.13): @@ -11766,6 +14832,8 @@ snapshots: fetch-blob: 3.2.0 formdata-polyfill: 4.0.10 + node-forge@1.3.1: {} + node-gyp@7.1.2: dependencies: env-paths: 2.2.1 @@ -11783,6 +14851,8 @@ snapshots: node-releases@2.0.18: {} + node-stream-zip@1.15.0: {} + nofilter@3.1.0: {} nopt@5.0.0: @@ -11876,12 +14946,18 @@ snapshots: gauge: 2.7.4 set-blocking: 2.0.0 + nullthrows@1.1.1: {} + number-is-nan@1.0.1: {} nwsapi@2.2.12: {} oauth-sign@0.9.0: {} + ob1@0.80.12: + dependencies: + flow-enums-runtime: 0.0.6 + object-assign@4.1.1: {} object-inspect@1.13.2: {} @@ -11902,6 +14978,25 @@ snapshots: has-symbols: 1.0.3 object-keys: 1.1.1 + object.entries@1.1.8: + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-object-atoms: 1.0.0 + + object.fromentries@2.0.8: + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-abstract: 1.23.3 + es-object-atoms: 1.0.0 + + object.values@1.2.0: + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-object-atoms: 1.0.0 + on-finished@2.3.0: dependencies: ee-first: 1.1.1 @@ -11924,6 +15019,15 @@ snapshots: dependencies: mimic-fn: 4.0.0 + open@6.4.0: + dependencies: + is-wsl: 1.1.0 + + open@7.4.2: + dependencies: + is-docker: 2.2.1 + is-wsl: 2.2.0 + optionator@0.9.4: dependencies: deep-is: 0.1.4 @@ -11969,6 +15073,10 @@ snapshots: dependencies: yocto-queue: 1.1.1 + p-locate@3.0.0: + dependencies: + p-limit: 2.3.0 + p-locate@4.1.0: dependencies: p-limit: 2.3.0 @@ -12057,14 +15165,14 @@ snapshots: parse-json@5.2.0: dependencies: - '@babel/code-frame': 7.24.7 + '@babel/code-frame': 7.26.2 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 parse-json@7.1.1: dependencies: - '@babel/code-frame': 7.24.7 + '@babel/code-frame': 7.26.2 error-ex: 1.3.2 json-parse-even-better-errors: 3.0.2 lines-and-columns: 2.0.4 @@ -12074,7 +15182,9 @@ snapshots: parse-ms@3.0.0: {} - parse5@6.0.1: {} + parse5@7.2.1: + dependencies: + entities: 4.5.0 parseurl@1.3.3: {} @@ -12088,6 +15198,8 @@ snapshots: dot-case: 3.0.4 tslib: 2.7.0 + path-exists@3.0.0: {} + path-exists@4.0.0: {} path-exists@5.0.0: {} @@ -12136,6 +15248,8 @@ snapshots: pify@3.0.0: {} + pify@4.0.1: {} + pirates@4.0.6: {} pkg-conf@4.0.0: @@ -12143,6 +15257,10 @@ snapshots: find-up: 6.3.0 load-json-file: 7.0.1 + pkg-dir@3.0.0: + dependencies: + find-up: 3.0.0 + pkg-dir@4.2.0: dependencies: find-up: 4.1.0 @@ -12164,6 +15282,10 @@ snapshots: prelude-ls@1.2.1: {} + prettier-linter-helpers@1.0.0: + dependencies: + fast-diff: 1.3.0 + pretty-format@26.6.2: dependencies: '@jest/types': 26.6.2 @@ -12204,11 +15326,21 @@ snapshots: err-code: 2.0.3 retry: 0.12.0 + promise@8.3.0: + dependencies: + asap: 2.0.6 + prompts@2.4.2: dependencies: kleur: 3.0.3 sisteransi: 1.0.5 + prop-types@15.8.1: + dependencies: + loose-envify: 1.4.0 + object-assign: 4.1.1 + react-is: 16.13.1 + proxy-addr@2.0.7: dependencies: forwarded: 0.2.0 @@ -12280,6 +15412,8 @@ snapshots: - supports-color - utf-8-validate + pure-rand@6.1.0: {} + qs@6.11.0: dependencies: side-channel: 1.0.6 @@ -12295,12 +15429,18 @@ snapshots: split-on-first: 1.1.0 strict-uri-encode: 2.0.0 + querystring@0.2.1: {} + querystringify@2.2.0: {} queue-microtask@1.2.3: {} queue-tick@1.0.1: {} + queue@6.0.2: + dependencies: + inherits: 2.0.4 + quick-lru@5.1.1: {} randombytes@2.1.0: @@ -12318,10 +15458,81 @@ snapshots: iconv-lite: 0.4.24 unpipe: 1.0.0 + react-devtools-core@5.3.2: + dependencies: + shell-quote: 1.8.1 + ws: 7.5.10 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + + react-is@16.13.1: {} + react-is@17.0.2: {} react-is@18.3.1: {} + react-native@0.74.5(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0): + dependencies: + '@jest/create-cache-key-function': 29.7.0 + '@react-native-community/cli': 13.6.9(encoding@0.1.13) + '@react-native-community/cli-platform-android': 13.6.9(encoding@0.1.13) + '@react-native-community/cli-platform-ios': 13.6.9(encoding@0.1.13) + '@react-native/assets-registry': 0.74.87 + '@react-native/codegen': 0.74.87 + '@react-native/community-cli-plugin': 0.74.87(encoding@0.1.13) + '@react-native/gradle-plugin': 0.74.87 + '@react-native/js-polyfills': 0.74.87 + '@react-native/normalize-colors': 0.74.87 + '@react-native/virtualized-lists': 0.74.87(@types/react@18.3.12)(react-native@0.74.5(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0))(react@18.2.0) + abort-controller: 3.0.0 + anser: 1.4.10 + ansi-regex: 5.0.1 + base64-js: 1.5.1 + chalk: 4.1.2 + event-target-shim: 5.0.1 + flow-enums-runtime: 0.0.6 + invariant: 2.2.4 + jest-environment-node: 29.7.0 + jsc-android: 250231.0.0 + memoize-one: 5.2.1 + metro-runtime: 0.80.12 + metro-source-map: 0.80.12 + mkdirp: 0.5.6 + nullthrows: 1.1.1 + pretty-format: 26.6.2 + promise: 8.3.0 + react: 18.2.0 + react-devtools-core: 5.3.2 + react-refresh: 0.14.2 + react-shallow-renderer: 16.15.0(react@18.2.0) + regenerator-runtime: 0.13.11 + scheduler: 0.24.0-canary-efb381bbf-20230505 + stacktrace-parser: 0.1.10 + whatwg-fetch: 3.6.20 + ws: 6.2.3 + yargs: 17.7.2 + optionalDependencies: + '@types/react': 18.3.12 + transitivePeerDependencies: + - '@babel/preset-env' + - bufferutil + - encoding + - supports-color + - utf-8-validate + + react-refresh@0.14.2: {} + + react-shallow-renderer@16.15.0(react@18.2.0): + dependencies: + object-assign: 4.1.1 + react: 18.2.0 + react-is: 18.3.1 + + react@18.2.0: + dependencies: + loose-envify: 1.4.0 + read-package-json-fast@2.0.3: dependencies: json-parse-even-better-errors: 2.3.1 @@ -12378,12 +15589,43 @@ snapshots: dependencies: picomatch: 2.3.1 + readline@1.3.0: {} + + recast@0.21.5: + dependencies: + ast-types: 0.15.2 + esprima: 4.0.1 + source-map: 0.6.1 + tslib: 2.7.0 + recursive-readdir@2.2.3: dependencies: minimatch: 3.1.2 + reflect.getprototypeof@1.0.6: + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-abstract: 1.23.3 + es-errors: 1.3.0 + get-intrinsic: 1.2.4 + globalthis: 1.0.4 + which-builtin-type: 1.1.4 + + regenerate-unicode-properties@10.2.0: + dependencies: + regenerate: 1.4.2 + + regenerate@1.4.2: {} + + regenerator-runtime@0.13.11: {} + regenerator-runtime@0.14.1: {} + regenerator-transform@0.15.2: + dependencies: + '@babel/runtime': 7.25.6 + regexp.prototype.flags@1.5.2: dependencies: call-bind: 1.0.7 @@ -12393,6 +15635,21 @@ snapshots: regexpp@3.2.0: {} + regexpu-core@6.1.1: + dependencies: + regenerate: 1.4.2 + regenerate-unicode-properties: 10.2.0 + regjsgen: 0.8.0 + regjsparser: 0.11.2 + unicode-match-property-ecmascript: 2.0.0 + unicode-match-property-value-ecmascript: 2.2.0 + + regjsgen@0.8.0: {} + + regjsparser@0.11.2: + dependencies: + jsesc: 3.0.2 + remove-trailing-separator@1.1.0: {} replace-ext@1.0.1: {} @@ -12422,6 +15679,8 @@ snapshots: require-directory@2.1.1: {} + require-main-filename@2.0.0: {} + requires-port@1.0.0: {} resolve-alpn@1.2.1: {} @@ -12430,11 +15689,13 @@ snapshots: dependencies: resolve-from: 5.0.0 + resolve-from@3.0.0: {} + resolve-from@4.0.0: {} resolve-from@5.0.0: {} - resolve.exports@1.1.1: {} + resolve.exports@2.0.2: {} resolve@1.22.8: dependencies: @@ -12442,6 +15703,12 @@ snapshots: path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 + resolve@2.0.0-next.5: + dependencies: + is-core-module: 2.15.1 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + responselike@2.0.1: dependencies: lowercase-keys: 2.0.0 @@ -12465,6 +15732,10 @@ snapshots: rgb2hex@0.2.5: {} + rimraf@2.6.3: + dependencies: + glob: 7.2.3 + rimraf@3.0.2: dependencies: glob: 7.2.3 @@ -12515,7 +15786,7 @@ snapshots: serialize-javascript: 4.0.0 terser: 5.31.6 - rollup-plugin-ts@2.0.7(@babel/core@7.25.2)(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4): + rollup-plugin-ts@2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4): dependencies: '@rollup/pluginutils': 4.2.1 '@wessberg/stringutil': 1.0.19 @@ -12531,6 +15802,7 @@ snapshots: typescript: 4.6.4 optionalDependencies: '@babel/core': 7.25.2 + '@babel/plugin-transform-runtime': 7.25.9(@babel/core@7.25.2) '@babel/runtime': 7.25.6 rollup-pluginutils@2.8.2: @@ -12585,10 +15857,19 @@ snapshots: tunnel: 0.0.6 yargs: 17.7.2 - saxes@5.0.1: + saxes@6.0.0: dependencies: xmlchars: 2.2.0 + scheduler@0.24.0-canary-efb381bbf-20230505: + dependencies: + loose-envify: 1.4.0 + + selfsigned@2.4.1: + dependencies: + '@types/node-forge': 1.3.11 + node-forge: 1.3.1 + semver@5.7.2: {} semver@6.3.1: {} @@ -12621,6 +15902,8 @@ snapshots: dependencies: type-fest: 2.19.0 + serialize-error@2.1.0: {} + serialize-error@7.0.1: dependencies: type-fest: 0.13.1 @@ -12663,6 +15946,10 @@ snapshots: charenc: 0.0.2 crypt: 0.0.2 + shallow-clone@3.0.1: + dependencies: + kind-of: 6.0.3 + shebang-command@1.2.0: dependencies: shebang-regex: 1.0.0 @@ -12696,6 +15983,12 @@ snapshots: slash@4.0.0: {} + slice-ansi@2.1.0: + dependencies: + ansi-styles: 3.2.1 + astral-regex: 1.0.0 + is-fullwidth-code-point: 2.0.0 + slice-ansi@5.0.0: dependencies: ansi-styles: 6.2.1 @@ -12729,6 +16022,11 @@ snapshots: ip-address: 9.0.5 smart-buffer: 4.2.0 + source-map-support@0.5.13: + dependencies: + buffer-from: 1.1.2 + source-map: 0.6.1 + source-map-support@0.5.21: dependencies: buffer-from: 1.1.2 @@ -12814,6 +16112,14 @@ snapshots: dependencies: escape-string-regexp: 2.0.0 + stackframe@1.3.4: {} + + stacktrace-parser@0.1.10: + dependencies: + type-fest: 0.7.1 + + statuses@1.5.0: {} + statuses@2.0.1: {} stop-iteration-iterator@1.0.0: @@ -12839,6 +16145,8 @@ snapshots: char-regex: 1.0.2 strip-ansi: 6.0.1 + string-natural-compare@3.0.1: {} + string-width@1.0.2: dependencies: code-point-at: 1.1.0 @@ -12857,6 +16165,21 @@ snapshots: emoji-regex: 9.2.2 strip-ansi: 7.1.0 + string.prototype.matchall@4.0.11: + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-abstract: 1.23.3 + es-errors: 1.3.0 + es-object-atoms: 1.0.0 + get-intrinsic: 1.2.4 + gopd: 1.0.1 + has-symbols: 1.0.3 + internal-slot: 1.0.7 + regexp.prototype.flags: 1.5.2 + set-function-name: 2.0.2 + side-channel: 1.0.6 + string.prototype.padend@3.1.6: dependencies: call-bind: 1.0.7 @@ -12864,6 +16187,11 @@ snapshots: es-abstract: 1.23.3 es-object-atoms: 1.0.0 + string.prototype.repeat@1.0.0: + dependencies: + define-properties: 1.2.1 + es-abstract: 1.23.3 + string.prototype.trim@1.2.9: dependencies: call-bind: 1.0.7 @@ -12895,6 +16223,10 @@ snapshots: dependencies: ansi-regex: 2.1.1 + strip-ansi@5.2.0: + dependencies: + ansi-regex: 4.1.1 + strip-ansi@6.0.1: dependencies: ansi-regex: 5.0.1 @@ -12915,6 +16247,8 @@ snapshots: strnum@1.0.5: {} + sudo-prompt@9.2.1: {} + supertap@3.0.1: dependencies: indent-string: 5.0.0 @@ -12934,11 +16268,6 @@ snapshots: dependencies: has-flag: 4.0.0 - supports-hyperlinks@2.3.0: - dependencies: - has-flag: 4.0.0 - supports-color: 7.2.0 - supports-preserve-symlinks-flag@1.0.0: {} symbol-tree@3.2.4: {} @@ -13004,12 +16333,13 @@ snapshots: transitivePeerDependencies: - supports-color + temp-dir@2.0.0: {} + temp-dir@3.0.0: {} - terminal-link@2.1.1: + temp@0.8.4: dependencies: - ansi-escapes: 4.3.2 - supports-hyperlinks: 2.3.0 + rimraf: 2.6.3 terser@5.31.6: dependencies: @@ -13030,7 +16360,12 @@ snapshots: text-table@0.2.0: {} - throat@6.0.2: {} + throat@5.0.0: {} + + through2@2.0.5: + dependencies: + readable-stream: 2.3.8 + xtend: 4.0.2 through@2.3.8: {} @@ -13068,7 +16403,7 @@ snapshots: tr46@0.0.3: {} - tr46@2.1.0: + tr46@3.0.0: dependencies: punycode: 2.3.1 @@ -13081,39 +16416,43 @@ snapshots: compatfactory: 0.0.13(typescript@4.6.4) typescript: 4.6.4 - ts-jest@27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)))(typescript@4.6.4): + ts-jest@29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)))(typescript@4.6.4): dependencies: bs-logger: 0.2.6 + ejs: 3.1.10 fast-json-stable-stringify: 2.1.0 - jest: 27.5.1(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) - jest-util: 27.5.1 + jest: 29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) + jest-util: 29.7.0 json5: 2.2.3 lodash.memoize: 4.1.2 make-error: 1.3.6 semver: 7.6.3 typescript: 4.6.4 - yargs-parser: 20.2.9 + yargs-parser: 21.1.1 optionalDependencies: '@babel/core': 7.25.2 - '@types/jest': 27.4.1 - babel-jest: 27.5.1(@babel/core@7.25.2) + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 + babel-jest: 29.7.0(@babel/core@7.25.2) - ts-jest@27.1.5(@babel/core@7.25.2)(@types/jest@27.4.1)(babel-jest@27.5.1(@babel/core@7.25.2))(jest@27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4): + ts-jest@29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4): dependencies: bs-logger: 0.2.6 + ejs: 3.1.10 fast-json-stable-stringify: 2.1.0 - jest: 27.5.1(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) - jest-util: 27.5.1 + jest: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + jest-util: 29.7.0 json5: 2.2.3 lodash.memoize: 4.1.2 make-error: 1.3.6 semver: 7.6.3 typescript: 4.6.4 - yargs-parser: 20.2.9 + yargs-parser: 21.1.1 optionalDependencies: '@babel/core': 7.25.2 - '@types/jest': 27.4.1 - babel-jest: 27.5.1(@babel/core@7.25.2) + '@jest/transform': 29.7.0 + '@jest/types': 29.6.3 + babel-jest: 29.7.0(@babel/core@7.25.2) ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4): dependencies: @@ -13181,6 +16520,8 @@ snapshots: type-fest@0.21.3: {} + type-fest@0.7.1: {} + type-fest@2.13.0: {} type-fest@2.19.0: {} @@ -13226,10 +16567,6 @@ snapshots: is-typed-array: 1.1.13 possible-typed-array-names: 1.0.0 - typedarray-to-buffer@3.1.5: - dependencies: - is-typedarray: 1.0.0 - typescript@4.6.4: {} ua-parser-js@1.0.38: {} @@ -13250,6 +16587,17 @@ snapshots: undici-types@6.19.8: {} + unicode-canonical-property-names-ecmascript@2.0.1: {} + + unicode-match-property-ecmascript@2.0.0: + dependencies: + unicode-canonical-property-names-ecmascript: 2.0.1 + unicode-property-aliases-ecmascript: 2.1.0 + + unicode-match-property-value-ecmascript@2.2.0: {} + + unicode-property-aliases-ecmascript@2.1.0: {} + unique-filename@1.1.1: dependencies: unique-slug: 2.0.2 @@ -13258,6 +16606,8 @@ snapshots: dependencies: imurmurhash: 0.1.4 + universalify@0.1.2: {} + universalify@0.2.0: {} universalify@2.0.1: {} @@ -13270,6 +16620,12 @@ snapshots: escalade: 3.2.0 picocolors: 1.1.0 + update-browserslist-db@1.1.1(browserslist@4.24.2): + dependencies: + browserslist: 4.24.2 + escalade: 3.2.0 + picocolors: 1.1.0 + upper-case-first@2.0.2: dependencies: tslib: 2.7.0 @@ -13307,11 +16663,11 @@ snapshots: v8-compile-cache@2.4.0: {} - v8-to-istanbul@8.1.1: + v8-to-istanbul@9.3.0: dependencies: + '@jridgewell/trace-mapping': 0.3.25 '@types/istanbul-lib-coverage': 2.0.6 - convert-source-map: 1.9.0 - source-map: 0.7.4 + convert-source-map: 2.0.0 validate-npm-package-license@3.0.4: dependencies: @@ -13343,13 +16699,11 @@ snapshots: remove-trailing-separator: 1.1.0 replace-ext: 1.0.1 - w3c-hr-time@1.0.2: - dependencies: - browser-process-hrtime: 1.0.0 + vlq@1.0.1: {} - w3c-xmlserializer@2.0.0: + w3c-xmlserializer@4.0.0: dependencies: - xml-name-validator: 3.0.0 + xml-name-validator: 4.0.0 wait-port@1.1.0: dependencies: @@ -13467,31 +16821,28 @@ snapshots: webidl-conversions@3.0.1: {} - webidl-conversions@5.0.0: {} - - webidl-conversions@6.1.0: {} + webidl-conversions@7.0.0: {} well-known-symbols@2.0.0: {} - whatwg-encoding@1.0.5: + whatwg-encoding@2.0.0: dependencies: - iconv-lite: 0.4.24 + iconv-lite: 0.6.3 whatwg-fetch@3.6.20: {} - whatwg-mimetype@2.3.0: {} + whatwg-mimetype@3.0.0: {} + + whatwg-url@11.0.0: + dependencies: + tr46: 3.0.0 + webidl-conversions: 7.0.0 whatwg-url@5.0.0: dependencies: tr46: 0.0.3 webidl-conversions: 3.0.1 - whatwg-url@8.7.0: - dependencies: - lodash: 4.17.21 - tr46: 2.1.0 - webidl-conversions: 6.1.0 - which-boxed-primitive@1.0.2: dependencies: is-bigint: 1.0.4 @@ -13500,6 +16851,21 @@ snapshots: is-string: 1.0.7 is-symbol: 1.0.4 + which-builtin-type@1.1.4: + dependencies: + function.prototype.name: 1.1.6 + has-tostringtag: 1.0.2 + is-async-function: 2.0.0 + is-date-object: 1.0.5 + is-finalizationregistry: 1.0.2 + is-generator-function: 1.0.10 + is-regex: 1.1.4 + is-weakref: 1.0.2 + isarray: 2.0.5 + which-boxed-primitive: 1.0.2 + which-collection: 1.0.2 + which-typed-array: 1.1.15 + which-collection@1.0.2: dependencies: is-map: 2.0.3 @@ -13507,6 +16873,8 @@ snapshots: is-weakmap: 2.0.2 is-weakset: 2.0.3 + which-module@2.0.1: {} + which-typed-array@1.1.15: dependencies: available-typed-arrays: 1.0.7 @@ -13557,49 +16925,68 @@ snapshots: wrappy@1.0.2: {} - write-file-atomic@3.0.3: + write-file-atomic@2.4.3: + dependencies: + graceful-fs: 4.2.11 + imurmurhash: 0.1.4 + signal-exit: 3.0.7 + + write-file-atomic@4.0.2: dependencies: imurmurhash: 0.1.4 - is-typedarray: 1.0.0 signal-exit: 3.0.7 - typedarray-to-buffer: 3.1.5 write-file-atomic@5.0.1: dependencies: imurmurhash: 0.1.4 signal-exit: 4.1.0 + ws@6.2.3: + dependencies: + async-limiter: 1.0.1 + ws@7.5.10: {} ws@8.13.0: {} ws@8.18.0: {} - xml-name-validator@3.0.0: {} + xml-name-validator@4.0.0: {} xmlchars@2.2.0: {} xtend@4.0.2: {} + y18n@4.0.3: {} + y18n@5.0.8: {} yallist@3.1.1: {} yallist@4.0.0: {} - yargs-parser@20.2.9: {} + yaml@2.6.0: {} + + yargs-parser@18.1.3: + dependencies: + camelcase: 5.3.1 + decamelize: 1.2.0 yargs-parser@21.1.1: {} - yargs@16.2.0: + yargs@15.4.1: dependencies: - cliui: 7.0.4 - escalade: 3.2.0 + cliui: 6.0.0 + decamelize: 1.2.0 + find-up: 4.1.0 get-caller-file: 2.0.5 require-directory: 2.1.1 + require-main-filename: 2.0.0 + set-blocking: 2.0.0 string-width: 4.2.3 - y18n: 5.0.8 - yargs-parser: 20.2.9 + which-module: 2.0.1 + y18n: 4.0.3 + yargs-parser: 18.1.3 yargs@17.7.1: dependencies: diff --git a/common/config/rush/repo-state.json b/common/config/rush/repo-state.json index ccb6e240d..ca6578497 100644 --- a/common/config/rush/repo-state.json +++ b/common/config/rush/repo-state.json @@ -1,5 +1,5 @@ // DO NOT MODIFY THIS FILE MANUALLY BUT DO COMMIT IT. It is generated and used by Rush. { - "pnpmShrinkwrapHash": "6693fc661ad5b6461d8a0fbbecf81c5f61d703bb", + "pnpmShrinkwrapHash": "0c38b5ba356c83f3a423ee80a2973f1e938848b4", "preferredVersionsHash": "bf21a9e8fbc5a3846fb05b4fa0859e0917b2202f" } diff --git a/libraries/browser-tracker-core/package.json b/libraries/browser-tracker-core/package.json index 9591b071b..86e3d1641 100644 --- a/libraries/browser-tracker-core/package.json +++ b/libraries/browser-tracker-core/package.json @@ -31,23 +31,23 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@types/sha1": "~1.1.3", "@types/uuid": "^10.0.0", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", "rollup-plugin-cleanup": "~3.2.1", "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2", "@testing-library/dom": "~9.3.1", "whatwg-fetch": "~3.6.20" diff --git a/plugins/browser-plugin-ad-tracking/package.json b/plugins/browser-plugin-ad-tracking/package.json index 0cb1adcb1..f304b7fb9 100644 --- a/plugins/browser-plugin-ad-tracking/package.json +++ b/plugins/browser-plugin-ad-tracking/package.json @@ -30,15 +30,15 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", "rollup": "~2.70.1", @@ -46,7 +46,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-button-click-tracking/package.json b/plugins/browser-plugin-button-click-tracking/package.json index d6549f233..58ad05c7e 100644 --- a/plugins/browser-plugin-button-click-tracking/package.json +++ b/plugins/browser-plugin-button-click-tracking/package.json @@ -30,15 +30,15 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", "rollup": "~2.70.1", @@ -46,7 +46,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-client-hints/package.json b/plugins/browser-plugin-client-hints/package.json index 2fa65ed14..ffd0ea5ac 100644 --- a/plugins/browser-plugin-client-hints/package.json +++ b/plugins/browser-plugin-client-hints/package.json @@ -30,21 +30,21 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@snowplow/tracker-core": "workspace:*", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", "rollup-plugin-cleanup": "~3.2.1", "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-debugger/package.json b/plugins/browser-plugin-debugger/package.json index f99952dae..afc8f4814 100644 --- a/plugins/browser-plugin-debugger/package.json +++ b/plugins/browser-plugin-debugger/package.json @@ -31,22 +31,22 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@types/randomcolor": "~0.5.5", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", "rollup-plugin-cleanup": "~3.2.1", "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-enhanced-consent/package.json b/plugins/browser-plugin-enhanced-consent/package.json index ea6f2f2d2..458e58d43 100644 --- a/plugins/browser-plugin-enhanced-consent/package.json +++ b/plugins/browser-plugin-enhanced-consent/package.json @@ -29,15 +29,15 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", "rollup": "~2.70.1", @@ -45,7 +45,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-enhanced-ecommerce/package.json b/plugins/browser-plugin-enhanced-ecommerce/package.json index 45fd2bff9..0e29d933d 100644 --- a/plugins/browser-plugin-enhanced-ecommerce/package.json +++ b/plugins/browser-plugin-enhanced-ecommerce/package.json @@ -30,15 +30,15 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", "rollup": "~2.70.1", @@ -46,7 +46,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-error-tracking/package.json b/plugins/browser-plugin-error-tracking/package.json index f266be26d..3005cf795 100644 --- a/plugins/browser-plugin-error-tracking/package.json +++ b/plugins/browser-plugin-error-tracking/package.json @@ -30,15 +30,15 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", "rollup": "~2.70.1", @@ -46,7 +46,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-event-specifications/package.json b/plugins/browser-plugin-event-specifications/package.json index f70341cbc..ae00fb0b2 100644 --- a/plugins/browser-plugin-event-specifications/package.json +++ b/plugins/browser-plugin-event-specifications/package.json @@ -30,21 +30,21 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", "rollup-plugin-cleanup": "~3.2.1", "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-focalmeter/package.json b/plugins/browser-plugin-focalmeter/package.json index e71d7e704..d8ea7bc01 100644 --- a/plugins/browser-plugin-focalmeter/package.json +++ b/plugins/browser-plugin-focalmeter/package.json @@ -30,21 +30,21 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", "rollup-plugin-cleanup": "~3.2.1", "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-form-tracking/package.json b/plugins/browser-plugin-form-tracking/package.json index 8f080d45f..76c4e9059 100644 --- a/plugins/browser-plugin-form-tracking/package.json +++ b/plugins/browser-plugin-form-tracking/package.json @@ -30,21 +30,21 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", "rollup-plugin-cleanup": "~3.2.1", "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-ga-cookies/package.json b/plugins/browser-plugin-ga-cookies/package.json index 865475c10..186e404b6 100644 --- a/plugins/browser-plugin-ga-cookies/package.json +++ b/plugins/browser-plugin-ga-cookies/package.json @@ -30,21 +30,21 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", "rollup-plugin-cleanup": "~3.2.1", "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-geolocation/package.json b/plugins/browser-plugin-geolocation/package.json index a469bc4e2..b7c4b6c6e 100644 --- a/plugins/browser-plugin-geolocation/package.json +++ b/plugins/browser-plugin-geolocation/package.json @@ -30,21 +30,21 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", "rollup-plugin-cleanup": "~3.2.1", "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-link-click-tracking/package.json b/plugins/browser-plugin-link-click-tracking/package.json index 55f0a284b..40a705423 100644 --- a/plugins/browser-plugin-link-click-tracking/package.json +++ b/plugins/browser-plugin-link-click-tracking/package.json @@ -30,15 +30,15 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", "rollup": "~2.70.1", @@ -46,7 +46,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-media-tracking/package.json b/plugins/browser-plugin-media-tracking/package.json index 48703760c..e9aca4ec1 100644 --- a/plugins/browser-plugin-media-tracking/package.json +++ b/plugins/browser-plugin-media-tracking/package.json @@ -31,22 +31,22 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@types/uuid": "^10.0.0", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", "rollup-plugin-cleanup": "~3.2.1", "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-media/package.json b/plugins/browser-plugin-media/package.json index 18fdfec44..74bc6ae74 100644 --- a/plugins/browser-plugin-media/package.json +++ b/plugins/browser-plugin-media/package.json @@ -31,22 +31,22 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@types/uuid": "^10.0.0", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", "rollup-plugin-cleanup": "~3.2.1", "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-optimizely-x/package.json b/plugins/browser-plugin-optimizely-x/package.json index 37dd7f5a4..153ac3501 100644 --- a/plugins/browser-plugin-optimizely-x/package.json +++ b/plugins/browser-plugin-optimizely-x/package.json @@ -30,21 +30,21 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", "rollup-plugin-cleanup": "~3.2.1", "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-performance-navigation-timing/package.json b/plugins/browser-plugin-performance-navigation-timing/package.json index 50d489ffb..de86fcbd6 100644 --- a/plugins/browser-plugin-performance-navigation-timing/package.json +++ b/plugins/browser-plugin-performance-navigation-timing/package.json @@ -30,21 +30,21 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", "rollup-plugin-cleanup": "~3.2.1", "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-performance-timing/package.json b/plugins/browser-plugin-performance-timing/package.json index a83455aad..3db17a09f 100644 --- a/plugins/browser-plugin-performance-timing/package.json +++ b/plugins/browser-plugin-performance-timing/package.json @@ -30,21 +30,21 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", "rollup-plugin-cleanup": "~3.2.1", "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-privacy-sandbox/package.json b/plugins/browser-plugin-privacy-sandbox/package.json index 26f049593..1cda2cd0e 100644 --- a/plugins/browser-plugin-privacy-sandbox/package.json +++ b/plugins/browser-plugin-privacy-sandbox/package.json @@ -30,21 +30,21 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", "rollup-plugin-cleanup": "~3.2.1", "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-site-tracking/package.json b/plugins/browser-plugin-site-tracking/package.json index 7cffa39dd..9798d7a6e 100644 --- a/plugins/browser-plugin-site-tracking/package.json +++ b/plugins/browser-plugin-site-tracking/package.json @@ -30,15 +30,15 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", "rollup": "~2.70.1", @@ -46,7 +46,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-snowplow-ecommerce/package.json b/plugins/browser-plugin-snowplow-ecommerce/package.json index d98cbe04f..79dae11f0 100644 --- a/plugins/browser-plugin-snowplow-ecommerce/package.json +++ b/plugins/browser-plugin-snowplow-ecommerce/package.json @@ -30,15 +30,15 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", "rollup": "~2.70.1", @@ -46,7 +46,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-timezone/package.json b/plugins/browser-plugin-timezone/package.json index 9a21ffa4c..13a9b44af 100644 --- a/plugins/browser-plugin-timezone/package.json +++ b/plugins/browser-plugin-timezone/package.json @@ -31,15 +31,15 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@types/jstimezonedetect": "~1.0.3", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "moment-timezone": "~0.5.26", "rollup": "~2.70.1", @@ -47,7 +47,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-vimeo-tracking/package.json b/plugins/browser-plugin-vimeo-tracking/package.json index d62f5dbc0..4f2790fca 100644 --- a/plugins/browser-plugin-vimeo-tracking/package.json +++ b/plugins/browser-plugin-vimeo-tracking/package.json @@ -31,22 +31,22 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@types/vimeo__player": "~2.16.3", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", "rollup-plugin-cleanup": "~3.2.1", "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-web-vitals/package.json b/plugins/browser-plugin-web-vitals/package.json index 4b5f9b001..52da24a4e 100644 --- a/plugins/browser-plugin-web-vitals/package.json +++ b/plugins/browser-plugin-web-vitals/package.json @@ -31,21 +31,21 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", "rollup-plugin-cleanup": "~3.2.1", "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-youtube-tracking/package.json b/plugins/browser-plugin-youtube-tracking/package.json index 5eb31bc1d..932f893ed 100644 --- a/plugins/browser-plugin-youtube-tracking/package.json +++ b/plugins/browser-plugin-youtube-tracking/package.json @@ -31,23 +31,23 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@types/uuid": "^10.0.0", "@types/youtube": "~0.0.46", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", "rollup-plugin-cleanup": "~3.2.1", "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/rush.json b/rush.json index 338d6707b..d27d4df68 100644 --- a/rush.json +++ b/rush.json @@ -371,6 +371,12 @@ "reviewCategory": "trackers", "versionPolicyName": "tracker" }, + { + "packageName": "@snowplow/react-native-tracker", + "projectFolder": "trackers/react-native-tracker", + "reviewCategory": "trackers", + "versionPolicyName": "tracker" + }, { "packageName": "@snowplow/tracker-core", diff --git a/trackers/browser-tracker/package.json b/trackers/browser-tracker/package.json index e5fe294ca..0c05176ff 100644 --- a/trackers/browser-tracker/package.json +++ b/trackers/browser-tracker/package.json @@ -44,15 +44,15 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", "rollup": "~2.70.1", @@ -60,7 +60,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "typescript": "~4.6.2", "whatwg-fetch": "~3.6.20" } diff --git a/trackers/javascript-tracker/package.json b/trackers/javascript-tracker/package.json index ae25d1146..cf5519d07 100644 --- a/trackers/javascript-tracker/package.json +++ b/trackers/javascript-tracker/package.json @@ -75,7 +75,7 @@ "@rollup/plugin-node-resolve": "~13.1.3", "@rollup/plugin-replace": "~4.0.0", "@types/dockerode": "~3.3.5", - "@types/jest": "~27.4.1", + "@types/jest": "~29.5.14", "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@types/node": "~14.6.0", @@ -89,9 +89,9 @@ "chalk": "4.1.2", "chromedriver": "~129.0.0", "dockerode": "~3.3.1", - "jest": "~27.5.1", - "jest-environment-jsdom": "~27.5.1", - "jest-environment-jsdom-global": "~3.0.0", + "jest": "~29.7.0", + "jest-environment-jsdom": "~29.7.0", + "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", "npm-run-all": "~4.1.5", @@ -103,7 +103,7 @@ "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", "saucelabs": "~7.5.0", - "ts-jest": "~27.1.3", + "ts-jest": "~29.2.5", "ts-node": "~10.9.1", "typescript": "~4.6.2", "wdio-chromedriver-service": "~8.1.1", diff --git a/trackers/react-native-tracker/CHANGELOG.json b/trackers/react-native-tracker/CHANGELOG.json new file mode 100644 index 000000000..8ca872149 --- /dev/null +++ b/trackers/react-native-tracker/CHANGELOG.json @@ -0,0 +1,5 @@ +{ + "name": "@snowplow/react-native-tracker", + "entries": [ + ] +} diff --git a/trackers/react-native-tracker/LICENSE b/trackers/react-native-tracker/LICENSE new file mode 100644 index 000000000..f697ebc56 --- /dev/null +++ b/trackers/react-native-tracker/LICENSE @@ -0,0 +1,29 @@ +BSD 3-Clause License + +Copyright (c) 2022 Snowplow Analytics Ltd +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/trackers/react-native-tracker/README.md b/trackers/react-native-tracker/README.md new file mode 100644 index 000000000..9904fc092 --- /dev/null +++ b/trackers/react-native-tracker/README.md @@ -0,0 +1,86 @@ +# Snowplow Node Tracker + +[![npm version][npm-image]][npm-url] +[![License][license-image]](LICENSE) + +Add Snowplow Tracking to your Node.js Application with `@snowplow/node-tracker`. + +## Maintainer quick start + +Part of the Snowplow JavaScript Tracker monorepo. +Build with [Node.js](https://nodejs.org/en/) (18 - 20) and [Rush](https://rushjs.io/). + +### Setup repository + +```bash +npm install -g @microsoft/rush +git clone https://github.com/snowplow/snowplow-javascript-tracker.git +rush update +``` + +## Package Installation + +With npm: + +```bash +npm install @snowplow/node-tracker +``` + +## Usage + +Initialize your tracker with your desired configuration: + +```js +import { newTracker } from '@snowplow/node-tracker'; +const t = newTracker( + { namespace: 'myTracker', appId: 'myApp', encodeBase64: false }, + { endpoint: 'collector.mydomain.net', port: 8080, bufferSize: 5 } +); +``` + +Then use the `track` function from this package, along with the `buildX` functions to send events to your configured emitters: + +```js +import { + buildSelfDescribingEvent, + buildPageView +} from '@snowplow/node-tracker'; + +const context = [ + { + schema: 'iglu:com.acme/user/jsonschema/1-0-0', + data: { + type: 'tester', + }, + }, +]; + +t.track( + buildPageView({ pageUrl: 'http://www.example.com', pageTitle: 'example page', referrer: 'http://google.com' }), + context +); + +const eventJson = { + schema: 'iglu:com.acme/viewed_product/jsonschema/1-0-0', + data: { + price: 20, + }, +}; + +t.track(buildSelfDescribingEvent({ event: eventJson }), context); +``` + +To enable success and failure callback debugging, run your application with `NODE_DEBUG=snowplow`. + +## Copyright and license + +Licensed and distributed under the [BSD 3-Clause License](LICENSE) ([An OSI Approved License][osi]). + +Copyright (c) 2022 Snowplow Analytics Ltd. + +All rights reserved. + +[osi]: https://opensource.org/licenses/BSD-3-Clause +[license-image]: https://img.shields.io/npm/l/@snowplow/node-tracker +[npm-url]: https://www.npmjs.com/package/@snowplow/node-tracker +[npm-image]: https://img.shields.io/npm/v/@snowplow/node-tracker diff --git a/trackers/react-native-tracker/api-extractor.json b/trackers/react-native-tracker/api-extractor.json new file mode 100644 index 000000000..4a2710c7d --- /dev/null +++ b/trackers/react-native-tracker/api-extractor.json @@ -0,0 +1,361 @@ +/** + * Config file for API Extractor. For more info, please visit: https://api-extractor.com + */ +{ + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + + /** + * Optionally specifies another JSON config file that this file extends from. This provides a way for + * standard settings to be shared across multiple projects. + * + * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains + * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be + * resolved using NodeJS require(). + * + * SUPPORTED TOKENS: none + * DEFAULT VALUE: "" + */ + // "extends": "./shared/api-extractor-base.json" + // "extends": "my-package/include/api-extractor-base.json" + + /** + * Determines the "" token that can be used with other config file settings. The project folder + * typically contains the tsconfig.json and package.json config files, but the path is user-defined. + * + * The path is resolved relative to the folder of the config file that contains the setting. + * + * The default value for "projectFolder" is the token "", which means the folder is determined by traversing + * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder + * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error + * will be reported. + * + * SUPPORTED TOKENS: + * DEFAULT VALUE: "" + */ + // "projectFolder": "..", + + /** + * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor + * analyzes the symbols exported by this module. + * + * The file extension must be ".d.ts" and not ".ts". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + */ + "mainEntryPointFilePath": "/dist/index.module.d.ts", + + /** + * A list of NPM package names whose exports should be treated as part of this package. + * + * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1", + * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part + * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly + * imports library2. To avoid this, we can specify: + * + * "bundledPackages": [ "library2" ], + * + * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been + * local files for library1. + */ + "bundledPackages": ["@snowplow/tracker-core"], + + /** + * Determines how the TypeScript compiler engine will be invoked by API Extractor. + */ + "compiler": { + /** + * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * Note: This setting will be ignored if "overrideTsconfig" is used. + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/tsconfig.json" + */ + // "tsconfigFilePath": "/tsconfig.json", + /** + * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk. + * The object must conform to the TypeScript tsconfig schema: + * + * http://json.schemastore.org/tsconfig + * + * If omitted, then the tsconfig.json file will be read from the "projectFolder". + * + * DEFAULT VALUE: no overrideTsconfig section + */ + // "overrideTsconfig": { + // . . . + // } + /** + * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended + * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when + * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses + * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck. + * + * DEFAULT VALUE: false + */ + // "skipLibCheck": true, + }, + + /** + * Configures how the API report file (*.api.md) will be generated. + */ + "apiReport": { + /** + * (REQUIRED) Whether to generate an API report. + */ + "enabled": true, + + /** + * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce + * a full file path. + * + * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/". + * + * SUPPORTED TOKENS: , + * DEFAULT VALUE: ".api.md" + */ + // "reportFileName": ".api.md", + + /** + * Specifies the folder where the API report file is written. The file name portion is determined by + * the "reportFileName" setting. + * + * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy, + * e.g. for an API review. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/etc/" + */ + "reportFolder": "../../api-docs/docs/react-native-tracker/" + + /** + * Specifies the folder where the temporary report file is written. The file name portion is determined by + * the "reportFileName" setting. + * + * After the temporary file is written to disk, it is compared with the file in the "reportFolder". + * If they are different, a production build will fail. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/temp/" + */ + // "reportTempFolder": "/temp/" + }, + + /** + * Configures how the doc model file (*.api.json) will be generated. + */ + "docModel": { + /** + * (REQUIRED) Whether to generate a doc model file. + */ + "enabled": true, + + /** + * The output path for the doc model file. The file extension should be ".api.json". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/temp/.api.json" + */ + "apiJsonFilePath": "/temp/.api.json" + }, + + /** + * Configures how the .d.ts rollup file will be generated. + */ + "dtsRollup": { + /** + * (REQUIRED) Whether to generate the .d.ts rollup file. + */ + "enabled": false + + /** + * Specifies the output path for a .d.ts rollup file to be generated without any trimming. + * This file will include all declarations that are exported by the main entry point. + * + * If the path is an empty string, then this file will not be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "/dist/.d.ts" + */ + // "untrimmedFilePath": "/dist/.d.ts", + + /** + * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release. + * This file will include only declarations that are marked as "@public" or "@beta". + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "betaTrimmedFilePath": "/dist/-beta.d.ts", + + /** + * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release. + * This file will include only declarations that are marked as "@public". + * + * If the path is an empty string, then this file will not be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "publicTrimmedFilePath": "/dist/-public.d.ts", + + /** + * When a declaration is trimmed, by default it will be replaced by a code comment such as + * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the + * declaration completely. + * + * DEFAULT VALUE: false + */ + // "omitTrimmingComments": true + }, + + /** + * Configures how the tsdoc-metadata.json file will be generated. + */ + "tsdocMetadata": { + /** + * Whether to generate the tsdoc-metadata.json file. + * + * DEFAULT VALUE: true + */ + // "enabled": true, + /** + * Specifies where the TSDoc metadata file should be written. + * + * The path is resolved relative to the folder of the config file that contains the setting; to change this, + * prepend a folder token such as "". + * + * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata", + * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup + * falls back to "tsdoc-metadata.json" in the package folder. + * + * SUPPORTED TOKENS: , , + * DEFAULT VALUE: "" + */ + // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json" + }, + + /** + * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files + * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead. + * To use the OS's default newline kind, specify "os". + * + * DEFAULT VALUE: "crlf" + */ + "newlineKind": "lf", + + /** + * Configures how API Extractor reports error and warning messages produced during analysis. + * + * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages. + */ + "messages": { + /** + * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing + * the input .d.ts files. + * + * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551" + * + * DEFAULT VALUE: A single "default" entry with logLevel=warning. + */ + "compilerMessageReporting": { + /** + * Configures the default routing for messages that don't match an explicit rule in this table. + */ + "default": { + /** + * Specifies whether the message should be written to the the tool's output log. Note that + * the "addToApiReportFile" property may supersede this option. + * + * Possible values: "error", "warning", "none" + * + * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail + * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes + * the "--local" option), the warning is displayed but the build will not fail. + * + * DEFAULT VALUE: "warning" + */ + "logLevel": "warning" + + /** + * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md), + * then the message will be written inside that file; otherwise, the message is instead logged according to + * the "logLevel" option. + * + * DEFAULT VALUE: false + */ + // "addToApiReportFile": false + } + + // "TS2551": { + // "logLevel": "warning", + // "addToApiReportFile": true + // }, + // + // . . . + }, + + /** + * Configures handling of messages reported by API Extractor during its analysis. + * + * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag" + * + * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings + */ + "extractorMessageReporting": { + "default": { + "logLevel": "warning" + // "addToApiReportFile": false + }, + + "ae-missing-release-tag": { + "logLevel": "none" + } + }, + + /** + * Configures handling of messages reported by the TSDoc parser when analyzing code comments. + * + * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text" + * + * DEFAULT VALUE: A single "default" entry with logLevel=warning. + */ + "tsdocMessageReporting": { + "default": { + "logLevel": "warning" + // "addToApiReportFile": false + } + + // "tsdoc-link-tag-unescaped-text": { + // "logLevel": "warning", + // "addToApiReportFile": true + // }, + // + // . . . + } + } +} diff --git a/trackers/react-native-tracker/babel.config.js b/trackers/react-native-tracker/babel.config.js new file mode 100644 index 000000000..39d5b3165 --- /dev/null +++ b/trackers/react-native-tracker/babel.config.js @@ -0,0 +1,5 @@ +module.exports = { + presets: [ + "module:@react-native/babel-preset" + ], +}; diff --git a/trackers/react-native-tracker/jest.config.js b/trackers/react-native-tracker/jest.config.js new file mode 100644 index 000000000..a762d03bf --- /dev/null +++ b/trackers/react-native-tracker/jest.config.js @@ -0,0 +1,4 @@ +module.exports = { + preset: 'react-native', + transformIgnorePatterns: [], +}; diff --git a/trackers/react-native-tracker/package.json b/trackers/react-native-tracker/package.json new file mode 100644 index 000000000..1139c07a4 --- /dev/null +++ b/trackers/react-native-tracker/package.json @@ -0,0 +1,60 @@ +{ + "name": "@snowplow/react-native-tracker", + "version": "4.0.0", + "description": "React Native tracker for Snowplow", + "keywords": [ + "snowplow", + "analytics", + "tracking", + "events", + "open source" + ], + "homepage": "https://docs.snowplow.io/docs/collecting-data/collecting-from-own-applications/javascript-trackers/", + "bugs": "https://github.com/snowplow/snowplow-javascript-tracker/issues", + "repository": { + "type": "git", + "url": "https://github.com/snowplow/snowplow-javascript-tracker.git" + }, + "license": "BSD-3-Clause", + "contributors": [ + "Snowplow" + ], + "sideEffects": false, + "main": "./dist/index.cjs.js", + "module": "./dist/index.module.js", + "types": "./dist/index.module.d.ts", + "files": [ + "dist" + ], + "scripts": { + "build": "rollup -c --silent --failAfterWarnings", + "test": "jest" + }, + "peerDependencies": { + "react": "*", + "react-native": "*" + }, + "dependencies": { + "@snowplow/tracker-core": "workspace:*", + "tslib": "^2.3.1", + "@react-native-async-storage/async-storage": "~2.0.0" + }, + "devDependencies": { + "@rollup/plugin-json": "~4.1.0", + "@typescript-eslint/eslint-plugin": "~5.15.0", + "@typescript-eslint/parser": "~5.15.0", + "@react-native/eslint-config": "^0.73.1", + "eslint": "~8.11.0", + "rollup": "~2.70.1", + "rollup-plugin-license": "~2.6.1", + "rollup-plugin-ts": "~2.0.5", + "typescript": "~4.6.2", + "@types/jest": "~29.5.14", + "jest": "~29.7.0", + "react": "18.2.0", + "ts-jest": "~29.2.5", + "@types/react": "^18.2.44", + "react-native": "0.74.5", + "@react-native/babel-preset": "~0.76.1" + } +} diff --git a/trackers/react-native-tracker/rollup.config.js b/trackers/react-native-tracker/rollup.config.js new file mode 100644 index 000000000..79afc9e2e --- /dev/null +++ b/trackers/react-native-tracker/rollup.config.js @@ -0,0 +1,33 @@ +import { nodeResolve } from '@rollup/plugin-node-resolve'; +import ts from 'rollup-plugin-ts'; // Prefered over @rollup/plugin-typescript as it bundles .d.ts files +import commonjs from '@rollup/plugin-commonjs'; +import { banner } from '../../banner'; +import compiler from '@ampproject/rollup-plugin-closure-compiler'; +import cleanup from 'rollup-plugin-cleanup'; +import pkg from './package.json'; + +import { builtinModules } from 'module'; + +const umdPlugins = [nodeResolve({ browser: true }), commonjs(), ts()]; +const umdName = 'snowplowBrowserTracking'; + +export default [ + { + input: './src/index.ts', + external: [...builtinModules, ...Object.keys(pkg.dependencies)], + plugins: [ts(), banner()], + output: [{ file: pkg.module, format: 'es', sourcemap: true }], + }, + { + input: './src/index.ts', + plugins: [...umdPlugins, banner()], + treeshake: { moduleSideEffects: ['jstimezonedetect'] }, + output: [{ file: pkg.main, format: 'umd', name: umdName, sourcemap: true }], + }, + { + input: './src/index.ts', + plugins: [...umdPlugins, compiler(), cleanup({ comments: 'none' }), banner()], + treeshake: { moduleSideEffects: ['jstimezonedetect'] }, + output: [{ file: pkg.main.replace('.js', '.min.js'), format: 'umd', name: umdName, sourcemap: true }], + }, +]; diff --git a/trackers/react-native-tracker/src/__mocks__/@react-native-async-storage/async-storage.js b/trackers/react-native-tracker/src/__mocks__/@react-native-async-storage/async-storage.js new file mode 100644 index 000000000..125233a46 --- /dev/null +++ b/trackers/react-native-tracker/src/__mocks__/@react-native-async-storage/async-storage.js @@ -0,0 +1,2 @@ +import AsyncStorage from "@react-native-async-storage/async-storage/jest/async-storage-mock"; +export default AsyncStorage; diff --git a/trackers/react-native-tracker/src/event_store.ts b/trackers/react-native-tracker/src/event_store.ts new file mode 100644 index 000000000..828ef4dd3 --- /dev/null +++ b/trackers/react-native-tracker/src/event_store.ts @@ -0,0 +1,55 @@ +import { EventStore, newInMemoryEventStore, EventStorePayload } from '@snowplow/tracker-core'; +import { ReactNativeEventStoreConfigurationBase } from './types'; +import AsyncStorage from '@react-native-async-storage/async-storage'; + +export interface ReactNativeEventStoreConfiguration extends ReactNativeEventStoreConfigurationBase { + /** + * The unique identifier for the event store + */ + namespace: string; +} + +export async function newReactNativeEventStore({ + namespace, + maxEventStoreSize = 1000, + useAsyncStorage = true, +}: ReactNativeEventStoreConfiguration): Promise { + const queueName = `snowplow_${namespace}`; + + async function newInMemoryEventStoreFromReactNative() { + if (useAsyncStorage) { + const data = await AsyncStorage.getItem(queueName); + const events: EventStorePayload[] = data ? JSON.parse(data) : []; + return newInMemoryEventStore({ maxSize: maxEventStoreSize, events }); + } else { + return newInMemoryEventStore({ maxSize: maxEventStoreSize }); + } + } + + const eventStore = await newInMemoryEventStoreFromReactNative(); + + const { getAll, getAllPayloads, add, count, iterator, removeHead } = eventStore; + + async function sync() { + if (useAsyncStorage) { + const events = await getAll(); + await AsyncStorage.setItem(queueName, JSON.stringify(events)); + } + } + + return { + count, + add: async (payload: EventStorePayload) => { + await add(payload); + await sync(); + return await count(); + }, + removeHead: async (n: number) => { + removeHead(n); + await sync(); + }, + iterator, + getAll, + getAllPayloads, + }; +} diff --git a/trackers/react-native-tracker/src/events.ts b/trackers/react-native-tracker/src/events.ts new file mode 100644 index 000000000..1195b83f2 --- /dev/null +++ b/trackers/react-native-tracker/src/events.ts @@ -0,0 +1,55 @@ +import { + buildPageView, + buildSelfDescribingEvent, + buildStructEvent, + PageViewEvent, + SelfDescribingJson, + StructuredEvent, + TrackerCore, +} from '@snowplow/tracker-core'; +import { EventContext, MessageNotificationProps, TimingProps } from './types'; + +export function newTrackEventFunctions(core: TrackerCore) { + const trackSelfDescribingEvent = = Record>( + argmap: SelfDescribingJson, + contexts?: EventContext[] + ) => { + core.track(buildSelfDescribingEvent({ event: argmap }), contexts); + }; + + const trackStructuredEvent = (argmap: StructuredEvent, contexts?: EventContext[]) => { + return core.track(buildStructEvent(argmap), contexts)?.eid; + }; + + const trackPageViewEvent = (argmap: PageViewEvent, contexts?: EventContext[]) => { + return core.track(buildPageView(argmap), contexts)?.eid; + }; + + const trackTimingEvent = (argmap: TimingProps, contexts?: EventContext[]) => { + trackSelfDescribingEvent( + { + schema: 'iglu:com.snowplowanalytics.snowplow/timing/jsonschema/1-0-0', + data: argmap, + }, + contexts + ); + }; + + const trackMessageNotificationEvent = (argmap: MessageNotificationProps, contexts?: EventContext[]) => { + trackSelfDescribingEvent( + { + schema: 'iglu:com.snowplowanalytics.mobile/message_notification/jsonschema/1-0-0', + data: argmap, + }, + contexts + ); + }; + + return { + trackSelfDescribingEvent, + trackStructuredEvent, + trackPageViewEvent, + trackTimingEvent, + trackMessageNotificationEvent, + }; +} diff --git a/trackers/react-native-tracker/src/index.ts b/trackers/react-native-tracker/src/index.ts new file mode 100644 index 000000000..58b5595f6 --- /dev/null +++ b/trackers/react-native-tracker/src/index.ts @@ -0,0 +1,6 @@ +// import { polyfillWebCrypto } from 'expo-standard-web-crypto'; + +// polyfillWebCrypto(); + +export * from './types'; +export * from './tracker'; diff --git a/trackers/react-native-tracker/src/subject.ts b/trackers/react-native-tracker/src/subject.ts new file mode 100644 index 000000000..968fca797 --- /dev/null +++ b/trackers/react-native-tracker/src/subject.ts @@ -0,0 +1,87 @@ +import { CorePluginConfiguration, PayloadBuilder, TrackerCore } from '@snowplow/tracker-core'; +import { ScreenSize, SubjectConfiguration } from './types'; + +export function newSubject(core: TrackerCore, configuration?: SubjectConfiguration) { + let domainUserId: string | undefined; + let networkUserId: string | undefined; + + const addSubjectToPayload = (payload: PayloadBuilder): void => { + payload.add('duid', domainUserId); + payload.add('nuid', networkUserId); + }; + + const setScreenResolution = (screenSize: ScreenSize) => + core.setScreenResolution(String(screenSize[0]), String(screenSize[1])); + + const setNetworkUserId = function (userId: string | undefined) { + networkUserId = userId; + }; + + const setDomainUserId = function (userId: string | undefined) { + domainUserId = userId; + }; + + const setColorDepth = function (colorDepth: number) { + core.setColorDepth(String(colorDepth)); + }; + + const setScreenViewport = function (screenSize: ScreenSize) { + core.setViewport(String(screenSize[0]), String(screenSize[1])); + }; + + const setSubjectData = function (data: SubjectConfiguration) { + setNetworkUserId(data.networkUserId); + setDomainUserId(data.domainUserId); + if (data.userId) { + core.setUserId(data.userId); + } + if (data.useragent) { + core.setUseragent(data.useragent); + } + if (data.ipAddress) { + core.setIpAddress(data.ipAddress); + } + if (data.timezone) { + core.setTimezone(data.timezone); + } + if (data.language) { + core.setLang(data.language); + } + if (data.screenResolution) { + setScreenResolution(data.screenResolution); + } + if (data.colorDepth) { + setColorDepth(data.colorDepth); + } + if (data.screenViewport) { + setScreenViewport(data.screenViewport); + } + }; + + if (configuration) { + setSubjectData(configuration); + } + + const subjectPlugin: CorePluginConfiguration = { + plugin: { + beforeTrack: addSubjectToPayload, + }, + }; + + return { + subjectPlugin, + properties: { + setUserId: core.setUserId, + setIpAddress: core.setIpAddress, + setUseragent: core.setUseragent, + setTimezone: core.setTimezone, + setLanguage: core.setLang, + setScreenResolution, + setNetworkUserId, + setDomainUserId, + setSubjectData, + setColorDepth, + setScreenViewport, + }, + }; +} diff --git a/trackers/react-native-tracker/src/tracker.ts b/trackers/react-native-tracker/src/tracker.ts new file mode 100644 index 000000000..16c49f4d6 --- /dev/null +++ b/trackers/react-native-tracker/src/tracker.ts @@ -0,0 +1,54 @@ +import { trackerCore, PayloadBuilder, version, EmitterConfiguration } from '@snowplow/tracker-core'; + +import { newEmitter } from '@snowplow/tracker-core'; +import { newReactNativeEventStore } from './event_store'; +import { newTrackEventFunctions } from './events'; +import { newSubject } from './subject'; + +import { + ReactNativeEventStoreConfigurationBase, + ReactNativeTracker, + SessionConfiguration, + SubjectConfiguration, + TrackerConfiguration, +} from './types'; + +export async function newTracker( + configuration: TrackerConfiguration & + EmitterConfiguration & + SessionConfiguration & + SubjectConfiguration & + ReactNativeEventStoreConfigurationBase +): Promise { + const { namespace, appId, encodeBase64 = false } = configuration; + if (configuration.eventStore === undefined) { + configuration.eventStore = await newReactNativeEventStore(configuration); + } + + const emitter = newEmitter(configuration); + const callback = (payload: PayloadBuilder): void => { + emitter.input(payload.build()); + }; + const core = trackerCore({ base64: encodeBase64, callback }); + const subject = newSubject(core, configuration); + core.addPlugin(subject.subjectPlugin); + + core.setPlatform('mob'); // default platform + core.setTrackerVersion('rn-' + version); + core.setTrackerNamespace(namespace); + if (appId) { + core.setAppId(appId); + } + + return { + ...newTrackEventFunctions(core), + ...subject.properties, + setAppId: core.setAppId, + setPlatform: core.setPlatform, + flush: emitter.flush, + addGlobalContexts: core.addGlobalContexts, + removeGlobalContexts: core.removeGlobalContexts, + clearGlobalContexts: core.clearGlobalContexts, + addPlugin: core.addPlugin, + }; +} diff --git a/trackers/react-native-tracker/src/types.ts b/trackers/react-native-tracker/src/types.ts new file mode 100755 index 000000000..fef06f0ae --- /dev/null +++ b/trackers/react-native-tracker/src/types.ts @@ -0,0 +1,628 @@ +import { ConditionalContextProvider, ContextPrimitive, CorePluginConfiguration, EmitterConfiguration, EventStoreConfiguration, PageViewEvent, SelfDescribingJson, StructuredEvent } from '@snowplow/tracker-core'; + +export interface ReactNativeEventStoreConfigurationBase extends EventStoreConfiguration { + /** + * The maximum amount of events that will be buffered in the event store + * + * Will drop events once the limit is hit + * @defaultValue 1000 + */ + maxEventStoreSize?: number; + + /** + * Whether to use AsyncStorage as the persistent event store + * Default is true + */ + useAsyncStorage?: boolean; +} + +/** + * SessionConfiguration + */ +export interface SessionConfiguration { + /** + * The amount of time in seconds before the session id is updated while the app is in the foreground + * @defaultValue 1800 + */ + foregroundTimeout?: number; + /** + * The amount of time in seconds before the session id is updated while the app is in the background + * @defaultValue 1800 + */ + backgroundTimeout?: number; +} + +/** + * The configuration object for initialising the tracker + */ +export interface TrackerConfiguration { + /* The namespace of the tracker */ + namespace: string; + /* The application ID */ + appId?: string; + /** + * Whether unstructured events and custom contexts should be base64 encoded. + * @defaultValue false + **/ + encodeBase64?: boolean; +}; + +/** + * SubjectConfiguration + */ +export interface SubjectConfiguration { + /** + * user id + */ + userId?: string; + /** + * network user id (UUIDv4) + */ + networkUserId?: string; + /** + * domain user id + */ + domainUserId?: string; + /** + * The custom user-agent. It overrides the user-agent used by default. + */ + useragent?: string; + /** + * IP address + */ + ipAddress?: string; + /** + * The timezone label + */ + timezone?: string; + /** + * The language set in the device + */ + language?: string; + /** + * The screen resolution + */ + screenResolution?: ScreenSize; + /** + * The screen viewport size + */ + screenViewport?: ScreenSize; + /** + * color depth (integer) + */ + colorDepth?: number; +} + +/** + * ScreenSize + */ +export type ScreenSize = [number, number]; + +/** + * Trigger for MessageNotification event + */ +export type Trigger = + | 'push' + | 'location' + | 'calendar' + | 'timeInterval' + | 'other'; + +/** + * Attachment object that identify an attachment in the MessageNotification. + */ +export type MessageNotificationAttachmentProps = { + identifier: string; + type: string; + url: string; +}; + +/** + * MessageNotification event properties + * schema: iglu:com.snowplowanalytics.mobile/message_notification/jsonschema/1-0-0 + */ +export type MessageNotificationProps = { + /** + * The action associated with the notification. + */ + action?: string; + /* + * Attachments added to the notification (they can be part of the data object). + */ + attachments?: MessageNotificationAttachmentProps[]; + /** + * The notification's body. + */ + body: string; + /* + * Variable string values to be used in place of the format specifiers in bodyLocArgs to use to localize the body text to the user's current localization. + */ + bodyLocArgs?: string[]; + /** + * The key to the body string in the app's string resources to use to localize the body text to the user's current localization. + */ + bodyLocKey?: string; + /** + * The category associated to the notification. + */ + category?: string; + /** + * The application is notified of the delivery of the notification if it's in the foreground or background, the app will be woken up (iOS only). + */ + contentAvailable?: boolean; + /** + * The group which this notification is part of. + */ + group?: string; + /** + * The icon associated to the notification (Android only). + */ + icon?: string; + /** + * The number of items this notification represent. + */ + notificationCount?: number; + /** + * The time when the event of the notification occurred. + */ + notificationTimestamp?: string; + /** + * The sound played when the device receives the notification. + */ + sound?: string; + /** + * The notification's subtitle. (iOS only) + */ + subtitle?: string; + /** + * An identifier similar to 'group' but usable for different purposes (Android only). + */ + tag?: string; + /** + * An identifier similar to 'group' but usable for different purposes (iOS only). + */ + threadIdentifier?: string; + /** + * The notification's title. + */ + title: string; + /** + * Variable string values to be used in place of the format specifiers in titleLocArgs to use to localize the title text to the user's current localization. + */ + titleLocArgs?: string[]; + /** + * The key to the title string in the app's string resources to use to localize the title text to the user's current localization. + */ + titleLocKey?: string; + /** + * The trigger that raised the notification message. Must be one of: push, location, calendar, timeInterval, other + */ + trigger: Trigger; +}; + +/** + * EventContext type + */ +export type EventContext = SelfDescribingJson; + +/** + * ScreenView event properties + * schema: iglu:com.snowplowanalytics.mobile/screen_view/jsonschema/1-0-0 + */ +export type ScreenViewProps = { + /** + * The name of the screen viewed + */ + name: string; + /** + * The id(UUID) of screen that was viewed + */ + id?: string; + /** + * The type of screen that was viewed + */ + type?: string; + /** + * The name of the previous screen that was viewed + */ + previousName?: string; + /** + * The id(UUID) of the previous screen that was viewed + */ + previousId?: string; + /** + * The type of the previous screen that was viewed + */ + previousType?: string; + /** + * The type of transition that led to the screen being viewed + */ + transitionType?: string; +}; + +/** + * Event tracked when a scroll view's scroll position changes. + * If screen engagement tracking is enabled, the scroll changed events will be aggregated into a `screen_summary` entity. + * + * Schema: `iglu:com.snowplowanalytics.mobile/scroll_changed/jsonschema/1-0-0` + */ +export type ScrollChangedProps = { + /** + * Vertical scroll offset in pixels + */ + yOffset?: number; + /** + * Horizontal scroll offset in pixels. + */ + xOffset?: number; + /** + * The height of the scroll view in pixels + */ + viewHeight?: number; + /** + * The width of the scroll view in pixels + */ + viewWidth?: number; + /** + * The height of the content in the scroll view in pixels + */ + contentHeight?: number; + /** + * The width of the content in the scroll view in pixels + */ + contentWidth?: number; +}; + +/** + * Event tracking the view of an item in a list. + * If screen engagement tracking is enabled, the list item view events will be aggregated into a `screen_summary` entity. + * + * Schema: `iglu:com.snowplowanalytics.mobile/list_item_view/jsonschema/1-0-0` + */ +export type ListItemViewProps = { + /** + * Index of the item in the list + */ + index: number; + /** + * Total number of items in the list + */ + itemsCount?: number; +}; + +/** + * Timing event properties + */ +export type TimingProps = { + /** + * The timing category + */ + category: string; + /** + * The timing variable + */ + variable: string; + /** + * The time + */ + timing: number; + /** + * The timing label + */ + label?: string; +}; + +/** + * DeepLinkReceived event properties + * schema: iglu:com.snowplowanalytics.mobile/deep_link_received/jsonschema/1-0-0 + */ +export type DeepLinkReceivedProps = { + /** + * URL in the received deep-link. + */ + url: string; + /** + * Referrer URL, source of this deep-link. + */ + referrer?: string; +}; + +/** + * The ReactNativeTracker type + */ +export type ReactNativeTracker = { + /** + * Tracks a self-describing event + * + * @param argmap - The self-describing event properties + * @param contexts - The array of event contexts + * @typeParam TData - The type of the data object within the SelfDescribing object + */ + readonly trackSelfDescribingEvent: = Record>( + argmap: SelfDescribingJson, + contexts?: EventContext[] + ) => void; + + // TODO: + // /** + // * Tracks a screen-view event + // * + // * @param argmap - The screen-view event's properties + // * @param contexts - The array of event contexts + // */ + // readonly trackScreenViewEvent: (argmap: ScreenViewProps, contexts?: EventContext[]) => string | undefined; + + // TODO: + // /** + // * Tracks a scroll changed event + // * + // * @param argmap - The scroll changed event's properties + // * @param contexts - The array of event contexts + // */ + // readonly trackScrollChangedEvent: (argmap: ScrollChangedProps, contexts?: EventContext[]) => string | undefined; + + // TODO: + // /** + // * Tracks a list item view event + // * + // * @param argmap - The list item view event's properties + // * @param contexts - The array of event contexts + // */ + // readonly trackListItemViewEvent: (argmap: ListItemViewProps, contexts?: EventContext[]) => string | undefined; + + /** + * Tracks a structured event + * + * @param argmap - The structured event properties + * @param contexts - The array of event contexts + */ + readonly trackStructuredEvent: (argmap: StructuredEvent, contexts?: EventContext[]) => void; + + /** + * Tracks a page-view event + * + * @param argmap - The page-view event properties + * @param contexts - The array of event contexts + */ + readonly trackPageViewEvent: (argmap: PageViewEvent, contexts?: EventContext[]) => void; + + /** + * Tracks a timing event + * + * @param argmap - The timing event properties + * @param contexts - The array of event contexts + */ + readonly trackTimingEvent: (argmap: TimingProps, contexts?: EventContext[]) => void; + + // TODO: + // /** + // * Tracks a deep link received event + // * + // * @param argmap - The deep link received event properties + // * @param contexts - The array of event contexts + // */ + // readonly trackDeepLinkReceivedEvent: (argmap: DeepLinkReceivedProps, contexts?: EventContext[]) => void; + + /** + * Tracks a message notification event + * + * @param argmap - The message notification event properties + * @param contexts - The array of event contexts + */ + readonly trackMessageNotificationEvent: ( + argmap: MessageNotificationProps, + contexts?: EventContext[] + ) => void; + + /** + * Adds contexts globally, contexts added here will be attached to all applicable events + * @param contexts - An array containing either contexts or a conditional contexts + */ + addGlobalContexts( + contexts: + | Array + | Record + ): void; + + /** + * Removes all global contexts + */ + clearGlobalContexts(): void; + + /** + * Removes previously added global context, performs a deep comparison of the contexts or conditional contexts + * @param contexts - An array containing either contexts or a conditional contexts + */ + removeGlobalContexts(contexts: Array): void; + + /** + * Add a plugin into the plugin collection after Core has already been initialised + * @param configuration - The plugin to add + */ + addPlugin(configuration: CorePluginConfiguration): void; + + /** + * Calls flush on all emitters in order to send all queued events to the collector + * @returns Promise - Promise that resolves when all emitters have flushed + */ + flush: () => Promise; + + /** + * Set the application ID + * + * @param appId - An application ID which identifies the current application + */ + readonly setAppId: (appId: string) => void; + + /** + * Set the platform + * + * @param value - A valid Snowplow platform value + */ + readonly setPlatform: (value: string) => void; + + /** + * Sets the userId of the tracker subject + * + * @param newUid - The new userId + */ + readonly setUserId: (newUid: string) => void; + + /** + * Sets the networkUserId of the tracker subject + * + * @param newNuid - The new networkUserId + */ + readonly setNetworkUserId: (newNuid: string | undefined) => void; + + /** + * Sets the domainUserId of the tracker subject + * + * @param newDuid - The new domainUserId + */ + readonly setDomainUserId: (newDuid: string | undefined) => void; + + /** + * Sets the ipAddress of the tracker subject + * + * @param newIp - The new ipAddress + */ + readonly setIpAddress: (newIp: string) => void; + + /** + * Sets the useragent of the tracker subject + * + * @param newUagent - The new useragent + */ + readonly setUseragent: (newUagent: string) => void; + + /** + * Sets the timezone of the tracker subject + * + * @param newTz - The new timezone + */ + readonly setTimezone: (newTz: string) => void; + + /** + * Sets the language of the tracker subject + * + * @param newLang - The new language + */ + readonly setLanguage: (newLang: string) => void; + + /** + * Sets the screenResolution of the tracker subject + * + * @param newRes - The new screenResolution + */ + readonly setScreenResolution: (newRes: ScreenSize) => void; + + /** + * Sets the screenViewport of the tracker subject + * + * @param newView - The new screenViewport + */ + readonly setScreenViewport: (newView: ScreenSize) => void; + + /** + * Sets the colorDepth of the tracker subject + * + * @param newColorD - The new colorDepth + */ + readonly setColorDepth: (newLang: number) => void; + + /** + * Sets subject data + * + * @param config - The new subject data + */ + readonly setSubjectData: (config: SubjectConfiguration) => void; + + // TODO: + // /** + // * Gets the dentifier for the user of the session + // * + // * @returns {Promise} + // */ + // readonly getSessionUserId: () => Promise; + + // TODO: + // /** + // * Gets the identifier for the session + // * + // * @returns {Promise} + // */ + // readonly getSessionId: () => Promise; + + // TODO: + // /** + // * Gets the index of the current session for this user + // * + // * @returns {Promise} + // */ + // readonly getSessionIndex: () => Promise; + + // TODO: + // /** + // * Gets whether the app is currently in background state + // * + // * @returns {Promise} + // */ + // readonly getIsInBackground: () => Promise; + + // TODO: + // /** + // * Gets the number of background transitions in the current session + // * + // * @returns {Promise} + // */ + // readonly getBackgroundIndex: () => Promise; + + // TODO: + // /** + // * Gets the number of foreground transitions in the current session. + // * + // * @returns {Promise} + // */ + // readonly getForegroundIndex: () => Promise; +}; + +export { + version, + PageViewEvent, + StructuredEvent, + FormFocusOrChangeEvent, + SelfDescribingJson, + Timestamp, + PayloadBuilder, + Payload, + CorePlugin, + CoreConfiguration, + ContextGenerator, + ContextFilter, + EventPayloadAndContext, + EventStore, + EventStoreConfiguration, + EventStoreIterator, + EventStorePayload, + TrackerCore, + Logger, + EmitterConfiguration, + EmitterConfigurationBase, + EventJson, + JsonProcessor, + TrueTimestamp, + DeviceTimestamp, + EventMethod, + RequestFailure, + EventBatch, + EventJsonWithKeys, + LOG_LEVEL, + ConditionalContextProvider, + ContextPrimitive, + CorePluginConfiguration, + Emitter, + FilterProvider, + RuleSetProvider, + RuleSet, +} from '@snowplow/tracker-core'; diff --git a/trackers/react-native-tracker/test/event_store.test.ts b/trackers/react-native-tracker/test/event_store.test.ts new file mode 100644 index 000000000..47d5030b8 --- /dev/null +++ b/trackers/react-native-tracker/test/event_store.test.ts @@ -0,0 +1,54 @@ +import { newReactNativeEventStore } from '../src/event_store'; + +describe('React Native event store', () => { + it('keeps track of added events', async () => { + const eventStore = await newReactNativeEventStore({ + namespace: 'test', + }); + + expect(await eventStore.add({ payload: { e: 'pv' } })).toBe(1); + expect(await eventStore.add({ payload: { e: 'pp' } })).toBe(2); + expect(await eventStore.count()).toBe(2); + + expect(await eventStore.getAll()).toEqual([{ payload: { e: 'pv' } }, { payload: { e: 'pp' } }]); + + expect((await eventStore.iterator().next()).value?.payload).toEqual({ e: 'pv' }); + + await eventStore.removeHead(1); + expect(await eventStore.count()).toBe(1); + expect(await eventStore.getAll()).toEqual([{ payload: { e: 'pp' } }]); + }); + + it('separates event stores by namespace', async () => { + const eventStore1 = await newReactNativeEventStore({ + namespace: 'test1', + }); + const eventStore2 = await newReactNativeEventStore({ + namespace: 'test2', + }); + + await eventStore1.add({ payload: { e: 'pv1' } }); + await eventStore2.add({ payload: { e: 'pv2' } }); + + expect(await eventStore1.count()).toBe(1); + expect(await eventStore2.count()).toBe(1); + + expect(await eventStore1.getAll()).toEqual([{ payload: { e: 'pv1' } }]); + expect(await eventStore2.getAll()).toEqual([{ payload: { e: 'pv2' } }]); + }); + + it('syncs with AsyncStorage', async () => { + const eventStore1 = await newReactNativeEventStore({ + namespace: 'testA', + }); + + await eventStore1.add({ payload: { e: 'pv' } }); + await eventStore1.add({ payload: { e: 'pp' } }); + + const eventStore2 = await newReactNativeEventStore({ + namespace: 'testA', + }); + + expect(await eventStore2.count()).toBe(2); + }); +}); diff --git a/trackers/react-native-tracker/test/events.test.ts b/trackers/react-native-tracker/test/events.test.ts new file mode 100644 index 000000000..81604dd13 --- /dev/null +++ b/trackers/react-native-tracker/test/events.test.ts @@ -0,0 +1,7 @@ +import { newTracker } from '../src'; + +describe('Tracking events', () => { + it('creates a tracker with minimal config', async () => { + expect(await newTracker({ namespace: 'test', endpoint: 'http://localhost:9090' })).toBeDefined(); + }); +}); diff --git a/trackers/react-native-tracker/test/subject.test.ts b/trackers/react-native-tracker/test/subject.test.ts new file mode 100644 index 000000000..1e30131a5 --- /dev/null +++ b/trackers/react-native-tracker/test/subject.test.ts @@ -0,0 +1,4 @@ +describe('Subject', () => { + it('', async () => { + }); +}); diff --git a/trackers/react-native-tracker/test/tracker.test.ts b/trackers/react-native-tracker/test/tracker.test.ts new file mode 100644 index 000000000..ad954e87f --- /dev/null +++ b/trackers/react-native-tracker/test/tracker.test.ts @@ -0,0 +1,7 @@ +import { newTracker } from '../src'; + +describe('Initialize new tracker', () => { + it('creates a tracker with minimal config', async () => { + expect(await newTracker({ namespace: 'test', endpoint: 'http://localhost:9090' })).toBeDefined(); + }); +}); diff --git a/trackers/react-native-tracker/tsconfig.json b/trackers/react-native-tracker/tsconfig.json new file mode 100644 index 000000000..b19cd8bf3 --- /dev/null +++ b/trackers/react-native-tracker/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + /* Basic Options */ + "lib": ["ES2020", "DOM"], + "target": "ES2020" /* Good for Node 14 - https://github.com/microsoft/TypeScript/wiki/Node-Target-Mapping */, + "module": "commonjs" /* Ignored by rollup but used by ts-node for tests */, + "declaration": true /* Generates corresponding '.d.ts' file. */, + "resolveJsonModule": true, + "importHelpers": true, + + /* Strict Type-Checking Options */ + "strict": true /* Enable all strict type-checking options. */, + + /* Additional Checks */ + "noUnusedLocals": true /* Report errors on unused locals. */, + "noUnusedParameters": true /* Report errors on unused parameters. */, + "noImplicitReturns": true /* Report error when not all code paths in function return a value. */, + "noFallthroughCasesInSwitch": true /* Report errors for fallthrough cases in switch statement. */, + + /* Module Resolution Options */ + "esModuleInterop": true /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */ + } +} From 77a2987901f70e15c56074b145989ec7e330958e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matu=CC=81s=CC=8C=20Tomlein?= Date: Tue, 5 Nov 2024 10:46:26 +0100 Subject: [PATCH 02/16] Add tests --- .../rush/browser-approved-packages.json | 12 -- common/config/rush/pnpm-lock.yaml | 3 + common/config/rush/repo-state.json | 2 +- trackers/react-native-tracker/jest.config.js | 3 + trackers/react-native-tracker/package.json | 3 +- .../react-native-tracker/src/event_store.ts | 17 +-- trackers/react-native-tracker/src/index.ts | 6 +- trackers/react-native-tracker/src/tracker.ts | 9 +- trackers/react-native-tracker/src/types.ts | 71 ++++----- .../react-native-tracker/test/events.test.ts | 140 +++++++++++++++++- .../react-native-tracker/test/subject.test.ts | 136 ++++++++++++++++- .../react-native-tracker/test/tracker.test.ts | 138 ++++++++++++++++- 12 files changed, 469 insertions(+), 71 deletions(-) diff --git a/common/config/rush/browser-approved-packages.json b/common/config/rush/browser-approved-packages.json index 801ffb1e3..8140826aa 100644 --- a/common/config/rush/browser-approved-packages.json +++ b/common/config/rush/browser-approved-packages.json @@ -298,18 +298,6 @@ "name": "eslint-plugin-ava", "allowedCategories": [ "trackers" ] }, - { - "name": "expo-crypto", - "allowedCategories": [ "trackers" ] - }, - { - "name": "expo-modules-core", - "allowedCategories": [ "trackers" ] - }, - { - "name": "expo-standard-web-crypto", - "allowedCategories": [ "trackers" ] - }, { "name": "got", "allowedCategories": [ "trackers" ] diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index d07fa8857..bfc290bc9 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -2395,6 +2395,9 @@ importers: jest: specifier: ~29.7.0 version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + node-fetch: + specifier: ~3.3.2 + version: 3.3.2 react: specifier: 18.2.0 version: 18.2.0 diff --git a/common/config/rush/repo-state.json b/common/config/rush/repo-state.json index ca6578497..f63c5fae4 100644 --- a/common/config/rush/repo-state.json +++ b/common/config/rush/repo-state.json @@ -1,5 +1,5 @@ // DO NOT MODIFY THIS FILE MANUALLY BUT DO COMMIT IT. It is generated and used by Rush. { - "pnpmShrinkwrapHash": "0c38b5ba356c83f3a423ee80a2973f1e938848b4", + "pnpmShrinkwrapHash": "198df4bff51d6971dfe31a0dc821da2625a97ad9", "preferredVersionsHash": "bf21a9e8fbc5a3846fb05b4fa0859e0917b2202f" } diff --git a/trackers/react-native-tracker/jest.config.js b/trackers/react-native-tracker/jest.config.js index a762d03bf..0c19618ea 100644 --- a/trackers/react-native-tracker/jest.config.js +++ b/trackers/react-native-tracker/jest.config.js @@ -1,4 +1,7 @@ module.exports = { preset: 'react-native', transformIgnorePatterns: [], + globals: { + crypto: require('crypto'), + }, }; diff --git a/trackers/react-native-tracker/package.json b/trackers/react-native-tracker/package.json index 1139c07a4..48d5dfd99 100644 --- a/trackers/react-native-tracker/package.json +++ b/trackers/react-native-tracker/package.json @@ -55,6 +55,7 @@ "ts-jest": "~29.2.5", "@types/react": "^18.2.44", "react-native": "0.74.5", - "@react-native/babel-preset": "~0.76.1" + "@react-native/babel-preset": "~0.76.1", + "node-fetch": "~3.3.2" } } diff --git a/trackers/react-native-tracker/src/event_store.ts b/trackers/react-native-tracker/src/event_store.ts index 828ef4dd3..c98259302 100644 --- a/trackers/react-native-tracker/src/event_store.ts +++ b/trackers/react-native-tracker/src/event_store.ts @@ -1,22 +1,15 @@ import { EventStore, newInMemoryEventStore, EventStorePayload } from '@snowplow/tracker-core'; -import { ReactNativeEventStoreConfigurationBase } from './types'; +import { EventStoreConfiguration, TrackerConfiguration } from './types'; import AsyncStorage from '@react-native-async-storage/async-storage'; -export interface ReactNativeEventStoreConfiguration extends ReactNativeEventStoreConfigurationBase { - /** - * The unique identifier for the event store - */ - namespace: string; -} - export async function newReactNativeEventStore({ namespace, maxEventStoreSize = 1000, - useAsyncStorage = true, -}: ReactNativeEventStoreConfiguration): Promise { + useAsyncStorageForEventStore: useAsyncStorage = true, +}: EventStoreConfiguration & TrackerConfiguration): Promise { const queueName = `snowplow_${namespace}`; - async function newInMemoryEventStoreFromReactNative() { + async function newInMemoryEventStoreForReactNative() { if (useAsyncStorage) { const data = await AsyncStorage.getItem(queueName); const events: EventStorePayload[] = data ? JSON.parse(data) : []; @@ -26,7 +19,7 @@ export async function newReactNativeEventStore({ } } - const eventStore = await newInMemoryEventStoreFromReactNative(); + const eventStore = await newInMemoryEventStoreForReactNative(); const { getAll, getAllPayloads, add, count, iterator, removeHead } = eventStore; diff --git a/trackers/react-native-tracker/src/index.ts b/trackers/react-native-tracker/src/index.ts index 58b5595f6..7f73819bf 100644 --- a/trackers/react-native-tracker/src/index.ts +++ b/trackers/react-native-tracker/src/index.ts @@ -1,6 +1,6 @@ -// import { polyfillWebCrypto } from 'expo-standard-web-crypto'; - -// polyfillWebCrypto(); +if (typeof crypto === 'undefined') { + throw new Error('Web Crypto is not available. Please use a polyfill like react-native-get-random-values'); +} export * from './types'; export * from './tracker'; diff --git a/trackers/react-native-tracker/src/tracker.ts b/trackers/react-native-tracker/src/tracker.ts index 16c49f4d6..4025bd467 100644 --- a/trackers/react-native-tracker/src/tracker.ts +++ b/trackers/react-native-tracker/src/tracker.ts @@ -6,19 +6,24 @@ import { newTrackEventFunctions } from './events'; import { newSubject } from './subject'; import { - ReactNativeEventStoreConfigurationBase, + EventStoreConfiguration, ReactNativeTracker, SessionConfiguration, SubjectConfiguration, TrackerConfiguration, } from './types'; +/** + * Creates a new tracker instance with the given configuration + * @param configuration Configuration for the tracker + * @returns Tracker instance + */ export async function newTracker( configuration: TrackerConfiguration & EmitterConfiguration & SessionConfiguration & SubjectConfiguration & - ReactNativeEventStoreConfigurationBase + EventStoreConfiguration ): Promise { const { namespace, appId, encodeBase64 = false } = configuration; if (configuration.eventStore === undefined) { diff --git a/trackers/react-native-tracker/src/types.ts b/trackers/react-native-tracker/src/types.ts index fef06f0ae..81a0d30cc 100755 --- a/trackers/react-native-tracker/src/types.ts +++ b/trackers/react-native-tracker/src/types.ts @@ -1,6 +1,16 @@ -import { ConditionalContextProvider, ContextPrimitive, CorePluginConfiguration, EmitterConfiguration, EventStoreConfiguration, PageViewEvent, SelfDescribingJson, StructuredEvent } from '@snowplow/tracker-core'; +import { + ConditionalContextProvider, + ContextPrimitive, + CorePluginConfiguration, + PageViewEvent, + SelfDescribingJson, + StructuredEvent, +} from '@snowplow/tracker-core'; -export interface ReactNativeEventStoreConfigurationBase extends EventStoreConfiguration { +/** + * Configuration for the event store + */ +export interface EventStoreConfiguration { /** * The maximum amount of events that will be buffered in the event store * @@ -10,57 +20,58 @@ export interface ReactNativeEventStoreConfigurationBase extends EventStoreConfig maxEventStoreSize?: number; /** - * Whether to use AsyncStorage as the persistent event store - * Default is true + * Whether to use the AsyncStorage library as the persistent event store for the event store + * @defaultValue true */ - useAsyncStorage?: boolean; + useAsyncStorageForEventStore?: boolean; } /** - * SessionConfiguration + * Configuration for session tracking */ export interface SessionConfiguration { /** * The amount of time in seconds before the session id is updated while the app is in the foreground * @defaultValue 1800 */ - foregroundTimeout?: number; + foregroundSessionTimeout?: number; /** * The amount of time in seconds before the session id is updated while the app is in the background * @defaultValue 1800 */ - backgroundTimeout?: number; + backgroundSessionTimeout?: number; } /** * The configuration object for initialising the tracker */ export interface TrackerConfiguration { - /* The namespace of the tracker */ + /** The namespace of the tracker */ namespace: string; - /* The application ID */ + /** The application ID */ appId?: string; /** * Whether unstructured events and custom contexts should be base64 encoded. * @defaultValue false **/ encodeBase64?: boolean; -}; +} /** - * SubjectConfiguration + * Configuration of subject properties tracked with events */ export interface SubjectConfiguration { /** - * user id + * Business-defined user ID for this user */ userId?: string; /** - * network user id (UUIDv4) + * Override the network user id (UUIDv4) that is assigned by the collector and stored in cookies */ networkUserId?: string; /** - * domain user id + * The domain user id (DUID) is a generated identifier that is stored in a first party cookie on Web. + * The React Native tracker does not assign it automatically. */ domainUserId?: string; /** @@ -68,7 +79,7 @@ export interface SubjectConfiguration { */ useragent?: string; /** - * IP address + * Override the IP address of the device */ ipAddress?: string; /** @@ -88,25 +99,20 @@ export interface SubjectConfiguration { */ screenViewport?: ScreenSize; /** - * color depth (integer) + * Color depth (integer) */ colorDepth?: number; } /** - * ScreenSize + * Screen size in pixels */ export type ScreenSize = [number, number]; /** * Trigger for MessageNotification event */ -export type Trigger = - | 'push' - | 'location' - | 'calendar' - | 'timeInterval' - | 'other'; +export type Trigger = 'push' | 'location' | 'calendar' | 'timeInterval' | 'other'; /** * Attachment object that identify an attachment in the MessageNotification. @@ -409,10 +415,7 @@ export type ReactNativeTracker = { * @param argmap - The message notification event properties * @param contexts - The array of event contexts */ - readonly trackMessageNotificationEvent: ( - argmap: MessageNotificationProps, - contexts?: EventContext[] - ) => void; + readonly trackMessageNotificationEvent: (argmap: MessageNotificationProps, contexts?: EventContext[]) => void; /** * Adds contexts globally, contexts added here will be attached to all applicable events @@ -462,35 +465,36 @@ export type ReactNativeTracker = { readonly setPlatform: (value: string) => void; /** - * Sets the userId of the tracker subject + * Sets the business-defined user ID for this user * * @param newUid - The new userId */ readonly setUserId: (newUid: string) => void; /** - * Sets the networkUserId of the tracker subject + * Override the network user id (UUIDv4) that is assigned by the collector and stored in cookies * * @param newNuid - The new networkUserId */ readonly setNetworkUserId: (newNuid: string | undefined) => void; /** - * Sets the domainUserId of the tracker subject + * The domain user id (DUID) is a generated identifier that is stored in a first party cookie on Web. + * The React Native tracker does not assign it automatically. * * @param newDuid - The new domainUserId */ readonly setDomainUserId: (newDuid: string | undefined) => void; /** - * Sets the ipAddress of the tracker subject + * Override the IP address of the device * * @param newIp - The new ipAddress */ readonly setIpAddress: (newIp: string) => void; /** - * Sets the useragent of the tracker subject + * The custom user-agent. It overrides the user-agent used by default. * * @param newUagent - The new useragent */ @@ -602,7 +606,6 @@ export { ContextFilter, EventPayloadAndContext, EventStore, - EventStoreConfiguration, EventStoreIterator, EventStorePayload, TrackerCore, diff --git a/trackers/react-native-tracker/test/events.test.ts b/trackers/react-native-tracker/test/events.test.ts index 81604dd13..62d526764 100644 --- a/trackers/react-native-tracker/test/events.test.ts +++ b/trackers/react-native-tracker/test/events.test.ts @@ -1,7 +1,139 @@ -import { newTracker } from '../src'; +import { Payload } from '@snowplow/tracker-core'; +import { newTracker, ReactNativeTracker } from '../src'; -describe('Tracking events', () => { - it('creates a tracker with minimal config', async () => { - expect(await newTracker({ namespace: 'test', endpoint: 'http://localhost:9090' })).toBeDefined(); +describe('Events', () => { + let tracker: ReactNativeTracker; + let payloads: Payload[]; + + beforeEach(async () => { + payloads = []; + tracker = await newTracker({ namespace: 'test', endpoint: 'http://localhost:9090' }); + tracker.addPlugin({ + plugin: { + filter: (payload) => { + payloads.push(payload); + return false; + }, + }, + }); + }); + + it('tracks a page view event', () => { + tracker.trackPageViewEvent({ + pageUrl: 'http://localhost:9090', + pageTitle: 'Home', + }); + + expect(payloads.length).toBe(1); + const [payload] = payloads; + expect(payload.e).toBe('pv'); + expect(payload.url).toBe('http://localhost:9090'); + expect(payload.page).toBe('Home'); + }); + + it('tracks a structured event', () => { + tracker.trackStructuredEvent({ + category: 'category', + action: 'action', + label: 'label', + property: 'property', + value: 1, + }); + + expect(payloads.length).toBe(1); + const [payload] = payloads; + expect(payload.e).toBe('se'); + expect(payload.se_ca).toBe('category'); + expect(payload.se_ac).toBe('action'); + expect(payload.se_la).toBe('label'); + expect(payload.se_pr).toBe('property'); + expect(payload.se_va).toBe('1'); + }); + + it('tracks a timing event', () => { + tracker.trackTimingEvent({ + category: 'category', + variable: 'variable', + timing: 1, + label: 'label', + }); + + expect(payloads.length).toBe(1); + const [payload] = payloads; + expect(payload.e).toBe('ue'); + const { ue_pr } = payload; + const event = JSON.parse(ue_pr as string); + const { schema, data } = event.data; + expect(schema).toContain('timing'); + expect(data.category).toBe('category'); + expect(data.variable).toBe('variable'); + expect(data.timing).toBe(1); + expect(data.label).toBe('label'); + }); + + it('tracks a message notification event', () => { + tracker.trackMessageNotificationEvent({ + action: 'a', + category: 'c', + trigger: 'calendar', + body: 'b', + title: 't', + }); + + expect(payloads.length).toBe(1); + const [payload] = payloads; + expect(payload.e).toBe('ue'); + const { ue_pr } = payload; + const event = JSON.parse(ue_pr as string); + const { schema, data } = event.data; + expect(schema).toContain('message_notification'); + expect(data.action).toBe('a'); + expect(data.category).toBe('c'); + expect(data.trigger).toBe('calendar'); + expect(data.body).toBe('b'); + expect(data.title).toBe('t'); + }); + + it('tracks a self-describing event', () => { + tracker.trackSelfDescribingEvent({ + schema: 'iglu:com.acme/event/jsonschema/1-0-0', + data: { + field: 'value', + }, + }); + + expect(payloads.length).toBe(1); + const [payload] = payloads; + expect(payload.e).toBe('ue'); + const { ue_pr } = payload; + const event = JSON.parse(ue_pr as string); + const { schema, data } = event.data; + expect(schema).toBe('iglu:com.acme/event/jsonschema/1-0-0'); + expect(data.field).toBe('value'); + }); + + it('tracks context entities with events', () => { + tracker.trackPageViewEvent( + { + pageUrl: 'http://localhost:9090', + }, + [ + { + schema: 'iglu:com.acme/page/jsonschema/1-0-0', + data: { + field: 'value', + }, + }, + ] + ); + + expect(payloads.length).toBe(1); + const [payload] = payloads; + expect(payload.co).toBeDefined(); + const { co } = payload; + const context = JSON.parse(co as string); + const [{ schema, data }] = context.data; + expect(schema).toBe('iglu:com.acme/page/jsonschema/1-0-0'); + expect(data.field).toBe('value'); }); }); diff --git a/trackers/react-native-tracker/test/subject.test.ts b/trackers/react-native-tracker/test/subject.test.ts index 1e30131a5..72a2fa1ba 100644 --- a/trackers/react-native-tracker/test/subject.test.ts +++ b/trackers/react-native-tracker/test/subject.test.ts @@ -1,4 +1,138 @@ +import { CorePluginConfiguration, Payload } from '@snowplow/tracker-core'; +import { newTracker, ReactNativeTracker } from '../src'; + describe('Subject', () => { - it('', async () => { + let tracker: ReactNativeTracker; + let payloads: Payload[]; + const plugin: CorePluginConfiguration = { + plugin: { + filter: (payload) => { + payloads.push(payload); + return false; + }, + }, + }; + + beforeEach(() => { + payloads = []; + }); + + describe('Subject configuration', () => { + beforeEach(async () => { + tracker = await newTracker({ + namespace: 'test', + endpoint: 'http://localhost:9090', + userId: 'user-id', + networkUserId: 'network-user-id', + domainUserId: 'domain-user-id', + useragent: 'user-agent', + ipAddress: 'ip-address', + timezone: 'timezone', + language: 'sk', + screenResolution: [1920, 1080], + colorDepth: 24, + screenViewport: [1200, 800], + }); + tracker.addPlugin(plugin); + }); + + it('adds the subject props from configuration', async () => { + tracker.trackPageViewEvent({ pageUrl: 'http://localhost:9090', pageTitle: 'Home' }); + + expect(payloads.length).toBe(1); + const [payload] = payloads; + expect(payload.uid).toBe('user-id'); + expect(payload.nuid).toBe('network-user-id'); + expect(payload.duid).toBe('domain-user-id'); + expect(payload.ua).toBe('user-agent'); + expect(payload.ip).toBe('ip-address'); + expect(payload.tz).toBe('timezone'); + expect(payload.lang).toBe('sk'); + expect(payload.res).toBe('1920x1080'); + expect(payload.cd).toBe('24'); + expect(payload.vp).toBe('1200x800'); + }); + }); + + describe('Subject methods', () => { + beforeEach(async () => { + tracker = await newTracker({ namespace: 'test', endpoint: 'http://localhost:9090' }); + tracker.addPlugin(plugin); + }); + + it('sets the user id', () => { + tracker.setUserId('user-id'); + tracker.trackPageViewEvent({ pageUrl: 'http://localhost:9090', pageTitle: 'Home' }); + + expect(payloads.length).toBe(1); + const [payload] = payloads; + expect(payload.uid).toBe('user-id'); + }); + + it('sets the network user id', () => { + tracker.setNetworkUserId('network-user-id'); + tracker.trackPageViewEvent({ pageUrl: 'http://localhost:9090', pageTitle: 'Home' }); + + expect(payloads.length).toBe(1); + const [payload] = payloads; + expect(payload.nuid).toBe('network-user-id'); + }); + + it('sets the domain user id', () => { + tracker.setDomainUserId('domain-user-id'); + tracker.trackPageViewEvent({ pageUrl: 'http://localhost:9090', pageTitle: 'Home' }); + + expect(payloads.length).toBe(1); + const [payload] = payloads; + expect(payload.duid).toBe('domain-user-id'); + }); + + it('sets the screen resolution', () => { + tracker.setScreenResolution([1920, 1080]); + tracker.trackPageViewEvent({ pageUrl: 'http://localhost:9090', pageTitle: 'Home' }); + + expect(payloads.length).toBe(1); + const [payload] = payloads; + expect(payload.res).toBe('1920x1080'); + }); + + it('sets the color depth', () => { + tracker.setColorDepth(24); + tracker.trackPageViewEvent({ pageUrl: 'http://localhost:9090', pageTitle: 'Home' }); + + expect(payloads.length).toBe(1); + const [payload] = payloads; + expect(payload.cd).toBe('24'); + }); + + it('sets the screen viewport', () => { + tracker.setScreenViewport([1200, 800]); + tracker.trackPageViewEvent({ pageUrl: 'http://localhost:9090', pageTitle: 'Home' }); + + expect(payloads.length).toBe(1); + const [payload] = payloads; + expect(payload.vp).toBe('1200x800'); + }); + + it('sets the subject data', () => { + tracker.setSubjectData({ + networkUserId: 'network-user-id', + domainUserId: 'domain-user-id', + userId: 'user-id', + useragent: 'user-agent', + ipAddress: 'ip-address', + timezone: 'timezone', + }); + tracker.trackPageViewEvent({ pageUrl: 'http://localhost:9090', pageTitle: 'Home' }); + + expect(payloads.length).toBe(1); + const [payload] = payloads; + expect(payload.nuid).toBe('network-user-id'); + expect(payload.duid).toBe('domain-user-id'); + expect(payload.uid).toBe('user-id'); + expect(payload.ua).toBe('user-agent'); + expect(payload.ip).toBe('ip-address'); + expect(payload.tz).toBe('timezone'); + }); }); }); diff --git a/trackers/react-native-tracker/test/tracker.test.ts b/trackers/react-native-tracker/test/tracker.test.ts index ad954e87f..9a58b65d8 100644 --- a/trackers/react-native-tracker/test/tracker.test.ts +++ b/trackers/react-native-tracker/test/tracker.test.ts @@ -1,7 +1,143 @@ import { newTracker } from '../src'; -describe('Initialize new tracker', () => { +function createMockFetch(status: number, requests: Request[]) { + return async (input: Request) => { + requests.push(input); + let response = new Response(null, { status }); + return response; + }; +} + +describe('Tracker', () => { + let requests: Request[]; + let mockFetch: ReturnType; + + beforeEach(async () => { + requests = []; + mockFetch = createMockFetch(200, requests); + }); + it('creates a tracker with minimal config', async () => { expect(await newTracker({ namespace: 'test', endpoint: 'http://localhost:9090' })).toBeDefined(); }); + + it('tracks a page view event with tracker properties', async () => { + const tracker = await newTracker({ + namespace: 'test', + appId: 'my-app', + endpoint: 'http://localhost:9090', + customFetch: mockFetch, + }); + tracker.trackPageViewEvent({ + pageUrl: 'http://localhost:9090', + pageTitle: 'Home', + }); + await tracker.flush(); + expect(requests.length).toBe(1); + + const [request] = requests; + const payload = await request.json(); + expect(payload.data.length).toBe(1); + + const [event] = payload.data; + expect(event.p).toBe('mob'); + expect(event.tv).toContain('rn-'); + expect(event.tna).toBe('test'); + expect(event.dtm).toBeDefined(); + expect(event.stm).toBeDefined(); + expect(event.aid).toBe('my-app'); + }); + + it('adds a tracker plugin', async () => { + const tracker = await newTracker({ + namespace: 'test', + endpoint: 'http://localhost:9090', + customFetch: mockFetch, + }); + + let pluginCalled = false; + tracker.addPlugin({ + plugin: { + afterTrack: () => { + pluginCalled = true; + }, + }, + }); + + tracker.trackPageViewEvent({ + pageUrl: 'http://localhost:9090', + pageTitle: 'Home', + }); + await tracker.flush(); + expect(pluginCalled).toBe(true); + }); + + describe('Global contexts', () => { + it('adds a global context', async () => { + const tracker = await newTracker({ + namespace: 'test', + endpoint: 'http://localhost:9090', + customFetch: mockFetch, + }); + + tracker.addGlobalContexts([ + { + schema: 'iglu:com.acme/user/jsonschema/1-0-0', + data: { + userType: 'tester', + }, + }, + ]); + + tracker.trackPageViewEvent({ + pageUrl: 'http://localhost:9090', + pageTitle: 'Home', + }); + await tracker.flush(); + + const [request] = requests; + const payload = await request.json(); + expect(payload.data.length).toBe(1); + + const [event] = payload.data; + expect(event.co).toBeDefined(); + const context = JSON.parse(event.co as string); + expect(context.data.length).toBe(1); + const [{ schema, data }] = context.data; + + expect(schema).toBe('iglu:com.acme/user/jsonschema/1-0-0'); + expect(data.userType).toBe('tester'); + }); + + it('removes a global context', async () => { + const tracker = await newTracker({ + namespace: 'test', + endpoint: 'http://localhost:9090', + customFetch: mockFetch, + }); + + const context = { + schema: 'iglu:com.acme/user/jsonschema/1-0-0', + data: { + userType: 'tester', + }, + }; + + tracker.addGlobalContexts({ c1: context }); + tracker.removeGlobalContexts(['c1']); + + tracker.trackPageViewEvent({ + pageUrl: 'http://localhost:9090', + pageTitle: 'Home', + }); + await tracker.flush(); + + const [request] = requests; + const payload = await request.json(); + expect(payload.data.length).toBe(1); + + const [event] = payload.data; + expect(event.co).toBeUndefined(); + }); + }); }); From 239ed874910f8a1413096e1714b0b6c7317bfae6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matu=CC=81s=CC=8C=20Tomlein?= Date: Tue, 5 Nov 2024 10:48:23 +0100 Subject: [PATCH 03/16] Add API docs --- .gitignore | 3 +- .../react-native-tracker/markdown/index.md | 12 + ...tive-tracker.conditionalcontextprovider.md | 13 + .../react-native-tracker.contextfilter.md | 13 + .../react-native-tracker.contextgenerator.md | 13 + .../react-native-tracker.contextprimitive.md | 13 + ...native-tracker.coreconfiguration.base64.md | 11 + ...tive-tracker.coreconfiguration.callback.md | 11 + ...e-tracker.coreconfiguration.coreplugins.md | 11 + .../react-native-tracker.coreconfiguration.md | 22 + ...e-tracker.coreplugin.activatecoreplugin.md | 18 + ...ct-native-tracker.coreplugin.aftertrack.md | 13 + ...t-native-tracker.coreplugin.beforetrack.md | 13 + ...eact-native-tracker.coreplugin.contexts.md | 13 + .../react-native-tracker.coreplugin.filter.md | 13 + .../react-native-tracker.coreplugin.logger.md | 13 + .../react-native-tracker.coreplugin.md | 25 + ...-native-tracker.corepluginconfiguration.md | 20 + ...-tracker.corepluginconfiguration.plugin.md | 11 + ...ct-native-tracker.deeplinkreceivedprops.md | 16 + .../react-native-tracker.devicetimestamp.md | 21 + ...act-native-tracker.devicetimestamp.type.md | 11 + ...ct-native-tracker.devicetimestamp.value.md | 11 + .../react-native-tracker.emitter.flush.md | 13 + .../react-native-tracker.emitter.input.md | 13 + .../markdown/react-native-tracker.emitter.md | 24 + ...ve-tracker.emitter.setanonymoustracking.md | 13 + ...ct-native-tracker.emitter.setbuffersize.md | 13 + ...-native-tracker.emitter.setcollectorurl.md | 13 + ...e-tracker.emitterconfiguration.endpoint.md | 11 + ...act-native-tracker.emitterconfiguration.md | 22 + ...ative-tracker.emitterconfiguration.port.md | 11 + ...e-tracker.emitterconfiguration.protocol.md | 11 + ...mitterconfiguration.serveranonymization.md | 11 + ...ker.emitterconfigurationbase.buffersize.md | 13 + ...tterconfigurationbase.connectiontimeout.md | 13 + ...er.emitterconfigurationbase.credentials.md | 13 + ...er.emitterconfigurationbase.customfetch.md | 13 + ....emitterconfigurationbase.customheaders.md | 13 + ...rconfigurationbase.dontretrystatuscodes.md | 13 + ...er.emitterconfigurationbase.eventmethod.md | 13 + ...ker.emitterconfigurationbase.eventstore.md | 13 + ...cker.emitterconfigurationbase.idservice.md | 15 + ...cker.emitterconfigurationbase.keepalive.md | 13 + ...er.emitterconfigurationbase.maxgetbytes.md | 13 + ...r.emitterconfigurationbase.maxpostbytes.md | 13 + ...native-tracker.emitterconfigurationbase.md | 35 ++ ...itterconfigurationbase.onrequestfailure.md | 13 + ...itterconfigurationbase.onrequestsuccess.md | 13 + ...acker.emitterconfigurationbase.postpath.md | 13 + ...erconfigurationbase.retryfailedrequests.md | 17 + ...itterconfigurationbase.retrystatuscodes.md | 13 + ...tracker.emitterconfigurationbase.usestm.md | 13 + .../react-native-tracker.eventbatch.md | 13 + .../react-native-tracker.eventcontext.md | 13 + .../react-native-tracker.eventjson.md | 13 + .../react-native-tracker.eventjsonwithkeys.md | 17 + .../react-native-tracker.eventmethod.md | 11 + ...-tracker.eventpayloadandcontext.context.md | 13 + ...ve-tracker.eventpayloadandcontext.event.md | 13 + ...t-native-tracker.eventpayloadandcontext.md | 21 + .../react-native-tracker.eventstore.add.md | 13 + .../react-native-tracker.eventstore.count.md | 13 + .../react-native-tracker.eventstore.getall.md | 13 + ...ative-tracker.eventstore.getallpayloads.md | 13 + ...eact-native-tracker.eventstore.iterator.md | 13 + .../react-native-tracker.eventstore.md | 25 + ...ct-native-tracker.eventstore.removehead.md | 13 + ...entstoreconfiguration.maxeventstoresize.md | 15 + ...-native-tracker.eventstoreconfiguration.md | 21 + ...figuration.useasyncstorageforeventstore.md | 13 + ...react-native-tracker.eventstoreiterator.md | 20 + ...-native-tracker.eventstoreiterator.next.md | 13 + .../react-native-tracker.eventstorepayload.md | 19 + ...ative-tracker.eventstorepayload.payload.md | 13 + ...ative-tracker.eventstorepayload.svranon.md | 13 + .../react-native-tracker.filterprovider.md | 16 + ...r.formfocusorchangeevent.elementclasses.md | 13 + ...racker.formfocusorchangeevent.elementid.md | 13 + ...e-tracker.formfocusorchangeevent.formid.md | 13 + ...t-native-tracker.formfocusorchangeevent.md | 26 + ...tracker.formfocusorchangeevent.nodename.md | 13 + ...e-tracker.formfocusorchangeevent.schema.md | 13 + ...ive-tracker.formfocusorchangeevent.type.md | 13 + ...ve-tracker.formfocusorchangeevent.value.md | 13 + .../react-native-tracker.jsonprocessor.md | 13 + .../react-native-tracker.listitemviewprops.md | 18 + .../react-native-tracker.log_level.md | 22 + .../react-native-tracker.logger.debug.md | 11 + .../react-native-tracker.logger.error.md | 11 + .../react-native-tracker.logger.info.md | 11 + .../markdown/react-native-tracker.logger.md | 22 + ...react-native-tracker.logger.setloglevel.md | 11 + .../react-native-tracker.logger.warn.md | 11 + .../markdown/react-native-tracker.md | 83 +++ ...cker.messagenotificationattachmentprops.md | 17 + ...native-tracker.messagenotificationprops.md | 39 ++ .../react-native-tracker.newtracker.md | 26 + .../react-native-tracker.pageviewevent.md | 22 + ...-native-tracker.pageviewevent.pagetitle.md | 13 + ...ct-native-tracker.pageviewevent.pageurl.md | 13 + ...t-native-tracker.pageviewevent.referrer.md | 13 + .../markdown/react-native-tracker.payload.md | 13 + ...react-native-tracker.payloadbuilder.add.md | 13 + ...tracker.payloadbuilder.addcontextentity.md | 13 + ...t-native-tracker.payloadbuilder.adddict.md | 13 + ...t-native-tracker.payloadbuilder.addjson.md | 13 + ...act-native-tracker.payloadbuilder.build.md | 13 + ...t-native-tracker.payloadbuilder.getjson.md | 13 + ...ative-tracker.payloadbuilder.getpayload.md | 13 + .../react-native-tracker.payloadbuilder.md | 27 + ...racker.payloadbuilder.withjsonprocessor.md | 13 + ...react-native-tracker.reactnativetracker.md | 69 +++ .../react-native-tracker.requestfailure.md | 18 + .../react-native-tracker.ruleset.accept.md | 11 + .../markdown/react-native-tracker.ruleset.md | 21 + .../react-native-tracker.ruleset.reject.md | 11 + .../react-native-tracker.rulesetprovider.md | 16 + .../react-native-tracker.screensize.md | 16 + .../react-native-tracker.screenviewprops.md | 21 + ...react-native-tracker.scrollchangedprops.md | 22 + ...react-native-tracker.selfdescribingjson.md | 16 + ...nconfiguration.backgroundsessiontimeout.md | 13 + ...nconfiguration.foregroundsessiontimeout.md | 13 + ...act-native-tracker.sessionconfiguration.md | 21 + ...t-native-tracker.structuredevent.action.md | 11 + ...native-tracker.structuredevent.category.md | 11 + ...ct-native-tracker.structuredevent.label.md | 11 + .../react-native-tracker.structuredevent.md | 24 + ...native-tracker.structuredevent.property.md | 11 + ...ct-native-tracker.structuredevent.value.md | 11 + ...tracker.subjectconfiguration.colordepth.md | 13 + ...acker.subjectconfiguration.domainuserid.md | 13 + ...-tracker.subjectconfiguration.ipaddress.md | 13 + ...e-tracker.subjectconfiguration.language.md | 13 + ...act-native-tracker.subjectconfiguration.md | 29 ++ ...cker.subjectconfiguration.networkuserid.md | 13 + ...r.subjectconfiguration.screenresolution.md | 13 + ...ker.subjectconfiguration.screenviewport.md | 13 + ...e-tracker.subjectconfiguration.timezone.md | 13 + ...-tracker.subjectconfiguration.useragent.md | 13 + ...ive-tracker.subjectconfiguration.userid.md | 13 + .../react-native-tracker.timestamp.md | 13 + .../react-native-tracker.timingprops.md | 18 + ...tive-tracker.trackerconfiguration.appid.md | 13 + ...acker.trackerconfiguration.encodebase64.md | 13 + ...act-native-tracker.trackerconfiguration.md | 22 + ...-tracker.trackerconfiguration.namespace.md | 13 + ...e-tracker.trackercore.addglobalcontexts.md | 24 + ...tive-tracker.trackercore.addpayloaddict.md | 24 + ...tive-tracker.trackercore.addpayloadpair.md | 13 + ...ct-native-tracker.trackercore.addplugin.md | 24 + ...tracker.trackercore.clearglobalcontexts.md | 17 + ...e-tracker.trackercore.getbase64encoding.md | 17 + .../react-native-tracker.trackercore.md | 46 ++ ...racker.trackercore.removeglobalcontexts.md | 24 + ...e-tracker.trackercore.resetpayloadpairs.md | 24 + ...act-native-tracker.trackercore.setappid.md | 24 + ...e-tracker.trackercore.setbase64encoding.md | 24 + ...ative-tracker.trackercore.setcolordepth.md | 24 + ...native-tracker.trackercore.setipaddress.md | 24 + ...eact-native-tracker.trackercore.setlang.md | 24 + ...-native-tracker.trackercore.setplatform.md | 24 + ...tracker.trackercore.setscreenresolution.md | 25 + ...-native-tracker.trackercore.settimezone.md | 24 + ...tracker.trackercore.settrackernamespace.md | 24 + ...e-tracker.trackercore.settrackerversion.md | 24 + ...native-tracker.trackercore.setuseragent.md | 24 + ...ct-native-tracker.trackercore.setuserid.md | 24 + ...-native-tracker.trackercore.setviewport.md | 25 + .../react-native-tracker.trackercore.track.md | 13 + .../markdown/react-native-tracker.trigger.md | 13 + .../react-native-tracker.truetimestamp.md | 21 + ...react-native-tracker.truetimestamp.type.md | 11 + ...eact-native-tracker.truetimestamp.value.md | 11 + .../markdown/react-native-tracker.version.md | 11 + .../react-native-tracker.api.md | 488 ++++++++++++++++++ 177 files changed, 3419 insertions(+), 1 deletion(-) create mode 100644 api-docs/docs/react-native-tracker/markdown/index.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.conditionalcontextprovider.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.contextfilter.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.contextgenerator.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.contextprimitive.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreconfiguration.base64.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreconfiguration.callback.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreconfiguration.coreplugins.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreconfiguration.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.activatecoreplugin.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.aftertrack.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.beforetrack.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.contexts.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.filter.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.logger.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.corepluginconfiguration.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.corepluginconfiguration.plugin.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.deeplinkreceivedprops.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.devicetimestamp.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.devicetimestamp.type.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.devicetimestamp.value.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.flush.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.input.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.setanonymoustracking.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.setbuffersize.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.setcollectorurl.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.endpoint.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.port.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.protocol.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.serveranonymization.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.buffersize.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.connectiontimeout.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.credentials.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.customfetch.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.customheaders.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.dontretrystatuscodes.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.eventmethod.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.eventstore.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.idservice.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.keepalive.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.maxgetbytes.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.maxpostbytes.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.onrequestfailure.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.onrequestsuccess.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.postpath.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.retryfailedrequests.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.retrystatuscodes.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.usestm.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventbatch.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventcontext.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventjson.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventjsonwithkeys.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventmethod.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventpayloadandcontext.context.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventpayloadandcontext.event.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventpayloadandcontext.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.add.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.count.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.getall.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.getallpayloads.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.iterator.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.removehead.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreconfiguration.maxeventstoresize.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreconfiguration.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreconfiguration.useasyncstorageforeventstore.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreiterator.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreiterator.next.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstorepayload.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstorepayload.payload.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstorepayload.svranon.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.filterprovider.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.elementclasses.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.elementid.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.formid.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.nodename.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.schema.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.type.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.value.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.jsonprocessor.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.listitemviewprops.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.log_level.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.debug.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.error.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.info.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.setloglevel.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.warn.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.messagenotificationattachmentprops.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.messagenotificationprops.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.newtracker.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.pageviewevent.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.pageviewevent.pagetitle.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.pageviewevent.pageurl.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.pageviewevent.referrer.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.payload.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.add.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.addcontextentity.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.adddict.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.addjson.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.build.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.getjson.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.getpayload.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.withjsonprocessor.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.reactnativetracker.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.requestfailure.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.ruleset.accept.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.ruleset.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.ruleset.reject.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.rulesetprovider.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.screensize.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.screenviewprops.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.scrollchangedprops.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.selfdescribingjson.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.sessionconfiguration.backgroundsessiontimeout.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.sessionconfiguration.foregroundsessiontimeout.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.sessionconfiguration.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.action.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.category.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.label.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.property.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.value.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.colordepth.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.domainuserid.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.ipaddress.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.language.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.networkuserid.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.screenresolution.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.screenviewport.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.timezone.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.useragent.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.userid.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.timestamp.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.timingprops.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.appid.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.encodebase64.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.namespace.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.addglobalcontexts.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.addpayloaddict.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.addpayloadpair.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.addplugin.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.clearglobalcontexts.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.getbase64encoding.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.removeglobalcontexts.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.resetpayloadpairs.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setappid.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setbase64encoding.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setcolordepth.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setipaddress.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setlang.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setplatform.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setscreenresolution.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.settimezone.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.settrackernamespace.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.settrackerversion.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setuseragent.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setuserid.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setviewport.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.track.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trigger.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.truetimestamp.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.truetimestamp.type.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.truetimestamp.value.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.version.md create mode 100644 api-docs/docs/react-native-tracker/react-native-tracker.api.md diff --git a/.gitignore b/.gitignore index cd06b3379..a0bdc3180 100644 --- a/.gitignore +++ b/.gitignore @@ -67,6 +67,7 @@ common/autoinstallers/*/.npmrc # API Extractor trackers/browser-tracker/temp/ trackers/node-tracker/temp/ +trackers/react-native-tracker/temp/ # Distribution files dist @@ -80,4 +81,4 @@ trackers/javascript-tracker/test/local/serve/ .DS_Store # gitleaks file -findings.json \ No newline at end of file +findings.json diff --git a/api-docs/docs/react-native-tracker/markdown/index.md b/api-docs/docs/react-native-tracker/markdown/index.md new file mode 100644 index 000000000..3cff770ab --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/index.md @@ -0,0 +1,12 @@ + + +[Home](./index.md) + +## API Reference + +## Packages + +| Package | Description | +| --- | --- | +| [@snowplow/react-native-tracker](./react-native-tracker.md) | | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.conditionalcontextprovider.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.conditionalcontextprovider.md new file mode 100644 index 000000000..8e599149a --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.conditionalcontextprovider.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [ConditionalContextProvider](./react-native-tracker.conditionalcontextprovider.md) + +## ConditionalContextProvider type + +Conditional context providers are two element arrays used to decide when to attach contexts, where: - the first element is some conditional criterion - the second element is any number of context primitives + +Signature: + +```typescript +type ConditionalContextProvider = FilterProvider | RuleSetProvider; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.contextfilter.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.contextfilter.md new file mode 100644 index 000000000..eb81894c3 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.contextfilter.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [ContextFilter](./react-native-tracker.contextfilter.md) + +## ContextFilter type + +A context filter is a user-supplied callback that is evaluated for each event to determine if the context associated with the filter should be attached to the event + +Signature: + +```typescript +type ContextFilter = (args?: ContextEvent) => boolean; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.contextgenerator.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.contextgenerator.md new file mode 100644 index 000000000..922474bff --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.contextgenerator.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [ContextGenerator](./react-native-tracker.contextgenerator.md) + +## ContextGenerator type + +A context generator is a user-supplied callback that is evaluated for each event to allow an additional context to be dynamically attached to the event + +Signature: + +```typescript +type ContextGenerator = (args?: ContextEvent) => SelfDescribingJson | SelfDescribingJson[] | undefined; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.contextprimitive.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.contextprimitive.md new file mode 100644 index 000000000..88dda7cc3 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.contextprimitive.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [ContextPrimitive](./react-native-tracker.contextprimitive.md) + +## ContextPrimitive type + +A context primitive is either a self-describing JSON or a context generator + +Signature: + +```typescript +type ContextPrimitive = SelfDescribingJson | ContextGenerator; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreconfiguration.base64.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreconfiguration.base64.md new file mode 100644 index 000000000..e44c1611b --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreconfiguration.base64.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [CoreConfiguration](./react-native-tracker.coreconfiguration.md) > [base64](./react-native-tracker.coreconfiguration.base64.md) + +## CoreConfiguration.base64 property + +Signature: + +```typescript +base64?: boolean; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreconfiguration.callback.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreconfiguration.callback.md new file mode 100644 index 000000000..0686d575a --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreconfiguration.callback.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [CoreConfiguration](./react-native-tracker.coreconfiguration.md) > [callback](./react-native-tracker.coreconfiguration.callback.md) + +## CoreConfiguration.callback property + +Signature: + +```typescript +callback?: (PayloadData: PayloadBuilder) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreconfiguration.coreplugins.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreconfiguration.coreplugins.md new file mode 100644 index 000000000..8b0fb17ad --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreconfiguration.coreplugins.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [CoreConfiguration](./react-native-tracker.coreconfiguration.md) > [corePlugins](./react-native-tracker.coreconfiguration.coreplugins.md) + +## CoreConfiguration.corePlugins property + +Signature: + +```typescript +corePlugins?: Array; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreconfiguration.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreconfiguration.md new file mode 100644 index 000000000..f859c3d98 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreconfiguration.md @@ -0,0 +1,22 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [CoreConfiguration](./react-native-tracker.coreconfiguration.md) + +## CoreConfiguration interface + +The configuration object for the tracker core library + +Signature: + +```typescript +interface CoreConfiguration +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [base64?](./react-native-tracker.coreconfiguration.base64.md) | boolean | (Optional) | +| [callback?](./react-native-tracker.coreconfiguration.callback.md) | (PayloadData: PayloadBuilder) => void | (Optional) | +| [corePlugins?](./react-native-tracker.coreconfiguration.coreplugins.md) | Array<CorePlugin> | (Optional) | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.activatecoreplugin.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.activatecoreplugin.md new file mode 100644 index 000000000..3bfb61b0f --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.activatecoreplugin.md @@ -0,0 +1,18 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [CorePlugin](./react-native-tracker.coreplugin.md) > [activateCorePlugin](./react-native-tracker.coreplugin.activatecoreplugin.md) + +## CorePlugin.activateCorePlugin property + +Called when the plugin is initialised during the trackerCore construction + +Signature: + +```typescript +activateCorePlugin?: (core: TrackerCore) => void; +``` + +## Remarks + +Use to capture the specific core instance for each instance of a core plugin + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.aftertrack.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.aftertrack.md new file mode 100644 index 000000000..317cf078e --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.aftertrack.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [CorePlugin](./react-native-tracker.coreplugin.md) > [afterTrack](./react-native-tracker.coreplugin.aftertrack.md) + +## CorePlugin.afterTrack property + +Called just after the trackerCore callback fires + +Signature: + +```typescript +afterTrack?: (payload: Payload) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.beforetrack.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.beforetrack.md new file mode 100644 index 000000000..0aebe9b93 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.beforetrack.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [CorePlugin](./react-native-tracker.coreplugin.md) > [beforeTrack](./react-native-tracker.coreplugin.beforetrack.md) + +## CorePlugin.beforeTrack property + +Called before the `filter` method is called and before the trackerCore callback fires (if the filter passes) + +Signature: + +```typescript +beforeTrack?: (payloadBuilder: PayloadBuilder) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.contexts.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.contexts.md new file mode 100644 index 000000000..5c1f4adde --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.contexts.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [CorePlugin](./react-native-tracker.coreplugin.md) > [contexts](./react-native-tracker.coreplugin.contexts.md) + +## CorePlugin.contexts property + +Called when constructing the context for each event Useful for adding additional context to events + +Signature: + +```typescript +contexts?: () => SelfDescribingJson[]; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.filter.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.filter.md new file mode 100644 index 000000000..ae98d2d91 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.filter.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [CorePlugin](./react-native-tracker.coreplugin.md) > [filter](./react-native-tracker.coreplugin.filter.md) + +## CorePlugin.filter property + +Called before the payload is sent to the callback to decide whether to send the payload or skip it + +Signature: + +```typescript +filter?: (payload: Payload) => boolean; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.logger.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.logger.md new file mode 100644 index 000000000..7ad0ab7d7 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.logger.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [CorePlugin](./react-native-tracker.coreplugin.md) > [logger](./react-native-tracker.coreplugin.logger.md) + +## CorePlugin.logger property + +Passed a logger instance which can be used to send log information to the active logger + +Signature: + +```typescript +logger?: (logger: Logger) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.md new file mode 100644 index 000000000..53ad13b14 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.md @@ -0,0 +1,25 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [CorePlugin](./react-native-tracker.coreplugin.md) + +## CorePlugin interface + +Interface which defines Core Plugins + +Signature: + +```typescript +interface CorePlugin +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [activateCorePlugin?](./react-native-tracker.coreplugin.activatecoreplugin.md) | (core: TrackerCore) => void | (Optional) Called when the plugin is initialised during the trackerCore construction | +| [afterTrack?](./react-native-tracker.coreplugin.aftertrack.md) | (payload: Payload) => void | (Optional) Called just after the trackerCore callback fires | +| [beforeTrack?](./react-native-tracker.coreplugin.beforetrack.md) | (payloadBuilder: PayloadBuilder) => void | (Optional) Called before the filter method is called and before the trackerCore callback fires (if the filter passes) | +| [contexts?](./react-native-tracker.coreplugin.contexts.md) | () => SelfDescribingJson\[\] | (Optional) Called when constructing the context for each event Useful for adding additional context to events | +| [filter?](./react-native-tracker.coreplugin.filter.md) | (payload: Payload) => boolean | (Optional) Called before the payload is sent to the callback to decide whether to send the payload or skip it | +| [logger?](./react-native-tracker.coreplugin.logger.md) | (logger: Logger) => void | (Optional) Passed a logger instance which can be used to send log information to the active logger | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.corepluginconfiguration.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.corepluginconfiguration.md new file mode 100644 index 000000000..6643a70a4 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.corepluginconfiguration.md @@ -0,0 +1,20 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [CorePluginConfiguration](./react-native-tracker.corepluginconfiguration.md) + +## CorePluginConfiguration interface + +The configuration of the plugin to add + +Signature: + +```typescript +interface CorePluginConfiguration +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [plugin](./react-native-tracker.corepluginconfiguration.plugin.md) | CorePlugin | | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.corepluginconfiguration.plugin.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.corepluginconfiguration.plugin.md new file mode 100644 index 000000000..197cb22b1 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.corepluginconfiguration.plugin.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [CorePluginConfiguration](./react-native-tracker.corepluginconfiguration.md) > [plugin](./react-native-tracker.corepluginconfiguration.plugin.md) + +## CorePluginConfiguration.plugin property + +Signature: + +```typescript +plugin: CorePlugin; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.deeplinkreceivedprops.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.deeplinkreceivedprops.md new file mode 100644 index 000000000..086cfca01 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.deeplinkreceivedprops.md @@ -0,0 +1,16 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [DeepLinkReceivedProps](./react-native-tracker.deeplinkreceivedprops.md) + +## DeepLinkReceivedProps type + +DeepLinkReceived event properties schema: iglu:com.snowplowanalytics.mobile/deep\_link\_received/jsonschema/1-0-0 + +Signature: + +```typescript +type DeepLinkReceivedProps = { + url: string; + referrer?: string; +}; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.devicetimestamp.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.devicetimestamp.md new file mode 100644 index 000000000..c7b3b8bf1 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.devicetimestamp.md @@ -0,0 +1,21 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [DeviceTimestamp](./react-native-tracker.devicetimestamp.md) + +## DeviceTimestamp interface + +A representation of a Device Timestamp (dtm) + +Signature: + +```typescript +interface DeviceTimestamp +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [type](./react-native-tracker.devicetimestamp.type.md) | "dtm" | | +| [value](./react-native-tracker.devicetimestamp.value.md) | number | | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.devicetimestamp.type.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.devicetimestamp.type.md new file mode 100644 index 000000000..7aeaa9276 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.devicetimestamp.type.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [DeviceTimestamp](./react-native-tracker.devicetimestamp.md) > [type](./react-native-tracker.devicetimestamp.type.md) + +## DeviceTimestamp.type property + +Signature: + +```typescript +readonly type: "dtm"; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.devicetimestamp.value.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.devicetimestamp.value.md new file mode 100644 index 000000000..1bab215d8 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.devicetimestamp.value.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [DeviceTimestamp](./react-native-tracker.devicetimestamp.md) > [value](./react-native-tracker.devicetimestamp.value.md) + +## DeviceTimestamp.value property + +Signature: + +```typescript +readonly value: number; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.flush.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.flush.md new file mode 100644 index 000000000..5ecd11b0c --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.flush.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [Emitter](./react-native-tracker.emitter.md) > [flush](./react-native-tracker.emitter.flush.md) + +## Emitter.flush property + +Forces the emitter to send all events in the event store to the collector. + +Signature: + +```typescript +flush: () => Promise; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.input.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.input.md new file mode 100644 index 000000000..bdee0549e --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.input.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [Emitter](./react-native-tracker.emitter.md) > [input](./react-native-tracker.emitter.input.md) + +## Emitter.input property + +Adds a payload to the event store or sends it to the collector. + +Signature: + +```typescript +input: (payload: Payload) => Promise; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.md new file mode 100644 index 000000000..902f30e5b --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.md @@ -0,0 +1,24 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [Emitter](./react-native-tracker.emitter.md) + +## Emitter interface + +Emitter is responsible for sending events to the collector. It manages the event queue and sends events in batches depending on configuration. + +Signature: + +```typescript +interface Emitter +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [flush](./react-native-tracker.emitter.flush.md) | () => Promise<void> | Forces the emitter to send all events in the event store to the collector. | +| [input](./react-native-tracker.emitter.input.md) | (payload: Payload) => Promise<void> | Adds a payload to the event store or sends it to the collector. | +| [setAnonymousTracking](./react-native-tracker.emitter.setanonymoustracking.md) | (anonymous: boolean) => void | Sets the server anonymization flag. | +| [setBufferSize](./react-native-tracker.emitter.setbuffersize.md) | (bufferSize: number) => void | Updates the buffer size of the emitter. | +| [setCollectorUrl](./react-native-tracker.emitter.setcollectorurl.md) | (url: string) => void | Updates the collector URL to which events will be sent. | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.setanonymoustracking.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.setanonymoustracking.md new file mode 100644 index 000000000..fd00c1f20 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.setanonymoustracking.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [Emitter](./react-native-tracker.emitter.md) > [setAnonymousTracking](./react-native-tracker.emitter.setanonymoustracking.md) + +## Emitter.setAnonymousTracking property + +Sets the server anonymization flag. + +Signature: + +```typescript +setAnonymousTracking: (anonymous: boolean) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.setbuffersize.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.setbuffersize.md new file mode 100644 index 000000000..2a60acd68 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.setbuffersize.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [Emitter](./react-native-tracker.emitter.md) > [setBufferSize](./react-native-tracker.emitter.setbuffersize.md) + +## Emitter.setBufferSize property + +Updates the buffer size of the emitter. + +Signature: + +```typescript +setBufferSize: (bufferSize: number) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.setcollectorurl.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.setcollectorurl.md new file mode 100644 index 000000000..5d2d5aedd --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitter.setcollectorurl.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [Emitter](./react-native-tracker.emitter.md) > [setCollectorUrl](./react-native-tracker.emitter.setcollectorurl.md) + +## Emitter.setCollectorUrl property + +Updates the collector URL to which events will be sent. + +Signature: + +```typescript +setCollectorUrl: (url: string) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.endpoint.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.endpoint.md new file mode 100644 index 000000000..fb4a0e4c4 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.endpoint.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfiguration](./react-native-tracker.emitterconfiguration.md) > [endpoint](./react-native-tracker.emitterconfiguration.endpoint.md) + +## EmitterConfiguration.endpoint property + +Signature: + +```typescript +endpoint: string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.md new file mode 100644 index 000000000..14e34b8a3 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.md @@ -0,0 +1,22 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfiguration](./react-native-tracker.emitterconfiguration.md) + +## EmitterConfiguration interface + +Signature: + +```typescript +interface EmitterConfiguration extends EmitterConfigurationBase +``` +Extends: EmitterConfigurationBase + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [endpoint](./react-native-tracker.emitterconfiguration.endpoint.md) | string | | +| [port?](./react-native-tracker.emitterconfiguration.port.md) | number | (Optional) | +| [protocol?](./react-native-tracker.emitterconfiguration.protocol.md) | "http" \| "https" | (Optional) | +| [serverAnonymization?](./react-native-tracker.emitterconfiguration.serveranonymization.md) | boolean | (Optional) | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.port.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.port.md new file mode 100644 index 000000000..e6a29ff90 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.port.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfiguration](./react-native-tracker.emitterconfiguration.md) > [port](./react-native-tracker.emitterconfiguration.port.md) + +## EmitterConfiguration.port property + +Signature: + +```typescript +port?: number; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.protocol.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.protocol.md new file mode 100644 index 000000000..a42e49002 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.protocol.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfiguration](./react-native-tracker.emitterconfiguration.md) > [protocol](./react-native-tracker.emitterconfiguration.protocol.md) + +## EmitterConfiguration.protocol property + +Signature: + +```typescript +protocol?: "http" | "https"; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.serveranonymization.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.serveranonymization.md new file mode 100644 index 000000000..3cbe93fdf --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfiguration.serveranonymization.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfiguration](./react-native-tracker.emitterconfiguration.md) > [serverAnonymization](./react-native-tracker.emitterconfiguration.serveranonymization.md) + +## EmitterConfiguration.serverAnonymization property + +Signature: + +```typescript +serverAnonymization?: boolean; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.buffersize.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.buffersize.md new file mode 100644 index 000000000..dae8a0475 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.buffersize.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) > [bufferSize](./react-native-tracker.emitterconfigurationbase.buffersize.md) + +## EmitterConfigurationBase.bufferSize property + +The amount of events that should be buffered before sending Recommended to leave as 1 to reduce change of losing events + +Signature: + +```typescript +bufferSize?: number; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.connectiontimeout.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.connectiontimeout.md new file mode 100644 index 000000000..a9eb8adcc --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.connectiontimeout.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) > [connectionTimeout](./react-native-tracker.emitterconfigurationbase.connectiontimeout.md) + +## EmitterConfigurationBase.connectionTimeout property + +How long to wait before aborting requests to the collector + +Signature: + +```typescript +connectionTimeout?: number; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.credentials.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.credentials.md new file mode 100644 index 000000000..a27495bf9 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.credentials.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) > [credentials](./react-native-tracker.emitterconfigurationbase.credentials.md) + +## EmitterConfigurationBase.credentials property + +Controls whether or not the browser sends credentials (defaults to 'include') + +Signature: + +```typescript +credentials?: "omit" | "same-origin" | "include"; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.customfetch.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.customfetch.md new file mode 100644 index 000000000..8109e3c34 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.customfetch.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) > [customFetch](./react-native-tracker.emitterconfigurationbase.customfetch.md) + +## EmitterConfigurationBase.customFetch property + +Enables overriding the default fetch function with a custom implementation. + +Signature: + +```typescript +customFetch?: (input: Request, options?: RequestInit) => Promise; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.customheaders.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.customheaders.md new file mode 100644 index 000000000..c090b8bb7 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.customheaders.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) > [customHeaders](./react-native-tracker.emitterconfigurationbase.customheaders.md) + +## EmitterConfigurationBase.customHeaders property + +An object of key value pairs which represent headers to attach when sending a POST request, only works for POST + +Signature: + +```typescript +customHeaders?: Record; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.dontretrystatuscodes.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.dontretrystatuscodes.md new file mode 100644 index 000000000..54c2af656 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.dontretrystatuscodes.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) > [dontRetryStatusCodes](./react-native-tracker.emitterconfigurationbase.dontretrystatuscodes.md) + +## EmitterConfigurationBase.dontRetryStatusCodes property + +List of HTTP response status codes for which events sent to Collector should not be retried in future request. Only non-success status codes are considered (greater or equal to 300). The don't retry codes are only considered for GET and POST requests. By default, the tracker retries on all non-success status codes except for 400, 401, 403, 410, and 422 (these don't retry codes will remain even if you set your own `dontRetryStatusCodes` but can be changed using the `retryStatusCodes`). + +Signature: + +```typescript +dontRetryStatusCodes?: number[]; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.eventmethod.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.eventmethod.md new file mode 100644 index 000000000..42e035712 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.eventmethod.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) > [eventMethod](./react-native-tracker.emitterconfigurationbase.eventmethod.md) + +## EmitterConfigurationBase.eventMethod property + +The preferred technique to use to send events + +Signature: + +```typescript +eventMethod?: EventMethod; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.eventstore.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.eventstore.md new file mode 100644 index 000000000..fa5ccff1a --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.eventstore.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) > [eventStore](./react-native-tracker.emitterconfigurationbase.eventstore.md) + +## EmitterConfigurationBase.eventStore property + +Enables providing a custom EventStore implementation to store events before sending them to the collector. + +Signature: + +```typescript +eventStore?: EventStore; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.idservice.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.idservice.md new file mode 100644 index 000000000..379cb6a53 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.idservice.md @@ -0,0 +1,15 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) > [idService](./react-native-tracker.emitterconfigurationbase.idservice.md) + +## EmitterConfigurationBase.idService property + +Id service full URL. This URL will be added to the queue and will be called using a GET method. This option is there to allow the service URL to be called in order to set any required identifiers e.g. extra cookies. + +The request respects the `anonymousTracking` option, including the SP-Anonymous header if needed, and any additional custom headers from the customHeaders option. + +Signature: + +```typescript +idService?: string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.keepalive.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.keepalive.md new file mode 100644 index 000000000..7fed66590 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.keepalive.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) > [keepalive](./react-native-tracker.emitterconfigurationbase.keepalive.md) + +## EmitterConfigurationBase.keepalive property + +Indicates that the request should be allowed to outlive the webpage that initiated it. Enables collector requests to complete even if the page is closed or navigated away from. Note: Browsers put a limit on keepalive requests of 64KB. In case of multiple keepalive requests in parallel (may happen in case of multiple trackers), the limit is shared. + +Signature: + +```typescript +keepalive?: boolean; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.maxgetbytes.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.maxgetbytes.md new file mode 100644 index 000000000..8f1246938 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.maxgetbytes.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) > [maxGetBytes](./react-native-tracker.emitterconfigurationbase.maxgetbytes.md) + +## EmitterConfigurationBase.maxGetBytes property + +The max size a GET request (its complete URL) can be. Requests over this size will be tried as a POST request. + +Signature: + +```typescript +maxGetBytes?: number; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.maxpostbytes.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.maxpostbytes.md new file mode 100644 index 000000000..322cff750 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.maxpostbytes.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) > [maxPostBytes](./react-native-tracker.emitterconfigurationbase.maxpostbytes.md) + +## EmitterConfigurationBase.maxPostBytes property + +The max size a POST request can be before the tracker will force send it Also dictates the max size of a POST request before a batch of events is split into multiple requests + +Signature: + +```typescript +maxPostBytes?: number; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.md new file mode 100644 index 000000000..f3d64191d --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.md @@ -0,0 +1,35 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) + +## EmitterConfigurationBase interface + +Signature: + +```typescript +interface EmitterConfigurationBase +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [bufferSize?](./react-native-tracker.emitterconfigurationbase.buffersize.md) | number | (Optional) The amount of events that should be buffered before sending Recommended to leave as 1 to reduce change of losing events | +| [connectionTimeout?](./react-native-tracker.emitterconfigurationbase.connectiontimeout.md) | number | (Optional) How long to wait before aborting requests to the collector | +| [credentials?](./react-native-tracker.emitterconfigurationbase.credentials.md) | "omit" \| "same-origin" \| "include" | (Optional) Controls whether or not the browser sends credentials (defaults to 'include') | +| [customFetch?](./react-native-tracker.emitterconfigurationbase.customfetch.md) | (input: Request, options?: RequestInit) => Promise<Response> | (Optional) Enables overriding the default fetch function with a custom implementation. | +| [customHeaders?](./react-native-tracker.emitterconfigurationbase.customheaders.md) | Record<string, string> | (Optional) An object of key value pairs which represent headers to attach when sending a POST request, only works for POST | +| [dontRetryStatusCodes?](./react-native-tracker.emitterconfigurationbase.dontretrystatuscodes.md) | number\[\] | (Optional) List of HTTP response status codes for which events sent to Collector should not be retried in future request. Only non-success status codes are considered (greater or equal to 300). The don't retry codes are only considered for GET and POST requests. By default, the tracker retries on all non-success status codes except for 400, 401, 403, 410, and 422 (these don't retry codes will remain even if you set your own dontRetryStatusCodes but can be changed using the retryStatusCodes). | +| [eventMethod?](./react-native-tracker.emitterconfigurationbase.eventmethod.md) | EventMethod | (Optional) The preferred technique to use to send events | +| [eventStore?](./react-native-tracker.emitterconfigurationbase.eventstore.md) | EventStore | (Optional) Enables providing a custom EventStore implementation to store events before sending them to the collector. | +| [idService?](./react-native-tracker.emitterconfigurationbase.idservice.md) | string | (Optional) Id service full URL. This URL will be added to the queue and will be called using a GET method. This option is there to allow the service URL to be called in order to set any required identifiers e.g. extra cookies.The request respects the anonymousTracking option, including the SP-Anonymous header if needed, and any additional custom headers from the customHeaders option. | +| [keepalive?](./react-native-tracker.emitterconfigurationbase.keepalive.md) | boolean | (Optional) Indicates that the request should be allowed to outlive the webpage that initiated it. Enables collector requests to complete even if the page is closed or navigated away from. Note: Browsers put a limit on keepalive requests of 64KB. In case of multiple keepalive requests in parallel (may happen in case of multiple trackers), the limit is shared. | +| [maxGetBytes?](./react-native-tracker.emitterconfigurationbase.maxgetbytes.md) | number | (Optional) The max size a GET request (its complete URL) can be. Requests over this size will be tried as a POST request. | +| [maxPostBytes?](./react-native-tracker.emitterconfigurationbase.maxpostbytes.md) | number | (Optional) The max size a POST request can be before the tracker will force send it Also dictates the max size of a POST request before a batch of events is split into multiple requests | +| [onRequestFailure?](./react-native-tracker.emitterconfigurationbase.onrequestfailure.md) | (data: RequestFailure, response?: Response) => void | (Optional) A callback function to be executed whenever a request fails to be sent to the collector. This is the inverse of the onRequestSuccess callback, so any non 2xx status code will trigger this callback. | +| [onRequestSuccess?](./react-native-tracker.emitterconfigurationbase.onrequestsuccess.md) | (data: EventBatch, response: Response) => void | (Optional) A callback function to be executed whenever a request is successfully sent to the collector. In practice this means any request which returns a 2xx status code will trigger this callback. | +| [postPath?](./react-native-tracker.emitterconfigurationbase.postpath.md) | string | (Optional) The post path which events will be sent to. Ensure your collector is configured to accept events on this post path | +| [retryFailedRequests?](./react-native-tracker.emitterconfigurationbase.retryfailedrequests.md) | boolean | (Optional) Whether to retry failed requests to the collector.Failed requests are requests that failed due to \[timeouts\](https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/timeout\_event), \[network errors\](https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/error\_event), and \[abort events\](https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/abort\_event).Takes precedent over retryStatusCodes and dontRetryStatusCodes. | +| [retryStatusCodes?](./react-native-tracker.emitterconfigurationbase.retrystatuscodes.md) | number\[\] | (Optional) List of HTTP response status codes for which events sent to Collector should be retried in future requests. Only non-success status codes are considered (greater or equal to 300). The retry codes are only considered for GET and POST requests. They take priority over the dontRetryStatusCodes option. By default, the tracker retries on all non-success status codes except for 400, 401, 403, 410, and 422. | +| [useStm?](./react-native-tracker.emitterconfigurationbase.usestm.md) | boolean | (Optional) Should the Sent Timestamp be attached to events. Only applies for GET events. | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.onrequestfailure.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.onrequestfailure.md new file mode 100644 index 000000000..e016fb3eb --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.onrequestfailure.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) > [onRequestFailure](./react-native-tracker.emitterconfigurationbase.onrequestfailure.md) + +## EmitterConfigurationBase.onRequestFailure property + +A callback function to be executed whenever a request fails to be sent to the collector. This is the inverse of the onRequestSuccess callback, so any non 2xx status code will trigger this callback. + +Signature: + +```typescript +onRequestFailure?: (data: RequestFailure, response?: Response) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.onrequestsuccess.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.onrequestsuccess.md new file mode 100644 index 000000000..f10204f74 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.onrequestsuccess.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) > [onRequestSuccess](./react-native-tracker.emitterconfigurationbase.onrequestsuccess.md) + +## EmitterConfigurationBase.onRequestSuccess property + +A callback function to be executed whenever a request is successfully sent to the collector. In practice this means any request which returns a 2xx status code will trigger this callback. + +Signature: + +```typescript +onRequestSuccess?: (data: EventBatch, response: Response) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.postpath.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.postpath.md new file mode 100644 index 000000000..22919166b --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.postpath.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) > [postPath](./react-native-tracker.emitterconfigurationbase.postpath.md) + +## EmitterConfigurationBase.postPath property + +The post path which events will be sent to. Ensure your collector is configured to accept events on this post path + +Signature: + +```typescript +postPath?: string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.retryfailedrequests.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.retryfailedrequests.md new file mode 100644 index 000000000..f3f91e095 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.retryfailedrequests.md @@ -0,0 +1,17 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) > [retryFailedRequests](./react-native-tracker.emitterconfigurationbase.retryfailedrequests.md) + +## EmitterConfigurationBase.retryFailedRequests property + +Whether to retry failed requests to the collector. + +Failed requests are requests that failed due to \[timeouts\](https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/timeout\_event), \[network errors\](https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/error\_event), and \[abort events\](https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/abort\_event). + +Takes precedent over `retryStatusCodes` and `dontRetryStatusCodes`. + +Signature: + +```typescript +retryFailedRequests?: boolean; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.retrystatuscodes.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.retrystatuscodes.md new file mode 100644 index 000000000..9aa2a5e3b --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.retrystatuscodes.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) > [retryStatusCodes](./react-native-tracker.emitterconfigurationbase.retrystatuscodes.md) + +## EmitterConfigurationBase.retryStatusCodes property + +List of HTTP response status codes for which events sent to Collector should be retried in future requests. Only non-success status codes are considered (greater or equal to 300). The retry codes are only considered for GET and POST requests. They take priority over the `dontRetryStatusCodes` option. By default, the tracker retries on all non-success status codes except for 400, 401, 403, 410, and 422. + +Signature: + +```typescript +retryStatusCodes?: number[]; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.usestm.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.usestm.md new file mode 100644 index 000000000..44ab994f9 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.emitterconfigurationbase.usestm.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) > [useStm](./react-native-tracker.emitterconfigurationbase.usestm.md) + +## EmitterConfigurationBase.useStm property + +Should the Sent Timestamp be attached to events. Only applies for GET events. + +Signature: + +```typescript +useStm?: boolean; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventbatch.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventbatch.md new file mode 100644 index 000000000..ae1217dde --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventbatch.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventBatch](./react-native-tracker.eventbatch.md) + +## EventBatch type + +A collection of event payloads which are sent to the collector. + +Signature: + +```typescript +type EventBatch = Payload[]; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventcontext.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventcontext.md new file mode 100644 index 000000000..05b8a1384 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventcontext.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventContext](./react-native-tracker.eventcontext.md) + +## EventContext type + +EventContext type + +Signature: + +```typescript +type EventContext = SelfDescribingJson; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventjson.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventjson.md new file mode 100644 index 000000000..f7a6a5ed4 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventjson.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventJson](./react-native-tracker.eventjson.md) + +## EventJson type + +An array of tuples which represents the unprocessed JSON to be added to the Payload + +Signature: + +```typescript +type EventJson = Array; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventjsonwithkeys.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventjsonwithkeys.md new file mode 100644 index 000000000..c59e2e28f --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventjsonwithkeys.md @@ -0,0 +1,17 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventJsonWithKeys](./react-native-tracker.eventjsonwithkeys.md) + +## EventJsonWithKeys type + +A tuple which represents the unprocessed JSON to be added to the Payload + +Signature: + +```typescript +type EventJsonWithKeys = { + keyIfEncoded: string; + keyIfNotEncoded: string; + json: Record; +}; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventmethod.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventmethod.md new file mode 100644 index 000000000..4bf7b39a3 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventmethod.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventMethod](./react-native-tracker.eventmethod.md) + +## EventMethod type + +Signature: + +```typescript +type EventMethod = "post" | "get"; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventpayloadandcontext.context.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventpayloadandcontext.context.md new file mode 100644 index 000000000..0f271f915 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventpayloadandcontext.context.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventPayloadAndContext](./react-native-tracker.eventpayloadandcontext.md) > [context](./react-native-tracker.eventpayloadandcontext.context.md) + +## EventPayloadAndContext.context property + +List of context entities to track along with the event + +Signature: + +```typescript +context: Array; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventpayloadandcontext.event.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventpayloadandcontext.event.md new file mode 100644 index 000000000..a24f74e22 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventpayloadandcontext.event.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventPayloadAndContext](./react-native-tracker.eventpayloadandcontext.md) > [event](./react-native-tracker.eventpayloadandcontext.event.md) + +## EventPayloadAndContext.event property + +Tracker payload for the event data + +Signature: + +```typescript +event: PayloadBuilder; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventpayloadandcontext.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventpayloadandcontext.md new file mode 100644 index 000000000..e998eaaf4 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventpayloadandcontext.md @@ -0,0 +1,21 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventPayloadAndContext](./react-native-tracker.eventpayloadandcontext.md) + +## EventPayloadAndContext interface + +Interface for returning a built event (PayloadBuilder) and context (Array of SelfDescribingJson). + +Signature: + +```typescript +interface EventPayloadAndContext +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [context](./react-native-tracker.eventpayloadandcontext.context.md) | Array<SelfDescribingJson> | List of context entities to track along with the event | +| [event](./react-native-tracker.eventpayloadandcontext.event.md) | PayloadBuilder | Tracker payload for the event data | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.add.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.add.md new file mode 100644 index 000000000..6b3d046c1 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.add.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventStore](./react-native-tracker.eventstore.md) > [add](./react-native-tracker.eventstore.add.md) + +## EventStore.add property + +Add an event to the store + +Signature: + +```typescript +add: (payload: EventStorePayload) => Promise; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.count.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.count.md new file mode 100644 index 000000000..7d9ede35c --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.count.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventStore](./react-native-tracker.eventstore.md) > [count](./react-native-tracker.eventstore.count.md) + +## EventStore.count property + +Count all events in the store + +Signature: + +```typescript +count: () => Promise; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.getall.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.getall.md new file mode 100644 index 000000000..f53cd055a --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.getall.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventStore](./react-native-tracker.eventstore.md) > [getAll](./react-native-tracker.eventstore.getall.md) + +## EventStore.getAll property + +Retrieve all payloads including their meta configuration in the store + +Signature: + +```typescript +getAll: () => Promise; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.getallpayloads.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.getallpayloads.md new file mode 100644 index 000000000..f7561db17 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.getallpayloads.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventStore](./react-native-tracker.eventstore.md) > [getAllPayloads](./react-native-tracker.eventstore.getallpayloads.md) + +## EventStore.getAllPayloads property + +Retrieve all pure payloads in the store + +Signature: + +```typescript +getAllPayloads: () => Promise; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.iterator.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.iterator.md new file mode 100644 index 000000000..7a8617e03 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.iterator.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventStore](./react-native-tracker.eventstore.md) > [iterator](./react-native-tracker.eventstore.iterator.md) + +## EventStore.iterator property + +Get an iterator over all events in the store + +Signature: + +```typescript +iterator: () => EventStoreIterator; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.md new file mode 100644 index 000000000..c177f6f8f --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.md @@ -0,0 +1,25 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventStore](./react-native-tracker.eventstore.md) + +## EventStore interface + +EventStore allows storing and retrieving events before they are sent to the collector + +Signature: + +```typescript +interface EventStore +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [add](./react-native-tracker.eventstore.add.md) | (payload: EventStorePayload) => Promise<number> | Add an event to the store | +| [count](./react-native-tracker.eventstore.count.md) | () => Promise<number> | Count all events in the store | +| [getAll](./react-native-tracker.eventstore.getall.md) | () => Promise<readonly EventStorePayload\[\]> | Retrieve all payloads including their meta configuration in the store | +| [getAllPayloads](./react-native-tracker.eventstore.getallpayloads.md) | () => Promise<readonly Payload\[\]> | Retrieve all pure payloads in the store | +| [iterator](./react-native-tracker.eventstore.iterator.md) | () => EventStoreIterator | Get an iterator over all events in the store | +| [removeHead](./react-native-tracker.eventstore.removehead.md) | (count: number) => Promise<void> | Remove the first count events from the store | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.removehead.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.removehead.md new file mode 100644 index 000000000..c50b00144 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstore.removehead.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventStore](./react-native-tracker.eventstore.md) > [removeHead](./react-native-tracker.eventstore.removehead.md) + +## EventStore.removeHead property + +Remove the first `count` events from the store + +Signature: + +```typescript +removeHead: (count: number) => Promise; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreconfiguration.maxeventstoresize.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreconfiguration.maxeventstoresize.md new file mode 100644 index 000000000..73a1e44e9 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreconfiguration.maxeventstoresize.md @@ -0,0 +1,15 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventStoreConfiguration](./react-native-tracker.eventstoreconfiguration.md) > [maxEventStoreSize](./react-native-tracker.eventstoreconfiguration.maxeventstoresize.md) + +## EventStoreConfiguration.maxEventStoreSize property + +The maximum amount of events that will be buffered in the event store + +Will drop events once the limit is hit + +Signature: + +```typescript +maxEventStoreSize?: number; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreconfiguration.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreconfiguration.md new file mode 100644 index 000000000..097afd568 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreconfiguration.md @@ -0,0 +1,21 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventStoreConfiguration](./react-native-tracker.eventstoreconfiguration.md) + +## EventStoreConfiguration interface + +Configuration for the event store + +Signature: + +```typescript +interface EventStoreConfiguration +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [maxEventStoreSize?](./react-native-tracker.eventstoreconfiguration.maxeventstoresize.md) | number | (Optional) The maximum amount of events that will be buffered in the event storeWill drop events once the limit is hit | +| [useAsyncStorageForEventStore?](./react-native-tracker.eventstoreconfiguration.useasyncstorageforeventstore.md) | boolean | (Optional) Whether to use the AsyncStorage library as the persistent event store for the event store | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreconfiguration.useasyncstorageforeventstore.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreconfiguration.useasyncstorageforeventstore.md new file mode 100644 index 000000000..2b4654199 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreconfiguration.useasyncstorageforeventstore.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventStoreConfiguration](./react-native-tracker.eventstoreconfiguration.md) > [useAsyncStorageForEventStore](./react-native-tracker.eventstoreconfiguration.useasyncstorageforeventstore.md) + +## EventStoreConfiguration.useAsyncStorageForEventStore property + +Whether to use the AsyncStorage library as the persistent event store for the event store + +Signature: + +```typescript +useAsyncStorageForEventStore?: boolean; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreiterator.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreiterator.md new file mode 100644 index 000000000..210311306 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreiterator.md @@ -0,0 +1,20 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventStoreIterator](./react-native-tracker.eventstoreiterator.md) + +## EventStoreIterator interface + +EventStoreIterator allows iterating over all events in the store. + +Signature: + +```typescript +interface EventStoreIterator +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [next](./react-native-tracker.eventstoreiterator.next.md) | () => Promise<EventStoreIteratorNextResult> | Retrieve the next event in the store | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreiterator.next.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreiterator.next.md new file mode 100644 index 000000000..a22200a8c --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreiterator.next.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventStoreIterator](./react-native-tracker.eventstoreiterator.md) > [next](./react-native-tracker.eventstoreiterator.next.md) + +## EventStoreIterator.next property + +Retrieve the next event in the store + +Signature: + +```typescript +next: () => Promise; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstorepayload.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstorepayload.md new file mode 100644 index 000000000..d212364e9 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstorepayload.md @@ -0,0 +1,19 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventStorePayload](./react-native-tracker.eventstorepayload.md) + +## EventStorePayload interface + +Signature: + +```typescript +interface EventStorePayload +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [payload](./react-native-tracker.eventstorepayload.payload.md) | Payload | The event payload to be stored | +| [svrAnon?](./react-native-tracker.eventstorepayload.svranon.md) | boolean | (Optional) If the request should undergo server anonymization. | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstorepayload.payload.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstorepayload.payload.md new file mode 100644 index 000000000..3396c027c --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstorepayload.payload.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventStorePayload](./react-native-tracker.eventstorepayload.md) > [payload](./react-native-tracker.eventstorepayload.payload.md) + +## EventStorePayload.payload property + +The event payload to be stored + +Signature: + +```typescript +payload: Payload; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstorepayload.svranon.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstorepayload.svranon.md new file mode 100644 index 000000000..964d41b4c --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstorepayload.svranon.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [EventStorePayload](./react-native-tracker.eventstorepayload.md) > [svrAnon](./react-native-tracker.eventstorepayload.svranon.md) + +## EventStorePayload.svrAnon property + +If the request should undergo server anonymization. + +Signature: + +```typescript +svrAnon?: boolean; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.filterprovider.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.filterprovider.md new file mode 100644 index 000000000..ad74eaa27 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.filterprovider.md @@ -0,0 +1,16 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [FilterProvider](./react-native-tracker.filterprovider.md) + +## FilterProvider type + +A filter provider is a tuple that has two parts: a context filter and the context primitive(s) If the context filter evaluates to true, the tracker will attach the context primitive(s) + +Signature: + +```typescript +type FilterProvider = [ + ContextFilter, + Array | ContextPrimitive +]; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.elementclasses.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.elementclasses.md new file mode 100644 index 000000000..d84dd4265 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.elementclasses.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [FormFocusOrChangeEvent](./react-native-tracker.formfocusorchangeevent.md) > [elementClasses](./react-native-tracker.formfocusorchangeevent.elementclasses.md) + +## FormFocusOrChangeEvent.elementClasses property + +The class names on the element + +Signature: + +```typescript +elementClasses?: Array | null; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.elementid.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.elementid.md new file mode 100644 index 000000000..73fb8561a --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.elementid.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [FormFocusOrChangeEvent](./react-native-tracker.formfocusorchangeevent.md) > [elementId](./react-native-tracker.formfocusorchangeevent.elementid.md) + +## FormFocusOrChangeEvent.elementId property + +The element ID which the user is interacting with + +Signature: + +```typescript +elementId: string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.formid.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.formid.md new file mode 100644 index 000000000..7ced403f4 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.formid.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [FormFocusOrChangeEvent](./react-native-tracker.formfocusorchangeevent.md) > [formId](./react-native-tracker.formfocusorchangeevent.formid.md) + +## FormFocusOrChangeEvent.formId property + +The ID of the form which the element belongs to + +Signature: + +```typescript +formId: string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.md new file mode 100644 index 000000000..8527ffae3 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.md @@ -0,0 +1,26 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [FormFocusOrChangeEvent](./react-native-tracker.formfocusorchangeevent.md) + +## FormFocusOrChangeEvent interface + +Represents either a Form Focus or Form Change event When a user focuses on a form element or when a user makes a change to a form element. + +Signature: + +```typescript +interface FormFocusOrChangeEvent +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [elementClasses?](./react-native-tracker.formfocusorchangeevent.elementclasses.md) | Array<string> \| null | (Optional) The class names on the element | +| [elementId](./react-native-tracker.formfocusorchangeevent.elementid.md) | string | The element ID which the user is interacting with | +| [formId](./react-native-tracker.formfocusorchangeevent.formid.md) | string | The ID of the form which the element belongs to | +| [nodeName](./react-native-tracker.formfocusorchangeevent.nodename.md) | string | The name of the node ("INPUT", "TEXTAREA", "SELECT") | +| [schema](./react-native-tracker.formfocusorchangeevent.schema.md) | "change\_form" \| "focus\_form" | The schema which will be used for the event | +| [type?](./react-native-tracker.formfocusorchangeevent.type.md) | string \| null | (Optional) The type of element (e.g. "datetime", "text", "radio", etc.) | +| [value](./react-native-tracker.formfocusorchangeevent.value.md) | string \| null | The value of the element at the time of the event firing | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.nodename.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.nodename.md new file mode 100644 index 000000000..882827ed8 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.nodename.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [FormFocusOrChangeEvent](./react-native-tracker.formfocusorchangeevent.md) > [nodeName](./react-native-tracker.formfocusorchangeevent.nodename.md) + +## FormFocusOrChangeEvent.nodeName property + +The name of the node ("INPUT", "TEXTAREA", "SELECT") + +Signature: + +```typescript +nodeName: string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.schema.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.schema.md new file mode 100644 index 000000000..321399b57 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.schema.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [FormFocusOrChangeEvent](./react-native-tracker.formfocusorchangeevent.md) > [schema](./react-native-tracker.formfocusorchangeevent.schema.md) + +## FormFocusOrChangeEvent.schema property + +The schema which will be used for the event + +Signature: + +```typescript +schema: "change_form" | "focus_form"; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.type.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.type.md new file mode 100644 index 000000000..7d64677df --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.type.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [FormFocusOrChangeEvent](./react-native-tracker.formfocusorchangeevent.md) > [type](./react-native-tracker.formfocusorchangeevent.type.md) + +## FormFocusOrChangeEvent.type property + +The type of element (e.g. "datetime", "text", "radio", etc.) + +Signature: + +```typescript +type?: string | null; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.value.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.value.md new file mode 100644 index 000000000..48ea7ccb7 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.formfocusorchangeevent.value.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [FormFocusOrChangeEvent](./react-native-tracker.formfocusorchangeevent.md) > [value](./react-native-tracker.formfocusorchangeevent.value.md) + +## FormFocusOrChangeEvent.value property + +The value of the element at the time of the event firing + +Signature: + +```typescript +value: string | null; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.jsonprocessor.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.jsonprocessor.md new file mode 100644 index 000000000..36f1cb5bc --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.jsonprocessor.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [JsonProcessor](./react-native-tracker.jsonprocessor.md) + +## JsonProcessor type + +A function which will processor the Json onto the injected PayloadBuilder + +Signature: + +```typescript +type JsonProcessor = (payloadBuilder: PayloadBuilder, jsonForProcessing: EventJson, contextEntitiesForProcessing: SelfDescribingJson[]) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.listitemviewprops.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.listitemviewprops.md new file mode 100644 index 000000000..11c13982a --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.listitemviewprops.md @@ -0,0 +1,18 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [ListItemViewProps](./react-native-tracker.listitemviewprops.md) + +## ListItemViewProps type + +Event tracking the view of an item in a list. If screen engagement tracking is enabled, the list item view events will be aggregated into a `screen_summary` entity. + +Schema: `iglu:com.snowplowanalytics.mobile/list_item_view/jsonschema/1-0-0` + +Signature: + +```typescript +type ListItemViewProps = { + index: number; + itemsCount?: number; +}; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.log_level.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.log_level.md new file mode 100644 index 000000000..c94abf2e3 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.log_level.md @@ -0,0 +1,22 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [LOG\_LEVEL](./react-native-tracker.log_level.md) + +## LOG\_LEVEL enum + +Signature: + +```typescript +declare enum LOG_LEVEL +``` + +## Enumeration Members + +| Member | Value | Description | +| --- | --- | --- | +| debug | 3 | | +| error | 1 | | +| info | 4 | | +| none | 0 | | +| warn | 2 | | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.debug.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.debug.md new file mode 100644 index 000000000..689ced16b --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.debug.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [Logger](./react-native-tracker.logger.md) > [debug](./react-native-tracker.logger.debug.md) + +## Logger.debug property + +Signature: + +```typescript +debug: (message: string, ...extraParams: unknown[]) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.error.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.error.md new file mode 100644 index 000000000..4f636b8c6 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.error.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [Logger](./react-native-tracker.logger.md) > [error](./react-native-tracker.logger.error.md) + +## Logger.error property + +Signature: + +```typescript +error: (message: string, error?: unknown, ...extraParams: unknown[]) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.info.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.info.md new file mode 100644 index 000000000..e887d16b6 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.info.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [Logger](./react-native-tracker.logger.md) > [info](./react-native-tracker.logger.info.md) + +## Logger.info property + +Signature: + +```typescript +info: (message: string, ...extraParams: unknown[]) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.md new file mode 100644 index 000000000..0c94986dd --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.md @@ -0,0 +1,22 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [Logger](./react-native-tracker.logger.md) + +## Logger interface + +Signature: + +```typescript +interface Logger +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [debug](./react-native-tracker.logger.debug.md) | (message: string, ...extraParams: unknown\[\]) => void | | +| [error](./react-native-tracker.logger.error.md) | (message: string, error?: unknown, ...extraParams: unknown\[\]) => void | | +| [info](./react-native-tracker.logger.info.md) | (message: string, ...extraParams: unknown\[\]) => void | | +| [setLogLevel](./react-native-tracker.logger.setloglevel.md) | (level: LOG\_LEVEL) => void | | +| [warn](./react-native-tracker.logger.warn.md) | (message: string, error?: unknown, ...extraParams: unknown\[\]) => void | | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.setloglevel.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.setloglevel.md new file mode 100644 index 000000000..b3148fafe --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.setloglevel.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [Logger](./react-native-tracker.logger.md) > [setLogLevel](./react-native-tracker.logger.setloglevel.md) + +## Logger.setLogLevel property + +Signature: + +```typescript +setLogLevel: (level: LOG_LEVEL) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.warn.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.warn.md new file mode 100644 index 000000000..75adb0319 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.logger.warn.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [Logger](./react-native-tracker.logger.md) > [warn](./react-native-tracker.logger.warn.md) + +## Logger.warn property + +Signature: + +```typescript +warn: (message: string, error?: unknown, ...extraParams: unknown[]) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.md new file mode 100644 index 000000000..387847779 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.md @@ -0,0 +1,83 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) + +## react-native-tracker package + +## Enumerations + +| Enumeration | Description | +| --- | --- | +| [LOG\_LEVEL](./react-native-tracker.log_level.md) | | + +## Functions + +| Function | Description | +| --- | --- | +| [newTracker(configuration)](./react-native-tracker.newtracker.md) | Creates a new tracker instance with the given configuration | + +## Interfaces + +| Interface | Description | +| --- | --- | +| [CoreConfiguration](./react-native-tracker.coreconfiguration.md) | The configuration object for the tracker core library | +| [CorePlugin](./react-native-tracker.coreplugin.md) | Interface which defines Core Plugins | +| [CorePluginConfiguration](./react-native-tracker.corepluginconfiguration.md) | The configuration of the plugin to add | +| [DeviceTimestamp](./react-native-tracker.devicetimestamp.md) | A representation of a Device Timestamp (dtm) | +| [Emitter](./react-native-tracker.emitter.md) | Emitter is responsible for sending events to the collector. It manages the event queue and sends events in batches depending on configuration. | +| [EmitterConfiguration](./react-native-tracker.emitterconfiguration.md) | | +| [EmitterConfigurationBase](./react-native-tracker.emitterconfigurationbase.md) | | +| [EventPayloadAndContext](./react-native-tracker.eventpayloadandcontext.md) | Interface for returning a built event (PayloadBuilder) and context (Array of SelfDescribingJson). | +| [EventStore](./react-native-tracker.eventstore.md) | EventStore allows storing and retrieving events before they are sent to the collector | +| [EventStoreConfiguration](./react-native-tracker.eventstoreconfiguration.md) | Configuration for the event store | +| [EventStoreIterator](./react-native-tracker.eventstoreiterator.md) | EventStoreIterator allows iterating over all events in the store. | +| [EventStorePayload](./react-native-tracker.eventstorepayload.md) | | +| [FormFocusOrChangeEvent](./react-native-tracker.formfocusorchangeevent.md) | Represents either a Form Focus or Form Change event When a user focuses on a form element or when a user makes a change to a form element. | +| [Logger](./react-native-tracker.logger.md) | | +| [PageViewEvent](./react-native-tracker.pageviewevent.md) | A Page View Event Represents a Page View, which is typically fired as soon as possible when a web page is loaded within the users browser. Often also fired on "virtual page views" within Single Page Applications (SPA). | +| [PayloadBuilder](./react-native-tracker.payloadbuilder.md) | Interface for mutable object encapsulating tracker payload | +| [RuleSet](./react-native-tracker.ruleset.md) | A ruleset has accept or reject properties that contain rules for matching Iglu schema URIs | +| [SessionConfiguration](./react-native-tracker.sessionconfiguration.md) | Configuration for session tracking | +| [StructuredEvent](./react-native-tracker.structuredevent.md) | A Structured Event A classic style of event tracking, allows for easier movement between analytics systems. A loosely typed event, creating a Self Describing event is preferred, but useful for interoperability. | +| [SubjectConfiguration](./react-native-tracker.subjectconfiguration.md) | Configuration of subject properties tracked with events | +| [TrackerConfiguration](./react-native-tracker.trackerconfiguration.md) | The configuration object for initialising the tracker | +| [TrackerCore](./react-native-tracker.trackercore.md) | Export interface containing all Core functions | +| [TrueTimestamp](./react-native-tracker.truetimestamp.md) | A representation of a True Timestamp (ttm) | + +## Variables + +| Variable | Description | +| --- | --- | +| [version](./react-native-tracker.version.md) | | + +## Type Aliases + +| Type Alias | Description | +| --- | --- | +| [ConditionalContextProvider](./react-native-tracker.conditionalcontextprovider.md) | Conditional context providers are two element arrays used to decide when to attach contexts, where: - the first element is some conditional criterion - the second element is any number of context primitives | +| [ContextFilter](./react-native-tracker.contextfilter.md) | A context filter is a user-supplied callback that is evaluated for each event to determine if the context associated with the filter should be attached to the event | +| [ContextGenerator](./react-native-tracker.contextgenerator.md) | A context generator is a user-supplied callback that is evaluated for each event to allow an additional context to be dynamically attached to the event | +| [ContextPrimitive](./react-native-tracker.contextprimitive.md) | A context primitive is either a self-describing JSON or a context generator | +| [DeepLinkReceivedProps](./react-native-tracker.deeplinkreceivedprops.md) | DeepLinkReceived event properties schema: iglu:com.snowplowanalytics.mobile/deep\_link\_received/jsonschema/1-0-0 | +| [EventBatch](./react-native-tracker.eventbatch.md) | A collection of event payloads which are sent to the collector. | +| [EventContext](./react-native-tracker.eventcontext.md) | EventContext type | +| [EventJson](./react-native-tracker.eventjson.md) | An array of tuples which represents the unprocessed JSON to be added to the Payload | +| [EventJsonWithKeys](./react-native-tracker.eventjsonwithkeys.md) | A tuple which represents the unprocessed JSON to be added to the Payload | +| [EventMethod](./react-native-tracker.eventmethod.md) | | +| [FilterProvider](./react-native-tracker.filterprovider.md) | A filter provider is a tuple that has two parts: a context filter and the context primitive(s) If the context filter evaluates to true, the tracker will attach the context primitive(s) | +| [JsonProcessor](./react-native-tracker.jsonprocessor.md) | A function which will processor the Json onto the injected PayloadBuilder | +| [ListItemViewProps](./react-native-tracker.listitemviewprops.md) | Event tracking the view of an item in a list. If screen engagement tracking is enabled, the list item view events will be aggregated into a screen_summary entity.Schema: iglu:com.snowplowanalytics.mobile/list_item_view/jsonschema/1-0-0 | +| [MessageNotificationAttachmentProps](./react-native-tracker.messagenotificationattachmentprops.md) | Attachment object that identify an attachment in the MessageNotification. | +| [MessageNotificationProps](./react-native-tracker.messagenotificationprops.md) | MessageNotification event properties schema: iglu:com.snowplowanalytics.mobile/message\_notification/jsonschema/1-0-0 | +| [Payload](./react-native-tracker.payload.md) | Type for a Payload dictionary | +| [ReactNativeTracker](./react-native-tracker.reactnativetracker.md) | The ReactNativeTracker type | +| [RequestFailure](./react-native-tracker.requestfailure.md) | The data that will be available to the onRequestFailure callback | +| [RuleSetProvider](./react-native-tracker.rulesetprovider.md) | A ruleset provider is aa tuple that has two parts: a ruleset and the context primitive(s) If the ruleset allows the current event schema URI, the tracker will attach the context primitive(s) | +| [ScreenSize](./react-native-tracker.screensize.md) | Screen size in pixels | +| [ScreenViewProps](./react-native-tracker.screenviewprops.md) | ScreenView event properties schema: iglu:com.snowplowanalytics.mobile/screen\_view/jsonschema/1-0-0 | +| [ScrollChangedProps](./react-native-tracker.scrollchangedprops.md) | Event tracked when a scroll view's scroll position changes. If screen engagement tracking is enabled, the scroll changed events will be aggregated into a screen_summary entity.Schema: iglu:com.snowplowanalytics.mobile/scroll_changed/jsonschema/1-0-0 | +| [SelfDescribingJson](./react-native-tracker.selfdescribingjson.md) | Export interface for any Self-Describing JSON such as context or Self Describing events | +| [Timestamp](./react-native-tracker.timestamp.md) | Algebraic datatype representing possible timestamp type choice | +| [TimingProps](./react-native-tracker.timingprops.md) | Timing event properties | +| [Trigger](./react-native-tracker.trigger.md) | Trigger for MessageNotification event | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.messagenotificationattachmentprops.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.messagenotificationattachmentprops.md new file mode 100644 index 000000000..1327cc346 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.messagenotificationattachmentprops.md @@ -0,0 +1,17 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [MessageNotificationAttachmentProps](./react-native-tracker.messagenotificationattachmentprops.md) + +## MessageNotificationAttachmentProps type + +Attachment object that identify an attachment in the MessageNotification. + +Signature: + +```typescript +type MessageNotificationAttachmentProps = { + identifier: string; + type: string; + url: string; +}; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.messagenotificationprops.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.messagenotificationprops.md new file mode 100644 index 000000000..d931898c4 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.messagenotificationprops.md @@ -0,0 +1,39 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [MessageNotificationProps](./react-native-tracker.messagenotificationprops.md) + +## MessageNotificationProps type + +MessageNotification event properties schema: iglu:com.snowplowanalytics.mobile/message\_notification/jsonschema/1-0-0 + +Signature: + +```typescript +type MessageNotificationProps = { + action?: string; + /* + * Attachments added to the notification (they can be part of the data object). + */ + attachments?: MessageNotificationAttachmentProps[]; + body: string; + /* + * Variable string values to be used in place of the format specifiers in bodyLocArgs to use to localize the body text to the user's current localization. + */ + bodyLocArgs?: string[]; + bodyLocKey?: string; + category?: string; + contentAvailable?: boolean; + group?: string; + icon?: string; + notificationCount?: number; + notificationTimestamp?: string; + sound?: string; + subtitle?: string; + tag?: string; + threadIdentifier?: string; + title: string; + titleLocArgs?: string[]; + titleLocKey?: string; + trigger: Trigger; +}; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.newtracker.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.newtracker.md new file mode 100644 index 000000000..b4d0870c8 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.newtracker.md @@ -0,0 +1,26 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [newTracker](./react-native-tracker.newtracker.md) + +## newTracker() function + +Creates a new tracker instance with the given configuration + +Signature: + +```typescript +declare function newTracker(configuration: TrackerConfiguration & EmitterConfiguration & SessionConfiguration & SubjectConfiguration & EventStoreConfiguration): Promise; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| configuration | TrackerConfiguration & EmitterConfiguration & SessionConfiguration & SubjectConfiguration & EventStoreConfiguration | Configuration for the tracker | + +Returns: + +Promise<ReactNativeTracker> + +Tracker instance + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.pageviewevent.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.pageviewevent.md new file mode 100644 index 000000000..073940f35 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.pageviewevent.md @@ -0,0 +1,22 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [PageViewEvent](./react-native-tracker.pageviewevent.md) + +## PageViewEvent interface + +A Page View Event Represents a Page View, which is typically fired as soon as possible when a web page is loaded within the users browser. Often also fired on "virtual page views" within Single Page Applications (SPA). + +Signature: + +```typescript +interface PageViewEvent +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [pageTitle?](./react-native-tracker.pageviewevent.pagetitle.md) | string \| null | (Optional) The current page title in the users browser | +| [pageUrl?](./react-native-tracker.pageviewevent.pageurl.md) | string \| null | (Optional) The current URL visible in the users browser | +| [referrer?](./react-native-tracker.pageviewevent.referrer.md) | string \| null | (Optional) The URL of the referring page | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.pageviewevent.pagetitle.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.pageviewevent.pagetitle.md new file mode 100644 index 000000000..72774a6dd --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.pageviewevent.pagetitle.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [PageViewEvent](./react-native-tracker.pageviewevent.md) > [pageTitle](./react-native-tracker.pageviewevent.pagetitle.md) + +## PageViewEvent.pageTitle property + +The current page title in the users browser + +Signature: + +```typescript +pageTitle?: string | null; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.pageviewevent.pageurl.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.pageviewevent.pageurl.md new file mode 100644 index 000000000..5b1a31247 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.pageviewevent.pageurl.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [PageViewEvent](./react-native-tracker.pageviewevent.md) > [pageUrl](./react-native-tracker.pageviewevent.pageurl.md) + +## PageViewEvent.pageUrl property + +The current URL visible in the users browser + +Signature: + +```typescript +pageUrl?: string | null; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.pageviewevent.referrer.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.pageviewevent.referrer.md new file mode 100644 index 000000000..5b3e47e6b --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.pageviewevent.referrer.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [PageViewEvent](./react-native-tracker.pageviewevent.md) > [referrer](./react-native-tracker.pageviewevent.referrer.md) + +## PageViewEvent.referrer property + +The URL of the referring page + +Signature: + +```typescript +referrer?: string | null; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payload.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payload.md new file mode 100644 index 000000000..6c69b7466 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payload.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [Payload](./react-native-tracker.payload.md) + +## Payload type + +Type for a Payload dictionary + +Signature: + +```typescript +type Payload = Record; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.add.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.add.md new file mode 100644 index 000000000..57a6658be --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.add.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [PayloadBuilder](./react-native-tracker.payloadbuilder.md) > [add](./react-native-tracker.payloadbuilder.add.md) + +## PayloadBuilder.add property + +Adds an entry to the Payload + +Signature: + +```typescript +add: (key: string, value: unknown) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.addcontextentity.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.addcontextentity.md new file mode 100644 index 000000000..30d14ad85 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.addcontextentity.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [PayloadBuilder](./react-native-tracker.payloadbuilder.md) > [addContextEntity](./react-native-tracker.payloadbuilder.addcontextentity.md) + +## PayloadBuilder.addContextEntity property + +Caches a context entity to be added to payload on build + +Signature: + +```typescript +addContextEntity: (entity: SelfDescribingJson) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.adddict.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.adddict.md new file mode 100644 index 000000000..6a1940706 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.adddict.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [PayloadBuilder](./react-native-tracker.payloadbuilder.md) > [addDict](./react-native-tracker.payloadbuilder.adddict.md) + +## PayloadBuilder.addDict property + +Merges a payload into the existing payload + +Signature: + +```typescript +addDict: (dict: Payload) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.addjson.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.addjson.md new file mode 100644 index 000000000..d5e5f768b --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.addjson.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [PayloadBuilder](./react-native-tracker.payloadbuilder.md) > [addJson](./react-native-tracker.payloadbuilder.addjson.md) + +## PayloadBuilder.addJson property + +Caches a JSON object to be added to payload on build + +Signature: + +```typescript +addJson: (keyIfEncoded: string, keyIfNotEncoded: string, json: Record) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.build.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.build.md new file mode 100644 index 000000000..24586c733 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.build.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [PayloadBuilder](./react-native-tracker.payloadbuilder.md) > [build](./react-native-tracker.payloadbuilder.build.md) + +## PayloadBuilder.build property + +Builds and returns the Payload + +Signature: + +```typescript +build: () => Payload; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.getjson.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.getjson.md new file mode 100644 index 000000000..de83e1a52 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.getjson.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [PayloadBuilder](./react-native-tracker.payloadbuilder.md) > [getJson](./react-native-tracker.payloadbuilder.getjson.md) + +## PayloadBuilder.getJson property + +Gets all JSON objects added to payload + +Signature: + +```typescript +getJson: () => EventJson; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.getpayload.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.getpayload.md new file mode 100644 index 000000000..9b3c94d86 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.getpayload.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [PayloadBuilder](./react-native-tracker.payloadbuilder.md) > [getPayload](./react-native-tracker.payloadbuilder.getpayload.md) + +## PayloadBuilder.getPayload property + +Gets the current payload, before cached JSON is processed + +Signature: + +```typescript +getPayload: () => Payload; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.md new file mode 100644 index 000000000..61cb081ee --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.md @@ -0,0 +1,27 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [PayloadBuilder](./react-native-tracker.payloadbuilder.md) + +## PayloadBuilder interface + +Interface for mutable object encapsulating tracker payload + +Signature: + +```typescript +interface PayloadBuilder +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [add](./react-native-tracker.payloadbuilder.add.md) | (key: string, value: unknown) => void | Adds an entry to the Payload | +| [addContextEntity](./react-native-tracker.payloadbuilder.addcontextentity.md) | (entity: SelfDescribingJson) => void | Caches a context entity to be added to payload on build | +| [addDict](./react-native-tracker.payloadbuilder.adddict.md) | (dict: Payload) => void | Merges a payload into the existing payload | +| [addJson](./react-native-tracker.payloadbuilder.addjson.md) | (keyIfEncoded: string, keyIfNotEncoded: string, json: Record<string, unknown>) => void | Caches a JSON object to be added to payload on build | +| [build](./react-native-tracker.payloadbuilder.build.md) | () => Payload | Builds and returns the Payload | +| [getJson](./react-native-tracker.payloadbuilder.getjson.md) | () => EventJson | Gets all JSON objects added to payload | +| [getPayload](./react-native-tracker.payloadbuilder.getpayload.md) | () => Payload | Gets the current payload, before cached JSON is processed | +| [withJsonProcessor](./react-native-tracker.payloadbuilder.withjsonprocessor.md) | (jsonProcessor: JsonProcessor) => void | Adds a function which will be executed when building the payload to process the JSON which has been added to this payload | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.withjsonprocessor.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.withjsonprocessor.md new file mode 100644 index 000000000..173d16756 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.payloadbuilder.withjsonprocessor.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [PayloadBuilder](./react-native-tracker.payloadbuilder.md) > [withJsonProcessor](./react-native-tracker.payloadbuilder.withjsonprocessor.md) + +## PayloadBuilder.withJsonProcessor property + +Adds a function which will be executed when building the payload to process the JSON which has been added to this payload + +Signature: + +```typescript +withJsonProcessor: (jsonProcessor: JsonProcessor) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.reactnativetracker.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.reactnativetracker.md new file mode 100644 index 000000000..082b4b53f --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.reactnativetracker.md @@ -0,0 +1,69 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [ReactNativeTracker](./react-native-tracker.reactnativetracker.md) + +## ReactNativeTracker type + +The ReactNativeTracker type + +Signature: + +```typescript +type ReactNativeTracker = { + readonly trackSelfDescribingEvent: = Record>(argmap: SelfDescribingJson, contexts?: EventContext[]) => void; + // TODO: + // /** + // * Tracks a screen-view event + // * + // * @param argmap - The screen-view event's properties + // * @param contexts - The array of event contexts + // */ + // readonly trackScreenViewEvent: (argmap: ScreenViewProps, contexts?: EventContext[]) => string | undefined; + // TODO: + // /** + // * Tracks a scroll changed event + // * + // * @param argmap - The scroll changed event's properties + // * @param contexts - The array of event contexts + // */ + // readonly trackScrollChangedEvent: (argmap: ScrollChangedProps, contexts?: EventContext[]) => string | undefined; + // TODO: + // /** + // * Tracks a list item view event + // * + // * @param argmap - The list item view event's properties + // * @param contexts - The array of event contexts + // */ + // readonly trackListItemViewEvent: (argmap: ListItemViewProps, contexts?: EventContext[]) => string | undefined; + readonly trackStructuredEvent: (argmap: StructuredEvent, contexts?: EventContext[]) => void; + readonly trackPageViewEvent: (argmap: PageViewEvent, contexts?: EventContext[]) => void; + readonly trackTimingEvent: (argmap: TimingProps, contexts?: EventContext[]) => void; + // TODO: + // /** + // * Tracks a deep link received event + // * + // * @param argmap - The deep link received event properties + // * @param contexts - The array of event contexts + // */ + // readonly trackDeepLinkReceivedEvent: (argmap: DeepLinkReceivedProps, contexts?: EventContext[]) => void; + readonly trackMessageNotificationEvent: (argmap: MessageNotificationProps, contexts?: EventContext[]) => void; + addGlobalContexts(contexts: Array | Record): void; + clearGlobalContexts(): void; + removeGlobalContexts(contexts: Array): void; + addPlugin(configuration: CorePluginConfiguration): void; + flush: () => Promise; + readonly setAppId: (appId: string) => void; + readonly setPlatform: (value: string) => void; + readonly setUserId: (newUid: string) => void; + readonly setNetworkUserId: (newNuid: string | undefined) => void; + readonly setDomainUserId: (newDuid: string | undefined) => void; + readonly setIpAddress: (newIp: string) => void; + readonly setUseragent: (newUagent: string) => void; + readonly setTimezone: (newTz: string) => void; + readonly setLanguage: (newLang: string) => void; + readonly setScreenResolution: (newRes: ScreenSize) => void; + readonly setScreenViewport: (newView: ScreenSize) => void; + readonly setColorDepth: (newLang: number) => void; + readonly setSubjectData: (config: SubjectConfiguration) => void; +}; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.requestfailure.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.requestfailure.md new file mode 100644 index 000000000..301c823f9 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.requestfailure.md @@ -0,0 +1,18 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [RequestFailure](./react-native-tracker.requestfailure.md) + +## RequestFailure type + +The data that will be available to the `onRequestFailure` callback + +Signature: + +```typescript +type RequestFailure = { + events: EventBatch; + status?: number; + message?: string; + willRetry: boolean; +}; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.ruleset.accept.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.ruleset.accept.md new file mode 100644 index 000000000..1ae083517 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.ruleset.accept.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [RuleSet](./react-native-tracker.ruleset.md) > [accept](./react-native-tracker.ruleset.accept.md) + +## RuleSet.accept property + +Signature: + +```typescript +accept?: Array | string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.ruleset.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.ruleset.md new file mode 100644 index 000000000..f46804df6 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.ruleset.md @@ -0,0 +1,21 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [RuleSet](./react-native-tracker.ruleset.md) + +## RuleSet interface + +A ruleset has accept or reject properties that contain rules for matching Iglu schema URIs + +Signature: + +```typescript +interface RuleSet +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [accept?](./react-native-tracker.ruleset.accept.md) | Array<string> \| string | (Optional) | +| [reject?](./react-native-tracker.ruleset.reject.md) | Array<string> \| string | (Optional) | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.ruleset.reject.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.ruleset.reject.md new file mode 100644 index 000000000..150dd8299 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.ruleset.reject.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [RuleSet](./react-native-tracker.ruleset.md) > [reject](./react-native-tracker.ruleset.reject.md) + +## RuleSet.reject property + +Signature: + +```typescript +reject?: Array | string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.rulesetprovider.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.rulesetprovider.md new file mode 100644 index 000000000..6e28bacfa --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.rulesetprovider.md @@ -0,0 +1,16 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [RuleSetProvider](./react-native-tracker.rulesetprovider.md) + +## RuleSetProvider type + +A ruleset provider is aa tuple that has two parts: a ruleset and the context primitive(s) If the ruleset allows the current event schema URI, the tracker will attach the context primitive(s) + +Signature: + +```typescript +type RuleSetProvider = [ + RuleSet, + Array | ContextPrimitive +]; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.screensize.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.screensize.md new file mode 100644 index 000000000..b4c862051 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.screensize.md @@ -0,0 +1,16 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [ScreenSize](./react-native-tracker.screensize.md) + +## ScreenSize type + +Screen size in pixels + +Signature: + +```typescript +type ScreenSize = [ + number, + number +]; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.screenviewprops.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.screenviewprops.md new file mode 100644 index 000000000..2d9848d7d --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.screenviewprops.md @@ -0,0 +1,21 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [ScreenViewProps](./react-native-tracker.screenviewprops.md) + +## ScreenViewProps type + +ScreenView event properties schema: iglu:com.snowplowanalytics.mobile/screen\_view/jsonschema/1-0-0 + +Signature: + +```typescript +type ScreenViewProps = { + name: string; + id?: string; + type?: string; + previousName?: string; + previousId?: string; + previousType?: string; + transitionType?: string; +}; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.scrollchangedprops.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.scrollchangedprops.md new file mode 100644 index 000000000..5f84665f0 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.scrollchangedprops.md @@ -0,0 +1,22 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [ScrollChangedProps](./react-native-tracker.scrollchangedprops.md) + +## ScrollChangedProps type + +Event tracked when a scroll view's scroll position changes. If screen engagement tracking is enabled, the scroll changed events will be aggregated into a `screen_summary` entity. + +Schema: `iglu:com.snowplowanalytics.mobile/scroll_changed/jsonschema/1-0-0` + +Signature: + +```typescript +type ScrollChangedProps = { + yOffset?: number; + xOffset?: number; + viewHeight?: number; + viewWidth?: number; + contentHeight?: number; + contentWidth?: number; +}; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.selfdescribingjson.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.selfdescribingjson.md new file mode 100644 index 000000000..0a32034ac --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.selfdescribingjson.md @@ -0,0 +1,16 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [SelfDescribingJson](./react-native-tracker.selfdescribingjson.md) + +## SelfDescribingJson type + +Export interface for any Self-Describing JSON such as context or Self Describing events + +Signature: + +```typescript +type SelfDescribingJson> = { + schema: string; + data: T extends any[] ? never : T extends {} ? T : never; +}; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.sessionconfiguration.backgroundsessiontimeout.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.sessionconfiguration.backgroundsessiontimeout.md new file mode 100644 index 000000000..85a77d445 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.sessionconfiguration.backgroundsessiontimeout.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [SessionConfiguration](./react-native-tracker.sessionconfiguration.md) > [backgroundSessionTimeout](./react-native-tracker.sessionconfiguration.backgroundsessiontimeout.md) + +## SessionConfiguration.backgroundSessionTimeout property + +The amount of time in seconds before the session id is updated while the app is in the background + +Signature: + +```typescript +backgroundSessionTimeout?: number; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.sessionconfiguration.foregroundsessiontimeout.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.sessionconfiguration.foregroundsessiontimeout.md new file mode 100644 index 000000000..1e049a9eb --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.sessionconfiguration.foregroundsessiontimeout.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [SessionConfiguration](./react-native-tracker.sessionconfiguration.md) > [foregroundSessionTimeout](./react-native-tracker.sessionconfiguration.foregroundsessiontimeout.md) + +## SessionConfiguration.foregroundSessionTimeout property + +The amount of time in seconds before the session id is updated while the app is in the foreground + +Signature: + +```typescript +foregroundSessionTimeout?: number; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.sessionconfiguration.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.sessionconfiguration.md new file mode 100644 index 000000000..ab09c84a7 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.sessionconfiguration.md @@ -0,0 +1,21 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [SessionConfiguration](./react-native-tracker.sessionconfiguration.md) + +## SessionConfiguration interface + +Configuration for session tracking + +Signature: + +```typescript +interface SessionConfiguration +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [backgroundSessionTimeout?](./react-native-tracker.sessionconfiguration.backgroundsessiontimeout.md) | number | (Optional) The amount of time in seconds before the session id is updated while the app is in the background | +| [foregroundSessionTimeout?](./react-native-tracker.sessionconfiguration.foregroundsessiontimeout.md) | number | (Optional) The amount of time in seconds before the session id is updated while the app is in the foreground | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.action.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.action.md new file mode 100644 index 000000000..a1e9ec061 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.action.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [StructuredEvent](./react-native-tracker.structuredevent.md) > [action](./react-native-tracker.structuredevent.action.md) + +## StructuredEvent.action property + +Signature: + +```typescript +action: string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.category.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.category.md new file mode 100644 index 000000000..0e1a2cbb6 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.category.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [StructuredEvent](./react-native-tracker.structuredevent.md) > [category](./react-native-tracker.structuredevent.category.md) + +## StructuredEvent.category property + +Signature: + +```typescript +category: string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.label.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.label.md new file mode 100644 index 000000000..2d8731a8d --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.label.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [StructuredEvent](./react-native-tracker.structuredevent.md) > [label](./react-native-tracker.structuredevent.label.md) + +## StructuredEvent.label property + +Signature: + +```typescript +label?: string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.md new file mode 100644 index 000000000..0ce7bdde8 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.md @@ -0,0 +1,24 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [StructuredEvent](./react-native-tracker.structuredevent.md) + +## StructuredEvent interface + +A Structured Event A classic style of event tracking, allows for easier movement between analytics systems. A loosely typed event, creating a Self Describing event is preferred, but useful for interoperability. + +Signature: + +```typescript +interface StructuredEvent +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [action](./react-native-tracker.structuredevent.action.md) | string | | +| [category](./react-native-tracker.structuredevent.category.md) | string | | +| [label?](./react-native-tracker.structuredevent.label.md) | string | (Optional) | +| [property?](./react-native-tracker.structuredevent.property.md) | string | (Optional) | +| [value?](./react-native-tracker.structuredevent.value.md) | number | (Optional) | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.property.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.property.md new file mode 100644 index 000000000..1015c9a8e --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.property.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [StructuredEvent](./react-native-tracker.structuredevent.md) > [property](./react-native-tracker.structuredevent.property.md) + +## StructuredEvent.property property + +Signature: + +```typescript +property?: string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.value.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.value.md new file mode 100644 index 000000000..e7673c4ca --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.structuredevent.value.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [StructuredEvent](./react-native-tracker.structuredevent.md) > [value](./react-native-tracker.structuredevent.value.md) + +## StructuredEvent.value property + +Signature: + +```typescript +value?: number; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.colordepth.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.colordepth.md new file mode 100644 index 000000000..33fc96df4 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.colordepth.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [SubjectConfiguration](./react-native-tracker.subjectconfiguration.md) > [colorDepth](./react-native-tracker.subjectconfiguration.colordepth.md) + +## SubjectConfiguration.colorDepth property + +Color depth (integer) + +Signature: + +```typescript +colorDepth?: number; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.domainuserid.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.domainuserid.md new file mode 100644 index 000000000..d841a2cd3 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.domainuserid.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [SubjectConfiguration](./react-native-tracker.subjectconfiguration.md) > [domainUserId](./react-native-tracker.subjectconfiguration.domainuserid.md) + +## SubjectConfiguration.domainUserId property + +The domain user id (DUID) is a generated identifier that is stored in a first party cookie on Web. The React Native tracker does not assign it automatically. + +Signature: + +```typescript +domainUserId?: string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.ipaddress.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.ipaddress.md new file mode 100644 index 000000000..ce09cc494 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.ipaddress.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [SubjectConfiguration](./react-native-tracker.subjectconfiguration.md) > [ipAddress](./react-native-tracker.subjectconfiguration.ipaddress.md) + +## SubjectConfiguration.ipAddress property + +Override the IP address of the device + +Signature: + +```typescript +ipAddress?: string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.language.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.language.md new file mode 100644 index 000000000..101d505de --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.language.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [SubjectConfiguration](./react-native-tracker.subjectconfiguration.md) > [language](./react-native-tracker.subjectconfiguration.language.md) + +## SubjectConfiguration.language property + +The language set in the device + +Signature: + +```typescript +language?: string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.md new file mode 100644 index 000000000..35e990f6a --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.md @@ -0,0 +1,29 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [SubjectConfiguration](./react-native-tracker.subjectconfiguration.md) + +## SubjectConfiguration interface + +Configuration of subject properties tracked with events + +Signature: + +```typescript +interface SubjectConfiguration +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [colorDepth?](./react-native-tracker.subjectconfiguration.colordepth.md) | number | (Optional) Color depth (integer) | +| [domainUserId?](./react-native-tracker.subjectconfiguration.domainuserid.md) | string | (Optional) The domain user id (DUID) is a generated identifier that is stored in a first party cookie on Web. The React Native tracker does not assign it automatically. | +| [ipAddress?](./react-native-tracker.subjectconfiguration.ipaddress.md) | string | (Optional) Override the IP address of the device | +| [language?](./react-native-tracker.subjectconfiguration.language.md) | string | (Optional) The language set in the device | +| [networkUserId?](./react-native-tracker.subjectconfiguration.networkuserid.md) | string | (Optional) Override the network user id (UUIDv4) that is assigned by the collector and stored in cookies | +| [screenResolution?](./react-native-tracker.subjectconfiguration.screenresolution.md) | ScreenSize | (Optional) The screen resolution | +| [screenViewport?](./react-native-tracker.subjectconfiguration.screenviewport.md) | ScreenSize | (Optional) The screen viewport size | +| [timezone?](./react-native-tracker.subjectconfiguration.timezone.md) | string | (Optional) The timezone label | +| [useragent?](./react-native-tracker.subjectconfiguration.useragent.md) | string | (Optional) The custom user-agent. It overrides the user-agent used by default. | +| [userId?](./react-native-tracker.subjectconfiguration.userid.md) | string | (Optional) Business-defined user ID for this user | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.networkuserid.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.networkuserid.md new file mode 100644 index 000000000..4c42b01e1 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.networkuserid.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [SubjectConfiguration](./react-native-tracker.subjectconfiguration.md) > [networkUserId](./react-native-tracker.subjectconfiguration.networkuserid.md) + +## SubjectConfiguration.networkUserId property + +Override the network user id (UUIDv4) that is assigned by the collector and stored in cookies + +Signature: + +```typescript +networkUserId?: string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.screenresolution.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.screenresolution.md new file mode 100644 index 000000000..f1b73aa83 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.screenresolution.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [SubjectConfiguration](./react-native-tracker.subjectconfiguration.md) > [screenResolution](./react-native-tracker.subjectconfiguration.screenresolution.md) + +## SubjectConfiguration.screenResolution property + +The screen resolution + +Signature: + +```typescript +screenResolution?: ScreenSize; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.screenviewport.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.screenviewport.md new file mode 100644 index 000000000..c11f83539 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.screenviewport.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [SubjectConfiguration](./react-native-tracker.subjectconfiguration.md) > [screenViewport](./react-native-tracker.subjectconfiguration.screenviewport.md) + +## SubjectConfiguration.screenViewport property + +The screen viewport size + +Signature: + +```typescript +screenViewport?: ScreenSize; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.timezone.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.timezone.md new file mode 100644 index 000000000..1ab2ab548 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.timezone.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [SubjectConfiguration](./react-native-tracker.subjectconfiguration.md) > [timezone](./react-native-tracker.subjectconfiguration.timezone.md) + +## SubjectConfiguration.timezone property + +The timezone label + +Signature: + +```typescript +timezone?: string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.useragent.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.useragent.md new file mode 100644 index 000000000..be1a8767d --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.useragent.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [SubjectConfiguration](./react-native-tracker.subjectconfiguration.md) > [useragent](./react-native-tracker.subjectconfiguration.useragent.md) + +## SubjectConfiguration.useragent property + +The custom user-agent. It overrides the user-agent used by default. + +Signature: + +```typescript +useragent?: string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.userid.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.userid.md new file mode 100644 index 000000000..3a70488d7 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.userid.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [SubjectConfiguration](./react-native-tracker.subjectconfiguration.md) > [userId](./react-native-tracker.subjectconfiguration.userid.md) + +## SubjectConfiguration.userId property + +Business-defined user ID for this user + +Signature: + +```typescript +userId?: string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.timestamp.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.timestamp.md new file mode 100644 index 000000000..06f816dae --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.timestamp.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [Timestamp](./react-native-tracker.timestamp.md) + +## Timestamp type + +Algebraic datatype representing possible timestamp type choice + +Signature: + +```typescript +type Timestamp = TrueTimestamp | DeviceTimestamp | number; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.timingprops.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.timingprops.md new file mode 100644 index 000000000..ba74944ba --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.timingprops.md @@ -0,0 +1,18 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TimingProps](./react-native-tracker.timingprops.md) + +## TimingProps type + +Timing event properties + +Signature: + +```typescript +type TimingProps = { + category: string; + variable: string; + timing: number; + label?: string; +}; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.appid.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.appid.md new file mode 100644 index 000000000..13447907b --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.appid.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerConfiguration](./react-native-tracker.trackerconfiguration.md) > [appId](./react-native-tracker.trackerconfiguration.appid.md) + +## TrackerConfiguration.appId property + +The application ID + +Signature: + +```typescript +appId?: string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.encodebase64.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.encodebase64.md new file mode 100644 index 000000000..56eeacaa5 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.encodebase64.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerConfiguration](./react-native-tracker.trackerconfiguration.md) > [encodeBase64](./react-native-tracker.trackerconfiguration.encodebase64.md) + +## TrackerConfiguration.encodeBase64 property + +Whether unstructured events and custom contexts should be base64 encoded. + +Signature: + +```typescript +encodeBase64?: boolean; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.md new file mode 100644 index 000000000..e9cfae964 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.md @@ -0,0 +1,22 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerConfiguration](./react-native-tracker.trackerconfiguration.md) + +## TrackerConfiguration interface + +The configuration object for initialising the tracker + +Signature: + +```typescript +interface TrackerConfiguration +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [appId?](./react-native-tracker.trackerconfiguration.appid.md) | string | (Optional) The application ID | +| [encodeBase64?](./react-native-tracker.trackerconfiguration.encodebase64.md) | boolean | (Optional) Whether unstructured events and custom contexts should be base64 encoded. | +| [namespace](./react-native-tracker.trackerconfiguration.namespace.md) | string | The namespace of the tracker | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.namespace.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.namespace.md new file mode 100644 index 000000000..8c84330a8 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.namespace.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerConfiguration](./react-native-tracker.trackerconfiguration.md) > [namespace](./react-native-tracker.trackerconfiguration.namespace.md) + +## TrackerConfiguration.namespace property + +The namespace of the tracker + +Signature: + +```typescript +namespace: string; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.addglobalcontexts.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.addglobalcontexts.md new file mode 100644 index 000000000..4f5ff425e --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.addglobalcontexts.md @@ -0,0 +1,24 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [addGlobalContexts](./react-native-tracker.trackercore.addglobalcontexts.md) + +## TrackerCore.addGlobalContexts() method + +Adds contexts globally, contexts added here will be attached to all applicable events + +Signature: + +```typescript +addGlobalContexts(contexts: Array | Record): void; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| contexts | Array<ConditionalContextProvider \| ContextPrimitive> \| Record<string, ConditionalContextProvider \| ContextPrimitive> | An array containing either contexts or a conditional contexts | + +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.addpayloaddict.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.addpayloaddict.md new file mode 100644 index 000000000..f9ad49e94 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.addpayloaddict.md @@ -0,0 +1,24 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [addPayloadDict](./react-native-tracker.trackercore.addpayloaddict.md) + +## TrackerCore.addPayloadDict() method + +Merges a dictionary into payloadPairs + +Signature: + +```typescript +addPayloadDict(dict: Payload): void; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| dict | Payload | Adds a new payload dictionary to the existing one | + +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.addpayloadpair.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.addpayloadpair.md new file mode 100644 index 000000000..b59b8b165 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.addpayloadpair.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [addPayloadPair](./react-native-tracker.trackercore.addpayloadpair.md) + +## TrackerCore.addPayloadPair property + +Set a persistent key-value pair to be added to every payload + +Signature: + +```typescript +addPayloadPair: (key: string, value: unknown) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.addplugin.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.addplugin.md new file mode 100644 index 000000000..3dec45051 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.addplugin.md @@ -0,0 +1,24 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [addPlugin](./react-native-tracker.trackercore.addplugin.md) + +## TrackerCore.addPlugin() method + +Add a plugin into the plugin collection after Core has already been initialised + +Signature: + +```typescript +addPlugin(configuration: CorePluginConfiguration): void; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| configuration | CorePluginConfiguration | The plugin to add | + +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.clearglobalcontexts.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.clearglobalcontexts.md new file mode 100644 index 000000000..cbcd1a7d6 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.clearglobalcontexts.md @@ -0,0 +1,17 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [clearGlobalContexts](./react-native-tracker.trackercore.clearglobalcontexts.md) + +## TrackerCore.clearGlobalContexts() method + +Removes all global contexts + +Signature: + +```typescript +clearGlobalContexts(): void; +``` +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.getbase64encoding.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.getbase64encoding.md new file mode 100644 index 000000000..649c6d1cc --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.getbase64encoding.md @@ -0,0 +1,17 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [getBase64Encoding](./react-native-tracker.trackercore.getbase64encoding.md) + +## TrackerCore.getBase64Encoding() method + +Get current base64 encoding state + +Signature: + +```typescript +getBase64Encoding(): boolean; +``` +Returns: + +boolean + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.md new file mode 100644 index 000000000..5ae8f884a --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.md @@ -0,0 +1,46 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) + +## TrackerCore interface + +Export interface containing all Core functions + +Signature: + +```typescript +interface TrackerCore +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [addPayloadPair](./react-native-tracker.trackercore.addpayloadpair.md) | (key: string, value: unknown) => void | Set a persistent key-value pair to be added to every payload | +| [track](./react-native-tracker.trackercore.track.md) | (pb: PayloadBuilder, context?: Array<SelfDescribingJson> \| null, timestamp?: Timestamp \| null) => Payload \| undefined | Call with a payload from a buildX function Adds context and payloadPairs name-value pairs to the payload Applies the callback to the built payload | + +## Methods + +| Method | Description | +| --- | --- | +| [addGlobalContexts(contexts)](./react-native-tracker.trackercore.addglobalcontexts.md) | Adds contexts globally, contexts added here will be attached to all applicable events | +| [addPayloadDict(dict)](./react-native-tracker.trackercore.addpayloaddict.md) | Merges a dictionary into payloadPairs | +| [addPlugin(configuration)](./react-native-tracker.trackercore.addplugin.md) | Add a plugin into the plugin collection after Core has already been initialised | +| [clearGlobalContexts()](./react-native-tracker.trackercore.clearglobalcontexts.md) | Removes all global contexts | +| [getBase64Encoding()](./react-native-tracker.trackercore.getbase64encoding.md) | Get current base64 encoding state | +| [removeGlobalContexts(contexts)](./react-native-tracker.trackercore.removeglobalcontexts.md) | Removes previously added global context, performs a deep comparison of the contexts or conditional contexts | +| [resetPayloadPairs(dict)](./react-native-tracker.trackercore.resetpayloadpairs.md) | Replace payloadPairs with a new dictionary | +| [setAppId(appId)](./react-native-tracker.trackercore.setappid.md) | Set the application ID | +| [setBase64Encoding(encode)](./react-native-tracker.trackercore.setbase64encoding.md) | Turn base 64 encoding on or off | +| [setColorDepth(depth)](./react-native-tracker.trackercore.setcolordepth.md) | Set the color depth | +| [setIpAddress(ip)](./react-native-tracker.trackercore.setipaddress.md) | Set the IP address | +| [setLang(lang)](./react-native-tracker.trackercore.setlang.md) | Set the language | +| [setPlatform(value)](./react-native-tracker.trackercore.setplatform.md) | Set the platform | +| [setScreenResolution(width, height)](./react-native-tracker.trackercore.setscreenresolution.md) | Set the screen resolution | +| [setTimezone(timezone)](./react-native-tracker.trackercore.settimezone.md) | Set the timezone | +| [setTrackerNamespace(name)](./react-native-tracker.trackercore.settrackernamespace.md) | Set the tracker namespace | +| [setTrackerVersion(version)](./react-native-tracker.trackercore.settrackerversion.md) | Set the tracker version | +| [setUseragent(useragent)](./react-native-tracker.trackercore.setuseragent.md) | Set the Useragent | +| [setUserId(userId)](./react-native-tracker.trackercore.setuserid.md) | Set the user ID | +| [setViewport(width, height)](./react-native-tracker.trackercore.setviewport.md) | Set the viewport dimensions | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.removeglobalcontexts.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.removeglobalcontexts.md new file mode 100644 index 000000000..312545756 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.removeglobalcontexts.md @@ -0,0 +1,24 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [removeGlobalContexts](./react-native-tracker.trackercore.removeglobalcontexts.md) + +## TrackerCore.removeGlobalContexts() method + +Removes previously added global context, performs a deep comparison of the contexts or conditional contexts + +Signature: + +```typescript +removeGlobalContexts(contexts: Array): void; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| contexts | Array<ConditionalContextProvider \| ContextPrimitive \| string> | An array containing either contexts or a conditional contexts | + +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.resetpayloadpairs.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.resetpayloadpairs.md new file mode 100644 index 000000000..402ee5bbe --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.resetpayloadpairs.md @@ -0,0 +1,24 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [resetPayloadPairs](./react-native-tracker.trackercore.resetpayloadpairs.md) + +## TrackerCore.resetPayloadPairs() method + +Replace payloadPairs with a new dictionary + +Signature: + +```typescript +resetPayloadPairs(dict: Payload): void; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| dict | Payload | Resets all current payload pairs with a new dictionary of pairs | + +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setappid.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setappid.md new file mode 100644 index 000000000..921c5a0b2 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setappid.md @@ -0,0 +1,24 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [setAppId](./react-native-tracker.trackercore.setappid.md) + +## TrackerCore.setAppId() method + +Set the application ID + +Signature: + +```typescript +setAppId(appId: string): void; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| appId | string | An application ID which identifies the current application | + +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setbase64encoding.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setbase64encoding.md new file mode 100644 index 000000000..3f971b11a --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setbase64encoding.md @@ -0,0 +1,24 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [setBase64Encoding](./react-native-tracker.trackercore.setbase64encoding.md) + +## TrackerCore.setBase64Encoding() method + +Turn base 64 encoding on or off + +Signature: + +```typescript +setBase64Encoding(encode: boolean): void; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| encode | boolean | Whether to encode payload | + +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setcolordepth.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setcolordepth.md new file mode 100644 index 000000000..19811d2e2 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setcolordepth.md @@ -0,0 +1,24 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [setColorDepth](./react-native-tracker.trackercore.setcolordepth.md) + +## TrackerCore.setColorDepth() method + +Set the color depth + +Signature: + +```typescript +setColorDepth(depth: string): void; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| depth | string | A color depth value as string | + +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setipaddress.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setipaddress.md new file mode 100644 index 000000000..68290e74e --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setipaddress.md @@ -0,0 +1,24 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [setIpAddress](./react-native-tracker.trackercore.setipaddress.md) + +## TrackerCore.setIpAddress() method + +Set the IP address + +Signature: + +```typescript +setIpAddress(ip: string): void; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| ip | string | An IP Address string | + +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setlang.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setlang.md new file mode 100644 index 000000000..49feb614c --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setlang.md @@ -0,0 +1,24 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [setLang](./react-native-tracker.trackercore.setlang.md) + +## TrackerCore.setLang() method + +Set the language + +Signature: + +```typescript +setLang(lang: string): void; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| lang | string | A language string e.g. 'en-UK' | + +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setplatform.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setplatform.md new file mode 100644 index 000000000..3c0a7be84 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setplatform.md @@ -0,0 +1,24 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [setPlatform](./react-native-tracker.trackercore.setplatform.md) + +## TrackerCore.setPlatform() method + +Set the platform + +Signature: + +```typescript +setPlatform(value: string): void; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| value | string | A valid Snowplow platform value | + +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setscreenresolution.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setscreenresolution.md new file mode 100644 index 000000000..9bf2a6142 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setscreenresolution.md @@ -0,0 +1,25 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [setScreenResolution](./react-native-tracker.trackercore.setscreenresolution.md) + +## TrackerCore.setScreenResolution() method + +Set the screen resolution + +Signature: + +```typescript +setScreenResolution(width: string, height: string): void; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| width | string | screen resolution width | +| height | string | screen resolution height | + +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.settimezone.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.settimezone.md new file mode 100644 index 000000000..2712dbae0 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.settimezone.md @@ -0,0 +1,24 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [setTimezone](./react-native-tracker.trackercore.settimezone.md) + +## TrackerCore.setTimezone() method + +Set the timezone + +Signature: + +```typescript +setTimezone(timezone: string): void; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| timezone | string | A timezone string | + +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.settrackernamespace.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.settrackernamespace.md new file mode 100644 index 000000000..1524468f4 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.settrackernamespace.md @@ -0,0 +1,24 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [setTrackerNamespace](./react-native-tracker.trackercore.settrackernamespace.md) + +## TrackerCore.setTrackerNamespace() method + +Set the tracker namespace + +Signature: + +```typescript +setTrackerNamespace(name: string): void; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| name | string | The trackers namespace | + +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.settrackerversion.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.settrackerversion.md new file mode 100644 index 000000000..acc315981 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.settrackerversion.md @@ -0,0 +1,24 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [setTrackerVersion](./react-native-tracker.trackercore.settrackerversion.md) + +## TrackerCore.setTrackerVersion() method + +Set the tracker version + +Signature: + +```typescript +setTrackerVersion(version: string): void; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| version | string | The version of the current tracker | + +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setuseragent.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setuseragent.md new file mode 100644 index 000000000..f552ab06a --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setuseragent.md @@ -0,0 +1,24 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [setUseragent](./react-native-tracker.trackercore.setuseragent.md) + +## TrackerCore.setUseragent() method + +Set the Useragent + +Signature: + +```typescript +setUseragent(useragent: string): void; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| useragent | string | A useragent string | + +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setuserid.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setuserid.md new file mode 100644 index 000000000..102cd8a30 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setuserid.md @@ -0,0 +1,24 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [setUserId](./react-native-tracker.trackercore.setuserid.md) + +## TrackerCore.setUserId() method + +Set the user ID + +Signature: + +```typescript +setUserId(userId: string): void; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| userId | string | The custom user id | + +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setviewport.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setviewport.md new file mode 100644 index 000000000..a5c8fb08c --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.setviewport.md @@ -0,0 +1,25 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [setViewport](./react-native-tracker.trackercore.setviewport.md) + +## TrackerCore.setViewport() method + +Set the viewport dimensions + +Signature: + +```typescript +setViewport(width: string, height: string): void; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| width | string | viewport width | +| height | string | viewport height | + +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.track.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.track.md new file mode 100644 index 000000000..3d6a09f48 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.track.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [track](./react-native-tracker.trackercore.track.md) + +## TrackerCore.track property + +Call with a payload from a buildX function Adds context and payloadPairs name-value pairs to the payload Applies the callback to the built payload + +Signature: + +```typescript +track: (pb: PayloadBuilder, context?: Array | null, timestamp?: Timestamp | null) => Payload | undefined; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trigger.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trigger.md new file mode 100644 index 000000000..0f0d4d7fb --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trigger.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [Trigger](./react-native-tracker.trigger.md) + +## Trigger type + +Trigger for MessageNotification event + +Signature: + +```typescript +type Trigger = "push" | "location" | "calendar" | "timeInterval" | "other"; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.truetimestamp.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.truetimestamp.md new file mode 100644 index 000000000..f0e32aae3 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.truetimestamp.md @@ -0,0 +1,21 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrueTimestamp](./react-native-tracker.truetimestamp.md) + +## TrueTimestamp interface + +A representation of a True Timestamp (ttm) + +Signature: + +```typescript +interface TrueTimestamp +``` + +## Properties + +| Property | Type | Description | +| --- | --- | --- | +| [type](./react-native-tracker.truetimestamp.type.md) | "ttm" | | +| [value](./react-native-tracker.truetimestamp.value.md) | number | | + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.truetimestamp.type.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.truetimestamp.type.md new file mode 100644 index 000000000..3f2c1ad60 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.truetimestamp.type.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrueTimestamp](./react-native-tracker.truetimestamp.md) > [type](./react-native-tracker.truetimestamp.type.md) + +## TrueTimestamp.type property + +Signature: + +```typescript +readonly type: "ttm"; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.truetimestamp.value.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.truetimestamp.value.md new file mode 100644 index 000000000..2e9a4b33f --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.truetimestamp.value.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrueTimestamp](./react-native-tracker.truetimestamp.md) > [value](./react-native-tracker.truetimestamp.value.md) + +## TrueTimestamp.value property + +Signature: + +```typescript +readonly value: number; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.version.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.version.md new file mode 100644 index 000000000..253881f68 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.version.md @@ -0,0 +1,11 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [version](./react-native-tracker.version.md) + +## version variable + +Signature: + +```typescript +version: string +``` diff --git a/api-docs/docs/react-native-tracker/react-native-tracker.api.md b/api-docs/docs/react-native-tracker/react-native-tracker.api.md new file mode 100644 index 000000000..acb88bef3 --- /dev/null +++ b/api-docs/docs/react-native-tracker/react-native-tracker.api.md @@ -0,0 +1,488 @@ +## API Report File for "@snowplow/react-native-tracker" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export type ConditionalContextProvider = FilterProvider | RuleSetProvider; + +// Warning: (ae-forgotten-export) The symbol "ContextEvent" needs to be exported by the entry point index.module.d.ts +// +// @public +export type ContextFilter = (args?: ContextEvent) => boolean; + +// @public +export type ContextGenerator = (args?: ContextEvent) => SelfDescribingJson | SelfDescribingJson[] | undefined; + +// @public +export type ContextPrimitive = SelfDescribingJson | ContextGenerator; + +// @public +export interface CoreConfiguration { + /* Should payloads be base64 encoded when built */ + // (undocumented) + base64?: boolean; + /* A list of all the plugins to include at load */ + // (undocumented) + callback?: (PayloadData: PayloadBuilder) => void; + /* A list of all the plugins to include at load */ + // (undocumented) + corePlugins?: Array; +} + +// @public +export interface CorePlugin { + activateCorePlugin?: (core: TrackerCore) => void; + afterTrack?: (payload: Payload) => void; + beforeTrack?: (payloadBuilder: PayloadBuilder) => void; + contexts?: () => SelfDescribingJson[]; + filter?: (payload: Payload) => boolean; + logger?: (logger: Logger) => void; +} + +// @public +export interface CorePluginConfiguration { + /* The plugin to add */ + // (undocumented) + plugin: CorePlugin; +} + +// @public +export type DeepLinkReceivedProps = { + url: string; + referrer?: string; +}; + +// @public +export interface DeviceTimestamp { + // (undocumented) + readonly type: "dtm"; + // (undocumented) + readonly value: number; +} + +// @public +export interface Emitter { + flush: () => Promise; + input: (payload: Payload) => Promise; + setAnonymousTracking: (anonymous: boolean) => void; + setBufferSize: (bufferSize: number) => void; + setCollectorUrl: (url: string) => void; +} + +// @public (undocumented) +export interface EmitterConfiguration extends EmitterConfigurationBase { + /* The collector URL to which events will be sent */ + // (undocumented) + endpoint: string; + /* http or https. Defaults to https */ + // (undocumented) + port?: number; + /* http or https. Defaults to https */ + // (undocumented) + protocol?: "http" | "https"; + /* http or https. Defaults to https */ + // (undocumented) + serverAnonymization?: boolean; +} + +// @public (undocumented) +export interface EmitterConfigurationBase { + bufferSize?: number; + connectionTimeout?: number; + credentials?: "omit" | "same-origin" | "include"; + customFetch?: (input: Request, options?: RequestInit) => Promise; + customHeaders?: Record; + dontRetryStatusCodes?: number[]; + eventMethod?: EventMethod; + eventStore?: EventStore; + idService?: string; + keepalive?: boolean; + maxGetBytes?: number; + maxPostBytes?: number; + onRequestFailure?: (data: RequestFailure, response?: Response) => void; + onRequestSuccess?: (data: EventBatch, response: Response) => void; + postPath?: string; + retryFailedRequests?: boolean; + retryStatusCodes?: number[]; + useStm?: boolean; +} + +// @public +export type EventBatch = Payload[]; + +// @public +export type EventContext = SelfDescribingJson; + +// @public +export type EventJson = Array; + +// @public +export type EventJsonWithKeys = { + keyIfEncoded: string; + keyIfNotEncoded: string; + json: Record; +}; + +// @public (undocumented) +export type EventMethod = "post" | "get"; + +// @public +export interface EventPayloadAndContext { + context: Array; + event: PayloadBuilder; +} + +// @public +export interface EventStore { + add: (payload: EventStorePayload) => Promise; + count: () => Promise; + getAll: () => Promise; + getAllPayloads: () => Promise; + iterator: () => EventStoreIterator; + removeHead: (count: number) => Promise; +} + +// @public +export interface EventStoreConfiguration { + maxEventStoreSize?: number; + useAsyncStorageForEventStore?: boolean; +} + +// @public +export interface EventStoreIterator { + // Warning: (ae-forgotten-export) The symbol "EventStoreIteratorNextResult" needs to be exported by the entry point index.module.d.ts + next: () => Promise; +} + +// @public (undocumented) +export interface EventStorePayload { + payload: Payload; + svrAnon?: boolean; +} + +// @public +export type FilterProvider = [ +ContextFilter, +Array | ContextPrimitive +]; + +// @public +export interface FormFocusOrChangeEvent { + elementClasses?: Array | null; + elementId: string; + formId: string; + nodeName: string; + schema: "change_form" | "focus_form"; + type?: string | null; + value: string | null; +} + +// @public +export type JsonProcessor = (payloadBuilder: PayloadBuilder, jsonForProcessing: EventJson, contextEntitiesForProcessing: SelfDescribingJson[]) => void; + +// @public +export type ListItemViewProps = { + index: number; + itemsCount?: number; +}; + +// @public (undocumented) +export enum LOG_LEVEL { + // (undocumented) + debug = 3, + // (undocumented) + error = 1, + // (undocumented) + info = 4, + // (undocumented) + none = 0, + // (undocumented) + warn = 2 +} + +// @public (undocumented) +export interface Logger { + // (undocumented) + debug: (message: string, ...extraParams: unknown[]) => void; + // (undocumented) + error: (message: string, error?: unknown, ...extraParams: unknown[]) => void; + // (undocumented) + info: (message: string, ...extraParams: unknown[]) => void; + // (undocumented) + setLogLevel: (level: LOG_LEVEL) => void; + // (undocumented) + warn: (message: string, error?: unknown, ...extraParams: unknown[]) => void; +} + +// @public +export type MessageNotificationAttachmentProps = { + identifier: string; + type: string; + url: string; +}; + +// @public +export type MessageNotificationProps = { + action?: string; + /* + * Attachments added to the notification (they can be part of the data object). + */ + attachments?: MessageNotificationAttachmentProps[]; + body: string; + /* + * Variable string values to be used in place of the format specifiers in bodyLocArgs to use to localize the body text to the user's current localization. + */ + bodyLocArgs?: string[]; + bodyLocKey?: string; + category?: string; + contentAvailable?: boolean; + group?: string; + icon?: string; + notificationCount?: number; + notificationTimestamp?: string; + sound?: string; + subtitle?: string; + tag?: string; + threadIdentifier?: string; + title: string; + titleLocArgs?: string[]; + titleLocKey?: string; + trigger: Trigger; +}; + +// @public +export function newTracker(configuration: TrackerConfiguration & EmitterConfiguration & SessionConfiguration & SubjectConfiguration & EventStoreConfiguration): Promise; + +// @public +export interface PageViewEvent { + pageTitle?: string | null; + pageUrl?: string | null; + referrer?: string | null; +} + +// @public +export type Payload = Record; + +// @public +export interface PayloadBuilder { + add: (key: string, value: unknown) => void; + addContextEntity: (entity: SelfDescribingJson) => void; + addDict: (dict: Payload) => void; + addJson: (keyIfEncoded: string, keyIfNotEncoded: string, json: Record) => void; + build: () => Payload; + getJson: () => EventJson; + getPayload: () => Payload; + withJsonProcessor: (jsonProcessor: JsonProcessor) => void; +} + +// @public +export type ReactNativeTracker = { + readonly trackSelfDescribingEvent: = Record>(argmap: SelfDescribingJson, contexts?: EventContext[]) => void; + // TODO: + // /** + // * Tracks a screen-view event + // * + // * @param argmap - The screen-view event's properties + // * @param contexts - The array of event contexts + // */ + // readonly trackScreenViewEvent: (argmap: ScreenViewProps, contexts?: EventContext[]) => string | undefined; + // TODO: + // /** + // * Tracks a scroll changed event + // * + // * @param argmap - The scroll changed event's properties + // * @param contexts - The array of event contexts + // */ + // readonly trackScrollChangedEvent: (argmap: ScrollChangedProps, contexts?: EventContext[]) => string | undefined; + // TODO: + // /** + // * Tracks a list item view event + // * + // * @param argmap - The list item view event's properties + // * @param contexts - The array of event contexts + // */ + // readonly trackListItemViewEvent: (argmap: ListItemViewProps, contexts?: EventContext[]) => string | undefined; + readonly trackStructuredEvent: (argmap: StructuredEvent, contexts?: EventContext[]) => void; + readonly trackPageViewEvent: (argmap: PageViewEvent, contexts?: EventContext[]) => void; + readonly trackTimingEvent: (argmap: TimingProps, contexts?: EventContext[]) => void; + // TODO: + // /** + // * Tracks a deep link received event + // * + // * @param argmap - The deep link received event properties + // * @param contexts - The array of event contexts + // */ + // readonly trackDeepLinkReceivedEvent: (argmap: DeepLinkReceivedProps, contexts?: EventContext[]) => void; + readonly trackMessageNotificationEvent: (argmap: MessageNotificationProps, contexts?: EventContext[]) => void; + addGlobalContexts(contexts: Array | Record): void; + clearGlobalContexts(): void; + removeGlobalContexts(contexts: Array): void; + addPlugin(configuration: CorePluginConfiguration): void; + flush: () => Promise; + readonly setAppId: (appId: string) => void; + readonly setPlatform: (value: string) => void; + readonly setUserId: (newUid: string) => void; + readonly setNetworkUserId: (newNuid: string | undefined) => void; + readonly setDomainUserId: (newDuid: string | undefined) => void; + readonly setIpAddress: (newIp: string) => void; + readonly setUseragent: (newUagent: string) => void; + readonly setTimezone: (newTz: string) => void; + readonly setLanguage: (newLang: string) => void; + readonly setScreenResolution: (newRes: ScreenSize) => void; + readonly setScreenViewport: (newView: ScreenSize) => void; + readonly setColorDepth: (newLang: number) => void; + readonly setSubjectData: (config: SubjectConfiguration) => void; +}; + +// @public +export type RequestFailure = { + events: EventBatch; + status?: number; + message?: string; + willRetry: boolean; +}; + +// @public +export interface RuleSet { + // (undocumented) + accept?: Array | string; + // (undocumented) + reject?: Array | string; +} + +// @public +export type RuleSetProvider = [ +RuleSet, +Array | ContextPrimitive +]; + +// @public +export type ScreenSize = [ +number, +number +]; + +// @public +export type ScreenViewProps = { + name: string; + id?: string; + type?: string; + previousName?: string; + previousId?: string; + previousType?: string; + transitionType?: string; +}; + +// @public +export type ScrollChangedProps = { + yOffset?: number; + xOffset?: number; + viewHeight?: number; + viewWidth?: number; + contentHeight?: number; + contentWidth?: number; +}; + +// @public +export type SelfDescribingJson> = { + schema: string; + data: T extends any[] ? never : T extends {} ? T : never; +}; + +// @public +export interface SessionConfiguration { + backgroundSessionTimeout?: number; + foregroundSessionTimeout?: number; +} + +// @public +export interface StructuredEvent { + // (undocumented) + action: string; + // (undocumented) + category: string; + // (undocumented) + label?: string; + // (undocumented) + property?: string; + // (undocumented) + value?: number; +} + +// @public +export interface SubjectConfiguration { + colorDepth?: number; + domainUserId?: string; + ipAddress?: string; + language?: string; + networkUserId?: string; + screenResolution?: ScreenSize; + screenViewport?: ScreenSize; + timezone?: string; + useragent?: string; + userId?: string; +} + +// @public +export type Timestamp = TrueTimestamp | DeviceTimestamp | number; + +// @public +export type TimingProps = { + category: string; + variable: string; + timing: number; + label?: string; +}; + +// @public +export interface TrackerConfiguration { + appId?: string; + encodeBase64?: boolean; + namespace: string; +} + +// @public +export interface TrackerCore { + addGlobalContexts(contexts: Array | Record): void; + addPayloadDict(dict: Payload): void; + addPayloadPair: (key: string, value: unknown) => void; + addPlugin(configuration: CorePluginConfiguration): void; + clearGlobalContexts(): void; + getBase64Encoding(): boolean; + removeGlobalContexts(contexts: Array): void; + resetPayloadPairs(dict: Payload): void; + setAppId(appId: string): void; + setBase64Encoding(encode: boolean): void; + setColorDepth(depth: string): void; + setIpAddress(ip: string): void; + setLang(lang: string): void; + setPlatform(value: string): void; + setScreenResolution(width: string, height: string): void; + setTimezone(timezone: string): void; + setTrackerNamespace(name: string): void; + setTrackerVersion(version: string): void; + setUseragent(useragent: string): void; + setUserId(userId: string): void; + setViewport(width: string, height: string): void; + track: (pb: PayloadBuilder, context?: Array | null, timestamp?: Timestamp | null) => Payload | undefined; +} + +// @public +export type Trigger = "push" | "location" | "calendar" | "timeInterval" | "other"; + +// @public +export interface TrueTimestamp { + // (undocumented) + readonly type: "ttm"; + // (undocumented) + readonly value: number; +} + +// @public (undocumented) +export const version: string; + +// (No @packageDocumentation comment for this package) + +``` From 3207547ab1cee93601a908de37eeaf15e6c3cc99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matu=CC=81s=CC=8C=20Tomlein?= Date: Tue, 5 Nov 2024 10:49:29 +0100 Subject: [PATCH 04/16] Run rush change --- ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ ...e-create_react_native_tracker_2024-11-05-09-49.json | 10 ++++++++++ 29 files changed, 290 insertions(+) create mode 100644 common/changes/@snowplow/browser-plugin-ad-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-button-click-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-client-hints/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-debugger/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-enhanced-consent/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-enhanced-ecommerce/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-error-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-event-specifications/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-focalmeter/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-form-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-ga-cookies/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-geolocation/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-link-click-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-media-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-media/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-optimizely-x/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-performance-navigation-timing/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-performance-timing/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-privacy-sandbox/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-site-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-snowplow-ecommerce/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-timezone/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-vimeo-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-web-vitals/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-plugin-youtube-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-tracker-core/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/browser-tracker/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/javascript-tracker/issue-create_react_native_tracker_2024-11-05-09-49.json create mode 100644 common/changes/@snowplow/react-native-tracker/issue-create_react_native_tracker_2024-11-05-09-49.json diff --git a/common/changes/@snowplow/browser-plugin-ad-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-ad-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..63ab22cfd --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-ad-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-ad-tracking", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-ad-tracking" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-button-click-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-button-click-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..555aca53d --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-button-click-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-button-click-tracking", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-button-click-tracking" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-client-hints/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-client-hints/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..afd4446a3 --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-client-hints/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-client-hints", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-client-hints" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-debugger/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-debugger/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..ad2279293 --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-debugger/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-debugger", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-debugger" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-enhanced-consent/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-enhanced-consent/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..68137719e --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-enhanced-consent/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-enhanced-consent", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-enhanced-consent" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-enhanced-ecommerce/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-enhanced-ecommerce/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..4b59237c0 --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-enhanced-ecommerce/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-enhanced-ecommerce", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-enhanced-ecommerce" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-error-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-error-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..cfccb7027 --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-error-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-error-tracking", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-error-tracking" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-event-specifications/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-event-specifications/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..6957e2ed7 --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-event-specifications/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-event-specifications", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-event-specifications" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-focalmeter/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-focalmeter/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..4a64c0f99 --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-focalmeter/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-focalmeter", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-focalmeter" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-form-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-form-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..9e57465df --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-form-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-form-tracking", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-form-tracking" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-ga-cookies/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-ga-cookies/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..89172f68b --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-ga-cookies/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-ga-cookies", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-ga-cookies" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-geolocation/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-geolocation/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..ebd489d6a --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-geolocation/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-geolocation", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-geolocation" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-link-click-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-link-click-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..a9e777d09 --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-link-click-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-link-click-tracking", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-link-click-tracking" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-media-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-media-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..c5c260c54 --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-media-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-media-tracking", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-media-tracking" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-media/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-media/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..2d9fd696d --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-media/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-media", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-media" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-optimizely-x/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-optimizely-x/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..c1e3cefef --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-optimizely-x/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-optimizely-x", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-optimizely-x" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-performance-navigation-timing/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-performance-navigation-timing/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..f3386fa4b --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-performance-navigation-timing/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-performance-navigation-timing", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-performance-navigation-timing" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-performance-timing/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-performance-timing/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..b94ea8b7e --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-performance-timing/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-performance-timing", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-performance-timing" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-privacy-sandbox/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-privacy-sandbox/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..b5a2b49d7 --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-privacy-sandbox/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-privacy-sandbox", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-privacy-sandbox" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-site-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-site-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..c9f262ae2 --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-site-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-site-tracking", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-site-tracking" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-snowplow-ecommerce/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-snowplow-ecommerce/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..cb4138a3b --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-snowplow-ecommerce/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-snowplow-ecommerce", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-snowplow-ecommerce" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-timezone/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-timezone/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..719b9894f --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-timezone/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-timezone", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-timezone" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-vimeo-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-vimeo-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..4469da62b --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-vimeo-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-vimeo-tracking", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-vimeo-tracking" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-web-vitals/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-web-vitals/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..5a0be19a6 --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-web-vitals/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-web-vitals", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-web-vitals" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-plugin-youtube-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-plugin-youtube-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..c57adf624 --- /dev/null +++ b/common/changes/@snowplow/browser-plugin-youtube-tracking/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-plugin-youtube-tracking", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-plugin-youtube-tracking" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-tracker-core/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-tracker-core/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..d9bb8cd2b --- /dev/null +++ b/common/changes/@snowplow/browser-tracker-core/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-tracker-core", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-tracker-core" +} \ No newline at end of file diff --git a/common/changes/@snowplow/browser-tracker/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/browser-tracker/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..5665ac7f0 --- /dev/null +++ b/common/changes/@snowplow/browser-tracker/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/browser-tracker", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/browser-tracker" +} \ No newline at end of file diff --git a/common/changes/@snowplow/javascript-tracker/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/javascript-tracker/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..ae2f53795 --- /dev/null +++ b/common/changes/@snowplow/javascript-tracker/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/javascript-tracker", + "comment": "", + "type": "none" + } + ], + "packageName": "@snowplow/javascript-tracker" +} \ No newline at end of file diff --git a/common/changes/@snowplow/react-native-tracker/issue-create_react_native_tracker_2024-11-05-09-49.json b/common/changes/@snowplow/react-native-tracker/issue-create_react_native_tracker_2024-11-05-09-49.json new file mode 100644 index 000000000..11f11527b --- /dev/null +++ b/common/changes/@snowplow/react-native-tracker/issue-create_react_native_tracker_2024-11-05-09-49.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/react-native-tracker", + "comment": "Add new tracker for React Native", + "type": "none" + } + ], + "packageName": "@snowplow/react-native-tracker" +} \ No newline at end of file From 853d39649a86adb145e84f6f26750ad7c8d68bc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matu=CC=81s=CC=8C=20Tomlein?= Date: Wed, 6 Nov 2024 10:20:55 +0100 Subject: [PATCH 05/16] Downgrade jest version to 28 to fix tests --- common/config/rush/pnpm-lock.yaml | 1760 +++++++++-------- common/config/rush/repo-state.json | 2 +- libraries/browser-tracker-core/package.json | 10 +- .../test/tracker/cross_domain.test.ts | 2 +- .../test/tracker/session_data.test.ts | 2 +- .../browser-plugin-ad-tracking/package.json | 10 +- .../package.json | 10 +- .../jest.config.js | 1 + .../browser-plugin-client-hints/package.json | 10 +- plugins/browser-plugin-debugger/package.json | 10 +- .../package.json | 10 +- .../package.json | 10 +- .../package.json | 10 +- .../jest.config.js | 1 + .../package.json | 10 +- .../browser-plugin-focalmeter/package.json | 10 +- .../browser-plugin-form-tracking/package.json | 10 +- .../browser-plugin-ga-cookies/jest.config.js | 1 + .../browser-plugin-ga-cookies/package.json | 10 +- .../browser-plugin-geolocation/package.json | 10 +- .../package.json | 10 +- .../package.json | 10 +- plugins/browser-plugin-media/package.json | 10 +- .../browser-plugin-optimizely-x/package.json | 10 +- .../package.json | 10 +- .../jest.config.js | 1 + .../package.json | 10 +- .../jest.config.js | 1 + .../package.json | 10 +- .../browser-plugin-site-tracking/package.json | 10 +- .../package.json | 10 +- .../browser-plugin-timezone/jest.config.js | 1 + plugins/browser-plugin-timezone/package.json | 10 +- .../package.json | 10 +- .../browser-plugin-web-vitals/jest.config.js | 1 + .../browser-plugin-web-vitals/package.json | 10 +- .../package.json | 10 +- trackers/browser-tracker/package.json | 10 +- trackers/browser-tracker/test/tracker.test.ts | 2 +- trackers/javascript-tracker/package.json | 10 +- trackers/react-native-tracker/jest.config.js | 4 +- trackers/react-native-tracker/package.json | 6 +- 42 files changed, 1127 insertions(+), 938 deletions(-) diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index bfc290bc9..8113622f4 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -38,11 +38,11 @@ importers: specifier: ~9.3.1 version: 9.3.4 '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@types/sha1': specifier: ~1.1.3 version: 1.1.5 @@ -59,14 +59,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -86,8 +86,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -181,11 +181,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -199,14 +199,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -229,8 +229,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -257,11 +257,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -275,14 +275,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -305,8 +305,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -333,11 +333,11 @@ importers: specifier: workspace:* version: link:../../libraries/tracker-core '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -348,14 +348,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -375,8 +375,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -406,11 +406,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@types/randomcolor': specifier: ~0.5.5 version: 0.5.9 @@ -424,14 +424,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -451,8 +451,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -479,11 +479,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -497,14 +497,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -527,8 +527,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -555,11 +555,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -573,14 +573,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -603,8 +603,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -631,11 +631,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -649,14 +649,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -679,8 +679,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -707,11 +707,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -722,14 +722,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -749,8 +749,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -777,11 +777,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -792,14 +792,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -819,8 +819,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -847,11 +847,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -862,14 +862,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -889,8 +889,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -917,11 +917,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -932,14 +932,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -959,8 +959,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -987,11 +987,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -1002,14 +1002,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1029,8 +1029,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1057,11 +1057,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -1075,14 +1075,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1105,8 +1105,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1136,11 +1136,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@types/uuid': specifier: ^10.0.0 version: 10.0.0 @@ -1154,14 +1154,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1181,8 +1181,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1215,11 +1215,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@types/uuid': specifier: ^10.0.0 version: 10.0.0 @@ -1233,14 +1233,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1260,8 +1260,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1288,11 +1288,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -1303,14 +1303,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1330,8 +1330,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1358,11 +1358,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -1373,14 +1373,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1400,8 +1400,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1428,11 +1428,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -1443,14 +1443,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1470,8 +1470,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1498,11 +1498,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -1513,14 +1513,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1540,8 +1540,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1568,11 +1568,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -1586,14 +1586,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1616,8 +1616,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1644,11 +1644,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -1662,14 +1662,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1692,8 +1692,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1723,11 +1723,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@types/jstimezonedetect': specifier: ~1.0.3 version: 1.0.6 @@ -1741,14 +1741,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1771,8 +1771,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1805,11 +1805,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@types/vimeo__player': specifier: ~2.16.3 version: 2.16.3 @@ -1823,14 +1823,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1850,8 +1850,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1881,11 +1881,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -1896,14 +1896,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -1923,8 +1923,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -1957,11 +1957,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@types/uuid': specifier: ^10.0.0 version: 10.0.0 @@ -1978,14 +1978,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -2005,8 +2005,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -2033,11 +2033,11 @@ importers: specifier: ~13.1.3 version: 13.1.3(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -2051,14 +2051,14 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -2081,8 +2081,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -2196,11 +2196,11 @@ importers: specifier: ~3.3.5 version: 3.3.31 '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/jsdom': - specifier: ~16.2.14 - version: 16.2.15 + specifier: ~21.1.7 + version: 21.1.7 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -2247,14 +2247,14 @@ importers: specifier: ~3.3.1 version: 3.3.5 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) jest-environment-jsdom: - specifier: ~29.7.0 - version: 29.7.0 + specifier: ~28.1.3 + version: 28.1.3 jest-environment-jsdom-global: specifier: ~4.0.0 - version: 4.0.0(jest-environment-jsdom@29.7.0) + version: 4.0.0(jest-environment-jsdom@28.1.3) jest-standard-reporter: specifier: ~2.0.0 version: 2.0.0 @@ -2289,8 +2289,8 @@ importers: specifier: ~7.5.0 version: 7.5.0 ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)))(typescript@4.6.4) ts-node: specifier: ~10.9.1 version: 10.9.2(@types/node@14.6.4)(typescript@4.6.4) @@ -2373,13 +2373,13 @@ importers: version: 0.76.1 '@react-native/eslint-config': specifier: ^0.73.1 - version: 0.73.2(eslint@8.11.0)(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + version: 0.73.2(eslint@8.11.0)(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) '@rollup/plugin-json': specifier: ~4.1.0 version: 4.1.0(rollup@2.70.2) '@types/jest': - specifier: ~29.5.14 - version: 29.5.14 + specifier: ~28.1.1 + version: 28.1.8 '@types/react': specifier: ^18.2.44 version: 18.3.12 @@ -2393,8 +2393,8 @@ importers: specifier: ~8.11.0 version: 8.11.0 jest: - specifier: ~29.7.0 - version: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + specifier: ~28.1.3 + version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) node-fetch: specifier: ~3.3.2 version: 3.3.2 @@ -2414,8 +2414,8 @@ importers: specifier: ~2.0.5 version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: - specifier: ~29.2.5 - version: 29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + specifier: ~28.0.8 + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -3081,13 +3081,13 @@ packages: resolution: {integrity: sha512-IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g==} engines: {node: '>= 10.14.2'} - '@jest/console@29.7.0': - resolution: {integrity: sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + '@jest/console@28.1.3': + resolution: {integrity: sha512-QPAkP5EwKdK/bxIr6C1I4Vs0rm2nHiANzj/Z5X2JQkrZo6IqvC4ldZ9K95tF0HdidhA8Bo6egxSzUFPYKcEXLw==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} - '@jest/core@29.7.0': - resolution: {integrity: sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + '@jest/core@28.1.3': + resolution: {integrity: sha512-CIKBrlaKOzA7YG19BEqCw3SLIsEwjZkeJzf5bdooVnW4bH5cktqe3JX+G2YV1aK5vP8N9na1IGWFzYaTp6k6NA==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: @@ -3098,59 +3098,79 @@ packages: resolution: {integrity: sha512-4QqS3LY5PBmTRHj9sAg1HLoPzqAI0uOX6wI/TRqHIcOxlFidy6YEmCQJk6FSZjNLGCeubDMfmkWL+qaLKhSGQA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + '@jest/environment@28.1.3': + resolution: {integrity: sha512-1bf40cMFTEkKyEf585R9Iz1WayDjHoHqvts0XFYEqyKM3cFWDpeMoqKKTAF9LSYQModPUlh8FKptoM2YcMWAXA==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + '@jest/environment@29.7.0': resolution: {integrity: sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + '@jest/expect-utils@28.1.3': + resolution: {integrity: sha512-wvbi9LUrHJLn3NlDW6wF2hvIMtd4JUl2QNVrjq+IBSHirgfrR3o9RnVtxzdEGO2n9JyIWwHnLfby5KzqBGg2YA==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + '@jest/expect-utils@29.7.0': resolution: {integrity: sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - '@jest/expect@29.7.0': - resolution: {integrity: sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + '@jest/expect@28.1.3': + resolution: {integrity: sha512-lzc8CpUbSoE4dqT0U+g1qODQjBRHPpCPXissXD4mS9+sWQdmmpeJ9zSH1rS1HEkrsMN0fb7nKrJ9giAR1d3wBw==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + + '@jest/fake-timers@28.1.3': + resolution: {integrity: sha512-D/wOkL2POHv52h+ok5Oj/1gOG9HSywdoPtFsRCUmlCILXNn5eIWmcnd3DIiWlJnpGvQtmajqBP95Ei0EimxfLw==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} '@jest/fake-timers@29.7.0': resolution: {integrity: sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - '@jest/globals@29.7.0': - resolution: {integrity: sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + '@jest/globals@28.1.3': + resolution: {integrity: sha512-XFU4P4phyryCXu1pbcqMO0GSQcYe1IsalYCDzRNyhetyeyxMcIxa11qPNDpVNLeretItNqEmYYQn1UYz/5x1NA==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} - '@jest/reporters@29.7.0': - resolution: {integrity: sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + '@jest/reporters@28.1.3': + resolution: {integrity: sha512-JuAy7wkxQZVNU/V6g9xKzCGC5LVXx9FDcABKsSXp5MiKPEE2144a/vXTEDoyzjUpZKfVwp08Wqg5A4WfTMAzjg==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: node-notifier: optional: true + '@jest/schemas@28.1.3': + resolution: {integrity: sha512-/l/VWsdt/aBXgjshLWOFyFt3IVdYypu5y2Wn2rOO1un6nkqIn8SLXzgIMYXFyYsRWDyF5EthmKJMIdJvk08grg==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + '@jest/schemas@29.6.3': resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - '@jest/source-map@29.6.3': - resolution: {integrity: sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + '@jest/source-map@28.1.2': + resolution: {integrity: sha512-cV8Lx3BeStJb8ipPHnqVw/IM2VCMWO3crWZzYodSIkxXnRcXJipCdx1JCK0K5MsJJouZQTH73mzf4vgxRaH9ww==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} - '@jest/test-result@29.7.0': - resolution: {integrity: sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + '@jest/test-result@28.1.3': + resolution: {integrity: sha512-kZAkxnSE+FqE8YjW8gNuoVkkC9I7S1qmenl8sGcDOLropASP+BkcGKwhXoyqQuGOGeYY0y/ixjrd/iERpEXHNg==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} - '@jest/test-sequencer@29.7.0': - resolution: {integrity: sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + '@jest/test-sequencer@28.1.3': + resolution: {integrity: sha512-NIMPEqqa59MWnDi1kvXXpYbqsfQmSJsIbnd85mdVGkiDfQ9WQQTXOLsvISUfonmnBT+w85WEgneCigEEdHDFxw==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} - '@jest/transform@29.7.0': - resolution: {integrity: sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + '@jest/transform@28.1.3': + resolution: {integrity: sha512-u5dT5di+oFI6hfcLOHGTAfmUxFRrjK+vnaP0kkVow9Md/M7V/MxqQMOz/VV25UZO8pzeA9PjfTpOu6BDuwSPQA==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} '@jest/types@26.6.2': resolution: {integrity: sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==} engines: {node: '>= 10.14.2'} + '@jest/types@28.1.3': + resolution: {integrity: sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + '@jest/types@29.6.3': resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -3433,6 +3453,9 @@ packages: '@sideway/pinpoint@2.0.0': resolution: {integrity: sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==} + '@sinclair/typebox@0.24.51': + resolution: {integrity: sha512-1P1OROm/rdubP5aFDSZQILU0vrLCJ4fvHt6EoqHEM+2D/G5MK3bIaymUKLit8Js9gbns5UyJnkP/TZROLw4tUA==} + '@sinclair/typebox@0.27.8': resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} @@ -3444,12 +3467,18 @@ packages: resolution: {integrity: sha512-TV7t8GKYaJWsn00tFDqBw8+Uqmr8A0fRU1tvTQhyZzGv0sJCGRQL3JGMI3ucuKo3XIZdUP+Lx7/gh2t3lewy7g==} engines: {node: '>=14.16'} + '@sinonjs/commons@1.8.6': + resolution: {integrity: sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==} + '@sinonjs/commons@3.0.1': resolution: {integrity: sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==} '@sinonjs/fake-timers@10.3.0': resolution: {integrity: sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==} + '@sinonjs/fake-timers@9.1.2': + resolution: {integrity: sha512-BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw==} + '@szmarczak/http-timer@4.0.6': resolution: {integrity: sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==} engines: {node: '>=10'} @@ -3533,14 +3562,14 @@ packages: '@types/istanbul-reports@3.0.4': resolution: {integrity: sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==} - '@types/jest@29.5.14': - resolution: {integrity: sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==} + '@types/jest@28.1.8': + resolution: {integrity: sha512-8TJkV++s7B6XqnDrzR1m/TT0A0h948Pnl/097veySPN67VRAgQ4gZ7n2KfJo2rVq6njQjdxU3GCCyDvAeuHoiw==} '@types/jsdom@16.2.15': resolution: {integrity: sha512-nwF87yjBKuX/roqGYerZZM0Nv1pZDMAT5YhOHYeM/72Fic+VEqJh4nyoqoapzJnW3pUlfxPY5FhgsJtM+dRnQQ==} - '@types/jsdom@20.0.1': - resolution: {integrity: sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==} + '@types/jsdom@21.1.7': + resolution: {integrity: sha512-yOriVnggzrnQ3a9OKOCxaVuSug3w3/SbOj5i7VwXWZEyUNl3bLF9V3MfxGbZKuwqJOQyRfqXyROBB1CoZLFWzA==} '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} @@ -3578,6 +3607,9 @@ packages: '@types/parse5@6.0.3': resolution: {integrity: sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==} + '@types/prettier@2.7.3': + resolution: {integrity: sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==} + '@types/prop-types@15.7.13': resolution: {integrity: sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==} @@ -3863,8 +3895,8 @@ packages: resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} engines: {node: '>= 0.6'} - acorn-globals@7.0.1: - resolution: {integrity: sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==} + acorn-globals@6.0.0: + resolution: {integrity: sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==} acorn-jsx@5.3.2: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} @@ -4107,9 +4139,9 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - babel-jest@29.7.0: - resolution: {integrity: sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + babel-jest@28.1.3: + resolution: {integrity: sha512-epUaPOEWMk3cWX0M/sPvCHHCe9fMFAa/9hXEgKP8nFfNl/jlGkE9ucq9NqkZGXLDduCJYS0UvSlPUwC0S+rH6Q==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} peerDependencies: '@babel/core': ^7.8.0 @@ -4117,9 +4149,9 @@ packages: resolution: {integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==} engines: {node: '>=8'} - babel-plugin-jest-hoist@29.6.3: - resolution: {integrity: sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + babel-plugin-jest-hoist@28.1.3: + resolution: {integrity: sha512-Ys3tUKAmfnkRUpPdpa98eYrAR0nV+sSFUZZEGuQ2EbFd1y4SOLtD5QDNHAq+bb9a+bbXvYQC4b+ID/THIMcU6Q==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} babel-plugin-polyfill-corejs2@0.4.11: resolution: {integrity: sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==} @@ -4147,9 +4179,9 @@ packages: peerDependencies: '@babel/core': ^7.0.0 - babel-preset-jest@29.6.3: - resolution: {integrity: sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + babel-preset-jest@28.1.3: + resolution: {integrity: sha512-L+fupJvlWAHbQfn74coNX3zf60LXMJsezNvvx8eIh7iOR1luJ1poxYgQk1F8PYtNq/6QODDHCqsSnTFSWC491A==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} peerDependencies: '@babel/core': ^7.0.0 @@ -4220,6 +4252,9 @@ packages: resolution: {integrity: sha512-uA9fOtlTRC0iqKfzff1W34DXUA3GyVqbUaeo3Rw3d4gd1eavKVCETXrn3NzO74W+UVkG3UHu8WxUi+XvKI/huA==} engines: {node: '>= 10.16.0'} + browser-process-hrtime@1.0.0: + resolution: {integrity: sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==} + browserslist-generator@1.0.66: resolution: {integrity: sha512-aFDax4Qzh29DdyhHQBD2Yu2L5OvaDnvYFMbmpLrLwwaNK4H6dHEhC/Nxv93/+mfAA+a/t94ln0P2JZvHO6LZDA==} engines: {node: '>=8.0.0'} @@ -4596,6 +4631,9 @@ packages: resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} engines: {node: '>= 0.6'} + convert-source-map@1.9.0: + resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} + convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} @@ -4636,11 +4674,6 @@ packages: resolution: {integrity: sha512-piICUB6ei4IlTv1+653yq5+KoqfBYmj9bw6LqXoOneTMDXk5nM1qt12mFW1caG3LlJXEKW1Bp0WggEmIfQB34g==} engines: {node: '>= 14'} - create-jest@29.7.0: - resolution: {integrity: sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - hasBin: true - create-require@1.1.1: resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} @@ -4769,13 +4802,8 @@ packages: resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} engines: {node: '>=10'} - dedent@1.5.3: - resolution: {integrity: sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==} - peerDependencies: - babel-plugin-macros: ^3.1.0 - peerDependenciesMeta: - babel-plugin-macros: - optional: true + dedent@0.7.0: + resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==} deep-equal@2.2.3: resolution: {integrity: sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==} @@ -4847,6 +4875,10 @@ packages: devtools-protocol@0.0.1302984: resolution: {integrity: sha512-Rgh2Sk5fUSCtEx4QGH9iwTyECdFPySG2nlz5J8guGh2Wlha6uzSOCq/DCEC8faHlLaMPZJMuZ4ovgcX4LvOkKA==} + diff-sequences@28.1.1: + resolution: {integrity: sha512-FU0iFaH/E23a+a718l8Qa/19bF9p06kgE0KipMOMadwa3SjnaElKzPaUC0vnibs6/B/9ni97s61mcejk8W1fQw==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + diff-sequences@29.6.3: resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -4931,8 +4963,8 @@ packages: electron-to-chromium@1.5.50: resolution: {integrity: sha512-eMVObiUQ2LdgeO1F/ySTXsvqvxb6ZH2zPGaMYsWzRDdOddUa77tdmI0ltg+L16UpbWdhPmuF3wIQYyQq65WfZw==} - emittery@0.13.1: - resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==} + emittery@0.10.2: + resolution: {integrity: sha512-aITqOwnLanpHLNXZJENbOgjUBeHocD+xsSJmNrjovKBW5HbSpW3d1pEls7GFQPUWXiwG9+0P4GtHfEqC/4M0Iw==} engines: {node: '>=12'} emittery@1.0.3: @@ -5215,6 +5247,10 @@ packages: resolution: {integrity: sha512-Op1xZoevlv1pohCq7g2Og5Gr3xP2NhY7MQueOApmopVxgweoJ/BqJxyvMNP0A//QsMg8v0WsN/1j81Sx2er9Wg==} engines: {node: '>=16 || >=18 || >=20'} + expect@28.1.3: + resolution: {integrity: sha512-eEh0xn8HlsuOBxFgIss+2mX85VAS4Qy3OSkjV7rlBWljtA4oWH37glVGyOZSZvErDT/yBywZdPGwCXuTvSG85g==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + expect@29.7.0: resolution: {integrity: sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -6087,10 +6123,6 @@ packages: resolution: {integrity: sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==} engines: {node: '>=8'} - istanbul-lib-instrument@6.0.3: - resolution: {integrity: sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==} - engines: {node: '>=10'} - istanbul-lib-report@3.0.1: resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==} engines: {node: '>=10'} @@ -6122,17 +6154,17 @@ packages: resolution: {integrity: sha512-il+noV96N1BGU9/FMmc8QtAMxC8lPnXUiAvgb0o9MDZATRdxglTQe9wo6UdL049ropQL6MopDYwDlludKR6wJQ==} hasBin: true - jest-changed-files@29.7.0: - resolution: {integrity: sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest-changed-files@28.1.3: + resolution: {integrity: sha512-esaOfUWJXk2nfZt9SPyC8gA1kNfdKLkQWyzsMlqq8msYSlNKfmZxfRgZn4Cd4MGVUF+7v6dBs0d5TOAKa7iIiA==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} - jest-circus@29.7.0: - resolution: {integrity: sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest-circus@28.1.3: + resolution: {integrity: sha512-cZ+eS5zc79MBwt+IhQhiEp0OeBddpc1n8MBo1nMB8A7oPMKEO+Sre+wHaLJexQUj9Ya/8NOBY0RESUgYjB6fow==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} - jest-cli@29.7.0: - resolution: {integrity: sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest-cli@28.1.3: + resolution: {integrity: sha512-roY3kvrv57Azn1yPgdTebPAXvdR2xfezaKKYzVxZ6It/5NCxzJym6tUI5P1zkdWhfUYkxEI9uZWcQdaFLo8mJQ==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} hasBin: true peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 @@ -6140,9 +6172,9 @@ packages: node-notifier: optional: true - jest-config@29.7.0: - resolution: {integrity: sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest-config@28.1.3: + resolution: {integrity: sha512-MG3INjByJ0J4AsNBm7T3hsuxKQqFIiRo/AUqb1q9LRKI5UU6Aar9JHbr9Ivn1TVwfUD9KirRoM/T6u8XlcQPHQ==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} peerDependencies: '@types/node': '*' ts-node: '>=9.0.0' @@ -6152,17 +6184,21 @@ packages: ts-node: optional: true + jest-diff@28.1.3: + resolution: {integrity: sha512-8RqP1B/OXzjjTWkqMX67iqgwBVJRgCyKD3L9nq+6ZqJMdvjE8RgHktqZ6jNrkdMT+dJuYNI3rhQpxaz7drJHfw==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + jest-diff@29.7.0: resolution: {integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest-docblock@29.7.0: - resolution: {integrity: sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest-docblock@28.1.1: + resolution: {integrity: sha512-3wayBVNiOYx0cwAbl9rwm5kKFP8yHH3d/fkEaL02NPTkDojPtheGB7HZSFY4wzX+DxyrvhXz0KSCVksmCknCuA==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} - jest-each@29.7.0: - resolution: {integrity: sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest-each@28.1.3: + resolution: {integrity: sha512-arT1z4sg2yABU5uogObVPvSlSMQlDA48owx07BDPAiasW0yYpYHYOo4HHLz9q0BVzDVU4hILFjzJw0So9aCL/g==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} jest-environment-jsdom-global@4.0.0: resolution: {integrity: sha512-qEV8j61oV5XhOBUQbrld2nMYKnp/AGINUaoYTtkwJ9rjvMNRN7ZaZ/dgoPpW83oFtrSiVM1gie6ajdsKFBUlLA==} @@ -6170,30 +6206,37 @@ packages: peerDependencies: jest-environment-jsdom: 22.x || 23.x || 24.x || 25.x || 26.x || 27.x || 28.x || 29.x - jest-environment-jsdom@29.7.0: - resolution: {integrity: sha512-k9iQbsf9OyOfdzWH8HDmrRT0gSIcX+FLNW7IQq94tFX0gynPwqDTW0Ho6iMVNjGz/nb+l/vW3dWM2bbLLpkbXA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - peerDependencies: - canvas: ^2.5.0 - peerDependenciesMeta: - canvas: - optional: true + jest-environment-jsdom@28.1.3: + resolution: {integrity: sha512-HnlGUmZRdxfCByd3GM2F100DgQOajUBzEitjGqIREcb45kGjZvRrKUdlaF6escXBdcXNl0OBh+1ZrfeZT3GnAg==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + + jest-environment-node@28.1.3: + resolution: {integrity: sha512-ugP6XOhEpjAEhGYvp5Xj989ns5cB1K6ZdjBYuS30umT4CQEETaxSiPcZ/E1kFktX4GkrcM4qu07IIlDYX1gp+A==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} jest-environment-node@29.7.0: resolution: {integrity: sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest-get-type@28.0.2: + resolution: {integrity: sha512-ioj2w9/DxSYHfOm5lJKCdcAmPJzQXmbM/Url3rhlghrPvT3tt+7a/+oXc9azkKmLvoiXjtV83bEWqi+vs5nlPA==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + jest-get-type@29.6.3: resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest-haste-map@29.7.0: - resolution: {integrity: sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest-haste-map@28.1.3: + resolution: {integrity: sha512-3S+RQWDXccXDKSWnkHa/dPwt+2qwA8CJzR61w3FoYCvoo3Pn8tvGcysmMF0Bj0EX5RYvAI2EIvC57OmotfdtKA==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} - jest-leak-detector@29.7.0: - resolution: {integrity: sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest-leak-detector@28.1.3: + resolution: {integrity: sha512-WFVJhnQsiKtDEo5lG2mM0v40QWnBM+zMdHHyJs8AWZ7J0QZJS59MsyKeJHWhpBZBH32S48FOVvGyOFT1h0DlqA==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + + jest-matcher-utils@28.1.3: + resolution: {integrity: sha512-kQeJ7qHemKfbzKoGjHHrRKH6atgxMk8Enkk2iPQ3XwO6oE/KYD8lMYOziCkeSB9G4adPM4nR1DE8Tf5JeWH6Bw==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} jest-matcher-utils@29.7.0: resolution: {integrity: sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==} @@ -6203,10 +6246,18 @@ packages: resolution: {integrity: sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA==} engines: {node: '>= 10.14.2'} + jest-message-util@28.1.3: + resolution: {integrity: sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + jest-message-util@29.7.0: resolution: {integrity: sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest-mock@28.1.3: + resolution: {integrity: sha512-o3J2jr6dMMWYVH4Lh/NKmDXdosrsJgi4AviS8oXLujcjpCMBb1FMsblDnOXKZKfSiHLxYub1eS0IHuRXsio9eA==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + jest-mock@29.7.0: resolution: {integrity: sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -6220,29 +6271,29 @@ packages: jest-resolve: optional: true - jest-regex-util@29.6.3: - resolution: {integrity: sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest-regex-util@28.0.2: + resolution: {integrity: sha512-4s0IgyNIy0y9FK+cjoVYoxamT7Zeo7MhzqRGx7YDYmaQn1wucY9rotiGkBzzcMXTtjrCAP/f7f+E0F7+fxPNdw==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} - jest-resolve-dependencies@29.7.0: - resolution: {integrity: sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest-resolve-dependencies@28.1.3: + resolution: {integrity: sha512-qa0QO2Q0XzQoNPouMbCc7Bvtsem8eQgVPNkwn9LnS+R2n8DaVDPL/U1gngC0LTl1RYXJU0uJa2BMC2DbTfFrHA==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} - jest-resolve@29.7.0: - resolution: {integrity: sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest-resolve@28.1.3: + resolution: {integrity: sha512-Z1W3tTjE6QaNI90qo/BJpfnvpxtaFTFw5CDgwpyE/Kz8U/06N1Hjf4ia9quUhCh39qIGWF1ZuxFiBiJQwSEYKQ==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} - jest-runner@29.7.0: - resolution: {integrity: sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest-runner@28.1.3: + resolution: {integrity: sha512-GkMw4D/0USd62OVO0oEgjn23TM+YJa2U2Wu5zz9xsQB1MxWKDOlrnykPxnMsN0tnJllfLPinHTka61u0QhaxBA==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} - jest-runtime@29.7.0: - resolution: {integrity: sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest-runtime@28.1.3: + resolution: {integrity: sha512-NU+881ScBQQLc1JHG5eJGU7Ui3kLKrmwCPPtYsJtBykixrM2OhVQlpMmFWJjMyDfdkGgBMNjXCGB/ebzsgNGQw==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} - jest-snapshot@29.7.0: - resolution: {integrity: sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest-snapshot@28.1.3: + resolution: {integrity: sha512-4lzMgtiNlc3DU/8lZfmqxN3AYD6GGLbl+72rdBpXvcV+whX7mDrREzkPdp2RnmfIiWBg1YbuFSkXduF2JcafJg==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} jest-standard-reporter@2.0.0: resolution: {integrity: sha512-JhV3qzNzs5u/T1mzN9ivVrf2i4xYOQJgyPMKQbAmwRAZIprCpkikt8GF1kQKrP5ch1qBMn5xYyNdUUOKi8bltA==} @@ -6251,29 +6302,41 @@ packages: resolution: {integrity: sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==} engines: {node: '>= 10.14.2'} + jest-util@28.1.3: + resolution: {integrity: sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + jest-util@29.7.0: resolution: {integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest-validate@28.1.3: + resolution: {integrity: sha512-SZbOGBWEsaTxBGCOpsRWlXlvNkvTkY0XxRfh7zYmvd8uL5Qzyg0CHAXiXKROflh801quA6+/DsT4ODDthOC/OA==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + jest-validate@29.7.0: resolution: {integrity: sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest-watcher@29.7.0: - resolution: {integrity: sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest-watcher@28.1.3: + resolution: {integrity: sha512-t4qcqj9hze+jviFPUN3YAtAEeFnr/azITXQEMARf5cMwKY2SMBRnCQTXLixTl20OR6mLh9KLMrgVJgJISym+1g==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} jest-worker@26.6.2: resolution: {integrity: sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==} engines: {node: '>= 10.13.0'} + jest-worker@28.1.3: + resolution: {integrity: sha512-CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + jest-worker@29.7.0: resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - jest@29.7.0: - resolution: {integrity: sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest@28.1.3: + resolution: {integrity: sha512-N4GT5on8UkZgH0O5LUavMRV1EDEhNTL0KEfRmDIeZHSV7p2XgLoY9t9VDUgL6o+yfdgYHVxuz81G8oB9VG5uyA==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} hasBin: true peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 @@ -6321,9 +6384,9 @@ packages: peerDependencies: '@babel/preset-env': ^7.1.6 - jsdom@20.0.3: - resolution: {integrity: sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==} - engines: {node: '>=14'} + jsdom@19.0.0: + resolution: {integrity: sha512-RYAyjCbxy/vri/CfnjUWJQQtZ3LKlLnDqj+9XLNnJPgEGeirZs3hllKR20re8LUZ6o1b1X4Jat+Qd26zmP41+A==} + engines: {node: '>=12'} peerDependencies: canvas: ^2.5.0 peerDependenciesMeta: @@ -7188,6 +7251,9 @@ packages: resolution: {integrity: sha512-Tpb8Z7r7XbbtBTrM9UhpkzzaMrqA2VXMT3YChzYltwV3P3pM6t8wl7TvpMnSTosz1aQAdVib7kdoys7vYOPerw==} engines: {node: '>=12'} + parse5@6.0.1: + resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} + parse5@7.2.1: resolution: {integrity: sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==} @@ -7330,6 +7396,10 @@ packages: resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} + pretty-format@28.1.3: + resolution: {integrity: sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + pretty-format@29.7.0: resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -7408,9 +7478,6 @@ packages: typescript: optional: true - pure-rand@6.1.0: - resolution: {integrity: sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==} - qs@6.11.0: resolution: {integrity: sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==} engines: {node: '>=0.6'} @@ -7622,8 +7689,8 @@ packages: resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} engines: {node: '>=8'} - resolve.exports@2.0.2: - resolution: {integrity: sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==} + resolve.exports@1.1.1: + resolution: {integrity: sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==} engines: {node: '>=10'} resolve@1.22.8: @@ -7767,9 +7834,9 @@ packages: resolution: {integrity: sha512-wq89BtE7xb4ns7ApbgAshaUgXHlPoseytPTNwaVQNPwAaD+0klYpBrsCy/Lj77EJ+kf/vKvX1tjhRT67eDyCXg==} hasBin: true - saxes@6.0.0: - resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==} - engines: {node: '>=v12.22.7'} + saxes@5.0.1: + resolution: {integrity: sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==} + engines: {node: '>=10'} scheduler@0.24.0-canary-efb381bbf-20230505: resolution: {integrity: sha512-ABvovCDe/k9IluqSh4/ISoq8tIJnW8euVAWYt5j/bg6dRnqwQwiGO1F/V4AyK96NGF/FB04FhOUDuWj8IKfABA==} @@ -8135,6 +8202,10 @@ packages: resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} engines: {node: '>=10'} + supports-hyperlinks@2.3.0: + resolution: {integrity: sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==} + engines: {node: '>=8'} + supports-preserve-symlinks-flag@1.0.0: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} @@ -8181,6 +8252,10 @@ packages: resolution: {integrity: sha512-s0ZZzd0BzYv5tLSptZooSjK8oj6C+c19p7Vqta9+6NPOf7r+fxq0cJe6/oN4LTC79sy5NY8ucOJNgwsKCSbfqg==} engines: {node: '>=6.0.0'} + terminal-link@2.1.1: + resolution: {integrity: sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==} + engines: {node: '>=8'} + terser@5.31.6: resolution: {integrity: sha512-PQ4DAriWzKj+qgehQ7LK5bQqCFNMmlhjR2PFFLuqGCpuCAauxemVBWwWOxo3UIwWQx8+Pr61Df++r76wDmkQBg==} engines: {node: '>=10'} @@ -8260,23 +8335,20 @@ packages: peerDependencies: typescript: ^3.x || ^4.x - ts-jest@29.2.5: - resolution: {integrity: sha512-KD8zB2aAZrcKIdGk4OwpJggeLcH1FgrICqDSROWqlnJXGCXK4Mn6FcdK2B6670Xr73lHMG1kHw8R87A0ecZ+vA==} - engines: {node: ^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0} + ts-jest@28.0.8: + resolution: {integrity: sha512-5FaG0lXmRPzApix8oFG8RKjAz4ehtm8yMKOTy5HX3fY6W8kmvOrmcY0hKDElW52FJov+clhUbrKAqofnj4mXTg==} + engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} hasBin: true peerDependencies: '@babel/core': '>=7.0.0-beta.0 <8' - '@jest/transform': ^29.0.0 - '@jest/types': ^29.0.0 - babel-jest: ^29.0.0 + '@jest/types': ^28.0.0 + babel-jest: ^28.0.0 esbuild: '*' - jest: ^29.0.0 - typescript: '>=4.3 <6' + jest: ^28.0.0 + typescript: '>=4.3' peerDependenciesMeta: '@babel/core': optional: true - '@jest/transform': - optional: true '@jest/types': optional: true babel-jest: @@ -8523,9 +8595,13 @@ packages: vlq@1.0.1: resolution: {integrity: sha512-gQpnTgkubC6hQgdIcRdYGDSDc+SaujOdyesZQMv6JlfQee/9Mp0Qhnys6WxDWvQnL5WZdT7o2Ul187aSt0Rq+w==} - w3c-xmlserializer@4.0.0: - resolution: {integrity: sha512-d+BFHzbiCx6zGfz0HyQ6Rg69w9k19nviJspaj4yNscGjrHu94sVP+aRm75yEbCh+r2/yR+7q6hux9LVtbuTGBw==} - engines: {node: '>=14'} + w3c-hr-time@1.0.2: + resolution: {integrity: sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==} + deprecated: Use your platform's native performance.now() and performance.timeOrigin. + + w3c-xmlserializer@3.0.0: + resolution: {integrity: sha512-3WFqGEgSXIyGhOmAFtlicJNMjEps8b1MG31NCA0/vOF9+nKMUW1ckhi9cnNHmf88Rzw5V+dwIwsm2C7X8k9aQg==} + engines: {node: '>=12'} wait-port@1.1.0: resolution: {integrity: sha512-3e04qkoN3LxTMLakdqeWth8nih8usyg+sf1Bgdf9wwUkp05iuK1eSY/QpLvscT/+F/gA89+LpUmmgBtesbqI2Q==} @@ -8616,6 +8692,10 @@ packages: resolution: {integrity: sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==} engines: {node: '>=12'} + whatwg-url@10.0.0: + resolution: {integrity: sha512-CLxxCmdUby142H5FZzn4D8ikO1cmypvXVQktsgosNy4a4BHrDHeciBBGZhb0bNoR5/MltoCatso+vFjjGx8t0w==} + engines: {node: '>=12'} + whatwg-url@11.0.0: resolution: {integrity: sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==} engines: {node: '>=12'} @@ -9604,82 +9684,82 @@ snapshots: jest-util: 26.6.2 slash: 3.0.0 - '@jest/console@29.7.0': + '@jest/console@28.1.3': dependencies: - '@jest/types': 29.6.3 + '@jest/types': 28.1.3 '@types/node': 14.6.4 chalk: 4.1.2 - jest-message-util: 29.7.0 - jest-util: 29.7.0 + jest-message-util: 28.1.3 + jest-util: 28.1.3 slash: 3.0.0 - '@jest/core@29.7.0(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4))': + '@jest/core@28.1.3(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4))': dependencies: - '@jest/console': 29.7.0 - '@jest/reporters': 29.7.0 - '@jest/test-result': 29.7.0 - '@jest/transform': 29.7.0 - '@jest/types': 29.6.3 + '@jest/console': 28.1.3 + '@jest/reporters': 28.1.3 + '@jest/test-result': 28.1.3 + '@jest/transform': 28.1.3 + '@jest/types': 28.1.3 '@types/node': 14.6.4 ansi-escapes: 4.3.2 chalk: 4.1.2 ci-info: 3.9.0 exit: 0.1.2 graceful-fs: 4.2.11 - jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) - jest-haste-map: 29.7.0 - jest-message-util: 29.7.0 - jest-regex-util: 29.6.3 - jest-resolve: 29.7.0 - jest-resolve-dependencies: 29.7.0 - jest-runner: 29.7.0 - jest-runtime: 29.7.0 - jest-snapshot: 29.7.0 - jest-util: 29.7.0 - jest-validate: 29.7.0 - jest-watcher: 29.7.0 + jest-changed-files: 28.1.3 + jest-config: 28.1.3(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) + jest-haste-map: 28.1.3 + jest-message-util: 28.1.3 + jest-regex-util: 28.0.2 + jest-resolve: 28.1.3 + jest-resolve-dependencies: 28.1.3 + jest-runner: 28.1.3 + jest-runtime: 28.1.3 + jest-snapshot: 28.1.3 + jest-util: 28.1.3 + jest-validate: 28.1.3 + jest-watcher: 28.1.3 micromatch: 4.0.8 - pretty-format: 29.7.0 + pretty-format: 28.1.3 + rimraf: 3.0.2 slash: 3.0.0 strip-ansi: 6.0.1 transitivePeerDependencies: - - babel-plugin-macros - supports-color - ts-node - '@jest/core@29.7.0(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4))': + '@jest/core@28.1.3(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4))': dependencies: - '@jest/console': 29.7.0 - '@jest/reporters': 29.7.0 - '@jest/test-result': 29.7.0 - '@jest/transform': 29.7.0 - '@jest/types': 29.6.3 + '@jest/console': 28.1.3 + '@jest/reporters': 28.1.3 + '@jest/test-result': 28.1.3 + '@jest/transform': 28.1.3 + '@jest/types': 28.1.3 '@types/node': 14.6.4 ansi-escapes: 4.3.2 chalk: 4.1.2 ci-info: 3.9.0 exit: 0.1.2 graceful-fs: 4.2.11 - jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) - jest-haste-map: 29.7.0 - jest-message-util: 29.7.0 - jest-regex-util: 29.6.3 - jest-resolve: 29.7.0 - jest-resolve-dependencies: 29.7.0 - jest-runner: 29.7.0 - jest-runtime: 29.7.0 - jest-snapshot: 29.7.0 - jest-util: 29.7.0 - jest-validate: 29.7.0 - jest-watcher: 29.7.0 + jest-changed-files: 28.1.3 + jest-config: 28.1.3(@types/node@14.6.4)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + jest-haste-map: 28.1.3 + jest-message-util: 28.1.3 + jest-regex-util: 28.0.2 + jest-resolve: 28.1.3 + jest-resolve-dependencies: 28.1.3 + jest-runner: 28.1.3 + jest-runtime: 28.1.3 + jest-snapshot: 28.1.3 + jest-util: 28.1.3 + jest-validate: 28.1.3 + jest-watcher: 28.1.3 micromatch: 4.0.8 - pretty-format: 29.7.0 + pretty-format: 28.1.3 + rimraf: 3.0.2 slash: 3.0.0 strip-ansi: 6.0.1 transitivePeerDependencies: - - babel-plugin-macros - supports-color - ts-node @@ -9687,6 +9767,13 @@ snapshots: dependencies: '@jest/types': 29.6.3 + '@jest/environment@28.1.3': + dependencies: + '@jest/fake-timers': 28.1.3 + '@jest/types': 28.1.3 + '@types/node': 14.6.4 + jest-mock: 28.1.3 + '@jest/environment@29.7.0': dependencies: '@jest/fake-timers': 29.7.0 @@ -9694,17 +9781,30 @@ snapshots: '@types/node': 14.6.4 jest-mock: 29.7.0 + '@jest/expect-utils@28.1.3': + dependencies: + jest-get-type: 28.0.2 + '@jest/expect-utils@29.7.0': dependencies: jest-get-type: 29.6.3 - '@jest/expect@29.7.0': + '@jest/expect@28.1.3': dependencies: - expect: 29.7.0 - jest-snapshot: 29.7.0 + expect: 28.1.3 + jest-snapshot: 28.1.3 transitivePeerDependencies: - supports-color + '@jest/fake-timers@28.1.3': + dependencies: + '@jest/types': 28.1.3 + '@sinonjs/fake-timers': 9.1.2 + '@types/node': 14.6.4 + jest-message-util: 28.1.3 + jest-mock: 28.1.3 + jest-util: 28.1.3 + '@jest/fake-timers@29.7.0': dependencies: '@jest/types': 29.6.3 @@ -9714,22 +9814,21 @@ snapshots: jest-mock: 29.7.0 jest-util: 29.7.0 - '@jest/globals@29.7.0': + '@jest/globals@28.1.3': dependencies: - '@jest/environment': 29.7.0 - '@jest/expect': 29.7.0 - '@jest/types': 29.6.3 - jest-mock: 29.7.0 + '@jest/environment': 28.1.3 + '@jest/expect': 28.1.3 + '@jest/types': 28.1.3 transitivePeerDependencies: - supports-color - '@jest/reporters@29.7.0': + '@jest/reporters@28.1.3': dependencies: '@bcoe/v8-coverage': 0.2.3 - '@jest/console': 29.7.0 - '@jest/test-result': 29.7.0 - '@jest/transform': 29.7.0 - '@jest/types': 29.6.3 + '@jest/console': 28.1.3 + '@jest/test-result': 28.1.3 + '@jest/transform': 28.1.3 + '@jest/types': 28.1.3 '@jridgewell/trace-mapping': 0.3.25 '@types/node': 14.6.4 chalk: 4.1.2 @@ -9738,57 +9837,62 @@ snapshots: glob: 7.2.3 graceful-fs: 4.2.11 istanbul-lib-coverage: 3.2.2 - istanbul-lib-instrument: 6.0.3 + istanbul-lib-instrument: 5.2.1 istanbul-lib-report: 3.0.1 istanbul-lib-source-maps: 4.0.1 istanbul-reports: 3.1.7 - jest-message-util: 29.7.0 - jest-util: 29.7.0 - jest-worker: 29.7.0 + jest-message-util: 28.1.3 + jest-util: 28.1.3 + jest-worker: 28.1.3 slash: 3.0.0 string-length: 4.0.2 strip-ansi: 6.0.1 + terminal-link: 2.1.1 v8-to-istanbul: 9.3.0 transitivePeerDependencies: - supports-color + '@jest/schemas@28.1.3': + dependencies: + '@sinclair/typebox': 0.24.51 + '@jest/schemas@29.6.3': dependencies: '@sinclair/typebox': 0.27.8 - '@jest/source-map@29.6.3': + '@jest/source-map@28.1.2': dependencies: '@jridgewell/trace-mapping': 0.3.25 callsites: 3.1.0 graceful-fs: 4.2.11 - '@jest/test-result@29.7.0': + '@jest/test-result@28.1.3': dependencies: - '@jest/console': 29.7.0 - '@jest/types': 29.6.3 + '@jest/console': 28.1.3 + '@jest/types': 28.1.3 '@types/istanbul-lib-coverage': 2.0.6 collect-v8-coverage: 1.0.2 - '@jest/test-sequencer@29.7.0': + '@jest/test-sequencer@28.1.3': dependencies: - '@jest/test-result': 29.7.0 + '@jest/test-result': 28.1.3 graceful-fs: 4.2.11 - jest-haste-map: 29.7.0 + jest-haste-map: 28.1.3 slash: 3.0.0 - '@jest/transform@29.7.0': + '@jest/transform@28.1.3': dependencies: '@babel/core': 7.25.2 - '@jest/types': 29.6.3 + '@jest/types': 28.1.3 '@jridgewell/trace-mapping': 0.3.25 babel-plugin-istanbul: 6.1.1 chalk: 4.1.2 - convert-source-map: 2.0.0 + convert-source-map: 1.9.0 fast-json-stable-stringify: 2.1.0 graceful-fs: 4.2.11 - jest-haste-map: 29.7.0 - jest-regex-util: 29.6.3 - jest-util: 29.7.0 + jest-haste-map: 28.1.3 + jest-regex-util: 28.0.2 + jest-util: 28.1.3 micromatch: 4.0.8 pirates: 4.0.6 slash: 3.0.0 @@ -9804,6 +9908,15 @@ snapshots: '@types/yargs': 15.0.19 chalk: 4.1.2 + '@jest/types@28.1.3': + dependencies: + '@jest/schemas': 28.1.3 + '@types/istanbul-lib-coverage': 2.0.6 + '@types/istanbul-reports': 3.0.4 + '@types/node': 14.6.4 + '@types/yargs': 17.0.33 + chalk: 4.1.2 + '@jest/types@29.6.3': dependencies: '@jest/schemas': 29.6.3 @@ -10266,7 +10379,7 @@ snapshots: transitivePeerDependencies: - encoding - '@react-native/eslint-config@0.73.2(eslint@8.11.0)(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4)': + '@react-native/eslint-config@0.73.2(eslint@8.11.0)(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4)': dependencies: '@babel/core': 7.25.2 '@babel/eslint-parser': 7.25.9(@babel/core@7.25.2)(eslint@8.11.0) @@ -10277,7 +10390,7 @@ snapshots: eslint-config-prettier: 8.10.0(eslint@8.11.0) eslint-plugin-eslint-comments: 3.2.0(eslint@8.11.0) eslint-plugin-ft-flow: 2.0.3(@babel/eslint-parser@7.25.9(@babel/core@7.25.2)(eslint@8.11.0))(eslint@8.11.0) - eslint-plugin-jest: 26.9.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + eslint-plugin-jest: 26.9.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) eslint-plugin-prettier: 4.2.1(eslint-config-prettier@8.10.0(eslint@8.11.0))(eslint@8.11.0) eslint-plugin-react: 7.37.2(eslint@8.11.0) eslint-plugin-react-hooks: 4.6.2(eslint@8.11.0) @@ -10380,12 +10493,18 @@ snapshots: '@sideway/pinpoint@2.0.0': {} + '@sinclair/typebox@0.24.51': {} + '@sinclair/typebox@0.27.8': {} '@sindresorhus/is@4.6.0': {} '@sindresorhus/is@5.6.0': {} + '@sinonjs/commons@1.8.6': + dependencies: + type-detect: 4.0.8 + '@sinonjs/commons@3.0.1': dependencies: type-detect: 4.0.8 @@ -10394,6 +10513,10 @@ snapshots: dependencies: '@sinonjs/commons': 3.0.1 + '@sinonjs/fake-timers@9.1.2': + dependencies: + '@sinonjs/commons': 1.8.6 + '@szmarczak/http-timer@4.0.6': dependencies: defer-to-connect: 2.0.1 @@ -10490,10 +10613,10 @@ snapshots: dependencies: '@types/istanbul-lib-report': 3.0.3 - '@types/jest@29.5.14': + '@types/jest@28.1.8': dependencies: - expect: 29.7.0 - pretty-format: 29.7.0 + expect: 28.1.3 + pretty-format: 28.1.3 '@types/jsdom@16.2.15': dependencies: @@ -10501,7 +10624,7 @@ snapshots: '@types/parse5': 6.0.3 '@types/tough-cookie': 4.0.5 - '@types/jsdom@20.0.1': + '@types/jsdom@21.1.7': dependencies: '@types/node': 14.6.4 '@types/tough-cookie': 4.0.5 @@ -10539,6 +10662,8 @@ snapshots: '@types/parse5@6.0.3': {} + '@types/prettier@2.7.3': {} + '@types/prop-types@15.7.13': {} '@types/randomcolor@0.5.9': {} @@ -11018,10 +11143,10 @@ snapshots: mime-types: 2.1.35 negotiator: 0.6.3 - acorn-globals@7.0.1: + acorn-globals@6.0.0: dependencies: - acorn: 8.12.1 - acorn-walk: 8.3.3 + acorn: 7.3.1 + acorn-walk: 7.1.1 acorn-jsx@5.3.2(acorn@8.12.1): dependencies: @@ -11320,13 +11445,13 @@ snapshots: dependencies: '@babel/core': 7.25.2 - babel-jest@29.7.0(@babel/core@7.25.2): + babel-jest@28.1.3(@babel/core@7.25.2): dependencies: '@babel/core': 7.25.2 - '@jest/transform': 29.7.0 + '@jest/transform': 28.1.3 '@types/babel__core': 7.20.5 babel-plugin-istanbul: 6.1.1 - babel-preset-jest: 29.6.3(@babel/core@7.25.2) + babel-preset-jest: 28.1.3(@babel/core@7.25.2) chalk: 4.1.2 graceful-fs: 4.2.11 slash: 3.0.0 @@ -11343,7 +11468,7 @@ snapshots: transitivePeerDependencies: - supports-color - babel-plugin-jest-hoist@29.6.3: + babel-plugin-jest-hoist@28.1.3: dependencies: '@babel/template': 7.25.9 '@babel/types': 7.26.0 @@ -11403,10 +11528,10 @@ snapshots: '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.25.2) '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.25.2) - babel-preset-jest@29.6.3(@babel/core@7.25.2): + babel-preset-jest@28.1.3(@babel/core@7.25.2): dependencies: '@babel/core': 7.25.2 - babel-plugin-jest-hoist: 29.6.3 + babel-plugin-jest-hoist: 28.1.3 babel-preset-current-node-syntax: 1.1.0(@babel/core@7.25.2) balanced-match@1.0.2: {} @@ -11504,6 +11629,8 @@ snapshots: dependencies: duplexer: 0.1.1 + browser-process-hrtime@1.0.0: {} + browserslist-generator@1.0.66: dependencies: '@mdn/browser-compat-data': 4.2.1 @@ -11934,6 +12061,8 @@ snapshots: content-type@1.0.5: {} + convert-source-map@1.9.0: {} + convert-source-map@2.0.0: {} convert-to-spaces@2.0.1: {} @@ -11970,36 +12099,6 @@ snapshots: crc-32: 1.2.2 readable-stream: 4.5.2 - create-jest@29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)): - dependencies: - '@jest/types': 29.6.3 - chalk: 4.1.2 - exit: 0.1.2 - graceful-fs: 4.2.11 - jest-config: 29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) - jest-util: 29.7.0 - prompts: 2.4.2 - transitivePeerDependencies: - - '@types/node' - - babel-plugin-macros - - supports-color - - ts-node - - create-jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)): - dependencies: - '@jest/types': 29.6.3 - chalk: 4.1.2 - exit: 0.1.2 - graceful-fs: 4.2.11 - jest-config: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) - jest-util: 29.7.0 - prompts: 2.4.2 - transitivePeerDependencies: - - '@types/node' - - babel-plugin-macros - - supports-color - - ts-node - create-require@1.1.1: {} cross-fetch@4.0.0(encoding@0.1.13): @@ -12112,7 +12211,7 @@ snapshots: dependencies: mimic-response: 3.1.0 - dedent@1.5.3: {} + dedent@0.7.0: {} deep-equal@2.2.3: dependencies: @@ -12194,6 +12293,8 @@ snapshots: devtools-protocol@0.0.1302984: {} + diff-sequences@28.1.1: {} + diff-sequences@29.6.3: {} diff@4.0.2: {} @@ -12284,7 +12385,7 @@ snapshots: electron-to-chromium@1.5.50: {} - emittery@0.13.1: {} + emittery@0.10.2: {} emittery@1.0.3: {} @@ -12481,13 +12582,13 @@ snapshots: lodash: 4.17.21 string-natural-compare: 3.0.1 - eslint-plugin-jest@26.9.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4): + eslint-plugin-jest@26.9.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4): dependencies: '@typescript-eslint/utils': 5.15.0(eslint@8.11.0)(typescript@4.6.4) eslint: 8.11.0 optionalDependencies: '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) - jest: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + jest: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) transitivePeerDependencies: - supports-color - typescript @@ -12673,6 +12774,14 @@ snapshots: - typescript - utf-8-validate + expect@28.1.3: + dependencies: + '@jest/expect-utils': 28.1.3 + jest-get-type: 28.0.2 + jest-matcher-utils: 28.1.3 + jest-message-util: 28.1.3 + jest-util: 28.1.3 + expect@29.7.0: dependencies: '@jest/expect-utils': 29.7.0 @@ -13603,16 +13712,6 @@ snapshots: transitivePeerDependencies: - supports-color - istanbul-lib-instrument@6.0.3: - dependencies: - '@babel/core': 7.25.2 - '@babel/parser': 7.26.2 - '@istanbuljs/schema': 0.1.3 - istanbul-lib-coverage: 3.2.2 - semver: 7.6.3 - transitivePeerDependencies: - - supports-color - istanbul-lib-report@3.0.1: dependencies: istanbul-lib-coverage: 3.2.2 @@ -13660,169 +13759,170 @@ snapshots: glob: 10.4.5 jasmine-core: 5.2.0 - jest-changed-files@29.7.0: + jest-changed-files@28.1.3: dependencies: execa: 5.1.1 - jest-util: 29.7.0 p-limit: 3.1.0 - jest-circus@29.7.0: + jest-circus@28.1.3: dependencies: - '@jest/environment': 29.7.0 - '@jest/expect': 29.7.0 - '@jest/test-result': 29.7.0 - '@jest/types': 29.6.3 + '@jest/environment': 28.1.3 + '@jest/expect': 28.1.3 + '@jest/test-result': 28.1.3 + '@jest/types': 28.1.3 '@types/node': 14.6.4 chalk: 4.1.2 co: 4.6.0 - dedent: 1.5.3 + dedent: 0.7.0 is-generator-fn: 2.1.0 - jest-each: 29.7.0 - jest-matcher-utils: 29.7.0 - jest-message-util: 29.7.0 - jest-runtime: 29.7.0 - jest-snapshot: 29.7.0 - jest-util: 29.7.0 + jest-each: 28.1.3 + jest-matcher-utils: 28.1.3 + jest-message-util: 28.1.3 + jest-runtime: 28.1.3 + jest-snapshot: 28.1.3 + jest-util: 28.1.3 p-limit: 3.1.0 - pretty-format: 29.7.0 - pure-rand: 6.1.0 + pretty-format: 28.1.3 slash: 3.0.0 stack-utils: 2.0.6 transitivePeerDependencies: - - babel-plugin-macros - supports-color - jest-cli@29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)): + jest-cli@28.1.3(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) - '@jest/test-result': 29.7.0 - '@jest/types': 29.6.3 + '@jest/core': 28.1.3(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) + '@jest/test-result': 28.1.3 + '@jest/types': 28.1.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) exit: 0.1.2 + graceful-fs: 4.2.11 import-local: 3.2.0 - jest-config: 29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) - jest-util: 29.7.0 - jest-validate: 29.7.0 + jest-config: 28.1.3(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) + jest-util: 28.1.3 + jest-validate: 28.1.3 + prompts: 2.4.2 yargs: 17.7.2 transitivePeerDependencies: - '@types/node' - - babel-plugin-macros - supports-color - ts-node - jest-cli@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)): + jest-cli@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) - '@jest/test-result': 29.7.0 - '@jest/types': 29.6.3 + '@jest/core': 28.1.3(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + '@jest/test-result': 28.1.3 + '@jest/types': 28.1.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) exit: 0.1.2 + graceful-fs: 4.2.11 import-local: 3.2.0 - jest-config: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) - jest-util: 29.7.0 - jest-validate: 29.7.0 + jest-config: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + jest-util: 28.1.3 + jest-validate: 28.1.3 + prompts: 2.4.2 yargs: 17.7.2 transitivePeerDependencies: - '@types/node' - - babel-plugin-macros - supports-color - ts-node - jest-config@29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)): + jest-config@28.1.3(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)): dependencies: '@babel/core': 7.25.2 - '@jest/test-sequencer': 29.7.0 - '@jest/types': 29.6.3 - babel-jest: 29.7.0(@babel/core@7.25.2) + '@jest/test-sequencer': 28.1.3 + '@jest/types': 28.1.3 + babel-jest: 28.1.3(@babel/core@7.25.2) chalk: 4.1.2 ci-info: 3.9.0 deepmerge: 4.3.1 glob: 7.2.3 graceful-fs: 4.2.11 - jest-circus: 29.7.0 - jest-environment-node: 29.7.0 - jest-get-type: 29.6.3 - jest-regex-util: 29.6.3 - jest-resolve: 29.7.0 - jest-runner: 29.7.0 - jest-util: 29.7.0 - jest-validate: 29.7.0 + jest-circus: 28.1.3 + jest-environment-node: 28.1.3 + jest-get-type: 28.0.2 + jest-regex-util: 28.0.2 + jest-resolve: 28.1.3 + jest-runner: 28.1.3 + jest-util: 28.1.3 + jest-validate: 28.1.3 micromatch: 4.0.8 parse-json: 5.2.0 - pretty-format: 29.7.0 + pretty-format: 28.1.3 slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 14.6.4 ts-node: 10.9.2(@types/node@14.6.4)(typescript@4.6.4) transitivePeerDependencies: - - babel-plugin-macros - supports-color - jest-config@29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)): + jest-config@28.1.3(@types/node@14.6.4)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)): dependencies: '@babel/core': 7.25.2 - '@jest/test-sequencer': 29.7.0 - '@jest/types': 29.6.3 - babel-jest: 29.7.0(@babel/core@7.25.2) + '@jest/test-sequencer': 28.1.3 + '@jest/types': 28.1.3 + babel-jest: 28.1.3(@babel/core@7.25.2) chalk: 4.1.2 ci-info: 3.9.0 deepmerge: 4.3.1 glob: 7.2.3 graceful-fs: 4.2.11 - jest-circus: 29.7.0 - jest-environment-node: 29.7.0 - jest-get-type: 29.6.3 - jest-regex-util: 29.6.3 - jest-resolve: 29.7.0 - jest-runner: 29.7.0 - jest-util: 29.7.0 - jest-validate: 29.7.0 + jest-circus: 28.1.3 + jest-environment-node: 28.1.3 + jest-get-type: 28.0.2 + jest-regex-util: 28.0.2 + jest-resolve: 28.1.3 + jest-runner: 28.1.3 + jest-util: 28.1.3 + jest-validate: 28.1.3 micromatch: 4.0.8 parse-json: 5.2.0 - pretty-format: 29.7.0 + pretty-format: 28.1.3 slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 14.6.4 ts-node: 10.9.2(@types/node@20.16.3)(typescript@4.6.4) transitivePeerDependencies: - - babel-plugin-macros - supports-color - jest-config@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)): + jest-config@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)): dependencies: '@babel/core': 7.25.2 - '@jest/test-sequencer': 29.7.0 - '@jest/types': 29.6.3 - babel-jest: 29.7.0(@babel/core@7.25.2) + '@jest/test-sequencer': 28.1.3 + '@jest/types': 28.1.3 + babel-jest: 28.1.3(@babel/core@7.25.2) chalk: 4.1.2 ci-info: 3.9.0 deepmerge: 4.3.1 glob: 7.2.3 graceful-fs: 4.2.11 - jest-circus: 29.7.0 - jest-environment-node: 29.7.0 - jest-get-type: 29.6.3 - jest-regex-util: 29.6.3 - jest-resolve: 29.7.0 - jest-runner: 29.7.0 - jest-util: 29.7.0 - jest-validate: 29.7.0 + jest-circus: 28.1.3 + jest-environment-node: 28.1.3 + jest-get-type: 28.0.2 + jest-regex-util: 28.0.2 + jest-resolve: 28.1.3 + jest-runner: 28.1.3 + jest-util: 28.1.3 + jest-validate: 28.1.3 micromatch: 4.0.8 parse-json: 5.2.0 - pretty-format: 29.7.0 + pretty-format: 28.1.3 slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 20.16.3 ts-node: 10.9.2(@types/node@20.16.3)(typescript@4.6.4) transitivePeerDependencies: - - babel-plugin-macros - supports-color + jest-diff@28.1.3: + dependencies: + chalk: 4.1.2 + diff-sequences: 28.1.1 + jest-get-type: 28.0.2 + pretty-format: 28.1.3 + jest-diff@29.7.0: dependencies: chalk: 4.1.2 @@ -13830,37 +13930,47 @@ snapshots: jest-get-type: 29.6.3 pretty-format: 29.7.0 - jest-docblock@29.7.0: + jest-docblock@28.1.1: dependencies: detect-newline: 3.1.0 - jest-each@29.7.0: + jest-each@28.1.3: dependencies: - '@jest/types': 29.6.3 + '@jest/types': 28.1.3 chalk: 4.1.2 - jest-get-type: 29.6.3 - jest-util: 29.7.0 - pretty-format: 29.7.0 + jest-get-type: 28.0.2 + jest-util: 28.1.3 + pretty-format: 28.1.3 - jest-environment-jsdom-global@4.0.0(jest-environment-jsdom@29.7.0): + jest-environment-jsdom-global@4.0.0(jest-environment-jsdom@28.1.3): dependencies: - jest-environment-jsdom: 29.7.0 + jest-environment-jsdom: 28.1.3 - jest-environment-jsdom@29.7.0: + jest-environment-jsdom@28.1.3: dependencies: - '@jest/environment': 29.7.0 - '@jest/fake-timers': 29.7.0 - '@jest/types': 29.6.3 - '@types/jsdom': 20.0.1 + '@jest/environment': 28.1.3 + '@jest/fake-timers': 28.1.3 + '@jest/types': 28.1.3 + '@types/jsdom': 16.2.15 '@types/node': 14.6.4 - jest-mock: 29.7.0 - jest-util: 29.7.0 - jsdom: 20.0.3 + jest-mock: 28.1.3 + jest-util: 28.1.3 + jsdom: 19.0.0 transitivePeerDependencies: - bufferutil + - canvas - supports-color - utf-8-validate + jest-environment-node@28.1.3: + dependencies: + '@jest/environment': 28.1.3 + '@jest/fake-timers': 28.1.3 + '@jest/types': 28.1.3 + '@types/node': 14.6.4 + jest-mock: 28.1.3 + jest-util: 28.1.3 + jest-environment-node@29.7.0: dependencies: '@jest/environment': 29.7.0 @@ -13870,28 +13980,37 @@ snapshots: jest-mock: 29.7.0 jest-util: 29.7.0 + jest-get-type@28.0.2: {} + jest-get-type@29.6.3: {} - jest-haste-map@29.7.0: + jest-haste-map@28.1.3: dependencies: - '@jest/types': 29.6.3 + '@jest/types': 28.1.3 '@types/graceful-fs': 4.1.9 '@types/node': 14.6.4 anymatch: 3.1.3 fb-watchman: 2.0.2 graceful-fs: 4.2.11 - jest-regex-util: 29.6.3 - jest-util: 29.7.0 - jest-worker: 29.7.0 + jest-regex-util: 28.0.2 + jest-util: 28.1.3 + jest-worker: 28.1.3 micromatch: 4.0.8 walker: 1.0.8 optionalDependencies: fsevents: 2.3.3 - jest-leak-detector@29.7.0: + jest-leak-detector@28.1.3: dependencies: - jest-get-type: 29.6.3 - pretty-format: 29.7.0 + jest-get-type: 28.0.2 + pretty-format: 28.1.3 + + jest-matcher-utils@28.1.3: + dependencies: + chalk: 4.1.2 + jest-diff: 28.1.3 + jest-get-type: 28.0.2 + pretty-format: 28.1.3 jest-matcher-utils@29.7.0: dependencies: @@ -13912,6 +14031,18 @@ snapshots: slash: 3.0.0 stack-utils: 2.0.6 + jest-message-util@28.1.3: + dependencies: + '@babel/code-frame': 7.26.2 + '@jest/types': 28.1.3 + '@types/stack-utils': 2.0.3 + chalk: 4.1.2 + graceful-fs: 4.2.11 + micromatch: 4.0.8 + pretty-format: 28.1.3 + slash: 3.0.0 + stack-utils: 2.0.6 + jest-message-util@29.7.0: dependencies: '@babel/code-frame': 7.26.2 @@ -13924,111 +14055,119 @@ snapshots: slash: 3.0.0 stack-utils: 2.0.6 + jest-mock@28.1.3: + dependencies: + '@jest/types': 28.1.3 + '@types/node': 14.6.4 + jest-mock@29.7.0: dependencies: '@jest/types': 29.6.3 '@types/node': 14.6.4 jest-util: 29.7.0 - jest-pnp-resolver@1.2.3(jest-resolve@29.7.0): + jest-pnp-resolver@1.2.3(jest-resolve@28.1.3): optionalDependencies: - jest-resolve: 29.7.0 + jest-resolve: 28.1.3 - jest-regex-util@29.6.3: {} + jest-regex-util@28.0.2: {} - jest-resolve-dependencies@29.7.0: + jest-resolve-dependencies@28.1.3: dependencies: - jest-regex-util: 29.6.3 - jest-snapshot: 29.7.0 + jest-regex-util: 28.0.2 + jest-snapshot: 28.1.3 transitivePeerDependencies: - supports-color - jest-resolve@29.7.0: + jest-resolve@28.1.3: dependencies: chalk: 4.1.2 graceful-fs: 4.2.11 - jest-haste-map: 29.7.0 - jest-pnp-resolver: 1.2.3(jest-resolve@29.7.0) - jest-util: 29.7.0 - jest-validate: 29.7.0 + jest-haste-map: 28.1.3 + jest-pnp-resolver: 1.2.3(jest-resolve@28.1.3) + jest-util: 28.1.3 + jest-validate: 28.1.3 resolve: 1.22.8 - resolve.exports: 2.0.2 + resolve.exports: 1.1.1 slash: 3.0.0 - jest-runner@29.7.0: + jest-runner@28.1.3: dependencies: - '@jest/console': 29.7.0 - '@jest/environment': 29.7.0 - '@jest/test-result': 29.7.0 - '@jest/transform': 29.7.0 - '@jest/types': 29.6.3 + '@jest/console': 28.1.3 + '@jest/environment': 28.1.3 + '@jest/test-result': 28.1.3 + '@jest/transform': 28.1.3 + '@jest/types': 28.1.3 '@types/node': 14.6.4 chalk: 4.1.2 - emittery: 0.13.1 + emittery: 0.10.2 graceful-fs: 4.2.11 - jest-docblock: 29.7.0 - jest-environment-node: 29.7.0 - jest-haste-map: 29.7.0 - jest-leak-detector: 29.7.0 - jest-message-util: 29.7.0 - jest-resolve: 29.7.0 - jest-runtime: 29.7.0 - jest-util: 29.7.0 - jest-watcher: 29.7.0 - jest-worker: 29.7.0 + jest-docblock: 28.1.1 + jest-environment-node: 28.1.3 + jest-haste-map: 28.1.3 + jest-leak-detector: 28.1.3 + jest-message-util: 28.1.3 + jest-resolve: 28.1.3 + jest-runtime: 28.1.3 + jest-util: 28.1.3 + jest-watcher: 28.1.3 + jest-worker: 28.1.3 p-limit: 3.1.0 source-map-support: 0.5.13 transitivePeerDependencies: - supports-color - jest-runtime@29.7.0: + jest-runtime@28.1.3: dependencies: - '@jest/environment': 29.7.0 - '@jest/fake-timers': 29.7.0 - '@jest/globals': 29.7.0 - '@jest/source-map': 29.6.3 - '@jest/test-result': 29.7.0 - '@jest/transform': 29.7.0 - '@jest/types': 29.6.3 - '@types/node': 14.6.4 + '@jest/environment': 28.1.3 + '@jest/fake-timers': 28.1.3 + '@jest/globals': 28.1.3 + '@jest/source-map': 28.1.2 + '@jest/test-result': 28.1.3 + '@jest/transform': 28.1.3 + '@jest/types': 28.1.3 chalk: 4.1.2 cjs-module-lexer: 1.4.0 collect-v8-coverage: 1.0.2 + execa: 5.1.1 glob: 7.2.3 graceful-fs: 4.2.11 - jest-haste-map: 29.7.0 - jest-message-util: 29.7.0 - jest-mock: 29.7.0 - jest-regex-util: 29.6.3 - jest-resolve: 29.7.0 - jest-snapshot: 29.7.0 - jest-util: 29.7.0 + jest-haste-map: 28.1.3 + jest-message-util: 28.1.3 + jest-mock: 28.1.3 + jest-regex-util: 28.0.2 + jest-resolve: 28.1.3 + jest-snapshot: 28.1.3 + jest-util: 28.1.3 slash: 3.0.0 strip-bom: 4.0.0 transitivePeerDependencies: - supports-color - jest-snapshot@29.7.0: + jest-snapshot@28.1.3: dependencies: '@babel/core': 7.25.2 '@babel/generator': 7.26.2 - '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.25.2) '@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.25.2) + '@babel/traverse': 7.25.9 '@babel/types': 7.26.0 - '@jest/expect-utils': 29.7.0 - '@jest/transform': 29.7.0 - '@jest/types': 29.6.3 + '@jest/expect-utils': 28.1.3 + '@jest/transform': 28.1.3 + '@jest/types': 28.1.3 + '@types/babel__traverse': 7.20.6 + '@types/prettier': 2.7.3 babel-preset-current-node-syntax: 1.1.0(@babel/core@7.25.2) chalk: 4.1.2 - expect: 29.7.0 + expect: 28.1.3 graceful-fs: 4.2.11 - jest-diff: 29.7.0 - jest-get-type: 29.6.3 - jest-matcher-utils: 29.7.0 - jest-message-util: 29.7.0 - jest-util: 29.7.0 + jest-diff: 28.1.3 + jest-get-type: 28.0.2 + jest-haste-map: 28.1.3 + jest-matcher-utils: 28.1.3 + jest-message-util: 28.1.3 + jest-util: 28.1.3 natural-compare: 1.4.0 - pretty-format: 29.7.0 + pretty-format: 28.1.3 semver: 7.6.3 transitivePeerDependencies: - supports-color @@ -14051,6 +14190,15 @@ snapshots: is-ci: 2.0.0 micromatch: 4.0.8 + jest-util@28.1.3: + dependencies: + '@jest/types': 28.1.3 + '@types/node': 14.6.4 + chalk: 4.1.2 + ci-info: 3.9.0 + graceful-fs: 4.2.11 + picomatch: 2.3.1 + jest-util@29.7.0: dependencies: '@jest/types': 29.6.3 @@ -14060,6 +14208,15 @@ snapshots: graceful-fs: 4.2.11 picomatch: 2.3.1 + jest-validate@28.1.3: + dependencies: + '@jest/types': 28.1.3 + camelcase: 6.3.0 + chalk: 4.1.2 + jest-get-type: 28.0.2 + leven: 3.1.0 + pretty-format: 28.1.3 + jest-validate@29.7.0: dependencies: '@jest/types': 29.6.3 @@ -14069,15 +14226,15 @@ snapshots: leven: 3.1.0 pretty-format: 29.7.0 - jest-watcher@29.7.0: + jest-watcher@28.1.3: dependencies: - '@jest/test-result': 29.7.0 - '@jest/types': 29.6.3 + '@jest/test-result': 28.1.3 + '@jest/types': 28.1.3 '@types/node': 14.6.4 ansi-escapes: 4.3.2 chalk: 4.1.2 - emittery: 0.13.1 - jest-util: 29.7.0 + emittery: 0.10.2 + jest-util: 28.1.3 string-length: 4.0.2 jest-worker@26.6.2: @@ -14086,6 +14243,12 @@ snapshots: merge-stream: 2.0.0 supports-color: 7.2.0 + jest-worker@28.1.3: + dependencies: + '@types/node': 14.6.4 + merge-stream: 2.0.0 + supports-color: 8.1.1 + jest-worker@29.7.0: dependencies: '@types/node': 14.6.4 @@ -14093,27 +14256,25 @@ snapshots: merge-stream: 2.0.0 supports-color: 8.1.1 - jest@29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)): + jest@28.1.3(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) - '@jest/types': 29.6.3 + '@jest/core': 28.1.3(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) + '@jest/types': 28.1.3 import-local: 3.2.0 - jest-cli: 29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) + jest-cli: 28.1.3(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) transitivePeerDependencies: - '@types/node' - - babel-plugin-macros - supports-color - ts-node - jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)): + jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) - '@jest/types': 29.6.3 + '@jest/core': 28.1.3(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + '@jest/types': 28.1.3 import-local: 3.2.0 - jest-cli: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + jest-cli: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) transitivePeerDependencies: - '@types/node' - - babel-plugin-macros - supports-color - ts-node @@ -14176,11 +14337,11 @@ snapshots: transitivePeerDependencies: - supports-color - jsdom@20.0.3: + jsdom@19.0.0: dependencies: abab: 2.0.6 acorn: 8.12.1 - acorn-globals: 7.0.1 + acorn-globals: 6.0.0 cssom: 0.5.0 cssstyle: 2.3.0 data-urls: 3.0.2 @@ -14193,15 +14354,16 @@ snapshots: https-proxy-agent: 5.0.1 is-potential-custom-element-name: 1.0.1 nwsapi: 2.2.12 - parse5: 7.2.1 - saxes: 6.0.0 + parse5: 6.0.1 + saxes: 5.0.1 symbol-tree: 3.2.4 tough-cookie: 4.1.4 - w3c-xmlserializer: 4.0.0 + w3c-hr-time: 1.0.2 + w3c-xmlserializer: 3.0.0 webidl-conversions: 7.0.0 whatwg-encoding: 2.0.0 whatwg-mimetype: 3.0.0 - whatwg-url: 11.0.0 + whatwg-url: 10.0.0 ws: 8.18.0 xml-name-validator: 4.0.0 transitivePeerDependencies: @@ -15185,6 +15347,8 @@ snapshots: parse-ms@3.0.0: {} + parse5@6.0.1: {} + parse5@7.2.1: dependencies: entities: 4.5.0 @@ -15302,6 +15466,13 @@ snapshots: ansi-styles: 5.2.0 react-is: 17.0.2 + pretty-format@28.1.3: + dependencies: + '@jest/schemas': 28.1.3 + ansi-regex: 5.0.1 + ansi-styles: 5.2.0 + react-is: 18.3.1 + pretty-format@29.7.0: dependencies: '@jest/schemas': 29.6.3 @@ -15415,8 +15586,6 @@ snapshots: - supports-color - utf-8-validate - pure-rand@6.1.0: {} - qs@6.11.0: dependencies: side-channel: 1.0.6 @@ -15698,7 +15867,7 @@ snapshots: resolve-from@5.0.0: {} - resolve.exports@2.0.2: {} + resolve.exports@1.1.1: {} resolve@1.22.8: dependencies: @@ -15860,7 +16029,7 @@ snapshots: tunnel: 0.0.6 yargs: 17.7.2 - saxes@6.0.0: + saxes@5.0.1: dependencies: xmlchars: 2.2.0 @@ -16271,6 +16440,11 @@ snapshots: dependencies: has-flag: 4.0.0 + supports-hyperlinks@2.3.0: + dependencies: + has-flag: 4.0.0 + supports-color: 7.2.0 + supports-preserve-symlinks-flag@1.0.0: {} symbol-tree@3.2.4: {} @@ -16344,6 +16518,11 @@ snapshots: dependencies: rimraf: 2.6.3 + terminal-link@2.1.1: + dependencies: + ansi-escapes: 4.3.2 + supports-hyperlinks: 2.3.0 + terser@5.31.6: dependencies: '@jridgewell/source-map': 0.3.6 @@ -16419,13 +16598,12 @@ snapshots: compatfactory: 0.0.13(typescript@4.6.4) typescript: 4.6.4 - ts-jest@29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)))(typescript@4.6.4): + ts-jest@28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)))(typescript@4.6.4): dependencies: bs-logger: 0.2.6 - ejs: 3.1.10 fast-json-stable-stringify: 2.1.0 - jest: 29.7.0(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) - jest-util: 29.7.0 + jest: 28.1.3(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) + jest-util: 28.1.3 json5: 2.2.3 lodash.memoize: 4.1.2 make-error: 1.3.6 @@ -16434,17 +16612,15 @@ snapshots: yargs-parser: 21.1.1 optionalDependencies: '@babel/core': 7.25.2 - '@jest/transform': 29.7.0 - '@jest/types': 29.6.3 - babel-jest: 29.7.0(@babel/core@7.25.2) + '@jest/types': 28.1.3 + babel-jest: 28.1.3(@babel/core@7.25.2) - ts-jest@29.2.5(@babel/core@7.25.2)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.2))(jest@29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4): + ts-jest@28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4): dependencies: bs-logger: 0.2.6 - ejs: 3.1.10 fast-json-stable-stringify: 2.1.0 - jest: 29.7.0(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) - jest-util: 29.7.0 + jest: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + jest-util: 28.1.3 json5: 2.2.3 lodash.memoize: 4.1.2 make-error: 1.3.6 @@ -16453,9 +16629,8 @@ snapshots: yargs-parser: 21.1.1 optionalDependencies: '@babel/core': 7.25.2 - '@jest/transform': 29.7.0 - '@jest/types': 29.6.3 - babel-jest: 29.7.0(@babel/core@7.25.2) + '@jest/types': 28.1.3 + babel-jest: 28.1.3(@babel/core@7.25.2) ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4): dependencies: @@ -16704,7 +16879,11 @@ snapshots: vlq@1.0.1: {} - w3c-xmlserializer@4.0.0: + w3c-hr-time@1.0.2: + dependencies: + browser-process-hrtime: 1.0.0 + + w3c-xmlserializer@3.0.0: dependencies: xml-name-validator: 4.0.0 @@ -16836,6 +17015,11 @@ snapshots: whatwg-mimetype@3.0.0: {} + whatwg-url@10.0.0: + dependencies: + tr46: 3.0.0 + webidl-conversions: 7.0.0 + whatwg-url@11.0.0: dependencies: tr46: 3.0.0 diff --git a/common/config/rush/repo-state.json b/common/config/rush/repo-state.json index f63c5fae4..5d85a878b 100644 --- a/common/config/rush/repo-state.json +++ b/common/config/rush/repo-state.json @@ -1,5 +1,5 @@ // DO NOT MODIFY THIS FILE MANUALLY BUT DO COMMIT IT. It is generated and used by Rush. { - "pnpmShrinkwrapHash": "198df4bff51d6971dfe31a0dc821da2625a97ad9", + "pnpmShrinkwrapHash": "92e47003e2ad1b5456251728695c6b059df935d5", "preferredVersionsHash": "bf21a9e8fbc5a3846fb05b4fa0859e0917b2202f" } diff --git a/libraries/browser-tracker-core/package.json b/libraries/browser-tracker-core/package.json index 86e3d1641..7e770d497 100644 --- a/libraries/browser-tracker-core/package.json +++ b/libraries/browser-tracker-core/package.json @@ -31,15 +31,15 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@types/sha1": "~1.1.3", "@types/uuid": "^10.0.0", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", @@ -47,7 +47,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2", "@testing-library/dom": "~9.3.1", "whatwg-fetch": "~3.6.20" diff --git a/libraries/browser-tracker-core/test/tracker/cross_domain.test.ts b/libraries/browser-tracker-core/test/tracker/cross_domain.test.ts index cf7748e9f..c069fba6f 100644 --- a/libraries/browser-tracker-core/test/tracker/cross_domain.test.ts +++ b/libraries/browser-tracker-core/test/tracker/cross_domain.test.ts @@ -22,7 +22,7 @@ describe('Cross-domain linking: ', () => { const standardDate = new Date(2023, 1, 1); beforeAll(() => { - jest.useFakeTimers('modern'); + jest.useFakeTimers(); jest.setSystemTime(standardDate); }); diff --git a/libraries/browser-tracker-core/test/tracker/session_data.test.ts b/libraries/browser-tracker-core/test/tracker/session_data.test.ts index 2994063ba..97f58aa7d 100644 --- a/libraries/browser-tracker-core/test/tracker/session_data.test.ts +++ b/libraries/browser-tracker-core/test/tracker/session_data.test.ts @@ -35,7 +35,7 @@ jest.spyOn(uuid, 'v4').mockReturnValue(MOCK_UUID); import { createTestIdCookie, createTestSessionIdCookie, createTracker } from '../helpers'; -jest.useFakeTimers('modern'); +jest.useFakeTimers(); describe('Tracker API: ', () => { let cookieJar: string; diff --git a/plugins/browser-plugin-ad-tracking/package.json b/plugins/browser-plugin-ad-tracking/package.json index f304b7fb9..000c02c38 100644 --- a/plugins/browser-plugin-ad-tracking/package.json +++ b/plugins/browser-plugin-ad-tracking/package.json @@ -30,14 +30,14 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", @@ -46,7 +46,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-button-click-tracking/package.json b/plugins/browser-plugin-button-click-tracking/package.json index 58ad05c7e..41a361a3e 100644 --- a/plugins/browser-plugin-button-click-tracking/package.json +++ b/plugins/browser-plugin-button-click-tracking/package.json @@ -30,14 +30,14 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", @@ -46,7 +46,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-client-hints/jest.config.js b/plugins/browser-plugin-client-hints/jest.config.js index bd3ea4e2a..87d15da9b 100644 --- a/plugins/browser-plugin-client-hints/jest.config.js +++ b/plugins/browser-plugin-client-hints/jest.config.js @@ -1,5 +1,6 @@ module.exports = { preset: 'ts-jest', reporters: ['jest-standard-reporter'], + setupFilesAfterEnv: ['../../setupTestGlobals.ts'], testEnvironment: 'jest-environment-jsdom-global', }; diff --git a/plugins/browser-plugin-client-hints/package.json b/plugins/browser-plugin-client-hints/package.json index ffd0ea5ac..a91bbd30b 100644 --- a/plugins/browser-plugin-client-hints/package.json +++ b/plugins/browser-plugin-client-hints/package.json @@ -30,13 +30,13 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@snowplow/tracker-core": "workspace:*", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", @@ -44,7 +44,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-debugger/package.json b/plugins/browser-plugin-debugger/package.json index afc8f4814..7c9c0a549 100644 --- a/plugins/browser-plugin-debugger/package.json +++ b/plugins/browser-plugin-debugger/package.json @@ -31,14 +31,14 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@types/randomcolor": "~0.5.5", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", @@ -46,7 +46,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-enhanced-consent/package.json b/plugins/browser-plugin-enhanced-consent/package.json index 458e58d43..02c6310c8 100644 --- a/plugins/browser-plugin-enhanced-consent/package.json +++ b/plugins/browser-plugin-enhanced-consent/package.json @@ -29,14 +29,14 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", @@ -45,7 +45,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-enhanced-ecommerce/package.json b/plugins/browser-plugin-enhanced-ecommerce/package.json index 0e29d933d..756b742fe 100644 --- a/plugins/browser-plugin-enhanced-ecommerce/package.json +++ b/plugins/browser-plugin-enhanced-ecommerce/package.json @@ -30,14 +30,14 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", @@ -46,7 +46,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-error-tracking/package.json b/plugins/browser-plugin-error-tracking/package.json index 3005cf795..84a6e4e52 100644 --- a/plugins/browser-plugin-error-tracking/package.json +++ b/plugins/browser-plugin-error-tracking/package.json @@ -30,14 +30,14 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", @@ -46,7 +46,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-event-specifications/jest.config.js b/plugins/browser-plugin-event-specifications/jest.config.js index bd3ea4e2a..87d15da9b 100644 --- a/plugins/browser-plugin-event-specifications/jest.config.js +++ b/plugins/browser-plugin-event-specifications/jest.config.js @@ -1,5 +1,6 @@ module.exports = { preset: 'ts-jest', reporters: ['jest-standard-reporter'], + setupFilesAfterEnv: ['../../setupTestGlobals.ts'], testEnvironment: 'jest-environment-jsdom-global', }; diff --git a/plugins/browser-plugin-event-specifications/package.json b/plugins/browser-plugin-event-specifications/package.json index ae00fb0b2..17b9efbed 100644 --- a/plugins/browser-plugin-event-specifications/package.json +++ b/plugins/browser-plugin-event-specifications/package.json @@ -30,13 +30,13 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", @@ -44,7 +44,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-focalmeter/package.json b/plugins/browser-plugin-focalmeter/package.json index d8ea7bc01..56d299e28 100644 --- a/plugins/browser-plugin-focalmeter/package.json +++ b/plugins/browser-plugin-focalmeter/package.json @@ -30,13 +30,13 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", @@ -44,7 +44,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-form-tracking/package.json b/plugins/browser-plugin-form-tracking/package.json index 76c4e9059..0cb1de1a0 100644 --- a/plugins/browser-plugin-form-tracking/package.json +++ b/plugins/browser-plugin-form-tracking/package.json @@ -30,13 +30,13 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", @@ -44,7 +44,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-ga-cookies/jest.config.js b/plugins/browser-plugin-ga-cookies/jest.config.js index bd3ea4e2a..87d15da9b 100644 --- a/plugins/browser-plugin-ga-cookies/jest.config.js +++ b/plugins/browser-plugin-ga-cookies/jest.config.js @@ -1,5 +1,6 @@ module.exports = { preset: 'ts-jest', reporters: ['jest-standard-reporter'], + setupFilesAfterEnv: ['../../setupTestGlobals.ts'], testEnvironment: 'jest-environment-jsdom-global', }; diff --git a/plugins/browser-plugin-ga-cookies/package.json b/plugins/browser-plugin-ga-cookies/package.json index 186e404b6..0552dcab9 100644 --- a/plugins/browser-plugin-ga-cookies/package.json +++ b/plugins/browser-plugin-ga-cookies/package.json @@ -30,13 +30,13 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", @@ -44,7 +44,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-geolocation/package.json b/plugins/browser-plugin-geolocation/package.json index b7c4b6c6e..e9f747993 100644 --- a/plugins/browser-plugin-geolocation/package.json +++ b/plugins/browser-plugin-geolocation/package.json @@ -30,13 +30,13 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", @@ -44,7 +44,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-link-click-tracking/package.json b/plugins/browser-plugin-link-click-tracking/package.json index 40a705423..4fa2b93fa 100644 --- a/plugins/browser-plugin-link-click-tracking/package.json +++ b/plugins/browser-plugin-link-click-tracking/package.json @@ -30,14 +30,14 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", @@ -46,7 +46,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-media-tracking/package.json b/plugins/browser-plugin-media-tracking/package.json index e9aca4ec1..ccf709ae0 100644 --- a/plugins/browser-plugin-media-tracking/package.json +++ b/plugins/browser-plugin-media-tracking/package.json @@ -31,14 +31,14 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@types/uuid": "^10.0.0", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", @@ -46,7 +46,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-media/package.json b/plugins/browser-plugin-media/package.json index 74bc6ae74..43f09f390 100644 --- a/plugins/browser-plugin-media/package.json +++ b/plugins/browser-plugin-media/package.json @@ -31,14 +31,14 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@types/uuid": "^10.0.0", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", @@ -46,7 +46,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-optimizely-x/package.json b/plugins/browser-plugin-optimizely-x/package.json index 153ac3501..68539a7d9 100644 --- a/plugins/browser-plugin-optimizely-x/package.json +++ b/plugins/browser-plugin-optimizely-x/package.json @@ -30,13 +30,13 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", @@ -44,7 +44,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-performance-navigation-timing/package.json b/plugins/browser-plugin-performance-navigation-timing/package.json index de86fcbd6..80e960fe5 100644 --- a/plugins/browser-plugin-performance-navigation-timing/package.json +++ b/plugins/browser-plugin-performance-navigation-timing/package.json @@ -30,13 +30,13 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", @@ -44,7 +44,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-performance-timing/jest.config.js b/plugins/browser-plugin-performance-timing/jest.config.js index bd3ea4e2a..87d15da9b 100644 --- a/plugins/browser-plugin-performance-timing/jest.config.js +++ b/plugins/browser-plugin-performance-timing/jest.config.js @@ -1,5 +1,6 @@ module.exports = { preset: 'ts-jest', reporters: ['jest-standard-reporter'], + setupFilesAfterEnv: ['../../setupTestGlobals.ts'], testEnvironment: 'jest-environment-jsdom-global', }; diff --git a/plugins/browser-plugin-performance-timing/package.json b/plugins/browser-plugin-performance-timing/package.json index 3db17a09f..875d57d72 100644 --- a/plugins/browser-plugin-performance-timing/package.json +++ b/plugins/browser-plugin-performance-timing/package.json @@ -30,13 +30,13 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", @@ -44,7 +44,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-privacy-sandbox/jest.config.js b/plugins/browser-plugin-privacy-sandbox/jest.config.js index bd3ea4e2a..87d15da9b 100644 --- a/plugins/browser-plugin-privacy-sandbox/jest.config.js +++ b/plugins/browser-plugin-privacy-sandbox/jest.config.js @@ -1,5 +1,6 @@ module.exports = { preset: 'ts-jest', reporters: ['jest-standard-reporter'], + setupFilesAfterEnv: ['../../setupTestGlobals.ts'], testEnvironment: 'jest-environment-jsdom-global', }; diff --git a/plugins/browser-plugin-privacy-sandbox/package.json b/plugins/browser-plugin-privacy-sandbox/package.json index 1cda2cd0e..0862e69c6 100644 --- a/plugins/browser-plugin-privacy-sandbox/package.json +++ b/plugins/browser-plugin-privacy-sandbox/package.json @@ -30,13 +30,13 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", @@ -44,7 +44,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-site-tracking/package.json b/plugins/browser-plugin-site-tracking/package.json index 9798d7a6e..d3d524c60 100644 --- a/plugins/browser-plugin-site-tracking/package.json +++ b/plugins/browser-plugin-site-tracking/package.json @@ -30,14 +30,14 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", @@ -46,7 +46,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-snowplow-ecommerce/package.json b/plugins/browser-plugin-snowplow-ecommerce/package.json index 79dae11f0..2d47ac3d2 100644 --- a/plugins/browser-plugin-snowplow-ecommerce/package.json +++ b/plugins/browser-plugin-snowplow-ecommerce/package.json @@ -30,14 +30,14 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", @@ -46,7 +46,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-timezone/jest.config.js b/plugins/browser-plugin-timezone/jest.config.js index bd3ea4e2a..87d15da9b 100644 --- a/plugins/browser-plugin-timezone/jest.config.js +++ b/plugins/browser-plugin-timezone/jest.config.js @@ -1,5 +1,6 @@ module.exports = { preset: 'ts-jest', reporters: ['jest-standard-reporter'], + setupFilesAfterEnv: ['../../setupTestGlobals.ts'], testEnvironment: 'jest-environment-jsdom-global', }; diff --git a/plugins/browser-plugin-timezone/package.json b/plugins/browser-plugin-timezone/package.json index 13a9b44af..5f3e4ca1b 100644 --- a/plugins/browser-plugin-timezone/package.json +++ b/plugins/browser-plugin-timezone/package.json @@ -31,14 +31,14 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@types/jstimezonedetect": "~1.0.3", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "moment-timezone": "~0.5.26", @@ -47,7 +47,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-vimeo-tracking/package.json b/plugins/browser-plugin-vimeo-tracking/package.json index 4f2790fca..536dd935f 100644 --- a/plugins/browser-plugin-vimeo-tracking/package.json +++ b/plugins/browser-plugin-vimeo-tracking/package.json @@ -31,14 +31,14 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@types/vimeo__player": "~2.16.3", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", @@ -46,7 +46,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-web-vitals/jest.config.js b/plugins/browser-plugin-web-vitals/jest.config.js index bd3ea4e2a..87d15da9b 100644 --- a/plugins/browser-plugin-web-vitals/jest.config.js +++ b/plugins/browser-plugin-web-vitals/jest.config.js @@ -1,5 +1,6 @@ module.exports = { preset: 'ts-jest', reporters: ['jest-standard-reporter'], + setupFilesAfterEnv: ['../../setupTestGlobals.ts'], testEnvironment: 'jest-environment-jsdom-global', }; diff --git a/plugins/browser-plugin-web-vitals/package.json b/plugins/browser-plugin-web-vitals/package.json index 52da24a4e..382edccf2 100644 --- a/plugins/browser-plugin-web-vitals/package.json +++ b/plugins/browser-plugin-web-vitals/package.json @@ -31,13 +31,13 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", @@ -45,7 +45,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/plugins/browser-plugin-youtube-tracking/package.json b/plugins/browser-plugin-youtube-tracking/package.json index 932f893ed..c88f50868 100644 --- a/plugins/browser-plugin-youtube-tracking/package.json +++ b/plugins/browser-plugin-youtube-tracking/package.json @@ -31,15 +31,15 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@types/uuid": "^10.0.0", "@types/youtube": "~0.0.46", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "rollup": "~2.70.1", @@ -47,7 +47,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2" }, "peerDependencies": { diff --git a/trackers/browser-tracker/package.json b/trackers/browser-tracker/package.json index 0c05176ff..796e6ff28 100644 --- a/trackers/browser-tracker/package.json +++ b/trackers/browser-tracker/package.json @@ -44,14 +44,14 @@ "@ampproject/rollup-plugin-closure-compiler": "~0.27.0", "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", @@ -60,7 +60,7 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "typescript": "~4.6.2", "whatwg-fetch": "~3.6.20" } diff --git a/trackers/browser-tracker/test/tracker.test.ts b/trackers/browser-tracker/test/tracker.test.ts index 686e92f61..cb5608d09 100644 --- a/trackers/browser-tracker/test/tracker.test.ts +++ b/trackers/browser-tracker/test/tracker.test.ts @@ -32,7 +32,7 @@ import { SharedState, addTracker, EventStore, Payload } from '@snowplow/browser- import F from 'lodash/fp'; import { newInMemoryEventStore } from '@snowplow/tracker-core'; -jest.useFakeTimers('modern'); +jest.useFakeTimers(); const getPPEvents: (events: readonly Payload[]) => Payload[] = (events) => { return events.filter((payload) => payload.e === 'pp'); diff --git a/trackers/javascript-tracker/package.json b/trackers/javascript-tracker/package.json index cf5519d07..c7d6fc181 100644 --- a/trackers/javascript-tracker/package.json +++ b/trackers/javascript-tracker/package.json @@ -75,8 +75,8 @@ "@rollup/plugin-node-resolve": "~13.1.3", "@rollup/plugin-replace": "~4.0.0", "@types/dockerode": "~3.3.5", - "@types/jest": "~29.5.14", - "@types/jsdom": "~16.2.14", + "@types/jest": "~28.1.1", + "@types/jsdom": "~21.1.7", "@types/lodash": "~4.14.180", "@types/node": "~14.6.0", "@wdio/cli": "~8.39.1", @@ -89,8 +89,8 @@ "chalk": "4.1.2", "chromedriver": "~129.0.0", "dockerode": "~3.3.1", - "jest": "~29.7.0", - "jest-environment-jsdom": "~29.7.0", + "jest": "~28.1.3", + "jest-environment-jsdom": "~28.1.3", "jest-environment-jsdom-global": "~4.0.0", "jest-standard-reporter": "~2.0.0", "lodash": "~4.17.21", @@ -103,7 +103,7 @@ "rollup-plugin-terser": "~7.0.2", "rollup-plugin-ts": "~2.0.5", "saucelabs": "~7.5.0", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "ts-node": "~10.9.1", "typescript": "~4.6.2", "wdio-chromedriver-service": "~8.1.1", diff --git a/trackers/react-native-tracker/jest.config.js b/trackers/react-native-tracker/jest.config.js index 0c19618ea..96b295c3a 100644 --- a/trackers/react-native-tracker/jest.config.js +++ b/trackers/react-native-tracker/jest.config.js @@ -1,7 +1,5 @@ module.exports = { preset: 'react-native', transformIgnorePatterns: [], - globals: { - crypto: require('crypto'), - }, + setupFilesAfterEnv: ['../../setupTestGlobals.ts'], }; diff --git a/trackers/react-native-tracker/package.json b/trackers/react-native-tracker/package.json index 48d5dfd99..456316146 100644 --- a/trackers/react-native-tracker/package.json +++ b/trackers/react-native-tracker/package.json @@ -49,10 +49,10 @@ "rollup-plugin-license": "~2.6.1", "rollup-plugin-ts": "~2.0.5", "typescript": "~4.6.2", - "@types/jest": "~29.5.14", - "jest": "~29.7.0", + "@types/jest": "~28.1.1", + "jest": "~28.1.3", "react": "18.2.0", - "ts-jest": "~29.2.5", + "ts-jest": "~28.0.8", "@types/react": "^18.2.44", "react-native": "0.74.5", "@react-native/babel-preset": "~0.76.1", From 6e029ace37a25155dac23d4a2e7cfb23e4f3a241 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matu=CC=81s=CC=8C=20Tomlein?= Date: Wed, 6 Nov 2024 11:10:06 +0100 Subject: [PATCH 06/16] Use jest-standard-reporter in react-native-tracker tests --- trackers/react-native-tracker/jest.config.js | 1 + 1 file changed, 1 insertion(+) diff --git a/trackers/react-native-tracker/jest.config.js b/trackers/react-native-tracker/jest.config.js index 96b295c3a..af7e0ca77 100644 --- a/trackers/react-native-tracker/jest.config.js +++ b/trackers/react-native-tracker/jest.config.js @@ -1,5 +1,6 @@ module.exports = { preset: 'react-native', + reporters: ['jest-standard-reporter'], transformIgnorePatterns: [], setupFilesAfterEnv: ['../../setupTestGlobals.ts'], }; From 4bcc251b5d1c234d633076ef79360db7cc10b38c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matu=CC=81s=CC=8C=20Tomlein?= Date: Wed, 6 Nov 2024 12:51:48 +0100 Subject: [PATCH 07/16] Downgrade @types/jsdom back to 16.2.14 --- common/config/rush/pnpm-lock.yaml | 134 ++++++++---------- common/config/rush/repo-state.json | 2 +- libraries/browser-tracker-core/package.json | 2 +- .../browser-plugin-ad-tracking/package.json | 2 +- .../package.json | 2 +- .../browser-plugin-client-hints/package.json | 2 +- plugins/browser-plugin-debugger/package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../browser-plugin-focalmeter/package.json | 2 +- .../browser-plugin-form-tracking/package.json | 2 +- .../browser-plugin-ga-cookies/package.json | 2 +- .../browser-plugin-geolocation/package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- plugins/browser-plugin-media/package.json | 2 +- .../browser-plugin-optimizely-x/package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../package.json | 2 +- .../browser-plugin-site-tracking/package.json | 2 +- .../package.json | 2 +- plugins/browser-plugin-timezone/package.json | 2 +- .../package.json | 2 +- .../browser-plugin-web-vitals/package.json | 2 +- .../package.json | 2 +- trackers/browser-tracker/package.json | 2 +- trackers/javascript-tracker/package.json | 2 +- 30 files changed, 85 insertions(+), 107 deletions(-) diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index 8113622f4..d90c73105 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -41,8 +41,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@types/sha1': specifier: ~1.1.3 version: 1.1.5 @@ -184,8 +184,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -260,8 +260,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -336,8 +336,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -409,8 +409,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@types/randomcolor': specifier: ~0.5.5 version: 0.5.9 @@ -482,8 +482,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -558,8 +558,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -634,8 +634,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -710,8 +710,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -780,8 +780,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -850,8 +850,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -920,8 +920,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -990,8 +990,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -1060,8 +1060,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -1139,8 +1139,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@types/uuid': specifier: ^10.0.0 version: 10.0.0 @@ -1218,8 +1218,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@types/uuid': specifier: ^10.0.0 version: 10.0.0 @@ -1291,8 +1291,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -1361,8 +1361,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -1431,8 +1431,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -1501,8 +1501,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -1571,8 +1571,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -1647,8 +1647,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -1726,8 +1726,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@types/jstimezonedetect': specifier: ~1.0.3 version: 1.0.6 @@ -1808,8 +1808,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@types/vimeo__player': specifier: ~2.16.3 version: 2.16.3 @@ -1884,8 +1884,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@typescript-eslint/eslint-plugin': specifier: ~5.15.0 version: 5.15.0(@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) @@ -1960,8 +1960,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@types/uuid': specifier: ^10.0.0 version: 10.0.0 @@ -2036,8 +2036,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -2199,8 +2199,8 @@ importers: specifier: ~28.1.1 version: 28.1.8 '@types/jsdom': - specifier: ~21.1.7 - version: 21.1.7 + specifier: ~16.2.14 + version: 16.2.15 '@types/lodash': specifier: ~4.14.180 version: 4.14.202 @@ -3568,9 +3568,6 @@ packages: '@types/jsdom@16.2.15': resolution: {integrity: sha512-nwF87yjBKuX/roqGYerZZM0Nv1pZDMAT5YhOHYeM/72Fic+VEqJh4nyoqoapzJnW3pUlfxPY5FhgsJtM+dRnQQ==} - '@types/jsdom@21.1.7': - resolution: {integrity: sha512-yOriVnggzrnQ3a9OKOCxaVuSug3w3/SbOj5i7VwXWZEyUNl3bLF9V3MfxGbZKuwqJOQyRfqXyROBB1CoZLFWzA==} - '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} @@ -4991,10 +4988,6 @@ packages: resolution: {integrity: sha512-+29eJLiUixTEDRaZ35Vu8jP3gPLNcQQkQkOQjLp2X+6cZGGPDD/uasbFzvLsJKnGZnvmyZ0srxudwOtskHeIDA==} engines: {node: '>=4.0.0'} - entities@4.5.0: - resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} - engines: {node: '>=0.12'} - env-paths@2.2.1: resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} engines: {node: '>=6'} @@ -7254,9 +7247,6 @@ packages: parse5@6.0.1: resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} - parse5@7.2.1: - resolution: {integrity: sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==} - parseurl@1.3.3: resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} engines: {node: '>= 0.8'} @@ -10624,12 +10614,6 @@ snapshots: '@types/parse5': 6.0.3 '@types/tough-cookie': 4.0.5 - '@types/jsdom@21.1.7': - dependencies: - '@types/node': 14.6.4 - '@types/tough-cookie': 4.0.5 - parse5: 7.2.1 - '@types/json-schema@7.0.15': {} '@types/jstimezonedetect@1.0.6': {} @@ -12408,8 +12392,6 @@ snapshots: dependencies: lodash: 4.17.21 - entities@4.5.0: {} - env-paths@2.2.1: {} envinfo@7.14.0: {} @@ -15349,10 +15331,6 @@ snapshots: parse5@6.0.1: {} - parse5@7.2.1: - dependencies: - entities: 4.5.0 - parseurl@1.3.3: {} pascal-case@3.1.2: diff --git a/common/config/rush/repo-state.json b/common/config/rush/repo-state.json index 5d85a878b..94750a537 100644 --- a/common/config/rush/repo-state.json +++ b/common/config/rush/repo-state.json @@ -1,5 +1,5 @@ // DO NOT MODIFY THIS FILE MANUALLY BUT DO COMMIT IT. It is generated and used by Rush. { - "pnpmShrinkwrapHash": "92e47003e2ad1b5456251728695c6b059df935d5", + "pnpmShrinkwrapHash": "d492ca55fd8394648a6d6f6828b0bfb697747844", "preferredVersionsHash": "bf21a9e8fbc5a3846fb05b4fa0859e0917b2202f" } diff --git a/libraries/browser-tracker-core/package.json b/libraries/browser-tracker-core/package.json index 7e770d497..68ef7880b 100644 --- a/libraries/browser-tracker-core/package.json +++ b/libraries/browser-tracker-core/package.json @@ -32,7 +32,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@types/sha1": "~1.1.3", "@types/uuid": "^10.0.0", "@typescript-eslint/eslint-plugin": "~5.15.0", diff --git a/plugins/browser-plugin-ad-tracking/package.json b/plugins/browser-plugin-ad-tracking/package.json index 000c02c38..f3e14e1ed 100644 --- a/plugins/browser-plugin-ad-tracking/package.json +++ b/plugins/browser-plugin-ad-tracking/package.json @@ -31,7 +31,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", diff --git a/plugins/browser-plugin-button-click-tracking/package.json b/plugins/browser-plugin-button-click-tracking/package.json index 41a361a3e..9589db46c 100644 --- a/plugins/browser-plugin-button-click-tracking/package.json +++ b/plugins/browser-plugin-button-click-tracking/package.json @@ -31,7 +31,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", diff --git a/plugins/browser-plugin-client-hints/package.json b/plugins/browser-plugin-client-hints/package.json index a91bbd30b..be4dca561 100644 --- a/plugins/browser-plugin-client-hints/package.json +++ b/plugins/browser-plugin-client-hints/package.json @@ -31,7 +31,7 @@ "@rollup/plugin-node-resolve": "~13.1.3", "@snowplow/tracker-core": "workspace:*", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", diff --git a/plugins/browser-plugin-debugger/package.json b/plugins/browser-plugin-debugger/package.json index 7c9c0a549..9a891fe2b 100644 --- a/plugins/browser-plugin-debugger/package.json +++ b/plugins/browser-plugin-debugger/package.json @@ -32,7 +32,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@types/randomcolor": "~0.5.5", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", diff --git a/plugins/browser-plugin-enhanced-consent/package.json b/plugins/browser-plugin-enhanced-consent/package.json index 02c6310c8..279b373dc 100644 --- a/plugins/browser-plugin-enhanced-consent/package.json +++ b/plugins/browser-plugin-enhanced-consent/package.json @@ -30,7 +30,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", diff --git a/plugins/browser-plugin-enhanced-ecommerce/package.json b/plugins/browser-plugin-enhanced-ecommerce/package.json index 756b742fe..1a61e1c0f 100644 --- a/plugins/browser-plugin-enhanced-ecommerce/package.json +++ b/plugins/browser-plugin-enhanced-ecommerce/package.json @@ -31,7 +31,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", diff --git a/plugins/browser-plugin-error-tracking/package.json b/plugins/browser-plugin-error-tracking/package.json index 84a6e4e52..22c30783f 100644 --- a/plugins/browser-plugin-error-tracking/package.json +++ b/plugins/browser-plugin-error-tracking/package.json @@ -31,7 +31,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", diff --git a/plugins/browser-plugin-event-specifications/package.json b/plugins/browser-plugin-event-specifications/package.json index 17b9efbed..48b7fbb3d 100644 --- a/plugins/browser-plugin-event-specifications/package.json +++ b/plugins/browser-plugin-event-specifications/package.json @@ -31,7 +31,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", diff --git a/plugins/browser-plugin-focalmeter/package.json b/plugins/browser-plugin-focalmeter/package.json index 56d299e28..e977a1b89 100644 --- a/plugins/browser-plugin-focalmeter/package.json +++ b/plugins/browser-plugin-focalmeter/package.json @@ -31,7 +31,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", diff --git a/plugins/browser-plugin-form-tracking/package.json b/plugins/browser-plugin-form-tracking/package.json index 0cb1de1a0..d72850ea3 100644 --- a/plugins/browser-plugin-form-tracking/package.json +++ b/plugins/browser-plugin-form-tracking/package.json @@ -31,7 +31,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", diff --git a/plugins/browser-plugin-ga-cookies/package.json b/plugins/browser-plugin-ga-cookies/package.json index 0552dcab9..b9623edab 100644 --- a/plugins/browser-plugin-ga-cookies/package.json +++ b/plugins/browser-plugin-ga-cookies/package.json @@ -31,7 +31,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", diff --git a/plugins/browser-plugin-geolocation/package.json b/plugins/browser-plugin-geolocation/package.json index e9f747993..97708e24d 100644 --- a/plugins/browser-plugin-geolocation/package.json +++ b/plugins/browser-plugin-geolocation/package.json @@ -31,7 +31,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", diff --git a/plugins/browser-plugin-link-click-tracking/package.json b/plugins/browser-plugin-link-click-tracking/package.json index 4fa2b93fa..40d940c85 100644 --- a/plugins/browser-plugin-link-click-tracking/package.json +++ b/plugins/browser-plugin-link-click-tracking/package.json @@ -31,7 +31,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", diff --git a/plugins/browser-plugin-media-tracking/package.json b/plugins/browser-plugin-media-tracking/package.json index ccf709ae0..1df00b3ca 100644 --- a/plugins/browser-plugin-media-tracking/package.json +++ b/plugins/browser-plugin-media-tracking/package.json @@ -32,7 +32,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@types/uuid": "^10.0.0", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", diff --git a/plugins/browser-plugin-media/package.json b/plugins/browser-plugin-media/package.json index 43f09f390..7530bfa7d 100644 --- a/plugins/browser-plugin-media/package.json +++ b/plugins/browser-plugin-media/package.json @@ -32,7 +32,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@types/uuid": "^10.0.0", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", diff --git a/plugins/browser-plugin-optimizely-x/package.json b/plugins/browser-plugin-optimizely-x/package.json index 68539a7d9..bd48cdb0f 100644 --- a/plugins/browser-plugin-optimizely-x/package.json +++ b/plugins/browser-plugin-optimizely-x/package.json @@ -31,7 +31,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", diff --git a/plugins/browser-plugin-performance-navigation-timing/package.json b/plugins/browser-plugin-performance-navigation-timing/package.json index 80e960fe5..b6bd02c3c 100644 --- a/plugins/browser-plugin-performance-navigation-timing/package.json +++ b/plugins/browser-plugin-performance-navigation-timing/package.json @@ -31,7 +31,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", diff --git a/plugins/browser-plugin-performance-timing/package.json b/plugins/browser-plugin-performance-timing/package.json index 875d57d72..b7d5482dc 100644 --- a/plugins/browser-plugin-performance-timing/package.json +++ b/plugins/browser-plugin-performance-timing/package.json @@ -31,7 +31,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", diff --git a/plugins/browser-plugin-privacy-sandbox/package.json b/plugins/browser-plugin-privacy-sandbox/package.json index 0862e69c6..c100df8fb 100644 --- a/plugins/browser-plugin-privacy-sandbox/package.json +++ b/plugins/browser-plugin-privacy-sandbox/package.json @@ -31,7 +31,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", diff --git a/plugins/browser-plugin-site-tracking/package.json b/plugins/browser-plugin-site-tracking/package.json index d3d524c60..a24aff0d4 100644 --- a/plugins/browser-plugin-site-tracking/package.json +++ b/plugins/browser-plugin-site-tracking/package.json @@ -31,7 +31,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", diff --git a/plugins/browser-plugin-snowplow-ecommerce/package.json b/plugins/browser-plugin-snowplow-ecommerce/package.json index 2d47ac3d2..76066aa71 100644 --- a/plugins/browser-plugin-snowplow-ecommerce/package.json +++ b/plugins/browser-plugin-snowplow-ecommerce/package.json @@ -31,7 +31,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", diff --git a/plugins/browser-plugin-timezone/package.json b/plugins/browser-plugin-timezone/package.json index 5f3e4ca1b..772906e35 100644 --- a/plugins/browser-plugin-timezone/package.json +++ b/plugins/browser-plugin-timezone/package.json @@ -32,7 +32,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@types/jstimezonedetect": "~1.0.3", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", diff --git a/plugins/browser-plugin-vimeo-tracking/package.json b/plugins/browser-plugin-vimeo-tracking/package.json index 536dd935f..2dd79f664 100644 --- a/plugins/browser-plugin-vimeo-tracking/package.json +++ b/plugins/browser-plugin-vimeo-tracking/package.json @@ -32,7 +32,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@types/vimeo__player": "~2.16.3", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", diff --git a/plugins/browser-plugin-web-vitals/package.json b/plugins/browser-plugin-web-vitals/package.json index 382edccf2..77a75d3b7 100644 --- a/plugins/browser-plugin-web-vitals/package.json +++ b/plugins/browser-plugin-web-vitals/package.json @@ -32,7 +32,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", "eslint": "~8.11.0", diff --git a/plugins/browser-plugin-youtube-tracking/package.json b/plugins/browser-plugin-youtube-tracking/package.json index c88f50868..b2cd1474d 100644 --- a/plugins/browser-plugin-youtube-tracking/package.json +++ b/plugins/browser-plugin-youtube-tracking/package.json @@ -32,7 +32,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@types/uuid": "^10.0.0", "@types/youtube": "~0.0.46", "@typescript-eslint/eslint-plugin": "~5.15.0", diff --git a/trackers/browser-tracker/package.json b/trackers/browser-tracker/package.json index 796e6ff28..3cf2a57c5 100644 --- a/trackers/browser-tracker/package.json +++ b/trackers/browser-tracker/package.json @@ -45,7 +45,7 @@ "@rollup/plugin-commonjs": "~21.0.2", "@rollup/plugin-node-resolve": "~13.1.3", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", diff --git a/trackers/javascript-tracker/package.json b/trackers/javascript-tracker/package.json index c7d6fc181..412702067 100644 --- a/trackers/javascript-tracker/package.json +++ b/trackers/javascript-tracker/package.json @@ -76,7 +76,7 @@ "@rollup/plugin-replace": "~4.0.0", "@types/dockerode": "~3.3.5", "@types/jest": "~28.1.1", - "@types/jsdom": "~21.1.7", + "@types/jsdom": "~16.2.14", "@types/lodash": "~4.14.180", "@types/node": "~14.6.0", "@wdio/cli": "~8.39.1", From 23617fd959f7db7982994b5c9002aa1035906a8b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matu=CC=81s=CC=8C=20Tomlein?= Date: Wed, 6 Nov 2024 13:14:28 +0100 Subject: [PATCH 08/16] Add react native tracker to CI actions --- .github/workflows/change_check.yml | 4 ++++ .github/workflows/publish.yml | 7 +++++++ .github/workflows/publish_prerelease.yml | 6 ++++++ 3 files changed, 17 insertions(+) diff --git a/.github/workflows/change_check.yml b/.github/workflows/change_check.yml index 30b6acb9d..8acaacc41 100644 --- a/.github/workflows/change_check.yml +++ b/.github/workflows/change_check.yml @@ -50,6 +50,10 @@ jobs: working-directory: ./trackers/node-tracker run: api-extractor run + - name: Check for API changes to @snowplow/react-native-tracker + working-directory: ./trackers/react-native-tracker + run: api-extractor run + - name: Check bundle size using bundlemon run: npx bundlemon@1.4.0 env: diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 7cf6259de..81efbcf0a 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -75,10 +75,17 @@ jobs: api-extractor run api-documenter markdown --input-folder temp --output-folder ../../api-docs/docs/node-tracker/markdown + - name: Create API documentation for @snowplow/react-native-tracker + working-directory: ./trackers/react-native-tracker + run: | + api-extractor run + api-documenter markdown --input-folder temp --output-folder ../../api-docs/docs/node-tracker/markdown + - name: Apply API documentation updates run: | git add api-docs/docs/browser-tracker git add api-docs/docs/node-tracker + git add api-docs/docs/react-native-tracker git commit --no-verify --allow-empty -m "Applying documentation updates." git push diff --git a/.github/workflows/publish_prerelease.yml b/.github/workflows/publish_prerelease.yml index c6b53ec1c..77d352744 100644 --- a/.github/workflows/publish_prerelease.yml +++ b/.github/workflows/publish_prerelease.yml @@ -75,6 +75,12 @@ jobs: api-extractor run api-documenter markdown --input-folder temp --output-folder docs/markdown + - name: Create API documentation for @snowplow/react-native-tracker + working-directory: ./trackers/react-native-tracker + run: | + api-extractor run + api-documenter markdown --input-folder temp --output-folder docs/markdown + - name: Rush Publish run: node common/scripts/install-run-rush.js publish --apply --include-all --publish --tag next --set-access-level public --ignore-git-hooks From cd266138b28230e4dcd171ee1d0ce88b428c4855 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matu=CC=81s=CC=8C=20Tomlein?= Date: Wed, 6 Nov 2024 13:24:14 +0100 Subject: [PATCH 09/16] Fix API comment --- trackers/react-native-tracker/src/tracker.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/trackers/react-native-tracker/src/tracker.ts b/trackers/react-native-tracker/src/tracker.ts index 4025bd467..ac9e87e59 100644 --- a/trackers/react-native-tracker/src/tracker.ts +++ b/trackers/react-native-tracker/src/tracker.ts @@ -15,7 +15,7 @@ import { /** * Creates a new tracker instance with the given configuration - * @param configuration Configuration for the tracker + * @param configuration - Configuration for the tracker * @returns Tracker instance */ export async function newTracker( From e1f7b976cb5d68df1eb806188dce578dd890b8c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matu=CC=81s=CC=8C=20Tomlein?= Date: Wed, 6 Nov 2024 21:45:17 +0100 Subject: [PATCH 10/16] Use react-native-builder-bob for building instead of rollup --- .../rush/browser-approved-packages.json | 4 + common/config/rush/pnpm-lock.yaml | 1691 +++++++++-------- common/config/rush/repo-state.json | 2 +- trackers/react-native-tracker/babel.config.js | 2 +- trackers/react-native-tracker/jest.config.js | 1 + trackers/react-native-tracker/package.json | 66 +- .../react-native-tracker/rollup.config.js | 33 - trackers/react-native-tracker/src/index.ts | 5 +- .../react-native-tracker/test/tracker.test.ts | 2 +- .../react-native-tracker/tsconfig.build.json | 4 + trackers/react-native-tracker/tsconfig.json | 42 +- 11 files changed, 968 insertions(+), 884 deletions(-) delete mode 100644 trackers/react-native-tracker/rollup.config.js create mode 100644 trackers/react-native-tracker/tsconfig.build.json diff --git a/common/config/rush/browser-approved-packages.json b/common/config/rush/browser-approved-packages.json index 8140826aa..e6db33654 100644 --- a/common/config/rush/browser-approved-packages.json +++ b/common/config/rush/browser-approved-packages.json @@ -374,6 +374,10 @@ "name": "react-native-builder-bob", "allowedCategories": [ "trackers" ] }, + { + "name": "react-native-get-random-values", + "allowedCategories": [ "trackers" ] + }, { "name": "rollup", "allowedCategories": [ "libraries", "plugins", "trackers" ] diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index d90c73105..f7f6ad3f8 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -84,7 +84,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -151,7 +151,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-node: specifier: ~10.9.1 version: 10.9.2(@types/node@14.6.4)(typescript@4.6.4) @@ -227,7 +227,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -303,7 +303,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -373,7 +373,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -449,7 +449,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -525,7 +525,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -601,7 +601,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -677,7 +677,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -747,7 +747,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -817,7 +817,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -887,7 +887,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -957,7 +957,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -1027,7 +1027,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -1103,7 +1103,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -1179,7 +1179,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -1258,7 +1258,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -1328,7 +1328,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -1398,7 +1398,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -1468,7 +1468,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -1538,7 +1538,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -1614,7 +1614,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -1690,7 +1690,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -1769,7 +1769,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -1848,7 +1848,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -1921,7 +1921,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -2003,7 +2003,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -2079,7 +2079,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-jest: specifier: ~28.0.8 version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) @@ -2284,7 +2284,7 @@ importers: version: 7.0.2(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) saucelabs: specifier: ~7.5.0 version: 7.5.0 @@ -2348,7 +2348,7 @@ importers: version: 2.6.1(rollup@2.70.2) rollup-plugin-ts: specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) ts-node: specifier: ~10.9.1 version: 10.9.2(@types/node@14.6.4)(typescript@4.6.4) @@ -2360,26 +2360,23 @@ importers: dependencies: '@react-native-async-storage/async-storage': specifier: ~2.0.0 - version: 2.0.0(react-native@0.74.5(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0)) + version: 2.0.0(react-native@0.74.5(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0)) '@snowplow/tracker-core': specifier: workspace:* version: link:../../libraries/tracker-core + react-native-get-random-values: + specifier: ~1.11.0 + version: 1.11.0(react-native@0.74.5(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0)) tslib: specifier: ^2.3.1 version: 2.7.0 devDependencies: - '@react-native/babel-preset': - specifier: ~0.76.1 - version: 0.76.1 - '@react-native/eslint-config': - specifier: ^0.73.1 - version: 0.73.2(eslint@8.11.0)(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) - '@rollup/plugin-json': - specifier: ~4.1.0 - version: 4.1.0(rollup@2.70.2) '@types/jest': specifier: ~28.1.1 version: 28.1.8 + '@types/node': + specifier: ~14.6.0 + version: 14.6.4 '@types/react': specifier: ^18.2.44 version: 18.3.12 @@ -2394,7 +2391,7 @@ importers: version: 8.11.0 jest: specifier: ~28.1.3 - version: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) + version: 28.1.3(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)) node-fetch: specifier: ~3.3.2 version: 3.3.2 @@ -2403,19 +2400,13 @@ importers: version: 18.2.0 react-native: specifier: 0.74.5 - version: 0.74.5(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0) - rollup: - specifier: ~2.70.1 - version: 2.70.2 - rollup-plugin-license: - specifier: ~2.6.1 - version: 2.6.1(rollup@2.70.2) - rollup-plugin-ts: - specifier: ~2.0.5 - version: 2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4) + version: 0.74.5(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0) + react-native-builder-bob: + specifier: ^0.30.3 + version: 0.30.3(typescript@4.6.4) ts-jest: specifier: ~28.0.8 - version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) + version: 28.0.8(@babel/core@7.25.2)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.25.2))(jest@28.1.3(@types/node@14.6.4)(ts-node@10.9.2(@types/node@14.6.4)(typescript@4.6.4)))(typescript@4.6.4) typescript: specifier: ~4.6.2 version: 4.6.4 @@ -2460,13 +2451,6 @@ packages: resolution: {integrity: sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==} engines: {node: '>=6.9.0'} - '@babel/eslint-parser@7.25.9': - resolution: {integrity: sha512-5UXfgpK0j0Xr/xIdgdLEhOFxaDZ0bRPWJJchRpqOSur/3rZoPbqqki5mm0p4NE2cs28krBEiSM2MB7//afRSQQ==} - engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0} - peerDependencies: - '@babel/core': ^7.11.0 - eslint: ^7.5.0 || ^8.0.0 || ^9.0.0 - '@babel/generator@7.25.6': resolution: {integrity: sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==} engines: {node: '>=6.9.0'} @@ -2479,8 +2463,8 @@ packages: resolution: {integrity: sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==} engines: {node: '>=6.9.0'} - '@babel/helper-compilation-targets@7.25.2': - resolution: {integrity: sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==} + '@babel/helper-builder-binary-assignment-operator-visitor@7.25.9': + resolution: {integrity: sha512-C47lC7LIDCnz0h4vai/tpNOI95tCd5ZT3iBt/DBH5lXKHZsyNQv18yf1wIIg2ntiQNgmAvA+DgZ82iW8Qdym8g==} engines: {node: '>=6.9.0'} '@babel/helper-compilation-targets@7.25.9': @@ -2596,6 +2580,36 @@ packages: engines: {node: '>=6.0.0'} hasBin: true + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.9': + resolution: {integrity: sha512-ZkRyVkThtxQ/J6nv3JFYv1RYY+JT5BvU0y3k5bWrmuG4woXypRa4PXmm9RhOwodRkYFWqC0C0cqcJ4OqR7kW+g==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.9': + resolution: {integrity: sha512-MrGRLZxLD/Zjj0gdU15dfs+HH/OXvnw/U4jJD8vpcP2CJQapPEv1IWwjc/qMg7ItBlPwSv1hRBbb7LeuANdcnw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.9': + resolution: {integrity: sha512-2qUwwfAFpJLZqxd02YW9btUCZHl+RFvdDkNfZwaIJrvB8Tesjsk8pEQkTvGwZXLqXUx/2oyY3ySRhm6HOXuCug==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.9': + resolution: {integrity: sha512-6xWgLZTJXwilVjlnV7ospI3xi+sl8lN8rXXbBD6vYn3UYDlGsag8wrZkKcSI8G6KgqKP7vNFaDgeDnfAABq61g==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.13.0 + + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.9': + resolution: {integrity: sha512-aLnMXYPnzwwqhYSCyXfKkIkYgJ8zv9RK+roo9DkTXz38ynIhd9XCbN08s3MGvqL2MYGVUGdRQLL/JqBIeJhJBg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + '@babel/plugin-proposal-async-generator-functions@7.20.7': resolution: {integrity: sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==} engines: {node: '>=6.9.0'} @@ -2658,6 +2672,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2': + resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-async-generators@7.8.4': resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} peerDependencies: @@ -2696,12 +2716,24 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-import-assertions@7.26.0': + resolution: {integrity: sha512-QCWT5Hh830hK5EQa7XzuqIkQU9tT/whqbDz7kuaZMHFl1inRRg7JnuAEOQ0Ur0QUl0NufCk1msK2BeY79Aj/eg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-import-attributes@7.25.6': resolution: {integrity: sha512-sXaDXaJN9SNLymBdlWFA+bjzBhFD617ZaFiY13dGt7TVslVvVgA6fkZOP7Ki3IGElC45lwHdOTrCtKZGVAWeLQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-import-attributes@7.26.0': + resolution: {integrity: sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-import-meta@7.10.4': resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} peerDependencies: @@ -2766,6 +2798,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-syntax-unicode-sets-regex@7.18.6': + resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + '@babel/plugin-transform-arrow-functions@7.25.9': resolution: {integrity: sha512-6jmooXYIwn9ca5/RylZADJ+EnSxVUS5sjeJ9UPk6RWRzXCmOJCy6dqItPJFpw2cuCangPK4OYr5uhGKcmrm5Qg==} engines: {node: '>=6.9.0'} @@ -2784,6 +2822,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-block-scoped-functions@7.25.9': + resolution: {integrity: sha512-toHc9fzab0ZfenFpsyYinOX0J/5dgJVA2fm64xPewu7CoYHWEivIWKxkK2rMi4r3yQqLnVmheMXRdG+k239CgA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-block-scoping@7.25.9': resolution: {integrity: sha512-1F05O7AYjymAtqbsFETboN1NvBdcnzMerO+zlMyJBEz6WkMdejvGWw9p05iTSjC85RLlBseHHQpYaM4gzJkBGg==} engines: {node: '>=6.9.0'} @@ -2796,6 +2840,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-class-static-block@7.26.0': + resolution: {integrity: sha512-6J2APTs7BDDm+UMqP1useWqhcRAXo0WIoVj26N7kPFB6S73Lgvyka4KTZYIxtgYXiN5HTyRObA72N2iu628iTQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.12.0 + '@babel/plugin-transform-classes@7.25.9': resolution: {integrity: sha512-mD8APIXmseE7oZvZgGABDyM34GUmK45Um2TXiBUt7PnuAxrgoSVf123qUzPxEr/+/BHrRn5NMZCdE2m/1F8DGg==} engines: {node: '>=6.9.0'} @@ -2814,6 +2864,42 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-dotall-regex@7.25.9': + resolution: {integrity: sha512-t7ZQ7g5trIgSRYhI9pIJtRl64KHotutUJsh4Eze5l7olJv+mRSg4/MmbZ0tv1eeqRbdvo/+trvJD/Oc5DmW2cA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-duplicate-keys@7.25.9': + resolution: {integrity: sha512-LZxhJ6dvBb/f3x8xwWIuyiAHy56nrRG3PeYTpBkkzkYRRQ6tJLu68lEF5VIqMUZiAV7a8+Tb78nEoMCMcqjXBw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.9': + resolution: {integrity: sha512-0UfuJS0EsXbRvKnwcLjFtJy/Sxc5J5jhLHnFhy7u4zih97Hz6tJkLU+O+FMMrNZrosUPxDi6sYxJ/EA8jDiAog==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/plugin-transform-dynamic-import@7.25.9': + resolution: {integrity: sha512-GCggjexbmSLaFhqsojeugBpeaRIgWNTcgKVq/0qIteFEqY2A+b9QidYadrWlnbWQUrW5fn+mCvf3tr7OeBFTyg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-exponentiation-operator@7.25.9': + resolution: {integrity: sha512-KRhdhlVk2nObA5AYa7QMgTMTVJdfHprfpAk4DjZVtllqRg9qarilstTKEhpVjyt+Npi8ThRyiV8176Am3CodPA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-export-namespace-from@7.25.9': + resolution: {integrity: sha512-2NsEz+CxzJIVOPx2o9UsW1rXLqtChtLoVnwYHHiB04wS5sgn7mrV45fWMBX0Kk+ub9uXytVYfNP2HjbVbCB3Ww==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-flow-strip-types@7.25.9': resolution: {integrity: sha512-/VVukELzPDdci7UUsWQaSkhgnjIWXnIyRpM02ldxaVoFK96c41So8JcKT3m0gYjyv7j5FNPGS5vfELrWalkbDA==} engines: {node: '>=6.9.0'} @@ -2832,6 +2918,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-json-strings@7.25.9': + resolution: {integrity: sha512-xoTMk0WXceiiIvsaquQQUaLLXSW1KJ159KP87VilruQm0LNNGxWzahxSS6T6i4Zg3ezp4vA4zuwiNUR53qmQAw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-literals@7.25.9': resolution: {integrity: sha512-9N7+2lFziW8W9pBl2TzaNht3+pgMIRP74zizeCSrtnSKVdUl8mAjjOP2OOVQAfZ881P2cNjDj1uAMEdeD50nuQ==} engines: {node: '>=6.9.0'} @@ -2844,18 +2936,48 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-member-expression-literals@7.25.9': + resolution: {integrity: sha512-PYazBVfofCQkkMzh2P6IdIUaCEWni3iYEerAsRWuVd8+jlM1S9S9cz1dF9hIzyoZ8IA3+OwVYIp9v9e+GbgZhA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-modules-amd@7.25.9': + resolution: {integrity: sha512-g5T11tnI36jVClQlMlt4qKDLlWnG5pP9CSM4GhdRciTNMRgkfpo5cR6b4rGIOYPgRRuFAvwjPQ/Yk+ql4dyhbw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-modules-commonjs@7.25.9': resolution: {integrity: sha512-dwh2Ol1jWwL2MgkCzUSOvfmKElqQcuswAZypBSUsScMXvgdT8Ekq5YA6TtqpTVWH+4903NmboMuH1o9i8Rxlyg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-modules-systemjs@7.25.9': + resolution: {integrity: sha512-hyss7iIlH/zLHaehT+xwiymtPOpsiwIIRlCAOwBB04ta5Tt+lNItADdlXw3jAWZ96VJ2jlhl/c+PNIQPKNfvcA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-modules-umd@7.25.9': + resolution: {integrity: sha512-bS9MVObUgE7ww36HEfwe6g9WakQ0KF07mQF74uuXdkoziUPfKyu/nIm663kz//e5O1nPInPFx36z7WJmJ4yNEw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-named-capturing-groups-regex@7.25.9': resolution: {integrity: sha512-oqB6WHdKTGl3q/ItQhpLSnWWOpjUJLsOCLVyeFgeTktkBSCiurvPOsyt93gibI9CmuKvTUEtWmG5VhZD+5T/KA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 + '@babel/plugin-transform-new-target@7.25.9': + resolution: {integrity: sha512-U/3p8X1yCSoKyUj2eOBIx3FOn6pElFOKvAAGf8HTtItuPyB+ZeOqfn+mvTtg9ZlOAjsPdK3ayQEjqHjU/yLeVQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-nullish-coalescing-operator@7.25.9': resolution: {integrity: sha512-ENfftpLZw5EItALAD4WsY/KUWvhUlZndm5GC7G3evUsVeSJB6p0pBeLQUnRnBCBx7zV0RKQjR9kCuwrsIrjWog==} engines: {node: '>=6.9.0'} @@ -2874,6 +2996,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-object-super@7.25.9': + resolution: {integrity: sha512-Kj/Gh+Rw2RNLbCK1VAWj2U48yxxqL2x0k10nPtSdRa0O2xnHXalD0s+o1A6a0W43gJ00ANo38jxkQreckOzv5A==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-optional-catch-binding@7.25.9': resolution: {integrity: sha512-qM/6m6hQZzDcZF3onzIhZeDHDO43bkNNlOX0i8n3lR6zLbu0GN2d8qfM/IERJZYauhAHSLHy39NF0Ctdvcid7g==} engines: {node: '>=6.9.0'} @@ -2904,12 +3032,24 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-property-literals@7.25.9': + resolution: {integrity: sha512-IvIUeV5KrS/VPavfSM/Iu+RE6llrHrYIKY1yfCzyO/lMXHQ+p7uGhonmGVisv6tSBSVgWzMBohTcvkC9vQcQFA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-react-display-name@7.25.9': resolution: {integrity: sha512-KJfMlYIUxQB1CJfO3e0+h0ZHWOTLCPP115Awhaz8U0Zpq36Gl/cXlpoyMRnUWlhNUBAzldnCiAZNvCDj7CrKxQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-react-jsx-development@7.25.9': + resolution: {integrity: sha512-9mj6rm7XVYs4mdLIpbZnHOYdpW42uoiBCTVowg7sP1thUOiANgMb4UtpRivR0pp5iL+ocvUv7X4mZgFRpJEzGw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-react-jsx-self@7.25.9': resolution: {integrity: sha512-y8quW6p0WHkEhmErnfe58r7x0A70uKphQm8Sp8cV7tjNQwK56sNVK0M73LK3WuYmsuyrftut4xAkjjgU0twaMg==} engines: {node: '>=6.9.0'} @@ -2928,12 +3068,30 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-react-pure-annotations@7.25.9': + resolution: {integrity: sha512-KQ/Takk3T8Qzj5TppkS1be588lkbTp5uj7w6a0LeQaTMSckU/wK0oJ/pih+T690tkgI5jfmg2TqDJvd41Sj1Cg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-regenerator@7.25.9': resolution: {integrity: sha512-vwDcDNsgMPDGP0nMqzahDWE5/MLcX8sv96+wfX7as7LoF/kr97Bo/7fI00lXY4wUXYfVmwIIyG80fGZ1uvt2qg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-regexp-modifiers@7.26.0': + resolution: {integrity: sha512-vN6saax7lrA2yA/Pak3sCxuD6F5InBjn9IcrIKQPjpsLvuHYLVroTxjdlVRHjjBWxKOqIwpTXDkOssYT4BFdRw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/plugin-transform-reserved-words@7.25.9': + resolution: {integrity: sha512-7DL7DKYjn5Su++4RXu8puKZm2XBPHyjWLUidaPEkCUBbE7IPcsrkRHggAOOKydH1dASWdcUBxrkOGNxUv5P3Jg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-runtime@7.25.9': resolution: {integrity: sha512-nZp7GlEl+yULJrClz0SwHPqir3lc0zsPrDHQUcxGspSL7AKrexNSEfTbfqnDNJUO13bgKyfuOLMF8Xqtu8j3YQ==} engines: {node: '>=6.9.0'} @@ -2958,24 +3116,77 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-strict-mode@7.25.9': + resolution: {integrity: sha512-DplEwkN9xt6XCz/4oC9l8FJGn7LnOGPU7v08plq+OclMT55zAR9lkX7QIbQ9XscvvJNYpLUfYO4IYz/7JGkbXQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-template-literals@7.25.9': + resolution: {integrity: sha512-o97AE4syN71M/lxrCtQByzphAdlYluKPDBzDVzMmfCobUjjhAryZV0AIpRPrxN0eAkxXO6ZLEScmt+PNhj2OTw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-typeof-symbol@7.25.9': + resolution: {integrity: sha512-v61XqUMiueJROUv66BVIOi0Fv/CUuZuZMl5NkRoCVxLAnMexZ0A3kMe7vvZ0nulxMuMp0Mk6S5hNh48yki08ZA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-typescript@7.25.9': resolution: {integrity: sha512-7PbZQZP50tzv2KGGnhh82GSyMB01yKY9scIjf1a+GfZCtInOWqUH5+1EBU4t9fyR5Oykkkc9vFTs4OHrhHXljQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-unicode-escapes@7.25.9': + resolution: {integrity: sha512-s5EDrE6bW97LtxOcGj1Khcx5AaXwiMmi4toFWRDP9/y0Woo6pXC+iyPu/KuhKtfSrNFd7jJB+/fkOtZy6aIC6Q==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-unicode-property-regex@7.25.9': + resolution: {integrity: sha512-Jt2d8Ga+QwRluxRQ307Vlxa6dMrYEMZCgGxoPR8V52rxPyldHu3hdlHspxaqYmE7oID5+kB+UKUB/eWS+DkkWg==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-unicode-regex@7.25.9': resolution: {integrity: sha512-yoxstj7Rg9dlNn9UQxzk4fcNivwv4nUYz7fYXBaKxvw/lnmPuOm/ikoELygbYq68Bls3D/D+NBPHiLwZdZZ4HA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-unicode-sets-regex@7.25.9': + resolution: {integrity: sha512-8BYqO3GeVNHtx69fdPshN3fnzUNLrWdHhk/icSwigksJGczKSizZ+Z6SBCxTs723Fr5VSNorTIK7a+R2tISvwQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/preset-env@7.26.0': + resolution: {integrity: sha512-H84Fxq0CQJNdPFT2DrfnylZ3cf5K43rGfWK4LJGPpjKHiZlk0/RzwEus3PDDZZg+/Er7lCA03MVacueUuXdzfw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/preset-flow@7.25.9': resolution: {integrity: sha512-EASHsAhE+SSlEzJ4bzfusnXSHiU+JfAYzj+jbw2vgQKgq5HrUr8qs+vgtiEL5dOH6sEweI+PNt2D7AqrDSHyqQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/preset-modules@0.1.6-no-external-plugins': + resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} + peerDependencies: + '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 + + '@babel/preset-react@7.25.9': + resolution: {integrity: sha512-D3to0uSPiWE7rBrdIICCd0tJSIGpLaaGptna2+w7Pft5xMqLpA1sz99DK5TZ1TjGbdQ/VI1eCSZ06dv3lT4JOw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + '@babel/preset-typescript@7.26.0': resolution: {integrity: sha512-NMk1IGZ5I/oHhoXEElcm+xUnL/szL6xflkFZmoEU9xj1qSJXpiS7rsspYo92B4DRCDvZn2erT5LdsCeXAKNCkg==} engines: {node: '>=6.9.0'} @@ -3029,16 +3240,6 @@ packages: '@eggjs/yauzl@2.11.0': resolution: {integrity: sha512-Jq+k2fCZJ3i3HShb0nxLUiAgq5pwo8JTT1TrH22JoehZQ0Nm2dvByGIja1NYfNyuE4Tx5/Dns5nVsBN/mlC8yg==} - '@eslint-community/eslint-utils@4.4.1': - resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - - '@eslint-community/regexpp@4.12.1': - resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/eslintrc@1.4.1': resolution: {integrity: sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -3210,9 +3411,6 @@ packages: '@mdn/browser-compat-data@4.2.1': resolution: {integrity: sha512-EWUguj2kd7ldmrF9F+vI5hUOralPd+sdsUnYbRy33vZTuZkduC1shE9TtEMEjAQwyfyMb4ole5KtjF8MsnQOlA==} - '@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1': - resolution: {integrity: sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==} - '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} @@ -3329,30 +3527,16 @@ packages: resolution: {integrity: sha512-+vJYpMnENFrwtgvDfUj+CtVJRJuUnzAUYT0/Pb68Sq9RfcZ5xdcCuUgyf7JO+akW2VTBoJY427wkcxU30qrWWw==} engines: {node: '>=18'} - '@react-native/babel-plugin-codegen@0.76.1': - resolution: {integrity: sha512-V9bGLyEdAF39nvn4L5gaJcPX1SvCHPJhaT3qfpVGvCnl7WPhdRyCq++WsN8HXlpo6WOAf6//oruLnLdl3RNM4Q==} - engines: {node: '>=18'} - '@react-native/babel-preset@0.74.87': resolution: {integrity: sha512-hyKpfqzN2nxZmYYJ0tQIHG99FQO0OWXp/gVggAfEUgiT+yNKas1C60LuofUsK7cd+2o9jrpqgqW4WzEDZoBlTg==} engines: {node: '>=18'} - '@react-native/babel-preset@0.76.1': - resolution: {integrity: sha512-b6YRmA13CmVuTQKHRen/Q0glHwmZFZoEDs+MJ1NL0UNHq9V5ytvdwTW1ntkmjtXuTnPMzkwYvumJBN9UTZjkBA==} - engines: {node: '>=18'} - '@react-native/codegen@0.74.87': resolution: {integrity: sha512-GMSYDiD+86zLKgMMgz9z0k6FxmRn+z6cimYZKkucW4soGbxWsbjUAZoZ56sJwt2FJ3XVRgXCrnOCgXoH/Bkhcg==} engines: {node: '>=18'} peerDependencies: '@babel/preset-env': ^7.1.6 - '@react-native/codegen@0.76.1': - resolution: {integrity: sha512-7lE0hk2qq27wVeK5eF654v7XsKoRa7ficrfSwIDEDZ1aLB2xgUzLrsq+glSAP9EuzT6ycHhtD3QyqI+TqnlS/A==} - engines: {node: '>=18'} - peerDependencies: - '@babel/preset-env': ^7.1.6 - '@react-native/community-cli-plugin@0.74.87': resolution: {integrity: sha512-EgJG9lSr8x3X67dHQKQvU6EkO+3ksVlJHYIVv6U/AmW9dN80BEFxgYbSJ7icXS4wri7m4kHdgeq2PQ7/3vvrTQ==} engines: {node: '>=18'} @@ -3365,17 +3549,6 @@ packages: resolution: {integrity: sha512-7TmZ3hTHwooYgIHqc/z87BMe1ryrIqAUi+AF7vsD+EHCGxHFdMjSpf1BZ2SUPXuLnF2cTiTfV2RwhbPzx0tYIA==} engines: {node: '>=18'} - '@react-native/eslint-config@0.73.2': - resolution: {integrity: sha512-YzMfes19loTfbrkbYNAfHBDXX4oRBzc5wnvHs4h2GIHUj6YKs5ZK5lldqSrBJCdZAI3nuaO9Qj+t5JRwou571w==} - engines: {node: '>=18'} - peerDependencies: - eslint: '>=8' - prettier: '>=2' - - '@react-native/eslint-plugin@0.73.1': - resolution: {integrity: sha512-8BNMFE8CAI7JLWLOs3u33wcwcJ821LYs5g53Xyx9GhSg0h8AygTwDrwmYb/pp04FkCNCPjKPBoaYRthQZmxgwA==} - engines: {node: '>=18'} - '@react-native/gradle-plugin@0.74.87': resolution: {integrity: sha512-T+VX0N1qP+U9V4oAtn7FTX7pfsoVkd1ocyw9swYXgJqU2fK7hC9famW7b3s3ZiufPGPr1VPJe2TVGtSopBjL6A==} engines: {node: '>=18'} @@ -3684,17 +3857,6 @@ packages: typescript: optional: true - '@typescript-eslint/eslint-plugin@5.62.0': - resolution: {integrity: sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - '@typescript-eslint/parser': ^5.0.0 - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - '@typescript-eslint/parser@5.15.0': resolution: {integrity: sha512-NGAYP/+RDM2sVfmKiKOCgJYPstAO40vPAgACoWPO/+yoYKSgAXIFaBKsV8P0Cc7fwKgvj27SjRNX4L7f4/jCKQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -3705,24 +3867,10 @@ packages: typescript: optional: true - '@typescript-eslint/parser@5.62.0': - resolution: {integrity: sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - '@typescript-eslint/scope-manager@5.15.0': resolution: {integrity: sha512-EFiZcSKrHh4kWk0pZaa+YNJosvKE50EnmN4IfgjkA3bTHElPtYcd2U37QQkNTqwMCS7LXeDeZzEqnsOH8chjSg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - '@typescript-eslint/scope-manager@5.62.0': - resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - '@typescript-eslint/type-utils@5.15.0': resolution: {integrity: sha512-KGeDoEQ7gHieLydujGEFLyLofipe9PIzfvA/41urz4hv+xVxPEbmMQonKSynZ0Ks2xDhJQ4VYjB3DnRiywvKDA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -3733,24 +3881,10 @@ packages: typescript: optional: true - '@typescript-eslint/type-utils@5.62.0': - resolution: {integrity: sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: '*' - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - '@typescript-eslint/types@5.15.0': resolution: {integrity: sha512-yEiTN4MDy23vvsIksrShjNwQl2vl6kJeG9YkVJXjXZnkJElzVK8nfPsWKYxcsGWG8GhurYXP4/KGj3aZAxbeOA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - '@typescript-eslint/types@5.62.0': - resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - '@typescript-eslint/typescript-estree@5.15.0': resolution: {integrity: sha512-Hb0e3dGc35b75xLzixM3cSbG1sSbrTBQDfIScqdyvrfJZVEi4XWAT+UL/HMxEdrJNB8Yk28SKxPLtAhfCbBInA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -3760,35 +3894,16 @@ packages: typescript: optional: true - '@typescript-eslint/typescript-estree@5.62.0': - resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - '@typescript-eslint/utils@5.15.0': resolution: {integrity: sha512-081rWu2IPKOgTOhHUk/QfxuFog8m4wxW43sXNOMSCdh578tGJ1PAaWPsj42LOa7pguh173tNlMigsbrHvh/mtA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - '@typescript-eslint/utils@5.62.0': - resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - '@typescript-eslint/visitor-keys@5.15.0': resolution: {integrity: sha512-+vX5FKtgvyHbmIJdxMJ2jKm9z2BIlXJiuewI8dsDYMp5LzPUcuTT78Ya5iwvQg3VqSVdmxyM8Anj1Jeq7733ZQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - '@typescript-eslint/visitor-keys@5.62.0': - resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - '@vimeo/player@2.16.4': resolution: {integrity: sha512-i+ids9ziQuai3mp8XzF9Q5b2hLgRCekRcefdnoy+RkKUR8Xq0cJndnk9jHugEOw8v6PLj7tO3eEAw4lu2/AG2Q==} @@ -4034,30 +4149,10 @@ packages: array-flatten@1.1.1: resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==} - array-includes@3.1.8: - resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==} - engines: {node: '>= 0.4'} - array-union@2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} - array.prototype.findlast@1.2.5: - resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} - engines: {node: '>= 0.4'} - - array.prototype.flat@1.3.2: - resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} - engines: {node: '>= 0.4'} - - array.prototype.flatmap@1.3.2: - resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} - engines: {node: '>= 0.4'} - - array.prototype.tosorted@1.1.4: - resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} - engines: {node: '>= 0.4'} - arraybuffer.prototype.slice@1.0.3: resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==} engines: {node: '>= 0.4'} @@ -4150,6 +4245,9 @@ packages: resolution: {integrity: sha512-Ys3tUKAmfnkRUpPdpa98eYrAR0nV+sSFUZZEGuQ2EbFd1y4SOLtD5QDNHAq+bb9a+bbXvYQC4b+ID/THIMcU6Q==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} + babel-plugin-module-resolver@5.0.2: + resolution: {integrity: sha512-9KtaCazHee2xc0ibfqsDeamwDps6FZNo5S0Q81dUqEuFzVwPhcT4J5jOqIVvgCA3Q/wO9hKYxN/Ds3tIsp5ygg==} + babel-plugin-polyfill-corejs2@0.4.11: resolution: {integrity: sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==} peerDependencies: @@ -4165,9 +4263,6 @@ packages: peerDependencies: '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - babel-plugin-syntax-hermes-parser@0.23.1: - resolution: {integrity: sha512-uNLD0tk2tLUjGFdmCk+u/3FEw2o+BAwW4g+z2QVlxJrzZYOOPADroEcNtTPt5lNiScctaUmnsTkVEnOwZUOLhA==} - babel-plugin-transform-flow-enums@0.0.2: resolution: {integrity: sha512-g4aaCrDDOsWjbm0PUUeVnkcVd6AKJsVc/MbnPhEotEpkeJQP6b8nzewohQi7+QS8UyPehOhGWn0nOwjvWpmMvQ==} @@ -4658,6 +4753,15 @@ packages: resolution: {integrity: sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==} engines: {node: '>=4'} + cosmiconfig@9.0.0: + resolution: {integrity: sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==} + engines: {node: '>=14'} + peerDependencies: + typescript: '>=4.9.5' + peerDependenciesMeta: + typescript: + optional: true + cpu-features@0.0.10: resolution: {integrity: sha512-9IkYqtX3YHPCzoVg1Py+o9057a3i0fp7S530UWokCSaFVTc7CwXPRiOjRjBQQ18ZCNafx78YfnG+HALxtVmOGA==} engines: {node: '>=10.0.0'} @@ -4836,6 +4940,10 @@ packages: resolution: {integrity: sha512-TllpMR/t0M5sqCXfj85i4XaAzxmS5tVA16dqvdkMwGmzI+dXLXnw3J+3Vdv7VKw+ThlTMboK6i9rnZ6Nntj5CQ==} engines: {node: '>= 14'} + del@6.1.1: + resolution: {integrity: sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==} + engines: {node: '>=10'} + del@7.1.0: resolution: {integrity: sha512-v2KyNk7efxhlyHpjEvfyxaAihKKK0nWCuf6ZtqZcFFpQRG0bJ12Qsr0RpvsICMjAAZ8DOVCxrlqpxISlMHC4Kg==} engines: {node: '>=14.16'} @@ -4900,10 +5008,6 @@ packages: resolution: {integrity: sha512-/0YNa3ZDNeLr/tSckmD69+Gq+qVNhvKfAHNeZJBnp7EOP6RGKV8ORrJHkUn20So5wU+xxT7+1n5u8PjHbfjbSA==} engines: {node: '>= 8.0'} - doctrine@2.1.0: - resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} - engines: {node: '>=0.10.0'} - doctrine@3.0.0: resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} engines: {node: '>=6.0.0'} @@ -5025,10 +5129,6 @@ packages: es-get-iterator@1.1.3: resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==} - es-iterator-helpers@1.1.0: - resolution: {integrity: sha512-/SurEfycdyssORP/E+bj4sEu1CWw4EmLDsHynHwSXQ7utgbrMRWW195pTrCjFgFCddf/UkYm3oqKPRq5i8bJbw==} - engines: {node: '>= 0.4'} - es-object-atoms@1.0.0: resolution: {integrity: sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==} engines: {node: '>= 0.4'} @@ -5037,9 +5137,6 @@ packages: resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==} engines: {node: '>= 0.4'} - es-shim-unscopables@1.0.2: - resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} - es-to-primitive@1.2.1: resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} engines: {node: '>= 0.4'} @@ -5072,75 +5169,12 @@ packages: engines: {node: '>=6.0'} hasBin: true - eslint-config-prettier@8.10.0: - resolution: {integrity: sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==} - hasBin: true - peerDependencies: - eslint: '>=7.0.0' - eslint-plugin-ava@13.2.0: resolution: {integrity: sha512-i5B5izsEdERKQLruk1nIWzTTE7C26/ju8qQf7JeyRv32XT2lRMW0zMFZNhIrEf5/5VvpSz2rqrV7UcjClGbKsw==} engines: {node: '>=12.22 <13 || >=14.17 <15 || >=16.4'} peerDependencies: eslint: '>=7.22.0' - eslint-plugin-eslint-comments@3.2.0: - resolution: {integrity: sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==} - engines: {node: '>=6.5.0'} - peerDependencies: - eslint: '>=4.19.1' - - eslint-plugin-ft-flow@2.0.3: - resolution: {integrity: sha512-Vbsd/b+LYA99jUbsL6viEUWShFaYQt2YQs3QN3f+aeszOhh2sgdcU0mjzDyD4yyBvMc8qy2uwvBBWfMzEX06tg==} - engines: {node: '>=12.22.0'} - peerDependencies: - '@babel/eslint-parser': ^7.12.0 - eslint: ^8.1.0 - - eslint-plugin-jest@26.9.0: - resolution: {integrity: sha512-TWJxWGp1J628gxh2KhaH1H1paEdgE2J61BBF1I59c6xWeL5+D1BzMxGDN/nXAfX+aSkR5u80K+XhskK6Gwq9ng==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - '@typescript-eslint/eslint-plugin': ^5.0.0 - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - jest: '*' - peerDependenciesMeta: - '@typescript-eslint/eslint-plugin': - optional: true - jest: - optional: true - - eslint-plugin-prettier@4.2.1: - resolution: {integrity: sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==} - engines: {node: '>=12.0.0'} - peerDependencies: - eslint: '>=7.28.0' - eslint-config-prettier: '*' - prettier: '>=2.0.0' - peerDependenciesMeta: - eslint-config-prettier: - optional: true - - eslint-plugin-react-hooks@4.6.2: - resolution: {integrity: sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==} - engines: {node: '>=10'} - peerDependencies: - eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 - - eslint-plugin-react-native-globals@0.1.2: - resolution: {integrity: sha512-9aEPf1JEpiTjcFAmmyw8eiIXmcNZOqaZyHO77wgm0/dWfT/oxC1SrIq8ET38pMxHYrcB6Uew+TzUVsBeczF88g==} - - eslint-plugin-react-native@4.1.0: - resolution: {integrity: sha512-QLo7rzTBOl43FvVqDdq5Ql9IoElIuTdjrz9SKAXCvULvBoRZ44JGSkx9z4999ZusCsb4rK3gjS8gOGyeYqZv2Q==} - peerDependencies: - eslint: ^3.17.0 || ^4 || ^5 || ^6 || ^7 || ^8 - - eslint-plugin-react@7.37.2: - resolution: {integrity: sha512-EsTAnj9fLVr/GZleBLFbj/sSuXeWmp1eXIN60ceYnZveqEaUCyW4X+Vh4WTdUhCkW4xutXYqTXCUSyqD4rB75w==} - engines: {node: '>=4'} - peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 - eslint-scope@5.1.1: resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} engines: {node: '>=8.0.0'} @@ -5224,6 +5258,10 @@ packages: resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} engines: {node: '>=0.8.x'} + execa@4.1.0: + resolution: {integrity: sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==} + engines: {node: '>=10'} + execa@5.1.1: resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} engines: {node: '>=10'} @@ -5271,6 +5309,9 @@ packages: resolution: {integrity: sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==} engines: {'0': node >=0.6.0} + fast-base64-decode@1.0.0: + resolution: {integrity: sha512-qwaScUgUGBYeDNRnbc/KyllVU88Jk1pRHPStuF/lO7B0/RTRLj7U0lkdTAutlBblY08rwZDff6tNU9cjv6j//Q==} + fast-deep-equal@2.0.1: resolution: {integrity: sha512-bCK/2Z4zLidyB4ReuIsvALH6w31YfAQDmXMqMx6FyfHqvBxtjC0eRumeSu4Bs3XtXwpyIywtSTrVT99BxY1f9w==} @@ -5348,6 +5389,9 @@ packages: resolution: {integrity: sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==} engines: {node: '>= 0.8'} + find-babel-config@2.1.2: + resolution: {integrity: sha512-ZfZp1rQyp4gyuxqt1ZqjFGVeVBvmpURMqdIWXbPRfB97Bf6BzdK/xSIbylEINzQ0kB5tlDQfn9HkNXXWsqTqLg==} + find-cache-dir@2.1.0: resolution: {integrity: sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==} engines: {node: '>=6'} @@ -5431,6 +5475,10 @@ packages: fs-constants@1.0.0: resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} + fs-extra@10.1.0: + resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} + engines: {node: '>=12'} + fs-extra@11.2.0: resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==} engines: {node: '>=14.14'} @@ -5547,6 +5595,15 @@ packages: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} deprecated: Glob versions prior to v9 are no longer supported + glob@8.1.0: + resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} + engines: {node: '>=12'} + deprecated: Glob versions prior to v9 are no longer supported + + glob@9.3.5: + resolution: {integrity: sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==} + engines: {node: '>=16 || 14 >=14.17'} + globals@11.12.0: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} @@ -5611,9 +5668,6 @@ packages: grapheme-splitter@1.0.4: resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} - graphemer@1.4.0: - resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - gzip-size@6.0.0: resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==} engines: {node: '>=10'} @@ -5743,6 +5797,10 @@ packages: resolution: {integrity: sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==} engines: {node: '>= 14'} + human-signals@1.1.1: + resolution: {integrity: sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==} + engines: {node: '>=8.12.0'} + human-signals@2.1.0: resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} engines: {node: '>=10.17.0'} @@ -5863,6 +5921,10 @@ packages: resolution: {integrity: sha512-1ANGLZ+Nkv1ptFb2pa8oG8Lem4krflKuX/gINiHJHjJUKaJHk/SXk5x6K3J+39/p0h1RQ2saROclJJ+QLvETCQ==} engines: {node: '>=8'} + is-absolute@1.0.0: + resolution: {integrity: sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==} + engines: {node: '>=0.10.0'} + is-arguments@1.1.1: resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} engines: {node: '>= 0.4'} @@ -5874,10 +5936,6 @@ packages: is-arrayish@0.2.1: resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} - is-async-function@2.0.0: - resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} - engines: {node: '>= 0.4'} - is-bigint@1.0.4: resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} @@ -5925,9 +5983,6 @@ packages: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} - is-finalizationregistry@1.0.2: - resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==} - is-fullwidth-code-point@1.0.0: resolution: {integrity: sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==} engines: {node: '>=0.10.0'} @@ -5948,9 +6003,12 @@ packages: resolution: {integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==} engines: {node: '>=6'} - is-generator-function@1.0.10: - resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} - engines: {node: '>= 0.4'} + is-git-dirty@2.0.2: + resolution: {integrity: sha512-U3YCo+GKR/rDsY7r0v/LBICbQwsx859tDQnAT+v0E/zCDeWbQ1TUt1FtyExeyik7VIJlYOLHCIifLdz71HDalg==} + engines: {node: '>=10'} + + is-git-repository@2.0.0: + resolution: {integrity: sha512-HDO50CG5suIAcmqG4F1buqVXEZRPn+RaXIn9pFKq/947FBo2bCRwK7ZluEVZOy99a4IQyqsjbKEpAiOXCccOHQ==} is-glob@4.0.3: resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} @@ -5982,10 +6040,18 @@ packages: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} engines: {node: '>=0.12.0'} + is-path-cwd@2.2.0: + resolution: {integrity: sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==} + engines: {node: '>=6'} + is-path-cwd@3.0.0: resolution: {integrity: sha512-kyiNFFLU0Ampr6SDZitD/DwUo4Zs1nSdnygUBqsu3LooL00Qvb5j+UnvApUn/TTj1J3OuE6BTdQ5rudKmU2ZaA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + is-path-inside@3.0.3: + resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} + engines: {node: '>=8'} + is-path-inside@4.0.0: resolution: {integrity: sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==} engines: {node: '>=12'} @@ -6019,6 +6085,10 @@ packages: resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} engines: {node: '>= 0.4'} + is-relative@1.0.0: + resolution: {integrity: sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==} + engines: {node: '>=0.10.0'} + is-set@2.0.3: resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} engines: {node: '>= 0.4'} @@ -6050,6 +6120,10 @@ packages: is-typedarray@1.0.0: resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} + is-unc-path@1.0.0: + resolution: {integrity: sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==} + engines: {node: '>=0.10.0'} + is-unicode-supported@0.1.0: resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} engines: {node: '>=10'} @@ -6072,6 +6146,10 @@ packages: resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==} engines: {node: '>= 0.4'} + is-windows@1.0.2: + resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} + engines: {node: '>=0.10.0'} + is-wsl@1.1.0: resolution: {integrity: sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==} engines: {node: '>=4'} @@ -6128,10 +6206,6 @@ packages: resolution: {integrity: sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==} engines: {node: '>=8'} - iterator.prototype@1.1.3: - resolution: {integrity: sha512-FW5iMbeQ6rBGm/oKgzq2aW4KvAGpxPzYES8N4g4xNXUKpL1mclMvOe+76AcLDTvD+Ze+sOpVhgdAQEKF4L9iGQ==} - engines: {node: '>= 0.4'} - jackspeak@3.4.3: resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} @@ -6443,10 +6517,6 @@ packages: jstimezonedetect@1.0.7: resolution: {integrity: sha512-ARADHortktl9IZ1tr4GHwGPIAzgz3mLNCbR/YjWtRtc/O0o634O3NeFlpLjv95EvuDA5dc8z6yfgbS8nUc4zcQ==} - jsx-ast-utils@3.3.5: - resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} - engines: {node: '>=4.0'} - jszip@3.10.1: resolution: {integrity: sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==} @@ -6461,6 +6531,10 @@ packages: resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} engines: {node: '>=6'} + kleur@4.1.5: + resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} + engines: {node: '>=6'} + ky@0.33.3: resolution: {integrity: sha512-CasD9OCEQSFIam2U8efFK81Yeg8vNMTBUqtMOHlrcWQHqUX3HeCl9Dr31u4toV7emlH8Mymk5+9p0lL6mKb/Xw==} engines: {node: '>=14.16'} @@ -6797,6 +6871,10 @@ packages: resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} engines: {node: '>=10'} + minimatch@8.0.4: + resolution: {integrity: sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==} + engines: {node: '>=16 || 14 >=14.17'} + minimatch@9.0.5: resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} engines: {node: '>=16 || 14 >=14.17'} @@ -6831,6 +6909,10 @@ packages: resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} engines: {node: '>=8'} + minipass@4.2.8: + resolution: {integrity: sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==} + engines: {node: '>=8'} + minipass@5.0.0: resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==} engines: {node: '>=8'} @@ -6893,9 +6975,6 @@ packages: native-promise-only@0.8.1: resolution: {integrity: sha512-zkVhZUA3y8mbz652WrL5x0fB0ehrBkulWT3TomAQ9iDtyXZvzKeEA6GPxAItBYeNYl5yngKRX612qHOhvMkDeg==} - natural-compare-lite@1.4.0: - resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} - natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} @@ -7079,18 +7158,6 @@ packages: resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} engines: {node: '>= 0.4'} - object.entries@1.1.8: - resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==} - engines: {node: '>= 0.4'} - - object.fromentries@2.0.8: - resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} - engines: {node: '>= 0.4'} - - object.values@1.2.0: - resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==} - engines: {node: '>= 0.4'} - on-finished@2.3.0: resolution: {integrity: sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==} engines: {node: '>= 0.8'} @@ -7359,6 +7426,10 @@ packages: resolution: {integrity: sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==} engines: {node: '>=10'} + pkg-up@3.1.0: + resolution: {integrity: sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==} + engines: {node: '>=8'} + plur@5.1.0: resolution: {integrity: sha512-VP/72JeXqak2KiOzjgKtQen5y3IZHn+9GOuLDafPv0eXa47xq0At93XahYBs26MsifCQ4enGKwbjBTKgb9QJXg==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -7374,10 +7445,6 @@ packages: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} - prettier-linter-helpers@1.0.0: - resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==} - engines: {node: '>=6.0.0'} - pretty-format@26.6.2: resolution: {integrity: sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg==} engines: {node: '>= 10'} @@ -7427,9 +7494,6 @@ packages: resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} engines: {node: '>= 6'} - prop-types@15.8.1: - resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} - proxy-addr@2.0.7: resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} engines: {node: '>= 0.10'} @@ -7521,15 +7585,22 @@ packages: react-devtools-core@5.3.2: resolution: {integrity: sha512-crr9HkVrDiJ0A4zot89oS0Cgv0Oa4OG1Em4jit3P3ZxZSKPMYyMjfwMqgcJna9o625g8oN87rBm8SWWrSTBZxg==} - react-is@16.13.1: - resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} - react-is@17.0.2: resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} react-is@18.3.1: resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} + react-native-builder-bob@0.30.3: + resolution: {integrity: sha512-7w+oNNNkY+cR7Z3GgKaDWg7CeSxpv1ZUox42Ji/rViAxygMmtSPBe5I3K723OjGJXhvJCyUK5RRvzefNPw7Amg==} + engines: {node: '>= 18.0.0'} + hasBin: true + + react-native-get-random-values@1.11.0: + resolution: {integrity: sha512-4BTbDbRmS7iPdhYLRcz3PGFIpFJBwNZg9g42iwa2P6FOv9vZj/xJc678RZXnLNZzd0qd7Q3CCF6Yd+CU2eoXKQ==} + peerDependencies: + react-native: '>=0.56' + react-native@0.74.5: resolution: {integrity: sha512-Bgg2WvxaGODukJMTZFTZBNMKVaROHLwSb8VAGEdrlvKwfb1hHg/3aXTUICYk7dwgAnb+INbGMwnF8yeAgIUmqw==} engines: {node: '>=18'} @@ -7599,10 +7670,6 @@ packages: resolution: {integrity: sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==} engines: {node: '>=6.0.0'} - reflect.getprototypeof@1.0.6: - resolution: {integrity: sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==} - engines: {node: '>= 0.4'} - regenerate-unicode-properties@10.2.0: resolution: {integrity: sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==} engines: {node: '>=4'} @@ -7660,6 +7727,9 @@ packages: requires-port@1.0.0: resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} + reselect@4.1.8: + resolution: {integrity: sha512-ab9EmR80F/zQTMNeneUr4cv+jSwPJgIlvEmVwLerwrWVbpLlBuls9XHzIeTFy4cegU2NHBp3va0LKOzU5qFEYQ==} + resolve-alpn@1.2.1: resolution: {integrity: sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==} @@ -7687,10 +7757,6 @@ packages: resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} hasBin: true - resolve@2.0.0-next.5: - resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} - hasBin: true - responselike@2.0.1: resolution: {integrity: sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==} @@ -8091,9 +8157,6 @@ packages: resolution: {integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==} engines: {node: '>=10'} - string-natural-compare@3.0.1: - resolution: {integrity: sha512-n3sPwynL1nwKi3WJ6AIsClwBMa0zTi54fn2oLU6ndfTSIO05xaznjSf15PcBZU6FNWbmN5Q6cxT4V5hGvB4taw==} - string-width@1.0.2: resolution: {integrity: sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==} engines: {node: '>=0.10.0'} @@ -8106,17 +8169,10 @@ packages: resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} engines: {node: '>=12'} - string.prototype.matchall@4.0.11: - resolution: {integrity: sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==} - engines: {node: '>= 0.4'} - string.prototype.padend@3.1.6: resolution: {integrity: sha512-XZpspuSB7vJWhvJc9DLSlrXl1mcA2BdoY5jjnS135ydXqLoqhs96JjDtCkjJEQHvfqZIp9hBuBMgI589peyx9Q==} engines: {node: '>= 0.4'} - string.prototype.repeat@1.0.0: - resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} - string.prototype.trim@1.2.9: resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==} engines: {node: '>= 0.4'} @@ -8456,6 +8512,10 @@ packages: unbzip2-stream@1.4.3: resolution: {integrity: sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==} + unc-path-regex@0.1.2: + resolution: {integrity: sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==} + engines: {node: '>=0.10.0'} + undici-types@5.26.5: resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} @@ -8696,10 +8756,6 @@ packages: which-boxed-primitive@1.0.2: resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} - which-builtin-type@1.1.4: - resolution: {integrity: sha512-bppkmBSsHFmIMSl8BO9TbsyzsvGjVoppt8xUiGzwiu/bhDCGxnpOKCxgqj6GuyHE0mINMDecBFPlOm2hzY084w==} - engines: {node: '>= 0.4'} - which-collection@1.0.2: resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} engines: {node: '>= 0.4'} @@ -8932,14 +8988,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/eslint-parser@7.25.9(@babel/core@7.25.2)(eslint@8.11.0)': - dependencies: - '@babel/core': 7.25.2 - '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1 - eslint: 8.11.0 - eslint-visitor-keys: 2.1.0 - semver: 6.3.1 - '@babel/generator@7.25.6': dependencies: '@babel/types': 7.25.6 @@ -8959,13 +9007,12 @@ snapshots: dependencies: '@babel/types': 7.26.0 - '@babel/helper-compilation-targets@7.25.2': + '@babel/helper-builder-binary-assignment-operator-visitor@7.25.9': dependencies: - '@babel/compat-data': 7.25.4 - '@babel/helper-validator-option': 7.25.9 - browserslist: 4.24.2 - lru-cache: 5.1.1 - semver: 6.3.1 + '@babel/traverse': 7.25.9 + '@babel/types': 7.26.0 + transitivePeerDependencies: + - supports-color '@babel/helper-compilation-targets@7.25.9': dependencies: @@ -9008,7 +9055,7 @@ snapshots: '@babel/helper-environment-visitor@7.24.7': dependencies: - '@babel/types': 7.25.6 + '@babel/types': 7.26.0 '@babel/helper-member-expression-to-functions@7.25.9': dependencies: @@ -9111,6 +9158,41 @@ snapshots: dependencies: '@babel/types': 7.26.0 + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/traverse': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 + '@babel/plugin-transform-optional-chaining': 7.25.9(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color + + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/traverse': 7.25.9 + transitivePeerDependencies: + - supports-color + '@babel/plugin-proposal-async-generator-functions@7.20.7(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -9156,7 +9238,7 @@ snapshots: dependencies: '@babel/compat-data': 7.25.4 '@babel/core': 7.25.2 - '@babel/helper-compilation-targets': 7.25.2 + '@babel/helper-compilation-targets': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.25.2) '@babel/plugin-transform-parameters': 7.25.9(@babel/core@7.25.2) @@ -9176,10 +9258,14 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.25.2)': dependencies: @@ -9211,11 +9297,21 @@ snapshots: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-syntax-import-assertions@7.26.0(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-syntax-import-attributes@7.25.6(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-syntax-import-attributes@7.26.0(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -9234,7 +9330,7 @@ snapshots: '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.25.2)': dependencies: @@ -9244,17 +9340,17 @@ snapshots: '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 - '@babel/helper-plugin-utils': 7.24.8 + '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.25.2)': dependencies: @@ -9276,6 +9372,12 @@ snapshots: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-transform-arrow-functions@7.25.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -9299,6 +9401,11 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-block-scoped-functions@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-transform-block-scoping@7.25.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -9312,6 +9419,14 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-class-static-block@7.26.0(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.9 + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-classes@7.25.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -9335,6 +9450,41 @@ snapshots: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-transform-dotall-regex@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-duplicate-keys@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-dynamic-import@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-exponentiation-operator@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-builder-binary-assignment-operator-visitor': 7.25.9 + '@babel/helper-plugin-utils': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-export-namespace-from@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-transform-flow-strip-types@7.25.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -9358,6 +9508,11 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-json-strings@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-transform-literals@7.25.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -9368,6 +9523,19 @@ snapshots: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-transform-member-expression-literals@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-modules-amd@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-module-transforms': 7.26.0(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.9 + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-modules-commonjs@7.25.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -9377,12 +9545,35 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-modules-systemjs@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-module-transforms': 7.26.0(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-validator-identifier': 7.25.9 + '@babel/traverse': 7.25.9 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-modules-umd@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-module-transforms': 7.26.0(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.9 + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-named-capturing-groups-regex@7.25.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-transform-new-target@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-transform-nullish-coalescing-operator@7.25.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -9400,6 +9591,14 @@ snapshots: '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-transform-parameters': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-object-super@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-replace-supers': 7.25.9(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color + '@babel/plugin-transform-optional-catch-binding@7.25.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -9435,12 +9634,24 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/plugin-transform-react-display-name@7.25.9(@babel/core@7.25.2)': + '@babel/plugin-transform-property-literals@7.25.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.25.9 - '@babel/plugin-transform-react-jsx-self@7.25.9(@babel/core@7.25.2)': + '@babel/plugin-transform-react-display-name@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-react-jsx-development@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/plugin-transform-react-jsx': 7.25.9(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color + + '@babel/plugin-transform-react-jsx-self@7.25.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.25.9 @@ -9461,12 +9672,29 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-react-pure-annotations@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-annotate-as-pure': 7.25.9 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-transform-regenerator@7.25.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.25.9 regenerator-transform: 0.15.2 + '@babel/plugin-transform-regexp-modifiers@7.26.0(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-reserved-words@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -9497,6 +9725,21 @@ snapshots: '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-transform-strict-mode@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-template-literals@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-typeof-symbol@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-transform-typescript@7.25.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -9508,12 +9751,104 @@ snapshots: transitivePeerDependencies: - supports-color + '@babel/plugin-transform-unicode-escapes@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/plugin-transform-unicode-property-regex@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-transform-unicode-regex@7.25.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.25.9 + '@babel/plugin-transform-unicode-sets-regex@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.25.2) + '@babel/helper-plugin-utils': 7.25.9 + + '@babel/preset-env@7.26.0(@babel/core@7.25.2)': + dependencies: + '@babel/compat-data': 7.26.2 + '@babel/core': 7.25.2 + '@babel/helper-compilation-targets': 7.25.9 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-validator-option': 7.25.9 + '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.25.2) + '@babel/plugin-syntax-import-assertions': 7.26.0(@babel/core@7.25.2) + '@babel/plugin-syntax-import-attributes': 7.26.0(@babel/core@7.25.2) + '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.25.2) + '@babel/plugin-transform-arrow-functions': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-async-generator-functions': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-async-to-generator': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-block-scoped-functions': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-block-scoping': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-class-properties': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-class-static-block': 7.26.0(@babel/core@7.25.2) + '@babel/plugin-transform-classes': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-computed-properties': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-destructuring': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-dotall-regex': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-duplicate-keys': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-dynamic-import': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-exponentiation-operator': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-export-namespace-from': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-for-of': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-function-name': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-json-strings': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-literals': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-logical-assignment-operators': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-member-expression-literals': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-modules-amd': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-modules-commonjs': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-modules-systemjs': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-modules-umd': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-named-capturing-groups-regex': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-new-target': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-nullish-coalescing-operator': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-numeric-separator': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-object-rest-spread': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-object-super': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-optional-catch-binding': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-optional-chaining': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-parameters': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-private-methods': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-private-property-in-object': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-property-literals': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-regenerator': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-regexp-modifiers': 7.26.0(@babel/core@7.25.2) + '@babel/plugin-transform-reserved-words': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-shorthand-properties': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-spread': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-sticky-regex': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-template-literals': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-typeof-symbol': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-unicode-escapes': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-unicode-property-regex': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-unicode-regex': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-unicode-sets-regex': 7.25.9(@babel/core@7.25.2) + '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.25.2) + babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.25.2) + babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.25.2) + babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.25.2) + core-js-compat: 3.39.0 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + '@babel/preset-flow@7.25.9(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -9521,6 +9856,25 @@ snapshots: '@babel/helper-validator-option': 7.25.9 '@babel/plugin-transform-flow-strip-types': 7.25.9(@babel/core@7.25.2) + '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/types': 7.26.0 + esutils: 2.0.3 + + '@babel/preset-react@7.25.9(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.25.9 + '@babel/helper-validator-option': 7.25.9 + '@babel/plugin-transform-react-display-name': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-react-jsx': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-react-jsx-development': 7.25.9(@babel/core@7.25.2) + '@babel/plugin-transform-react-pure-annotations': 7.25.9(@babel/core@7.25.2) + transitivePeerDependencies: + - supports-color + '@babel/preset-typescript@7.26.0(@babel/core@7.25.2)': dependencies: '@babel/core': 7.25.2 @@ -9605,13 +9959,6 @@ snapshots: buffer-crc32: 0.2.13 fd-slicer2: 1.2.0 - '@eslint-community/eslint-utils@4.4.1(eslint@8.11.0)': - dependencies: - eslint: 8.11.0 - eslint-visitor-keys: 3.4.3 - - '@eslint-community/regexpp@4.12.1': {} - '@eslint/eslintrc@1.4.1': dependencies: ajv: 6.12.6 @@ -9951,10 +10298,6 @@ snapshots: '@mdn/browser-compat-data@4.2.1': {} - '@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1': - dependencies: - eslint-scope: 5.1.1 - '@nodelib/fs.scandir@2.1.5': dependencies: '@nodelib/fs.stat': 2.0.5 @@ -10043,10 +10386,10 @@ snapshots: transitivePeerDependencies: - supports-color - '@react-native-async-storage/async-storage@2.0.0(react-native@0.74.5(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0))': + '@react-native-async-storage/async-storage@2.0.0(react-native@0.74.5(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0))': dependencies: merge-options: 3.0.4 - react-native: 0.74.5(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0) + react-native: 0.74.5(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0) '@react-native-community/cli-clean@13.6.9(encoding@0.1.13)': dependencies: @@ -10189,21 +10532,14 @@ snapshots: '@react-native/assets-registry@0.74.87': {} - '@react-native/babel-plugin-codegen@0.74.87': + '@react-native/babel-plugin-codegen@0.74.87(@babel/preset-env@7.26.0(@babel/core@7.25.2))': dependencies: - '@react-native/codegen': 0.74.87 + '@react-native/codegen': 0.74.87(@babel/preset-env@7.26.0(@babel/core@7.25.2)) transitivePeerDependencies: - '@babel/preset-env' - supports-color - '@react-native/babel-plugin-codegen@0.76.1': - dependencies: - '@react-native/codegen': 0.76.1 - transitivePeerDependencies: - - '@babel/preset-env' - - supports-color - - '@react-native/babel-preset@0.74.87': + '@react-native/babel-preset@0.74.87(@babel/preset-env@7.26.0(@babel/core@7.25.2))': dependencies: '@babel/core': 7.25.2 '@babel/plugin-proposal-async-generator-functions': 7.20.7(@babel/core@7.25.2) @@ -10245,95 +10581,32 @@ snapshots: '@babel/plugin-transform-typescript': 7.25.9(@babel/core@7.25.2) '@babel/plugin-transform-unicode-regex': 7.25.9(@babel/core@7.25.2) '@babel/template': 7.25.0 - '@react-native/babel-plugin-codegen': 0.74.87 - babel-plugin-transform-flow-enums: 0.0.2(@babel/core@7.25.2) - react-refresh: 0.14.2 - transitivePeerDependencies: - - '@babel/preset-env' - - supports-color - - '@react-native/babel-preset@0.76.1': - dependencies: - '@babel/core': 7.25.2 - '@babel/plugin-proposal-export-default-from': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-syntax-export-default-from': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-transform-arrow-functions': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-async-generator-functions': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-async-to-generator': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-block-scoping': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-class-properties': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-classes': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-computed-properties': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-destructuring': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-flow-strip-types': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-for-of': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-function-name': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-literals': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-logical-assignment-operators': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-modules-commonjs': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-named-capturing-groups-regex': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-nullish-coalescing-operator': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-numeric-separator': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-object-rest-spread': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-optional-catch-binding': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-optional-chaining': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-parameters': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-private-methods': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-private-property-in-object': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-react-display-name': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-react-jsx': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-regenerator': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-runtime': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-shorthand-properties': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-spread': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-sticky-regex': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-typescript': 7.25.9(@babel/core@7.25.2) - '@babel/plugin-transform-unicode-regex': 7.25.9(@babel/core@7.25.2) - '@babel/template': 7.25.9 - '@react-native/babel-plugin-codegen': 0.76.1 - babel-plugin-syntax-hermes-parser: 0.23.1 + '@react-native/babel-plugin-codegen': 0.74.87(@babel/preset-env@7.26.0(@babel/core@7.25.2)) babel-plugin-transform-flow-enums: 0.0.2(@babel/core@7.25.2) react-refresh: 0.14.2 transitivePeerDependencies: - '@babel/preset-env' - supports-color - '@react-native/codegen@0.74.87': + '@react-native/codegen@0.74.87(@babel/preset-env@7.26.0(@babel/core@7.25.2))': dependencies: '@babel/parser': 7.25.6 + '@babel/preset-env': 7.26.0(@babel/core@7.25.2) glob: 7.2.3 hermes-parser: 0.19.1 invariant: 2.2.4 - jscodeshift: 0.14.0 - mkdirp: 0.5.6 - nullthrows: 1.1.1 - transitivePeerDependencies: - - supports-color - - '@react-native/codegen@0.76.1': - dependencies: - '@babel/parser': 7.26.2 - glob: 7.2.3 - hermes-parser: 0.23.1 - invariant: 2.2.4 - jscodeshift: 0.14.0 + jscodeshift: 0.14.0(@babel/preset-env@7.26.0(@babel/core@7.25.2)) mkdirp: 0.5.6 nullthrows: 1.1.1 - yargs: 17.7.2 transitivePeerDependencies: - supports-color - '@react-native/community-cli-plugin@0.74.87(encoding@0.1.13)': + '@react-native/community-cli-plugin@0.74.87(@babel/preset-env@7.26.0(@babel/core@7.25.2))(encoding@0.1.13)': dependencies: '@react-native-community/cli-server-api': 13.6.9(encoding@0.1.13) '@react-native-community/cli-tools': 13.6.9(encoding@0.1.13) '@react-native/dev-middleware': 0.74.87(encoding@0.1.13) - '@react-native/metro-babel-transformer': 0.74.87 + '@react-native/metro-babel-transformer': 0.74.87(@babel/preset-env@7.26.0(@babel/core@7.25.2)) chalk: 4.1.2 execa: 5.1.1 metro: 0.80.12 @@ -10369,37 +10642,14 @@ snapshots: transitivePeerDependencies: - encoding - '@react-native/eslint-config@0.73.2(eslint@8.11.0)(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4)': - dependencies: - '@babel/core': 7.25.2 - '@babel/eslint-parser': 7.25.9(@babel/core@7.25.2)(eslint@8.11.0) - '@react-native/eslint-plugin': 0.73.1 - '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) - '@typescript-eslint/parser': 5.62.0(eslint@8.11.0)(typescript@4.6.4) - eslint: 8.11.0 - eslint-config-prettier: 8.10.0(eslint@8.11.0) - eslint-plugin-eslint-comments: 3.2.0(eslint@8.11.0) - eslint-plugin-ft-flow: 2.0.3(@babel/eslint-parser@7.25.9(@babel/core@7.25.2)(eslint@8.11.0))(eslint@8.11.0) - eslint-plugin-jest: 26.9.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4) - eslint-plugin-prettier: 4.2.1(eslint-config-prettier@8.10.0(eslint@8.11.0))(eslint@8.11.0) - eslint-plugin-react: 7.37.2(eslint@8.11.0) - eslint-plugin-react-hooks: 4.6.2(eslint@8.11.0) - eslint-plugin-react-native: 4.1.0(eslint@8.11.0) - transitivePeerDependencies: - - jest - - supports-color - - typescript - - '@react-native/eslint-plugin@0.73.1': {} - '@react-native/gradle-plugin@0.74.87': {} '@react-native/js-polyfills@0.74.87': {} - '@react-native/metro-babel-transformer@0.74.87': + '@react-native/metro-babel-transformer@0.74.87(@babel/preset-env@7.26.0(@babel/core@7.25.2))': dependencies: '@babel/core': 7.25.2 - '@react-native/babel-preset': 0.74.87 + '@react-native/babel-preset': 0.74.87(@babel/preset-env@7.26.0(@babel/core@7.25.2)) hermes-parser: 0.19.1 nullthrows: 1.1.1 transitivePeerDependencies: @@ -10408,12 +10658,12 @@ snapshots: '@react-native/normalize-colors@0.74.87': {} - '@react-native/virtualized-lists@0.74.87(@types/react@18.3.12)(react-native@0.74.5(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0))(react@18.2.0)': + '@react-native/virtualized-lists@0.74.87(@types/react@18.3.12)(react-native@0.74.5(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0))(react@18.2.0)': dependencies: invariant: 2.2.4 nullthrows: 1.1.1 react: 18.2.0 - react-native: 0.74.5(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0) + react-native: 0.74.5(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0) optionalDependencies: '@types/react': 18.3.12 @@ -10732,25 +10982,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4)': - dependencies: - '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 5.62.0(eslint@8.11.0)(typescript@4.6.4) - '@typescript-eslint/scope-manager': 5.62.0 - '@typescript-eslint/type-utils': 5.62.0(eslint@8.11.0)(typescript@4.6.4) - '@typescript-eslint/utils': 5.62.0(eslint@8.11.0)(typescript@4.6.4) - debug: 4.3.6 - eslint: 8.11.0 - graphemer: 1.4.0 - ignore: 5.3.2 - natural-compare-lite: 1.4.0 - semver: 7.6.3 - tsutils: 3.21.0(typescript@4.6.4) - optionalDependencies: - typescript: 4.6.4 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/parser@5.15.0(eslint@8.11.0)(typescript@4.6.4)': dependencies: '@typescript-eslint/scope-manager': 5.15.0 @@ -10763,28 +10994,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@5.62.0(eslint@8.11.0)(typescript@4.6.4)': - dependencies: - '@typescript-eslint/scope-manager': 5.62.0 - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.6.4) - debug: 4.3.6 - eslint: 8.11.0 - optionalDependencies: - typescript: 4.6.4 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/scope-manager@5.15.0': dependencies: '@typescript-eslint/types': 5.15.0 '@typescript-eslint/visitor-keys': 5.15.0 - '@typescript-eslint/scope-manager@5.62.0': - dependencies: - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/visitor-keys': 5.62.0 - '@typescript-eslint/type-utils@5.15.0(eslint@8.11.0)(typescript@4.6.4)': dependencies: '@typescript-eslint/utils': 5.15.0(eslint@8.11.0)(typescript@4.6.4) @@ -10796,22 +11010,8 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/type-utils@5.62.0(eslint@8.11.0)(typescript@4.6.4)': - dependencies: - '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.6.4) - '@typescript-eslint/utils': 5.62.0(eslint@8.11.0)(typescript@4.6.4) - debug: 4.3.6 - eslint: 8.11.0 - tsutils: 3.21.0(typescript@4.6.4) - optionalDependencies: - typescript: 4.6.4 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/types@5.15.0': {} - '@typescript-eslint/types@5.62.0': {} - '@typescript-eslint/typescript-estree@5.15.0(typescript@4.6.4)': dependencies: '@typescript-eslint/types': 5.15.0 @@ -10826,20 +11026,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/typescript-estree@5.62.0(typescript@4.6.4)': - dependencies: - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/visitor-keys': 5.62.0 - debug: 4.3.6 - globby: 11.1.0 - is-glob: 4.0.3 - semver: 7.6.3 - tsutils: 3.21.0(typescript@4.6.4) - optionalDependencies: - typescript: 4.6.4 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/utils@5.15.0(eslint@8.11.0)(typescript@4.6.4)': dependencies: '@types/json-schema': 7.0.15 @@ -10853,31 +11039,11 @@ snapshots: - supports-color - typescript - '@typescript-eslint/utils@5.62.0(eslint@8.11.0)(typescript@4.6.4)': - dependencies: - '@eslint-community/eslint-utils': 4.4.1(eslint@8.11.0) - '@types/json-schema': 7.0.15 - '@types/semver': 7.5.8 - '@typescript-eslint/scope-manager': 5.62.0 - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.6.4) - eslint: 8.11.0 - eslint-scope: 5.1.1 - semver: 7.6.3 - transitivePeerDependencies: - - supports-color - - typescript - '@typescript-eslint/visitor-keys@5.15.0': dependencies: '@typescript-eslint/types': 5.15.0 eslint-visitor-keys: 3.4.3 - '@typescript-eslint/visitor-keys@5.62.0': - dependencies: - '@typescript-eslint/types': 5.62.0 - eslint-visitor-keys: 3.4.3 - '@vimeo/player@2.16.4': dependencies: native-promise-only: 0.8.1 @@ -11263,58 +11429,18 @@ snapshots: aria-query@5.3.0: dependencies: - dequal: 2.0.3 - - array-buffer-byte-length@1.0.1: - dependencies: - call-bind: 1.0.7 - is-array-buffer: 3.0.4 - - array-find-index@1.0.2: {} - - array-flatten@1.1.1: {} - - array-includes@3.1.8: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-object-atoms: 1.0.0 - get-intrinsic: 1.2.4 - is-string: 1.0.7 - - array-union@2.1.0: {} - - array.prototype.findlast@1.2.5: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-errors: 1.3.0 - es-object-atoms: 1.0.0 - es-shim-unscopables: 1.0.2 - - array.prototype.flat@1.3.2: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-shim-unscopables: 1.0.2 - - array.prototype.flatmap@1.3.2: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-shim-unscopables: 1.0.2 + dequal: 2.0.3 - array.prototype.tosorted@1.1.4: + array-buffer-byte-length@1.0.1: dependencies: call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-errors: 1.3.0 - es-shim-unscopables: 1.0.2 + is-array-buffer: 3.0.4 + + array-find-index@1.0.2: {} + + array-flatten@1.1.1: {} + + array-union@2.1.0: {} arraybuffer.prototype.slice@1.0.3: dependencies: @@ -11459,6 +11585,14 @@ snapshots: '@types/babel__core': 7.20.5 '@types/babel__traverse': 7.20.6 + babel-plugin-module-resolver@5.0.2: + dependencies: + find-babel-config: 2.1.2 + glob: 9.3.5 + pkg-up: 3.1.0 + reselect: 4.1.8 + resolve: 1.22.8 + babel-plugin-polyfill-corejs2@0.4.11(@babel/core@7.25.2): dependencies: '@babel/compat-data': 7.26.2 @@ -11483,10 +11617,6 @@ snapshots: transitivePeerDependencies: - supports-color - babel-plugin-syntax-hermes-parser@0.23.1: - dependencies: - hermes-parser: 0.23.1 - babel-plugin-transform-flow-enums@0.0.2(@babel/core@7.25.2): dependencies: '@babel/plugin-syntax-flow': 7.26.0(@babel/core@7.25.2) @@ -12070,6 +12200,15 @@ snapshots: js-yaml: 3.14.1 parse-json: 4.0.0 + cosmiconfig@9.0.0(typescript@4.6.4): + dependencies: + env-paths: 2.2.1 + import-fresh: 3.3.0 + js-yaml: 4.1.0 + parse-json: 5.2.0 + optionalDependencies: + typescript: 4.6.4 + cpu-features@0.0.10: dependencies: buildcheck: 0.0.6 @@ -12248,6 +12387,17 @@ snapshots: escodegen: 2.1.0 esprima: 4.0.1 + del@6.1.1: + dependencies: + globby: 11.1.0 + graceful-fs: 4.2.11 + is-glob: 4.0.3 + is-path-cwd: 2.2.0 + is-path-inside: 3.0.3 + p-map: 4.0.0 + rimraf: 3.0.2 + slash: 3.0.0 + del@7.1.0: dependencies: globby: 13.2.2 @@ -12306,10 +12456,6 @@ snapshots: transitivePeerDependencies: - supports-color - doctrine@2.1.0: - dependencies: - esutils: 2.0.3 - doctrine@3.0.0: dependencies: esutils: 2.0.3 @@ -12478,23 +12624,6 @@ snapshots: isarray: 2.0.5 stop-iteration-iterator: 1.0.0 - es-iterator-helpers@1.1.0: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-errors: 1.3.0 - es-set-tostringtag: 2.0.3 - function-bind: 1.1.2 - get-intrinsic: 1.2.4 - globalthis: 1.0.4 - has-property-descriptors: 1.0.2 - has-proto: 1.0.3 - has-symbols: 1.0.3 - internal-slot: 1.0.7 - iterator.prototype: 1.1.3 - safe-array-concat: 1.1.2 - es-object-atoms@1.0.0: dependencies: es-errors: 1.3.0 @@ -12505,10 +12634,6 @@ snapshots: has-tostringtag: 1.0.2 hasown: 2.0.2 - es-shim-unscopables@1.0.2: - dependencies: - hasown: 2.0.2 - es-to-primitive@1.2.1: dependencies: is-callable: 1.2.7 @@ -12535,10 +12660,6 @@ snapshots: optionalDependencies: source-map: 0.6.1 - eslint-config-prettier@8.10.0(eslint@8.11.0): - dependencies: - eslint: 8.11.0 - eslint-plugin-ava@13.2.0(eslint@8.11.0): dependencies: enhance-visitors: 1.0.0 @@ -12551,70 +12672,6 @@ snapshots: pkg-dir: 5.0.0 resolve-from: 5.0.0 - eslint-plugin-eslint-comments@3.2.0(eslint@8.11.0): - dependencies: - escape-string-regexp: 1.0.5 - eslint: 8.11.0 - ignore: 5.3.2 - - eslint-plugin-ft-flow@2.0.3(@babel/eslint-parser@7.25.9(@babel/core@7.25.2)(eslint@8.11.0))(eslint@8.11.0): - dependencies: - '@babel/eslint-parser': 7.25.9(@babel/core@7.25.2)(eslint@8.11.0) - eslint: 8.11.0 - lodash: 4.17.21 - string-natural-compare: 3.0.1 - - eslint-plugin-jest@26.9.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(jest@28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)))(typescript@4.6.4): - dependencies: - '@typescript-eslint/utils': 5.15.0(eslint@8.11.0)(typescript@4.6.4) - eslint: 8.11.0 - optionalDependencies: - '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.11.0)(typescript@4.6.4))(eslint@8.11.0)(typescript@4.6.4) - jest: 28.1.3(@types/node@20.16.3)(ts-node@10.9.2(@types/node@20.16.3)(typescript@4.6.4)) - transitivePeerDependencies: - - supports-color - - typescript - - eslint-plugin-prettier@4.2.1(eslint-config-prettier@8.10.0(eslint@8.11.0))(eslint@8.11.0): - dependencies: - eslint: 8.11.0 - prettier-linter-helpers: 1.0.0 - optionalDependencies: - eslint-config-prettier: 8.10.0(eslint@8.11.0) - - eslint-plugin-react-hooks@4.6.2(eslint@8.11.0): - dependencies: - eslint: 8.11.0 - - eslint-plugin-react-native-globals@0.1.2: {} - - eslint-plugin-react-native@4.1.0(eslint@8.11.0): - dependencies: - eslint: 8.11.0 - eslint-plugin-react-native-globals: 0.1.2 - - eslint-plugin-react@7.37.2(eslint@8.11.0): - dependencies: - array-includes: 3.1.8 - array.prototype.findlast: 1.2.5 - array.prototype.flatmap: 1.3.2 - array.prototype.tosorted: 1.1.4 - doctrine: 2.1.0 - es-iterator-helpers: 1.1.0 - eslint: 8.11.0 - estraverse: 5.3.0 - hasown: 2.0.2 - jsx-ast-utils: 3.3.5 - minimatch: 3.1.2 - object.entries: 1.1.8 - object.fromentries: 2.0.8 - object.values: 1.2.0 - prop-types: 15.8.1 - resolve: 2.0.0-next.5 - semver: 6.3.1 - string.prototype.matchall: 4.0.11 - string.prototype.repeat: 1.0.0 - eslint-scope@5.1.1: dependencies: esrecurse: 4.3.0 @@ -12712,6 +12769,18 @@ snapshots: events@3.3.0: {} + execa@4.1.0: + dependencies: + cross-spawn: 7.0.3 + get-stream: 5.2.0 + human-signals: 1.1.1 + is-stream: 2.0.1 + merge-stream: 2.0.0 + npm-run-path: 4.0.1 + onetime: 5.1.2 + signal-exit: 3.0.7 + strip-final-newline: 2.0.0 + execa@5.1.1: dependencies: cross-spawn: 7.0.3 @@ -12828,6 +12897,8 @@ snapshots: extsprintf@1.3.0: {} + fast-base64-decode@1.0.0: {} + fast-deep-equal@2.0.1: {} fast-deep-equal@3.1.3: {} @@ -12916,6 +12987,10 @@ snapshots: statuses: 2.0.1 unpipe: 1.0.0 + find-babel-config@2.1.2: + dependencies: + json5: 2.2.3 + find-cache-dir@2.1.0: dependencies: commondir: 1.0.1 @@ -12992,6 +13067,12 @@ snapshots: fs-constants@1.0.0: {} + fs-extra@10.1.0: + dependencies: + graceful-fs: 4.2.11 + jsonfile: 6.1.0 + universalify: 2.0.1 + fs-extra@11.2.0: dependencies: graceful-fs: 4.2.11 @@ -13143,6 +13224,21 @@ snapshots: once: 1.4.0 path-is-absolute: 1.0.1 + glob@8.1.0: + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 5.1.6 + once: 1.4.0 + + glob@9.3.5: + dependencies: + fs.realpath: 1.0.0 + minimatch: 8.0.4 + minipass: 4.2.8 + path-scurry: 1.11.1 + globals@11.12.0: {} globals@13.24.0: @@ -13236,8 +13332,6 @@ snapshots: grapheme-splitter@1.0.4: {} - graphemer@1.4.0: {} - gzip-size@6.0.0: dependencies: duplexer: 0.1.2 @@ -13380,6 +13474,8 @@ snapshots: transitivePeerDependencies: - supports-color + human-signals@1.1.1: {} + human-signals@2.1.0: {} human-signals@5.0.0: {} @@ -13493,6 +13589,11 @@ snapshots: irregular-plurals@3.5.0: {} + is-absolute@1.0.0: + dependencies: + is-relative: 1.0.0 + is-windows: 1.0.2 + is-arguments@1.1.1: dependencies: call-bind: 1.0.7 @@ -13505,10 +13606,6 @@ snapshots: is-arrayish@0.2.1: {} - is-async-function@2.0.0: - dependencies: - has-tostringtag: 1.0.2 - is-bigint@1.0.4: dependencies: has-bigints: 1.0.2 @@ -13548,10 +13645,6 @@ snapshots: is-extglob@2.1.1: {} - is-finalizationregistry@1.0.2: - dependencies: - call-bind: 1.0.7 - is-fullwidth-code-point@1.0.0: dependencies: number-is-nan: 1.0.1 @@ -13564,9 +13657,15 @@ snapshots: is-generator-fn@2.1.0: {} - is-generator-function@1.0.10: + is-git-dirty@2.0.2: dependencies: - has-tostringtag: 1.0.2 + execa: 4.1.0 + is-git-repository: 2.0.0 + + is-git-repository@2.0.0: + dependencies: + execa: 4.1.0 + is-absolute: 1.0.0 is-glob@4.0.3: dependencies: @@ -13588,8 +13687,12 @@ snapshots: is-number@7.0.0: {} + is-path-cwd@2.2.0: {} + is-path-cwd@3.0.0: {} + is-path-inside@3.0.3: {} + is-path-inside@4.0.0: {} is-plain-obj@2.1.0: {} @@ -13615,6 +13718,10 @@ snapshots: call-bind: 1.0.7 has-tostringtag: 1.0.2 + is-relative@1.0.0: + dependencies: + is-unc-path: 1.0.0 + is-set@2.0.3: {} is-shared-array-buffer@1.0.3: @@ -13639,6 +13746,10 @@ snapshots: is-typedarray@1.0.0: {} + is-unc-path@1.0.0: + dependencies: + unc-path-regex: 0.1.2 + is-unicode-supported@0.1.0: {} is-unicode-supported@1.3.0: {} @@ -13656,6 +13767,8 @@ snapshots: call-bind: 1.0.7 get-intrinsic: 1.2.4 + is-windows@1.0.2: {} + is-wsl@1.1.0: {} is-wsl@2.2.0: @@ -13713,14 +13826,6 @@ snapshots: html-escaper: 2.0.2 istanbul-lib-report: 3.0.1 - iterator.prototype@1.1.3: - dependencies: - define-properties: 1.2.1 - get-intrinsic: 1.2.4 - has-symbols: 1.0.3 - reflect.getprototypeof: 1.0.6 - set-function-name: 2.0.2 - jackspeak@3.4.3: dependencies: '@isaacs/cliui': 8.0.2 @@ -14295,7 +14400,7 @@ snapshots: jsc-safe-url@0.2.4: {} - jscodeshift@0.14.0: + jscodeshift@0.14.0(@babel/preset-env@7.26.0(@babel/core@7.25.2)): dependencies: '@babel/core': 7.25.2 '@babel/parser': 7.25.6 @@ -14303,6 +14408,7 @@ snapshots: '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6(@babel/core@7.25.2) '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.25.2) '@babel/plugin-transform-modules-commonjs': 7.25.9(@babel/core@7.25.2) + '@babel/preset-env': 7.26.0(@babel/core@7.25.2) '@babel/preset-flow': 7.25.9(@babel/core@7.25.2) '@babel/preset-typescript': 7.26.0(@babel/core@7.25.2) '@babel/register': 7.25.9(@babel/core@7.25.2) @@ -14396,13 +14502,6 @@ snapshots: jstimezonedetect@1.0.7: {} - jsx-ast-utils@3.3.5: - dependencies: - array-includes: 3.1.8 - array.prototype.flat: 1.3.2 - object.assign: 4.1.5 - object.values: 1.2.0 - jszip@3.10.1: dependencies: lie: 3.3.0 @@ -14418,6 +14517,8 @@ snapshots: kleur@3.0.3: {} + kleur@4.1.5: {} + ky@0.33.3: {} lazystream@1.0.1: @@ -14849,6 +14950,10 @@ snapshots: dependencies: brace-expansion: 2.0.1 + minimatch@8.0.4: + dependencies: + brace-expansion: 2.0.1 + minimatch@9.0.5: dependencies: brace-expansion: 2.0.1 @@ -14888,6 +14993,8 @@ snapshots: dependencies: yallist: 4.0.0 + minipass@4.2.8: {} + minipass@5.0.0: {} minipass@7.1.2: {} @@ -14938,8 +15045,6 @@ snapshots: native-promise-only@0.8.1: {} - natural-compare-lite@1.4.0: {} - natural-compare@1.4.0: {} negotiator@0.6.3: {} @@ -15125,25 +15230,6 @@ snapshots: has-symbols: 1.0.3 object-keys: 1.1.1 - object.entries@1.1.8: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-object-atoms: 1.0.0 - - object.fromentries@2.0.8: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-object-atoms: 1.0.0 - - object.values@1.2.0: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-object-atoms: 1.0.0 - on-finished@2.3.0: dependencies: ee-first: 1.1.1 @@ -15414,6 +15500,10 @@ snapshots: dependencies: find-up: 5.0.0 + pkg-up@3.1.0: + dependencies: + find-up: 3.0.0 + plur@5.1.0: dependencies: irregular-plurals: 3.5.0 @@ -15427,10 +15517,6 @@ snapshots: prelude-ls@1.2.1: {} - prettier-linter-helpers@1.0.0: - dependencies: - fast-diff: 1.3.0 - pretty-format@26.6.2: dependencies: '@jest/types': 26.6.2 @@ -15487,12 +15573,6 @@ snapshots: kleur: 3.0.3 sisteransi: 1.0.5 - prop-types@15.8.1: - dependencies: - loose-envify: 1.4.0 - object-assign: 4.1.1 - react-is: 16.13.1 - proxy-addr@2.0.7: dependencies: forwarded: 0.2.0 @@ -15616,25 +15696,58 @@ snapshots: - bufferutil - utf-8-validate - react-is@16.13.1: {} - react-is@17.0.2: {} react-is@18.3.1: {} - react-native@0.74.5(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0): + react-native-builder-bob@0.30.3(typescript@4.6.4): + dependencies: + '@babel/core': 7.25.2 + '@babel/plugin-transform-strict-mode': 7.25.9(@babel/core@7.25.2) + '@babel/preset-env': 7.26.0(@babel/core@7.25.2) + '@babel/preset-flow': 7.25.9(@babel/core@7.25.2) + '@babel/preset-react': 7.25.9(@babel/core@7.25.2) + '@babel/preset-typescript': 7.26.0(@babel/core@7.25.2) + babel-plugin-module-resolver: 5.0.2 + browserslist: 4.24.2 + cosmiconfig: 9.0.0(typescript@4.6.4) + cross-spawn: 7.0.3 + dedent: 0.7.0 + del: 6.1.1 + escape-string-regexp: 4.0.0 + fs-extra: 10.1.0 + glob: 8.1.0 + is-git-dirty: 2.0.2 + json5: 2.2.3 + kleur: 4.1.5 + metro-config: 0.80.12 + prompts: 2.4.2 + which: 2.0.2 + yargs: 17.7.2 + transitivePeerDependencies: + - bufferutil + - supports-color + - typescript + - utf-8-validate + + react-native-get-random-values@1.11.0(react-native@0.74.5(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0)): + dependencies: + fast-base64-decode: 1.0.0 + react-native: 0.74.5(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0) + + react-native@0.74.5(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0): dependencies: '@jest/create-cache-key-function': 29.7.0 '@react-native-community/cli': 13.6.9(encoding@0.1.13) '@react-native-community/cli-platform-android': 13.6.9(encoding@0.1.13) '@react-native-community/cli-platform-ios': 13.6.9(encoding@0.1.13) '@react-native/assets-registry': 0.74.87 - '@react-native/codegen': 0.74.87 - '@react-native/community-cli-plugin': 0.74.87(encoding@0.1.13) + '@react-native/codegen': 0.74.87(@babel/preset-env@7.26.0(@babel/core@7.25.2)) + '@react-native/community-cli-plugin': 0.74.87(@babel/preset-env@7.26.0(@babel/core@7.25.2))(encoding@0.1.13) '@react-native/gradle-plugin': 0.74.87 '@react-native/js-polyfills': 0.74.87 '@react-native/normalize-colors': 0.74.87 - '@react-native/virtualized-lists': 0.74.87(@types/react@18.3.12)(react-native@0.74.5(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0))(react@18.2.0) + '@react-native/virtualized-lists': 0.74.87(@types/react@18.3.12)(react-native@0.74.5(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@types/react@18.3.12)(encoding@0.1.13)(react@18.2.0))(react@18.2.0) abort-controller: 3.0.0 anser: 1.4.10 ansi-regex: 5.0.1 @@ -15752,16 +15865,6 @@ snapshots: dependencies: minimatch: 3.1.2 - reflect.getprototypeof@1.0.6: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-errors: 1.3.0 - get-intrinsic: 1.2.4 - globalthis: 1.0.4 - which-builtin-type: 1.1.4 - regenerate-unicode-properties@10.2.0: dependencies: regenerate: 1.4.2 @@ -15833,6 +15936,8 @@ snapshots: requires-port@1.0.0: {} + reselect@4.1.8: {} + resolve-alpn@1.2.1: {} resolve-cwd@3.0.0: @@ -15853,12 +15958,6 @@ snapshots: path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 - resolve@2.0.0-next.5: - dependencies: - is-core-module: 2.15.1 - path-parse: 1.0.7 - supports-preserve-symlinks-flag: 1.0.0 - responselike@2.0.1: dependencies: lowercase-keys: 2.0.0 @@ -15936,7 +16035,7 @@ snapshots: serialize-javascript: 4.0.0 terser: 5.31.6 - rollup-plugin-ts@2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4): + rollup-plugin-ts@2.0.7(@babel/core@7.25.2)(@babel/plugin-transform-runtime@7.25.9(@babel/core@7.25.2))(@babel/preset-env@7.26.0(@babel/core@7.25.2))(@babel/runtime@7.25.6)(rollup@2.70.2)(typescript@4.6.4): dependencies: '@rollup/pluginutils': 4.2.1 '@wessberg/stringutil': 1.0.19 @@ -15953,6 +16052,7 @@ snapshots: optionalDependencies: '@babel/core': 7.25.2 '@babel/plugin-transform-runtime': 7.25.9(@babel/core@7.25.2) + '@babel/preset-env': 7.26.0(@babel/core@7.25.2) '@babel/runtime': 7.25.6 rollup-pluginutils@2.8.2: @@ -16295,8 +16395,6 @@ snapshots: char-regex: 1.0.2 strip-ansi: 6.0.1 - string-natural-compare@3.0.1: {} - string-width@1.0.2: dependencies: code-point-at: 1.1.0 @@ -16315,21 +16413,6 @@ snapshots: emoji-regex: 9.2.2 strip-ansi: 7.1.0 - string.prototype.matchall@4.0.11: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-errors: 1.3.0 - es-object-atoms: 1.0.0 - get-intrinsic: 1.2.4 - gopd: 1.0.1 - has-symbols: 1.0.3 - internal-slot: 1.0.7 - regexp.prototype.flags: 1.5.2 - set-function-name: 2.0.2 - side-channel: 1.0.6 - string.prototype.padend@3.1.6: dependencies: call-bind: 1.0.7 @@ -16337,11 +16420,6 @@ snapshots: es-abstract: 1.23.3 es-object-atoms: 1.0.0 - string.prototype.repeat@1.0.0: - dependencies: - define-properties: 1.2.1 - es-abstract: 1.23.3 - string.prototype.trim@1.2.9: dependencies: call-bind: 1.0.7 @@ -16739,6 +16817,8 @@ snapshots: buffer: 5.7.1 through: 2.3.8 + unc-path-regex@0.1.2: {} + undici-types@5.26.5: {} undici-types@6.19.8: {} @@ -17016,21 +17096,6 @@ snapshots: is-string: 1.0.7 is-symbol: 1.0.4 - which-builtin-type@1.1.4: - dependencies: - function.prototype.name: 1.1.6 - has-tostringtag: 1.0.2 - is-async-function: 2.0.0 - is-date-object: 1.0.5 - is-finalizationregistry: 1.0.2 - is-generator-function: 1.0.10 - is-regex: 1.1.4 - is-weakref: 1.0.2 - isarray: 2.0.5 - which-boxed-primitive: 1.0.2 - which-collection: 1.0.2 - which-typed-array: 1.1.15 - which-collection@1.0.2: dependencies: is-map: 2.0.3 diff --git a/common/config/rush/repo-state.json b/common/config/rush/repo-state.json index 94750a537..f680bc684 100644 --- a/common/config/rush/repo-state.json +++ b/common/config/rush/repo-state.json @@ -1,5 +1,5 @@ // DO NOT MODIFY THIS FILE MANUALLY BUT DO COMMIT IT. It is generated and used by Rush. { - "pnpmShrinkwrapHash": "d492ca55fd8394648a6d6f6828b0bfb697747844", + "pnpmShrinkwrapHash": "f5c19c955ef1b13843dbacdb20bdd6461a9a5042", "preferredVersionsHash": "bf21a9e8fbc5a3846fb05b4fa0859e0917b2202f" } diff --git a/trackers/react-native-tracker/babel.config.js b/trackers/react-native-tracker/babel.config.js index 39d5b3165..29f3a6069 100644 --- a/trackers/react-native-tracker/babel.config.js +++ b/trackers/react-native-tracker/babel.config.js @@ -1,5 +1,5 @@ module.exports = { presets: [ - "module:@react-native/babel-preset" + ['module:react-native-builder-bob/babel-preset', { modules: 'commonjs' }], ], }; diff --git a/trackers/react-native-tracker/jest.config.js b/trackers/react-native-tracker/jest.config.js index af7e0ca77..55d4d9fb4 100644 --- a/trackers/react-native-tracker/jest.config.js +++ b/trackers/react-native-tracker/jest.config.js @@ -3,4 +3,5 @@ module.exports = { reporters: ['jest-standard-reporter'], transformIgnorePatterns: [], setupFilesAfterEnv: ['../../setupTestGlobals.ts'], + modulePathIgnorePatterns: ['/dist/'], }; diff --git a/trackers/react-native-tracker/package.json b/trackers/react-native-tracker/package.json index 456316146..612cca887 100644 --- a/trackers/react-native-tracker/package.json +++ b/trackers/react-native-tracker/package.json @@ -1,6 +1,6 @@ { "name": "@snowplow/react-native-tracker", - "version": "4.0.0", + "version": "4.0.1", "description": "React Native tracker for Snowplow", "keywords": [ "snowplow", @@ -20,14 +20,26 @@ "Snowplow" ], "sideEffects": false, - "main": "./dist/index.cjs.js", - "module": "./dist/index.module.js", - "types": "./dist/index.module.d.ts", + "source": "./src/index.tsx", + "main": "./dist/commonjs/index.js", + "module": "./dist/module/index.js", + "exports": { + ".": { + "import": { + "types": "./dist/typescript/module/src/index.d.ts", + "default": "./dist/module/index.js" + }, + "require": { + "types": "./dist/typescript/commonjs/src/index.d.ts", + "default": "./dist/commonjs/index.js" + } + } + }, "files": [ "dist" ], "scripts": { - "build": "rollup -c --silent --failAfterWarnings", + "build": "bob build", "test": "jest" }, "peerDependencies": { @@ -36,26 +48,52 @@ }, "dependencies": { "@snowplow/tracker-core": "workspace:*", - "tslib": "^2.3.1", - "@react-native-async-storage/async-storage": "~2.0.0" + "@react-native-async-storage/async-storage": "~2.0.0", + "react-native-get-random-values": "~1.11.0", + "tslib": "^2.3.1" }, "devDependencies": { - "@rollup/plugin-json": "~4.1.0", "@typescript-eslint/eslint-plugin": "~5.15.0", "@typescript-eslint/parser": "~5.15.0", - "@react-native/eslint-config": "^0.73.1", "eslint": "~8.11.0", - "rollup": "~2.70.1", - "rollup-plugin-license": "~2.6.1", - "rollup-plugin-ts": "~2.0.5", "typescript": "~4.6.2", "@types/jest": "~28.1.1", + "@types/node": "~14.6.0", "jest": "~28.1.3", "react": "18.2.0", "ts-jest": "~28.0.8", "@types/react": "^18.2.44", "react-native": "0.74.5", - "@react-native/babel-preset": "~0.76.1", - "node-fetch": "~3.3.2" + "node-fetch": "~3.3.2", + "react-native-builder-bob": "^0.30.3" + }, + "resolutions": { + "@types/react": "^18.2.44" + }, + "browserslist": {}, + "react-native-builder-bob": { + "source": "src", + "output": "dist", + "targets": [ + [ + "commonjs", + { + "esm": true + } + ], + [ + "module", + { + "esm": true + } + ], + [ + "typescript", + { + "project": "tsconfig.build.json", + "esm": true + } + ] + ] } } diff --git a/trackers/react-native-tracker/rollup.config.js b/trackers/react-native-tracker/rollup.config.js deleted file mode 100644 index 79afc9e2e..000000000 --- a/trackers/react-native-tracker/rollup.config.js +++ /dev/null @@ -1,33 +0,0 @@ -import { nodeResolve } from '@rollup/plugin-node-resolve'; -import ts from 'rollup-plugin-ts'; // Prefered over @rollup/plugin-typescript as it bundles .d.ts files -import commonjs from '@rollup/plugin-commonjs'; -import { banner } from '../../banner'; -import compiler from '@ampproject/rollup-plugin-closure-compiler'; -import cleanup from 'rollup-plugin-cleanup'; -import pkg from './package.json'; - -import { builtinModules } from 'module'; - -const umdPlugins = [nodeResolve({ browser: true }), commonjs(), ts()]; -const umdName = 'snowplowBrowserTracking'; - -export default [ - { - input: './src/index.ts', - external: [...builtinModules, ...Object.keys(pkg.dependencies)], - plugins: [ts(), banner()], - output: [{ file: pkg.module, format: 'es', sourcemap: true }], - }, - { - input: './src/index.ts', - plugins: [...umdPlugins, banner()], - treeshake: { moduleSideEffects: ['jstimezonedetect'] }, - output: [{ file: pkg.main, format: 'umd', name: umdName, sourcemap: true }], - }, - { - input: './src/index.ts', - plugins: [...umdPlugins, compiler(), cleanup({ comments: 'none' }), banner()], - treeshake: { moduleSideEffects: ['jstimezonedetect'] }, - output: [{ file: pkg.main.replace('.js', '.min.js'), format: 'umd', name: umdName, sourcemap: true }], - }, -]; diff --git a/trackers/react-native-tracker/src/index.ts b/trackers/react-native-tracker/src/index.ts index 7f73819bf..6c29689cb 100644 --- a/trackers/react-native-tracker/src/index.ts +++ b/trackers/react-native-tracker/src/index.ts @@ -1,6 +1,5 @@ -if (typeof crypto === 'undefined') { - throw new Error('Web Crypto is not available. Please use a polyfill like react-native-get-random-values'); -} +// polyfill for Web crypto module required by uuidjs +import 'react-native-get-random-values'; export * from './types'; export * from './tracker'; diff --git a/trackers/react-native-tracker/test/tracker.test.ts b/trackers/react-native-tracker/test/tracker.test.ts index 9a58b65d8..bef648f1f 100644 --- a/trackers/react-native-tracker/test/tracker.test.ts +++ b/trackers/react-native-tracker/test/tracker.test.ts @@ -1,4 +1,4 @@ -import { newTracker } from '../src'; +import { newTracker, ReactNativeTracker } from '../src'; function createMockFetch(status: number, requests: Request[]) { return async (input: Request) => { diff --git a/trackers/react-native-tracker/tsconfig.build.json b/trackers/react-native-tracker/tsconfig.build.json new file mode 100644 index 000000000..b33b82320 --- /dev/null +++ b/trackers/react-native-tracker/tsconfig.build.json @@ -0,0 +1,4 @@ +{ + "extends": "./tsconfig", + "exclude": ["dist", "test"] +} diff --git a/trackers/react-native-tracker/tsconfig.json b/trackers/react-native-tracker/tsconfig.json index b19cd8bf3..d2d42f7dc 100644 --- a/trackers/react-native-tracker/tsconfig.json +++ b/trackers/react-native-tracker/tsconfig.json @@ -1,23 +1,29 @@ { "compilerOptions": { - /* Basic Options */ - "lib": ["ES2020", "DOM"], - "target": "ES2020" /* Good for Node 14 - https://github.com/microsoft/TypeScript/wiki/Node-Target-Mapping */, - "module": "commonjs" /* Ignored by rollup but used by ts-node for tests */, - "declaration": true /* Generates corresponding '.d.ts' file. */, + "rootDir": ".", + "paths": { + "@snowplow/react-native-tracker": ["./src/index"] + }, + "allowUnreachableCode": false, + "allowUnusedLabels": false, + "esModuleInterop": true, + "forceConsistentCasingInFileNames": true, + "jsx": "react-jsx", + "lib": ["ESNext"], + "module": "ESNext", + "moduleResolution": "node", + "noEmit": true, + "noFallthroughCasesInSwitch": true, + "noImplicitReturns": true, + "noImplicitUseStrict": false, + "noStrictGenericChecks": false, + "noUncheckedIndexedAccess": true, + "noUnusedLocals": true, + "noUnusedParameters": true, "resolveJsonModule": true, - "importHelpers": true, - - /* Strict Type-Checking Options */ - "strict": true /* Enable all strict type-checking options. */, - - /* Additional Checks */ - "noUnusedLocals": true /* Report errors on unused locals. */, - "noUnusedParameters": true /* Report errors on unused parameters. */, - "noImplicitReturns": true /* Report error when not all code paths in function return a value. */, - "noFallthroughCasesInSwitch": true /* Report errors for fallthrough cases in switch statement. */, - - /* Module Resolution Options */ - "esModuleInterop": true /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */ + "skipLibCheck": true, + "strict": true, + "target": "ESNext", + "types": ["node", "jest"] } } From f18b2c6c27f73d495ebae725d385a11825b07c71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matu=CC=81s=CC=8C=20Tomlein?= Date: Thu, 7 Nov 2024 09:58:23 +0100 Subject: [PATCH 11/16] Fix api-extractor config --- ...ct-native-tracker.deeplinkreceivedprops.md | 2 +- .../react-native-tracker.eventcontext.md | 2 +- ...-native-tracker.eventstoreconfiguration.md | 2 +- .../react-native-tracker.listitemviewprops.md | 2 +- ...cker.messagenotificationattachmentprops.md | 2 +- ...native-tracker.messagenotificationprops.md | 10 ++-- .../react-native-tracker.newtracker.md | 6 +-- ...react-native-tracker.reactnativetracker.md | 36 ++------------ .../react-native-tracker.screensize.md | 5 +- .../react-native-tracker.screenviewprops.md | 2 +- ...react-native-tracker.scrollchangedprops.md | 2 +- ...act-native-tracker.sessionconfiguration.md | 2 +- ...act-native-tracker.subjectconfiguration.md | 6 +-- .../react-native-tracker.timingprops.md | 2 +- ...act-native-tracker.trackerconfiguration.md | 2 +- .../markdown/react-native-tracker.trigger.md | 2 +- .../react-native-tracker.api.md | 49 ++----------------- .../react-native-tracker/api-extractor.json | 2 +- trackers/react-native-tracker/tsconfig.json | 2 +- 19 files changed, 30 insertions(+), 108 deletions(-) diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.deeplinkreceivedprops.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.deeplinkreceivedprops.md index 086cfca01..1edfc692e 100644 --- a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.deeplinkreceivedprops.md +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.deeplinkreceivedprops.md @@ -9,7 +9,7 @@ DeepLinkReceived event properties schema: iglu:com.snowplowanalytics.mobile/deep Signature: ```typescript -type DeepLinkReceivedProps = { +export declare type DeepLinkReceivedProps = { url: string; referrer?: string; }; diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventcontext.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventcontext.md index 05b8a1384..f30c91eb3 100644 --- a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventcontext.md +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventcontext.md @@ -9,5 +9,5 @@ EventContext type Signature: ```typescript -type EventContext = SelfDescribingJson; +export declare type EventContext = SelfDescribingJson; ``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreconfiguration.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreconfiguration.md index 097afd568..3fd590041 100644 --- a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreconfiguration.md +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.eventstoreconfiguration.md @@ -9,7 +9,7 @@ Configuration for the event store Signature: ```typescript -interface EventStoreConfiguration +export interface EventStoreConfiguration ``` ## Properties diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.listitemviewprops.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.listitemviewprops.md index 11c13982a..dfa8a2d47 100644 --- a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.listitemviewprops.md +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.listitemviewprops.md @@ -11,7 +11,7 @@ Schema: `iglu:com.snowplowanalytics.mobile/list_item_view/jsonschema/1-0-0` Signature: ```typescript -type ListItemViewProps = { +export declare type ListItemViewProps = { index: number; itemsCount?: number; }; diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.messagenotificationattachmentprops.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.messagenotificationattachmentprops.md index 1327cc346..927347ead 100644 --- a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.messagenotificationattachmentprops.md +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.messagenotificationattachmentprops.md @@ -9,7 +9,7 @@ Attachment object that identify an attachment in the MessageNotification. Signature: ```typescript -type MessageNotificationAttachmentProps = { +export declare type MessageNotificationAttachmentProps = { identifier: string; type: string; url: string; diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.messagenotificationprops.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.messagenotificationprops.md index d931898c4..f8abb2ea7 100644 --- a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.messagenotificationprops.md +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.messagenotificationprops.md @@ -9,16 +9,10 @@ MessageNotification event properties schema: iglu:com.snowplowanalytics.mobile/m Signature: ```typescript -type MessageNotificationProps = { +export declare type MessageNotificationProps = { action?: string; - /* - * Attachments added to the notification (they can be part of the data object). - */ attachments?: MessageNotificationAttachmentProps[]; body: string; - /* - * Variable string values to be used in place of the format specifiers in bodyLocArgs to use to localize the body text to the user's current localization. - */ bodyLocArgs?: string[]; bodyLocKey?: string; category?: string; @@ -37,3 +31,5 @@ type MessageNotificationProps = { trigger: Trigger; }; ``` +References: [MessageNotificationAttachmentProps](./react-native-tracker.messagenotificationattachmentprops.md), [Trigger](./react-native-tracker.trigger.md) + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.newtracker.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.newtracker.md index b4d0870c8..da09aff2a 100644 --- a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.newtracker.md +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.newtracker.md @@ -9,18 +9,18 @@ Creates a new tracker instance with the given configuration Signature: ```typescript -declare function newTracker(configuration: TrackerConfiguration & EmitterConfiguration & SessionConfiguration & SubjectConfiguration & EventStoreConfiguration): Promise; +export declare function newTracker(configuration: TrackerConfiguration & EmitterConfiguration & SessionConfiguration & SubjectConfiguration & EventStoreConfiguration): Promise; ``` ## Parameters | Parameter | Type | Description | | --- | --- | --- | -| configuration | TrackerConfiguration & EmitterConfiguration & SessionConfiguration & SubjectConfiguration & EventStoreConfiguration | Configuration for the tracker | +| configuration | [TrackerConfiguration](./react-native-tracker.trackerconfiguration.md) & EmitterConfiguration & [SessionConfiguration](./react-native-tracker.sessionconfiguration.md) & [SubjectConfiguration](./react-native-tracker.subjectconfiguration.md) & [EventStoreConfiguration](./react-native-tracker.eventstoreconfiguration.md) | Configuration for the tracker | Returns: -Promise<ReactNativeTracker> +Promise<[ReactNativeTracker](./react-native-tracker.reactnativetracker.md)> Tracker instance diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.reactnativetracker.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.reactnativetracker.md index 082b4b53f..00f678ae0 100644 --- a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.reactnativetracker.md +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.reactnativetracker.md @@ -9,43 +9,11 @@ The ReactNativeTracker type Signature: ```typescript -type ReactNativeTracker = { +export declare type ReactNativeTracker = { readonly trackSelfDescribingEvent: = Record>(argmap: SelfDescribingJson, contexts?: EventContext[]) => void; - // TODO: - // /** - // * Tracks a screen-view event - // * - // * @param argmap - The screen-view event's properties - // * @param contexts - The array of event contexts - // */ - // readonly trackScreenViewEvent: (argmap: ScreenViewProps, contexts?: EventContext[]) => string | undefined; - // TODO: - // /** - // * Tracks a scroll changed event - // * - // * @param argmap - The scroll changed event's properties - // * @param contexts - The array of event contexts - // */ - // readonly trackScrollChangedEvent: (argmap: ScrollChangedProps, contexts?: EventContext[]) => string | undefined; - // TODO: - // /** - // * Tracks a list item view event - // * - // * @param argmap - The list item view event's properties - // * @param contexts - The array of event contexts - // */ - // readonly trackListItemViewEvent: (argmap: ListItemViewProps, contexts?: EventContext[]) => string | undefined; readonly trackStructuredEvent: (argmap: StructuredEvent, contexts?: EventContext[]) => void; readonly trackPageViewEvent: (argmap: PageViewEvent, contexts?: EventContext[]) => void; readonly trackTimingEvent: (argmap: TimingProps, contexts?: EventContext[]) => void; - // TODO: - // /** - // * Tracks a deep link received event - // * - // * @param argmap - The deep link received event properties - // * @param contexts - The array of event contexts - // */ - // readonly trackDeepLinkReceivedEvent: (argmap: DeepLinkReceivedProps, contexts?: EventContext[]) => void; readonly trackMessageNotificationEvent: (argmap: MessageNotificationProps, contexts?: EventContext[]) => void; addGlobalContexts(contexts: Array | Record): void; clearGlobalContexts(): void; @@ -67,3 +35,5 @@ type ReactNativeTracker = { readonly setSubjectData: (config: SubjectConfiguration) => void; }; ``` +References: [EventContext](./react-native-tracker.eventcontext.md), [TimingProps](./react-native-tracker.timingprops.md), [MessageNotificationProps](./react-native-tracker.messagenotificationprops.md), [ScreenSize](./react-native-tracker.screensize.md), [SubjectConfiguration](./react-native-tracker.subjectconfiguration.md) + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.screensize.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.screensize.md index b4c862051..3e5783854 100644 --- a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.screensize.md +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.screensize.md @@ -9,8 +9,5 @@ Screen size in pixels Signature: ```typescript -type ScreenSize = [ - number, - number -]; +export declare type ScreenSize = [number, number]; ``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.screenviewprops.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.screenviewprops.md index 2d9848d7d..e40a349f6 100644 --- a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.screenviewprops.md +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.screenviewprops.md @@ -9,7 +9,7 @@ ScreenView event properties schema: iglu:com.snowplowanalytics.mobile/screen\_vi Signature: ```typescript -type ScreenViewProps = { +export declare type ScreenViewProps = { name: string; id?: string; type?: string; diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.scrollchangedprops.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.scrollchangedprops.md index 5f84665f0..4eedd8e4b 100644 --- a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.scrollchangedprops.md +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.scrollchangedprops.md @@ -11,7 +11,7 @@ Schema: `iglu:com.snowplowanalytics.mobile/scroll_changed/jsonschema/1-0-0` Signature: ```typescript -type ScrollChangedProps = { +export declare type ScrollChangedProps = { yOffset?: number; xOffset?: number; viewHeight?: number; diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.sessionconfiguration.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.sessionconfiguration.md index ab09c84a7..3dc56ce35 100644 --- a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.sessionconfiguration.md +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.sessionconfiguration.md @@ -9,7 +9,7 @@ Configuration for session tracking Signature: ```typescript -interface SessionConfiguration +export interface SessionConfiguration ``` ## Properties diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.md index 35e990f6a..b2ffb8023 100644 --- a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.md +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.subjectconfiguration.md @@ -9,7 +9,7 @@ Configuration of subject properties tracked with events Signature: ```typescript -interface SubjectConfiguration +export interface SubjectConfiguration ``` ## Properties @@ -21,8 +21,8 @@ interface SubjectConfiguration | [ipAddress?](./react-native-tracker.subjectconfiguration.ipaddress.md) | string | (Optional) Override the IP address of the device | | [language?](./react-native-tracker.subjectconfiguration.language.md) | string | (Optional) The language set in the device | | [networkUserId?](./react-native-tracker.subjectconfiguration.networkuserid.md) | string | (Optional) Override the network user id (UUIDv4) that is assigned by the collector and stored in cookies | -| [screenResolution?](./react-native-tracker.subjectconfiguration.screenresolution.md) | ScreenSize | (Optional) The screen resolution | -| [screenViewport?](./react-native-tracker.subjectconfiguration.screenviewport.md) | ScreenSize | (Optional) The screen viewport size | +| [screenResolution?](./react-native-tracker.subjectconfiguration.screenresolution.md) | [ScreenSize](./react-native-tracker.screensize.md) | (Optional) The screen resolution | +| [screenViewport?](./react-native-tracker.subjectconfiguration.screenviewport.md) | [ScreenSize](./react-native-tracker.screensize.md) | (Optional) The screen viewport size | | [timezone?](./react-native-tracker.subjectconfiguration.timezone.md) | string | (Optional) The timezone label | | [useragent?](./react-native-tracker.subjectconfiguration.useragent.md) | string | (Optional) The custom user-agent. It overrides the user-agent used by default. | | [userId?](./react-native-tracker.subjectconfiguration.userid.md) | string | (Optional) Business-defined user ID for this user | diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.timingprops.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.timingprops.md index ba74944ba..282ca2e29 100644 --- a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.timingprops.md +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.timingprops.md @@ -9,7 +9,7 @@ Timing event properties Signature: ```typescript -type TimingProps = { +export declare type TimingProps = { category: string; variable: string; timing: number; diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.md index e9cfae964..d4ccd1cce 100644 --- a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.md +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackerconfiguration.md @@ -9,7 +9,7 @@ The configuration object for initialising the tracker Signature: ```typescript -interface TrackerConfiguration +export interface TrackerConfiguration ``` ## Properties diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trigger.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trigger.md index 0f0d4d7fb..d9fc36aed 100644 --- a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trigger.md +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trigger.md @@ -9,5 +9,5 @@ Trigger for MessageNotification event Signature: ```typescript -type Trigger = "push" | "location" | "calendar" | "timeInterval" | "other"; +export declare type Trigger = 'push' | 'location' | 'calendar' | 'timeInterval' | 'other'; ``` diff --git a/api-docs/docs/react-native-tracker/react-native-tracker.api.md b/api-docs/docs/react-native-tracker/react-native-tracker.api.md index acb88bef3..8d268ff60 100644 --- a/api-docs/docs/react-native-tracker/react-native-tracker.api.md +++ b/api-docs/docs/react-native-tracker/react-native-tracker.api.md @@ -7,7 +7,7 @@ // @public export type ConditionalContextProvider = FilterProvider | RuleSetProvider; -// Warning: (ae-forgotten-export) The symbol "ContextEvent" needs to be exported by the entry point index.module.d.ts +// Warning: (ae-forgotten-export) The symbol "ContextEvent" needs to be exported by the entry point index.d.ts // // @public export type ContextFilter = (args?: ContextEvent) => boolean; @@ -152,7 +152,7 @@ export interface EventStoreConfiguration { // @public export interface EventStoreIterator { - // Warning: (ae-forgotten-export) The symbol "EventStoreIteratorNextResult" needs to be exported by the entry point index.module.d.ts + // Warning: (ae-forgotten-export) The symbol "EventStoreIteratorNextResult" needs to be exported by the entry point index.d.ts next: () => Promise; } @@ -226,14 +226,8 @@ export type MessageNotificationAttachmentProps = { // @public export type MessageNotificationProps = { action?: string; - /* - * Attachments added to the notification (they can be part of the data object). - */ attachments?: MessageNotificationAttachmentProps[]; body: string; - /* - * Variable string values to be used in place of the format specifiers in bodyLocArgs to use to localize the body text to the user's current localization. - */ bodyLocArgs?: string[]; bodyLocKey?: string; category?: string; @@ -280,41 +274,9 @@ export interface PayloadBuilder { // @public export type ReactNativeTracker = { readonly trackSelfDescribingEvent: = Record>(argmap: SelfDescribingJson, contexts?: EventContext[]) => void; - // TODO: - // /** - // * Tracks a screen-view event - // * - // * @param argmap - The screen-view event's properties - // * @param contexts - The array of event contexts - // */ - // readonly trackScreenViewEvent: (argmap: ScreenViewProps, contexts?: EventContext[]) => string | undefined; - // TODO: - // /** - // * Tracks a scroll changed event - // * - // * @param argmap - The scroll changed event's properties - // * @param contexts - The array of event contexts - // */ - // readonly trackScrollChangedEvent: (argmap: ScrollChangedProps, contexts?: EventContext[]) => string | undefined; - // TODO: - // /** - // * Tracks a list item view event - // * - // * @param argmap - The list item view event's properties - // * @param contexts - The array of event contexts - // */ - // readonly trackListItemViewEvent: (argmap: ListItemViewProps, contexts?: EventContext[]) => string | undefined; readonly trackStructuredEvent: (argmap: StructuredEvent, contexts?: EventContext[]) => void; readonly trackPageViewEvent: (argmap: PageViewEvent, contexts?: EventContext[]) => void; readonly trackTimingEvent: (argmap: TimingProps, contexts?: EventContext[]) => void; - // TODO: - // /** - // * Tracks a deep link received event - // * - // * @param argmap - The deep link received event properties - // * @param contexts - The array of event contexts - // */ - // readonly trackDeepLinkReceivedEvent: (argmap: DeepLinkReceivedProps, contexts?: EventContext[]) => void; readonly trackMessageNotificationEvent: (argmap: MessageNotificationProps, contexts?: EventContext[]) => void; addGlobalContexts(contexts: Array | Record): void; clearGlobalContexts(): void; @@ -359,10 +321,7 @@ Array | ContextPrimitive ]; // @public -export type ScreenSize = [ -number, -number -]; +export type ScreenSize = [number, number]; // @public export type ScreenViewProps = { @@ -470,7 +429,7 @@ export interface TrackerCore { } // @public -export type Trigger = "push" | "location" | "calendar" | "timeInterval" | "other"; +export type Trigger = 'push' | 'location' | 'calendar' | 'timeInterval' | 'other'; // @public export interface TrueTimestamp { diff --git a/trackers/react-native-tracker/api-extractor.json b/trackers/react-native-tracker/api-extractor.json index 4a2710c7d..30d2e44b2 100644 --- a/trackers/react-native-tracker/api-extractor.json +++ b/trackers/react-native-tracker/api-extractor.json @@ -45,7 +45,7 @@ * * SUPPORTED TOKENS: , , */ - "mainEntryPointFilePath": "/dist/index.module.d.ts", + "mainEntryPointFilePath": "/dist/typescript/module/src/index.d.ts", /** * A list of NPM package names whose exports should be treated as part of this package. diff --git a/trackers/react-native-tracker/tsconfig.json b/trackers/react-native-tracker/tsconfig.json index d2d42f7dc..346146e71 100644 --- a/trackers/react-native-tracker/tsconfig.json +++ b/trackers/react-native-tracker/tsconfig.json @@ -9,7 +9,7 @@ "esModuleInterop": true, "forceConsistentCasingInFileNames": true, "jsx": "react-jsx", - "lib": ["ESNext"], + "lib": ["ESNext", "DOM"], "module": "ESNext", "moduleResolution": "node", "noEmit": true, From 9094cb3b643322c2c61e440ca8be906f5036c669 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matu=CC=81s=CC=8C=20Tomlein?= Date: Mon, 11 Nov 2024 08:48:25 +0100 Subject: [PATCH 12/16] Updates based on review comments --- trackers/react-native-tracker/README.md | 68 +++++++++++-------- trackers/react-native-tracker/src/subject.ts | 12 ++-- trackers/react-native-tracker/src/types.ts | 2 +- .../react-native-tracker/test/events.test.ts | 34 +++++----- .../react-native-tracker/test/subject.test.ts | 44 ++++++------ .../react-native-tracker/test/tracker.test.ts | 8 +-- 6 files changed, 88 insertions(+), 80 deletions(-) diff --git a/trackers/react-native-tracker/README.md b/trackers/react-native-tracker/README.md index 9904fc092..c43a5082d 100644 --- a/trackers/react-native-tracker/README.md +++ b/trackers/react-native-tracker/README.md @@ -1,29 +1,16 @@ -# Snowplow Node Tracker +# Snowplow React Native Tracker [![npm version][npm-image]][npm-url] [![License][license-image]](LICENSE) -Add Snowplow Tracking to your Node.js Application with `@snowplow/node-tracker`. - -## Maintainer quick start - -Part of the Snowplow JavaScript Tracker monorepo. -Build with [Node.js](https://nodejs.org/en/) (18 - 20) and [Rush](https://rushjs.io/). - -### Setup repository - -```bash -npm install -g @microsoft/rush -git clone https://github.com/snowplow/snowplow-javascript-tracker.git -rush update -``` +Add Snowplow Tracking to your React Native Application with `@snowplow/react-native-tracker`. ## Package Installation With npm: ```bash -npm install @snowplow/node-tracker +npm install @snowplow/react-native-tracker ``` ## Usage @@ -31,21 +18,17 @@ npm install @snowplow/node-tracker Initialize your tracker with your desired configuration: ```js -import { newTracker } from '@snowplow/node-tracker'; -const t = newTracker( - { namespace: 'myTracker', appId: 'myApp', encodeBase64: false }, - { endpoint: 'collector.mydomain.net', port: 8080, bufferSize: 5 } -); +import { newTracker } from '@snowplow/react-native-tracker'; +const t = newTracker({ + namespace: 'myTracker', + appId: 'myApp', + endpoint: 'http://0.0.0.0:9090' +}); ``` Then use the `track` function from this package, along with the `buildX` functions to send events to your configured emitters: ```js -import { - buildSelfDescribingEvent, - buildPageView -} from '@snowplow/node-tracker'; - const context = [ { schema: 'iglu:com.acme/user/jsonschema/1-0-0', @@ -55,8 +38,10 @@ const context = [ }, ]; -t.track( - buildPageView({ pageUrl: 'http://www.example.com', pageTitle: 'example page', referrer: 'http://google.com' }), +t.trackScreenViewEvent({ name: 'myScreenName' }); + +t.trackPageView( + { pageUrl: 'http://www.example.com', pageTitle: 'example page' }, context ); @@ -67,10 +52,28 @@ const eventJson = { }, }; -t.track(buildSelfDescribingEvent({ event: eventJson }), context); +t.trackSelfDescribingEvent(eventJson, context); ``` -To enable success and failure callback debugging, run your application with `NODE_DEBUG=snowplow`. +## Maintainer quick start + +Part of the Snowplow JavaScript Tracker monorepo. +Build with [Node.js](https://nodejs.org/en/) (18 - 20) and [Rush](https://rushjs.io/). + +### Setup repository + +```bash +npm install -g @microsoft/rush +git clone https://github.com/snowplow/snowplow-javascript-tracker.git +rush update +``` + +## Find out more + +| Technical Docs | Setup Guide | +|-----------------------------------|-----------------------------| +| [![i1][techdocs-image]][techdocs] | [![i2][setup-image]][setup] | +| [Technical Docs][techdocs] | [Setup Guide][setup] | ## Copyright and license @@ -84,3 +87,8 @@ All rights reserved. [license-image]: https://img.shields.io/npm/l/@snowplow/node-tracker [npm-url]: https://www.npmjs.com/package/@snowplow/node-tracker [npm-image]: https://img.shields.io/npm/v/@snowplow/node-tracker + +[techdocs]: https://docs.snowplowanalytics.com/docs/collecting-data/collecting-from-own-applications/react-native-tracker/introduction +[techdocs-image]: https://d3i6fms1cm1j0i.cloudfront.net/github/images/techdocs.png +[setup]: https://docs.snowplowanalytics.com/docs/collecting-data/collecting-from-own-applications/react-native-tracker/quick-start-guide/ +[setup-image]: https://d3i6fms1cm1j0i.cloudfront.net/github/images/setup.png diff --git a/trackers/react-native-tracker/src/subject.ts b/trackers/react-native-tracker/src/subject.ts index 968fca797..1a141e481 100644 --- a/trackers/react-native-tracker/src/subject.ts +++ b/trackers/react-native-tracker/src/subject.ts @@ -5,7 +5,7 @@ export function newSubject(core: TrackerCore, configuration?: SubjectConfigurati let domainUserId: string | undefined; let networkUserId: string | undefined; - const addSubjectToPayload = (payload: PayloadBuilder): void => { + const addSubjectToPayload = (payload: PayloadBuilder) => { payload.add('duid', domainUserId); payload.add('nuid', networkUserId); }; @@ -13,23 +13,23 @@ export function newSubject(core: TrackerCore, configuration?: SubjectConfigurati const setScreenResolution = (screenSize: ScreenSize) => core.setScreenResolution(String(screenSize[0]), String(screenSize[1])); - const setNetworkUserId = function (userId: string | undefined) { + const setNetworkUserId = (userId: string | undefined) => { networkUserId = userId; }; - const setDomainUserId = function (userId: string | undefined) { + const setDomainUserId = (userId: string | undefined) => { domainUserId = userId; }; - const setColorDepth = function (colorDepth: number) { + const setColorDepth = (colorDepth: number) => { core.setColorDepth(String(colorDepth)); }; - const setScreenViewport = function (screenSize: ScreenSize) { + const setScreenViewport = (screenSize: ScreenSize) => { core.setViewport(String(screenSize[0]), String(screenSize[1])); }; - const setSubjectData = function (data: SubjectConfiguration) { + const setSubjectData = (data: SubjectConfiguration) => { setNetworkUserId(data.networkUserId); setDomainUserId(data.domainUserId); if (data.userId) { diff --git a/trackers/react-native-tracker/src/types.ts b/trackers/react-native-tracker/src/types.ts index 81a0d30cc..a7d31fade 100755 --- a/trackers/react-native-tracker/src/types.ts +++ b/trackers/react-native-tracker/src/types.ts @@ -544,7 +544,7 @@ export type ReactNativeTracker = { // TODO: // /** - // * Gets the dentifier for the user of the session + // * Gets the identifier for the user of the session // * // * @returns {Promise} // */ diff --git a/trackers/react-native-tracker/test/events.test.ts b/trackers/react-native-tracker/test/events.test.ts index 62d526764..f16b80a23 100644 --- a/trackers/react-native-tracker/test/events.test.ts +++ b/trackers/react-native-tracker/test/events.test.ts @@ -26,9 +26,9 @@ describe('Events', () => { expect(payloads.length).toBe(1); const [payload] = payloads; - expect(payload.e).toBe('pv'); - expect(payload.url).toBe('http://localhost:9090'); - expect(payload.page).toBe('Home'); + expect(payload?.e).toBe('pv'); + expect(payload?.url).toBe('http://localhost:9090'); + expect(payload?.page).toBe('Home'); }); it('tracks a structured event', () => { @@ -42,12 +42,12 @@ describe('Events', () => { expect(payloads.length).toBe(1); const [payload] = payloads; - expect(payload.e).toBe('se'); - expect(payload.se_ca).toBe('category'); - expect(payload.se_ac).toBe('action'); - expect(payload.se_la).toBe('label'); - expect(payload.se_pr).toBe('property'); - expect(payload.se_va).toBe('1'); + expect(payload?.e).toBe('se'); + expect(payload?.se_ca).toBe('category'); + expect(payload?.se_ac).toBe('action'); + expect(payload?.se_la).toBe('label'); + expect(payload?.se_pr).toBe('property'); + expect(payload?.se_va).toBe('1'); }); it('tracks a timing event', () => { @@ -60,8 +60,8 @@ describe('Events', () => { expect(payloads.length).toBe(1); const [payload] = payloads; - expect(payload.e).toBe('ue'); - const { ue_pr } = payload; + expect(payload?.e).toBe('ue'); + const { ue_pr } = payload!; const event = JSON.parse(ue_pr as string); const { schema, data } = event.data; expect(schema).toContain('timing'); @@ -82,8 +82,8 @@ describe('Events', () => { expect(payloads.length).toBe(1); const [payload] = payloads; - expect(payload.e).toBe('ue'); - const { ue_pr } = payload; + expect(payload?.e).toBe('ue'); + const { ue_pr } = payload!; const event = JSON.parse(ue_pr as string); const { schema, data } = event.data; expect(schema).toContain('message_notification'); @@ -104,8 +104,8 @@ describe('Events', () => { expect(payloads.length).toBe(1); const [payload] = payloads; - expect(payload.e).toBe('ue'); - const { ue_pr } = payload; + expect(payload?.e).toBe('ue'); + const { ue_pr } = payload!; const event = JSON.parse(ue_pr as string); const { schema, data } = event.data; expect(schema).toBe('iglu:com.acme/event/jsonschema/1-0-0'); @@ -129,8 +129,8 @@ describe('Events', () => { expect(payloads.length).toBe(1); const [payload] = payloads; - expect(payload.co).toBeDefined(); - const { co } = payload; + expect(payload?.co).toBeDefined(); + const { co } = payload!; const context = JSON.parse(co as string); const [{ schema, data }] = context.data; expect(schema).toBe('iglu:com.acme/page/jsonschema/1-0-0'); diff --git a/trackers/react-native-tracker/test/subject.test.ts b/trackers/react-native-tracker/test/subject.test.ts index 72a2fa1ba..f1644a88c 100644 --- a/trackers/react-native-tracker/test/subject.test.ts +++ b/trackers/react-native-tracker/test/subject.test.ts @@ -41,16 +41,16 @@ describe('Subject', () => { expect(payloads.length).toBe(1); const [payload] = payloads; - expect(payload.uid).toBe('user-id'); - expect(payload.nuid).toBe('network-user-id'); - expect(payload.duid).toBe('domain-user-id'); - expect(payload.ua).toBe('user-agent'); - expect(payload.ip).toBe('ip-address'); - expect(payload.tz).toBe('timezone'); - expect(payload.lang).toBe('sk'); - expect(payload.res).toBe('1920x1080'); - expect(payload.cd).toBe('24'); - expect(payload.vp).toBe('1200x800'); + expect(payload?.uid).toBe('user-id'); + expect(payload?.nuid).toBe('network-user-id'); + expect(payload?.duid).toBe('domain-user-id'); + expect(payload?.ua).toBe('user-agent'); + expect(payload?.ip).toBe('ip-address'); + expect(payload?.tz).toBe('timezone'); + expect(payload?.lang).toBe('sk'); + expect(payload?.res).toBe('1920x1080'); + expect(payload?.cd).toBe('24'); + expect(payload?.vp).toBe('1200x800'); }); }); @@ -66,7 +66,7 @@ describe('Subject', () => { expect(payloads.length).toBe(1); const [payload] = payloads; - expect(payload.uid).toBe('user-id'); + expect(payload?.uid).toBe('user-id'); }); it('sets the network user id', () => { @@ -75,7 +75,7 @@ describe('Subject', () => { expect(payloads.length).toBe(1); const [payload] = payloads; - expect(payload.nuid).toBe('network-user-id'); + expect(payload?.nuid).toBe('network-user-id'); }); it('sets the domain user id', () => { @@ -84,7 +84,7 @@ describe('Subject', () => { expect(payloads.length).toBe(1); const [payload] = payloads; - expect(payload.duid).toBe('domain-user-id'); + expect(payload?.duid).toBe('domain-user-id'); }); it('sets the screen resolution', () => { @@ -93,7 +93,7 @@ describe('Subject', () => { expect(payloads.length).toBe(1); const [payload] = payloads; - expect(payload.res).toBe('1920x1080'); + expect(payload?.res).toBe('1920x1080'); }); it('sets the color depth', () => { @@ -102,7 +102,7 @@ describe('Subject', () => { expect(payloads.length).toBe(1); const [payload] = payloads; - expect(payload.cd).toBe('24'); + expect(payload?.cd).toBe('24'); }); it('sets the screen viewport', () => { @@ -111,7 +111,7 @@ describe('Subject', () => { expect(payloads.length).toBe(1); const [payload] = payloads; - expect(payload.vp).toBe('1200x800'); + expect(payload?.vp).toBe('1200x800'); }); it('sets the subject data', () => { @@ -127,12 +127,12 @@ describe('Subject', () => { expect(payloads.length).toBe(1); const [payload] = payloads; - expect(payload.nuid).toBe('network-user-id'); - expect(payload.duid).toBe('domain-user-id'); - expect(payload.uid).toBe('user-id'); - expect(payload.ua).toBe('user-agent'); - expect(payload.ip).toBe('ip-address'); - expect(payload.tz).toBe('timezone'); + expect(payload?.nuid).toBe('network-user-id'); + expect(payload?.duid).toBe('domain-user-id'); + expect(payload?.uid).toBe('user-id'); + expect(payload?.ua).toBe('user-agent'); + expect(payload?.ip).toBe('ip-address'); + expect(payload?.tz).toBe('timezone'); }); }); }); diff --git a/trackers/react-native-tracker/test/tracker.test.ts b/trackers/react-native-tracker/test/tracker.test.ts index bef648f1f..147d045f8 100644 --- a/trackers/react-native-tracker/test/tracker.test.ts +++ b/trackers/react-native-tracker/test/tracker.test.ts @@ -1,4 +1,4 @@ -import { newTracker, ReactNativeTracker } from '../src'; +import { newTracker } from '../src'; function createMockFetch(status: number, requests: Request[]) { return async (input: Request) => { @@ -36,7 +36,7 @@ describe('Tracker', () => { expect(requests.length).toBe(1); const [request] = requests; - const payload = await request.json(); + const payload = await request?.json(); expect(payload.data.length).toBe(1); const [event] = payload.data; @@ -96,7 +96,7 @@ describe('Tracker', () => { await tracker.flush(); const [request] = requests; - const payload = await request.json(); + const payload = await request?.json(); expect(payload.data.length).toBe(1); const [event] = payload.data; @@ -133,7 +133,7 @@ describe('Tracker', () => { await tracker.flush(); const [request] = requests; - const payload = await request.json(); + const payload = await request?.json(); expect(payload.data.length).toBe(1); const [event] = payload.data; From c8e742b5f3e63dcaacc696bff33800457beeb35f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matu=CC=81s=CC=8C=20Tomlein?= Date: Wed, 13 Nov 2024 12:57:26 +0100 Subject: [PATCH 13/16] Add an option to deactivate tracker in tracker core and a getTracker and removeTracker functions in the React Native tracker --- libraries/tracker-core/src/core.ts | 20 ++++++++ libraries/tracker-core/src/plugins.ts | 5 ++ libraries/tracker-core/test/core.ts | 48 +++++++++++++++++++ trackers/react-native-tracker/src/tracker.ts | 38 ++++++++++++++- .../react-native-tracker/test/tracker.test.ts | 22 ++++++++- 5 files changed, 130 insertions(+), 3 deletions(-) diff --git a/libraries/tracker-core/src/core.ts b/libraries/tracker-core/src/core.ts index 0dfff0d59..cbe78a044 100644 --- a/libraries/tracker-core/src/core.ts +++ b/libraries/tracker-core/src/core.ts @@ -157,6 +157,13 @@ export interface TrackerCore { */ addPayloadPair: (key: string, value: unknown) => void; + /** + * Deactivate tracker core including all plugins. + * This is useful for cleaning up resources or listeners that have been created. + * Once deactivated, the tracker won't be able to track any events. + */ + deactivate(): void; + /** * Get current base64 encoding state */ @@ -387,6 +394,11 @@ export function trackerCore(configuration: CoreConfiguration = {}): TrackerCore context?: Array> | null, timestamp?: Timestamp | null ): Payload | undefined { + if (!active) { + LOG.error('Track called on deactivated tracker'); + return undefined; + } + pb.withJsonProcessor(payloadJsonProcessor(encodeBase64)); pb.add('eid', uuid()); pb.addDict(payloadPairs); @@ -539,6 +551,7 @@ export function trackerCore(configuration: CoreConfiguration = {}): TrackerCore return core; } + let active = true; const { base64, corePlugins, callback } = configuration, plugins = corePlugins ?? [], partialCore = newCore(base64 ?? true, plugins, callback), @@ -550,6 +563,13 @@ export function trackerCore(configuration: CoreConfiguration = {}): TrackerCore plugin.logger?.(LOG); plugin.activateCorePlugin?.(core); }, + deactivate: () => { + plugins.forEach((plugin) => { + plugin.deactivatePlugin?.(core); + }); + plugins.length = 0; + active = false; + } }; plugins?.forEach((plugin) => { diff --git a/libraries/tracker-core/src/plugins.ts b/libraries/tracker-core/src/plugins.ts index 4d1f6c2d9..7a8b11b52 100644 --- a/libraries/tracker-core/src/plugins.ts +++ b/libraries/tracker-core/src/plugins.ts @@ -43,6 +43,11 @@ export interface CorePlugin { * Use to capture the specific core instance for each instance of a core plugin */ activateCorePlugin?: (core: TrackerCore) => void; + /** + * Called when the tracker is being destroyed. + * Should be used to clean up any resources or listeners that the plugin has created. + */ + deactivatePlugin?: (core: TrackerCore) => void; /** * Called before the `filter` method is called and before the trackerCore callback fires (if the filter passes) * @param payloadBuilder - The payloadBuilder which will be sent to the callback, can be modified diff --git a/libraries/tracker-core/test/core.ts b/libraries/tracker-core/test/core.ts index aac62a570..226e9dc7e 100644 --- a/libraries/tracker-core/test/core.ts +++ b/libraries/tracker-core/test/core.ts @@ -70,6 +70,10 @@ function compare(result: Payload, expected: Payload, t: ExecutionContext) { t.deepEqual(result, expected); } +test.before(() => { + console.error = () => {}; // Silence console.error globally +}); + test('tracker.track API should return the eid attribute', (t) => { const pageUrl = 'http://www.example.com'; const pageTitle = 'title page'; @@ -1034,3 +1038,47 @@ test('filter is passed full payload including dynamic context', (t) => { t.assert(countTracked === 1); }); + +test('doesnt track any events on deactivated tracker', (t) => { + let countTracked = 0; + const tracker = trackerCore({ + corePlugins: [ + { + afterTrack: () => { + countTracked += 1; + }, + }, + ], + }); + + tracker.deactivate(); + + t.falsy( + tracker.track( + buildPageView({ + pageUrl: 'http://www.example.com', + pageTitle: 'title page', + referrer: 'https://www.google.com', + }) + ) + ); + + t.assert(countTracked === 0); +}); + +test('deactivates plugins on deactivated tracker', (t) => { + let pluginDeactivated = false; + const tracker = trackerCore({ + corePlugins: [ + { + deactivatePlugin: () => { + pluginDeactivated = true; + } + }, + ], + }); + + tracker.deactivate(); + + t.assert(pluginDeactivated); +}); diff --git a/trackers/react-native-tracker/src/tracker.ts b/trackers/react-native-tracker/src/tracker.ts index ac9e87e59..b451947b3 100644 --- a/trackers/react-native-tracker/src/tracker.ts +++ b/trackers/react-native-tracker/src/tracker.ts @@ -1,4 +1,4 @@ -import { trackerCore, PayloadBuilder, version, EmitterConfiguration } from '@snowplow/tracker-core'; +import { trackerCore, PayloadBuilder, version, EmitterConfiguration, TrackerCore } from '@snowplow/tracker-core'; import { newEmitter } from '@snowplow/tracker-core'; import { newReactNativeEventStore } from './event_store'; @@ -13,6 +13,8 @@ import { TrackerConfiguration, } from './types'; +const initializedTrackers: Record = {}; + /** * Creates a new tracker instance with the given configuration * @param configuration - Configuration for the tracker @@ -45,7 +47,7 @@ export async function newTracker( core.setAppId(appId); } - return { + const tracker = { ...newTrackEventFunctions(core), ...subject.properties, setAppId: core.setAppId, @@ -56,4 +58,36 @@ export async function newTracker( clearGlobalContexts: core.clearGlobalContexts, addPlugin: core.addPlugin, }; + initializedTrackers[namespace] = { tracker, core }; + return tracker; +} + +/** + * Retrieves an initialized tracker given its namespace + * @param trackerNamespace Tracker namespace + * @returns Tracker instance if exists + */ +export function getTracker(trackerNamespace: string): ReactNativeTracker | undefined { + return initializedTrackers[trackerNamespace]?.tracker; +} + +/** + * Removes a tracker given its namespace + * + * @param trackerNamespace {string} + */ +export function removeTracker(trackerNamespace: string): void { + if (initializedTrackers[trackerNamespace]) { + initializedTrackers[trackerNamespace]?.core.deactivate(); + delete initializedTrackers[trackerNamespace]; + } +} + +/** + * Removes all initialized trackers + * + * @returns - A boolean promise + */ +export function removeAllTrackers(): void { + Object.keys(initializedTrackers).forEach(removeTracker); } diff --git a/trackers/react-native-tracker/test/tracker.test.ts b/trackers/react-native-tracker/test/tracker.test.ts index 147d045f8..2305fb1a1 100644 --- a/trackers/react-native-tracker/test/tracker.test.ts +++ b/trackers/react-native-tracker/test/tracker.test.ts @@ -1,4 +1,4 @@ -import { newTracker } from '../src'; +import { getTracker, newTracker, removeAllTrackers, removeTracker } from '../src'; function createMockFetch(status: number, requests: Request[]) { return async (input: Request) => { @@ -21,6 +21,26 @@ describe('Tracker', () => { expect(await newTracker({ namespace: 'test', endpoint: 'http://localhost:9090' })).toBeDefined(); }); + it('retrieves an existing tracker', async () => { + const tracker = await newTracker({ namespace: 'test', endpoint: 'http://localhost:9090' }); + expect(getTracker('test')).toBe(tracker); + expect(getTracker('non-existent')).toBeUndefined(); + }); + + it('removes a tracker', async () => { + await newTracker({ namespace: 'test', endpoint: 'http://localhost:9090' }); + expect(getTracker('test')).toBeDefined(); + removeTracker('test'); + expect(getTracker('test')).toBeUndefined(); + }); + + it('removes all trackers', async () => { + await newTracker({ namespace: 'test', endpoint: 'http://localhost:9090' }); + expect(getTracker('test')).toBeDefined(); + removeAllTrackers(); + expect(getTracker('test')).toBeUndefined(); + }); + it('tracks a page view event with tracker properties', async () => { const tracker = await newTracker({ namespace: 'test', From 879d40c9d333caf30dc69210b09d9ab07b33b915 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matu=CC=81s=CC=8C=20Tomlein?= Date: Wed, 13 Nov 2024 13:23:15 +0100 Subject: [PATCH 14/16] Update docs --- ...ode-tracker.coreplugin.deactivateplugin.md | 13 ++++++++++ .../markdown/node-tracker.coreplugin.md | 1 + .../node-tracker.trackercore.deactivate.md | 17 ++++++++++++ .../markdown/node-tracker.trackercore.md | 1 + .../docs/node-tracker/node-tracker.api.md | 2 ++ ...ive-tracker.coreplugin.deactivateplugin.md | 13 ++++++++++ .../react-native-tracker.coreplugin.md | 1 + .../react-native-tracker.gettracker.md | 26 +++++++++++++++++++ .../markdown/react-native-tracker.md | 3 +++ .../react-native-tracker.removealltrackers.md | 19 ++++++++++++++ .../react-native-tracker.removetracker.md | 24 +++++++++++++++++ ...t-native-tracker.trackercore.deactivate.md | 17 ++++++++++++ .../react-native-tracker.trackercore.md | 1 + .../react-native-tracker.api.md | 11 ++++++++ trackers/react-native-tracker/src/tracker.ts | 4 +-- 15 files changed, 151 insertions(+), 2 deletions(-) create mode 100644 api-docs/docs/node-tracker/markdown/node-tracker.coreplugin.deactivateplugin.md create mode 100644 api-docs/docs/node-tracker/markdown/node-tracker.trackercore.deactivate.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.deactivateplugin.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.gettracker.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.removealltrackers.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.removetracker.md create mode 100644 api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.deactivate.md diff --git a/api-docs/docs/node-tracker/markdown/node-tracker.coreplugin.deactivateplugin.md b/api-docs/docs/node-tracker/markdown/node-tracker.coreplugin.deactivateplugin.md new file mode 100644 index 000000000..811a13c07 --- /dev/null +++ b/api-docs/docs/node-tracker/markdown/node-tracker.coreplugin.deactivateplugin.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/node-tracker](./node-tracker.md) > [CorePlugin](./node-tracker.coreplugin.md) > [deactivatePlugin](./node-tracker.coreplugin.deactivateplugin.md) + +## CorePlugin.deactivatePlugin property + +Called when the tracker is being destroyed. Should be used to clean up any resources or listeners that the plugin has created. + +Signature: + +```typescript +deactivatePlugin?: (core: TrackerCore) => void; +``` diff --git a/api-docs/docs/node-tracker/markdown/node-tracker.coreplugin.md b/api-docs/docs/node-tracker/markdown/node-tracker.coreplugin.md index 37513de7d..65e4f9ae4 100644 --- a/api-docs/docs/node-tracker/markdown/node-tracker.coreplugin.md +++ b/api-docs/docs/node-tracker/markdown/node-tracker.coreplugin.md @@ -20,6 +20,7 @@ interface CorePlugin | [afterTrack?](./node-tracker.coreplugin.aftertrack.md) | (payload: Payload) => void | (Optional) Called just after the trackerCore callback fires | | [beforeTrack?](./node-tracker.coreplugin.beforetrack.md) | (payloadBuilder: PayloadBuilder) => void | (Optional) Called before the filter method is called and before the trackerCore callback fires (if the filter passes) | | [contexts?](./node-tracker.coreplugin.contexts.md) | () => SelfDescribingJson\[\] | (Optional) Called when constructing the context for each event Useful for adding additional context to events | +| [deactivatePlugin?](./node-tracker.coreplugin.deactivateplugin.md) | (core: TrackerCore) => void | (Optional) Called when the tracker is being destroyed. Should be used to clean up any resources or listeners that the plugin has created. | | [filter?](./node-tracker.coreplugin.filter.md) | (payload: Payload) => boolean | (Optional) Called before the payload is sent to the callback to decide whether to send the payload or skip it | | [logger?](./node-tracker.coreplugin.logger.md) | (logger: Logger) => void | (Optional) Passed a logger instance which can be used to send log information to the active logger | diff --git a/api-docs/docs/node-tracker/markdown/node-tracker.trackercore.deactivate.md b/api-docs/docs/node-tracker/markdown/node-tracker.trackercore.deactivate.md new file mode 100644 index 000000000..d3b1daf9f --- /dev/null +++ b/api-docs/docs/node-tracker/markdown/node-tracker.trackercore.deactivate.md @@ -0,0 +1,17 @@ + + +[Home](./index.md) > [@snowplow/node-tracker](./node-tracker.md) > [TrackerCore](./node-tracker.trackercore.md) > [deactivate](./node-tracker.trackercore.deactivate.md) + +## TrackerCore.deactivate() method + +Deactivate tracker core including all plugins. This is useful for cleaning up resources or listeners that have been created. Once deactivated, the tracker won't be able to track any events. + +Signature: + +```typescript +deactivate(): void; +``` +Returns: + +void + diff --git a/api-docs/docs/node-tracker/markdown/node-tracker.trackercore.md b/api-docs/docs/node-tracker/markdown/node-tracker.trackercore.md index be6ea7a79..d63fc8419 100644 --- a/api-docs/docs/node-tracker/markdown/node-tracker.trackercore.md +++ b/api-docs/docs/node-tracker/markdown/node-tracker.trackercore.md @@ -27,6 +27,7 @@ interface TrackerCore | [addPayloadDict(dict)](./node-tracker.trackercore.addpayloaddict.md) | Merges a dictionary into payloadPairs | | [addPlugin(configuration)](./node-tracker.trackercore.addplugin.md) | Add a plugin into the plugin collection after Core has already been initialised | | [clearGlobalContexts()](./node-tracker.trackercore.clearglobalcontexts.md) | Removes all global contexts | +| [deactivate()](./node-tracker.trackercore.deactivate.md) | Deactivate tracker core including all plugins. This is useful for cleaning up resources or listeners that have been created. Once deactivated, the tracker won't be able to track any events. | | [getBase64Encoding()](./node-tracker.trackercore.getbase64encoding.md) | Get current base64 encoding state | | [removeGlobalContexts(contexts)](./node-tracker.trackercore.removeglobalcontexts.md) | Removes previously added global context, performs a deep comparison of the contexts or conditional contexts | | [resetPayloadPairs(dict)](./node-tracker.trackercore.resetpayloadpairs.md) | Replace payloadPairs with a new dictionary | diff --git a/api-docs/docs/node-tracker/node-tracker.api.md b/api-docs/docs/node-tracker/node-tracker.api.md index e8df083bf..5a9b6fd16 100644 --- a/api-docs/docs/node-tracker/node-tracker.api.md +++ b/api-docs/docs/node-tracker/node-tracker.api.md @@ -165,6 +165,7 @@ export interface CorePlugin { afterTrack?: (payload: Payload) => void; beforeTrack?: (payloadBuilder: PayloadBuilder) => void; contexts?: () => SelfDescribingJson[]; + deactivatePlugin?: (core: TrackerCore) => void; filter?: (payload: Payload) => boolean; logger?: (logger: Logger) => void; } @@ -527,6 +528,7 @@ export interface TrackerCore { addPayloadPair: (key: string, value: unknown) => void; addPlugin(configuration: CorePluginConfiguration): void; clearGlobalContexts(): void; + deactivate(): void; getBase64Encoding(): boolean; removeGlobalContexts(contexts: Array): void; resetPayloadPairs(dict: Payload): void; diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.deactivateplugin.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.deactivateplugin.md new file mode 100644 index 000000000..72db41582 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.deactivateplugin.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [CorePlugin](./react-native-tracker.coreplugin.md) > [deactivatePlugin](./react-native-tracker.coreplugin.deactivateplugin.md) + +## CorePlugin.deactivatePlugin property + +Called when the tracker is being destroyed. Should be used to clean up any resources or listeners that the plugin has created. + +Signature: + +```typescript +deactivatePlugin?: (core: TrackerCore) => void; +``` diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.md index 53ad13b14..9e767ed1b 100644 --- a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.md +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.coreplugin.md @@ -20,6 +20,7 @@ interface CorePlugin | [afterTrack?](./react-native-tracker.coreplugin.aftertrack.md) | (payload: Payload) => void | (Optional) Called just after the trackerCore callback fires | | [beforeTrack?](./react-native-tracker.coreplugin.beforetrack.md) | (payloadBuilder: PayloadBuilder) => void | (Optional) Called before the filter method is called and before the trackerCore callback fires (if the filter passes) | | [contexts?](./react-native-tracker.coreplugin.contexts.md) | () => SelfDescribingJson\[\] | (Optional) Called when constructing the context for each event Useful for adding additional context to events | +| [deactivatePlugin?](./react-native-tracker.coreplugin.deactivateplugin.md) | (core: TrackerCore) => void | (Optional) Called when the tracker is being destroyed. Should be used to clean up any resources or listeners that the plugin has created. | | [filter?](./react-native-tracker.coreplugin.filter.md) | (payload: Payload) => boolean | (Optional) Called before the payload is sent to the callback to decide whether to send the payload or skip it | | [logger?](./react-native-tracker.coreplugin.logger.md) | (logger: Logger) => void | (Optional) Passed a logger instance which can be used to send log information to the active logger | diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.gettracker.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.gettracker.md new file mode 100644 index 000000000..273ba4165 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.gettracker.md @@ -0,0 +1,26 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [getTracker](./react-native-tracker.gettracker.md) + +## getTracker() function + +Retrieves an initialized tracker given its namespace + +Signature: + +```typescript +export declare function getTracker(trackerNamespace: string): ReactNativeTracker | undefined; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| trackerNamespace | string | Tracker namespace | + +Returns: + +[ReactNativeTracker](./react-native-tracker.reactnativetracker.md) \| undefined + +Tracker instance if exists + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.md index 387847779..10f2ebe20 100644 --- a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.md +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.md @@ -14,7 +14,10 @@ | Function | Description | | --- | --- | +| [getTracker(trackerNamespace)](./react-native-tracker.gettracker.md) | Retrieves an initialized tracker given its namespace | | [newTracker(configuration)](./react-native-tracker.newtracker.md) | Creates a new tracker instance with the given configuration | +| [removeAllTrackers()](./react-native-tracker.removealltrackers.md) | Removes all initialized trackers | +| [removeTracker(trackerNamespace)](./react-native-tracker.removetracker.md) | Removes a tracker given its namespace | ## Interfaces diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.removealltrackers.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.removealltrackers.md new file mode 100644 index 000000000..ac760d48d --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.removealltrackers.md @@ -0,0 +1,19 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [removeAllTrackers](./react-native-tracker.removealltrackers.md) + +## removeAllTrackers() function + +Removes all initialized trackers + +Signature: + +```typescript +export declare function removeAllTrackers(): void; +``` +Returns: + +void + +- A boolean promise + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.removetracker.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.removetracker.md new file mode 100644 index 000000000..5e8504ebe --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.removetracker.md @@ -0,0 +1,24 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [removeTracker](./react-native-tracker.removetracker.md) + +## removeTracker() function + +Removes a tracker given its namespace + +Signature: + +```typescript +export declare function removeTracker(trackerNamespace: string): void; +``` + +## Parameters + +| Parameter | Type | Description | +| --- | --- | --- | +| trackerNamespace | string | Tracker namespace | + +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.deactivate.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.deactivate.md new file mode 100644 index 000000000..a06091c47 --- /dev/null +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.deactivate.md @@ -0,0 +1,17 @@ + + +[Home](./index.md) > [@snowplow/react-native-tracker](./react-native-tracker.md) > [TrackerCore](./react-native-tracker.trackercore.md) > [deactivate](./react-native-tracker.trackercore.deactivate.md) + +## TrackerCore.deactivate() method + +Deactivate tracker core including all plugins. This is useful for cleaning up resources or listeners that have been created. Once deactivated, the tracker won't be able to track any events. + +Signature: + +```typescript +deactivate(): void; +``` +Returns: + +void + diff --git a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.md b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.md index 5ae8f884a..de989a360 100644 --- a/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.md +++ b/api-docs/docs/react-native-tracker/markdown/react-native-tracker.trackercore.md @@ -27,6 +27,7 @@ interface TrackerCore | [addPayloadDict(dict)](./react-native-tracker.trackercore.addpayloaddict.md) | Merges a dictionary into payloadPairs | | [addPlugin(configuration)](./react-native-tracker.trackercore.addplugin.md) | Add a plugin into the plugin collection after Core has already been initialised | | [clearGlobalContexts()](./react-native-tracker.trackercore.clearglobalcontexts.md) | Removes all global contexts | +| [deactivate()](./react-native-tracker.trackercore.deactivate.md) | Deactivate tracker core including all plugins. This is useful for cleaning up resources or listeners that have been created. Once deactivated, the tracker won't be able to track any events. | | [getBase64Encoding()](./react-native-tracker.trackercore.getbase64encoding.md) | Get current base64 encoding state | | [removeGlobalContexts(contexts)](./react-native-tracker.trackercore.removeglobalcontexts.md) | Removes previously added global context, performs a deep comparison of the contexts or conditional contexts | | [resetPayloadPairs(dict)](./react-native-tracker.trackercore.resetpayloadpairs.md) | Replace payloadPairs with a new dictionary | diff --git a/api-docs/docs/react-native-tracker/react-native-tracker.api.md b/api-docs/docs/react-native-tracker/react-native-tracker.api.md index 8d268ff60..a48e04ddf 100644 --- a/api-docs/docs/react-native-tracker/react-native-tracker.api.md +++ b/api-docs/docs/react-native-tracker/react-native-tracker.api.md @@ -37,6 +37,7 @@ export interface CorePlugin { afterTrack?: (payload: Payload) => void; beforeTrack?: (payloadBuilder: PayloadBuilder) => void; contexts?: () => SelfDescribingJson[]; + deactivatePlugin?: (core: TrackerCore) => void; filter?: (payload: Payload) => boolean; logger?: (logger: Logger) => void; } @@ -179,6 +180,9 @@ export interface FormFocusOrChangeEvent { value: string | null; } +// @public +export function getTracker(trackerNamespace: string): ReactNativeTracker | undefined; + // @public export type JsonProcessor = (payloadBuilder: PayloadBuilder, jsonForProcessing: EventJson, contextEntitiesForProcessing: SelfDescribingJson[]) => void; @@ -298,6 +302,12 @@ export type ReactNativeTracker = { readonly setSubjectData: (config: SubjectConfiguration) => void; }; +// @public +export function removeAllTrackers(): void; + +// @public +export function removeTracker(trackerNamespace: string): void; + // @public export type RequestFailure = { events: EventBatch; @@ -409,6 +419,7 @@ export interface TrackerCore { addPayloadPair: (key: string, value: unknown) => void; addPlugin(configuration: CorePluginConfiguration): void; clearGlobalContexts(): void; + deactivate(): void; getBase64Encoding(): boolean; removeGlobalContexts(contexts: Array): void; resetPayloadPairs(dict: Payload): void; diff --git a/trackers/react-native-tracker/src/tracker.ts b/trackers/react-native-tracker/src/tracker.ts index b451947b3..fca43fc5c 100644 --- a/trackers/react-native-tracker/src/tracker.ts +++ b/trackers/react-native-tracker/src/tracker.ts @@ -64,7 +64,7 @@ export async function newTracker( /** * Retrieves an initialized tracker given its namespace - * @param trackerNamespace Tracker namespace + * @param trackerNamespace - Tracker namespace * @returns Tracker instance if exists */ export function getTracker(trackerNamespace: string): ReactNativeTracker | undefined { @@ -74,7 +74,7 @@ export function getTracker(trackerNamespace: string): ReactNativeTracker | undef /** * Removes a tracker given its namespace * - * @param trackerNamespace {string} + * @param trackerNamespace - Tracker namespace */ export function removeTracker(trackerNamespace: string): void { if (initializedTrackers[trackerNamespace]) { From e69d16852695fe4ca1450b2ed16f9e64ca026145 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matu=CC=81s=CC=8C=20Tomlein?= Date: Wed, 13 Nov 2024 13:33:22 +0100 Subject: [PATCH 15/16] Update rush change --- ...e-create_react_native_tracker_2024-11-13-12-33.json | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 common/changes/@snowplow/tracker-core/issue-create_react_native_tracker_2024-11-13-12-33.json diff --git a/common/changes/@snowplow/tracker-core/issue-create_react_native_tracker_2024-11-13-12-33.json b/common/changes/@snowplow/tracker-core/issue-create_react_native_tracker_2024-11-13-12-33.json new file mode 100644 index 000000000..a2d756ba6 --- /dev/null +++ b/common/changes/@snowplow/tracker-core/issue-create_react_native_tracker_2024-11-13-12-33.json @@ -0,0 +1,10 @@ +{ + "changes": [ + { + "packageName": "@snowplow/tracker-core", + "comment": "Add new tracker for React Native (#1371)", + "type": "none" + } + ], + "packageName": "@snowplow/tracker-core" +} \ No newline at end of file From 9b2d7fb37d782a9b19473084e8b95025cca22500 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matu=CC=81s=CC=8C=20Tomlein?= Date: Wed, 13 Nov 2024 13:39:37 +0100 Subject: [PATCH 16/16] Update API docs --- .../docs/browser-tracker/browser-tracker.api.md | 2 ++ ...owser-tracker.coreplugin.deactivateplugin.md | 13 +++++++++++++ .../markdown/browser-tracker.coreplugin.md | 1 + .../browser-tracker.trackerconfiguration.md | 1 - .../browser-tracker.trackercore.deactivate.md | 17 +++++++++++++++++ .../markdown/browser-tracker.trackercore.md | 1 + 6 files changed, 34 insertions(+), 1 deletion(-) create mode 100644 api-docs/docs/browser-tracker/markdown/browser-tracker.coreplugin.deactivateplugin.md create mode 100644 api-docs/docs/browser-tracker/markdown/browser-tracker.trackercore.deactivate.md diff --git a/api-docs/docs/browser-tracker/browser-tracker.api.md b/api-docs/docs/browser-tracker/browser-tracker.api.md index e571532a5..ad352f319 100644 --- a/api-docs/docs/browser-tracker/browser-tracker.api.md +++ b/api-docs/docs/browser-tracker/browser-tracker.api.md @@ -170,6 +170,7 @@ export interface CorePlugin { afterTrack?: (payload: Payload) => void; beforeTrack?: (payloadBuilder: PayloadBuilder) => void; contexts?: () => SelfDescribingJson[]; + deactivatePlugin?: (core: TrackerCore) => void; filter?: (payload: Payload) => boolean; logger?: (logger: Logger) => void; } @@ -545,6 +546,7 @@ export interface TrackerCore { addPayloadPair: (key: string, value: unknown) => void; addPlugin(configuration: CorePluginConfiguration): void; clearGlobalContexts(): void; + deactivate(): void; getBase64Encoding(): boolean; removeGlobalContexts(contexts: Array): void; resetPayloadPairs(dict: Payload): void; diff --git a/api-docs/docs/browser-tracker/markdown/browser-tracker.coreplugin.deactivateplugin.md b/api-docs/docs/browser-tracker/markdown/browser-tracker.coreplugin.deactivateplugin.md new file mode 100644 index 000000000..5d63baf9d --- /dev/null +++ b/api-docs/docs/browser-tracker/markdown/browser-tracker.coreplugin.deactivateplugin.md @@ -0,0 +1,13 @@ + + +[Home](./index.md) > [@snowplow/browser-tracker](./browser-tracker.md) > [CorePlugin](./browser-tracker.coreplugin.md) > [deactivatePlugin](./browser-tracker.coreplugin.deactivateplugin.md) + +## CorePlugin.deactivatePlugin property + +Called when the tracker is being destroyed. Should be used to clean up any resources or listeners that the plugin has created. + +Signature: + +```typescript +deactivatePlugin?: (core: TrackerCore) => void; +``` diff --git a/api-docs/docs/browser-tracker/markdown/browser-tracker.coreplugin.md b/api-docs/docs/browser-tracker/markdown/browser-tracker.coreplugin.md index 52b891986..a224db7cc 100644 --- a/api-docs/docs/browser-tracker/markdown/browser-tracker.coreplugin.md +++ b/api-docs/docs/browser-tracker/markdown/browser-tracker.coreplugin.md @@ -20,6 +20,7 @@ interface CorePlugin | [afterTrack?](./browser-tracker.coreplugin.aftertrack.md) | (payload: Payload) => void | (Optional) Called just after the trackerCore callback fires | | [beforeTrack?](./browser-tracker.coreplugin.beforetrack.md) | (payloadBuilder: PayloadBuilder) => void | (Optional) Called before the filter method is called and before the trackerCore callback fires (if the filter passes) | | [contexts?](./browser-tracker.coreplugin.contexts.md) | () => SelfDescribingJson\[\] | (Optional) Called when constructing the context for each event Useful for adding additional context to events | +| [deactivatePlugin?](./browser-tracker.coreplugin.deactivateplugin.md) | (core: TrackerCore) => void | (Optional) Called when the tracker is being destroyed. Should be used to clean up any resources or listeners that the plugin has created. | | [filter?](./browser-tracker.coreplugin.filter.md) | (payload: Payload) => boolean | (Optional) Called before the payload is sent to the callback to decide whether to send the payload or skip it | | [logger?](./browser-tracker.coreplugin.logger.md) | (logger: Logger) => void | (Optional) Passed a logger instance which can be used to send log information to the active logger | diff --git a/api-docs/docs/browser-tracker/markdown/browser-tracker.trackerconfiguration.md b/api-docs/docs/browser-tracker/markdown/browser-tracker.trackerconfiguration.md index 89fb83857..04b2fafda 100644 --- a/api-docs/docs/browser-tracker/markdown/browser-tracker.trackerconfiguration.md +++ b/api-docs/docs/browser-tracker/markdown/browser-tracker.trackerconfiguration.md @@ -44,6 +44,5 @@ newTracker('sp1', 'collector.my-website.com', { plugins: [ PerformanceTimingPlugin(), AdTrackingPlugin() ], stateStorageStrategy: 'cookieAndLocalStorage' }); - ``` diff --git a/api-docs/docs/browser-tracker/markdown/browser-tracker.trackercore.deactivate.md b/api-docs/docs/browser-tracker/markdown/browser-tracker.trackercore.deactivate.md new file mode 100644 index 000000000..74ac88a56 --- /dev/null +++ b/api-docs/docs/browser-tracker/markdown/browser-tracker.trackercore.deactivate.md @@ -0,0 +1,17 @@ + + +[Home](./index.md) > [@snowplow/browser-tracker](./browser-tracker.md) > [TrackerCore](./browser-tracker.trackercore.md) > [deactivate](./browser-tracker.trackercore.deactivate.md) + +## TrackerCore.deactivate() method + +Deactivate tracker core including all plugins. This is useful for cleaning up resources or listeners that have been created. Once deactivated, the tracker won't be able to track any events. + +Signature: + +```typescript +deactivate(): void; +``` +Returns: + +void + diff --git a/api-docs/docs/browser-tracker/markdown/browser-tracker.trackercore.md b/api-docs/docs/browser-tracker/markdown/browser-tracker.trackercore.md index 48a955801..f61d52fb9 100644 --- a/api-docs/docs/browser-tracker/markdown/browser-tracker.trackercore.md +++ b/api-docs/docs/browser-tracker/markdown/browser-tracker.trackercore.md @@ -27,6 +27,7 @@ interface TrackerCore | [addPayloadDict(dict)](./browser-tracker.trackercore.addpayloaddict.md) | Merges a dictionary into payloadPairs | | [addPlugin(configuration)](./browser-tracker.trackercore.addplugin.md) | Add a plugin into the plugin collection after Core has already been initialised | | [clearGlobalContexts()](./browser-tracker.trackercore.clearglobalcontexts.md) | Removes all global contexts | +| [deactivate()](./browser-tracker.trackercore.deactivate.md) | Deactivate tracker core including all plugins. This is useful for cleaning up resources or listeners that have been created. Once deactivated, the tracker won't be able to track any events. | | [getBase64Encoding()](./browser-tracker.trackercore.getbase64encoding.md) | Get current base64 encoding state | | [removeGlobalContexts(contexts)](./browser-tracker.trackercore.removeglobalcontexts.md) | Removes previously added global context, performs a deep comparison of the contexts or conditional contexts | | [resetPayloadPairs(dict)](./browser-tracker.trackercore.resetpayloadpairs.md) | Replace payloadPairs with a new dictionary |