From 0ba2c14087b428fc31c32a1234175dee04bead01 Mon Sep 17 00:00:00 2001 From: Praveen Raju <80779423+praju-aot@users.noreply.github.com> Date: Thu, 5 Dec 2024 12:17:17 -0500 Subject: [PATCH 01/25] ORV2-3163 Rectify the revert script to avoid errors on revert or reset (#1687) --- database/mssql/scripts/versions/revert/v_39_ddl_revert.sql | 3 ++- database/mssql/scripts/versions/revert/v_42_ddl_revert.sql | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/database/mssql/scripts/versions/revert/v_39_ddl_revert.sql b/database/mssql/scripts/versions/revert/v_39_ddl_revert.sql index af2a9a4cc..a62125b5d 100644 --- a/database/mssql/scripts/versions/revert/v_39_ddl_revert.sql +++ b/database/mssql/scripts/versions/revert/v_39_ddl_revert.sql @@ -17,7 +17,8 @@ BEGIN TRY ALTER TABLE [permit].[ORBC_NO_FEE_TYPE] DROP CONSTRAINT [DF_ORBC_NO_FEE_TYPE_DB_CREATE_TIMESTAMP] ALTER TABLE [permit].[ORBC_NO_FEE_TYPE] DROP CONSTRAINT [DF_ORBC_NO_FEE_TYPE_DB_LAST_UPDATE_USERID] ALTER TABLE [permit].[ORBC_NO_FEE_TYPE] DROP CONSTRAINT [DF_ORBC_NO_FEE_TYPE_DB_LAST_UPDATE_TIMESTAMP] - ALTER TABLE [permit].[ORBC_SPECIAL_AUTH_HIST] ALTER COLUMN NO_FEE_TYPE VARCHAR(12) NOT NULL + -- History table should not have any constraints + -- ALTER TABLE [permit].[ORBC_SPECIAL_AUTH_HIST] ALTER COLUMN NO_FEE_TYPE VARCHAR(12) NOT NULL COMMIT END TRY diff --git a/database/mssql/scripts/versions/revert/v_42_ddl_revert.sql b/database/mssql/scripts/versions/revert/v_42_ddl_revert.sql index 6159e4ada..db08639cb 100644 --- a/database/mssql/scripts/versions/revert/v_42_ddl_revert.sql +++ b/database/mssql/scripts/versions/revert/v_42_ddl_revert.sql @@ -29,7 +29,8 @@ BEGIN TRY DROP TABLE [case].[ORBC_CASE_TYPE] DROP TABLE [case].[ORBC_CASE_STATUS_TYPE] DROP SCHEMA [case] - DELETE FROM [permit].[ORBC_PERMIT_STATUS_TYPE] WHERE [PERMIT_STATUS_TYPE] ='IN_QUEUE' + -- Commenting the below line to Avoid FK constraints while running moti-reset-db.sh + -- DELETE FROM [permit].[ORBC_PERMIT_STATUS_TYPE] WHERE [PERMIT_STATUS_TYPE] ='IN_QUEUE' COMMIT END TRY From e9b68cd6fdf9d80be00f84703794467cd6b53d81 Mon Sep 17 00:00:00 2001 From: cberg-aot <93226309+cberg-aot@users.noreply.github.com> Date: Mon, 9 Dec 2024 09:15:10 -0600 Subject: [PATCH 02/25] feat: adding experimental workflow due to github limitations (#1689) --- .github/workflows/experiment.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 .github/workflows/experiment.yml diff --git a/.github/workflows/experiment.yml b/.github/workflows/experiment.yml new file mode 100644 index 000000000..6a96855a9 --- /dev/null +++ b/.github/workflows/experiment.yml @@ -0,0 +1,11 @@ +on: + workflow_run: + workflows: [PR] + types: [completed] + branches: ["fix/loadtests9"] + +jobs: + on-success: + runs-on: ubuntu-latest + steps: + - run: echo "{{github.event.workflow_run.pull_requests}}" From e08e6363980b450ed09dfd2b8b0856fe79a63a78 Mon Sep 17 00:00:00 2001 From: cberg-aot <93226309+cberg-aot@users.noreply.github.com> Date: Mon, 9 Dec 2024 09:43:33 -0600 Subject: [PATCH 03/25] feat: adding experimental workflow due to github limitations (#1690) --- .github/workflows/experiment.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/experiment.yml b/.github/workflows/experiment.yml index 6a96855a9..39275ad74 100644 --- a/.github/workflows/experiment.yml +++ b/.github/workflows/experiment.yml @@ -1,11 +1,11 @@ on: workflow_run: - workflows: [PR] - types: [completed] + workflows: [PR Open] + types: [completed, requested] branches: ["fix/loadtests9"] jobs: on-success: runs-on: ubuntu-latest steps: - - run: echo "{{github.event.workflow_run.pull_requests}}" + - run: echo "${{github.event.workflow_run.pull_requests}}" From 46c31a4db1e843879e42bf6ff6a45cb8a2f22dee Mon Sep 17 00:00:00 2001 From: cberg-aot <93226309+cberg-aot@users.noreply.github.com> Date: Mon, 9 Dec 2024 10:55:05 -0600 Subject: [PATCH 04/25] feat: adding experimental workflow due to github limitations (#1692) --- .github/workflows/experiment.yml | 2 +- .github/workflows/pr-open.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/experiment.yml b/.github/workflows/experiment.yml index 39275ad74..c6dbc5d8c 100644 --- a/.github/workflows/experiment.yml +++ b/.github/workflows/experiment.yml @@ -1,6 +1,6 @@ on: workflow_run: - workflows: [PR Open] + workflows: ['PR Opened'] types: [completed, requested] branches: ["fix/loadtests9"] diff --git a/.github/workflows/pr-open.yml b/.github/workflows/pr-open.yml index ea34523c5..a5667e2a7 100644 --- a/.github/workflows/pr-open.yml +++ b/.github/workflows/pr-open.yml @@ -1,4 +1,4 @@ -name: PR +name: PR Opened on: pull_request: From 6e9aff2de8afa90ce167e0859f8ed95d45d1494e Mon Sep 17 00:00:00 2001 From: cberg-aot <93226309+cberg-aot@users.noreply.github.com> Date: Mon, 9 Dec 2024 11:23:04 -0600 Subject: [PATCH 05/25] feat: adding experimental workflow due to github limitations (#1693) --- .github/workflows/experiment.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/experiment.yml b/.github/workflows/experiment.yml index c6dbc5d8c..2085553b9 100644 --- a/.github/workflows/experiment.yml +++ b/.github/workflows/experiment.yml @@ -8,4 +8,6 @@ jobs: on-success: runs-on: ubuntu-latest steps: - - run: echo "${{github.event.workflow_run.pull_requests}}" + - run: | + echo "${{github.event.workflow_run.pull_requests}}" + echo "${{github.event.workflow_run.pull_requests[0]}}" From 2f8ed13f8acc675d094555efb636a4b783cf9201 Mon Sep 17 00:00:00 2001 From: cberg-aot <93226309+cberg-aot@users.noreply.github.com> Date: Mon, 9 Dec 2024 11:33:45 -0600 Subject: [PATCH 06/25] feat: adding experimental workflow due to github limitations (#1694) --- .github/workflows/experiment.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/experiment.yml b/.github/workflows/experiment.yml index 2085553b9..6b21ae9e1 100644 --- a/.github/workflows/experiment.yml +++ b/.github/workflows/experiment.yml @@ -9,5 +9,6 @@ jobs: runs-on: ubuntu-latest steps: - run: | + echo "${{github.event.workflow_run}}" echo "${{github.event.workflow_run.pull_requests}}" echo "${{github.event.workflow_run.pull_requests[0]}}" From c26acd1173aff28a4bc344edaa88cea54a1c23c4 Mon Sep 17 00:00:00 2001 From: cberg-aot <93226309+cberg-aot@users.noreply.github.com> Date: Mon, 9 Dec 2024 11:53:23 -0600 Subject: [PATCH 07/25] feat: adding experimental workflow due to github limitations (#1696) --- .github/workflows/experiment.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/experiment.yml b/.github/workflows/experiment.yml index 6b21ae9e1..3bf1f5292 100644 --- a/.github/workflows/experiment.yml +++ b/.github/workflows/experiment.yml @@ -9,6 +9,6 @@ jobs: runs-on: ubuntu-latest steps: - run: | - echo "${{github.event.workflow_run}}" - echo "${{github.event.workflow_run.pull_requests}}" - echo "${{github.event.workflow_run.pull_requests[0]}}" + echo "${{toJSON(github.event.workflow_run)}}" + echo "${{toJSON(github.event.workflow_run.pull_requests)}}" + echo "${{toJSON(github.event.workflow_run.pull_requests[0])}}" From b0a968ebfc071536d35cb98a59ac2d8b249278a7 Mon Sep 17 00:00:00 2001 From: cberg-aot <93226309+cberg-aot@users.noreply.github.com> Date: Mon, 9 Dec 2024 12:18:52 -0600 Subject: [PATCH 08/25] feat: adding experimental workflow due to github limitations (#1697) --- .github/workflows/experiment.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/experiment.yml b/.github/workflows/experiment.yml index 3bf1f5292..23b964858 100644 --- a/.github/workflows/experiment.yml +++ b/.github/workflows/experiment.yml @@ -12,3 +12,4 @@ jobs: echo "${{toJSON(github.event.workflow_run)}}" echo "${{toJSON(github.event.workflow_run.pull_requests)}}" echo "${{toJSON(github.event.workflow_run.pull_requests[0])}}" + echo "${{github.event.workflow_run.pull_requests[0].number}}" From 84c0963a13be23c2617653a3a5fae919ace04815 Mon Sep 17 00:00:00 2001 From: Krishnan Subramanian <84348052+krishnan-aot@users.noreply.github.com> Date: Mon, 9 Dec 2024 10:53:35 -0800 Subject: [PATCH 09/25] Remove Policy Engine from this repo (#1700) --- policy-engine/.eslintignore | 3 - policy-engine/.eslintrc.cjs | 26 - policy-engine/.gitignore | 1 - policy-engine/.npmignore | 13 - policy-engine/.prettierrc.json | 5 - policy-engine/README.md | 50 - .../docs/Policy_Engine_High_Level.drawio | 272 - .../docs/basic-client-server-flow.md | 70 - .../docs/policy-configuration-reference.md | 420 -- .../docs/validation-result-reference.md | 89 - policy-engine/package-lock.json | 5515 ---------------- policy-engine/package.json | 77 - .../Single Trip Oversize Dimension Set.csv | 214 - policy-engine/src/_examples/_debug-helper.ts | 75 - policy-engine/src/_examples/calculate-cost.ts | 24 - .../src/_examples/get-policy-details.ts | 114 - policy-engine/src/_examples/os-dimensions.csv | 213 - .../src/_examples/output-os-as-csv.ts | 126 - .../src/_examples/update-os-from-csv.ts | 171 - .../src/_examples/validate-invalid-tros.ts | 22 - policy-engine/src/_examples/validate-stos.ts | 19 - policy-engine/src/_examples/validate-tros.ts | 19 - .../permit-app/permit-application.type.ts | 99 - .../src/_test/permit-app/test-stos.ts | 92 - .../src/_test/permit-app/valid-tros-30day.ts | 63 - .../src/_test/permit-app/valid-trow-120day.ts | 72 - .../policy-config/all-event-types.sample.ts | 155 - .../complete-in-progress.sample.ts | 5859 ----------------- .../_test/policy-config/five-types.sample.ts | 1652 ----- .../src/_test/policy-config/master.sample.ts | 826 --- .../src/_test/policy-config/mimimal.sample.ts | 39 - .../stos-vehicle-config.sample.ts | 4826 -------------- .../tros-multiple-cost-rules.sample.ts | 53 - .../tros-no-allowed-vehicles.sample.ts | 60 - .../policy-config/tros-no-params.sample.ts | 55 - .../_test/policy-config/tros-only.sample.ts | 170 - .../src/_test/unit/configuration.spec.ts | 143 - policy-engine/src/_test/unit/cost.spec.ts | 109 - .../src/_test/unit/size-dimension.spec.ts | 67 - policy-engine/src/_test/unit/utility.spec.ts | 50 - .../src/_test/unit/validation.spec.ts | 202 - .../src/enum/accessory-vehicle-type.ts | 4 - policy-engine/src/enum/facts.ts | 9 - policy-engine/src/enum/index.ts | 7 - policy-engine/src/enum/permit-app-info.ts | 16 - policy-engine/src/enum/relative-position.ts | 6 - .../src/enum/validation-result-code.ts | 7 - .../src/enum/validation-result-type.ts | 7 - policy-engine/src/enum/vehicle-types.ts | 4 - policy-engine/src/helper/facts.helper.ts | 120 - policy-engine/src/helper/lists.helper.ts | 61 - .../src/helper/rules-engine.helper.ts | 81 - policy-engine/src/index.ts | 3 - policy-engine/src/policy-engine.ts | 794 --- .../src/rule-operator/custom-operators.ts | 48 - policy-engine/src/types/commodity.ts | 20 - policy-engine/src/types/cost-rule.ts | 4 - policy-engine/src/types/dimension-modifier.ts | 10 - policy-engine/src/types/facts.ts | 10 - policy-engine/src/types/geographic-region.ts | 5 - policy-engine/src/types/identified-object.ts | 4 - policy-engine/src/types/index.ts | 37 - policy-engine/src/types/permit-type.ts | 13 - policy-engine/src/types/policy-definition.ts | 24 - policy-engine/src/types/range-matrix.ts | 11 - .../src/types/region-size-override.ts | 6 - policy-engine/src/types/self-issuable.ts | 3 - policy-engine/src/types/size-dimension.ts | 15 - policy-engine/src/types/vehicle-category.ts | 23 - policy-engine/src/types/vehicle-type.ts | 25 - policy-engine/src/types/vehicle.ts | 28 - policy-engine/src/types/weight-dimension.ts | 23 - policy-engine/src/validation-result.ts | 25 - policy-engine/src/validation-results.ts | 86 - policy-engine/tsconfig.json | 18 - 75 files changed, 23687 deletions(-) delete mode 100644 policy-engine/.eslintignore delete mode 100644 policy-engine/.eslintrc.cjs delete mode 100644 policy-engine/.gitignore delete mode 100644 policy-engine/.npmignore delete mode 100644 policy-engine/.prettierrc.json delete mode 100644 policy-engine/README.md delete mode 100644 policy-engine/docs/Policy_Engine_High_Level.drawio delete mode 100644 policy-engine/docs/basic-client-server-flow.md delete mode 100644 policy-engine/docs/policy-configuration-reference.md delete mode 100644 policy-engine/docs/validation-result-reference.md delete mode 100644 policy-engine/package-lock.json delete mode 100644 policy-engine/package.json delete mode 100644 policy-engine/src/_examples/Single Trip Oversize Dimension Set.csv delete mode 100644 policy-engine/src/_examples/_debug-helper.ts delete mode 100644 policy-engine/src/_examples/calculate-cost.ts delete mode 100644 policy-engine/src/_examples/get-policy-details.ts delete mode 100644 policy-engine/src/_examples/os-dimensions.csv delete mode 100644 policy-engine/src/_examples/output-os-as-csv.ts delete mode 100644 policy-engine/src/_examples/update-os-from-csv.ts delete mode 100644 policy-engine/src/_examples/validate-invalid-tros.ts delete mode 100644 policy-engine/src/_examples/validate-stos.ts delete mode 100644 policy-engine/src/_examples/validate-tros.ts delete mode 100644 policy-engine/src/_test/permit-app/permit-application.type.ts delete mode 100644 policy-engine/src/_test/permit-app/test-stos.ts delete mode 100644 policy-engine/src/_test/permit-app/valid-tros-30day.ts delete mode 100644 policy-engine/src/_test/permit-app/valid-trow-120day.ts delete mode 100644 policy-engine/src/_test/policy-config/all-event-types.sample.ts delete mode 100644 policy-engine/src/_test/policy-config/complete-in-progress.sample.ts delete mode 100644 policy-engine/src/_test/policy-config/five-types.sample.ts delete mode 100644 policy-engine/src/_test/policy-config/master.sample.ts delete mode 100644 policy-engine/src/_test/policy-config/mimimal.sample.ts delete mode 100644 policy-engine/src/_test/policy-config/stos-vehicle-config.sample.ts delete mode 100644 policy-engine/src/_test/policy-config/tros-multiple-cost-rules.sample.ts delete mode 100644 policy-engine/src/_test/policy-config/tros-no-allowed-vehicles.sample.ts delete mode 100644 policy-engine/src/_test/policy-config/tros-no-params.sample.ts delete mode 100644 policy-engine/src/_test/policy-config/tros-only.sample.ts delete mode 100644 policy-engine/src/_test/unit/configuration.spec.ts delete mode 100644 policy-engine/src/_test/unit/cost.spec.ts delete mode 100644 policy-engine/src/_test/unit/size-dimension.spec.ts delete mode 100644 policy-engine/src/_test/unit/utility.spec.ts delete mode 100644 policy-engine/src/_test/unit/validation.spec.ts delete mode 100644 policy-engine/src/enum/accessory-vehicle-type.ts delete mode 100644 policy-engine/src/enum/facts.ts delete mode 100644 policy-engine/src/enum/index.ts delete mode 100644 policy-engine/src/enum/permit-app-info.ts delete mode 100644 policy-engine/src/enum/relative-position.ts delete mode 100644 policy-engine/src/enum/validation-result-code.ts delete mode 100644 policy-engine/src/enum/validation-result-type.ts delete mode 100644 policy-engine/src/enum/vehicle-types.ts delete mode 100644 policy-engine/src/helper/facts.helper.ts delete mode 100644 policy-engine/src/helper/lists.helper.ts delete mode 100644 policy-engine/src/helper/rules-engine.helper.ts delete mode 100644 policy-engine/src/index.ts delete mode 100644 policy-engine/src/policy-engine.ts delete mode 100644 policy-engine/src/rule-operator/custom-operators.ts delete mode 100644 policy-engine/src/types/commodity.ts delete mode 100644 policy-engine/src/types/cost-rule.ts delete mode 100644 policy-engine/src/types/dimension-modifier.ts delete mode 100644 policy-engine/src/types/facts.ts delete mode 100644 policy-engine/src/types/geographic-region.ts delete mode 100644 policy-engine/src/types/identified-object.ts delete mode 100644 policy-engine/src/types/index.ts delete mode 100644 policy-engine/src/types/permit-type.ts delete mode 100644 policy-engine/src/types/policy-definition.ts delete mode 100644 policy-engine/src/types/range-matrix.ts delete mode 100644 policy-engine/src/types/region-size-override.ts delete mode 100644 policy-engine/src/types/self-issuable.ts delete mode 100644 policy-engine/src/types/size-dimension.ts delete mode 100644 policy-engine/src/types/vehicle-category.ts delete mode 100644 policy-engine/src/types/vehicle-type.ts delete mode 100644 policy-engine/src/types/vehicle.ts delete mode 100644 policy-engine/src/types/weight-dimension.ts delete mode 100644 policy-engine/src/validation-result.ts delete mode 100644 policy-engine/src/validation-results.ts delete mode 100644 policy-engine/tsconfig.json diff --git a/policy-engine/.eslintignore b/policy-engine/.eslintignore deleted file mode 100644 index 8ad4d156d..000000000 --- a/policy-engine/.eslintignore +++ /dev/null @@ -1,3 +0,0 @@ -node_modules/ -dist/ -.eslintrc.cjs diff --git a/policy-engine/.eslintrc.cjs b/policy-engine/.eslintrc.cjs deleted file mode 100644 index 6bc11f7f2..000000000 --- a/policy-engine/.eslintrc.cjs +++ /dev/null @@ -1,26 +0,0 @@ -module.exports = { - parser: '@typescript-eslint/parser', - parserOptions: { - project: ['./tsconfig.json'], - tsconfigRootDir : __dirname, - sourceType: 'module', - }, - root: true, - env: { - node: true, - jest: true, - }, - plugins: ['@typescript-eslint'], - extends: [ - "eslint:recommended", - "plugin:@typescript-eslint/recommended", - "prettier" - ], - ignorePatterns: ['.eslintrc.cjs'], - rules: { - // '@typescript-eslint/interface-name-prefix': 'off', - // '@typescript-eslint/explicit-function-return-type': 'off', - // '@typescript-eslint/explicit-module-boundary-types': 'off', - '@typescript-eslint/no-explicit-any': 'off', - }, -}; \ No newline at end of file diff --git a/policy-engine/.gitignore b/policy-engine/.gitignore deleted file mode 100644 index 3a264e904..000000000 --- a/policy-engine/.gitignore +++ /dev/null @@ -1 +0,0 @@ -**/*.tgz \ No newline at end of file diff --git a/policy-engine/.npmignore b/policy-engine/.npmignore deleted file mode 100644 index 246d8794d..000000000 --- a/policy-engine/.npmignore +++ /dev/null @@ -1,13 +0,0 @@ -docs/ -src/ -coverage/ -**/*.tgz -.eslintignore -.eslintrc.cjs -dist/_test/ -dist/_examples/ -dist/tsconfig.tsbuildinfo -tsconfig.tsbuildinfo -.prettierrc.json -package-lock.json -tsconfig.json \ No newline at end of file diff --git a/policy-engine/.prettierrc.json b/policy-engine/.prettierrc.json deleted file mode 100644 index d641d6b91..000000000 --- a/policy-engine/.prettierrc.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "singleQuote": true, - "trailingComma": "all", - "endOfLine":"auto" -} \ No newline at end of file diff --git a/policy-engine/README.md b/policy-engine/README.md deleted file mode 100644 index 952caa60b..000000000 --- a/policy-engine/README.md +++ /dev/null @@ -1,50 +0,0 @@ -A JSON-based rules engine to validate onRouteBC permit applications against commercial vehicle policy. - -## Synopsis -```orbc-policy-engine``` is a library designed to compare a commercial vehicle permit application against policy expressed in JSON format, and return a list of policy violations as well as other informational policy messages related to the permit. - -```orbc-policy-engine``` makes use of https://github.com/CacheControl/json-rules-engine for rules engine functionality. Complex rules are modeled by extending the core ```json-rules-engine``` operators and other capabilities. - -## Usage -```js -import Policy from 'orbc-policy-engine'; - -// Instantiate a new Policy object -// policyDefinition is a JSON object of type PolicyDefinition -const policy: Policy = new Policy(policyDefinition); - -// Get list of all available permit types (ID and name) -const permitTypes: Map = policy.getPermitTypes(); - -// Get list of all available commodities (ID and name) -const commodities: Map = policy.getCommodities(); - -// Get list of all available power unit types -const powerUnits: Map = policy.getPowerUnitTypes(); - -// Get list of all available trailer types -const trailers: Map = policy.getTrailerTypes(); - -// Get list of all valid commodities for a given permit type -const commodities: Map = policy.getCommodities(permitTypeId); - -// Get list of all vehicle types valid to be added to a configuration, -// by permit type and commodity. Requires supplying the vehicles already -// added to the configuration, or empty array if starting from scratch -const allowableVehicles: Map = policy.getNextPermittableVehicles( - permitTypeId, - commodityId, - currentConfiguration); - -// Validate a permit application against policy -// permitApplication is a JSON object of type PermitApplication -// A PermitApplication is the standard permitData object wrapped -// in an object with a permitType key. For example: -// { -// permitType: 'TROS', -// permitData: { ... } -// } -// Note this is an async call due to the reliance on json-rules-engine -const results: ValidationResults = await policy.validate(permitApplication); -``` - diff --git a/policy-engine/docs/Policy_Engine_High_Level.drawio b/policy-engine/docs/Policy_Engine_High_Level.drawio deleted file mode 100644 index 9faa50cfb..000000000 --- a/policy-engine/docs/Policy_Engine_High_Level.drawio +++ /dev/null @@ -1,272 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/policy-engine/docs/basic-client-server-flow.md b/policy-engine/docs/basic-client-server-flow.md deleted file mode 100644 index 53be26732..000000000 --- a/policy-engine/docs/basic-client-server-flow.md +++ /dev/null @@ -1,70 +0,0 @@ -# Basic client server flow for policy engine - -## Principles -The policy engine is implemented as a javascript module that can be used server-side with Nodejs, or in the browser. - -When the policy engine is initialized, a JSON file describing policy rules is supplied. When a method of the policy engine is called, it generates its response based on the policy JSON that it was initialized with. - -For example, a policy JSON will include a list of all valid permit types, as well as a list of all valid vehicle types. When the getPermitTypes or getVehicleTypes methods are called, the response will be based on just those permit / vehicle types defined in the JSON. Notably, there are no 'built-in' permit or vehicle types - all are defined exclusively in the JSON. This provides maximum flexibility. - -The most current policy JSON will describe Commercial Vehicle policy as of right now. This current policy JSON will be stored in the onRouteBC SQL Server database in a column in a table. When changes are made to policy, a new row is added to the table and the old policy JSON is end-dated. There is only ever one current policy JSON at any one time. - -It will be possible to retrieve any previous version of policy because all are kept in the database. It is also possible to initialize the policy engine with an arbitrary policy JSON for development and testing purposes. The policy JSON need not be retrieved from the database, the policy engine doesn't care where it comes from. - -Initializing the policy engine with a policy JSON that is __not__ the current version is useful in the scenario where new policy rules are being edited and need to be tested thoroughly before going live. In this scenario, the new policy JSON would be in the database in 'draft' state, and the onRouteBC application launched in a test state that will load the specific draft policy JSON instead of current live policy. - -The policy JSON in the onRouteBC database will be accessible only through a policy API. This API should be used by the backend as well as the frontend to ensure consistency - make sure the entire application is using the same policy. - -Retrieving the current policy JSON could be achieved with a GET request to, for example, /policy/current. - -Retrieving a non-current (draft or expired) policy JSON could be achieved with a GET request to the endpoint with ID, for example, /policy/10042 (where 10042 is the ID of the draft policy JSON in the database). - -The policy engine javascript library will provide methods for various policy-related tasks in onRouteBC. Examples are getting the list of all valid permit types, getting the list of valid trailer types, getting the list of rules applicable for a specific permit type, and a validate method to check a supplied permit application against policy for any violations or warnings. - -Some of these methods are exposed through the policy engine API. For example, a /policy/current/validate method where a policy application JSON is POSTed to it could return an identical result to executing this in the browser in javascript. The policy engine API will simply delegate the call to the policy engine library running in Nodejs in the backend, and package and return the response unmodified. - -In this way, a server-side validation of a permit application can be mandatory before a permit is issued, but intermediate validation steps (such as when the client is filling out the permit application form) can be executed quickly in-browser instead of calling back to the server constantly. - -### Payload Size -The size of the policy JSON will be reduced by relying on default values for weight and size dimensions, the largest part of policy configuration. When transmitting and storing the policy JSON, the 'dehydrated' and unformatted JSON will be used. When the policy engine is initialized with a policy JSON it will rehydrate it with the weight and size dimension defaults. An 'export' method will dehydrate the policy JSON and return the smaller JSON result. - -Rehydration and dehydration on initialization and export simplifies the admin management of policy, since values can be updated directly in the policy engine JSON without having to worry about default values. - -```mermaid -sequenceDiagram - participant browser as Client Browser - participant orbc as onRouteBC - participant policy as Policy Engine API - participant db as SQL Server - browser->>orbc: Log in - orbc->>policy: Request current
policy - note over orbc,policy: e.g. GET /policy/current/ - policy->>db: Get current policy JSON - note over policy,db: TBD, likely will query for most
current active policy JSON based
on columns in policy table - db-->>policy: Return current policy JSON - policy-->>orbc: Return current policy JSON - orbc->>browser: Return page, which includes
policy JSON and client-
side policy engine JS library - browser->>browser: Initialize policy engine
with current policy JSON - browser->>orbc: Request to start permit app - orbc-->>browser: Return application form - browser->>browser: Populate permit type
dropdown from policy
engine - loop As user fills in form - browser->>browser: Validate permit
in browser - note over browser, orbc: Final validation occurs when user
submits completed application. - end - browser->>orbc: Submit application - note over browser,orbc: Include complete permit JSON - orbc->>policy: Validate permit JSON - note over orbc,policy: Include complete permit JSON - policy->>db: Get current policy JSON - db-->>policy: Return current policy JSON - policy->>policy: Initialize policy engine
with current policy JSON - policy->>policy: Validate permit
server-side - note over orbc,policy: Server-side validation should return
identical results to client-side. - policy-->>orbc: Return validation results - alt Permit is valid - note over browser,db: Proceed as normal with sending client to payment page / cart - else Permit is not valid - orbc-->>browser: Return error message - end -``` \ No newline at end of file diff --git a/policy-engine/docs/policy-configuration-reference.md b/policy-engine/docs/policy-configuration-reference.md deleted file mode 100644 index 6b166b782..000000000 --- a/policy-engine/docs/policy-configuration-reference.md +++ /dev/null @@ -1,420 +0,0 @@ -# Policy Configuration Reference - -## Configuration File Structure -Policy rules are defined in the policy configuration JSON object. Rules include checks for validating permit applications against policy, as well as definitions of all permit types, commodity types, vehicle types, vehicle combinations, and permittable dimensions (weight, size, allowable distances, etc.) - -The JSON configuration structure is described by TypeScript types, starting with types/PolicyDefinition. The reference below goes into more detail about what each of the properties is intended to express. - -### Current configuration properties in use -The below properties (link for more details) are used by the current version of the policy engine. - -* [geographicRegions](#geographicRegions) -* [permitTypes](#permitTypes) -* [commonRules](#commonRules) -* [vehicleTypes](#vehicleTypes) -* [commodities](#commodities) - -### Configuration properties for future use -The below properties (link for more details) are for __potential__ future use of the policy engine, and are listed in this documentation for completeness but should not be relied on yet. - -* [version](#version) -* [globalWeightDefaults](#globalWeightDefaults) -* [globalSizeDefaults](#globalSizeDefaults) -* [vehicleCategories](#vehicleCategories) -* [rangeMatrices](#rangeMatrices) - -## Current Configuration Properties - -### geographicRegions -The geographicRegions property defines all of the distinct regions in the province which may have unique policy rules. For example, a vehicle travelling through the Peace region may have different permittable size dimensions than a vehcicle travelling through Lower Mainland. - -Geographic regions are __not__ used when validating permits which do not require routing (e.g. term oversize permits). - -The spatial geometry of the region itself is not stored in the policy configuration; rather, the regions travelled are returned along with the generated route from the external route planner API. The route planner maintains the link between roads and geographic regions which the policy configuration relies on. - -When applying for a permit which requires a route (such as a single trip oversize) the permit applicant will enter their start and destination locations. The external route planner will generate a route appropriate for the vehicle, and will return that route along with the list of all geographic regions the route crosses. - -The structure of the geographicRegions is as follows: - -```js - geographicRegions: [ - { - id: 'LMN', - name: 'Lower Mainland', - }, - { - id: 'KTN', - name: 'Kootenay', - }, - { - id: 'PCE', - name: 'Peace', - }, - ] -``` -Another 'pseudo' geographic region exists which is every area of the province __not__ covered by one of the other named regions. This 'pseudo' region is typically called 'BC Default' but is not explicitly configured as its own region, though it can have its own set of permittable sizes and weights. See the [commodities](#commodities) section below for details on configuring dimensions for BC Default. - -> [!NOTE] -> The IDs assigned to the geographic regions are arbitrary, they need only be unique. When onRouteBC integrates with the route planner, the geographic region IDs may need to be modified to align with the IDs as returned by the route planner API. Alternately, a separate `key` property may be added for this purpose in future. - -### permitTypes -The permitTypes property defines the rules and properties of all the known permit types. The basic structure is: - -```js - permitTypes: [ - { - id: 'TROS', - name: 'Term Oversize', - routingRequired: false, - weightDimensionRequired: false, - sizeDimensionRequired: false, - commodityRequired: false, - allowedVehicles: [ - 'EXPANDO', - 'FEBGHSE', - 'TRKTRAC', - ], - rules: [ - // ...see rules section... - ], - costRules: [ - //...see cost rules section... - ], - } -``` -Properties of the permit type define whether it requires a driving route, weights, size, and commodity. The term oversize example above does not require any of these. A complex permit such as single trip oversize overweight would require all four. - -The `allowedVehicles` property is required for permit types that are for a single vehicle as opposed to for a vehicle combination (truck and trailers). For permits requiring a vehicle combination such as single trip oversize, the `allowedVehicles` property is not used, instead using configuration inside the commodity property, described in its own section below. - -The `rules` property defines policy rules for the permit type that will be checked during permit validation. There will be many rules for a single permit type, expressing business policy such as 'you may not apply for a permit with a start date in the past', 'the vehicle type being permitted must be one of the allowed vehicles for the permit type', 'a vehicle identification number must be 6 alphanumeric characters', and others. Rules are expressed using the syntax defined by [JSON Rules Engine](https://github.com/cachecontrol/json-rules-engine). See the separate section on [rules](#rules) in this document. - -`costRules` are a special type of rule that define how much a permit costs based on the permit itself. Costs can take into account any property of the permit application such as duration, travel distance, start date, vehicle type, and others. See the separate section on [costRules](#costRules) in this document to understand how they differ from standard [JSON Rules Engine](https://github.com/cachecontrol/json-rules-engine) rules. - -### commonRules -`commonRules` are a collection of standard rules which apply to all permit types. Certain rules such as the requirement to supply a company name for the permit and the requirement to supply a license plate for the permitted vehicle can be configured in this central location. All rules in the `commonRules` array will be validated against any permit in the validation step. - -The basic structure is straightforward, and uses the same rule definition format as the rules defined as part of the permit type. -```js - commonRules: [ - // ...see rules section... - ] -``` - -### vehicleTypes -The `vehicleTypes` property defines all of the known vehicle types, both power units and trailers. The basic structure is: - -```js - vehicleTypes: { - powerUnitTypes: [ - { - id: 'BUSCRUM', - name: 'Buses/Crummies', - category: 'powerunit', - }, - { - id: 'BUSTRLR', - name: 'Inter-City Bus (Pulling Pony Trailer)', - category: 'powerunit', - } - ], - trailerTypes: [ - { - id: 'BOOSTER', - name: 'Boosters', - category: 'accessory', - }, - { - id: 'DBTRBTR', - name: 'Tandem/Tridem Drive B-Train (Super B-Train)', - category: 'trailer', - }, - ], - ] -``` -The example above defines 2 types of power unit and 2 types of trailer that the system knows about. The full configuration will contain all known vehicle types and will be much larger. - -The ID for a vehicle type must be unique in the configuration; that is, a power unit and trailer may not share the same ID. - -> [!NOTE] -> Power unit and trailer types both have a `category` property which is not currently used by the policy engine but will be used for overweight permits when they are developed (different weight allowances when a booster follows a specific category of trailer, for example). - -### commodities -The `commodities` property defines all of the known permittable commodities. In addition to the ID and common name of the commodity, this property defines the allowable vehicle combinations that are allowed to transport the commodity, along with the allowable size and weight of the vehicles. Permittable sizes and weights are configured under `commodities` instead of under `vehicleTypes` because the permittable sizes and weights are dependent on the commodity being carried. - -Here is an example of a single commodity configured in a policy configuration JSON: -```js - commodities: [ - { - id: 'IMCONTN', - name: 'Intermodal Containers', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'STACTRN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 2.9, - l: 27.5, - }, - ], - }, - { - type: 'STBTRAN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - h: 4.4, - l: 27.5, - }, - ], - }, - { - type: 'HIBOFLT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - h: 4.4, - regions: [ - { - region: 'PCE', - h: 5.33, - l: 36, - }, - ], - }, - ], - }, - ], - }, - { - type: 'REGTRCK', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - h: 4.4, - }, - ], - }, - ], - }, - ], - }, - }, - ] -``` -> [!NOTE] -> The values above do not reflect actual policy, they are for demonstration purposes only. - -#### Size Dimension Set -Size dimensions for a given commodity and vehicle combination are configured in the `size` property of the commodity. - -In the example above, the commodity 'Intermodal Containers' has permittable size dimensions configured. There are two size permittable power unit types for this commodity (TRKTRAC and REGTRCK), with TRKTRAC permitted to pull one of 3 different trailer types. REGTRCK is permitted only to pull the trailer 'NONEXXX', which is a special ID indicating no trailer is being pulled. TODO: link to documentation about 'pseudo' vehicle types and commodity types. - -> [!NOTE] -> Vehicles in the size dimension set are referenced by type. The type must match an ID configured in the `vehicleTypes` property of the policy configuration as a relational data key. - -Size dimensions are configured exclusively on trailers, never on power units. For power units that may be permitted with or without trailers, the special pseudo trailer 'NONEXXX' is used as the configuration point for the power unit on its own. - -There are 5 dimensions that can be configured on a trailer: -* height (defined by `h`) -* length (defined by `l`) -* width (defined by `w`) -* front projection (defined by `fp`) -* rear projection (defined by `rp`) - -When any of these is configured directly on the `sizeDimensions` property it indicates a permittable size for the 'BC Default' geographic area. STACTRN in the example above has permittable maximum sizes for 4 dimensions in BC Default. Configuring separate sizes for other geographic regions is handled with a `regions` property of `sizeDimensions`. HIBOFLT in the example above configures a height and length specific to the PCE geographic region. As with vehicles, the `region` property must match a configured `geographicRegion` ID in the policy configuration file (it is a relational data key). - -If any dimensions are __not__ configured for a trailer, this indicates that the maximum dimension is the __legal__ dimension and extra size is not permitted. - -> [!NOTE] -> The reason `sizeDimensions` is an array instead of a single object is for future flexibility. Size dimensions generally do not need multiple size dimensions for a given trailer; this is for weight dimensions primarily. However, it is possible that in the future a trailer may be permitted extra length if it is following a tridem jeep or has a trailing tridem booster. In this case the configuration will be able to use multiple size dimensions for one trailer. For now however, it can be assumed there will only be a single size dimension in the array. - -##### Jeeps and Boosters -Whether a jeep or a booster is permitted in a vehicle combination for a commodity is configured with the `allowJeep` and `allowBooster` properties. The presence of either a jeep or booster does not change the maximum permittable sizes that have been configured. - -##### Self Issue -Certain vehicle combinations hauling certain commodities may not be 'auto-approved' by the system; they require review by staff. These combinations which are not permitted for self-issuance are indicated with a `selfIssue` value of `false`. - -#### Weight Dimension Set -> [!NOTE] -> Weight dimensions are not configured in the example above because overweight permits have not yet been implemented in the policy engine. - -## rules -Policy rules are defined in `json-rules-engine` format and are validated against permit applications according to the permit type. Rules may be configured as common to all permit types, or specific to permit types. Common policy rules are defined inside the top-level [commonRules](#commonRules) property, while type-specific policy rules are defined inside the `rules` property of the permit type itself, in the top-level [permitTypes](#permitTypes) property. - -The structure of a rule is identical whether configured as common, or permit type-specific. - -Example common and permit type-specific rules are as follows: -```js - commonRules: [ - { - conditions: { - not: { - fact: 'permitData', - operator: 'stringMinimumLength', - value: 1, - path: '$.companyName', - }, - }, - event: { - type: 'violation', - params: { - message: 'Company is required', - code: 'field-validation-error', - fieldReference: 'permitData.companyName', - }, - }, - }, - ], - permitTypes: [ - { - id: 'TROS', - name: 'Term Oversize', - routingRequired: false, - weightDimensionRequired: false, - sizeDimensionRequired: false, - commodityRequired: false, - allowedVehicles: [ - 'STINGER', - 'TOWVEHC', - 'TRKTRAC', - ], - rules: [ - { - conditions: { - all: [ - { - not: { - fact: 'permitData', - operator: 'in', - value: [30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330], - path: '$.permitDuration', - }, - }, - { - not: { - fact: 'permitData', - operator: 'equal', - value: { - fact: 'daysInPermitYear', - }, - path: '$.permitDuration', - }, - }, - ], - }, - event: { - type: 'violation', - params: { - message: 'Duration must be in 30 day increments or a full year', - code: 'field-validation-error', - fieldReference: 'permitData.permitDuration', - }, - }, - }, - ], - } - ] -``` -A rule consists of a condition (which may itself be multiple separate conditions with a logical operator) and an event that is triggered if the condition evaluates to `true`. Currently in onroute, a true condition always indicates a policy __violation__. In the future, true conditions may indicate other informational messages returned to the calling application, such as a requirement that a supplemental permit is required. See [event](#event) below for more details. - -Refer to the [JSON Rules Engine](https://github.com/cachecontrol/json-rules-engine) documentation about the general structure of rule conditions and events. onRoute-specific notes follow, below. - -### conditions -Facts in conditions are based on the structure of the permit application that will be validated. A permit application will have the following general structure: -```js -{ - permitType: 'TROS', - permitData: { - // ...as saved in the onroute database... - } -} -``` -Due to the structure above, the `fact` property will usually be `permitData` when validating user input from the permit application. The `path` defines what property of `permitData` is being validated. For example, the common rule in the example above is validating `permitData.companyName`. - -#### operators -Besides the default operators from `json-rules-engine`, `onroute-policy-engine` defines additional custom operators: - -* `stringMinimumLength` - returns true if the fact is a string type and has a minimum trimmed length greater than or equal to the supplied value -* `dateLessThan` - returns true if the fact is a date and is earlier than the supplied date value -* `regex` - returns true if the fact matches the supplied regular expression - -#### custom facts -Besides facts that are from the permit application JSON, additional custom facts are available within conditions: - -* `allowedVehicles` - returns an array of vehicle IDs (strings) that are valid for the permit type - * Note this is valid only for permit types that do not require a full vehicle configuration -* `configurationIsValid` - returns true if the vehicle configuration in the permit application is valid as per policy - * Note this is valid only for permit types that require a full vehicle configuration -* `daysInPermitYear` - returns the number of days in the year starting with the permit start date, either 365 or 366 -* `validationDate` - returns the current date at the time of permit validation - -### event -Example: -```js - event: { - type: 'violation', - params: { - message: 'Duration must be in 30 day increments or a full year', - code: 'field-validation-error', - fieldReference: 'permitData.permitDuration', - }, - }, -``` - -Currently in onroute, events define policy violations. For a violation event, the `type` property is always `violation`. The event `params` provide more context about the violation itself: - -* `message` - description of the violation which can be presented to permit applicants -* `code` - type of violation which may be used by the calling application, currently limited to just `field-validation-error` -* `fieldReference` - the field in the permit application which caused the violation, usually but not always the same as the condition fact - -All of these params are technically optional, but omitting them may impact how the calling application (e.g. onroute frontend) can respond to the violation. For example, if the `message` is omitted the frontend can only present a generic error message with no additional context which may not be a good user experience. - -Additional event types which are planned, but not currently used in onroute include: - -* `requirement` -* `warning` -* `information` - -## costRules -The cost of a permit is calculated using a modified type of rule based on the [JSON Rules Engine](https://github.com/cachecontrol/json-rules-engine) rule type. The structure looks like: - -```js - costRules: [ - { - fact: 'costPerMonth', - params: { - cost: 30, - }, - }, - ], -``` - -`costRules` are defined as part of the `permitType` definition. Multiple `costRules` may apply to a specific permit type. For example, a permit may have a fixed cost plus a cost per kilometre driven. In such cases, multiple cost rules are defined in the array. - -> [!NOTE] -> `costRules` are defined as facts alone, with no operator or event. Internally during validation, the `onroute-policy-engine` creates a `cost` event with the calculated cost supplied as a `cost` property of the event params. - -There are currently two cost fact types: - -* `fixedCost` - returns the value of the `cost` param without modification -* `costPerMonth` - returns the product of the number of months duration of the permit and the value of the `cost` param - -As more complex cost rules are required, more cost fact types will be implemented in the `onroute-policy-engine` to accomodate these. \ No newline at end of file diff --git a/policy-engine/docs/validation-result-reference.md b/policy-engine/docs/validation-result-reference.md deleted file mode 100644 index 005dfcfaa..000000000 --- a/policy-engine/docs/validation-result-reference.md +++ /dev/null @@ -1,89 +0,0 @@ -# Policy Validation Result Reference - -## Validating a Permit Application -Permits are validated with the policy engine by supplying the permit JSON to the `validate` method of an instantiated policy object. A policy object is instantiated by passing a policy configuration JSON object to the `Policy` constructor. Refer to the Policy Configuration Reference documentation for information about the structure of the policy configuration JSON object. - -The `validate` method returns an object of type `ValidationResults` which has 5 properties: `violations`, `requirements`, `warnings`, `information`, and `cost`. Each of these properties is an array of `ValidationResult` objects. - -Currently in onroute only the `violations` and `cost` properties are used. In the future, `requirements`, `warnings`, and `information` will be added. For now those properties may be ignored. - -### Valid Permit Applications -A valid permit application is one whose `ValidationResults` has an empty `violations` array. That is, no policy violations were found in the permit application. Here is an example: - -```js -{ - "violations": [], - "requirements": [], - "warnings": [], - "information": [], - "cost": [ - { - "type": "cost", - "code": "cost-value", - "message": "Calculated permit cost", - "cost": 30 - } - ] -} -``` - -## Violations -If at least one `ValidationResult` is present in the `violations` property of the result, the permit application has failed the policy check. - -The `ValidationResult` will typically contain information about what the nature of the violation was. Here is an example: - -```js - "violations": [ - { - "type": "violation", - "code": "field-validation-error", - "message": "Duration must be in 30 day increments or a full year", - "fieldReference": "permitData.permitDuration" - } - ], -``` -In the example above, the permit duration in the permit application JSON was 31 days, which is invalid according to the rules specified for the permit type (TROS in this case). - -All of the properties of the violation are configured directly in the policy configuration JSON file, and are taken verbatim from there. To change the message presented for this violation, simply update the policy configuration JSON. - -### type -Violation `ValidationResult` objects will always have a type of `violation`. - -### code -The `code` property indicates the nature of the violation, which may be used by the calling application. For example, a `field-validation-error` may cause the frontend form to highlight the form element and present the message underneath in red text. - -### message -The `message` property is a friendly description of the cause of the violation. - -### fieldReference -The `fieldReference` property indicates the specific field which caused the violation, and can be used in conjunction with `code` to provide context to a user in the frontend. - -## Cost -To calculate the cost of a permit, validate it using the policy engine's `validate` method. The validation result will include a `cost` property specifying the cost of the permit. - -Any permit with a cost greater than zero will have at least one `ValidationResult` in the `cost` array of the `ValidationResults` object. Here is an example of a valid one year term oversize permit: - -```js -{ - "violations": [], - "requirements": [], - "warnings": [], - "information": [], - "cost": [ - { - "type": "cost", - "code": "cost-value", - "message": "Calculated permit cost", - "cost": 360 - } - ] -} -``` -The `type` will always be `cost`, `code` will always be `cost-value`, and `message` will always be `Calculated permit cost`. These may be ignored. - -The `cost` property indicates the permit cost in Canadian dollars, based on the details in the permit application itself. - -It is possible that there are multiple `cost` results. In this case, it is up to the calling application to add all of the `cost` properties together for a final permit cost. - -> [!NOTE] -> The reason there may be multiple `cost` results is that some permit types have both a fixed cost (minimum permit cost) as well as a cost based on kilometres driven. Since these are calculated independently they are added separately to the `cost` array. Typically there is no need for the onroute application to break down the permit cost into its constituent parts so only the sum is used. \ No newline at end of file diff --git a/policy-engine/package-lock.json b/policy-engine/package-lock.json deleted file mode 100644 index a3b850fa3..000000000 --- a/policy-engine/package-lock.json +++ /dev/null @@ -1,5515 +0,0 @@ -{ - "name": "onroute-policy-engine", - "version": "0.2.0", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "onroute-policy-engine", - "version": "0.2.0", - "license": "Apache-2.0", - "dependencies": { - "dayjs": "^1.11.10", - "json-rules-engine": "^6.5.0" - }, - "devDependencies": { - "@iwsio/json-csv-core": "^1.1.7", - "@types/jest": "^29.5.12", - "@typescript-eslint/eslint-plugin": "^7.5.0", - "csv": "^6.3.10", - "eslint": "^8.57.0", - "eslint-config-prettier": "^9.1.0", - "jest": "^29.7.0", - "prettier": "^3.2.5", - "rimraf": "^5.0.7", - "ts-jest": "^29.1.2", - "typescript": "^5.4.3" - } - }, - "node_modules/@aashutoshrathi/word-wrap": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz", - "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@ampproject/remapping": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", - "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", - "dev": true, - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.24" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/code-frame": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz", - "integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.24.2", - "picocolors": "^1.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/compat-data": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.1.tgz", - "integrity": "sha512-Pc65opHDliVpRHuKfzI+gSA4zcgr65O4cl64fFJIWEEh8JoHIHh0Oez1Eo8Arz8zq/JhgKodQaxEwUPRtZylVA==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core": { - "version": "7.24.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.3.tgz", - "integrity": "sha512-5FcvN1JHw2sHJChotgx8Ek0lyuh4kCKelgMTTqhYJJtloNvUfpAFMeNQUtdlIaktwrSV9LtCdqwk48wL2wBacQ==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.24.2", - "@babel/generator": "^7.24.1", - "@babel/helper-compilation-targets": "^7.23.6", - "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.24.1", - "@babel/parser": "^7.24.1", - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.1", - "@babel/types": "^7.24.0", - "convert-source-map": "^2.0.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.3", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@babel/generator": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.1.tgz", - "integrity": "sha512-DfCRfZsBcrPEHUfuBMgbJ1Ut01Y/itOs+hY2nFLgqsqXd52/iSiVq5TITtUasIUgm+IIKdY2/1I7auiQOEeC9A==", - "dev": true, - "dependencies": { - "@babel/types": "^7.24.0", - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-compilation-targets": { - "version": "7.23.6", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", - "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", - "dev": true, - "dependencies": { - "@babel/compat-data": "^7.23.5", - "@babel/helper-validator-option": "^7.23.5", - "browserslist": "^4.22.2", - "lru-cache": "^5.1.1", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", - "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-function-name": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", - "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", - "dev": true, - "dependencies": { - "@babel/template": "^7.22.15", - "@babel/types": "^7.23.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-hoist-variables": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", - "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-imports": { - "version": "7.24.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz", - "integrity": "sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==", - "dev": true, - "dependencies": { - "@babel/types": "^7.24.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-module-transforms": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", - "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-module-imports": "^7.22.15", - "@babel/helper-simple-access": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/helper-validator-identifier": "^7.22.20" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.0.tgz", - "integrity": "sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-simple-access": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", - "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-split-export-declaration": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", - "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", - "dev": true, - "dependencies": { - "@babel/types": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-string-parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz", - "integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", - "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helper-validator-option": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", - "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/helpers": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.1.tgz", - "integrity": "sha512-BpU09QqEe6ZCHuIHFphEFgvNSrubve1FtyMton26ekZ85gRGi6LrTF7zArARp2YvyFxloeiRmtSCq5sjh1WqIg==", - "dev": true, - "dependencies": { - "@babel/template": "^7.24.0", - "@babel/traverse": "^7.24.1", - "@babel/types": "^7.24.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight": { - "version": "7.24.2", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz", - "integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==", - "dev": true, - "dependencies": { - "@babel/helper-validator-identifier": "^7.22.20", - "chalk": "^2.4.2", - "js-tokens": "^4.0.0", - "picocolors": "^1.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/highlight/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/@babel/highlight/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "dev": true - }, - "node_modules/@babel/highlight/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/@babel/highlight/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/highlight/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@babel/parser": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.1.tgz", - "integrity": "sha512-Zo9c7N3xdOIQrNip7Lc9wvRPzlRtovHVE4lkz8WEDr7uYh/GMQhSiIgFxGIArRHYdJE5kxtZjAf8rT0xhdLCzg==", - "dev": true, - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-bigint": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", - "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.1.tgz", - "integrity": "sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.24.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-typescript": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.1.tgz", - "integrity": "sha512-Yhnmvy5HZEnHUty6i++gcfH1/l68AHnItFHnaCv6hn9dNh0hQvvQJsxpi4BMBFN5DLeHBuucT/0DgzXif/OyRw==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.24.0" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/template": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz", - "integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.23.5", - "@babel/parser": "^7.24.0", - "@babel/types": "^7.24.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse": { - "version": "7.24.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz", - "integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.24.1", - "@babel/generator": "^7.24.1", - "@babel/helper-environment-visitor": "^7.22.20", - "@babel/helper-function-name": "^7.23.0", - "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.24.1", - "@babel/types": "^7.24.0", - "debug": "^4.3.1", - "globals": "^11.1.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/types": { - "version": "7.24.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz", - "integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==", - "dev": true, - "dependencies": { - "@babel/helper-string-parser": "^7.23.4", - "@babel/helper-validator-identifier": "^7.22.20", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true - }, - "node_modules/@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "@jridgewell/trace-mapping": "0.3.9" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.0.3", - "@jridgewell/sourcemap-codec": "^1.4.10" - } - }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", - "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", - "dev": true, - "dependencies": { - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" - } - }, - "node_modules/@eslint-community/regexpp": { - "version": "4.10.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", - "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", - "dev": true, - "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" - } - }, - "node_modules/@eslint/eslintrc": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", - "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", - "dev": true, - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@eslint/eslintrc/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@eslint/eslintrc/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/@eslint/eslintrc/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@eslint/js": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz", - "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - } - }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.14", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz", - "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==", - "dev": true, - "dependencies": { - "@humanwhocodes/object-schema": "^2.0.2", - "debug": "^4.3.1", - "minimatch": "^3.0.5" - }, - "engines": { - "node": ">=10.10.0" - } - }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true, - "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" - } - }, - "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz", - "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==", - "dev": true - }, - "node_modules/@isaacs/cliui": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", - "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", - "dev": true, - "dependencies": { - "string-width": "^5.1.2", - "string-width-cjs": "npm:string-width@^4.2.0", - "strip-ansi": "^7.0.1", - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", - "wrap-ansi": "^8.1.0", - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@isaacs/cliui/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/@isaacs/cliui/node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@isaacs/cliui/node_modules/emoji-regex": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - "dev": true - }, - "node_modules/@isaacs/cliui/node_modules/string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "dev": true, - "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@isaacs/cliui/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", - "dev": true, - "dependencies": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@istanbuljs/schema": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@iwsio/json-csv-core": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/@iwsio/json-csv-core/-/json-csv-core-1.1.7.tgz", - "integrity": "sha512-vI3Iy26ffmKJHUTSfwJdv4hEFI8vCemMQLDi0iMQBCYmyhsa2m0Fn8dSLy+FlyLnVqZRqyM8/yauwSXGFdnohg==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/@jest/console": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", - "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/core": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", - "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", - "dev": true, - "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", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-changed-files": "^29.7.0", - "jest-config": "^29.7.0", - "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.4", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "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 - } - } - }, - "node_modules/@jest/environment": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", - "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", - "dev": true, - "dependencies": { - "@jest/fake-timers": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-mock": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/expect": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", - "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", - "dev": true, - "dependencies": { - "expect": "^29.7.0", - "jest-snapshot": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/expect-utils": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", - "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", - "dev": true, - "dependencies": { - "jest-get-type": "^29.6.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/fake-timers": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", - "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@sinonjs/fake-timers": "^10.0.2", - "@types/node": "*", - "jest-message-util": "^29.7.0", - "jest-mock": "^29.7.0", - "jest-util": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/globals": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", - "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", - "dev": true, - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/expect": "^29.7.0", - "@jest/types": "^29.6.3", - "jest-mock": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/reporters": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", - "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", - "dev": true, - "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", - "@jridgewell/trace-mapping": "^0.3.18", - "@types/node": "*", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^6.0.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.1.3", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0", - "jest-worker": "^29.7.0", - "slash": "^3.0.0", - "string-length": "^4.0.1", - "strip-ansi": "^6.0.0", - "v8-to-istanbul": "^9.0.1" - }, - "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 - } - } - }, - "node_modules/@jest/schemas": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", - "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", - "dev": true, - "dependencies": { - "@sinclair/typebox": "^0.27.8" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/source-map": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", - "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.18", - "callsites": "^3.0.0", - "graceful-fs": "^4.2.9" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/test-result": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", - "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", - "dev": true, - "dependencies": { - "@jest/console": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/test-sequencer": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", - "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", - "dev": true, - "dependencies": { - "@jest/test-result": "^29.7.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/transform": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", - "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", - "dev": true, - "dependencies": { - "@babel/core": "^7.11.6", - "@jest/types": "^29.6.3", - "@jridgewell/trace-mapping": "^0.3.18", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^2.0.0", - "fast-json-stable-stringify": "^2.1.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "jest-regex-util": "^29.6.3", - "jest-util": "^29.7.0", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "write-file-atomic": "^4.0.2" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/types": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", - "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", - "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", - "dev": true, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", - "dev": true - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", - "dev": true, - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@pkgjs/parseargs": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", - "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", - "dev": true, - "optional": true, - "engines": { - "node": ">=14" - } - }, - "node_modules/@sinclair/typebox": { - "version": "0.27.8", - "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", - "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", - "dev": true - }, - "node_modules/@sinonjs/commons": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", - "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", - "dev": true, - "dependencies": { - "type-detect": "4.0.8" - } - }, - "node_modules/@sinonjs/fake-timers": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", - "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", - "dev": true, - "dependencies": { - "@sinonjs/commons": "^3.0.0" - } - }, - "node_modules/@tsconfig/node10": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz", - "integrity": "sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/@tsconfig/node12": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/@tsconfig/node14": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/@tsconfig/node16": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", - "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/@types/babel__core": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", - "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "node_modules/@types/babel__generator": { - "version": "7.6.8", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", - "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", - "dev": true, - "dependencies": { - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__template": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", - "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", - "dev": true, - "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__traverse": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.5.tgz", - "integrity": "sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==", - "dev": true, - "dependencies": { - "@babel/types": "^7.20.7" - } - }, - "node_modules/@types/graceful-fs": { - "version": "4.1.9", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", - "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", - "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", - "dev": true - }, - "node_modules/@types/istanbul-lib-report": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", - "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", - "dev": true, - "dependencies": { - "@types/istanbul-lib-coverage": "*" - } - }, - "node_modules/@types/istanbul-reports": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", - "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", - "dev": true, - "dependencies": { - "@types/istanbul-lib-report": "*" - } - }, - "node_modules/@types/jest": { - "version": "29.5.12", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.12.tgz", - "integrity": "sha512-eDC8bTvT/QhYdxJAulQikueigY5AsdBRH2yDKW3yveW7svY3+DzN84/2NUgkw10RTiJbWqZrTtoGVdYlvFJdLw==", - "dev": true, - "dependencies": { - "expect": "^29.0.0", - "pretty-format": "^29.0.0" - } - }, - "node_modules/@types/json-schema": { - "version": "7.0.15", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "dev": true - }, - "node_modules/@types/node": { - "version": "20.12.3", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.3.tgz", - "integrity": "sha512-sD+ia2ubTeWrOu+YMF+MTAB7E+O7qsMqAbMfW7DG3K1URwhZ5hN1pLlRVGbf4wDFzSfikL05M17EyorS86jShw==", - "dev": true, - "dependencies": { - "undici-types": "~5.26.4" - } - }, - "node_modules/@types/semver": { - "version": "7.5.8", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", - "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==", - "dev": true - }, - "node_modules/@types/stack-utils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", - "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", - "dev": true - }, - "node_modules/@types/yargs": { - "version": "17.0.32", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.32.tgz", - "integrity": "sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==", - "dev": true, - "dependencies": { - "@types/yargs-parser": "*" - } - }, - "node_modules/@types/yargs-parser": { - "version": "21.0.3", - "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", - "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", - "dev": true - }, - "node_modules/@typescript-eslint/eslint-plugin": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-7.5.0.tgz", - "integrity": "sha512-HpqNTH8Du34nLxbKgVMGljZMG0rJd2O9ecvr2QLYp+7512ty1j42KnsFwspPXg1Vh8an9YImf6CokUBltisZFQ==", - "dev": true, - "dependencies": { - "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "7.5.0", - "@typescript-eslint/type-utils": "7.5.0", - "@typescript-eslint/utils": "7.5.0", - "@typescript-eslint/visitor-keys": "7.5.0", - "debug": "^4.3.4", - "graphemer": "^1.4.0", - "ignore": "^5.2.4", - "natural-compare": "^1.4.0", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "@typescript-eslint/parser": "^7.0.0", - "eslint": "^8.56.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@typescript-eslint/parser": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.5.0.tgz", - "integrity": "sha512-cj+XGhNujfD2/wzR1tabNsidnYRaFfEkcULdcIyVBYcXjBvBKOes+mpMBP7hMpOyk+gBcfXsrg4NBGAStQyxjQ==", - "dev": true, - "peer": true, - "dependencies": { - "@typescript-eslint/scope-manager": "7.5.0", - "@typescript-eslint/types": "7.5.0", - "@typescript-eslint/typescript-estree": "7.5.0", - "@typescript-eslint/visitor-keys": "7.5.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.56.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.5.0.tgz", - "integrity": "sha512-Z1r7uJY0MDeUlql9XJ6kRVgk/sP11sr3HKXn268HZyqL7i4cEfrdFuSSY/0tUqT37l5zT0tJOsuDP16kio85iA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "7.5.0", - "@typescript-eslint/visitor-keys": "7.5.0" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/type-utils": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-7.5.0.tgz", - "integrity": "sha512-A021Rj33+G8mx2Dqh0nMO9GyjjIBK3MqgVgZ2qlKf6CJy51wY/lkkFqq3TqqnH34XyAHUkq27IjlUkWlQRpLHw==", - "dev": true, - "dependencies": { - "@typescript-eslint/typescript-estree": "7.5.0", - "@typescript-eslint/utils": "7.5.0", - "debug": "^4.3.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.56.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/types": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-7.5.0.tgz", - "integrity": "sha512-tv5B4IHeAdhR7uS4+bf8Ov3k793VEVHd45viRRkehIUZxm0WF82VPiLgHzA/Xl4TGPg1ZD49vfxBKFPecD5/mg==", - "dev": true, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-7.5.0.tgz", - "integrity": "sha512-YklQQfe0Rv2PZEueLTUffiQGKQneiIEKKnfIqPIOxgM9lKSZFCjT5Ad4VqRKj/U4+kQE3fa8YQpskViL7WjdPQ==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "7.5.0", - "@typescript-eslint/visitor-keys": "7.5.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "minimatch": "9.0.3", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", - "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@typescript-eslint/utils": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-7.5.0.tgz", - "integrity": "sha512-3vZl9u0R+/FLQcpy2EHyRGNqAS/ofJ3Ji8aebilfJe+fobK8+LbIFmrHciLVDxjDoONmufDcnVSF38KwMEOjzw==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "7.5.0", - "@typescript-eslint/types": "7.5.0", - "@typescript-eslint/typescript-estree": "7.5.0", - "semver": "^7.5.4" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.56.0" - } - }, - "node_modules/@typescript-eslint/utils/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/utils/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/utils/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-7.5.0.tgz", - "integrity": "sha512-mcuHM/QircmA6O7fy6nn2w/3ditQkj+SgtOc8DW3uQ10Yfj42amm2i+6F2K4YAOPNNTmE6iM1ynM6lrSwdendA==", - "dev": true, - "dependencies": { - "@typescript-eslint/types": "7.5.0", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^18.18.0 || >=20.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@ungap/structured-clone": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", - "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", - "dev": true - }, - "node_modules/acorn": { - "version": "8.11.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", - "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/acorn-jsx": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", - "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, - "peerDependencies": { - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/acorn-walk": { - "version": "8.3.3", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz", - "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "acorn": "^8.11.0" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/arg": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, - "dependencies": { - "sprintf-js": "~1.0.2" - } - }, - "node_modules/array-union": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-jest": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", - "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", - "dev": true, - "dependencies": { - "@jest/transform": "^29.7.0", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^29.6.3", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.8.0" - } - }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", - "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", - "dev": true, - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-jest-hoist": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", - "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", - "dev": true, - "dependencies": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.1.14", - "@types/babel__traverse": "^7.0.6" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/babel-preset-current-node-syntax": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", - "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", - "dev": true, - "dependencies": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-top-level-await": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/babel-preset-jest": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", - "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", - "dev": true, - "dependencies": { - "babel-plugin-jest-hoist": "^29.6.3", - "babel-preset-current-node-syntax": "^1.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true - }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - "dev": true, - "dependencies": { - "fill-range": "^7.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/bs-logger": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", - "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", - "dev": true, - "dependencies": { - "fast-json-stable-stringify": "2.x" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/bser": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", - "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", - "dev": true, - "dependencies": { - "node-int64": "^0.4.0" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "dev": true - }, - "node_modules/callsites": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/caniuse-lite": { - "version": "1.0.30001605", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001605.tgz", - "integrity": "sha512-nXwGlFWo34uliI9z3n6Qc0wZaf7zaZWA1CPZ169La5mV3I/gem7bst0vr5XQH5TJXZIMfDeZyOrZnSlVzKxxHQ==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ] - }, - "node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/char-regex": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", - "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/ci-info": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", - "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/sibiraj-s" - } - ], - "engines": { - "node": ">=8" - } - }, - "node_modules/cjs-module-lexer": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", - "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", - "dev": true - }, - "node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", - "dev": true, - "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" - } - }, - "node_modules/collect-v8-coverage": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", - "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", - "dev": true - }, - "node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true - }, - "node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "dev": true - }, - "node_modules/create-jest": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", - "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-config": "^29.7.0", - "jest-util": "^29.7.0", - "prompts": "^2.0.1" - }, - "bin": { - "create-jest": "bin/create-jest.js" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/create-require": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/csv": { - "version": "6.3.10", - "resolved": "https://registry.npmjs.org/csv/-/csv-6.3.10.tgz", - "integrity": "sha512-5NYZG4AN2ZUthmNxIudgBEdMPUnbQHu9V4QTzBPqQzUP3KQsFiJo+8HQ0+oVxj1PomIT1/f67VI1QH/hsrZLKA==", - "dev": true, - "dependencies": { - "csv-generate": "^4.4.1", - "csv-parse": "^5.5.6", - "csv-stringify": "^6.5.1", - "stream-transform": "^3.3.2" - }, - "engines": { - "node": ">= 0.1.90" - } - }, - "node_modules/csv-generate": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/csv-generate/-/csv-generate-4.4.1.tgz", - "integrity": "sha512-O/einO0v4zPmXaOV+sYqGa02VkST4GP5GLpWBNHEouIU7pF3kpGf3D0kCCvX82ydIY4EKkOK+R8b1BYsRXravg==", - "dev": true - }, - "node_modules/csv-parse": { - "version": "5.5.6", - "resolved": "https://registry.npmjs.org/csv-parse/-/csv-parse-5.5.6.tgz", - "integrity": "sha512-uNpm30m/AGSkLxxy7d9yRXpJQFrZzVWLFBkS+6ngPcZkw/5k3L/jjFuj7tVnEpRn+QgmiXr21nDlhCiUK4ij2A==", - "dev": true - }, - "node_modules/csv-stringify": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/csv-stringify/-/csv-stringify-6.5.1.tgz", - "integrity": "sha512-+9lpZfwpLntpTIEpFbwQyWuW/hmI/eHuJZD1XzeZpfZTqkf1fyvBbBLXTJJMsBuuS11uTShMqPwzx4A6ffXgRQ==", - "dev": true - }, - "node_modules/dayjs": { - "version": "1.11.10", - "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.10.tgz", - "integrity": "sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==" - }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/dedent": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.1.tgz", - "integrity": "sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==", - "dev": true, - "peerDependencies": { - "babel-plugin-macros": "^3.1.0" - }, - "peerDependenciesMeta": { - "babel-plugin-macros": { - "optional": true - } - } - }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true - }, - "node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/detect-newline": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", - "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/diff": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", - "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", - "dev": true, - "optional": true, - "peer": true, - "engines": { - "node": ">=0.3.1" - } - }, - "node_modules/diff-sequences": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", - "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", - "dev": true, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/dir-glob": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, - "dependencies": { - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/eastasianwidth": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", - "dev": true - }, - "node_modules/electron-to-chromium": { - "version": "1.4.724", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.724.tgz", - "integrity": "sha512-RTRvkmRkGhNBPPpdrgtDKvmOEYTrPlXDfc0J/Nfq5s29tEahAwhiX4mmhNzj6febWMleulxVYPh7QwCSL/EldA==", - "dev": true - }, - "node_modules/emittery": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", - "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sindresorhus/emittery?sponsor=1" - } - }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/error-ex": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", - "dev": true, - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "node_modules/escalade": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", - "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint": { - "version": "8.57.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz", - "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==", - "dev": true, - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.57.0", - "@humanwhocodes/config-array": "^0.11.14", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "@ungap/structured-clone": "^1.2.0", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "bin": { - "eslint": "bin/eslint.js" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-config-prettier": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz", - "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==", - "dev": true, - "bin": { - "eslint-config-prettier": "bin/cli.js" - }, - "peerDependencies": { - "eslint": ">=7.0.0" - } - }, - "node_modules/eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", - "dev": true, - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "dev": true, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "dev": true - }, - "node_modules/eslint/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/globals": { - "version": "13.24.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", - "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dev": true, - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/eslint/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", - "dev": true, - "dependencies": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", - "dev": true, - "dependencies": { - "estraverse": "^5.1.0" - }, - "engines": { - "node": ">=0.10" - } - }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, - "dependencies": { - "estraverse": "^5.2.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eventemitter2": { - "version": "6.4.9", - "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.9.tgz", - "integrity": "sha512-JEPTiaOt9f04oa6NOkc4aH+nVp5I3wEjpHbIPqfgCdD5v5bUzy7xQqwcVO2aDQgOWhI28da57HksMrzK9HlRxg==" - }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/expect": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", - "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", - "dev": true, - "dependencies": { - "@jest/expect-utils": "^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" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", - "dev": true, - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "node_modules/fast-glob/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", - "dev": true - }, - "node_modules/fastq": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", - "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", - "dev": true, - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/fb-watchman": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", - "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", - "dev": true, - "dependencies": { - "bser": "2.1.1" - } - }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, - "dependencies": { - "flat-cache": "^3.0.4" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "dev": true, - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/flat-cache": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", - "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", - "dev": true, - "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" - }, - "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/flat-cache/node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "deprecated": "Rimraf versions prior to v4 are no longer supported", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/flatted": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz", - "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==", - "dev": true - }, - "node_modules/foreground-child": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.1.tgz", - "integrity": "sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/foreground-child/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "dev": true - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "dev": true, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "dev": true, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "dev": true - }, - "node_modules/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==", - "dev": true - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/hash-it": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/hash-it/-/hash-it-6.0.0.tgz", - "integrity": "sha512-KHzmSFx1KwyMPw0kXeeUD752q/Kfbzhy6dAZrjXV9kAIXGqzGvv8vhkUqj+2MGZldTo0IBpw6v7iWE7uxsvH0w==" - }, - "node_modules/hasown": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", - "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.2" - }, - "engines": { - "node": ">= 0.4" - } - }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "dev": true - }, - "node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "dev": true, - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/ignore": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", - "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", - "dev": true, - "engines": { - "node": ">= 4" - } - }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/import-fresh/node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/import-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", - "dev": true, - "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "dev": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "dev": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - "dev": true - }, - "node_modules/is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", - "dev": true, - "dependencies": { - "hasown": "^2.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-generator-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", - "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true - }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", - "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/istanbul-lib-instrument": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.2.tgz", - "integrity": "sha512-1WUsZ9R1lA0HtBSohTkm39WTPlNKSJ5iFk7UwqXkBLoHQT+hfqPsfsTDVuZdKGaBwn7din9bS7SsnoAr943hvw==", - "dev": true, - "dependencies": { - "@babel/core": "^7.23.9", - "@babel/parser": "^7.23.9", - "@istanbuljs/schema": "^0.1.3", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^7.5.4" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-instrument/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/istanbul-lib-report": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", - "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", - "dev": true, - "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^4.0.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "dev": true, - "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/istanbul-reports": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", - "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", - "dev": true, - "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/jackspeak": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.0.tgz", - "integrity": "sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==", - "dev": true, - "dependencies": { - "@isaacs/cliui": "^8.0.2" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" - } - }, - "node_modules/jest": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", - "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", - "dev": true, - "dependencies": { - "@jest/core": "^29.7.0", - "@jest/types": "^29.6.3", - "import-local": "^3.0.2", - "jest-cli": "^29.7.0" - }, - "bin": { - "jest": "bin/jest.js" - }, - "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 - } - } - }, - "node_modules/jest-changed-files": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", - "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", - "dev": true, - "dependencies": { - "execa": "^5.0.0", - "jest-util": "^29.7.0", - "p-limit": "^3.1.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-circus": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", - "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", - "dev": true, - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/expect": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^1.0.0", - "is-generator-fn": "^2.0.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", - "p-limit": "^3.1.0", - "pretty-format": "^29.7.0", - "pure-rand": "^6.0.0", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-cli": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", - "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", - "dev": true, - "dependencies": { - "@jest/core": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "create-jest": "^29.7.0", - "exit": "^0.1.2", - "import-local": "^3.0.2", - "jest-config": "^29.7.0", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "yargs": "^17.3.1" - }, - "bin": { - "jest": "bin/jest.js" - }, - "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 - } - } - }, - "node_modules/jest-config": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", - "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", - "dev": true, - "dependencies": { - "@babel/core": "^7.11.6", - "@jest/test-sequencer": "^29.7.0", - "@jest/types": "^29.6.3", - "babel-jest": "^29.7.0", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "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.4", - "parse-json": "^5.2.0", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "strip-json-comments": "^3.1.1" - }, - "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 - } - } - }, - "node_modules/jest-diff": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", - "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^29.6.3", - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-docblock": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", - "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", - "dev": true, - "dependencies": { - "detect-newline": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-each": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", - "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "jest-get-type": "^29.6.3", - "jest-util": "^29.7.0", - "pretty-format": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-environment-node": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", - "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", - "dev": true, - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/fake-timers": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-mock": "^29.7.0", - "jest-util": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-get-type": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", - "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", - "dev": true, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-haste-map": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", - "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@types/graceful-fs": "^4.1.3", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^29.6.3", - "jest-util": "^29.7.0", - "jest-worker": "^29.7.0", - "micromatch": "^4.0.4", - "walker": "^1.0.8" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "optionalDependencies": { - "fsevents": "^2.3.2" - } - }, - "node_modules/jest-leak-detector": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", - "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", - "dev": true, - "dependencies": { - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-matcher-utils": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", - "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^29.7.0", - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-message-util": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", - "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^29.6.3", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-mock": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", - "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-util": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-pnp-resolver": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", - "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", - "dev": true, - "engines": { - "node": ">=6" - }, - "peerDependencies": { - "jest-resolve": "*" - }, - "peerDependenciesMeta": { - "jest-resolve": { - "optional": true - } - } - }, - "node_modules/jest-regex-util": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", - "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", - "dev": true, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-resolve": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", - "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", - "dev": true, - "dependencies": { - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "resolve": "^1.20.0", - "resolve.exports": "^2.0.0", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-resolve-dependencies": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", - "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", - "dev": true, - "dependencies": { - "jest-regex-util": "^29.6.3", - "jest-snapshot": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-runner": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", - "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", - "dev": true, - "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", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.13.1", - "graceful-fs": "^4.2.9", - "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" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-runtime": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", - "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", - "dev": true, - "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": "*", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "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" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-snapshot": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", - "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", - "dev": true, - "dependencies": { - "@babel/core": "^7.11.6", - "@babel/generator": "^7.7.2", - "@babel/plugin-syntax-jsx": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/types": "^7.3.3", - "@jest/expect-utils": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^29.7.0", - "graceful-fs": "^4.2.9", - "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": "^29.7.0", - "semver": "^7.5.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-snapshot/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/jest-snapshot/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/jest-snapshot/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/jest-util": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", - "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-validate": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", - "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", - "dev": true, - "dependencies": { - "@jest/types": "^29.6.3", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^29.6.3", - "leven": "^3.1.0", - "pretty-format": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-validate/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/jest-watcher": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", - "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", - "dev": true, - "dependencies": { - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.13.1", - "jest-util": "^29.7.0", - "string-length": "^4.0.1" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-worker": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", - "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", - "dev": true, - "dependencies": { - "@types/node": "*", - "jest-util": "^29.7.0", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true, - "bin": { - "jsesc": "bin/jsesc" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/json-buffer": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", - "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", - "dev": true - }, - "node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true - }, - "node_modules/json-rules-engine": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/json-rules-engine/-/json-rules-engine-6.5.0.tgz", - "integrity": "sha512-W8SLmnfQRDNG1Nh3Agz3c9AZzhiZ/cUtjAhyfhujFzVFNBv7cSHm9WaLoRjOdRr/9je7RgLtmbYXFViL3CekPA==", - "dependencies": { - "clone": "^2.1.2", - "eventemitter2": "^6.4.4", - "hash-it": "^6.0.0", - "jsonpath-plus": "^7.2.0", - "lodash.isobjectlike": "^4.0.0" - } - }, - "node_modules/json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "node_modules/json-stable-stringify-without-jsonify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", - "dev": true - }, - "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "dev": true, - "bin": { - "json5": "lib/cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/jsonpath-plus": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-7.2.0.tgz", - "integrity": "sha512-zBfiUPM5nD0YZSBT/o/fbCUlCcepMIdP0CJZxM1+KgA4f2T206f6VAg9e7mX35+KlMaIc5qXW34f3BnwJ3w+RA==", - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/keyv": { - "version": "4.5.4", - "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", - "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", - "dev": true, - "dependencies": { - "json-buffer": "3.0.1" - } - }, - "node_modules/kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/levn": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", - "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1", - "type-check": "~0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - "dev": true - }, - "node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/lodash.isobjectlike": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/lodash.isobjectlike/-/lodash.isobjectlike-4.0.0.tgz", - "integrity": "sha512-bbRt0Dief0yqjkTgpvzisSxnsmY3ZgVJvokHL30UE+ytsvnpNfiNaCJL4XBEWek8koQmrwZidBHb7coXC5vXlA==" - }, - "node_modules/lodash.memoize": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", - "dev": true - }, - "node_modules/lodash.merge": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true - }, - "node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "dependencies": { - "yallist": "^3.0.2" - } - }, - "node_modules/make-dir": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", - "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", - "dev": true, - "dependencies": { - "semver": "^7.5.3" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/make-dir/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/make-dir/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/make-dir/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "node_modules/makeerror": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", - "dev": true, - "dependencies": { - "tmpl": "1.0.5" - } - }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/micromatch": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, - "dependencies": { - "braces": "^3.0.2", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/minipass": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", - "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", - "dev": true, - "engines": { - "node": ">=16 || 14 >=14.17" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true - }, - "node_modules/node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", - "dev": true - }, - "node_modules/node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true - }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dev": true, - "dependencies": { - "wrappy": "1" - } - }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/optionator": { - "version": "0.9.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", - "integrity": "sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==", - "dev": true, - "dependencies": { - "@aashutoshrathi/word-wrap": "^1.2.3", - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/p-locate/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/package-json-from-dist": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", - "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==", - "dev": true - }, - "node_modules/parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, - "node_modules/path-scurry": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", - "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", - "dev": true, - "dependencies": { - "lru-cache": "^10.2.0", - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" - }, - "engines": { - "node": ">=16 || 14 >=14.18" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.3.0.tgz", - "integrity": "sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==", - "dev": true, - "engines": { - "node": "14 || >=16.14" - } - }, - "node_modules/path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", - "dev": true - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/pirates": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", - "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/prettier": { - "version": "3.2.5", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.5.tgz", - "integrity": "sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==", - "dev": true, - "bin": { - "prettier": "bin/prettier.cjs" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" - } - }, - "node_modules/pretty-format": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", - "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", - "dev": true, - "dependencies": { - "@jest/schemas": "^29.6.3", - "ansi-styles": "^5.0.0", - "react-is": "^18.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/pretty-format/node_modules/ansi-styles": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", - "dev": true, - "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/pure-rand": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz", - "integrity": "sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/dubzzz" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/fast-check" - } - ] - }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/react-is": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", - "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", - "dev": true - }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/resolve": { - "version": "1.22.8", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", - "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", - "dev": true, - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/resolve-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", - "dev": true, - "dependencies": { - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/resolve.exports": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", - "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "node_modules/rimraf": { - "version": "5.0.7", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.7.tgz", - "integrity": "sha512-nV6YcJo5wbLW77m+8KjH8aB/7/rxQy9SZ0HY5shnwULfS+9nmTtVXAJET5NdZmCzA4fPI/Hm1wo/Po/4mopOdg==", - "dev": true, - "dependencies": { - "glob": "^10.3.7" - }, - "bin": { - "rimraf": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=14.18" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/brace-expansion": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "node_modules/rimraf/node_modules/glob": { - "version": "10.4.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", - "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", - "dev": true, - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^3.1.2", - "minimatch": "^9.0.4", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^1.11.1" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": ">=16 || 14 >=14.18" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/rimraf/node_modules/minimatch": { - "version": "9.0.5", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - "dev": true, - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true - }, - "node_modules/sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", - "dev": true - }, - "node_modules/slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.13", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", - "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", - "dev": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "dev": true - }, - "node_modules/stack-utils": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", - "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/stream-transform": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/stream-transform/-/stream-transform-3.3.2.tgz", - "integrity": "sha512-v64PUnPy9Qw94NGuaEMo+9RHQe4jTBYf+NkTtqkCgeuiNo8NlL0LtLR7fkKWNVFtp3RhIm5Dlxkgm5uz7TDimQ==", - "dev": true - }, - "node_modules/string-length": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", - "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", - "dev": true, - "dependencies": { - "char-regex": "^1.0.2", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/string-width-cjs": { - "name": "string-width", - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-ansi-cjs": { - "name": "strip-ansi", - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, - "dependencies": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "node_modules/tmpl": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", - "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", - "dev": true - }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "node_modules/ts-api-utils": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", - "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==", - "dev": true, - "engines": { - "node": ">=16" - }, - "peerDependencies": { - "typescript": ">=4.2.0" - } - }, - "node_modules/ts-jest": { - "version": "29.1.2", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.2.tgz", - "integrity": "sha512-br6GJoH/WUX4pu7FbZXuWGKGNDuU7b8Uj77g/Sp7puZV6EXzuByl6JrECvm0MzVzSTkSHWTihsXt+5XYER5b+g==", - "dev": true, - "dependencies": { - "bs-logger": "0.x", - "fast-json-stable-stringify": "2.x", - "jest-util": "^29.0.0", - "json5": "^2.2.3", - "lodash.memoize": "4.x", - "make-error": "1.x", - "semver": "^7.5.3", - "yargs-parser": "^21.0.1" - }, - "bin": { - "ts-jest": "cli.js" - }, - "engines": { - "node": "^16.10.0 || ^18.0.0 || >=20.0.0" - }, - "peerDependencies": { - "@babel/core": ">=7.0.0-beta.0 <8", - "@jest/types": "^29.0.0", - "babel-jest": "^29.0.0", - "jest": "^29.0.0", - "typescript": ">=4.3 <6" - }, - "peerDependenciesMeta": { - "@babel/core": { - "optional": true - }, - "@jest/types": { - "optional": true - }, - "babel-jest": { - "optional": true - }, - "esbuild": { - "optional": true - } - } - }, - "node_modules/ts-jest/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ts-jest/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ts-jest/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/ts-node": { - "version": "10.9.2", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", - "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", - "dev": true, - "optional": true, - "peer": true, - "dependencies": { - "@cspotcode/source-map-support": "^0.8.0", - "@tsconfig/node10": "^1.0.7", - "@tsconfig/node12": "^1.0.7", - "@tsconfig/node14": "^1.0.0", - "@tsconfig/node16": "^1.0.2", - "acorn": "^8.4.1", - "acorn-walk": "^8.1.1", - "arg": "^4.1.0", - "create-require": "^1.1.0", - "diff": "^4.0.1", - "make-error": "^1.1.1", - "v8-compile-cache-lib": "^3.0.1", - "yn": "3.1.1" - }, - "bin": { - "ts-node": "dist/bin.js", - "ts-node-cwd": "dist/bin-cwd.js", - "ts-node-esm": "dist/bin-esm.js", - "ts-node-script": "dist/bin-script.js", - "ts-node-transpile-only": "dist/bin-transpile.js", - "ts-script": "dist/bin-script-deprecated.js" - }, - "peerDependencies": { - "@swc/core": ">=1.2.50", - "@swc/wasm": ">=1.2.50", - "@types/node": "*", - "typescript": ">=2.7" - }, - "peerDependenciesMeta": { - "@swc/core": { - "optional": true - }, - "@swc/wasm": { - "optional": true - } - } - }, - "node_modules/type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "dependencies": { - "prelude-ls": "^1.2.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/typescript": { - "version": "5.4.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.3.tgz", - "integrity": "sha512-KrPd3PKaCLr78MalgiwJnA25Nm8HAmdwN3mYUYZgG/wizIo9EainNVQI9/yDavtVFRN2h3k8uf3GLHuhDMgEHg==", - "dev": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/undici-types": { - "version": "5.26.5", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", - "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", - "dev": true - }, - "node_modules/update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", - "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], - "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" - }, - "bin": { - "update-browserslist-db": "cli.js" - }, - "peerDependencies": { - "browserslist": ">= 4.21.0" - } - }, - "node_modules/uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, - "dependencies": { - "punycode": "^2.1.0" - } - }, - "node_modules/v8-compile-cache-lib": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "dev": true, - "optional": true, - "peer": true - }, - "node_modules/v8-to-istanbul": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz", - "integrity": "sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==", - "dev": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.12", - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^2.0.0" - }, - "engines": { - "node": ">=10.12.0" - } - }, - "node_modules/walker": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", - "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", - "dev": true, - "dependencies": { - "makeerror": "1.0.12" - } - }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrap-ansi-cjs": { - "name": "wrap-ansi", - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "dev": true - }, - "node_modules/write-file-atomic": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", - "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", - "dev": true, - "dependencies": { - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.7" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - }, - "node_modules/yargs": { - "version": "17.7.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", - "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", - "dev": true, - "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true, - "engines": { - "node": ">=12" - } - }, - "node_modules/yn": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - "dev": true, - "optional": true, - "peer": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - } - } -} diff --git a/policy-engine/package.json b/policy-engine/package.json deleted file mode 100644 index 415555bc5..000000000 --- a/policy-engine/package.json +++ /dev/null @@ -1,77 +0,0 @@ -{ - "name": "onroute-policy-engine", - "version": "0.2.0", - "description": "Policy Engine library for commercial vehicle permitting", - "main": "dist/index.js", - "exports": { - ".": "./dist/index.js", - "./types": "./dist/types/index.js", - "./enum": "./dist/enum/index.js" - }, - "types": "dist/index.d.ts", - "private": false, - "scripts": { - "clean": "rimraf dist && rimraf -g *.tgz", - "test": "jest", - "lint": "eslint \"{src,apps,libs,test}/**/*.ts\" --fix", - "format": "prettier --write \"src/**/*.ts\"", - "build": "tsc", - "clean-build": "rimraf dist && rimraf -g *.tgz && tsc" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/bcgov/onroutebc.git" - }, - "author": "John Fletcher", - "license": "Apache-2.0", - "homepage": "https://github.com/bcgov/onroutebc#readme", - "devDependencies": { - "@iwsio/json-csv-core": "^1.1.7", - "@types/jest": "^29.5.12", - "@typescript-eslint/eslint-plugin": "^7.5.0", - "csv": "^6.3.10", - "eslint": "^8.57.0", - "eslint-config-prettier": "^9.1.0", - "jest": "^29.7.0", - "prettier": "^3.2.5", - "rimraf": "^5.0.7", - "ts-jest": "^29.1.2", - "typescript": "^5.4.3" - }, - "dependencies": { - "dayjs": "^1.11.10", - "json-rules-engine": "^6.5.0" - }, - "jest": { - "moduleFileExtensions": [ - "js", - "json", - "ts" - ], - "rootDir": ".", - "roots": [ - "/src" - ], - "moduleNameMapper": { - "^src/(.*)$": "/src/$1", - "^test/(.*)$": "/test/$1" - }, - "testRegex": ".*\\.spec\\.ts$", - "transform": { - "^.+\\.ts$": "ts-jest" - }, - "collectCoverage": true, - "collectCoverageFrom": [ - "**/*.js" - ], - "coverageDirectory": "./coverage", - "coveragePathIgnorePatterns": [ - "/node_modules/", - "/src/_test/", - ".enum.ts", - ".interface.ts", - "index.ts" - ], - "testEnvironment": "node" - } -} diff --git a/policy-engine/src/_examples/Single Trip Oversize Dimension Set.csv b/policy-engine/src/_examples/Single Trip Oversize Dimension Set.csv deleted file mode 100644 index 3dfa49997..000000000 --- a/policy-engine/src/_examples/Single Trip Oversize Dimension Set.csv +++ /dev/null @@ -1,214 +0,0 @@ -,,,,,,Lower Mainland,,,Kootenay,,,Peace,,,BC Default,,,Projection,,,,, -No Self Issue,Commodity,Power Unit,Trailer,Allow Jeep,Allow Booster,Width,Height,Length,Width,Height,Length,Width,Height,Length,Width,Height,Length,ORBC FP,ORBC RP,Policy Ref,Edit,Notes, -,"Auto Carrier, Campers And Boats (Stinger Steered Transporters Only)",Truck Tractors - Stinger Steered,Semi-Trailers - Stinger Steered Automobile Transporters,,,2.6,4.3,25,2.6,4.3,25,2.6,4.88,25,2.6,4.4,25,1,1.2,4.2.7.A.1/4.2.7.B.A/ 5.3.11,,"Loaded dimensions used, equipment itself is less",FP and RP points can vary in CTPM (i.e. rear projection can be from turn centre or bumper or sometimes bunk!) -,Bridge Beams,Truck Tractors,Pole Trailers,X,,2.6,4.15,31,2.6,4.15,31,2.6,4.15,31,2.6,4.15,31,3,6.5,4.5.5,,"OAL could be greater with steering trailers, do we need two categories?", -,Bridge Beams,Truck Tractors,Semi-Trailers,,,3.2,4.3,31,3.2,4.3,31,3.2,5.33,31,3.2,4.3,31,3,6.5,4.2.7.A.13,,"KPLA limit of 18.3 m - impacts other non-reducible loads as well, can this be restricted? TPS currently cannot. (Peace River exempt)", -,Bridge Beams,Truck Tractors,Steering Dolly,,,2.6,4.15,36,2.6,4.15,36,2.6,4.15,36,2.6,4.15,36,3,6.5,5.3.12.F,,, -,Brushcutters (Peace Only),Truck Tractors,Semi-Trailers,,,2.6,4.15,23,2.6,4.15,23,4.57,5.33,23,2.6,4.15,23,3,6.5,4.2.7.B.B,,tractor semi-trailer could be 23.5 if a tridem , -,Brushcutters (Peace Only),Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,2.6,4.15,23,2.6,4.15,23,4.57,5.33,23,2.6,4.15,23,3,6.5,4.2.7.B.B,,, -,Brushcutters (Peace Only),Trucks,None,,,2.6,4.15,12.5,2.6,4.15,12.5,4.57,5.33,12.5,2.6,4.15,12.5,1,1,4.2.7.B.B,,, -,Brushcutters (Peace Only),Trucks,Pony Trailers,,,2.6,4.15,23,2.6,4.15,23,3.8,5.33,23,2.6,4.15,23,1,1,4.2.7.B.B/5.3.12.G,,, -,Doglogger/Sjostrum Trailers (decked),Truck Tractors,None,,,2.6,4.15,13.5,2.6,4.15,13.5,2.6,4.15,13.5,2.6,4.15,13.5,1,5,4.2.7.A.13,,, -,Empty,Truck Tractors,Logging Trailer - Overwidth Bunks,,,3.2,4.15,23,3.2,4.15,23,3.2,4.15,23,3.2,4.15,23,0,0,5.3.5.B,,, -,Empty,Picker Truck Tractors,Oil and Gas - Oversize Oilfield Flat Deck Semi-Trailers,X,X,3.2,4.15,23,3.2,4.15,23,3.2,4.15,23,3.2,4.15,23,3,6.5,5.3.8.B.,,, -X,Empty,Picker Truck Tractors,Platform Trailers,X,X,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,3,6.5,,,, -,Empty,Picker Truck Tractors,Semi-Trailers - Hiboys/Expandos,X,X,2.6,4.15,25,2.6,4.15,25,2.6,4.15,27.5,2.6,4.15,25,3,6.5,5.3.9.A./5.3.9.B.,,, -X,Empty,Picker Truck Tractors,Semi-Trailers - Wheelers,X,X,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,3,6.5,,,, -X,Empty,Picker Truck Tractors,Semi-Trailers - Wide Wheelers,X,X,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,3,6.5,,,, -,Empty,Picker Truck,Pony Trailers,,,2.6,4.15,23,2.6,4.15,23,2.6,4.15,23,2.6,4.15,23,0,0,5.3.9.A,,, -X,Empty,Truck Tractors,Platform Trailers,X,X,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,3,6.5,,,, -,Empty,Truck Tractors,Semi-Trailers - Hiboys/Expandos,X,X,2.6,4.15,31,2.6,4.4,31,2.6,5.33,31,2.6,4.4,31,3,6.5,5.3.12.C.,,, -,Empty,Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,2.6,4.15,27.5,2.6,4.4,27.5,2.6,5.33,27.5,2.6,4.4,27.5,3,6.5,5.3.12.B.,,, -,Empty,Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,3.2,4.15,31,3.2,4.4,31,3.2,5.33,31,3.2,4.4,31,3,6.5,5.3.12.A.,,, -X,Empty,Truck Tractors,Semi-Trailers - Wheelers,X,X,3.2,4.15,27.5,3.2,4.88,27.5,3.2,5.33,27.5,3.2,4.88,27.5,3,6.5,,,, -X,Empty,Truck Tractors,Semi-Trailers - Wide Wheelers,X,X,3.2,4.15,27.5,3.2,4.88,27.5,3.2,5.33,27.5,3.2,4.88,27.5,3,6.5,,,, -,Fixed Equipment,Truck Tractors,Fixed Equipment - Conveyors (Semi-Trailers),X,X,3.8,4.72,,3.8,4.72,,3.8,5.33,,3.8,4.72,,4,9.5,5.3.4.F.,,"OAL is not specified, limited by FPK, STWB, RPT", -,Fixed Equipment,Truck Tractors,Fixed Equipment - Counter Flow Asphalt Drum Mixers,X,X,3.8,4.72,,3.8,4.72,,3.8,5.33,,3.8,4.72,,3,6.5,5.3.4.D.,,18.3 KPLA allowed, -,Fixed Equipment,Truck Tractors,Fixed Equipment - Portable Asphalt Baghouses,X,X,4.26,4.72,,4.26,4.72,,4.26,5.33,,4.26,4.72,,3,6.5,5.3.4.E.,,, -,Fixed Equipment,Truck Tractors,Fixed Equipment - Semi-Trailers,X,X,3.8,4.72,,3.8,4.72,,3.8,5.33,,3.8,4.72,,3,6.5,5.3.4.A.,,, -X,Fixed Equipment,Truck Tractors,Fixed Equipment - Wheeler Semi-Trailers,X,X,3.8,4.72,,3.8,4.72,,3.8,5.33,,3.8,4.72,,3,6.5,5.3.4.B.,,, -,Fixed Equipment,Trucks,Fixed Equipment - Conveyors (Pony Trailers),,,3.2,4.3,,3.2,4.3,,3.2,4.3,,3.2,4.3,,4,9.5,5.3.4.F.,,"Check with Barry, does this exist? I don't believe we intended pony trailer to get allowances", -,Fixed Equipment,Trucks,Fixed Equipment - Counter Flow Asphalt Drum Mixers,,,3.8,4.72,,3.8,4.72,,3.8,5.33,,3.8,4.72,,3,6.5,5.3.4.D.,,"Check with Barry, does this exist? I don't believe we intended pony trailer to get allowances", -,Fixed Equipment,Trucks,Fixed Equipment - Pony Trailers,,,3.2,4.3,,3.2,4.3,,3.2,4.3,,3.2,4.3,,1,4,5.3.4.C.,,, -,Fixed Equipment,Trucks,Fixed Equipment - Portable Asphalt Baghouses,,,4.26,4.72,,4.26,4.72,,4.26,4.72,,4.26,4.72,,3,6.5,5.3.4.E.,,"Check with Barry, does this exist? I don't believe we intended pony trailer to get allowances", -,Garbage Bins,Trucks,Full Trailers,,,2.6,4.15,23,2.6,4.15,23,2.6,4.15,23,2.6,4.15,23,3,6.5,4.2.7.A.7,,, -,Garbage Bins,Trucks,None,,,2.6,4.15,12.5,2.6,4.15,12.5,2.6,4.15,12.5,2.6,4.15,12.5,3,6.5,4.2.7.A.7,,, -,Garbage Bins,Trucks,Pony Trailers,,,2.6,4.15,23,2.6,4.15,23,2.6,4.15,23,2.6,4.15,23,3,6.5,4.2.7.A.7,,, -,"Grader, Tractor Blades, Buckets",Fixed Equipment - Trucks/Graders etc.,None,,,4.4,4.15,12.5,4.4,4.15,12.5,4.4,4.15,12.5,4.4,4.15,12.5,0,0,4.2.7.B.C,,, -,Hay Bales (Round) Peace River Only,Truck Tractors,Semi-Trailers - A-Trains and C-Trains,,,3.5,4.3,26,3.5,4.3,26,3.84,4.8,26,3.5,4.3,26,1,1,4.2.7.A.8/4.4.2,,, -,Hay Bales (Round) Peace River Only,Truck Tractors,Semi-Trailers - B-Trains,,,3.5,4.3,27.5,3.5,4.3,27.5,3.84,4.8,27.5,3.5,4.3,27.5,1,1,4.2.7.A.8/4.4.2,,, -,Hay Bales (Round) Peace River Only,Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,3.5,4.3,23,3.5,4.3,23,3.84,4.8,23,3.5,4.3,23,3,6.5,4.2.7.A.8/4.4.2,,, -,Hay Bales (Round) Peace River Only,Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,3.5,4.3,23,3.5,4.3,23,3.84,4.8,23,3.5,4.3,23,3,6.5,4.2.7.A.8/4.4.2,,, -,Hay Bales (Round) Peace River Only,Trucks,Full Trailers,,,3.5,4.3,23,3.5,4.3,23,3.84,4.8,23,3.5,4.3,23,1,4,4.2.7.A.8/4.4.2,,, -,Hay Bales (Round) Peace River Only,Trucks,None,,,3.5,4.3,12.5,3.5,4.3,12.5,3.84,4.8,12.5,3.5,4.3,12.5,1,1,4.2.7.A.8/4.4.2,,, -,Hay Bales (Round) Peace River Only,Trucks,Pony Trailers,,,3.5,4.3,23,3.5,4.3,23,3.84,4.8,23,3.5,4.3,23,1,4,4.2.7.A.8/4.4.2,,, -,Hay Bales Large Rectangular,Truck Tractors,Semi-Trailers - A-Trains and C-Trains,,,3.05,4.3,26,3.05,4.3,26,3.05,4.8,26,3.05,4.3,26,1,1,4.2.7.A.8/4.4.1,,, -,Hay Bales Large Rectangular,Truck Tractors,Semi-Trailers - B-Trains,,,3.05,4.3,27.5,3.05,4.3,27.5,3.05,4.8,27.5,3.05,4.3,27.5,1,1,4.2.7.A.8/4.4.1,,, -,Hay Bales Large Rectangular,Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,3.05,4.3,23,3.05,4.3,23,3.05,4.8,23,3.05,4.4,23,3,6.5,4.2.7.A.8/4.4.1,,, -,Hay Bales Large Rectangular,Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,3.05,4.3,23,3.05,4.3,23,3.05,4.8,23,3.05,4.3,23,3,6.5,4.2.7.A.8/4.4.1,,, -,Hay Bales Large Rectangular,Trucks,Full Trailers,,,3.05,4.3,23,3.05,4.3,23,3.05,4.8,23,3.05,4.3,23,1,4,4.2.7.A.8/4.4.1,,, -,Hay Bales Large Rectangular,Trucks,None,,,3.05,4.3,12.5,3.05,4.3,12.5,3.05,4.8,12.5,3.05,4.3,12.5,1,1,4.2.7.A.8/4.4.1,,, -,Hay Bales Large Rectangular,Trucks,Pony Trailers,,,3.05,4.3,23,3.05,4.3,23,3.05,4.8,23,3.05,4.3,23,1,4,4.2.7.A.8/4.4.1,,, -,Hay Bales Round,Truck Tractors,Semi-Trailers - A-Trains and C-Trains,,,3.5,4.3,26,3.5,4.3,26,3.84,4.8,26,3.5,4.3,26,1,1,4.2.7.A.8/4.4.2,,, -,Hay Bales Round,Truck Tractors,Semi-Trailers - B-Trains,,,3.5,4.3,27.5,3.5,4.3,27.5,3.84,4.8,27.5,3.5,4.3,27.5,1,1,4.2.7.A.8/4.4.2,,, -,Hay Bales Round,Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,3.5,4.3,23,3.5,4.3,23,3.84,4.8,23,3.5,4.3,23,3,6.5,4.2.7.A.8/4.4.2,,, -,Hay Bales Round,Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,3.5,4.3,23,3.5,4.3,23,3.84,4.8,23,3.5,4.3,23,3,6.5,4.2.7.A.8/4.4.2,,, -,Hay Bales Round,Trucks,Full Trailers,,,3.5,4.3,23,3.5,4.3,23,3.84,4.8,23,3.5,4.3,23,1,4,4.2.7.A.8/4.4.2,,, -,Hay Bales Round,Trucks,None,,,3.5,4.3,12.5,3.5,4.3,12.5,3.84,4.8,12.5,3.5,4.3,12.5,1,1,4.2.7.A.8/4.4.2,,, -,Hay Bales Round,Trucks,Pony Trailers,,,3.5,4.3,23,3.5,4.3,23,3.84,4.8,23,3.5,4.3,23,1,4,4.2.7.A.8/4.4.2,,, -,Hay Bales Small Rectangular,Truck Tractors,Semi-Trailers - A-Trains and C-Trains,,,3.05,4.3,26,3.05,4.3,26,3.05,4.8,26,3.05,4.3,26,1,1,4.2.7.A.8/4.4.1,,, -,Hay Bales Small Rectangular,Truck Tractors,Semi-Trailers - B-Trains,,,3.05,4.3,27.5,3.05,4.3,27.5,3.05,4.8,27.5,3.05,4.3,27.5,1,1,4.2.7.A.8/4.4.1,,, -,Hay Bales Small Rectangular,Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,3.05,4.3,23,3.05,4.3,23,3.05,4.8,23,3.05,4.3,23,3,6.5,4.2.7.A.8/4.4.1,,, -,Hay Bales Small Rectangular,Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,3.05,4.3,23,3.05,4.3,23,3.05,4.8,23,3.05,4.3,23,3,6.5,4.2.7.A.8/4.4.1,,, -,Hay Bales Small Rectangular,Trucks,Full Trailers,,,3.05,4.3,23,3.05,4.3,23,3.05,4.8,23,3.05,4.3,23,1,4,4.2.7.A.8/4.4.1,,, -,Hay Bales Small Rectangular,Trucks,None,,,3.05,4.3,12.5,3.05,4.3,12.5,3.05,4.8,12.5,3.05,4.3,12.5,1,1,4.2.7.A.8/4.4.1,,, -,Hay Bales Small Rectangular,Trucks,Pony Trailers,,,3.05,4.3,23,3.05,4.3,23,3.05,4.8,23,3.05,4.3,23,1,4,4.2.7.A.8/4.4.1,,, -,Hayrack Semi-Trailer with a Folded Chassis/Empty Piggyback,Truck Tractors,Semi-Trailers - Logging,,,2.6,4.15,23,2.6,4.15,23,2.6,4.15,23,2.6,4.15,23,1,5,4.5.6.E.,,, -,Intermodal Containers,Truck Tractors,Semi-Trailers - A-Trains and C-Trains,,,2.6,4.4,26,2.6,4.4,26,2.6,4.4,26,2.6,4.4,26,1,1,4.2.7.A.9,,, -,Intermodal Containers,Truck Tractors,Semi-Trailers - B-Trains,,,2.6,4.4,27.5,2.6,4.4,27.5,2.6,4.4,27.5,2.6,4.4,27.5,1,1,4.2.7.A.9,,, -,Intermodal Containers,Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,2.6,4.4,23,2.6,4.4,23,2.6,4.4,23,2.6,4.4,23,1,1,4.2.7.A.9,,, -,Intermodal Containers,Trucks,None,,,2.6,4.4,12.5,2.6,4.4,12.5,2.6,4.4,12.5,2.6,4.4,12.5,1,1,4.2.7.A.9,,, -,Intermodal Containers without Sides,Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,4.4,4.72,23,4.4,4.72,23,4.4,4.72,23,4.4,4.72,23,1,1,4.2.7.10/4.2.7.B.D.,,, -,Laminated Beams,Truck Tractors,Pole Trailers,X,X,2.6,4.15,40,2.6,4.15,40,2.6,4.15,40,2.6,4.15,40,3,6.5,4.5.3,,, -,Laminated Beams,Truck Tractors,Semi-Trailers - Hiboys/Expandos,X,X,2.6,4.15,31,2.6,4.15,31,2.6,4.15,31,2.6,4.15,31,3,6.5,4.5.3,,, -X,"Logs, Poles And Boomsticks (Over 20.1)",Truck Tractors,"Logging Trailer - Full Trailers, Tri Axle, Quad Axle",,,2.6,4.15,40,2.6,4.15,40,2.6,4.15,40,2.6,4.15,40,10,10,4.5.2,,, -X,"Logs, Poles And Boomsticks (Over 20.1)",Truck Tractors,Pole Trailers,X,X,2.6,4.15,40,2.6,4.15,40,2.6,4.15,40,2.6,4.15,40,8,9,4.5.2,,, -,"Logs, Poles And Boomsticks (Over 20.1)",Truck Tractors,Steering Trailers - Manned,X,X,2.6,4.15,40,2.6,4.15,40,2.6,4.15,40,2.6,4.15,40,10,10,5.3.12.F,,, -,"Logs, Poles And Boomsticks (Over 20.1)",Truck Tractors,Steering Trailers - Self/Remote,X,X,2.6,4.15,36,2.6,4.15,36,2.6,4.15,36,2.6,4.15,36,10,10,5.3.12.F,,, -,"Logs, Poles And Boomsticks (Up To 20.1)",Truck Tractors,Full Trailers,,,2.9,4.15,27.5,2.9,4.15,27.5,2.9,4.15,27.5,2.9,4.15,27.5,3,6.5,4.5.1,,, -,"Logs, Poles And Boomsticks (Up To 20.1)",Truck Tractors,Legacy Logging Trailer Combinations,,,2.6,4.15,25,2.6,4.15,25,2.6,4.15,25,2.6,4.15,25,3,5,5.3.7.C.,,, -,"Logs, Poles And Boomsticks (Up To 20.1)",Truck Tractors,Pole Trailers,X,,2.9,4.15,27.5,2.9,4.15,27.5,2.9,4.15,27.5,2.9,4.15,27.5,3,6.5,4.5.1,,, -,"Logs, Poles And Boomsticks (Up To 20.1)",Truck Tractors,Semi-Trailers - A-Trains and C-Trains,,,2.9,4.15,26,2.9,4.15,26,2.9,4.15,26,2.9,4.15,26,3,6.5,4.5.1,,, -,"Logs, Poles And Boomsticks (Up To 20.1)",Truck Tractors,Semi-Trailers - B-Trains,,,2.9,4.15,27.5,2.9,4.15,27.5,2.9,4.15,27.5,2.9,4.15,27.5,3,6.5,4.5.1,,, -,"Logs, Poles And Boomsticks (Up To 20.1)",Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,,,2.9,4.15,25,2.9,4.15,25,2.9,4.15,25,2.9,4.15,25,3,6.5,4.5.1,,, -,"Logs, Poles And Boomsticks (Up To 20.1)",Truck Tractors,Semi-Trailers - Logging,,,2.9,4.15,25,2.9,4.15,25,2.9,4.15,25,2.9,4.15,25,3,6.5,4.5.1,,, -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW)",Truck Tractors,Semi-Trailers,X,X,5.0,4.88,31.5,5.0,4.88,31.5,5.0,5.33,36,5.0,4.88,31.5,3.0,7.5,4.3.5,,, -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW)",Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,5.0,4.88,31.5,5.0,4.88,31.5,5.0,5.33,36,5.0,4.88,31.5,3.0,7.5,4.3.5,,, -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW)",Trucks,Dollies,,,5.0,4.88,31.5,5.0,4.88,31.5,5.0,5.33,36,5.0,4.88,31.5,1,6.9,4.3,,, -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW)",Trucks,Float Trailers,,,5.0,4.57,31.5,5.0,4.57,31.5,5.0,5.33,36,5.0,4.57,31.5,1,6.9,4.3.5.F,,, -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW)",Trucks,Pony Trailers,,,5.0,4.88,31.5,5.0,4.88,31.5,5.0,5.33,36,5.0,4.88,31.5,1,6.9,4.3,,, -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW)",Truck Tractors,Semi-Trailers,X,X,6.0,4.88,31.5,6.0,4.88,31.5,6.1,5.33,36,6.0,4.88,31.5,3.0,7.5,4.3.5,,, -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW)",Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,6.0,4.88,31.5,6.0,4.88,31.5,6.1,5.33,36,6.0,4.88,31.5,3.0,7.5,4.3.5,,, -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW)",Trucks,Dollies,,,6.0,4.88,31.5,6.0,4.88,31.5,6.1,5.33,36,6.0,4.88,31.5,1,6.9,4.3,,, -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW)",Trucks,Float Trailers,,,6.0,4.57,31.5,6.0,4.57,31.5,6.1,5.33,36,6.0,4.57,31.5,1,6.9,4.3.5.F,,, -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW)",Trucks,Pony Trailers,,,6.0,4.88,31.5,6.0,4.88,31.5,6.1,5.33,36,6.0,4.88,31.5,1,6.9,4.3,,, -,None,Concrete Pumper Trucks,None,,X,2.6,4.15,15.5,2.6,4.15,15.5,2.6,4.15,15.5,2.6,4.15,15.5,3,6.5,5.3.2.A.,,, -,None,"Cranes, Rubber-Tired Loaders, Firetrucks - All Terrain",Dollies,,,3.8,4.3,25,3.8,4.3,25,3.8,4.3,25,3.8,4.3,25,10,6.5,5.3.3.B.,,, -,None,"Cranes, Rubber-Tired Loaders, Firetrucks - All Terrain",None,,,3.8,4.3,14,3.8,4.3,14,3.8,4.3,15,3.8,4.3,14,10,6.5,5.3.3.B.,,, -,None,"Cranes, Rubber-Tired Loaders, Firetrucks - Mobile",Dollies,,,3.8,4.3,25,3.8,4.3,25,3.8,4.3,25,3.8,4.3,25,10,6.5,5.3.3.A.,,, -,None,"Cranes, Rubber-Tired Loaders, Firetrucks - Mobile",None,,,3.8,4.3,14,3.8,4.3,14,3.8,4.3,15,3.8,4.3,14,10,6.5,5.3.3.A.,,, -,None,Double Decker Buses,None,,,2.6,4.3,12.5,2.6,4.3,12.5,2.6,4.3,12.5,2.6,4.42,12.5,1,1,5.3.1.A,,, -,None,Fixed Equipment - Trucks/Graders etc.,Fixed Equipment - Pony Trailers,,,3.2,4.3,31,3.2,4.3,31,3.2,4.3,31,3.2,4.3,31,1,4,,,, -X,None,Fixed Equipment - Trucks/Graders etc.,None,,,3.5,4.3,12.5,3.5,4.3,12.5,3.5,5.33,12.5,3.5,4.4,12.5,1,1,5.3.4.G.,,, -X,None,Inter-City Bus (Pulling Pony Trailer),Pony Trailers,,,2.6,4.15,20,2.6,4.15,20,2.6,4.15,20,2.6,4.15,20,1,1,5.3.1.B,,, -,None,Logging Trucks - Off-Highway,Semi-Trailers - Logging,,,4.4,4.15,23,4.4,4.15,23,4.4,4.15,23,4.4,4.15,23,3,6.5,5.3.5.A.,,, -X,None,Long Combination Vehicles (LCV) - Rocky Mountain Doubles,Semi-Trailers,,,2.6,4.15,32,2.6,4.15,32,2.6,4.15,31,2.6,4.15,32,1,1,5.3.6.D.,,, -,None,Long Combination Vehicles (LCV) - Turnpike Doubles,Semi-Trailers,,,2.6,4.15,41,2.6,4.15,41,2.6,4.15,41,2.6,4.15,41,1,1,5.3.6.D.,,, -X,None,Long Wheelbase Truck Tractors Exceeding 6.2 m up to 7.25 m,Semi-Trailers,X,X,2.6,4.15,23,2.6,4.15,23,2.6,4.15,23,2.6,4.15,23,1,1,5.3.7.A.,,, -,None,Picker Truck Tractors,None,,,2.6,4.15,16,2.6,4.15,16,2.6,4.15,16,2.6,4.15,16,3,1,5.3.9,,, -,None,Picker Truck Tractors,Semi-Trailers with Crane,X,X,2.6,4.15,25,2.6,4.15,25,2.6,4.15,25,2.6,4.15,25,3,6.5,5.3.9,,, -,None,Picker Truck Tractors,Steering Trailers - Manned,X,X,5,4.88,40,5,4.88,40,5,5.33,40,5,4.88,40,3,6.5,,,, -,None,Picker Truck Tractors,Steering Trailers - Self/Remote,X,X,5,4.88,36,5,4.88,36,5,5.33,36,5,4.88,36,3,6.5,,,, -,None,Scrapers,None,,,2.6,4.15,12.5,2.6,4.15,12.5,2.6,4.15,12.5,2.6,4.15,12.5,1,1,5.3.10.A.1),,, -,None,Truck Tractors,Fixed Equipment - Conveyors (Semi-Trailers),X,X,3.8,4.72,31,3.8,4.72,31,3.8,5.33,31,3.8,4.72,31,4,9.5,,,, -,None,Truck Tractors,Fixed Equipment - Counter Flow Asphalt Drum Mixers,X,X,3.8,4.72,31,3.8,4.72,31,3.8,5.33,31,3.8,4.72,31,3,6.5,,,, -X,None,Truck Tractors,Fixed Equipment - Portable Asphalt Baghouses,X,X,4.26,4.72,31,4.26,4.72,31,4.26,5.33,31,4.26,4.72,31,3,6.5,,,, -X,None,Truck Tractors,Fixed Equipment - Semi-Trailers,X,X,3.8,4.72,31,3.8,4.72,31,3.8,5.33,31,3.8,4.72,31,3,6.5,,,, -,None,Truck Tractors,Fixed Equipment - Wheeler Semi-Trailers,X,X,5,4.88,31,5,4.88,31,5,5.33,31,5,4.88,31,3,6.5,,,, -X,None,Truck Tractors,Overdimensional Trailers and Semi-Trailers (For Export),,,3.65,4.15,23,3.65,4.15,23,3.65,4.15,23,3.65,4.15,23,1,1,5.3.12.D.,,, -,None,Truck Tractors,Ready Mix Concrete Pump Semi-Trailers,X,X,2.6,4.15,23,2.6,4.15,23,2.6,4.15,23,2.6,4.15,23,3,6.5,5.3.2.B.,,, -,None,Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,2.6,4.3,23,2.6,4.3,23,2.6,5.33,31,2.6,4.3,31,3,6.5,5.3.12.B.,,, -,None,Truck Tractors,Semi-Trailers - Insulated Vans with Reefer/Refrigeration Units,,,2.6,4.3,23,2.6,4.3,23,2.6,4.3,23,2.6,4.3,23,1,1,5.3.12.H.,,, -,None,Truck Tractors,Semi-Trailers - Non-Tac Short Chassis,,,2.6,4.15,20,2.6,4.15,20,2.6,4.15,20,2.6,4.15,20,5,2.25,5.3.7.D.,,, -,None,Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,4.3,32,3.2,4.3,27.5,3,6.5,5.3.12.A.,,, -,None,Truck Tractors,Steering Trailers - Manned,X,X,2.6,4.15,40,2.6,4.15,40,2.6,4.15,40,2.6,4.15,40,1,1,5.3.12.F.ii),,, -,None,Truck Tractors,Steering Trailers - Self/Remote,X,X,2.6,4.15,36,2.6,4.15,36,2.6,4.15,36,2.6,4.15,36,1,1,5.3.12.F.i),,, -,None,Trucks,Fixed Equipment - Conveyors (Pony Trailers),,,3.2,4.3,31,3.2,4.3,31,3.2,4.3,31,3.2,4.3,31,4,9.5,,,, -,None,Trucks,Fixed Equipment - Pony Trailers,,,3.2,4.3,31,3.2,4.3,31,3.2,4.3,31,3.2,4.3,31,1,4,,,, -,None,Trucks,Full Trailers ,,,3.8,4.3,23,3.8,4.3,23,3.8,5.33,23,3.8,4.3,23,1,6.5,5.3.12.G.,,, -,None,Trucks,"Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW) with Attached Axles",,,5.0,4.88,31.5,5.0,4.88,31.5,5.0,5.33,36,5.0,4.88,31.5,1,6.9,"4.3.5.A, 4.3.5.B, 4.3.5.C",,, -,None,Trucks,"Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW) with Attached Axles",,,6.0,4.88,31.5,6.0,4.88,31.5,6.1,5.33,36,6.0,4.88,31.5,1,6.9,"4.3.5.D, 4.3.5.E",,, -,None,Trucks,None,,,3.2,4.3,16,3.2,4.3,16,3.2,4.4,16,3.2,4.3,16,1,6.5,,,, -,None,Trucks,Overdimensional Trailers and Semi-Trailers (For Export),,,3.65,4.15,23,3.65,4.15,23,3.65,4.15,23,3.65,4.15,23,1,1,5.3.12.D.,,, -,None,Trucks,Park Model Homes with Attached Axles,,,4.4,4.88,31.5,4.4,4.88,31.5,4.4,5.33,31.5,4.4,4.88,31.5,3.0,6.9,4.3.4,,, -,None,Trucks,Pony Trailers,,,3.2,4.3,23,3.2,4.3,23,3.2,5.33,23,3.2,4.3,23,1,6.5,5.3.12.G.,,, -,None,Trucks Equipped with Front or Underbody Plow Blades,None,,,3.2,4.15,12.5,3.2,4.15,12.5,3.2,4.15,12.5,3.2,4.15,12.5,1,1,5.3.13,,, -X,Non-Reducible Loads,Truck Tractors,Semi-Trailers - Logging,,,3.8,4.15,27.5,3.8,4.15,27.5,3.8,4.15,27.5,3.8,4.15,27.5,3,6.5,5.3.9.A./5.3.9.B.,,, -X,Non-Reducible Loads,Picker Truck Tractors,Oil and Gas - Oversize Oilfield Flat Deck Semi-Trailers,X,X,3.3,4.3,23,3.3,4.3,23,3.3,4.3,23,3.3,4.3,23,3,6.5,5.3.8.B.,,, -,Non-Reducible Loads,Picker Truck Tractors,Semi-Trailers,X,X,5,4.88,25,5,4.88,25,5,5.33,25,5,4.88,25,3,6.5,5.3.9.A./5.3.9.B.,non compliant vehicle,, -,Non-Reducible Loads,Picker Truck Tractors,Semi-Trailers - Hiboys/Expandos,X,X,5,4.4,25,5,4.4,25,5,5.33,25,5,4.4,25,3,6.5,5.3.9.A./5.3.9.B.,,, -,Non-Reducible Loads,Picker Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,5,4.4,25,5,4.4,25,5,5.33,25,5,4.4,25,3,6.5,5.3.9.A./5.3.9.B.,,, -X,Non-Reducible Loads,Picker Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,5,4.88,25,5,4.88,25,5,5.33,25,5,4.88,25,3,6.5,5.3.9.A./5.3.9.B.,,, -,Non-Reducible Loads,Picker Truck Tractors,Semi-Trailers - Steering Trailers,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,3,6.5,,,, -X,Non-Reducible Loads,Picker Truck Tractors,Semi-Trailers - Wheelers,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,3,6.5,,,, -,Non-Reducible Loads,Picker Truck Tractors,Semi-Trailers - Wide Wheelers,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,3,6.5,,,, -,Non-Reducible Loads,Picker Truck Tractors,Semi-Trailers with Crane,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,3,6.5,,,, -,Non-Reducible Loads,Picker Truck Tractors,Steering Trailers - Manned,X,X,5,4.88,40,5,4.88,40,5,5.33,40,5,4.88,40,3,6.5,,,, -,Non-Reducible Loads,Picker Truck Tractors,Steering Trailers - Self/Remote,X,X,5,4.88,36,5,4.88,36,5,5.33,36,5,4.88,36,3,6.5,,,, -X,Non-Reducible Loads,Truck Tractors,Platform Trailers,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Non-Reducible Loads,Truck Tractors,Semi-Trailers,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Non-Reducible Loads,Truck Tractors,Semi-Trailers - A-Trains and C-Trains,,,5,4.4,26,5,4.4,26,5,5.33,26,5,4.4,26,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Non-Reducible Loads,Truck Tractors,Semi-Trailers - B-Trains,,,5,4.4,27.5,5,4.4,27.5,5,5.33,27.5,5,4.4,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Non-Reducible Loads,Truck Tractors,Semi-Trailers - Hiboys/Expandos,X,X,5,4.4,27.5,5,4.4,27.5,5,5.33,27.5,5,4.4,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Non-Reducible Loads,Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,5,4.4,27.5,5,4.4,27.5,5,5.33,27.5,5,4.4,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Non-Reducible Loads,Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -X,Non-Reducible Loads,Truck Tractors,Semi-Trailers - Steering Trailers,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Non-Reducible Loads,Truck Tractors,Semi-Trailers - Wheelers,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Non-Reducible Loads,Truck Tractors,Semi-Trailers - Wide Wheelers,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Non-Reducible Loads,Truck Tractors,Semi-Trailers with Crane,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Non-Reducible Loads,Truck Tractors,Steering Trailers - Manned,X,X,5,4.88,40,5,4.88,40,5,5.33,40,5,4.88,40,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Non-Reducible Loads,Truck Tractors,Steering Trailers - Self/Remote,X,X,5,4.88,36,5,4.88,36,5,5.33,36,5,4.88,36,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -X,Non-Reducible Loads,Truck Tractors - Stinger Steered,Semi-Trailers,,,2.6,4.88,25,2.6,4.88,25,2.6,5.33,25,2.6,4.88,25,1,1.2,4.2.7.A.2/4.2.7.B.B/ 5.3.11,,, -,Non-Reducible Loads,Truck Tractors - Stinger Steered,Semi-Trailers - Stinger Steered Automobile Transporters,,,2.6,4.88,25,2.6,4.88,25,2.6,5.33,25,2.6,4.88,25,1,1.2,4.2.7.A.2/4.2.7.B.B/ 5.3.11,,, -,Non-Reducible Loads,Trucks,Dollies,,,5,4.88,25,5,4.88,25,5,5.33,25,5,4.88,25,1,6.5,4.2.7.A.2/4.2.7.B.B/ 5.3.11,,, -,Non-Reducible Loads,Trucks,Full Trailers,,,5,4.88,25,5,4.88,25,5,5.33,25,5,4.88,25,1,6.5,4.2.7.B.G,,, -,Non-Reducible Loads,Trucks,None,,,5,4.88,16,5,4.88,16,5,5.33,16,5,4.88,16,1,6.5,4.2.7.B.G,,, -,Non-Reducible Loads,Trucks,Pony Trailers,,,5,4.88,25,5,4.88,25,5,5.33,25,5,4.88,25,1,6.5,4.2.7.B.G,,, -,Oil Field Equipment,Oil and Gas - Bed Trucks,Expando Semi-Trailers,X,X,2.6,4.3,27.5,2.6,4.3,27.5,2.6,4.3,27.5,2.6,4.3,27.5,3,6.5,5.3.8.C.,,, -,Oil Field Equipment,Oil and Gas - Bed Trucks,None,,,3.3,4.3,14,3.3,4.3,14,3.3,4.3,14,3.3,4.3,14,1,5,5.3.8.A.i)/ii),,, -,Oil Field Equipment,Oil and Gas - Bed Trucks,Oil and Gas - Oversize Oilfield Flat Deck Semi-Trailers,X,X,3.3,4.3,23,3.3,4.3,23,3.3,4.3,23,3.3,4.3,23,3,6.5,5.3.8.B.,,, -,Oil Field Equipment,Oil and Gas - Oilfield Sows,None,,,3.2,4.3,15,3.2,4.3,15,3.2,4.3,15,3.2,4.3,15,1,5,5.3.8.D.,,, -,Oil Field Equipment,Oil and Gas - Oilfield Sows,Semi-Trailers - Hiboys/Flat Decks,X,X,3.2,4.3,25,3.2,4.3,25,3.2,4.3,25,3.2,4.3,25,3,6.5,5.3.8.E.,,, -,Oil Field Equipment,Oil and Gas - Service Rigs,None,,,3.8,4.3,15,3.8,4.3,15,3.8,4.3,15,3.8,4.3,15,10,6.5,5.3.8.F.,,, -,Oil Field Equipment,Oil and Gas - Service Rigs,Pony Trailers,,,3.8,4.3,23,3.8,4.3,23,3.8,4.3,23,3.8,4.3,23,10,6.5,5.3.8.F.i),,, -x,Oil Field Equipment,"Oil and Gas - Service Rigs and Rathole Augers Only Equipped with Heavy Front Projected Crane (must exceed 14,000 kg tare weight)",None,,,2.9,4.15,15.5,2.9,4.15,15.5,2.9,4.15,15.5,2.9,4.15,15.5,10,6.5,5.3.8.F.,,, -x,Oil Field Equipment,"Oil and Gas - Service Rigs and Rathole Augers Only Equipped with Heavy Front Projected Crane (must exceed 14,000 kg tare weight)",Pony Trailers,,,2.9,4.15,23,2.9,4.15,23,2.9,4.15,23,2.9,4.15,23,10,6.5,5.3.8.F.i),,, -,Oil Field Equipment,Truck Tractors,Oil and Gas - Oversize Oilfield Flat Deck Semi-Trailers,X,X,3.3,4.3,23,3.3,4.3,23,3.3,4.3,23,3.3,4.3,23,3,6.5,5.3.8.B.,,, -,Park Model Homes,Trucks,Dollies,,,4.4,4.88,31.5,4.4,4.88,31.5,4.4,5.33,31.5,4.4,4.88,31.5,3.0,6.9,4.3.4,,, -,Park Model Homes,Trucks,Float Trailers,,,4.4,4.88,31.5,4.4,4.88,31.5,4.4,5.33,31.5,4.4,4.88,31.5,3.0,6.9,4.3.4,,, -,Park Model Homes,Trucks,Pony Trailers,,,4.4,4.88,31.5,4.4,4.88,31.5,4.4,5.33,31.5,4.4,4.88,31.5,3.0,6.9,4.3.4,,, -,"Pipe And Steel Products (Rebar, Pilings, Reinforcing Steel, Etc.)",Truck Tractors,Semi-Trailers - Hiboys/Expandos,X,X,3.2,4.3,31,3.2,4.3,31,3.2,4.3,31,3.2,4.3,31,3,6.5,4.2.5.A.ii)/4.2.7.A.14,,, -,"Pipe And Steel Products (Rebar, Pilings, Reinforcing Steel, Etc.)",Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,4.3,27.5,3.2,4.3,27.5,3,6.5,4.2.5.A.ii),,, -,"Pipe And Steel Products (Rebar, Pilings, Reinforcing Steel, Etc.)",Truck Tractors,Semi-Trailers - Steering Trailers,X,X,3.2,4.3,36,3.2,4.3,36,3.2,4.3,36,3.2,4.3,36,3,6.5,4.2.7.B.H,,, -X,"Pipe And Steel Products (Rebar, Pilings, Reinforcing Steel, Etc.)",Truck Tractors,Steering Trailers - Manned,X,X,3.2,4.3,40,3.2,4.3,40,3.2,4.3,40,3.2,4.3,40,3,6.5,4.2.7.B.H,,, -,Reducible Loads,Truck Tractors,Semi-Trailers - Logging,,,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Reducible Loads,Picker Truck Tractors,Semi-Trailers,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Reducible Loads,Picker Truck Tractors,Semi-Trailers - Hiboys/Expandos,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Reducible Loads,Picker Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Reducible Loads,Picker Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -X,Reducible Loads,Truck Tractors,Platform Trailers,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Reducible Loads,Truck Tractors,Semi-Trailers,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Reducible Loads,Truck Tractors,Semi-Trailers - A-Trains and C-Trains,,,3.2,4.3,26,3.2,4.3,26,3.2,5.33,26,3.2,4.3,26,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Reducible Loads,Truck Tractors,Semi-Trailers - B-Trains,,,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Reducible Loads,Truck Tractors,Semi-Trailers - Hiboys/Expandos,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Reducible Loads,Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Reducible Loads,Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Reducible Loads,Truck Tractors,Semi-Trailers - Steering Trailers,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -X,Reducible Loads,Truck Tractors,Semi-Trailers - Wheelers,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -X,Reducible Loads,Truck Tractors,Semi-Trailers - Wide Wheelers,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Reducible Loads,Truck Tractors,Semi-Trailers with Crane,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -X,Reducible Loads,Truck Tractors,Steering Trailers - Manned,X,X,3.2,4.3,40,3.2,4.3,40,3.2,5.33,40,3.2,4.3,40,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Reducible Loads,Truck Tractors,Steering Trailers - Self/Remote,X,X,3.2,4.3,36,3.2,4.3,36,3.2,5.33,36,3.2,4.3,36,3,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Reducible Loads,Truck Tractors - Stinger Steered,Semi-Trailers,,,2.6,4.3,25,2.6,4.3,25,2.6,5.33,25,2.6,4.3,25,1,1.2,4.2.4/4.2.5i)/4.2.6,,, -,Reducible Loads,Truck Tractors - Stinger Steered,Semi-Trailers - Stinger Steered Automobile Transporters,,,2.6,4.3,25,2.6,4.3,25,2.6,5.33,25,2.6,4.3,25,1,1.2,4.2.4/4.2.5i)/4.2.6,,, -,Reducible Loads,Trucks,Dollies,,,3.2,4.3,25,3.2,4.3,25,3.2,4.4,25,3.2,4.3,25,1,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Reducible Loads,Trucks,Full Trailers,,,3.2,4.3,25,3.2,4.3,25,3.2,4.4,25,3.2,4.3,25,1,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Reducible Loads,Trucks,None,,,3.2,4.3,16,3.2,4.3,16,3.2,4.4,16,3.2,4.3,16,1,6.5,4.2.4/4.2.5i)/4.2.6,,, -,Reducible Loads,Trucks,Pony Trailers,,,3.2,4.3,25,3.2,4.3,25,3.2,4.4,25,3.2,4.3,25,1,6.5,4.2.4/4.2.5i)/4.2.6,,, -X,Scraper on Dollies,Truck Tractors,Dollies,X,,3.2,4.3,25,3.2,4.3,25,3.2,4.4,25,3.2,4.3,25,1,1,5.3.10.B.,,, -,Tandem Jeep/Pole Trailer Loaded on Logging Truck,Truck Tractors,None,,,2.9,4.3,12.5,2.9,4.3,12.5,2.9,4.3,12.5,2.9,4.3,12.5,1,5,4.2.7.A.6/4.5.6.C.,,, -,Tandem Jeep/Pole Trailer Loaded on Logging Truck,Trucks,None,,,2.9,4.3,12.5,2.9,4.3,12.5,2.9,4.3,12.5,2.9,4.3,12.5,1,5,4.2.7.A.6/4.5.6.C.,,, -,Tow Trucks And Disabled Vehicles,Tow Vehicles,None,,,2.6,4.3,27.5,2.6,4.3,27.5,2.6,4.3,27.5,2.6,4.3,27.5,1,1,5.3.14,,, -,Tri-Axle or Quad Axle Full Trailer Loaded on Logging Truck,Truck Tractors,None,,,2.6,4.3,13.5,2.6,4.3,13.5,2.6,4.3,13.5,2.6,4.3,13.5,1,5,4.2.7.A.6/4.5.6.D.,,, -,Tri-Axle or Quad Axle Full Trailer Loaded on Logging Truck,Trucks,None,,,2.6,4.3,13.5,2.6,4.3,13.5,2.6,4.3,13.5,2.6,4.3,13.5,1,5,4.2.7.A.6/4.5.6.D.,,, -,"Wood Chips, Residuals",Truck Tractors,Semi-Trailers - B-Trains,,,2.6,4.45,27.5,2.6,4.45,27.5,2.6,4.45,27.5,2.6,4.45,27.5,1,1,4.2.7.A.16/4.5.4,,, diff --git a/policy-engine/src/_examples/_debug-helper.ts b/policy-engine/src/_examples/_debug-helper.ts deleted file mode 100644 index 9431db5c8..000000000 --- a/policy-engine/src/_examples/_debug-helper.ts +++ /dev/null @@ -1,75 +0,0 @@ -import { Policy } from 'onroute-policy-engine'; -import { completePolicyConfig } from '../_test/policy-config/complete-in-progress.sample'; - -function start() { - const policy: Policy = new Policy(completePolicyConfig); - console.log(JSON.stringify(policy.policyDefinition)); - /* - - console.log('***ALL COMMODITIES***'); - const allCommodities = policy.getCommodities(); - console.log( - JSON.stringify(Array.from(allCommodities.entries()), null, ' '), - ); - - console.log('***COMMODITIES FOR STOS***'); - const stosCommodities = policy.getCommodities('STOS'); - console.log( - JSON.stringify(Array.from(stosCommodities.entries()), null, ' '), - ); - - console.log('***POWER UNITS PERMITTABLE FOR STOS AND EMPTY COMMODITY***'); - const puTypesEmpty = policy.getPermittablePowerUnitTypes('STOS', 'EMPTYXX'); - console.log(JSON.stringify(Array.from(puTypesEmpty.entries()), null, ' ')); - - console.log( - '***POWER UNITS PERMITTABLE FOR STOS AND BRIDGE BEAMS COMMODITY***', - ); - const puTypesBridgeBeams = policy.getPermittablePowerUnitTypes( - 'STOS', - 'BRGBEAM', - ); - console.log( - JSON.stringify(Array.from(puTypesBridgeBeams.entries()), null, ' '), - ); - - console.log( - '***PERMITTABLE NEXT VEHICLES WITH EMPTY CONFIGURATION, STOS AND EMPTY***', - ); - const vehicleTypes1 = policy.getNextPermittableVehicles( - 'STOS', - 'EMPTYXX', - [], - ); - console.log(JSON.stringify(Array.from(vehicleTypes1.entries()), null, ' ')); - - console.log( - '***PERMITTABLE NEXT VEHICLES WITH TRUCK TRACTOR AND JEEP, STOS AND EMPTY***', - ); - const vehicleTypes2 = policy.getNextPermittableVehicles('STOS', 'EMPTYXX', [ - 'TRKTRAC', - 'JEEPSRG', - ]); - console.log(JSON.stringify(Array.from(vehicleTypes2.entries()), null, ' ')); - - console.log( - '***MAX SIZE FOR TRUCK TRACTOR, JEEP, HIBOEXP, STOS AND EMPTYXX***', - ); - const sizeDimension = policy.getSizeDimension('STOS', 'EMPTYXX', ['TRKTRAC', 'JEEPSRG', 'HIBOEXP']); - console.log(JSON.stringify(sizeDimension, null, ' ')); - - console.log( - '***MAX SIZE FOR TRUCK TRACTOR, JEEP, HIBOEXP, STOS AND EMPTYXX IN PEACE***', - ); - const sizeDimensionPeace = policy.getSizeDimension('STOS', 'EMPTYXX', ['TRKTRAC', 'JEEPSRG', 'HIBOEXP'], ['PCE']); - console.log(JSON.stringify(sizeDimensionPeace, null, ' ')); - - console.log( - '***MAX SIZE FOR TRUCK TRACTOR, JEEP, HIBOEXP, STOS AND EMPTYXX IN PEACE,BC DEFAULT***', - ); - const sizeDimensionPeaceBC = policy.getSizeDimension('STOS', 'EMPTYXX', ['TRKTRAC', 'JEEPSRG', 'HIBOEXP'], ['PCE','BCD']); - console.log(JSON.stringify(sizeDimensionPeaceBC, null, ' ')); - */ -} - -start(); diff --git a/policy-engine/src/_examples/calculate-cost.ts b/policy-engine/src/_examples/calculate-cost.ts deleted file mode 100644 index 809395471..000000000 --- a/policy-engine/src/_examples/calculate-cost.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { Policy } from 'onroute-policy-engine'; -import { PermitAppInfo } from 'onroute-policy-engine/enum'; -import { masterPolicyConfig } from '../_test/policy-config/master.sample'; -import { validTros30Day } from '../_test/permit-app/valid-tros-30day'; -import dayjs from 'dayjs'; - -async function start() { - const policy: Policy = new Policy(masterPolicyConfig); - const today = dayjs(); - - // Set startDate to today - validTros30Day.permitData.startDate = today.format( - PermitAppInfo.PermitDateFormat.toString(), - ); - // Set duration to full year (365 or 366 depending on leap year) - const oneYearDuration: number = today.add(1, 'year').diff(today, 'day'); - console.log('Setting TROS permit duration to ' + oneYearDuration); - validTros30Day.permitData.permitDuration = oneYearDuration; - - const validationResult2 = await policy.validate(validTros30Day); - console.log(JSON.stringify(validationResult2, null, ' ')); -} - -start(); diff --git a/policy-engine/src/_examples/get-policy-details.ts b/policy-engine/src/_examples/get-policy-details.ts deleted file mode 100644 index 9065c208d..000000000 --- a/policy-engine/src/_examples/get-policy-details.ts +++ /dev/null @@ -1,114 +0,0 @@ -import { Policy } from 'onroute-policy-engine'; -import { completePolicyConfig } from '../_test/policy-config/complete-in-progress.sample'; - -function start() { - const policy: Policy = new Policy(completePolicyConfig); - - console.log('***ALL PERMIT TYPES***'); - const allPermitTypes = policy.getPermitTypes(); - console.log( - JSON.stringify(Array.from(allPermitTypes.entries()), null, ' '), - ); - - console.log('***ALL COMMODITIES***'); - const allCommodities = policy.getCommodities(); - console.log( - JSON.stringify(Array.from(allCommodities.entries()), null, ' '), - ); - - console.log('***COMMODITIES FOR STOS***'); - const stosCommodities = policy.getCommodities('STOS'); - console.log( - JSON.stringify(Array.from(stosCommodities.entries()), null, ' '), - ); - - console.log('***POWER UNITS PERMITTABLE FOR STOS AND EMPTY COMMODITY***'); - const puTypesEmpty = policy.getPermittablePowerUnitTypes('STOS', 'EMPTYXX'); - console.log(JSON.stringify(Array.from(puTypesEmpty.entries()), null, ' ')); - - console.log( - '***POWER UNITS PERMITTABLE FOR STOS AND BRIDGE BEAMS COMMODITY***', - ); - const puTypesBridgeBeams = policy.getPermittablePowerUnitTypes( - 'STOS', - 'BRGBEAM', - ); - console.log( - JSON.stringify(Array.from(puTypesBridgeBeams.entries()), null, ' '), - ); - - console.log( - '***PERMITTABLE NEXT VEHICLES WITH EMPTY CONFIGURATION, STOS AND EMPTY***', - ); - const vehicleTypes1 = policy.getNextPermittableVehicles( - 'STOS', - 'EMPTYXX', - [], - ); - console.log(JSON.stringify(Array.from(vehicleTypes1.entries()), null, ' ')); - - console.log( - '***PERMITTABLE NEXT VEHICLES WITH TRUCK TRACTOR AND JEEP, STOS AND EMPTY***', - ); - const vehicleTypes2 = policy.getNextPermittableVehicles('STOS', 'EMPTYXX', [ - 'TRKTRAC', - 'JEEPSRG', - ]); - console.log(JSON.stringify(Array.from(vehicleTypes2.entries()), null, ' ')); - - console.log( - '***MAX SIZE FOR TRUCK TRACTOR, JEEP, HIBOEXP, STOS AND EMPTYXX***', - ); - const sizeDimension = policy.getSizeDimension('STOS', 'EMPTYXX', [ - 'TRKTRAC', - 'JEEPSRG', - 'HIBOEXP', - ]); - console.log(JSON.stringify(sizeDimension, null, ' ')); - - console.log( - '***MAX SIZE FOR TRUCK TRACTOR, JEEP, HIBOEXP, STOS AND EMPTYXX IN PEACE***', - ); - const sizeDimensionPeace = policy.getSizeDimension( - 'STOS', - 'EMPTYXX', - ['TRKTRAC', 'JEEPSRG', 'HIBOEXP'], - ['PCE'], - ); - console.log(JSON.stringify(sizeDimensionPeace, null, ' ')); - - console.log( - '***MAX SIZE FOR TRUCK TRACTOR, JEEP, HIBOEXP, STOS AND EMPTYXX IN PEACE,BC DEFAULT***', - ); - const sizeDimensionPeaceBC = policy.getSizeDimension( - 'STOS', - 'EMPTYXX', - ['TRKTRAC', 'JEEPSRG', 'HIBOEXP'], - ['PCE', 'BCD'], - ); - console.log(JSON.stringify(sizeDimensionPeaceBC, null, ' ')); - - console.log( - '***MAX SIZE FOR TRUCK TRACTOR, JEEP, STWHELR, STOS AND EMPTYXX IN BC DEFAULT***', - ); - const sizeDimensionBC = policy.getSizeDimension( - 'STOS', - 'EMPTYXX', - ['TRKTRAC', 'JEEPSRG', 'STWHELR'], - ['BCD'], - ); - console.log(JSON.stringify(sizeDimensionBC, null, ' ')); - - console.log( - '***MAX SIZE FOR TRUCK TRACTOR, JEEP, STWHELR, STOS AND EMPTYXX IN PEACE***', - ); - const sizeDimensionStwhelrPce = policy.getSizeDimension( - 'STOS', - 'EMPTYXX', - ['TRKTRAC', 'JEEPSRG', 'STWHELR'], - ['PCE'], - ); - console.log(JSON.stringify(sizeDimensionStwhelrPce, null, ' ')); -} - -start(); diff --git a/policy-engine/src/_examples/os-dimensions.csv b/policy-engine/src/_examples/os-dimensions.csv deleted file mode 100644 index 5472487ef..000000000 --- a/policy-engine/src/_examples/os-dimensions.csv +++ /dev/null @@ -1,213 +0,0 @@ -No Self Issue,Commodity,Power Unit,Trailer,Allow Jeep,Allow Booster,LMN - Width,LMN - Height,LMN - Length,KTN - Width,KTN - Height,KTN - Length,PCE - Width,PCE - Height,PCE - Length,BCD - Width,BCD - Height,BCD - Length,ORBC FP,ORBC RP,"Policy Ref" -,"Auto Carrier, Campers And Boats (Stinger Steered Transporters Only)",Truck Tractors - Stinger Steered,Semi-Trailers - Stinger Steered Automobile Transporters,,,,4.3,25,,4.3,25,,4.88,25,,4.4,25,1,1.2,4.2.7.A.1/4.2.7.B.A/ 5.3.11 -,Bridge Beams,Truck Tractors,Pole Trailers,X,,,,31,,,31,,,31,,,31,3,6.5,4.5.5 -,Bridge Beams,Truck Tractors,Semi-Trailers,,,,,31,,,31,,,31,,,31,3,6.5,4.2.7.A.13 -,Bridge Beams,Truck Tractors,Steering Dolly,,,,,36,,,36,,,36,,,36,3,6.5,5.3.12.F -,Brushcutters (Peace Only),Truck Tractors,Semi-Trailers,,,,,,,,,4.57,5.33,,,,,3,6.5,4.2.7.B.B -,Brushcutters (Peace Only),Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,,,,,,,4.57,5.33,,,,,3,6.5,4.2.7.B.B -,Brushcutters (Peace Only),Trucks,None,,,,,,,,,4.57,5.33,,,,,,,4.2.7.B.B -,Brushcutters (Peace Only),Trucks,Pony Trailers,,,,,,,,,3.8,5.33,,,,,,,4.2.7.B.B/5.3.12.G -,Doglogger/Sjostrum Trailers (decked),Truck Tractors,None,,,,,13.5,,,13.5,,,13.5,,,13.5,,5,4.2.7.A.13 -,Empty,Truck Tractors,Logging Trailer - Overwidth Bunks,,,3.2,,,3.2,,,3.2,,,3.2,,,0,0,5.3.5.B -,Empty,Picker Truck Tractors,Oil and Gas - Oversize Oilfield Flat Deck Semi-Trailers,X,X,3.2,4.15,23,3.2,4.15,23,3.2,4.15,23,3.2,4.15,23,3,6.5,5.3.8.B. -X,Empty,Picker Truck Tractors,Platform Trailers,X,X,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,,, -,Empty,Picker Truck Tractors,Semi-Trailers - Hiboys/Expandos,X,X,,4.15,,,4.15,,,4.15,27.5,,4.15,25,3,6.5,5.3.9.A./5.3.9.B. -X,Empty,Picker Truck Tractors,Semi-Trailers - Wheelers,X,X,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,,, -X,Empty,Picker Truck Tractors,Semi-Trailers - Wide Wheelers,X,X,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,,, -,Empty,Picker Truck,Pony Trailers,,,2.6,4.15,23,2.6,4.15,23,2.6,4.15,23,2.6,4.15,23,,,5.3.9.A -X,Empty,Truck Tractors,Platform Trailers,X,X,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,,, -,Empty,Truck Tractors,Semi-Trailers - Hiboys/Expandos,X,X,,4.15,31,,,31,,,31,,,31,3,6.5,5.3.12.C. -,Empty,Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,,4.15,27.5,,,27.5,,,27.5,,,27.5,3,6.5,5.3.12.B. -,Empty,Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,3.2,4.15,31,3.2,,31,3.2,,31,3.2,,31,3,6.5,5.3.12.A. -X,Empty,Truck Tractors,Semi-Trailers - Wheelers,X,X,3.2,4.15,27.5,3.2,4.88,27.5,3.2,5.33,27.5,3.2,4.88,27.5,,, -X,Empty,Truck Tractors,Semi-Trailers - Wide Wheelers,X,X,3.2,4.15,27.5,3.2,4.88,27.5,3.2,5.33,27.5,3.2,4.88,27.5,,, -,Fixed Equipment,Truck Tractors,Fixed Equipment - Conveyors (Semi-Trailers),X,X,3.8,4.72,,3.8,4.72,,3.8,5.33,,3.8,4.72,,4,9.5,5.3.4.F. -,Fixed Equipment,Truck Tractors,Fixed Equipment - Counter Flow Asphalt Drum Mixers,X,X,3.8,4.72,,3.8,4.72,,3.8,5.33,,3.8,4.72,,3,6.5,5.3.4.D. -,Fixed Equipment,Truck Tractors,Fixed Equipment - Portable Asphalt Baghouses,X,X,4.26,4.72,,4.26,4.72,,4.26,5.33,,4.26,4.72,,3,6.5,5.3.4.E. -,Fixed Equipment,Truck Tractors,Fixed Equipment - Semi-Trailers,X,X,3.8,4.72,,3.8,4.72,,3.8,5.33,,3.8,4.72,,3,6.5,5.3.4.A. -X,Fixed Equipment,Truck Tractors,Fixed Equipment - Wheeler Semi-Trailers,X,X,3.8,4.72,,3.8,4.72,,3.8,5.33,,3.8,4.72,,3,6.5,5.3.4.B. -,Fixed Equipment,Trucks,Fixed Equipment - Conveyors (Pony Trailers),,,3.2,4.3,,3.2,4.3,,3.2,4.3,,3.2,4.3,,4,9.5,5.3.4.F. -,Fixed Equipment,Trucks,Fixed Equipment - Counter Flow Asphalt Drum Mixers,,,3.8,4.72,,3.8,4.72,,3.8,5.33,,3.8,4.72,,3,6.5,5.3.4.D. -,Fixed Equipment,Trucks,Fixed Equipment - Pony Trailers,,,3.2,4.3,,3.2,4.3,,3.2,4.3,,3.2,4.3,,,4,5.3.4.C. -,Fixed Equipment,Trucks,Fixed Equipment - Portable Asphalt Baghouses,,,4.26,4.72,,4.26,4.72,,4.26,4.72,,4.26,4.72,,3,6.5,5.3.4.E. -,Garbage Bins,Trucks,Full Trailers,,,,,,,,,,,,,,,3,6.5,4.2.7.A.7 -,Garbage Bins,Trucks,None,,,,,,,,,,,,,,,3,6.5,4.2.7.A.7 -,Garbage Bins,Trucks,Pony Trailers,,,,,,,,,,,,,,,3,6.5,4.2.7.A.7 -,"Grader, Tractor Blades, Buckets",Fixed Equipment - Trucks/Graders etc.,None,,,4.4,,,4.4,,,4.4,,,4.4,,,,,4.2.7.B.C -,Hay Bales (Round) Peace River Only,Truck Tractors,Semi-Trailers - A-Trains and C-Trains,,,3.5,4.3,26,3.5,4.3,26,3.84,4.8,26,3.5,4.3,26,,,4.2.7.A.8/4.4.2 -,Hay Bales (Round) Peace River Only,Truck Tractors,Semi-Trailers - B-Trains,,,3.5,4.3,,3.5,4.3,,3.84,4.8,,3.5,4.3,,,,4.2.7.A.8/4.4.2 -,Hay Bales (Round) Peace River Only,Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,3.5,4.3,,3.5,4.3,,3.84,4.8,,3.5,4.3,,3,6.5,4.2.7.A.8/4.4.2 -,Hay Bales (Round) Peace River Only,Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,3.5,4.3,,3.5,4.3,,3.84,4.8,,3.5,4.3,,3,6.5,4.2.7.A.8/4.4.2 -,Hay Bales (Round) Peace River Only,Trucks,Full Trailers,,,3.5,4.3,,3.5,4.3,,3.84,4.8,,3.5,4.3,,,4,4.2.7.A.8/4.4.2 -,Hay Bales (Round) Peace River Only,Trucks,None,,,3.5,4.3,,3.5,4.3,,3.84,4.8,,3.5,4.3,,,,4.2.7.A.8/4.4.2 -,Hay Bales (Round) Peace River Only,Trucks,Pony Trailers,,,3.5,4.3,,3.5,4.3,,3.84,4.8,,3.5,4.3,,,4,4.2.7.A.8/4.4.2 -,Hay Bales Large Rectangular,Truck Tractors,Semi-Trailers - A-Trains and C-Trains,,,3.05,4.3,26,3.05,4.3,26,3.05,4.8,26,3.05,4.3,26,,,4.2.7.A.8/4.4.1 -,Hay Bales Large Rectangular,Truck Tractors,Semi-Trailers - B-Trains,,,3.05,4.3,27.5,3.05,4.3,27.5,3.05,4.8,27.5,3.05,4.3,27.5,,,4.2.7.A.8/4.4.1 -,Hay Bales Large Rectangular,Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,3.05,4.3,,3.05,4.3,,3.05,4.8,,3.05,4.4,,3,6.5,4.2.7.A.8/4.4.1 -,Hay Bales Large Rectangular,Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,3.05,4.3,,3.05,4.3,,3.05,4.8,,3.05,4.3,,3,6.5,4.2.7.A.8/4.4.1 -,Hay Bales Large Rectangular,Trucks,Full Trailers,,,3.05,4.3,,3.05,4.3,,3.05,4.8,,3.05,4.3,,,4,4.2.7.A.8/4.4.1 -,Hay Bales Large Rectangular,Trucks,None,,,3.05,4.3,,3.05,4.3,,3.05,4.8,,3.05,4.3,,,,4.2.7.A.8/4.4.1 -,Hay Bales Large Rectangular,Trucks,Pony Trailers,,,3.05,4.3,,3.05,4.3,,3.05,4.8,,3.05,4.3,,,4,4.2.7.A.8/4.4.1 -,Hay Bales Round,Truck Tractors,Semi-Trailers - A-Trains and C-Trains,,,3.5,4.3,26,3.5,4.3,26,3.84,4.8,26,3.5,4.3,26,,,4.2.7.A.8/4.4.2 -,Hay Bales Round,Truck Tractors,Semi-Trailers - B-Trains,,,3.5,4.3,27.5,3.5,4.3,27.5,3.84,4.8,27.5,3.5,4.3,27.5,,,4.2.7.A.8/4.4.2 -,Hay Bales Round,Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,3.5,4.3,,3.5,4.3,,3.84,4.8,,3.5,4.3,,3,6.5,4.2.7.A.8/4.4.2 -,Hay Bales Round,Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,3.5,4.3,,3.5,4.3,,3.84,4.8,,3.5,4.3,,3,6.5,4.2.7.A.8/4.4.2 -,Hay Bales Round,Trucks,Full Trailers,,,3.5,4.3,,3.5,4.3,,3.84,4.8,,3.5,4.3,,,4,4.2.7.A.8/4.4.2 -,Hay Bales Round,Trucks,None,,,3.5,4.3,,3.5,4.3,,3.84,4.8,,3.5,4.3,,,,4.2.7.A.8/4.4.2 -,Hay Bales Round,Trucks,Pony Trailers,,,3.5,4.3,,3.5,4.3,,3.84,4.8,,3.5,4.3,,,4,4.2.7.A.8/4.4.2 -,Hay Bales Small Rectangular,Truck Tractors,Semi-Trailers - A-Trains and C-Trains,,,3.05,4.3,26,3.05,4.3,26,3.05,4.8,26,3.05,4.3,26,,,4.2.7.A.8/4.4.1 -,Hay Bales Small Rectangular,Truck Tractors,Semi-Trailers - B-Trains,,,3.05,4.3,27.5,3.05,4.3,27.5,3.05,4.8,27.5,3.05,4.3,27.5,,,4.2.7.A.8/4.4.1 -,Hay Bales Small Rectangular,Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,3.05,4.3,,3.05,4.3,,3.05,4.8,,3.05,4.3,,3,6.5,4.2.7.A.8/4.4.1 -,Hay Bales Small Rectangular,Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,3.05,4.3,,3.05,4.3,,3.05,4.8,,3.05,4.3,,3,6.5,4.2.7.A.8/4.4.1 -,Hay Bales Small Rectangular,Trucks,Full Trailers,,,3.05,4.3,,3.05,4.3,,3.05,4.8,,3.05,4.3,,,4,4.2.7.A.8/4.4.1 -,Hay Bales Small Rectangular,Trucks,None,,,3.05,4.3,,3.05,4.3,,3.05,4.8,,3.05,4.3,,,,4.2.7.A.8/4.4.1 -,Hay Bales Small Rectangular,Trucks,Pony Trailers,,,3.05,4.3,,3.05,4.3,,3.05,4.8,,3.05,4.3,,,4,4.2.7.A.8/4.4.1 -,Hayrack Semi-Trailer with a Folded Chassis/Empty Piggyback,Truck Tractors,Semi-Trailers - Logging,,,,,,,,,,,,,,,,5,4.5.6.E. -,Intermodal Containers,Truck Tractors,Semi-Trailers - A-Trains and C-Trains,,,,4.4,26,,4.4,26,,4.4,26,,4.4,26,,,4.2.7.A.9 -,Intermodal Containers,Truck Tractors,Semi-Trailers - B-Trains,,,,4.4,27.5,,4.4,27.5,,4.4,27.5,,4.4,27.5,,,4.2.7.A.9 -,Intermodal Containers,Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,,4.4,,,4.4,,,4.4,,,4.4,,,,4.2.7.A.9 -,Intermodal Containers,Trucks,None,,,,4.4,,,4.4,,,4.4,,,4.4,,,,4.2.7.A.9 -,Intermodal Containers without Sides,Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,4.4,4.72,,4.4,4.72,,4.4,4.72,,4.4,4.72,,,,4.2.7.10/4.2.7.B.D. -,Laminated Beams,Truck Tractors,Pole Trailers,X,X,,,40,,,40,,,40,,,40,3,6.5,4.5.3 -,Laminated Beams,Truck Tractors,Semi-Trailers - Hiboys/Expandos,X,X,,,31,,,31,,,31,,,31,3,6.5,4.5.3 -X,"Logs, Poles And Boomsticks (Over 20.1)",Truck Tractors,"Logging Trailer - Full Trailers, Tri Axle, Quad Axle",,,,,40,,,40,,,40,,,40,10,10,4.5.2 -X,"Logs, Poles And Boomsticks (Over 20.1)",Truck Tractors,Pole Trailers,X,X,,,40,,,40,,,40,,,40,8,9,4.5.2 -,"Logs, Poles And Boomsticks (Over 20.1)",Truck Tractors,Steering Trailers - Manned,X,X,,,40,,,40,,,40,,,40,10,10,5.3.12.F -,"Logs, Poles And Boomsticks (Over 20.1)",Truck Tractors,Steering Trailers - Self/Remote,X,X,,,36,,,36,,,36,,,36,10,10,5.3.12.F -,"Logs, Poles And Boomsticks (Up To 20.1)",Truck Tractors,Full Trailers,,,2.9,,27.5,2.9,,27.5,2.9,,27.5,2.9,,27.5,3,6.5,4.5.1 -,"Logs, Poles And Boomsticks (Up To 20.1)",Truck Tractors,Legacy Logging Trailer Combinations,,,2.6,,25,2.6,,25,2.6,,25,2.6,,25,3,5,5.3.7.C. -,"Logs, Poles And Boomsticks (Up To 20.1)",Truck Tractors,Pole Trailers,X,,2.9,,27.5,2.9,,27.5,2.9,,27.5,2.9,,27.5,3,6.5,4.5.1 -,"Logs, Poles And Boomsticks (Up To 20.1)",Truck Tractors,Semi-Trailers - A-Trains and C-Trains,,,2.9,,26,2.9,,26,2.9,,26,2.9,,26,3,6.5,4.5.1 -,"Logs, Poles And Boomsticks (Up To 20.1)",Truck Tractors,Semi-Trailers - B-Trains,,,2.9,,27.5,2.9,,27.5,2.9,,27.5,2.9,,27.5,3,6.5,4.5.1 -,"Logs, Poles And Boomsticks (Up To 20.1)",Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,,,2.9,,25,2.9,,25,2.9,,25,2.9,,25,3,6.5,4.5.1 -,"Logs, Poles And Boomsticks (Up To 20.1)",Truck Tractors,Semi-Trailers - Logging,,,2.9,,25,2.9,,25,2.9,,25,2.9,,25,3,6.5,4.5.1 -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW)",Truck Tractors,Semi-Trailers,X,X,,4.88,,,4.88,,,5.33,36,,4.88,31.5,3.0,7.5,4.3.5 -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW)",Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,,4.88,,,4.88,,,5.33,36,,4.88,31.5,3.0,7.5,4.3.5 -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW)",Trucks,Dollies,,,,4.88,,,4.88,,,5.33,36,,4.88,31.5,1,6.9,4.3 -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW)",Trucks,Float Trailers,,,,4.57,,,4.57,,,5.33,36,,4.57,31.5,1,6.9,4.3.5.F -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW)",Trucks,Pony Trailers,,,,4.88,,,4.88,,,5.33,36,,4.88,31.5,1,6.9,4.3 -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW)",Truck Tractors,Semi-Trailers,X,X,,4.88,,,4.88,,,5.33,36,,4.88,31.5,3.0,7.5,4.3.5 -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW)",Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,,4.88,,,4.88,,,5.33,36,,4.88,31.5,3.0,7.5,4.3.5 -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW)",Trucks,Dollies,,,,4.88,,,4.88,,,5.33,36,,4.88,31.5,1,6.9,4.3 -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW)",Trucks,Float Trailers,,,,4.57,,,4.57,,,5.33,36,,4.57,31.5,1,6.9,4.3.5.F -X,"Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW)",Trucks,Pony Trailers,,,,4.88,,,4.88,,,5.33,36,,4.88,31.5,1,6.9,4.3 -,None,Concrete Pumper Trucks,None,,X,,,15.5,,,15.5,,,15.5,,,15.5,3,6.5,5.3.2.A. -,None,"Cranes, Rubber-Tired Loaders, Firetrucks - All Terrain",Dollies,,,3.8,4.3,25,3.8,4.3,25,3.8,4.3,25,3.8,4.3,25,10,6.5,5.3.3.B. -,None,"Cranes, Rubber-Tired Loaders, Firetrucks - All Terrain",None,,,3.8,4.3,14,3.8,4.3,14,3.8,4.3,15,3.8,4.3,14,10,6.5,5.3.3.B. -,None,"Cranes, Rubber-Tired Loaders, Firetrucks - Mobile",Dollies,,,3.8,4.3,25,3.8,4.3,25,3.8,4.3,25,3.8,4.3,25,10,6.5,5.3.3.A. -,None,"Cranes, Rubber-Tired Loaders, Firetrucks - Mobile",None,,,3.8,4.3,14,3.8,4.3,14,3.8,4.3,15,3.8,4.3,14,10,6.5,5.3.3.A. -,None,Double Decker Buses,None,,,,4.3,,,4.3,,,4.3,,,4.42,,,,5.3.1.A -,None,Fixed Equipment - Trucks/Graders etc.,Fixed Equipment - Pony Trailers,,,3.2,4.3,31,3.2,4.3,31,3.2,4.3,31,3.2,4.3,31,,4, -X,None,Fixed Equipment - Trucks/Graders etc.,None,,,3.5,4.3,,3.5,4.3,,3.5,5.33,,3.5,4.4,12.5,,,5.3.4.G. -X,None,Inter-City Bus (Pulling Pony Trailer),Pony Trailers,,,,,,,,,,,,,,,,,5.3.1.B -,None,Logging Trucks - Off-Highway,Semi-Trailers - Logging,,,4.4,,,4.4,,,4.4,,,4.4,,,3,6.5,5.3.5.A. -X,None,Long Combination Vehicles (LCV) - Rocky Mountain Doubles,Semi-Trailers,,,,,32,,,32,,,31,,,32,,,5.3.6.D. -,None,Long Combination Vehicles (LCV) - Turnpike Doubles,Semi-Trailers,,,,,41,,,41,,,41,,,41,,,5.3.6.D. -X,None,Long Wheelbase Truck Tractors Exceeding 6.2 m up to 7.25 m,Semi-Trailers,X,X,,,,,,,,,,2.6,4.15,23,,,5.3.7.A. -,None,Picker Truck Tractors,None,,,,,16,,,16,,,16,2.6,4.15,16,3,,5.3.9 -,None,Picker Truck Tractors,Semi-Trailers with Crane,X,X,,,25,,,25,,,25,2.6,4.15,25,3,6.5,5.3.9 -,None,Picker Truck Tractors,Steering Trailers - Manned,X,X,5,4.88,40,5,4.88,40,5,5.33,40,5,4.88,40,,, -,None,Picker Truck Tractors,Steering Trailers - Self/Remote,X,X,5,4.88,36,5,4.88,36,5,5.33,36,5,4.88,36,,, -,None,Scrapers,None,,,,,,,,,,,,,,12.5,,,5.3.10.A.1) -,None,Truck Tractors,Fixed Equipment - Conveyors (Semi-Trailers),X,X,3.8,4.72,31,3.8,4.72,31,3.8,5.33,31,3.8,4.72,31,4,9.5, -,None,Truck Tractors,Fixed Equipment - Counter Flow Asphalt Drum Mixers,X,X,3.8,4.72,31,3.8,4.72,31,3.8,5.33,31,3.8,4.72,31,3,6.5, -X,None,Truck Tractors,Fixed Equipment - Portable Asphalt Baghouses,X,X,4.26,4.72,31,4.26,4.72,31,4.26,5.33,31,4.26,4.72,31,3,6.5, -X,None,Truck Tractors,Fixed Equipment - Semi-Trailers,X,X,3.8,4.72,31,3.8,4.72,31,3.8,5.33,31,3.8,4.72,31,3,6.5, -,None,Truck Tractors,Fixed Equipment - Wheeler Semi-Trailers,X,X,5,4.88,31,5,4.88,31,5,5.33,31,5,4.88,31,,, -X,None,Truck Tractors,Overdimensional Trailers and Semi-Trailers (For Export),,,3.65,,,3.65,,,3.65,,,3.65,,,,,5.3.12.D. -,None,Truck Tractors,Ready Mix Concrete Pump Semi-Trailers,X,X,,,,,,,,,,,,,3,6.5,5.3.2.B. -,None,Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,,4.3,,,4.3,,,5.33,,,4.3,31,3,6.5,5.3.12.B. -,None,Truck Tractors,Semi-Trailers - Insulated Vans with Reefer/Refrigeration Units,,,,4.3,,,4.3,,,4.3,,,4.3,,,,5.3.12.H. -,None,Truck Tractors,Semi-Trailers - Non-Tac Short Chassis,,,,,,,,,,,,,,,,,5.3.7.D. -,None,Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,4.3,32,3.2,4.3,27.5,3,6.5,5.3.12.A. -,None,Truck Tractors,Steering Trailers - Manned,X,X,,,40,,,40,,,40,,4.15,40,,,5.3.12.F.ii) -,None,Truck Tractors,Steering Trailers - Self/Remote,X,X,,,36,,,36,,,36,,,36,,,5.3.12.F.i) -,None,Trucks,Fixed Equipment - Conveyors (Pony Trailers),,,3.2,4.3,31,3.2,4.3,31,3.2,4.3,31,3.2,4.3,31,4,9.5, -,None,Trucks,Fixed Equipment - Pony Trailers,,,3.2,4.3,31,3.2,4.3,31,3.2,4.3,31,3.2,4.3,31,,4, -,None,Trucks,Full Trailers ,,,3.8,4.3,,3.8,4.3,,3.8,5.33,,3.8,4.3,,,6.5,5.3.12.G. -,None,Trucks,"Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW) with Attached Axles",,,,4.88,,,4.88,,,5.33,36,,4.88,31.5,1,6.9,"4.3.5.A, 4.3.5.B, 4.3.5.C" -,None,Trucks,"Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW) with Attached Axles",,,,4.88,,,4.88,,,5.33,36,,4.88,31.5,1,6.9,"4.3.5.D, 4.3.5.E" -,None,Trucks,None,,,3.2,4.3,16,3.2,4.3,16,3.2,4.4,16,3.2,4.3,16,1,6.5, -,None,Trucks,Overdimensional Trailers and Semi-Trailers (For Export),,,3.65,,,3.65,,,3.65,,,3.65,,,,,5.3.12.D. -,None,Trucks,Park Model Homes with Attached Axles,,,4.4,4.88,31.5,4.4,4.88,31.5,4.4,5.33,31.5,4.4,4.88,31.5,3.0,6.9,4.3.4 -,None,Trucks,Pony Trailers,,,3.2,4.3,,3.2,4.3,,3.2,5.33,,3.2,4.3,,,6.5,5.3.12.G. -,None,Trucks Equipped with Front or Underbody Plow Blades,None,,,3.2,,,3.2,,,3.2,,,3.2,,,,,5.3.13 -X,Non-Reducible Loads,Truck Tractors,Semi-Trailers - Logging,,,3.8,4.15,27.5,3.8,4.15,27.5,3.8,4.15,27.5,3.8,4.15,27.5,,,5.3.9.A./5.3.9.B. -X,Non-Reducible Loads,Picker Truck Tractors,Oil and Gas - Oversize Oilfield Flat Deck Semi-Trailers,X,X,3.3,4.3,23,3.3,4.3,23,3.3,4.3,23,3.3,4.3,23,3,6.5,5.3.8.B. -,Non-Reducible Loads,Picker Truck Tractors,Semi-Trailers,X,X,5,4.88,25,5,4.88,25,5,5.33,25,5,4.88,25,3,,5.3.9.A./5.3.9.B. -,Non-Reducible Loads,Picker Truck Tractors,Semi-Trailers - Hiboys/Expandos,X,X,5,4.4,25,5,4.4,25,5,5.33,25,5,4.4,25,3,,5.3.9.A./5.3.9.B. -,Non-Reducible Loads,Picker Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,5,4.4,25,5,4.4,25,5,5.33,25,5,4.4,25,3,,5.3.9.A./5.3.9.B. -X,Non-Reducible Loads,Picker Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,5,4.88,25,5,4.88,25,5,5.33,25,5,4.88,25,3,,5.3.9.A./5.3.9.B. -,Non-Reducible Loads,Picker Truck Tractors,Semi-Trailers - Steering Trailers,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,,, -X,Non-Reducible Loads,Picker Truck Tractors,Semi-Trailers - Wheelers,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,,, -,Non-Reducible Loads,Picker Truck Tractors,Semi-Trailers - Wide Wheelers,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,,, -,Non-Reducible Loads,Picker Truck Tractors,Semi-Trailers with Crane,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,,, -,Non-Reducible Loads,Picker Truck Tractors,Steering Trailers - Manned,X,X,5,4.88,40,5,4.88,40,5,5.33,40,5,4.88,40,,, -,Non-Reducible Loads,Picker Truck Tractors,Steering Trailers - Self/Remote,X,X,5,4.88,36,5,4.88,36,5,5.33,36,5,4.88,36,,, -X,Non-Reducible Loads,Truck Tractors,Platform Trailers,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,,,4.2.4/4.2.5i)/4.2.6 -,Non-Reducible Loads,Truck Tractors,Semi-Trailers,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,,,4.2.4/4.2.5i)/4.2.6 -,Non-Reducible Loads,Truck Tractors,Semi-Trailers - A-Trains and C-Trains,,,5,4.4,26,5,4.4,26,5,5.33,26,5,4.4,26,,,4.2.4/4.2.5i)/4.2.6 -,Non-Reducible Loads,Truck Tractors,Semi-Trailers - B-Trains,,,5,4.4,27.5,5,4.4,27.5,5,5.33,27.5,5,4.4,27.5,,,4.2.4/4.2.5i)/4.2.6 -,Non-Reducible Loads,Truck Tractors,Semi-Trailers - Hiboys/Expandos,X,X,5,4.4,27.5,5,4.4,27.5,5,5.33,27.5,5,4.4,27.5,,,4.2.4/4.2.5i)/4.2.6 -,Non-Reducible Loads,Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,5,4.4,27.5,5,4.4,27.5,5,5.33,27.5,5,4.4,27.5,,,4.2.4/4.2.5i)/4.2.6 -,Non-Reducible Loads,Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,,,4.2.4/4.2.5i)/4.2.6 -X,Non-Reducible Loads,Truck Tractors,Semi-Trailers - Steering Trailers,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,,,4.2.4/4.2.5i)/4.2.6 -,Non-Reducible Loads,Truck Tractors,Semi-Trailers - Wheelers,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,,,4.2.4/4.2.5i)/4.2.6 -,Non-Reducible Loads,Truck Tractors,Semi-Trailers - Wide Wheelers,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,,,4.2.4/4.2.5i)/4.2.6 -,Non-Reducible Loads,Truck Tractors,Semi-Trailers with Crane,X,X,5,4.88,27.5,5,4.88,27.5,5,5.33,27.5,5,4.88,27.5,,,4.2.4/4.2.5i)/4.2.6 -,Non-Reducible Loads,Truck Tractors,Steering Trailers - Manned,X,X,5,4.88,40,5,4.88,40,5,5.33,40,5,4.88,40,,,4.2.4/4.2.5i)/4.2.6 -,Non-Reducible Loads,Truck Tractors,Steering Trailers - Self/Remote,X,X,5,4.88,36,5,4.88,36,5,5.33,36,5,4.88,36,,,4.2.4/4.2.5i)/4.2.6 -X,Non-Reducible Loads,Truck Tractors - Stinger Steered,Semi-Trailers,,,,4.88,25,,4.88,25,,5.33,25,,4.88,25,1,1.2,4.2.7.A.2/4.2.7.B.B/ 5.3.11 -,Non-Reducible Loads,Truck Tractors - Stinger Steered,Semi-Trailers - Stinger Steered Automobile Transporters,,,,4.88,25,,4.88,25,,5.33,25,,4.88,25,1,1.2,4.2.7.A.2/4.2.7.B.B/ 5.3.11 -,Non-Reducible Loads,Trucks,Dollies,,,5,4.88,25,5,4.88,25,5,5.33,25,5,4.88,25,1,6.5,4.2.7.A.2/4.2.7.B.B/ 5.3.11 -,Non-Reducible Loads,Trucks,Full Trailers,,,5,4.88,25,5,4.88,25,5,5.33,25,5,4.88,25,1,6.5,4.2.7.B.G -,Non-Reducible Loads,Trucks,None,,,5,4.88,16,5,4.88,16,5,5.33,16,5,4.88,16,1,6.5,4.2.7.B.G -,Non-Reducible Loads,Trucks,Pony Trailers,,,5,4.88,25,5,4.88,25,5,5.33,25,5,4.88,25,1,6.5,4.2.7.B.G -,Oil Field Equipment,Oil and Gas - Bed Trucks,Expando Semi-Trailers,X,X,,4.3,27.5,,4.3,27.5,,4.3,27.5,,4.3,27.5,3,6.5,5.3.8.C. -,Oil Field Equipment,Oil and Gas - Bed Trucks,None,,,3.3,4.3,14,3.3,4.3,14,3.3,4.3,14,3.3,4.3,14,,5,5.3.8.A.i)/ii) -,Oil Field Equipment,Oil and Gas - Bed Trucks,Oil and Gas - Oversize Oilfield Flat Deck Semi-Trailers,X,X,3.3,4.3,23,3.3,4.3,23,3.3,4.3,23,3.3,4.3,23,3,6.5,5.3.8.B. -,Oil Field Equipment,Oil and Gas - Oilfield Sows,None,,,3.2,4.3,15,3.2,4.3,15,3.2,4.3,15,3.2,4.3,15,,5,5.3.8.D. -,Oil Field Equipment,Oil and Gas - Oilfield Sows,Semi-Trailers - Hiboys/Flat Decks,X,X,3.2,4.3,25,3.2,4.3,25,3.2,4.3,25,3.2,4.3,25,3,6.5,5.3.8.E. -,Oil Field Equipment,Oil and Gas - Service Rigs,None,,,3.8,4.3,15,3.8,4.3,15,3.8,4.3,15,3.8,4.3,15,10,6.5,5.3.8.F. -,Oil Field Equipment,Oil and Gas - Service Rigs,Pony Trailers,,,3.8,4.3,23,3.8,4.3,23,3.8,4.3,23,3.8,4.3,23,10,6.5,5.3.8.F.i) -x,Oil Field Equipment,"Oil and Gas - Service Rigs and Rathole Augers Only Equipped with Heavy Front Projected Crane (must exceed 14,000 kg tare weight)",None,,,2.9,4.15,15.5,2.9,4.15,15.5,2.9,4.15,15.5,2.9,4.15,15.5,10,6.5,5.3.8.F. -x,Oil Field Equipment,"Oil and Gas - Service Rigs and Rathole Augers Only Equipped with Heavy Front Projected Crane (must exceed 14,000 kg tare weight)",Pony Trailers,,,2.9,4.15,23,2.9,4.15,23,2.9,4.15,23,2.9,4.15,23,10,6.5,5.3.8.F.i) -,Oil Field Equipment,Truck Tractors,Oil and Gas - Oversize Oilfield Flat Deck Semi-Trailers,X,X,3.3,4.3,23,3.3,4.3,23,3.3,4.3,23,3.3,4.3,23,3,6.5,5.3.8.B. -,Park Model Homes,Trucks,Dollies,,,4.4,4.88,31.5,4.4,4.88,31.5,4.4,5.33,31.5,4.4,4.88,31.5,3.0,6.9,4.3.4 -,Park Model Homes,Trucks,Float Trailers,,,4.4,4.88,31.5,4.4,4.88,31.5,4.4,5.33,31.5,4.4,4.88,31.5,3.0,6.9,4.3.4 -,Park Model Homes,Trucks,Pony Trailers,,,4.4,4.88,31.5,4.4,4.88,31.5,4.4,5.33,31.5,4.4,4.88,31.5,3.0,6.9,4.3.4 -,"Pipe And Steel Products (Rebar, Pilings, Reinforcing Steel, Etc.)",Truck Tractors,Semi-Trailers - Hiboys/Expandos,X,X,3.2,4.3,31,3.2,4.3,31,3.2,4.3,31,3.2,4.3,31,3,6.5,4.2.5.A.ii)/4.2.7.A.14 -,"Pipe And Steel Products (Rebar, Pilings, Reinforcing Steel, Etc.)",Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,4.3,27.5,3.2,4.3,27.5,3,6.5,4.2.5.A.ii) -,"Pipe And Steel Products (Rebar, Pilings, Reinforcing Steel, Etc.)",Truck Tractors,Semi-Trailers - Steering Trailers,X,X,3.2,4.3,36,3.2,4.3,36,3.2,4.3,36,3.2,4.3,36,3,6.5,4.2.7.B.H -X,"Pipe And Steel Products (Rebar, Pilings, Reinforcing Steel, Etc.)",Truck Tractors,Steering Trailers - Manned,X,X,3.2,4.3,40,3.2,4.3,40,3.2,4.3,40,3.2,4.3,40,3,6.5,4.2.7.B.H -,Reducible Loads,Truck Tractors,Semi-Trailers - Logging,,,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,3.2,4.15,27.5,,,4.2.4/4.2.5i)/4.2.6 -,Reducible Loads,Picker Truck Tractors,Semi-Trailers,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,3,,4.2.4/4.2.5i)/4.2.6 -,Reducible Loads,Picker Truck Tractors,Semi-Trailers - Hiboys/Expandos,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,3,,4.2.4/4.2.5i)/4.2.6 -,Reducible Loads,Picker Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,3,,4.2.4/4.2.5i)/4.2.6 -,Reducible Loads,Picker Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,3,,4.2.4/4.2.5i)/4.2.6 -X,Reducible Loads,Truck Tractors,Platform Trailers,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,,,4.2.4/4.2.5i)/4.2.6 -,Reducible Loads,Truck Tractors,Semi-Trailers,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,,,4.2.4/4.2.5i)/4.2.6 -,Reducible Loads,Truck Tractors,Semi-Trailers - A-Trains and C-Trains,,,3.2,4.3,26,3.2,4.3,26,3.2,5.33,26,3.2,4.3,26,,,4.2.4/4.2.5i)/4.2.6 -,Reducible Loads,Truck Tractors,Semi-Trailers - B-Trains,,,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,,,4.2.4/4.2.5i)/4.2.6 -,Reducible Loads,Truck Tractors,Semi-Trailers - Hiboys/Expandos,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,,,4.2.4/4.2.5i)/4.2.6 -,Reducible Loads,Truck Tractors,Semi-Trailers - Hiboys/Flat Decks,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,,,4.2.4/4.2.5i)/4.2.6 -,Reducible Loads,Truck Tractors,"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.",X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,,,4.2.4/4.2.5i)/4.2.6 -,Reducible Loads,Truck Tractors,Semi-Trailers - Steering Trailers,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,,,4.2.4/4.2.5i)/4.2.6 -X,Reducible Loads,Truck Tractors,Semi-Trailers - Wheelers,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,,,4.2.4/4.2.5i)/4.2.6 -X,Reducible Loads,Truck Tractors,Semi-Trailers - Wide Wheelers,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,,,4.2.4/4.2.5i)/4.2.6 -,Reducible Loads,Truck Tractors,Semi-Trailers with Crane,X,X,3.2,4.3,27.5,3.2,4.3,27.5,3.2,5.33,27.5,3.2,4.3,27.5,,,4.2.4/4.2.5i)/4.2.6 -X,Reducible Loads,Truck Tractors,Steering Trailers - Manned,X,X,3.2,4.3,40,3.2,4.3,40,3.2,5.33,40,3.2,4.3,40,,,4.2.4/4.2.5i)/4.2.6 -,Reducible Loads,Truck Tractors,Steering Trailers - Self/Remote,X,X,3.2,4.3,36,3.2,4.3,36,3.2,5.33,36,3.2,4.3,36,,,4.2.4/4.2.5i)/4.2.6 -,Reducible Loads,Truck Tractors - Stinger Steered,Semi-Trailers,,,,4.3,25,,4.3,25,,5.33,25,,4.3,25,1,1.2,4.2.4/4.2.5i)/4.2.6 -,Reducible Loads,Truck Tractors - Stinger Steered,Semi-Trailers - Stinger Steered Automobile Transporters,,,,4.3,25,,4.3,25,,5.33,25,,4.3,25,1,1.2,4.2.4/4.2.5i)/4.2.6 -,Reducible Loads,Trucks,Dollies,,,3.2,4.3,25,3.2,4.3,25,3.2,4.4,25,3.2,4.3,25,1,6.5,4.2.4/4.2.5i)/4.2.6 -,Reducible Loads,Trucks,Full Trailers,,,3.2,4.3,25,3.2,4.3,25,3.2,4.4,25,3.2,4.3,25,1,6.5,4.2.4/4.2.5i)/4.2.6 -,Reducible Loads,Trucks,None,,,3.2,4.3,16,3.2,4.3,16,3.2,4.4,16,3.2,4.3,16,1,6.5,4.2.4/4.2.5i)/4.2.6 -,Reducible Loads,Trucks,Pony Trailers,,,3.2,4.3,25,3.2,4.3,25,3.2,4.4,25,3.2,4.3,25,1,6.5,4.2.4/4.2.5i)/4.2.6 -X,Scraper on Dollies,Truck Tractors,Dollies,X,,3.2,4.3,25,3.2,4.3,25,3.2,4.4,25,3.2,4.3,25,,,5.3.10.B. -,Tandem Jeep/Pole Trailer Loaded on Logging Truck,Truck Tractors,None,,,2.9,4.3,,2.9,4.3,,2.9,4.3,,2.9,4.3,,,5,4.2.7.A.6/4.5.6.C. -,Tandem Jeep/Pole Trailer Loaded on Logging Truck,Trucks,None,,,2.9,4.3,,2.9,4.3,,2.9,4.3,,2.9,4.3,,,5,4.2.7.A.6/4.5.6.C. -,Tow Trucks And Disabled Vehicles,Tow Vehicles,None,,,,4.3,27.5,,4.3,27.5,,4.3,27.5,,4.3,27.5,,,5.3.14 -,Tri-Axle or Quad Axle Full Trailer Loaded on Logging Truck,Truck Tractors,None,,,,4.3,13.5,,4.3,13.5,,4.3,13.5,,4.3,13.5,,5,4.2.7.A.6/4.5.6.D. -,Tri-Axle or Quad Axle Full Trailer Loaded on Logging Truck,Trucks,None,,,,4.3,13.5,,4.3,13.5,,4.3,13.5,,4.3,13.5,,5,4.2.7.A.6/4.5.6.D. -,"Wood Chips, Residuals",Truck Tractors,Semi-Trailers - B-Trains,,,,4.45,27.5,,4.45,27.5,,4.45,27.5,,4.45,27.5,,,4.2.7.A.16/4.5.4 diff --git a/policy-engine/src/_examples/output-os-as-csv.ts b/policy-engine/src/_examples/output-os-as-csv.ts deleted file mode 100644 index 1d8222ca4..000000000 --- a/policy-engine/src/_examples/output-os-as-csv.ts +++ /dev/null @@ -1,126 +0,0 @@ -import { completePolicyConfig } from '../_test/policy-config/complete-in-progress.sample'; -import { Policy } from '../policy-engine'; -import { TrailerSize } from '../types'; -import { toCsv } from '@iwsio/json-csv-core'; - -// json-csv-core options object -const options = { - fields: [ - { name: 'noSelfIssue', label: 'No Self Issue', transform: (v: boolean) => v ? 'X' : '' }, - { name: 'commodity', label: 'Commodity' }, - { name: 'powerUnit', label: 'Power Unit' }, - { name: 'trailer', label: 'Trailer' }, - { name: 'jeep', label: 'Allow Jeep', transform: (v: boolean) => v ? 'X' : '' }, - { name: 'booster', label: 'Allow Booster', transform: (v: boolean) => v ? 'X' : '' }, - { name: 'lmn.width', label: 'LMN - Width' }, - { name: 'lmn.height', label: 'LMN - Height' }, - { name: 'lmn.length', label: 'LMN - Length' }, - { name: 'ktn.width', label: 'KTN - Width' }, - { name: 'ktn.height', label: 'KTN - Height' }, - { name: 'ktn.length', label: 'KTN - Length' }, - { name: 'pce.width', label: 'PCE - Width' }, - { name: 'pce.height', label: 'PCE - Height' }, - { name: 'pce.length', label: 'PCE - Length' }, - { name: 'bcd.width', label: 'BCD - Width' }, - { name: 'bcd.height', label: 'BCD - Height' }, - { name: 'bcd.length', label: 'BCD - Length' }, - { name: 'fp', label: 'ORBC FP' }, - { name: 'rp', label: 'ORBC RP' }, - ], -}; - -/** - * Converts the size dimensions stored in the complete policy json to csv - * format matching the format used by business SMEs to verify the size - * dimensions match official policy. - * @param pol Policy with the size dimension set to convert - * @returns CSV string matching input size dimension set format - */ -function sizeDimensionSestToCsv( - pol: Policy, -): string | null { - const sizeDimensionSet: Array = []; - - pol.policyDefinition.commodities.forEach((commodity) => { - const commodityName = commodity.name; - commodity.size?.powerUnits?.forEach((powerUnit) => { - const powerUnitName = pol.getPowerUnitTypes().get(powerUnit.type); - powerUnit.trailers.forEach((trailer) => { - const trailerName = pol.getTrailerTypes().get(trailer.type); - - let bcDefaultDimensions; - if (trailer.sizeDimensions && trailer.sizeDimensions.length > 0) { - const dim = trailer.sizeDimensions[0]; - bcDefaultDimensions = { - bcd: { - width: dim.w, - height: dim.h, - length: dim.l, - }, - fp: dim.fp, - rp: dim.rp, - } - } - - let dimensionSetEntry = { - noSelfIssue: !trailer.selfIssue, - commodity: commodityName, - powerUnit: powerUnitName, - trailer: trailerName, - jeep: trailer.jeep, - booster: trailer.booster, - lmn: getDimensionsForRegion(trailer, 'LMN'), - ktn: getDimensionsForRegion(trailer, 'KTN'), - pce: getDimensionsForRegion(trailer, 'PCE'), - ...bcDefaultDimensions, - }; - - sizeDimensionSet.push(dimensionSetEntry); - }); - }); - }); - - const csvString = toCsv(sizeDimensionSet, options); - return csvString; -} - -/** - * Extracts the dimensions for the trailer as it applies to the supplied - * region, supplying BC Default values if no region configuration is available. - * @param trailer Trailer size dimensions for the region - * @param dimRegion Region the size dimensions are for - must match a region - * id as stored in the policy configuration JSON - * @returns object with width, height, and length for policy specific to the - * region. Defaults to width, height, and length for bc default if no specific - * region values are configured for the trailer. - */ -function getDimensionsForRegion(trailer: TrailerSize, dimRegion: string): any { - if (trailer.sizeDimensions && trailer.sizeDimensions.length > 0) { - const dim = trailer.sizeDimensions[0]; - if (dim.regions && dim.regions.length > 0) { - const region = dim.regions.find((r) => r.region == dimRegion); - if (region) { - return { - width: region.w ?? dim.w, - height: region.h ?? dim.h, - length: region.l ?? dim.l, - } - } - } - - // Use BC Default if region not configured - return { - width: dim.w, - height: dim.h, - length: dim.l, - } - } - - // No dimensions in the input, return nothing - return null; -} - -const policy = new Policy(completePolicyConfig); -const csv = sizeDimensionSestToCsv(policy); - -console.log(csv); \ No newline at end of file diff --git a/policy-engine/src/_examples/update-os-from-csv.ts b/policy-engine/src/_examples/update-os-from-csv.ts deleted file mode 100644 index b61e795bf..000000000 --- a/policy-engine/src/_examples/update-os-from-csv.ts +++ /dev/null @@ -1,171 +0,0 @@ -import * as fs from 'fs'; -import { parse } from 'csv-parse'; -import { completePolicyConfig } from '../_test/policy-config/complete-in-progress.sample'; -import { Policy } from '../policy-engine'; -import { getIdFromName } from '../helper/lists.helper'; -import { RegionSizeOverride, SizeDimension, TrailerSize } from '../types'; - -type DimensionEntry = { - commodity: string; - powerUnit: string; - trailer: TrailerSize; -}; - -enum ColumnNumbers { - NoSelfIssue = 0, - Commodity = 1, - PowerUnit = 2, - Trailer = 3, - AllowJeep = 4, - AllowBooster = 5, - FirstWidth = 6, - DefaultWidth = 15, - FrontProjection = 18, - RearProjection = 19, -} - -function csvRowToObject( - row: Array, - pol: Policy, -): DimensionEntry | null { - const commodityId = getIdFromName( - pol.policyDefinition.commodities, - row[ColumnNumbers.Commodity], - ); - const puId = getIdFromName( - pol.policyDefinition.vehicleTypes.powerUnitTypes, - row[ColumnNumbers.PowerUnit].trim(), - ); - const trId = getIdFromName( - pol.policyDefinition.vehicleTypes.trailerTypes, - row[ColumnNumbers.Trailer].trim(), - ); - let entryObject: DimensionEntry | null = null; - if (commodityId && puId && trId) { - entryObject = { - commodity: commodityId, - powerUnit: puId, - trailer: { - type: trId, - jeep: row[ColumnNumbers.AllowJeep] == 'X' || row[ColumnNumbers.AllowJeep] == 'x', - booster: row[ColumnNumbers.AllowBooster] == 'X' || row[ColumnNumbers.AllowBooster] == 'x', - selfIssue: row[ColumnNumbers.NoSelfIssue] != 'X' && row[ColumnNumbers.NoSelfIssue] != 'x', - }, - }; - - const sizeDimension: SizeDimension = {}; - - const fp = parseFloat(row[ColumnNumbers.FrontProjection]); - const rp = parseFloat(row[ColumnNumbers.RearProjection]); - if (!isNaN(fp)) { - sizeDimension.fp = fp; - } - if (!isNaN(rp)) { - sizeDimension.rp = rp; - } - - // Populate the BC Default dimensions - const bcWidth = parseFloat(row[ColumnNumbers.DefaultWidth]); - const bcHeight = parseFloat(row[ColumnNumbers.DefaultWidth + 1]); - const bcLength = parseFloat(row[ColumnNumbers.DefaultWidth + 2]); - if (!isNaN(bcWidth)) sizeDimension.w = bcWidth; - if (!isNaN(bcHeight)) sizeDimension.h = bcHeight; - if (!isNaN(bcLength)) sizeDimension.l = bcLength; - - const regionIds: Array = ['LMN', 'KTN', 'PCE']; - // Populate the 3 region dimensions - for (let i = 0; i < regionIds.length; i++) { - const w = parseFloat(row[ColumnNumbers.FirstWidth + i * 3]); - const h = parseFloat(row[ColumnNumbers.FirstWidth + 1 + i * 3]); - const l = parseFloat(row[ColumnNumbers.FirstWidth + 2 + i * 3]); - if ( - (isNaN(w) || w == sizeDimension.w) && - (isNaN(h) || h == sizeDimension.h) && - (isNaN(l) || l == sizeDimension.l) - ) { - // All values for this region are empty or are the - // same as the BC default values. In this case do not - // include the region in the configuration at all - continue; - } - - if (!sizeDimension.regions) { - sizeDimension.regions = []; - } - - const regionOverride: RegionSizeOverride = { region: regionIds[i] }; - if (!isNaN(w) && w != sizeDimension.w) regionOverride.w = w; - if (!isNaN(h) && h != sizeDimension.h) regionOverride.h = h; - if (!isNaN(l) && l != sizeDimension.l) regionOverride.l = l; - sizeDimension.regions.push(regionOverride); - } - - entryObject.trailer.sizeDimensions = []; - entryObject.trailer.sizeDimensions.push(sizeDimension); - - return entryObject; - } else { - console.log( - `No entry in policy config for commodity '${row[ColumnNumbers.Commodity]}' and/or power unit '${row[ColumnNumbers.PowerUnit]}' and/or trailer '${row[ColumnNumbers.Trailer]}'`, - ); - return null; - } -} - -const policy = new Policy(completePolicyConfig); -policy.policyDefinition.commodities.forEach((c) => { - // Remove each size property from the commodity, will - // be replaced wholesale with the new size. If the configuration - // is not present in the new input, it should be deleted. - if (c.size) delete c.size; -}); - -function processCsvRow(row: any) { - const dimensionEntry = csvRowToObject(row, policy); - if (dimensionEntry) { - const commodity = policy.getCommodityDefinition(dimensionEntry.commodity); - if (commodity) { - // Update the list of power units - if (!commodity.size) { - commodity.size = { powerUnits: [] }; - } - - // Get or create power unit entry - let powerUnit = commodity.size.powerUnits?.find( - (pu) => pu.type == dimensionEntry.powerUnit, - ); - if (!powerUnit) { - // We don't have this power unit yet, create it - powerUnit = { - type: dimensionEntry.powerUnit, - trailers: [], - }; - commodity.size.powerUnits?.push(powerUnit); - } - - const trailer = powerUnit.trailers.find( - (tr) => tr.type == dimensionEntry.trailer.type, - ); - if (!trailer) { - // Create the trailer in configuration - powerUnit.trailers.push(dimensionEntry.trailer); - } else { - console.log( - `*** Duplicate trailer '${trailer.type}' in input for power unit '${powerUnit.type}'`, - ); - } - } - } -} - -fs.createReadStream('./Single Trip Oversize Dimension Set.csv') - .pipe(parse({ delimiter: ',', from_line: 3 })) - .on('data', function (row) { - processCsvRow(row); - }) - .on('end', function () { - console.log( - JSON.stringify(policy.policyDefinition.commodities, null, ' '), - ); - //console.log(JSON.stringify(policy.policyDefinition)); - }); diff --git a/policy-engine/src/_examples/validate-invalid-tros.ts b/policy-engine/src/_examples/validate-invalid-tros.ts deleted file mode 100644 index df493bc29..000000000 --- a/policy-engine/src/_examples/validate-invalid-tros.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { Policy } from 'onroute-policy-engine'; -import { PermitAppInfo } from 'onroute-policy-engine/enum'; -import { masterPolicyConfig } from '../_test/policy-config/master.sample'; -import { validTros30Day } from '../_test/permit-app/valid-tros-30day'; -import dayjs from 'dayjs'; - -async function start() { - const policy: Policy = new Policy(masterPolicyConfig); - - // Set startDate to today - validTros30Day.permitData.startDate = dayjs().format( - PermitAppInfo.PermitDateFormat.toString(), - ); - - // Set duration to 31 days (an invalid duration) - validTros30Day.permitData.permitDuration = 31; - - const validationResult2 = await policy.validate(validTros30Day); - console.log(JSON.stringify(validationResult2, null, ' ')); -} - -start(); diff --git a/policy-engine/src/_examples/validate-stos.ts b/policy-engine/src/_examples/validate-stos.ts deleted file mode 100644 index d948dd2dd..000000000 --- a/policy-engine/src/_examples/validate-stos.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { Policy } from 'onroute-policy-engine'; -import { PermitAppInfo } from 'onroute-policy-engine/enum'; -import { completePolicyConfig } from '../_test/policy-config/complete-in-progress.sample'; -import { testStos } from '../_test/permit-app/test-stos'; -import dayjs from 'dayjs'; - -async function start() { - const policy: Policy = new Policy(completePolicyConfig); - - // Set startDate to today - testStos.permitData.startDate = dayjs().format( - PermitAppInfo.PermitDateFormat.toString(), - ); - - const validationResult2 = await policy.validate(testStos); - console.log(JSON.stringify(validationResult2, null, ' ')); -} - -start(); diff --git a/policy-engine/src/_examples/validate-tros.ts b/policy-engine/src/_examples/validate-tros.ts deleted file mode 100644 index 6dd4df833..000000000 --- a/policy-engine/src/_examples/validate-tros.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { Policy } from 'onroute-policy-engine'; -import { PermitAppInfo } from 'onroute-policy-engine/enum'; -import { masterPolicyConfig } from '../_test/policy-config/master.sample'; -import { validTros30Day } from '../_test/permit-app/valid-tros-30day'; -import dayjs from 'dayjs'; - -async function start() { - const policy: Policy = new Policy(masterPolicyConfig); - - // Set startDate to today - validTros30Day.permitData.startDate = dayjs().format( - PermitAppInfo.PermitDateFormat.toString(), - ); - - const validationResult2 = await policy.validate(validTros30Day); - console.log(JSON.stringify(validationResult2, null, ' ')); -} - -start(); diff --git a/policy-engine/src/_test/permit-app/permit-application.type.ts b/policy-engine/src/_test/permit-app/permit-application.type.ts deleted file mode 100644 index 8f47ff50f..000000000 --- a/policy-engine/src/_test/permit-app/permit-application.type.ts +++ /dev/null @@ -1,99 +0,0 @@ -type PermitMailingAddress = { - addressLine1: string; - addressLine2?: string | null; - city: string; - provinceCode: string; - countryCode: string; - postalCode: string; -}; - -type PermitContactDetails = { - firstName: string; - lastName: string; - phone1: string; - phone1Extension?: string | null; - phone2?: string | null; - phone2Extension?: string | null; - email: string; - additionalEmail?: string | null; - fax?: string | null; -}; - -type PermitVehicleDetails = { - vehicleId?: string | null; - unitNumber?: string | null; - vin: string; - plate: string; - make?: string | null; - year?: number | null; - countryCode: string; - provinceCode: string; - vehicleType: string; - vehicleSubType: string; - licensedGVW?: number | null; - saveVehicle?: boolean | null; -}; - -type PermitCommodity = { - description: string; - condition: string; - conditionLink: string; - checked: boolean; - disabled: boolean; -}; - -type PermitData = { - companyName: string; - doingBusinessAs?: string; - clientNumber: string; - permitDuration: number; - commodities: Array; - contactDetails: PermitContactDetails; - mailingAddress: PermitMailingAddress; - vehicleDetails: PermitVehicleDetails; - feeSummary?: string | null; - startDate: string; - expiryDate?: string | null; - permittedCommodity?: PermittedCommodity | null; - vehicleConfiguration?: VehicleConfiguration | null; - permittedRoute?: PermittedRoute | null; - applicationNotes?: string | null; -}; - -type PermittedCommodity = { - commodityType: string; - loadDescription: string; -}; - -type VehicleInConfiguration = { - vehicleSubType: string; -}; - -type VehicleConfiguration = { - overallLength?: number; - overallWidth?: number; - overallHeight?: number; - frontProjection?: number; - rearProjection?: number; - trailers?: Array | null; -}; - -type PermittedRoute = { - manualRoute?: ManualRoute | null; - routeDetails?: string | null; -}; - -type ManualRoute = { - highwaySequence: Array; - origin: string; - destination: string; - exitPoint?: string; - totalDistance?: number; -}; - -type PermitApplication = { - permitData: PermitData; - permitType: string; -}; - -export default PermitApplication; diff --git a/policy-engine/src/_test/permit-app/test-stos.ts b/policy-engine/src/_test/permit-app/test-stos.ts deleted file mode 100644 index 8905363e8..000000000 --- a/policy-engine/src/_test/permit-app/test-stos.ts +++ /dev/null @@ -1,92 +0,0 @@ -import PermitApplication from './permit-application.type'; - -export const testStos: PermitApplication = { - permitType: 'STOS', - permitData: { - companyName: 'Sonic Delivery Services', - clientNumber: 'B3-000102-466', - permitDuration: 7, - commodities: [ - { - description: 'General Permit Conditions', - condition: 'CVSE-1000', - conditionLink: - 'https://www.th.gov.bc.ca/forms/getForm.aspx?formId=1251', - checked: true, - disabled: true, - }, - { - description: 'Permit Scope and Limitation', - condition: 'CVSE-1070', - conditionLink: - 'https://www.th.gov.bc.ca/forms/getForm.aspx?formId=1261', - checked: true, - disabled: true, - }, - ], - contactDetails: { - firstName: 'Chief', - lastName: 'Baker', - phone1: '(250) 555-1234', - phone1Extension: null, - phone2: '(250) 555-4321', - phone2Extension: null, - email: 'chief.baker@gov.bc.ca', - additionalEmail: 'baker.chief@gov.bc.ca', - fax: null, - }, - mailingAddress: { - addressLine1: '940 Blanshard', - addressLine2: null, - city: 'Victoria', - provinceCode: 'BC', - countryCode: 'CA', - postalCode: 'V8B1A2', - }, - permittedCommodity: { - commodityType: 'EMPTYXX', - loadDescription: 'empty', - }, - vehicleConfiguration: { - overallLength: 25, - overallWidth: 3, - overallHeight: 4.1, - frontProjection: 1, - rearProjection: 1, - trailers: [ - { - vehicleSubType: 'JEEPSRG', - }, - { - vehicleSubType: 'PLATFRM', - }, - ], - }, - permittedRoute: { - manualRoute: { - origin: 'Victoria, BC', - destination: 'Prince George, BC', - highwaySequence: ['1', '5'], - }, - routeDetails: 'Just driving here', - }, - vehicleDetails: { - vehicleId: '101', - unitNumber: '321', - vin: '654321', - plate: 'D654321', - make: 'Custom', - year: 2010, - countryCode: 'CA', - provinceCode: 'BC', - vehicleType: 'powerUnit', - vehicleSubType: 'TRKTRAC', - licensedGVW: 40000, - saveVehicle: false, - }, - feeSummary: '30', - startDate: '2024-04-18', - expiryDate: '2024-05-17', - applicationNotes: 'Call for credit card payment', - }, -}; diff --git a/policy-engine/src/_test/permit-app/valid-tros-30day.ts b/policy-engine/src/_test/permit-app/valid-tros-30day.ts deleted file mode 100644 index 0683c7598..000000000 --- a/policy-engine/src/_test/permit-app/valid-tros-30day.ts +++ /dev/null @@ -1,63 +0,0 @@ -import PermitApplication from './permit-application.type'; - -export const validTros30Day: PermitApplication = { - permitType: 'TROS', - permitData: { - companyName: 'Sonic Delivery Services', - clientNumber: 'B3-000102-466', - permitDuration: 30, - commodities: [ - { - description: 'General Permit Conditions', - condition: 'CVSE-1000', - conditionLink: - 'https://www.th.gov.bc.ca/forms/getForm.aspx?formId=1251', - checked: true, - disabled: true, - }, - { - description: 'Permit Scope and Limitation', - condition: 'CVSE-1070', - conditionLink: - 'https://www.th.gov.bc.ca/forms/getForm.aspx?formId=1261', - checked: true, - disabled: true, - }, - ], - contactDetails: { - firstName: 'Chief', - lastName: 'Baker', - phone1: '(250) 555-1234', - phone1Extension: null, - phone2: '(250) 555-4321', - phone2Extension: null, - email: 'chief.baker@gov.bc.ca', - additionalEmail: 'baker.chief@gov.bc.ca', - fax: null, - }, - mailingAddress: { - addressLine1: '940 Blanshard', - addressLine2: null, - city: 'Victoria', - provinceCode: 'BC', - countryCode: 'CA', - postalCode: 'V8B1A2', - }, - vehicleDetails: { - vehicleId: '101', - unitNumber: '321', - vin: '654321', - plate: 'D654321', - make: 'Custom', - year: 2010, - countryCode: 'CA', - provinceCode: 'BC', - vehicleType: 'trailer', - vehicleSubType: 'SEMITRL', - saveVehicle: false, - }, - feeSummary: '30', - startDate: '2024-04-18', - expiryDate: '2024-05-17', - }, -}; diff --git a/policy-engine/src/_test/permit-app/valid-trow-120day.ts b/policy-engine/src/_test/permit-app/valid-trow-120day.ts deleted file mode 100644 index 71f228f31..000000000 --- a/policy-engine/src/_test/permit-app/valid-trow-120day.ts +++ /dev/null @@ -1,72 +0,0 @@ -import PermitApplication from './permit-application.type'; - -export const validTrow120Day: PermitApplication = { - permitType: 'TROW', - permitData: { - companyName: 'Chief, Master', - doingBusinessAs: 'DBA test 1233', - clientNumber: 'B3-000102-187', - permitDuration: 120, - commodities: [ - { - description: 'General Permit Conditions', - condition: 'CVSE-1000', - conditionLink: - 'https://www.th.gov.bc.ca/forms/getForm.aspx?formId=1251', - checked: true, - disabled: true, - }, - { - description: 'Permit Scope and Limitation', - condition: 'CVSE-1070', - conditionLink: - 'https://www.th.gov.bc.ca/forms/getForm.aspx?formId=1261', - checked: true, - disabled: true, - }, - { - description: 'Highways and Restrictive Load Limits', - condition: 'CVSE-1011', - conditionLink: - 'https://www.th.gov.bc.ca/forms/getForm.aspx?formId=1258', - checked: true, - disabled: true, - }, - ], - contactDetails: { - firstName: 'Arbiter', - lastName: 'Flood', - phone1: '(250) 555-1234', - phone1Extension: null, - phone2: null, - phone2Extension: null, - email: 'arbiter.flood@gov.bc.ca', - additionalEmail: 'flood.arbiter@gov.bc.ca', - fax: null, - }, - mailingAddress: { - addressLine1: '1000 Main Street', - addressLine2: null, - city: 'Victoria', - provinceCode: 'BC', - countryCode: 'CA', - postalCode: 'V8V 8V8', - }, - vehicleDetails: { - vehicleId: '108', - unitNumber: '-', - vin: '898989', - plate: 'V6R4E3', - make: 'FORD', - year: 2007, - countryCode: 'US', - provinceCode: 'ME', - vehicleType: 'powerUnit', - vehicleSubType: 'GRADERS', - saveVehicle: false, - }, - feeSummary: '120', - startDate: '2024-05-15', - expiryDate: '2024-09-11', - }, -}; diff --git a/policy-engine/src/_test/policy-config/all-event-types.sample.ts b/policy-engine/src/_test/policy-config/all-event-types.sample.ts deleted file mode 100644 index f57f0ac74..000000000 --- a/policy-engine/src/_test/policy-config/all-event-types.sample.ts +++ /dev/null @@ -1,155 +0,0 @@ -import { PolicyDefinition } from '../../types/policy-definition'; - -export const allEventTypes: PolicyDefinition = { - version: '2024.03.18.001', - geographicRegions: [], - commonRules: [], - permitTypes: [ - { - id: 'TROS', - name: 'Term Oversize', - routingRequired: false, - weightDimensionRequired: false, - sizeDimensionRequired: false, - commodityRequired: false, - allowedVehicles: [ - 'trucktractor', - 'truck', - 'semi', - 'platform', - 'ogoilfieldsemi', - ], - rules: [ - { - conditions: { - not: { - fact: 'permitData', - path: '$.permitDuration', - operator: 'equal', - value: 31, - }, - }, - event: { - type: 'violation', - params: { - message: 'Violation A', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - path: '$.permitDuration', - operator: 'equal', - value: 32, - }, - }, - event: { - type: 'requirement', - params: { - message: 'Requirement A', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - path: '$.permitDuration', - operator: 'equal', - value: 33, - }, - }, - event: { - type: 'warning', - params: { - message: 'Warning A', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - path: '$.permitDuration', - operator: 'equal', - value: 34, - }, - }, - event: { - type: 'information', - params: { - message: 'Message A', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - path: '$.permitDuration', - operator: 'equal', - value: 35, - }, - }, - event: { - type: 'information', - params: { - invalid_message: 'Message B', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - path: '$.permitDuration', - operator: 'equal', - value: 35, - }, - }, - event: { - type: 'information', - }, - }, - { - conditions: { - not: { - fact: 'permitData', - path: '$.permitDuration', - operator: 'equal', - value: 36, - }, - }, - event: { - type: '__invalid', - params: { - message: 'Invalid A', - }, - }, - }, - ], - }, - ], - globalWeightDefaults: { - powerUnits: [], - trailers: [], - }, - globalSizeDefaults: { - fp: 3, - rp: 6.5, - w: 2.6, - h: 4.15, - l: 31, - }, - vehicleCategories: { - trailerCategories: [], - powerUnitCategories: [], - }, - vehicleTypes: { - powerUnitTypes: [], - trailerTypes: [], - }, - commodities: [], -}; diff --git a/policy-engine/src/_test/policy-config/complete-in-progress.sample.ts b/policy-engine/src/_test/policy-config/complete-in-progress.sample.ts deleted file mode 100644 index 1c8ee270a..000000000 --- a/policy-engine/src/_test/policy-config/complete-in-progress.sample.ts +++ /dev/null @@ -1,5859 +0,0 @@ -import { PolicyDefinition } from '../../types/policy-definition'; - -export const completePolicyConfig: PolicyDefinition = { - version: '2024.03.18.001', - geographicRegions: [ - { - id: 'LMN', - name: 'Lower Mainland', - }, - { - id: 'KTN', - name: 'Kootenay', - }, - { - id: 'PCE', - name: 'Peace', - }, - ], - rangeMatrices: [ - { - id: 'annualFeeCV', - name: 'Annual licensing fee for commercial vehicle', - matrix: [ - { min: 0, max: 500, value: 42 }, - { min: 501, max: 1000, value: 49 }, - { min: 1001, max: 1500, value: 60 }, - { min: 1501, max: 2000, value: 74 }, - { min: 2001, max: 2500, value: 85 }, - { min: 2501, max: 3000, value: 97 }, - { min: 3001, max: 3500, value: 108 }, - { min: 3501, max: 4000, value: 127 }, - { min: 4001, max: 4500, value: 147 }, - { min: 4501, max: 5000, value: 173 }, - { min: 5001, max: 5500, value: 193 }, - { min: 5501, max: 6000, value: 213 }, - { min: 6001, max: 6500, value: 230 }, - { min: 6501, max: 7000, value: 250 }, - { min: 7001, max: 7500, value: 266 }, - { min: 7501, max: 8000, value: 292 }, - { min: 8001, max: 8500, value: 320 }, - { min: 8501, max: 9000, value: 347 }, - { min: 9001, max: 9500, value: 376 }, - { min: 9501, max: 10000, value: 395 }, - { min: 10001, max: 10500, value: 416 }, - { min: 10501, max: 11000, value: 437 }, - { min: 11001, max: 11500, value: 450 }, - { min: 11501, max: 12000, value: 469 }, - { min: 12001, max: 12500, value: 488 }, - { min: 12501, max: 13000, value: 502 }, - { min: 13001, max: 13500, value: 526 }, - { min: 13501, max: 14000, value: 553 }, - { min: 14001, max: 14500, value: 580 }, - { min: 14501, max: 15000, value: 607 }, - { min: 15001, max: 15500, value: 638 }, - { min: 15501, max: 16000, value: 680 }, - { min: 16001, max: 16500, value: 721 }, - { min: 16501, max: 17000, value: 761 }, - { min: 17001, max: 17500, value: 806 }, - { min: 17501, max: 18000, value: 837 }, - { min: 18001, max: 18500, value: 861 }, - { min: 18501, max: 19000, value: 890 }, - { min: 19001, max: 19500, value: 917 }, - { min: 19501, max: 20000, value: 944 }, - { min: 20001, max: 20500, value: 977 }, - { min: 20501, max: 21000, value: 1003 }, - { min: 21001, max: 21500, value: 1030 }, - { min: 21501, max: 22000, value: 1057 }, - { min: 22001, max: 22500, value: 1084 }, - { min: 22501, max: 23000, value: 1111 }, - { min: 23001, max: 23500, value: 1140 }, - { min: 23501, max: 24000, value: 1170 }, - { min: 24001, max: 24500, value: 1199 }, - { min: 24501, max: 25000, value: 1239 }, - { min: 25001, max: 25500, value: 1285 }, - { min: 25501, max: 26000, value: 1326 }, - { min: 26001, max: 26500, value: 1367 }, - { min: 26501, max: 27000, value: 1395 }, - { min: 27001, max: 27500, value: 1424 }, - { min: 27501, max: 28000, value: 1450 }, - { min: 28001, max: 28500, value: 1479 }, - { min: 28501, max: 29000, value: 1505 }, - { min: 29001, max: 29500, value: 1534 }, - { min: 29501, max: 30000, value: 1565 }, - { min: 30001, max: 31000, value: 1591 }, - { min: 31001, max: 32000, value: 1644 }, - { min: 32001, max: 33000, value: 1696 }, - { min: 33001, max: 34000, value: 1751 }, - { min: 34001, max: 35000, value: 1805 }, - { min: 35001, max: 36000, value: 1890 }, - { min: 36001, max: 37000, value: 2018 }, - { min: 37001, max: 38000, value: 2088 }, - { min: 38001, max: 39000, value: 2159 }, - { min: 39001, max: 40000, value: 2229 }, - { min: 40001, max: 41000, value: 2300 }, - { min: 41001, max: 42000, value: 2373 }, - { min: 42001, max: 43000, value: 2445 }, - { min: 43001, max: 44000, value: 2514 }, - { min: 44001, max: 45000, value: 2585 }, - { min: 45001, max: 46000, value: 2690 }, - { min: 46001, max: 47000, value: 2799 }, - { min: 47001, max: 48000, value: 2871 }, - { min: 48001, max: 49000, value: 2940 }, - { min: 49001, max: 50000, value: 3012 }, - { min: 50001, max: 51000, value: 3061 }, - { min: 51001, max: 52000, value: 3127 }, - { min: 52001, max: 53000, value: 3192 }, - { min: 53001, max: 54000, value: 3257 }, - { min: 54001, max: 55000, value: 3322 }, - { min: 55001, max: 56000, value: 3387 }, - { min: 56001, max: 57000, value: 3452 }, - { min: 57001, max: 58000, value: 3516 }, - { min: 58001, max: 59000, value: 3581 }, - { min: 59001, max: 60000, value: 3647 }, - { min: 60001, max: 61000, value: 3710 }, - { min: 61001, max: 62000, value: 3775 }, - { min: 62001, max: 63000, value: 3840 }, - { min: 63001, max: 63500, value: 3905 }, - ], - }, - { - id: 'annualFeePassenger', - name: 'Annual licensing fee for commercial passenger vehicle', - matrix: [ - { min: 0, max: 500, value: 40 }, - { min: 501, max: 1000, value: 47 }, - { min: 1001, max: 1500, value: 57 }, - { min: 1501, max: 2000, value: 70 }, - { min: 2001, max: 2500, value: 81 }, - { min: 2501, max: 3000, value: 92 }, - { min: 3001, max: 3500, value: 103 }, - { min: 3501, max: 4000, value: 121 }, - { min: 4001, max: 4500, value: 140 }, - { min: 4501, max: 5000, value: 165 }, - { min: 5001, max: 5500, value: 184 }, - { min: 5501, max: 6000, value: 203 }, - { min: 6001, max: 6500, value: 219 }, - { min: 6501, max: 7000, value: 238 }, - { min: 7001, max: 7500, value: 253 }, - { min: 7501, max: 8000, value: 278 }, - { min: 8001, max: 8500, value: 305 }, - { min: 8501, max: 9000, value: 330 }, - { min: 9001, max: 9500, value: 358 }, - { min: 9501, max: 10000, value: 376 }, - { min: 10001, max: 10500, value: 396 }, - { min: 10501, max: 11000, value: 416 }, - { min: 11001, max: 11500, value: 429 }, - { min: 11501, max: 12000, value: 447 }, - { min: 12001, max: 12500, value: 465 }, - { min: 12501, max: 13000, value: 478 }, - { min: 13001, max: 13500, value: 501 }, - { min: 13501, max: 14000, value: 527 }, - { min: 14001, max: 14500, value: 552 }, - { min: 14501, max: 15000, value: 578 }, - { min: 15001, max: 15500, value: 608 }, - { min: 15501, max: 16000, value: 648 }, - { min: 16001, max: 16500, value: 687 }, - { min: 16501, max: 17000, value: 725 }, - { min: 17001, max: 17500, value: 768 }, - { min: 17501, max: 18000, value: 797 }, - { min: 18001, max: 18500, value: 820 }, - { min: 18501, max: 19000, value: 848 }, - { min: 19001, max: 19500, value: 873 }, - { min: 19501, max: 20000, value: 899 }, - { min: 20001, max: 20500, value: 930 }, - { min: 20501, max: 21000, value: 955 }, - { min: 21001, max: 21500, value: 981 }, - { min: 21501, max: 22000, value: 1007 }, - { min: 22001, max: 22500, value: 1032 }, - { min: 22501, max: 23000, value: 1058 }, - { min: 23001, max: 23500, value: 1086 }, - { min: 23501, max: 24000, value: 1114 }, - { min: 24001, max: 24500, value: 1142 }, - { min: 24501, max: 25000, value: 1180 }, - { min: 25001, max: 25500, value: 1224 }, - { min: 25501, max: 26000, value: 1263 }, - { min: 26001, max: 26500, value: 1302 }, - { min: 26501, max: 27000, value: 1329 }, - { min: 27001, max: 27500, value: 1356 }, - { min: 27501, max: 28000, value: 1381 }, - { min: 28001, max: 28500, value: 1409 }, - { min: 28501, max: 29000, value: 1433 }, - { min: 29001, max: 29500, value: 1461 }, - { min: 29501, max: 30000, value: 1490 }, - { min: 30001, max: 31000, value: 1516 }, - { min: 31001, max: 32000, value: 1569 }, - { min: 32001, max: 33000, value: 1621 }, - { min: 33001, max: 34000, value: 1676 }, - { min: 34001, max: 35000, value: 1730 }, - { min: 35001, max: 36000, value: 1815 }, - { min: 36001, max: 37000, value: 1943 }, - { min: 37001, max: 38000, value: 2013 }, - { min: 38001, max: 39000, value: 2084 }, - { min: 39001, max: 40000, value: 2154 }, - { min: 40001, max: 41000, value: 2225 }, - { min: 41001, max: 42000, value: 2298 }, - { min: 42001, max: 43000, value: 2370 }, - { min: 43001, max: 44000, value: 2439 }, - { min: 44001, max: 45000, value: 2510 }, - { min: 45001, max: 46000, value: 2615 }, - { min: 46001, max: 47000, value: 2724 }, - { min: 47001, max: 48000, value: 2796 }, - { min: 48001, max: 49000, value: 2865 }, - { min: 49001, max: 50000, value: 2937 }, - { min: 50001, max: 51000, value: 2986 }, - { min: 51001, max: 52000, value: 3052 }, - { min: 52001, max: 53000, value: 3117 }, - { min: 53001, max: 54000, value: 3182 }, - { min: 54001, max: 55000, value: 3247 }, - { min: 55001, max: 56000, value: 3312 }, - { min: 56001, max: 57000, value: 3377 }, - { min: 57001, max: 58000, value: 3441 }, - { min: 58001, max: 59000, value: 3506 }, - { min: 59001, max: 60000, value: 3572 }, - { min: 60001, max: 61000, value: 3635 }, - { min: 61001, max: 62000, value: 3700 }, - { min: 62001, max: 63000, value: 3765 }, - { min: 63001, max: 63500, value: 3830 }, - ], - }, - { - id: 'annualFeeIndustrial', - name: 'Annual licensing fee for an industrial machine', - matrix: [ - { min: 0, max: 2000, value: 45 }, - { min: 2001, max: 5000, value: 69 }, - { min: 5001, max: 7000, value: 110 }, - { min: 7001, max: 9000, value: 164 }, - { min: 9001, max: 11000, value: 216 }, - { min: 11001, value: 260 }, - ], - }, - { - id: 'annualFeeFarm', - name: 'Annual licensing fee for farm vehicle', - matrix: [ - { min: 0, max: 500, value: 30 }, - { min: 501, max: 1000, value: 40 }, - { min: 1001, max: 1500, value: 47 }, - { min: 1501, max: 2000, value: 55 }, - { min: 2001, max: 2500, value: 77 }, - { min: 2501, max: 3000, value: 101 }, - { min: 3001, max: 3500, value: 142 }, - { min: 3501, max: 4000, value: 181 }, - { min: 4001, max: 4500, value: 207 }, - { min: 4501, max: 5000, value: 243 }, - { min: 5001, max: 5500, value: 278 }, - { min: 5501, max: 6000, value: 322 }, - { min: 6001, max: 6500, value: 355 }, - { min: 6501, max: 7000, value: 396 }, - { min: 7001, max: 7500, value: 427 }, - { min: 7501, max: 8000, value: 473 }, - { min: 8001, max: 8500, value: 524 }, - { min: 8501, max: 9000, value: 558 }, - { min: 9001, max: 9500, value: 596 }, - { min: 9501, max: 10000, value: 633 }, - { min: 10001, max: 10500, value: 669 }, - { min: 10501, max: 11000, value: 711 }, - { min: 11001, max: 11500, value: 744 }, - { min: 11501, max: 12000, value: 784 }, - { min: 12001, max: 12500, value: 824 }, - { min: 12501, max: 13000, value: 863 }, - { min: 13001, max: 13500, value: 883 }, - { min: 13501, max: 14000, value: 899 }, - { min: 14001, max: 14500, value: 919 }, - { min: 14501, max: 15000, value: 940 }, - { min: 15001, max: 15500, value: 960 }, - { min: 15501, max: 16000, value: 979 }, - { min: 16001, max: 16500, value: 997 }, - { min: 16501, max: 17000, value: 1017 }, - { min: 17001, max: 17500, value: 1036 }, - { min: 17501, max: 18000, value: 1056 }, - { min: 18001, max: 18500, value: 1076 }, - { min: 18501, max: 19000, value: 1096 }, - { min: 19001, max: 19500, value: 1114 }, - { min: 19501, max: 20000, value: 1134 }, - { min: 20001, max: 20500, value: 1154 }, - { min: 20501, max: 21000, value: 1174 }, - { min: 21001, max: 21500, value: 1192 }, - { min: 21501, max: 22000, value: 1211 }, - { min: 22001, max: 22500, value: 1231 }, - { min: 22501, max: 23000, value: 1251 }, - { min: 23001, max: 23500, value: 1270 }, - { min: 23501, max: 24000, value: 1289 }, - { min: 24001, max: 24400, value: 1309 }, - ], - }, - ], - commonRules: [ - { - conditions: { - not: { - fact: 'permitData', - operator: 'stringMinimumLength', - value: 1, - path: '$.companyName', - }, - }, - event: { - type: 'violation', - params: { - message: 'Company is required', - code: 'field-validation-error', - fieldReference: 'permitData.companyName', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'stringMinimumLength', - value: 1, - path: '$.contactDetails.firstName', - }, - }, - event: { - type: 'violation', - params: { - message: 'Contact first name is required', - code: 'field-validation-error', - fieldReference: 'permitData.contactDetails.firstName', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'stringMinimumLength', - value: 1, - path: '$.contactDetails.lastName', - }, - }, - event: { - type: 'violation', - params: { - message: 'Contact last name is required', - code: 'field-validation-error', - fieldReference: 'permitData.contactDetails.lastName', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'stringMinimumLength', - value: 1, - path: '$.contactDetails.phone1', - }, - }, - event: { - type: 'violation', - params: { - message: 'Contact phone number is required', - code: 'field-validation-error', - fieldReference: 'permitData.contactDetails.phone1', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'stringMinimumLength', - value: 1, - path: '$.contactDetails.email', - }, - }, - event: { - type: 'violation', - params: { - message: 'Company contact email is required', - code: 'field-validation-error', - fieldReference: 'permitData.contactDetails.email', - }, - }, - }, - { - conditions: { - any: [ - { - fact: 'permitData', - operator: 'dateLessThan', - value: { - fact: 'validationDate', - }, - path: '$.startDate', - }, - ], - }, - event: { - type: 'violation', - params: { - message: 'Permit start date cannot be in the past', - code: 'field-validation-error', - fieldReference: 'permitData.startDate', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'regex', - value: '^[a-zA-Z0-9]{6}$', - path: '$.vehicleDetails.vin', - }, - }, - event: { - type: 'violation', - params: { - message: - 'Vehicle Identification Number (vin) must be 6 alphanumeric characters', - code: 'field-validation-error', - fieldReference: 'permitData.vehicleDetails.vin', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'stringMinimumLength', - value: 1, - path: '$.vehicleDetails.plate', - }, - }, - event: { - type: 'violation', - params: { - message: 'Vehicle plate is required', - code: 'field-validation-error', - fieldReference: 'permitData.vehicleDetails.plate', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'stringMinimumLength', - value: 1, - path: '$.vehicleDetails.make', - }, - }, - event: { - type: 'violation', - params: { - message: 'Vehicle make is required', - code: 'field-validation-error', - fieldReference: 'permitData.vehicleDetails.make', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'greaterThan', - value: 1900, - path: '$.vehicleDetails.year', - }, - }, - event: { - type: 'violation', - params: { - message: 'Vehicle year is required', - code: 'field-validation-error', - fieldReference: 'permitData.vehicleDetails.year', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'stringMinimumLength', - value: 1, - path: '$.vehicleDetails.countryCode', - }, - }, - event: { - type: 'violation', - params: { - message: 'Vehicle country of registration is required', - code: 'field-validation-error', - fieldReference: 'permitData.vehicleDetails.countryCode', - }, - }, - }, - ], - permitTypes: [ - { - id: 'TROS', - name: 'Term Oversize', - routingRequired: false, - weightDimensionRequired: false, - sizeDimensionRequired: false, - commodityRequired: false, - allowedVehicles: [ - 'BOOSTER', - 'DOLLIES', - 'EXPANDO', - 'FEBGHSE', - 'FECVYER', - 'FEDRMMX', - 'FEPNYTR', - 'FESEMTR', - 'FEWHELR', - 'FLOATTR', - 'FULLLTL', - 'HIBOEXP', - 'HIBOFLT', - 'JEEPSRG', - 'LOGDGLG', - 'LOGFULL', - 'LOGNTAC', - 'LOGOWBK', - 'LOGSMEM', - 'LOGTNDM', - 'LOGTRIX', - 'ODTRLEX', - 'OGOSFDT', - 'PLATFRM', - 'POLETRL', - 'PONYTRL', - 'REDIMIX', - 'SEMITRL', - 'STBTRAN', - 'STCHIPS', - 'STCRANE', - 'STINGAT', - 'STLOGNG', - 'STNTSHC', - 'STREEFR', - 'STSDBDK', - 'STSTNGR', - 'STWHELR', - 'STWIDWH', - 'BUSTRLR', - 'CONCRET', - 'DDCKBUS', - 'GRADERS', - 'LOGGING', - 'LOGOFFH', - 'LWBTRCT', - 'OGBEDTK', - 'OGOILSW', - 'PICKRTT', - 'PLOWBLD', - 'REGTRCK', - 'STINGER', - 'TOWVEHC', - 'TRKTRAC', - ], - rules: [ - { - conditions: { - all: [ - { - not: { - fact: 'permitData', - operator: 'in', - value: [30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330], - path: '$.permitDuration', - }, - }, - { - not: { - fact: 'permitData', - operator: 'equal', - value: { - fact: 'daysInPermitYear', - }, - path: '$.permitDuration', - }, - }, - ], - }, - event: { - type: 'violation', - params: { - message: 'Duration must be in 30 day increments or a full year', - code: 'field-validation-error', - fieldReference: 'permitData.permitDuration', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - path: '$.vehicleDetails.vehicleSubType', - operator: 'in', - value: { - fact: 'allowedVehicles', - }, - }, - }, - event: { - type: 'violation', - params: { - message: 'Vehicle type not permittable for this permit type', - code: 'field-validation-error', - fieldReference: 'permitData.vehicleDetails.vehicleSubType', - }, - }, - }, - ], - costRules: [ - { - fact: 'costPerMonth', - params: { - cost: 30, - }, - }, - ], - }, - { - id: 'TROW', - name: 'Term Overweight', - routingRequired: false, - weightDimensionRequired: false, - sizeDimensionRequired: false, - commodityRequired: false, - allowedVehicles: [ - 'DOLLIES', - 'FEBGHSE', - 'FECVYER', - 'FEDRMMX', - 'FEPNYTR', - 'FESEMTR', - 'FEWHELR', - 'REDIMIX', - 'CONCRET', - 'CRAFTAT', - 'CRAFTMB', - 'GRADERS', - 'MUNFITR', - 'OGOILSW', - 'OGSERVC', - 'OGSRRAH', - 'PICKRTT', - 'TOWVEHC', - ], - rules: [ - { - conditions: { - all: [ - { - not: { - fact: 'permitData', - path: '$.permitDuration', - operator: 'in', - value: [30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330], - }, - }, - { - not: { - fact: 'permitData', - path: '$.permitDuration', - operator: 'equal', - value: { - fact: 'daysInPermitYear', - }, - }, - }, - ], - }, - event: { - type: 'violation', - params: { - message: 'Duration must be in 30 day increments or a full year', - code: 'field-validation-error', - fieldReference: 'permitData.permitDuration', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - path: '$.vehicleDetails.vehicleSubType', - operator: 'in', - value: { - fact: 'allowedVehicles', - }, - }, - }, - event: { - type: 'violation', - params: { - message: 'Vehicle type not permittable for this permit type', - code: 'field-validation-error', - fieldReference: 'permitData.vehicleDetails.vehicleSubType', - }, - }, - }, - ], - costRules: [ - { - fact: 'costPerMonth', - params: { - cost: 100, - }, - }, - ], - }, - { - id: 'STOS', - name: 'Single Trip Oversize', - routingRequired: true, - weightDimensionRequired: false, - sizeDimensionRequired: true, - commodityRequired: true, - allowedCommodities: ['EMPTYXX', 'BRGBEAM', 'AUTOCRR', 'BRSHCUT'], - allowedVehicles: [ - 'DOLLIES', - 'FEBGHSE', - 'FECVYER', - 'FEDRMMX', - 'FEPNYTR', - 'FESEMTR', - 'FEWHELR', - 'REDIMIX', - 'CONCRET', - 'CRAFTAT', - 'CRAFTMB', - 'GRADERS', - 'MUNFITR', - 'OGOILSW', - 'OGSERVC', - 'OGSRRAH', - 'PICKRTT', - 'TOWVEHC', - ], - rules: [ - { - conditions: { - any: [ - { - not: { - fact: 'permitData', - operator: 'lessThanInclusive', - value: 7, - path: '$.permitDuration', - }, - }, - { - not: { - fact: 'permitData', - operator: 'greaterThan', - value: 0, - path: '$.permitDuration', - }, - }, - ], - }, - event: { - type: 'violation', - params: { - message: 'Duration must be 7 days or less', - code: 'field-validation-error', - fieldReference: 'permitData.permitDuration', - }, - }, - }, - { - conditions: { - not: { - fact: 'configurationIsValid', - operator: 'equal', - value: true, - }, - }, - event: { - type: 'violation', - params: { - message: - 'Vehicle configuration is not permittable for this commodity', - code: 'field-validation-error', - fieldReference: 'permitData.vehicleConfiguration.trailers', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'stringMinimumLength', - value: 1, - path: '$.permittedCommodity.loadDescription', - }, - }, - event: { - type: 'violation', - params: { - message: 'Commodity load description is required', - code: 'field-validation-error', - fieldReference: 'permitData.permittedCommodity.loadDescription', - }, - }, - }, - ], - costRules: [ - { - fact: 'fixedCost', - params: { - cost: 15, - }, - }, - ], - }, - ], - globalWeightDefaults: { - powerUnits: [], - trailers: [], - }, - vehicleCategories: { - trailerCategories: [ - { - id: 'trailer', - name: 'Default trailer category', - }, - { - id: 'accessory', - name: 'Accessory trailer such as jeep or booster, to be used alongside other trailers. Not permittable on its own as a trailer in a combination.', - }, - { - id: 'pseudo', - name: 'Placeholder for a trailer in a combination with no trailer (such as when a brushcutter is permitted with no trailer).', - }, - ], - powerUnitCategories: [ - { - id: 'powerunit', - name: 'Default power unit category', - }, - ], - }, - vehicleTypes: { - powerUnitTypes: [ - { - id: 'BUSCRUM', - name: 'Buses/Crummies', - category: 'powerunit', - }, - { - id: 'BUSTRLR', - name: 'Inter-City Bus (Pulling Pony Trailer)', - category: 'powerunit', - }, - { - id: 'CONCRET', - name: 'Concrete Pumper Trucks', - category: 'powerunit', - }, - { - id: 'CRAFTAT', - name: 'Cranes, Rubber-Tired Loaders, Firetrucks - All Terrain', - category: 'powerunit', - }, - { - id: 'CRAFTMB', - name: 'Cranes, Rubber-Tired Loaders, Firetrucks - Mobile', - category: 'powerunit', - }, - { - id: 'DDCKBUS', - name: 'Double Decker Buses', - category: 'powerunit', - }, - { - id: 'FARMVEH', - name: 'Farm Vehicles', - category: 'powerunit', - }, - { - id: 'GRADERS', - name: 'Fixed Equipment - Trucks/Graders etc.', - category: 'powerunit', - }, - { - id: 'LCVRMDB', - name: 'Long Combination Vehicles (LCV) - Rocky Mountain Doubles', - category: 'powerunit', - }, - { - id: 'LCVTPDB', - name: 'Long Combination Vehicles (LCV) - Turnpike Doubles', - category: 'powerunit', - }, - { - id: 'LOGGING', - name: 'Logging Trucks', - category: 'powerunit', - }, - { - id: 'LOGOFFH', - name: 'Logging Trucks - Off-Highway', - category: 'powerunit', - }, - { - id: 'LWBTRCT', - name: 'Long Wheelbase Truck Tractors Exceeding 6.2 m up to 7.25 m', - category: 'powerunit', - }, - { - id: 'MUNFITR', - name: 'Municipal Fire Trucks', - category: 'powerunit', - }, - { - id: 'OGBEDTK', - name: 'Oil and Gas - Bed Trucks', - category: 'powerunit', - }, - { - id: 'OGOILSW', - name: 'Oil and Gas - Oilfield Sows', - category: 'powerunit', - }, - { - id: 'OGSERVC', - name: 'Oil and Gas - Service Rigs', - category: 'powerunit', - }, - { - id: 'OGSRRAH', - name: 'Oil and Gas - Service Rigs and Rathole Augers Only Equipped with Heavy Front Projected Crane (must exceed 14,000 kg tare weight)', - category: 'powerunit', - }, - { - id: 'PICKRTT', - name: 'Picker Truck Tractors', - category: 'powerunit', - }, - { - id: 'PLOWBLD', - name: 'Trucks Equipped with Front or Underbody Plow Blades', - category: 'powerunit', - }, - { - id: 'PUTAXIS', - name: 'Taxis', - category: 'powerunit', - }, - { - id: 'REGTRCK', - name: 'Trucks', - category: 'powerunit', - }, - { - id: 'SCRAPER', - name: 'Scrapers', - category: 'powerunit', - }, - { - id: 'SPAUTHV', - name: 'Specially Authorized Vehicles', - category: 'powerunit', - }, - { - id: 'STINGER', - name: 'Truck Tractors - Stinger Steered', - category: 'powerunit', - }, - { - id: 'TOWVEHC', - name: 'Tow Vehicles', - category: 'powerunit', - }, - { - id: 'TRKTRAC', - name: 'Truck Tractors', - category: 'powerunit', - }, - ], - trailerTypes: [ - { - id: 'BOOSTER', - name: 'Boosters', - category: 'accessory', - }, - { - id: 'DBTRBTR', - name: 'Tandem/Tridem Drive B-Train (Super B-Train)', - category: 'trailer', - }, - { - id: 'DOLLIES', - name: 'Dollies', - category: 'trailer', - }, - { - id: 'EXPANDO', - name: 'Expando Semi-Trailers', - category: 'trailer', - }, - { - id: 'FEBGHSE', - name: 'Fixed Equipment - Portable Asphalt Baghouses', - category: 'trailer', - }, - { - id: 'FECVYER', - name: 'Fixed Equipment - Conveyors (Semi-Trailers)', - category: 'trailer', - }, - { - id: 'FECVYPT', - name: 'Fixed Equipment - Conveyors (Pony Trailers)', - category: 'trailer', - }, - { - id: 'FEDRMMX', - name: 'Fixed Equipment - Counter Flow Asphalt Drum Mixers', - category: 'trailer', - }, - { - id: 'FEPNYTR', - name: 'Fixed Equipment - Pony Trailers', - category: 'trailer', - }, - { - id: 'FESEMTR', - name: 'Fixed Equipment - Semi-Trailers', - category: 'trailer', - }, - { - id: 'FEWHELR', - name: 'Fixed Equipment - Wheeler Semi-Trailers', - category: 'wheeler', - }, - { - id: 'FLOATTR', - name: 'Float Trailers', - category: 'wheeler', - }, - { - id: 'FULLLTL', - name: 'Full Trailers', - category: 'trailer', - }, - { - id: 'HIBOEXP', - name: 'Semi-Trailers - Hiboys/Expandos', - category: 'trailer', - }, - { - id: 'HIBOFLT', - name: 'Semi-Trailers - Hiboys/Flat Decks', - category: 'trailer', - }, - { - id: 'JEEPSRG', - name: 'Jeeps', - category: 'accessory', - }, - { - id: 'LOGDGLG', - name: 'Legacy Logging Trailer Combinations - Tandem Pole Trailers, Dogloggers', - category: 'trailer', - }, - { - id: 'LOGLGCY', - name: 'Legacy Logging Trailer Combinations', - category: 'trailer', - }, - { - id: 'LOGFULL', - name: 'Logging Trailer - Full Trailers, Tri Axle, Quad Axle', - category: 'trailer', - }, - { - id: 'LOGNTAC', - name: 'Legacy Logging Trailer Combinations - Non-TAC B-Trains', - category: 'trailer', - }, - { - id: 'LOGOWBK', - name: 'Logging Trailer - Overwidth Bunks', - category: 'trailer', - }, - { - id: 'LOGSMEM', - name: 'Logging Semi-Trailer - Empty, 3.2 m Bunks', - category: 'trailer', - }, - { - id: 'LOGTNDM', - name: 'Legacy Logging Trailer Combinations - Single Axle Jeeps, Tandem Axle Pole Trailers, Dogloggers', - category: 'trailer', - }, - { - id: 'LOGTRIX', - name: 'Legacy Logging Trailer Combinations - Single Axle Jeeps, Tri Axle Trailers', - category: 'trailer', - }, - { - id: 'MHMBSHG', - name: 'Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW) with Attached Axles', - category: 'trailer', - }, - { - id: 'MHMBSHL', - name: 'Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW) with Attached Axles', - category: 'trailer', - }, - { - id: 'ODTRLEX', - name: 'Overdimensional Trailers and Semi-Trailers (For Export)', - category: 'trailer', - }, - { - id: 'OGOSFDT', - name: 'Oil and Gas - Oversize Oilfield Flat Deck Semi-Trailers', - category: 'trailer', - }, - { - id: 'PLATFRM', - name: 'Platform Trailers', - category: 'trailer', - }, - { - id: 'PMHWAAX', - name: 'Park Model Homes with Attached Axles', - category: 'trailer', - }, - { - id: 'POLETRL', - name: 'Pole Trailers', - category: 'trailer', - }, - { - id: 'PONYTRL', - name: 'Pony Trailers', - category: 'trailer', - }, - { - id: 'REDIMIX', - name: 'Ready Mix Concrete Pump Semi-Trailers', - category: 'trailer', - }, - { - id: 'SEMITRL', - name: 'Semi-Trailers', - category: 'trailer', - }, - { - id: 'STACTRN', - name: 'Semi-Trailers - A-Trains and C-Trains', - category: 'trailer', - }, - { - id: 'STBTRAN', - name: 'Semi-Trailers - B-Trains', - category: 'trailer', - }, - { - id: 'STCHIPS', - name: 'Semi-Trailers - Walled B-Trains (Chip Trucks)', - category: 'trailer', - }, - { - id: 'STCRANE', - name: 'Semi-Trailers with Crane', - category: 'trailer', - }, - { - id: 'STINGAT', - name: 'Stinger Steered Automobile Transporters', - category: 'trailer', - }, - { - id: 'STLOGNG', - name: 'Semi-Trailers - Logging', - category: 'trailer', - }, - { - id: 'STNTSHC', - name: 'Semi-Trailers - Non-Tac Short Chassis', - category: 'trailer', - }, - { - id: 'STREEFR', - name: 'Semi-Trailers - Insulated Vans with Reefer/Refrigeration Units', - category: 'trailer', - }, - { - id: 'STROPRT', - name: 'Steering Trailers - Manned', - category: 'trailer', - }, - { - id: 'STRSELF', - name: 'Steering Trailers - Self/Remote', - category: 'trailer', - }, - { - id: 'STSDBDK', - name: 'Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.', - category: 'trailer', - }, - { - id: 'STSTEER', - name: 'Semi-Trailers - Steering Trailers', - category: 'trailer', - }, - { - id: 'STSTNGR', - name: 'Semi-Trailers - Stinger Steered Automobile Transporters', - category: 'trailer', - }, - { - id: 'STWDTAN', - name: 'Semi-Trailers - Spread Tandems', - category: 'trailer', - }, - { - id: 'STWHELR', - name: 'Semi-Trailers - Wheelers', - category: 'trailer', - }, - { - id: 'STWIDWH', - name: 'Semi-Trailers - Wide Wheelers', - category: 'trailer', - }, - { - id: 'NONEXXX', - name: 'None', - category: 'pseudo', - }, - ], - }, - commodities: [ - { - "id": "NONEXXX", - "name": "None", - "size": { - "powerUnits": [ - { - "type": "CONCRET", - "trailers": [ - { - "type": "NONEXXX", - "jeep": false, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.6, - "h": 4.15, - "l": 15.5 - } - ] - } - ] - }, - { - "type": "CRAFTAT", - "trailers": [ - { - "type": "DOLLIES", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 10, - "rp": 6.5, - "w": 3.8, - "h": 4.3, - "l": 25 - } - ] - }, - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 10, - "rp": 6.5, - "w": 3.8, - "h": 4.3, - "l": 14, - "regions": [ - { - "region": "PCE", - "l": 15 - } - ] - } - ] - } - ] - }, - { - "type": "CRAFTMB", - "trailers": [ - { - "type": "DOLLIES", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 10, - "rp": 6.5, - "w": 3.8, - "h": 4.3, - "l": 25 - } - ] - }, - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 10, - "rp": 6.5, - "w": 3.8, - "h": 4.3, - "l": 14, - "regions": [ - { - "region": "PCE", - "l": 15 - } - ] - } - ] - } - ] - }, - { - "type": "DDCKBUS", - "trailers": [ - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 2.6, - "h": 4.42, - "l": 12.5, - "regions": [ - { - "region": "LMN", - "h": 4.3 - }, - { - "region": "KTN", - "h": 4.3 - }, - { - "region": "PCE", - "h": 4.3 - } - ] - } - ] - } - ] - }, - { - "type": "GRADERS", - "trailers": [ - { - "type": "FEPNYTR", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 4, - "w": 3.2, - "h": 4.3, - "l": 31 - } - ] - }, - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 3.5, - "h": 4.4, - "l": 12.5, - "regions": [ - { - "region": "LMN", - "h": 4.3 - }, - { - "region": "KTN", - "h": 4.3 - }, - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - } - ] - }, - { - "type": "BUSTRLR", - "trailers": [ - { - "type": "PONYTRL", - "jeep": false, - "booster": false, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 2.6, - "h": 4.15, - "l": 20 - } - ] - } - ] - }, - { - "type": "LOGOFFH", - "trailers": [ - { - "type": "STLOGNG", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 4.4, - "h": 4.15, - "l": 23 - } - ] - } - ] - }, - { - "type": "LCVRMDB", - "trailers": [ - { - "type": "SEMITRL", - "jeep": false, - "booster": false, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 2.6, - "h": 4.15, - "l": 32, - "regions": [ - { - "region": "PCE", - "l": 31 - } - ] - } - ] - } - ] - }, - { - "type": "LCVTPDB", - "trailers": [ - { - "type": "SEMITRL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 2.6, - "h": 4.15, - "l": 41 - } - ] - } - ] - }, - { - "type": "LWBTRCT", - "trailers": [ - { - "type": "SEMITRL", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 2.6, - "h": 4.15, - "l": 23 - } - ] - } - ] - }, - { - "type": "PICKRTT", - "trailers": [ - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 1, - "w": 2.6, - "h": 4.15, - "l": 16 - } - ] - }, - { - "type": "STCRANE", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.6, - "h": 4.15, - "l": 25 - } - ] - }, - { - "type": "STROPRT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 40, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STRSELF", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 36, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - } - ] - }, - { - "type": "SCRAPER", - "trailers": [ - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 2.6, - "h": 4.15, - "l": 12.5 - } - ] - } - ] - }, - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "FECVYER", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 4, - "rp": 9.5, - "w": 3.8, - "h": 4.72, - "l": 31, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "FEDRMMX", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.8, - "h": 4.72, - "l": 31, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "FEBGHSE", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 4.26, - "h": 4.72, - "l": 31, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "FESEMTR", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.8, - "h": 4.72, - "l": 31, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "FEWHELR", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 31, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "ODTRLEX", - "jeep": false, - "booster": false, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 3.65, - "h": 4.15, - "l": 23 - } - ] - }, - { - "type": "REDIMIX", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.6, - "h": 4.15, - "l": 23 - } - ] - }, - { - "type": "HIBOFLT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.6, - "h": 4.3, - "l": 31, - "regions": [ - { - "region": "LMN", - "l": 23 - }, - { - "region": "KTN", - "l": 23 - }, - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STREEFR", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 2.6, - "h": 4.3, - "l": 23 - } - ] - }, - { - "type": "STNTSHC", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 5, - "rp": 2.25, - "w": 2.6, - "h": 4.15, - "l": 20 - } - ] - }, - { - "type": "STSDBDK", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "l": 32 - } - ] - } - ] - }, - { - "type": "STROPRT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 2.6, - "h": 4.15, - "l": 40 - } - ] - }, - { - "type": "STRSELF", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 2.6, - "h": 4.15, - "l": 36 - } - ] - } - ] - }, - { - "type": "REGTRCK", - "trailers": [ - { - "type": "FECVYPT", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 4, - "rp": 9.5, - "w": 3.2, - "h": 4.3, - "l": 31 - } - ] - }, - { - "type": "FEPNYTR", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 4, - "w": 3.2, - "h": 4.3, - "l": 31 - } - ] - }, - { - "type": "FULLLTL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 6.5, - "w": 3.8, - "h": 4.3, - "l": 23, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "MHMBSHL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 6.9, - "w": 5, - "h": 4.88, - "l": 31.5, - "regions": [ - { - "region": "PCE", - "h": 5.33, - "l": 36 - } - ] - } - ] - }, - { - "type": "MHMBSHG", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 6.9, - "w": 6, - "h": 4.88, - "l": 31.5, - "regions": [ - { - "region": "PCE", - "w": 6.1, - "h": 5.33, - "l": 36 - } - ] - } - ] - }, - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 16, - "regions": [ - { - "region": "PCE", - "h": 4.4 - } - ] - } - ] - }, - { - "type": "ODTRLEX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 3.65, - "h": 4.15, - "l": 23 - } - ] - }, - { - "type": "PMHWAAX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.9, - "w": 4.4, - "h": 4.88, - "l": 31.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "PONYTRL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 23, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - } - ] - }, - { - "type": "PLOWBLD", - "trailers": [ - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 3.2, - "h": 4.15, - "l": 12.5 - } - ] - } - ] - } - ] - } - }, - { - "id": "DOGLOGG", - "name": "Doglogger/Sjostrum Trailers (decked)", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 5, - "w": 2.6, - "h": 4.15, - "l": 13.5 - } - ] - } - ] - } - ] - } - }, - { - "id": "GRTBBUK", - "name": "Grader, Tractor Blades, Buckets", - "size": { - "powerUnits": [ - { - "type": "GRADERS", - "trailers": [ - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 0, - "rp": 0, - "w": 4.4, - "h": 4.15, - "l": 12.5 - } - ] - } - ] - } - ] - } - }, - { - "id": "HAYRACK", - "name": "Hayrack Semi-Trailer with a Folded Chassis/Empty Piggyback", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "STLOGNG", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 5, - "w": 2.6, - "h": 4.15, - "l": 23 - } - ] - } - ] - } - ] - } - }, - { - "id": "IMCONTN", - "name": "Intermodal Containers", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "STACTRN", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 2.6, - "h": 4.4, - "l": 26 - } - ] - }, - { - "type": "STBTRAN", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 2.6, - "h": 4.4, - "l": 27.5 - } - ] - }, - { - "type": "HIBOFLT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 2.6, - "h": 4.4, - "l": 23 - } - ] - } - ] - }, - { - "type": "REGTRCK", - "trailers": [ - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 2.6, - "h": 4.4, - "l": 12.5 - } - ] - } - ] - } - ] - } - }, - { - "id": "IMCONWS", - "name": "Intermodal Containers without Sides", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "STSDBDK", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 4.4, - "h": 4.72, - "l": 23 - } - ] - } - ] - } - ] - } - }, - { - "id": "LPBOOMS", - "name": "Logs, Poles And Boomsticks (Up To 20.1)", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "FULLLTL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.9, - "h": 4.15, - "l": 27.5 - } - ] - }, - { - "type": "LOGLGCY", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 5, - "w": 2.6, - "h": 4.15, - "l": 25 - } - ] - }, - { - "type": "POLETRL", - "jeep": true, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.9, - "h": 4.15, - "l": 27.5 - } - ] - }, - { - "type": "STACTRN", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.9, - "h": 4.15, - "l": 26 - } - ] - }, - { - "type": "STBTRAN", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.9, - "h": 4.15, - "l": 27.5 - } - ] - }, - { - "type": "HIBOFLT", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.9, - "h": 4.15, - "l": 25 - } - ] - }, - { - "type": "STLOGNG", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.9, - "h": 4.15, - "l": 25 - } - ] - } - ] - } - ] - } - }, - { - "id": "LPBOOML", - "name": "Logs, Poles And Boomsticks (Over 20.1)", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "LOGFULL", - "jeep": false, - "booster": false, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 10, - "rp": 10, - "w": 2.6, - "h": 4.15, - "l": 40 - } - ] - }, - { - "type": "POLETRL", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 8, - "rp": 9, - "w": 2.6, - "h": 4.15, - "l": 40 - } - ] - }, - { - "type": "STROPRT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 10, - "rp": 10, - "w": 2.6, - "h": 4.15, - "l": 40 - } - ] - }, - { - "type": "STRSELF", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 10, - "rp": 10, - "w": 2.6, - "h": 4.15, - "l": 36 - } - ] - } - ] - } - ] - } - }, - { - "id": "MFHOMES", - "name": "Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW)", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "SEMITRL", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 7.5, - "w": 5, - "h": 4.88, - "l": 31.5, - "regions": [ - { - "region": "PCE", - "h": 5.33, - "l": 36 - } - ] - } - ] - }, - { - "type": "STSDBDK", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 7.5, - "w": 5, - "h": 4.88, - "l": 31.5, - "regions": [ - { - "region": "PCE", - "h": 5.33, - "l": 36 - } - ] - } - ] - } - ] - }, - { - "type": "REGTRCK", - "trailers": [ - { - "type": "DOLLIES", - "jeep": false, - "booster": false, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 1, - "rp": 6.9, - "w": 5, - "h": 4.88, - "l": 31.5, - "regions": [ - { - "region": "PCE", - "h": 5.33, - "l": 36 - } - ] - } - ] - }, - { - "type": "FLOATTR", - "jeep": false, - "booster": false, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 1, - "rp": 6.9, - "w": 5, - "h": 4.57, - "l": 31.5, - "regions": [ - { - "region": "PCE", - "h": 5.33, - "l": 36 - } - ] - } - ] - }, - { - "type": "PONYTRL", - "jeep": false, - "booster": false, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 1, - "rp": 6.9, - "w": 5, - "h": 4.88, - "l": 31.5, - "regions": [ - { - "region": "PCE", - "h": 5.33, - "l": 36 - } - ] - } - ] - } - ] - } - ] - } - }, - { - "id": "MFHOMEL", - "name": "Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW)", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "SEMITRL", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 7.5, - "w": 6, - "h": 4.88, - "l": 31.5, - "regions": [ - { - "region": "PCE", - "w": 6.1, - "h": 5.33, - "l": 36 - } - ] - } - ] - }, - { - "type": "STSDBDK", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 7.5, - "w": 6, - "h": 4.88, - "l": 31.5, - "regions": [ - { - "region": "PCE", - "w": 6.1, - "h": 5.33, - "l": 36 - } - ] - } - ] - } - ] - }, - { - "type": "REGTRCK", - "trailers": [ - { - "type": "DOLLIES", - "jeep": false, - "booster": false, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 1, - "rp": 6.9, - "w": 6, - "h": 4.88, - "l": 31.5, - "regions": [ - { - "region": "PCE", - "w": 6.1, - "h": 5.33, - "l": 36 - } - ] - } - ] - }, - { - "type": "FLOATTR", - "jeep": false, - "booster": false, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 1, - "rp": 6.9, - "w": 6, - "h": 4.57, - "l": 31.5, - "regions": [ - { - "region": "PCE", - "w": 6.1, - "h": 5.33, - "l": 36 - } - ] - } - ] - }, - { - "type": "PONYTRL", - "jeep": false, - "booster": false, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 1, - "rp": 6.9, - "w": 6, - "h": 4.88, - "l": 31.5, - "regions": [ - { - "region": "PCE", - "w": 6.1, - "h": 5.33, - "l": 36 - } - ] - } - ] - } - ] - } - ] - } - }, - { - "id": "PARKMHS", - "name": "Park Model Homes", - "size": { - "powerUnits": [ - { - "type": "REGTRCK", - "trailers": [ - { - "type": "DOLLIES", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.9, - "w": 4.4, - "h": 4.88, - "l": 31.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "FLOATTR", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.9, - "w": 4.4, - "h": 4.88, - "l": 31.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "PONYTRL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.9, - "w": 4.4, - "h": 4.88, - "l": 31.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - } - ] - } - ] - } - }, - { - "id": "PIPESTL", - "name": "Pipe And Steel Products (Rebar, Pilings, Reinforcing Steel, Etc.)", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "HIBOEXP", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 31 - } - ] - }, - { - "type": "HIBOFLT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 27.5 - } - ] - }, - { - "type": "STSTEER", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 36 - } - ] - }, - { - "type": "STROPRT", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 40 - } - ] - } - ] - } - ] - } - }, - { - "id": "REDUCBL", - "name": "Reducible Loads", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "STLOGNG", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.15, - "l": 27.5 - } - ] - }, - { - "type": "PLATFRM", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "SEMITRL", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STACTRN", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 26, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STBTRAN", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "HIBOEXP", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "HIBOFLT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STSDBDK", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STSTEER", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STWHELR", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STWIDWH", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STCRANE", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STROPRT", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 40, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STRSELF", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 36, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - } - ] - }, - { - "type": "PICKRTT", - "trailers": [ - { - "type": "SEMITRL", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "HIBOEXP", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "HIBOFLT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STSDBDK", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - } - ] - }, - { - "type": "STINGER", - "trailers": [ - { - "type": "SEMITRL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1.2, - "w": 2.6, - "h": 4.3, - "l": 25, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STSTNGR", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1.2, - "w": 2.6, - "h": 4.3, - "l": 25, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - } - ] - }, - { - "type": "REGTRCK", - "trailers": [ - { - "type": "DOLLIES", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 25, - "regions": [ - { - "region": "PCE", - "h": 4.4 - } - ] - } - ] - }, - { - "type": "FULLLTL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 25, - "regions": [ - { - "region": "PCE", - "h": 4.4 - } - ] - } - ] - }, - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 16, - "regions": [ - { - "region": "PCE", - "h": 4.4 - } - ] - } - ] - }, - { - "type": "PONYTRL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 25, - "regions": [ - { - "region": "PCE", - "h": 4.4 - } - ] - } - ] - } - ] - } - ] - } - }, - { - "id": "SCRAPER", - "name": "Scraper on Dollies", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "DOLLIES", - "jeep": true, - "booster": false, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 3.2, - "h": 4.3, - "l": 25, - "regions": [ - { - "region": "PCE", - "h": 4.4 - } - ] - } - ] - } - ] - } - ] - } - }, - { - "id": "OILFILD", - "name": "Oil Field Equipment", - "size": { - "powerUnits": [ - { - "type": "OGBEDTK", - "trailers": [ - { - "type": "EXPANDO", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.6, - "h": 4.3, - "l": 27.5 - } - ] - }, - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 5, - "w": 3.3, - "h": 4.3, - "l": 14 - } - ] - }, - { - "type": "OGOSFDT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.3, - "h": 4.3, - "l": 23 - } - ] - } - ] - }, - { - "type": "OGOILSW", - "trailers": [ - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 5, - "w": 3.2, - "h": 4.3, - "l": 15 - } - ] - }, - { - "type": "HIBOFLT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 25 - } - ] - } - ] - }, - { - "type": "OGSERVC", - "trailers": [ - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 10, - "rp": 6.5, - "w": 3.8, - "h": 4.3, - "l": 15 - } - ] - }, - { - "type": "PONYTRL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 10, - "rp": 6.5, - "w": 3.8, - "h": 4.3, - "l": 23 - } - ] - } - ] - }, - { - "type": "OGSRRAH", - "trailers": [ - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 10, - "rp": 6.5, - "w": 2.9, - "h": 4.15, - "l": 15.5 - } - ] - }, - { - "type": "PONYTRL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 10, - "rp": 6.5, - "w": 2.9, - "h": 4.15, - "l": 23 - } - ] - } - ] - }, - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "OGOSFDT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.3, - "h": 4.3, - "l": 23 - } - ] - } - ] - } - ] - } - }, - { - "id": "JPTRLOG", - "name": "Tandem Jeep/Pole Trailer Loaded on Logging Truck", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 5, - "w": 2.9, - "h": 4.3, - "l": 12.5 - } - ] - } - ] - }, - { - "type": "REGTRCK", - "trailers": [ - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 5, - "w": 2.9, - "h": 4.3, - "l": 12.5 - } - ] - } - ] - } - ] - } - }, - { - "id": "TOWDISB", - "name": "Tow Trucks And Disabled Vehicles", - "size": { - "powerUnits": [ - { - "type": "TOWVEHC", - "trailers": [ - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 2.6, - "h": 4.3, - "l": 27.5 - } - ] - } - ] - } - ] - } - }, - { - "id": "TRQDLOG", - "name": "Tri-Axle or Quad Axle Full Trailer Loaded on Logging Truck", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 5, - "w": 2.6, - "h": 4.3, - "l": 13.5 - } - ] - } - ] - }, - { - "type": "REGTRCK", - "trailers": [ - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 5, - "w": 2.6, - "h": 4.3, - "l": 13.5 - } - ] - } - ] - } - ] - } - }, - { - "id": "WOODCHP", - "name": "Wood Chips, Residuals", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "STBTRAN", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 2.6, - "h": 4.45, - "l": 27.5 - } - ] - } - ] - } - ] - } - }, - { - "id": "EMPTYXX", - "name": "Empty", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "LOGOWBK", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 0, - "rp": 0, - "w": 3.2, - "h": 4.15, - "l": 23 - } - ] - }, - { - "type": "PLATFRM", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.15, - "l": 27.5 - } - ] - }, - { - "type": "HIBOEXP", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.6, - "h": 4.4, - "l": 31, - "regions": [ - { - "region": "LMN", - "h": 4.15 - }, - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "HIBOFLT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.6, - "h": 4.4, - "l": 27.5, - "regions": [ - { - "region": "LMN", - "h": 4.15 - }, - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STSDBDK", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.4, - "l": 31, - "regions": [ - { - "region": "LMN", - "h": 4.15 - }, - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STWHELR", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.88, - "l": 27.5, - "regions": [ - { - "region": "LMN", - "h": 4.15 - }, - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STWIDWH", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.88, - "l": 27.5, - "regions": [ - { - "region": "LMN", - "h": 4.15 - }, - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - } - ] - }, - { - "type": "PICKRTT", - "trailers": [ - { - "type": "OGOSFDT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.15, - "l": 23 - } - ] - }, - { - "type": "PLATFRM", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.15, - "l": 27.5 - } - ] - }, - { - "type": "HIBOEXP", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.6, - "h": 4.15, - "l": 25, - "regions": [ - { - "region": "PCE", - "l": 27.5 - } - ] - } - ] - }, - { - "type": "STWHELR", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.15, - "l": 27.5 - } - ] - }, - { - "type": "STWIDWH", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.15, - "l": 27.5 - } - ] - } - ] - } - ] - } - }, - { - "id": "GRBBINS", - "name": "Garbage Bins", - "size": { - "powerUnits": [ - { - "type": "REGTRCK", - "trailers": [ - { - "type": "FULLLTL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.6, - "h": 4.15, - "l": 23 - } - ] - }, - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.6, - "h": 4.15, - "l": 12.5 - } - ] - }, - { - "type": "PONYTRL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.6, - "h": 4.15, - "l": 23 - } - ] - } - ] - } - ] - } - }, - { - "id": "LAMBEAM", - "name": "Laminated Beams", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "POLETRL", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.6, - "h": 4.15, - "l": 40 - } - ] - }, - { - "type": "HIBOEXP", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.6, - "h": 4.15, - "l": 31 - } - ] - } - ] - } - ] - } - }, - { - "id": "HAYLREC", - "name": "Hay Bales Large Rectangular", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "STACTRN", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 3.05, - "h": 4.3, - "l": 26, - "regions": [ - { - "region": "PCE", - "h": 4.8 - } - ] - } - ] - }, - { - "type": "STBTRAN", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 3.05, - "h": 4.3, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 4.8 - } - ] - } - ] - }, - { - "type": "HIBOFLT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.05, - "h": 4.4, - "l": 23, - "regions": [ - { - "region": "LMN", - "h": 4.3 - }, - { - "region": "KTN", - "h": 4.3 - }, - { - "region": "PCE", - "h": 4.8 - } - ] - } - ] - }, - { - "type": "STSDBDK", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.05, - "h": 4.3, - "l": 23, - "regions": [ - { - "region": "PCE", - "h": 4.8 - } - ] - } - ] - } - ] - }, - { - "type": "REGTRCK", - "trailers": [ - { - "type": "FULLLTL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 4, - "w": 3.05, - "h": 4.3, - "l": 23, - "regions": [ - { - "region": "PCE", - "h": 4.8 - } - ] - } - ] - }, - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 3.05, - "h": 4.3, - "l": 12.5, - "regions": [ - { - "region": "PCE", - "h": 4.8 - } - ] - } - ] - }, - { - "type": "PONYTRL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 4, - "w": 3.05, - "h": 4.3, - "l": 23, - "regions": [ - { - "region": "PCE", - "h": 4.8 - } - ] - } - ] - } - ] - } - ] - } - }, - { - "id": "HAYROND", - "name": "Hay Bales Round", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "STACTRN", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 3.5, - "h": 4.3, - "l": 26, - "regions": [ - { - "region": "PCE", - "w": 3.84, - "h": 4.8 - } - ] - } - ] - }, - { - "type": "STBTRAN", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 3.5, - "h": 4.3, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "w": 3.84, - "h": 4.8 - } - ] - } - ] - }, - { - "type": "HIBOFLT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.5, - "h": 4.3, - "l": 23, - "regions": [ - { - "region": "PCE", - "w": 3.84, - "h": 4.8 - } - ] - } - ] - }, - { - "type": "STSDBDK", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.5, - "h": 4.3, - "l": 23, - "regions": [ - { - "region": "PCE", - "w": 3.84, - "h": 4.8 - } - ] - } - ] - } - ] - }, - { - "type": "REGTRCK", - "trailers": [ - { - "type": "FULLLTL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 4, - "w": 3.5, - "h": 4.3, - "l": 23, - "regions": [ - { - "region": "PCE", - "w": 3.84, - "h": 4.8 - } - ] - } - ] - }, - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 3.5, - "h": 4.3, - "l": 12.5, - "regions": [ - { - "region": "PCE", - "w": 3.84, - "h": 4.8 - } - ] - } - ] - }, - { - "type": "PONYTRL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 4, - "w": 3.5, - "h": 4.3, - "l": 23, - "regions": [ - { - "region": "PCE", - "w": 3.84, - "h": 4.8 - } - ] - } - ] - } - ] - } - ] - } - }, - { - "id": "HAYSREC", - "name": "Hay Bales Small Rectangular", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "STACTRN", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 3.05, - "h": 4.3, - "l": 26, - "regions": [ - { - "region": "PCE", - "h": 4.8 - } - ] - } - ] - }, - { - "type": "STBTRAN", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 3.05, - "h": 4.3, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 4.8 - } - ] - } - ] - }, - { - "type": "HIBOFLT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.05, - "h": 4.3, - "l": 23, - "regions": [ - { - "region": "PCE", - "h": 4.8 - } - ] - } - ] - }, - { - "type": "STSDBDK", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.05, - "h": 4.3, - "l": 23, - "regions": [ - { - "region": "PCE", - "h": 4.8 - } - ] - } - ] - } - ] - }, - { - "type": "REGTRCK", - "trailers": [ - { - "type": "FULLLTL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 4, - "w": 3.05, - "h": 4.3, - "l": 23, - "regions": [ - { - "region": "PCE", - "h": 4.8 - } - ] - } - ] - }, - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 3.05, - "h": 4.3, - "l": 12.5, - "regions": [ - { - "region": "PCE", - "h": 4.8 - } - ] - } - ] - }, - { - "type": "PONYTRL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 4, - "w": 3.05, - "h": 4.3, - "l": 23, - "regions": [ - { - "region": "PCE", - "h": 4.8 - } - ] - } - ] - } - ] - } - ] - } - }, - { - "id": "BRGBEAM", - "name": "Bridge Beams", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "POLETRL", - "jeep": true, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.6, - "h": 4.15, - "l": 31 - } - ] - }, - { - "type": "SEMITRL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.2, - "h": 4.3, - "l": 31, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - } - ] - } - ] - } - }, - { - "id": "NONREDU", - "name": "Non-Reducible Loads", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "STLOGNG", - "jeep": false, - "booster": false, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.8, - "h": 4.15, - "l": 27.5 - } - ] - }, - { - "type": "PLATFRM", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "SEMITRL", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STACTRN", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.4, - "l": 26, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STBTRAN", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.4, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "HIBOEXP", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.4, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "HIBOFLT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.4, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STSDBDK", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STSTEER", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STWHELR", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STWIDWH", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STCRANE", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STROPRT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 40, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STRSELF", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 36, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - } - ] - }, - { - "type": "PICKRTT", - "trailers": [ - { - "type": "OGOSFDT", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.3, - "h": 4.3, - "l": 23 - } - ] - }, - { - "type": "SEMITRL", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 25, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "HIBOEXP", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.4, - "l": 25, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "HIBOFLT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.4, - "l": 25, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STSDBDK", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 25, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STSTEER", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STWHELR", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STWIDWH", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STCRANE", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STROPRT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 40, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STRSELF", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 36, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - } - ] - }, - { - "type": "STINGER", - "trailers": [ - { - "type": "SEMITRL", - "jeep": false, - "booster": false, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1.2, - "w": 2.6, - "h": 4.88, - "l": 25, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STSTNGR", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1.2, - "w": 2.6, - "h": 4.88, - "l": 25, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - } - ] - }, - { - "type": "REGTRCK", - "trailers": [ - { - "type": "DOLLIES", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 25, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "FULLLTL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 25, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 16, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "PONYTRL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 6.5, - "w": 5, - "h": 4.88, - "l": 25, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - } - ] - } - ] - } - }, - { - "id": "AUTOCRR", - "name": "Auto Carrier, Campers And Boats (Stinger Steered Transporters Only)", - "size": { - "powerUnits": [ - { - "type": "STINGER", - "trailers": [ - { - "type": "STSTNGR", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1.2, - "w": 2.6, - "h": 4.4, - "l": 25, - "regions": [ - { - "region": "LMN", - "h": 4.3 - }, - { - "region": "KTN", - "h": 4.3 - }, - { - "region": "PCE", - "h": 4.88 - } - ] - } - ] - } - ] - } - ] - } - }, - { - "id": "HAYRNPR", - "name": "Hay Bales (Round) Peace River Only", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "STACTRN", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 3.5, - "h": 4.3, - "l": 26, - "regions": [ - { - "region": "PCE", - "w": 3.84, - "h": 4.8 - } - ] - } - ] - }, - { - "type": "STBTRAN", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 3.5, - "h": 4.3, - "l": 27.5, - "regions": [ - { - "region": "PCE", - "w": 3.84, - "h": 4.8 - } - ] - } - ] - }, - { - "type": "HIBOFLT", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.5, - "h": 4.3, - "l": 23, - "regions": [ - { - "region": "PCE", - "w": 3.84, - "h": 4.8 - } - ] - } - ] - }, - { - "type": "STSDBDK", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.5, - "h": 4.3, - "l": 23, - "regions": [ - { - "region": "PCE", - "w": 3.84, - "h": 4.8 - } - ] - } - ] - } - ] - }, - { - "type": "REGTRCK", - "trailers": [ - { - "type": "FULLLTL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 4, - "w": 3.5, - "h": 4.3, - "l": 23, - "regions": [ - { - "region": "PCE", - "w": 3.84, - "h": 4.8 - } - ] - } - ] - }, - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 3.5, - "h": 4.3, - "l": 12.5, - "regions": [ - { - "region": "PCE", - "w": 3.84, - "h": 4.8 - } - ] - } - ] - }, - { - "type": "PONYTRL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 4, - "w": 3.5, - "h": 4.3, - "l": 23, - "regions": [ - { - "region": "PCE", - "w": 3.84, - "h": 4.8 - } - ] - } - ] - } - ] - } - ] - } - }, - { - "id": "BRSHCUT", - "name": "Brushcutters (Peace Only)", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "SEMITRL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.6, - "h": 4.15, - "l": 23, - "regions": [ - { - "region": "PCE", - "w": 4.57, - "h": 5.33 - } - ] - } - ] - }, - { - "type": "STSDBDK", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 2.6, - "h": 4.15, - "l": 23, - "regions": [ - { - "region": "PCE", - "w": 4.57, - "h": 5.33 - } - ] - } - ] - } - ] - }, - { - "type": "REGTRCK", - "trailers": [ - { - "type": "NONEXXX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 2.6, - "h": 4.15, - "l": 12.5, - "regions": [ - { - "region": "PCE", - "w": 4.57, - "h": 5.33 - } - ] - } - ] - }, - { - "type": "PONYTRL", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 1, - "w": 2.6, - "h": 4.15, - "l": 23, - "regions": [ - { - "region": "PCE", - "w": 3.8, - "h": 5.33 - } - ] - } - ] - } - ] - } - ] - } - }, - { - "id": "FIXEDEQ", - "name": "Fixed Equipment", - "size": { - "powerUnits": [ - { - "type": "TRKTRAC", - "trailers": [ - { - "type": "FECVYER", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 4, - "rp": 9.5, - "w": 3.8, - "h": 4.72, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "FEDRMMX", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.8, - "h": 4.72, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "FEBGHSE", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 4.26, - "h": 4.72, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "FESEMTR", - "jeep": true, - "booster": true, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.8, - "h": 4.72, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "FEWHELR", - "jeep": true, - "booster": true, - "selfIssue": false, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.8, - "h": 4.72, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - } - ] - }, - { - "type": "REGTRCK", - "trailers": [ - { - "type": "FECVYPT", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 4, - "rp": 9.5, - "w": 3.2, - "h": 4.3 - } - ] - }, - { - "type": "FEDRMMX", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 3.8, - "h": 4.72, - "regions": [ - { - "region": "PCE", - "h": 5.33 - } - ] - } - ] - }, - { - "type": "FEPNYTR", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 1, - "rp": 4, - "w": 3.2, - "h": 4.3 - } - ] - }, - { - "type": "FEBGHSE", - "jeep": false, - "booster": false, - "selfIssue": true, - "sizeDimensions": [ - { - "fp": 3, - "rp": 6.5, - "w": 4.26, - "h": 4.72 - } - ] - } - ] - } - ] - } - } - ], - globalSizeDefaults: { - fp: 3, - rp: 6.5, - w: 2.6, - h: 4.15, - l: 31, - }, -}; diff --git a/policy-engine/src/_test/policy-config/five-types.sample.ts b/policy-engine/src/_test/policy-config/five-types.sample.ts deleted file mode 100644 index 3d35daa04..000000000 --- a/policy-engine/src/_test/policy-config/five-types.sample.ts +++ /dev/null @@ -1,1652 +0,0 @@ -import { PolicyDefinition } from '../../types/policy-definition'; - -export const fiveTypes: PolicyDefinition = { - version: '2024.03.18.001', - geographicRegions: [ - { - id: 'LMN', - name: 'Lower Mainland', - }, - { - id: 'KTN', - name: 'Kootenay', - }, - { - id: 'PCE', - name: 'Peace', - }, - ], - commonRules: [ - { - conditions: { - not: { - fact: 'permitData', - path: '$.companyName', - operator: 'stringMinimumLength', - value: 1, - }, - }, - event: { - type: 'violation', - params: { - message: 'Company is required', - }, - }, - }, - { - conditions: { - any: [ - { - fact: 'permitData', - path: '$.startDate', - operator: 'dateLessThan', - value: { - fact: 'validationDate', - }, - }, - ], - }, - event: { - type: 'violation', - params: { - message: 'Permit start date cannot be in the past', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - path: '$.vehicleDetails.vin', - operator: 'regex', - value: '^[a-zA-Z0-9]{6}$', - }, - }, - event: { - type: 'violation', - params: { - message: - 'Vehicle Identification Number (vin) must be 6 alphanumeric characters', - }, - }, - }, - ], - permitTypes: [ - { - id: 'TROS', - name: 'Term Oversize', - routingRequired: false, - weightDimensionRequired: false, - sizeDimensionRequired: false, - commodityRequired: false, - allowedVehicles: [ - 'trucktractor', - 'truck', - 'semi', - 'platform', - 'ogoilfieldsemi', - ], - rules: [ - { - conditions: { - all: [ - { - not: { - fact: 'permitData', - path: '$.permitDuration', - operator: 'in', - value: [30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330], - }, - }, - { - not: { - fact: 'permitData', - path: '$.permitDuration', - operator: 'equal', - value: { - fact: 'daysInPermitYear', - }, - }, - }, - ], - }, - event: { - type: 'violation', - params: { - message: 'Duration must be in 30 day increments or a full year', - }, - }, - }, - ], - }, - { - id: 'TROW', - name: 'Term Overweight', - routingRequired: false, - weightDimensionRequired: false, - sizeDimensionRequired: false, - commodityRequired: false, - allowedVehicles: [ - 'trucktractor', - 'truck', - 'semi', - 'platform', - 'ogoilfieldsemi', - ], - }, - { - id: 'STOW', - name: 'Single Trip Overweight', - routingRequired: true, - weightDimensionRequired: true, - sizeDimensionRequired: false, - commodityRequired: true, - allowedVehicles: [ - 'trucktractor', - 'truck', - 'semi', - 'platform', - 'ogoilfieldsemi', - 'pickertrucktractor', - 'poletrailer', - 'hiboyexpando', - 'deck', - ], - allowedCommodities: [ - 'bridgebeams', - 'empty', - 'fixed', - 'intermodalcontainers', - 'laminatedbeams', - ], - }, - { - id: 'STOS', - name: 'Single Trip Oversize', - routingRequired: true, - weightDimensionRequired: false, - sizeDimensionRequired: true, - commodityRequired: true, - allowedVehicles: [ - 'trucktractor', - 'truck', - 'semi', - 'platform', - 'ogoilfieldsemi', - 'poletrailer', - 'hiboyexpando', - ], - allowedCommodities: ['NONEXXX', 'DOGLOGG', 'GRTBBUK'], - }, - { - id: 'STWS', - name: 'Single Trip Oversize Overweight', - routingRequired: true, - weightDimensionRequired: true, - commodityRequired: true, - sizeDimensionRequired: true, - allowedVehicles: [ - 'trucktractor', - 'truck', - 'semi', - 'platform', - 'ogoilfieldsemi', - 'poletrailer', - 'hiboyexpando', - ], - allowedCommodities: ['bridgebeams', 'empty', 'fixed', 'laminatedbeams'], - }, - ], - globalWeightDefaults: { - powerUnits: [ - { - axles: 11, - saLegal: 6000, - saPermittable: 9100, - daLegal: 9100, - daPermittable: 11000, - }, - { - axles: 12, - saLegal: 6000, - saPermittable: 9100, - daLegal: 17000, - daPermittable: 23000, - }, - { - axles: 13, - saLegal: 7300, - saPermittable: 9100, - daLegal: 24000, - daPermittable: 28000, - }, - { - axles: 22, - saLegal: 17000, - saPermittable: 17000, - daLegal: 17000, - daPermittable: 23000, - }, - { - axles: 23, - saLegal: 13600, - saPermittable: 15200, - daLegal: 24000, - daPermittable: 28000, - }, - { - axles: 33, - saLegal: 24000, - saPermittable: 24000, - daLegal: 24000, - daPermittable: 28000, - }, - ], - trailers: [ - { - axles: 1, - legal: 9100, - permittable: 11000, - }, - { - axles: 2, - legal: 17000, - permittable: 23000, - }, - { - axles: 3, - legal: 24000, - permittable: 28000, - }, - ], - }, - globalSizeDefaults: { - fp: 3, - rp: 6.5, - w: 2.6, - h: 4.15, - l: 31, - }, - vehicleCategories: { - trailerCategories: [ - { - id: 'semitrailer', - name: 'Semi-Trailer', - defaultWeightDimensions: [ - { - axles: 1, - }, - { - axles: 2, - }, - { - axles: 3, - legal: 24000, - permittable: 29000, - }, - { - axles: 3, - modifiers: [ - { - position: 'after', - type: 'booster', - axles: 2, - }, - ], - legal: 24000, - permittable: 28000, - }, - { - axles: 3, - modifiers: [ - { - position: 'after', - type: 'booster', - axles: 3, - }, - ], - legal: 24000, - permittable: 28000, - }, - ], - }, - { - id: 'wheeler', - name: 'Wheeler', - defaultWeightDimensions: [ - { - axles: 1, - }, - { - axles: 2, - }, - { - axles: 3, - legal: 24000, - permittable: 29000, - }, - { - axles: 3, - modifiers: [ - { - position: 'after', - type: 'booster', - axles: 2, - }, - ], - legal: 24000, - permittable: 28000, - }, - { - axles: 3, - modifiers: [ - { - position: 'after', - type: 'booster', - axles: 3, - }, - ], - legal: 24000, - permittable: 28000, - }, - ], - }, - ], - powerUnitCategories: [ - { - id: 'powerunit', - name: 'Power Unit', - }, - ], - }, - vehicleTypes: { - powerUnitTypes: [ - { - id: 'BUSCRUM', - name: 'Buses/Crummies', - category: 'powerunit', - }, - { - id: 'BUSTRLR', - name: 'Inter-City Bus (Pulling Pony Trailer)', - category: 'powerunit', - }, - { - id: 'CONCRET', - name: 'Concrete Pumper Trucks', - category: 'powerunit', - }, - { - id: 'CRAFTAT', - name: 'Cranes, Rubber-Tired Loaders, Firetrucks - All Terrain', - category: 'powerunit', - }, - { - id: 'CRAFTMB', - name: 'Cranes, Rubber-Tired Loaders, Firetrucks - Mobile', - category: 'powerunit', - }, - { - id: 'DDCKBUS', - name: 'Double Decker Buses', - category: 'powerunit', - }, - { - id: 'FARMVEH', - name: 'Farm Vehicles', - category: 'powerunit', - }, - { - id: 'GRADERS', - name: 'Fixed Equipment - Trucks/Graders etc.', - category: 'powerunit', - }, - { - id: 'LCVRMDB', - name: 'Long Combination Vehicles (LCV) - Rocky Mountain Doubles', - category: 'powerunit', - }, - { - id: 'LCVTPDB', - name: 'Long Combination Vehicles (LCV) - Turnpike Doubles', - category: 'powerunit', - }, - { - id: 'LOGGING', - name: 'Logging Trucks', - category: 'powerunit', - }, - { - id: 'LOGOFFH', - name: 'Logging Trucks - Off-Highway', - category: 'powerunit', - }, - { - id: 'LWBTRCT', - name: 'Long Wheelbase Truck Tractors Exceeding 6.2 m up to 7.25 m', - category: 'powerunit', - }, - { - id: 'MUNFITR', - name: 'Municipal Fire Trucks', - category: 'powerunit', - }, - { - id: 'OGBEDTK', - name: 'Oil and Gas - Bed Trucks', - category: 'powerunit', - }, - { - id: 'OGOILSW', - name: 'Oil and Gas - Oilfield Sows', - category: 'powerunit', - }, - { - id: 'OGSERVC', - name: 'Oil and Gas - Service Rigs', - category: 'powerunit', - }, - { - id: 'OGSRRAH', - name: 'Oil and Gas - Service Rigs and Rathole Augers Only Equipped with Heavy Front Projected Crane (must exceed 14,000 kg tare weight)', - category: 'powerunit', - }, - { - id: 'PICKRTT', - name: 'Picker Truck Tractors', - category: 'powerunit', - }, - { - id: 'PLOWBLD', - name: 'Trucks Equipped with Front or Underbody Plow Blades', - category: 'powerunit', - }, - { - id: 'PUTAXIS', - name: 'Taxis', - category: 'powerunit', - }, - { - id: 'REGTRCK', - name: 'Trucks', - category: 'powerunit', - }, - { - id: 'SCRAPER', - name: 'Scrapers', - category: 'powerunit', - }, - { - id: 'SPAUTHV', - name: 'Specially Authorized Vehicles', - category: 'powerunit', - }, - { - id: 'STINGER', - name: 'Truck Tractors - Stinger Steered', - category: 'powerunit', - }, - { - id: 'TOWVEHC', - name: 'Tow Vehicles', - category: 'powerunit', - }, - { - id: 'TRKTRAC', - name: 'Truck Tractors', - category: 'powerunit', - }, - ], - trailerTypes: [ - { - id: 'BOOSTER', - name: 'Boosters', - category: 'accessory', - }, - { - id: 'DBTRBTR', - name: 'Tandem/Tridem Drive B-Train (Super B-Train)', - category: 'trailer', - }, - { - id: 'DOLLIES', - name: 'Dollies', - category: 'trailer', - }, - { - id: 'EXPANDO', - name: 'Expando Semi-Trailers', - category: 'trailer', - }, - { - id: 'FEBGHSE', - name: 'Fixed Equipment - Portable Asphalt Baghouses', - category: 'trailer', - }, - { - id: 'FECVYER', - name: 'Fixed Equipment - Conveyors (Semi-Trailers)', - category: 'trailer', - }, - { - id: 'FECVYPT', - name: 'Fixed Equipment - Conveyors (Pony Trailers)', - category: 'trailer', - }, - { - id: 'FEDRMMX', - name: 'Fixed Equipment - Counter Flow Asphalt Drum Mixers', - category: 'trailer', - }, - { - id: 'FEPNYTR', - name: 'Fixed Equipment - Pony Trailers', - category: 'trailer', - }, - { - id: 'FESEMTR', - name: 'Fixed Equipment - Semi-Trailers', - category: 'trailer', - }, - { - id: 'FEWHELR', - name: 'Fixed Equipment - Wheeler Semi-Trailers', - category: 'wheeler', - }, - { - id: 'FLOATTR', - name: 'Float Trailers', - category: 'wheeler', - }, - { - id: 'FULLLTL', - name: 'Full Trailers', - category: 'trailer', - }, - { - id: 'HIBOEXP', - name: 'Semi-Trailers - Hiboys/Expandos', - category: 'trailer', - }, - { - id: 'HIBOFLT', - name: 'Semi-Trailers - Hiboys/Flat Decks', - category: 'trailer', - }, - { - id: 'JEEPSRG', - name: 'Jeeps', - category: 'accessory', - }, - { - id: 'LOGDGLG', - name: 'Legacy Logging Trailer Combinations - Tandem Pole Trailers, Dogloggers', - category: 'trailer', - }, - { - id: 'LOGLGCY', - name: 'Legacy Logging Trailer Combinations', - category: 'trailer', - }, - { - id: 'LOGFULL', - name: 'Logging Trailer - Full Trailers, Tri Axle, Quad Axle', - category: 'trailer', - }, - { - id: 'LOGNTAC', - name: 'Legacy Logging Trailer Combinations - Non-TAC B-Trains', - category: 'trailer', - }, - { - id: 'LOGOWBK', - name: 'Logging Trailer - Overwidth Bunks', - category: 'trailer', - }, - { - id: 'LOGSMEM', - name: 'Logging Semi-Trailer - Empty, 3.2 m Bunks', - category: 'trailer', - }, - { - id: 'LOGTNDM', - name: 'Legacy Logging Trailer Combinations - Single Axle Jeeps, Tandem Axle Pole Trailers, Dogloggers', - category: 'trailer', - }, - { - id: 'LOGTRIX', - name: 'Legacy Logging Trailer Combinations - Single Axle Jeeps, Tri Axle Trailers', - category: 'trailer', - }, - { - id: 'MHMBSHG', - name: 'Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW) with Attached Axles', - category: 'trailer', - }, - { - id: 'MHMBSHL', - name: 'Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW) with Attached Axles', - category: 'trailer', - }, - { - id: 'ODTRLEX', - name: 'Overdimensional Trailers and Semi-Trailers (For Export)', - category: 'trailer', - }, - { - id: 'OGOSFDT', - name: 'Oil and Gas - Oversize Oilfield Flat Deck Semi-Trailers', - category: 'trailer', - }, - { - id: 'PLATFRM', - name: 'Platform Trailers', - category: 'trailer', - }, - { - id: 'PMHWAAX', - name: 'Park Model Homes with Attached Axles', - category: 'trailer', - }, - { - id: 'POLETRL', - name: 'Pole Trailers', - category: 'trailer', - }, - { - id: 'PONYTRL', - name: 'Pony Trailers', - category: 'trailer', - }, - { - id: 'REDIMIX', - name: 'Ready Mix Concrete Pump Semi-Trailers', - category: 'trailer', - }, - { - id: 'SEMITRL', - name: 'Semi-Trailers', - category: 'trailer', - }, - { - id: 'STACTRN', - name: 'Semi-Trailers - A-Trains and C-Trains', - category: 'trailer', - }, - { - id: 'STBTRAN', - name: 'Semi-Trailers - B-Trains', - category: 'trailer', - }, - { - id: 'STCHIPS', - name: 'Semi-Trailers - Walled B-Trains (Chip Trucks)', - category: 'trailer', - }, - { - id: 'STCRANE', - name: 'Semi-Trailers with Crane', - category: 'trailer', - }, - { - id: 'STINGAT', - name: 'Stinger Steered Automobile Transporters', - category: 'trailer', - }, - { - id: 'STLOGNG', - name: 'Semi-Trailers - Logging', - category: 'trailer', - }, - { - id: 'STNTSHC', - name: 'Semi-Trailers - Non-Tac Short Chassis', - category: 'trailer', - }, - { - id: 'STREEFR', - name: 'Semi-Trailers - Insulated Vans with Reefer/Refrigeration Units', - category: 'trailer', - }, - { - id: 'STROPRT', - name: 'Steering Trailers - Manned', - category: 'trailer', - }, - { - id: 'STRSELF', - name: 'Steering Trailers - Self/Remote', - category: 'trailer', - }, - { - id: 'STSDBDK', - name: 'Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.', - category: 'trailer', - }, - { - id: 'STSTEER', - name: 'Semi-Trailers - Steering Trailers', - category: 'trailer', - }, - { - id: 'STSTNGR', - name: 'Semi-Trailers - Stinger Steered Automobile Transporters', - category: 'trailer', - }, - { - id: 'STWDTAN', - name: 'Semi-Trailers - Spread Tandems', - category: 'trailer', - }, - { - id: 'STWHELR', - name: 'Semi-Trailers - Wheelers', - category: 'trailer', - }, - { - id: 'STWIDWH', - name: 'Semi-Trailers - Wide Wheelers', - category: 'trailer', - }, - { - id: 'NONEXXX', - name: 'None', - category: 'pseudo', - }, - ], - }, - commodities: [ - { - id: 'NONEXXX', - name: 'None', - size: { - powerUnits: [ - { - type: 'CONCRET', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - l: 15.5, - }, - ], - }, - ], - }, - { - type: 'CRAFTAT', - trailers: [ - { - type: 'DOLLIES', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 10, - rp: 6.5, - w: 3.8, - h: 4.3, - l: 25, - }, - ], - }, - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 10, - rp: 6.5, - w: 3.8, - h: 4.3, - l: 14, - regions: [ - { - region: 'PCE', - l: 15, - }, - ], - }, - ], - }, - ], - }, - { - type: 'CRAFTMB', - trailers: [ - { - type: 'DOLLIES', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 10, - rp: 6.5, - w: 3.8, - h: 4.3, - l: 25, - }, - ], - }, - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 10, - rp: 6.5, - w: 3.8, - h: 4.3, - l: 14, - regions: [ - { - region: 'PCE', - l: 15, - }, - ], - }, - ], - }, - ], - }, - { - type: 'DDCKBUS', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - h: 4.42, - regions: [ - { - region: 'LMN', - h: 4.3, - }, - { - region: 'KTN', - h: 4.3, - }, - { - region: 'PCE', - h: 4.3, - }, - ], - }, - ], - }, - ], - }, - { - type: 'GRADERS', - trailers: [ - { - type: 'FEPNYTR', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 4, - w: 3.2, - h: 4.3, - l: 31, - }, - ], - }, - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [ - { - w: 3.5, - h: 4.4, - l: 12.5, - regions: [ - { - region: 'LMN', - h: 4.3, - }, - { - region: 'KTN', - h: 4.3, - }, - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - ], - }, - { - type: 'BUSTRLR', - trailers: [ - { - type: 'PONYTRL', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [{}], - }, - ], - }, - { - type: 'LOGOFFH', - trailers: [ - { - type: 'STLOGNG', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 4.4, - }, - ], - }, - ], - }, - { - type: 'LCVRMDB', - trailers: [ - { - type: 'SEMITRL', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [ - { - l: 32, - regions: [ - { - region: 'PCE', - l: 31, - }, - ], - }, - ], - }, - ], - }, - { - type: 'LCVTPDB', - trailers: [ - { - type: 'SEMITRL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - l: 41, - }, - ], - }, - ], - }, - { - type: 'LWBTRCT', - trailers: [ - { - type: 'SEMITRL', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - w: 2.6, - h: 4.15, - l: 23, - }, - ], - }, - ], - }, - { - type: 'PICKRTT', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - w: 2.6, - h: 4.15, - l: 16, - }, - ], - }, - { - type: 'STCRANE', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 2.6, - h: 4.15, - l: 25, - }, - ], - }, - { - type: 'STROPRT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 40, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STRSELF', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 36, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - ], - }, - { - type: 'SCRAPER', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - l: 12.5, - }, - ], - }, - ], - }, - { - type: 'TRKTRAC', - trailers: [ - { - type: 'FECVYER', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 4, - rp: 9.5, - w: 3.8, - h: 4.72, - l: 31, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'FEDRMMX', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.8, - h: 4.72, - l: 31, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'FEBGHSE', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 4.26, - h: 4.72, - l: 31, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'FESEMTR', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.8, - h: 4.72, - l: 31, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'FEWHELR', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 31, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'ODTRLEX', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [ - { - w: 3.65, - }, - ], - }, - { - type: 'REDIMIX', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - }, - ], - }, - { - type: 'HIBOFLT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - h: 4.3, - l: 31, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STREEFR', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - h: 4.3, - }, - ], - }, - { - type: 'STNTSHC', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [{}], - }, - { - type: 'STSDBDK', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.2, - h: 4.3, - l: 27.5, - regions: [ - { - region: 'PCE', - l: 32, - }, - ], - }, - ], - }, - { - type: 'STROPRT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - h: 4.15, - l: 40, - }, - ], - }, - { - type: 'STRSELF', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - l: 36, - }, - ], - }, - ], - }, - { - type: 'REGTRCK', - trailers: [ - { - type: 'FECVYPT', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 4, - rp: 9.5, - w: 3.2, - h: 4.3, - l: 31, - }, - ], - }, - { - type: 'FEPNYTR', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 4, - w: 3.2, - h: 4.3, - l: 31, - }, - ], - }, - { - type: 'FULLLTL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 6.5, - w: 3.8, - h: 4.3, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'MHMBSHL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 1, - rp: 6.9, - h: 4.88, - l: 31.5, - regions: [ - { - region: 'PCE', - h: 5.33, - l: 36, - }, - ], - }, - ], - }, - { - type: 'MHMBSHG', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 1, - rp: 6.9, - h: 4.88, - l: 31.5, - regions: [ - { - region: 'PCE', - h: 5.33, - l: 36, - }, - ], - }, - ], - }, - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 1, - rp: 6.5, - w: 3.2, - h: 4.3, - l: 16, - regions: [ - { - region: 'PCE', - h: 4.4, - }, - ], - }, - ], - }, - { - type: 'ODTRLEX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 3.65, - }, - ], - }, - { - type: 'PMHWAAX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.9, - w: 4.4, - h: 4.88, - l: 31.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'PONYTRL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 6.5, - w: 3.2, - h: 4.3, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - ], - }, - { - type: 'PLOWBLD', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 3.2, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'DOGLOGG', - name: 'Doglogger/Sjostrum Trailers (decked)', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 5, - l: 13.5, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'GRTBBUK', - name: 'Grader, Tractor Blades, Buckets', - size: { - powerUnits: [ - { - type: 'GRADERS', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 4.4, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'HAYRACK', - name: 'Hayrack Semi-Trailer with a Folded Chassis/Empty Piggyback', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'STLOGNG', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 5, - h: 4.15, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'IMCONTN', - name: 'Intermodal Containers', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'STACTRN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - h: 4.4, - l: 26, - }, - ], - }, - { - type: 'STBTRAN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - h: 4.4, - l: 27.5, - }, - ], - }, - { - type: 'HIBOFLT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - h: 4.4, - }, - ], - }, - ], - }, - { - type: 'REGTRCK', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - h: 4.4, - }, - ], - }, - ], - }, - ], - }, - }, - ], -}; diff --git a/policy-engine/src/_test/policy-config/master.sample.ts b/policy-engine/src/_test/policy-config/master.sample.ts deleted file mode 100644 index 79de8f4a3..000000000 --- a/policy-engine/src/_test/policy-config/master.sample.ts +++ /dev/null @@ -1,826 +0,0 @@ -import { PolicyDefinition } from '../../types/policy-definition'; - -export const masterPolicyConfig: PolicyDefinition = { - version: '2024.03.18.001', - geographicRegions: [], - commonRules: [ - { - conditions: { - not: { - fact: 'permitData', - operator: 'stringMinimumLength', - value: 1, - path: '$.companyName', - }, - }, - event: { - type: 'violation', - params: { - message: 'Company is required', - code: 'field-validation-error', - fieldReference: 'permitData.companyName', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'stringMinimumLength', - value: 1, - path: '$.contactDetails.firstName', - }, - }, - event: { - type: 'violation', - params: { - message: 'Contact first name is required', - code: 'field-validation-error', - fieldReference: 'permitData.contactDetails.firstName', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'stringMinimumLength', - value: 1, - path: '$.contactDetails.lastName', - }, - }, - event: { - type: 'violation', - params: { - message: 'Contact last name is required', - code: 'field-validation-error', - fieldReference: 'permitData.contactDetails.lastName', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'stringMinimumLength', - value: 1, - path: '$.contactDetails.phone1', - }, - }, - event: { - type: 'violation', - params: { - message: 'Contact phone number is required', - code: 'field-validation-error', - fieldReference: 'permitData.contactDetails.phone1', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'stringMinimumLength', - value: 1, - path: '$.contactDetails.email', - }, - }, - event: { - type: 'violation', - params: { - message: 'Company contact email is required', - code: 'field-validation-error', - fieldReference: 'permitData.contactDetails.email', - }, - }, - }, - { - conditions: { - any: [ - { - fact: 'permitData', - operator: 'dateLessThan', - value: { - fact: 'validationDate', - }, - path: '$.startDate', - }, - ], - }, - event: { - type: 'violation', - params: { - message: 'Permit start date cannot be in the past', - code: 'field-validation-error', - fieldReference: 'permitData.startDate', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'regex', - value: '^[a-zA-Z0-9]{6}$', - path: '$.vehicleDetails.vin', - }, - }, - event: { - type: 'violation', - params: { - message: - 'Vehicle Identification Number (vin) must be 6 alphanumeric characters', - code: 'field-validation-error', - fieldReference: 'permitData.vehicleDetails.vin', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'stringMinimumLength', - value: 1, - path: '$.vehicleDetails.plate', - }, - }, - event: { - type: 'violation', - params: { - message: 'Vehicle plate is required', - code: 'field-validation-error', - fieldReference: 'permitData.vehicleDetails.plate', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'stringMinimumLength', - value: 1, - path: '$.vehicleDetails.make', - }, - }, - event: { - type: 'violation', - params: { - message: 'Vehicle make is required', - code: 'field-validation-error', - fieldReference: 'permitData.vehicleDetails.make', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'greaterThan', - value: 1900, - path: '$.vehicleDetails.year', - }, - }, - event: { - type: 'violation', - params: { - message: 'Vehicle year is required', - code: 'field-validation-error', - fieldReference: 'permitData.vehicleDetails.year', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'stringMinimumLength', - value: 1, - path: '$.vehicleDetails.countryCode', - }, - }, - event: { - type: 'violation', - params: { - message: 'Vehicle country of registration is required', - code: 'field-validation-error', - fieldReference: 'permitData.vehicleDetails.countryCode', - }, - }, - }, - ], - permitTypes: [ - { - id: 'TROS', - name: 'Term Oversize', - routingRequired: false, - weightDimensionRequired: false, - sizeDimensionRequired: false, - commodityRequired: false, - allowedVehicles: [ - 'BOOSTER', - 'DOLLIES', - 'EXPANDO', - 'FEBGHSE', - 'FECVYER', - 'FEDRMMX', - 'FEPNYTR', - 'FESEMTR', - 'FEWHELR', - 'FLOATTR', - 'FULLLTL', - 'HIBOEXP', - 'HIBOFLT', - 'JEEPSRG', - 'LOGDGLG', - 'LOGFULL', - 'LOGNTAC', - 'LOGOWBK', - 'LOGSMEM', - 'LOGTNDM', - 'LOGTRIX', - 'ODTRLEX', - 'OGOSFDT', - 'PLATFRM', - 'POLETRL', - 'PONYTRL', - 'REDIMIX', - 'SEMITRL', - 'STBTRAN', - 'STCHIPS', - 'STCRANE', - 'STINGAT', - 'STLOGNG', - 'STNTSHC', - 'STREEFR', - 'STSDBDK', - 'STSTNGR', - 'STWHELR', - 'STWIDWH', - 'BUSTRLR', - 'CONCRET', - 'DDCKBUS', - 'GRADERS', - 'LOGGING', - 'LOGOFFH', - 'LWBTRCT', - 'OGBEDTK', - 'OGOILSW', - 'PICKRTT', - 'PLOWBLD', - 'REGTRCK', - 'STINGER', - 'TOWVEHC', - 'TRKTRAC', - ], - rules: [ - { - conditions: { - all: [ - { - not: { - fact: 'permitData', - operator: 'in', - value: [30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330], - path: '$.permitDuration', - }, - }, - { - not: { - fact: 'permitData', - operator: 'equal', - value: { - fact: 'daysInPermitYear', - }, - path: '$.permitDuration', - }, - }, - ], - }, - event: { - type: 'violation', - params: { - message: 'Duration must be in 30 day increments or a full year', - code: 'field-validation-error', - fieldReference: 'permitData.permitDuration', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'in', - value: { - fact: 'allowedVehicles', - }, - path: '$.vehicleDetails.vehicleSubType', - }, - }, - event: { - type: 'violation', - params: { - message: 'Vehicle type not permittable for this permit type', - code: 'field-validation-error', - fieldReference: 'permitData.vehicleDetails.vehicleSubType', - }, - }, - }, - ], - costRules: [ - { - fact: 'costPerMonth', - params: { - cost: 30, - }, - }, - ], - }, - { - id: 'TROW', - name: 'Term Overweight', - routingRequired: false, - weightDimensionRequired: false, - sizeDimensionRequired: false, - commodityRequired: false, - allowedVehicles: [ - 'DOLLIES', - 'FEBGHSE', - 'FECVYER', - 'FEDRMMX', - 'FEPNYTR', - 'FESEMTR', - 'FEWHELR', - 'REDIMIX', - 'CONCRET', - 'CRAFTAT', - 'CRAFTMB', - 'GRADERS', - 'MUNFITR', - 'OGOILSW', - 'OGSERVC', - 'OGSRRAH', - 'PICKRTT', - 'TOWVEHC', - ], - rules: [ - { - conditions: { - all: [ - { - not: { - fact: 'permitData', - operator: 'in', - value: [30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330], - path: '$.permitDuration', - }, - }, - { - not: { - fact: 'permitData', - operator: 'equal', - value: { - fact: 'daysInPermitYear', - }, - path: '$.permitDuration', - }, - }, - ], - }, - event: { - type: 'violation', - params: { - message: 'Duration must be in 30 day increments or a full year', - code: 'field-validation-error', - fieldReference: 'permitData.permitDuration', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - operator: 'in', - value: { - fact: 'allowedVehicles', - }, - path: '$.vehicleDetails.vehicleSubType', - }, - }, - event: { - type: 'violation', - params: { - message: 'Vehicle type not permittable for this permit type', - code: 'field-validation-error', - fieldReference: 'permitData.vehicleDetails.vehicleSubType', - }, - }, - }, - ], - costRules: [ - { - fact: 'costPerMonth', - params: { - cost: 100, - }, - }, - ], - }, - ], - globalWeightDefaults: { - powerUnits: [], - trailers: [], - }, - globalSizeDefaults: { - fp: 3, - rp: 6.5, - w: 2.6, - h: 4.15, - l: 31, - }, - vehicleCategories: { - trailerCategories: [], - powerUnitCategories: [], - }, - vehicleTypes: { - powerUnitTypes: [ - { - id: 'BUSCRUM', - name: 'Buses/Crummies', - category: 'powerunit', - }, - { - id: 'BUSTRLR', - name: 'Intercity Buses (Pulling Pony Trailers)', - category: 'powerunit', - }, - { - id: 'CONCRET', - name: 'Concrete Pumper Trucks', - category: 'powerunit', - }, - { - id: 'CRAFTAT', - name: 'Cranes, Rubber-Tired Loaders, Firetrucks - All Terrain', - category: 'powerunit', - }, - { - id: 'CRAFTMB', - name: 'Cranes, Rubber-Tired Loaders, Firetrucks - Mobile', - category: 'powerunit', - }, - { - id: 'DDCKBUS', - name: 'Double Decker Buses', - category: 'powerunit', - }, - { - id: 'FARMVEH', - name: 'Farm Vehicles', - category: 'powerunit', - }, - { - id: 'GRADERS', - name: 'Fixed Equipment - Trucks/Graders etc.', - category: 'powerunit', - }, - { - id: 'LCVRMDB', - name: 'Long Combination Vehicles (LCV) - Rocky Mountain Doubles', - category: 'powerunit', - }, - { - id: 'LCVTPDB', - name: 'Long Combination Vehicles (LCV) - Turnpike Doubles', - category: 'powerunit', - }, - { - id: 'LOGGING', - name: 'Logging Trucks', - category: 'powerunit', - }, - { - id: 'LOGOFFH', - name: 'Logging Trucks - Off-Highway', - category: 'powerunit', - }, - { - id: 'LWBTRCT', - name: 'Long Wheelbase Truck Tractors Exceeding 6.2 m up to 7.25 m', - category: 'powerunit', - }, - { - id: 'MUNFITR', - name: 'Municipal Fire Trucks', - category: 'powerunit', - }, - { - id: 'OGBEDTK', - name: 'Oil and Gas - Bed Trucks', - category: 'powerunit', - }, - { - id: 'OGOILSW', - name: 'Oil and Gas - Oilfield Sows', - category: 'powerunit', - }, - { - id: 'OGSERVC', - name: 'Oil and Gas - Service Rigs', - category: 'powerunit', - }, - { - id: 'OGSRRAH', - name: 'Oil and Gas - Service Rigs and Rathole Augers Only Equipped with Heavy Front Projected Crane (must exceed 14,000 kg tare weight)', - category: 'powerunit', - }, - { - id: 'PICKRTT', - name: 'Picker Truck Tractors', - category: 'powerunit', - }, - { - id: 'PLOWBLD', - name: 'Trucks Equipped with Front or Underbody Plow Blades', - category: 'powerunit', - }, - { - id: 'PUTAXIS', - name: 'Taxis', - category: 'powerunit', - }, - { - id: 'REGTRCK', - name: 'Trucks', - category: 'powerunit', - }, - { - id: 'SCRAPER', - name: 'Scrapers', - category: 'powerunit', - }, - { - id: 'SPAUTHV', - name: 'Specially Authorized Vehicles', - category: 'powerunit', - }, - { - id: 'STINGER', - name: 'Truck Tractors - Stinger Steered', - category: 'powerunit', - }, - { - id: 'TOWVEHC', - name: 'Tow Vehicles', - category: 'powerunit', - }, - { - id: 'TRKTRAC', - name: 'Truck Tractors', - category: 'powerunit', - }, - ], - trailerTypes: [ - { - id: 'BOOSTER', - name: 'Boosters', - category: 'trailer', - }, - { - id: 'DBTRBTR', - name: 'Tandem/Tridem Drive B-Train (Super B-Train)', - category: 'trailer', - }, - { - id: 'DOLLIES', - name: 'Dollies', - category: 'trailer', - }, - { - id: 'EXPANDO', - name: 'Expando Semi-Trailers', - category: 'trailer', - }, - { - id: 'FEBGHSE', - name: 'Fixed Equipment - Portable Asphalt Baghouses', - category: 'trailer', - }, - { - id: 'FECVYER', - name: 'Fixed Equipment - Conveyors', - category: 'trailer', - }, - { - id: 'FEDRMMX', - name: 'Fixed Equipment - Counter Flow Asphalt Drum Mixers', - category: 'trailer', - }, - { - id: 'FEPNYTR', - name: 'Fixed Equipment - Pony Trailers', - category: 'trailer', - }, - { - id: 'FESEMTR', - name: 'Fixed Equipment - Semi-Trailers', - category: 'trailer', - }, - { - id: 'FEWHELR', - name: 'Fixed Equipment - Wheeler Semi-Trailers', - category: 'wheeler', - }, - { - id: 'FLOATTR', - name: 'Float Trailers', - category: 'wheeler', - }, - { - id: 'FULLLTL', - name: 'Full Trailers', - category: 'trailer', - }, - { - id: 'HIBOEXP', - name: 'Semi-Trailers - Hiboys/Expandos', - category: 'trailer', - }, - { - id: 'HIBOFLT', - name: 'Semi-Trailers - Hiboys/Flat Decks', - category: 'trailer', - }, - { - id: 'JEEPSRG', - name: 'Jeeps', - category: 'trailer', - }, - { - id: 'LOGDGLG', - name: 'Legacy Logging Trailer Combinations - Tandem Pole Trailers, Dogloggers', - category: 'trailer', - }, - { - id: 'LOGFULL', - name: 'Logging Trailers - Full Trailers, Tri Axle, Quad Axle', - category: 'trailer', - }, - { - id: 'LOGNTAC', - name: 'Legacy Logging Trailer Combinations - Non-TAC B-Trains', - category: 'trailer', - }, - { - id: 'LOGOWBK', - name: 'Logging Trailers - Overwidth Bunks', - category: 'trailer', - }, - { - id: 'LOGSMEM', - name: 'Logging Semi-Trailer - Empty, 3.2 m Bunks', - category: 'trailer', - }, - { - id: 'LOGTNDM', - name: 'Legacy Logging Trailer Combinations - Single Axle Jeeps, Tandem Axle Pole Trailers, Dogloggers', - category: 'trailer', - }, - { - id: 'LOGTRIX', - name: 'Legacy Logging Trailer Combinations - Single Axle Jeeps, Tri Axle Trailers', - category: 'trailer', - }, - { - id: 'MHMBSHG', - name: 'Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW) with Attached Axles', - category: 'trailer', - }, - { - id: 'MHMBSHL', - name: 'Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW) with Attached Axles', - category: 'trailer', - }, - { - id: 'ODTRLEX', - name: 'Overdimensional Trailers and Semi-Trailers (For Export)', - category: 'trailer', - }, - { - id: 'OGOSFDT', - name: 'Oil and Gas - Oversize Oilfield Flat Deck Semi-Trailers', - category: 'trailer', - }, - { - id: 'PLATFRM', - name: 'Platform Trailers', - category: 'trailer', - }, - { - id: 'PMHWAAX', - name: 'Park Model Homes with Attached Axles', - category: 'trailer', - }, - { - id: 'POLETRL', - name: 'Pole Trailers', - category: 'trailer', - }, - { - id: 'PONYTRL', - name: 'Pony Trailers', - category: 'trailer', - }, - { - id: 'REDIMIX', - name: 'Ready Mix Concrete Pump Semi-Trailers', - category: 'trailer', - }, - { - id: 'SEMITRL', - name: 'Semi-Trailers', - category: 'trailer', - }, - { - id: 'STACTRN', - name: 'Semi-Trailers - A-Trains and C-Trains', - category: 'trailer', - }, - { - id: 'STBTRAN', - name: 'Semi-Trailers - B-Trains', - category: 'trailer', - }, - { - id: 'STCHIPS', - name: 'Semi-Trailers - Walled B-Trains (Chip Trucks)', - category: 'trailer', - }, - { - id: 'STCRANE', - name: 'Semi-Trailers with Crane', - category: 'trailer', - }, - { - id: 'STINGAT', - name: 'Stinger Steered Automobile Transporters', - category: 'trailer', - }, - { - id: 'STLOGNG', - name: 'Semi-Trailers - Logging', - category: 'trailer', - }, - { - id: 'STNTSHC', - name: 'Semi-Trailers - Non-Tac Short Chassis', - category: 'trailer', - }, - { - id: 'STREEFR', - name: 'Semi-Trailers - Insulated Vans with Reefer/Refrigeration Units', - category: 'trailer', - }, - { - id: 'STROPRT', - name: 'Steering Trailers - Manned', - category: 'trailer', - }, - { - id: 'STRSELF', - name: 'Steering Trailers - Self/Remote', - category: 'trailer', - }, - { - id: 'STSDBDK', - name: 'Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.', - category: 'trailer', - }, - { - id: 'STSTEER', - name: 'Semi-Trailers - Steering Trailers', - category: 'trailer', - }, - { - id: 'STSTNGR', - name: 'Semi-Trailers - Stinger Steered Automobile Transporters', - category: 'trailer', - }, - { - id: 'STWDTAN', - name: 'Semi-Trailers - Spread Tandems', - category: 'trailer', - }, - { - id: 'STWHELR', - name: 'Semi-Trailers - Wheelers', - category: 'trailer', - }, - { - id: 'STWIDWH', - name: 'Semi-Trailers - Wide Wheelers', - category: 'trailer', - }, - ], - }, - commodities: [], -}; diff --git a/policy-engine/src/_test/policy-config/mimimal.sample.ts b/policy-engine/src/_test/policy-config/mimimal.sample.ts deleted file mode 100644 index e59c577ea..000000000 --- a/policy-engine/src/_test/policy-config/mimimal.sample.ts +++ /dev/null @@ -1,39 +0,0 @@ -import { PolicyDefinition } from '../../types/policy-definition'; - -export const minimalPolicyDef: PolicyDefinition = { - version: '2024.03.18.001', - geographicRegions: [], - commonRules: [], - permitTypes: [ - { - id: 'TROS', - name: 'Term Oversize', - routingRequired: false, - weightDimensionRequired: false, - sizeDimensionRequired: false, - commodityRequired: false, - allowedVehicles: [], - rules: [], - }, - ], - globalWeightDefaults: { - powerUnits: [], - trailers: [], - }, - globalSizeDefaults: { - fp: 3, - rp: 6.5, - w: 2.6, - h: 4.15, - l: 31, - }, - vehicleCategories: { - trailerCategories: [], - powerUnitCategories: [], - }, - vehicleTypes: { - powerUnitTypes: [], - trailerTypes: [], - }, - commodities: [], -}; diff --git a/policy-engine/src/_test/policy-config/stos-vehicle-config.sample.ts b/policy-engine/src/_test/policy-config/stos-vehicle-config.sample.ts deleted file mode 100644 index 8218335d5..000000000 --- a/policy-engine/src/_test/policy-config/stos-vehicle-config.sample.ts +++ /dev/null @@ -1,4826 +0,0 @@ -import { PolicyDefinition } from '../../types/policy-definition'; - -export const stosPolicyConfig: PolicyDefinition = { - version: '2024.03.18.001', - geographicRegions: [ - { - id: 'LMN', - name: 'Lower Mainland', - }, - { - id: 'KTN', - name: 'Kootenay', - }, - { - id: 'PCE', - name: 'Peace', - }, - { - id: 'BCD', - name: 'BC Default', - }, - ], - commonRules: [], - permitTypes: [ - { - id: 'STOS', - name: 'Single Trip Oversize', - routingRequired: true, - weightDimensionRequired: false, - sizeDimensionRequired: true, - commodityRequired: true, - allowedCommodities: ['EMPTYXX', 'BRGBEAM', 'AUTOCRR', 'BRSHCUT'], - allowedVehicles: [ - 'DOLLIES', - 'FEBGHSE', - 'FECVYER', - 'FEDRMMX', - 'FEPNYTR', - 'FESEMTR', - 'FEWHELR', - 'REDIMIX', - 'CONCRET', - 'CRAFTAT', - 'CRAFTMB', - 'GRADERS', - 'MUNFITR', - 'OGOILSW', - 'OGSERVC', - 'OGSRRAH', - 'PICKRTT', - 'TOWVEHC', - ], - rules: [ - { - conditions: { - any: [ - { - not: { - fact: 'permitData', - path: '$.permitDuration', - operator: 'lessThanInclusive', - value: 7, - }, - }, - { - not: { - fact: 'permitData', - path: '$.permitDuration', - operator: 'greaterThan', - value: 0, - }, - }, - ], - }, - event: { - type: 'violation', - params: { - message: 'Duration must be 7 days or less', - code: 'field-validation-error', - fieldReference: 'permitData.permitDuration', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - path: '$.vehicleDetails.vehicleSubType', - operator: 'in', - value: { - fact: 'allowedVehicles', - }, - }, - }, - event: { - type: 'violation', - params: { - message: 'Vehicle type not permittable for this permit type', - code: 'field-validation-error', - fieldReference: 'permitData.vehicleDetails.vehicleSubType', - }, - }, - }, - ], - costRules: [ - { - fact: 'fixedCost', - params: { - cost: 15, - }, - }, - ], - }, - { - id: 'TROS', - name: 'Term Oversize', - routingRequired: false, - weightDimensionRequired: false, - sizeDimensionRequired: false, - commodityRequired: false, - allowedVehicles: ['TRKTRAC'], - rules: [], - }, - ], - globalWeightDefaults: { - powerUnits: [], - trailers: [], - }, - vehicleCategories: { - trailerCategories: [ - { - id: 'trailer', - name: 'Default trailer category', - }, - { - id: 'accessory', - name: 'Accessory trailer such as jeep or booster, to be used alongside other trailers. Not permittable on its own as a trailer in a combination.', - }, - { - id: 'pseudo', - name: 'Placeholder for a trailer in a combination with no trailer (such as when a brushcutter is permitted with no trailer).', - }, - ], - powerUnitCategories: [ - { - id: 'powerunit', - name: 'Default power unit category', - }, - ], - }, - vehicleTypes: { - powerUnitTypes: [ - { - id: 'BUSCRUM', - name: 'Buses/Crummies', - category: 'powerunit', - }, - { - id: 'BUSTRLR', - name: 'Inter-City Bus (Pulling Pony Trailer)', - category: 'powerunit', - }, - { - id: 'CONCRET', - name: 'Concrete Pumper Trucks', - category: 'powerunit', - }, - { - id: 'CRAFTAT', - name: 'Cranes, Rubber-Tired Loaders, Firetrucks - All Terrain', - category: 'powerunit', - }, - { - id: 'CRAFTMB', - name: 'Cranes, Rubber-Tired Loaders, Firetrucks - Mobile', - category: 'powerunit', - }, - { - id: 'DDCKBUS', - name: 'Double Decker Buses', - category: 'powerunit', - }, - { - id: 'FARMVEH', - name: 'Farm Vehicles', - category: 'powerunit', - }, - { - id: 'GRADERS', - name: 'Fixed Equipment - Trucks/Graders etc.', - category: 'powerunit', - }, - { - id: 'LCVRMDB', - name: 'Long Combination Vehicles (LCV) - Rocky Mountain Doubles', - category: 'powerunit', - }, - { - id: 'LCVTPDB', - name: 'Long Combination Vehicles (LCV) - Turnpike Doubles', - category: 'powerunit', - }, - { - id: 'LOGGING', - name: 'Logging Trucks', - category: 'powerunit', - }, - { - id: 'LOGOFFH', - name: 'Logging Trucks - Off-Highway', - category: 'powerunit', - }, - { - id: 'LWBTRCT', - name: 'Long Wheelbase Truck Tractors Exceeding 6.2 m up to 7.25 m', - category: 'powerunit', - }, - { - id: 'MUNFITR', - name: 'Municipal Fire Trucks', - category: 'powerunit', - }, - { - id: 'OGBEDTK', - name: 'Oil and Gas - Bed Trucks', - category: 'powerunit', - }, - { - id: 'OGOILSW', - name: 'Oil and Gas - Oilfield Sows', - category: 'powerunit', - }, - { - id: 'OGSERVC', - name: 'Oil and Gas - Service Rigs', - category: 'powerunit', - }, - { - id: 'OGSRRAH', - name: 'Oil and Gas - Service Rigs and Rathole Augers Only Equipped with Heavy Front Projected Crane (must exceed 14,000 kg tare weight)', - category: 'powerunit', - }, - { - id: 'PICKRTT', - name: 'Picker Truck Tractors', - category: 'powerunit', - }, - { - id: 'PLOWBLD', - name: 'Trucks Equipped with Front or Underbody Plow Blades', - category: 'powerunit', - }, - { - id: 'PUTAXIS', - name: 'Taxis', - category: 'powerunit', - }, - { - id: 'REGTRCK', - name: 'Trucks', - category: 'powerunit', - }, - { - id: 'SCRAPER', - name: 'Scrapers', - category: 'powerunit', - }, - { - id: 'SPAUTHV', - name: 'Specially Authorized Vehicles', - category: 'powerunit', - }, - { - id: 'STINGER', - name: 'Truck Tractors - Stinger Steered', - category: 'powerunit', - }, - { - id: 'TOWVEHC', - name: 'Tow Vehicles', - category: 'powerunit', - }, - { - id: 'TRKTRAC', - name: 'Truck Tractors', - category: 'powerunit', - }, - ], - trailerTypes: [ - { - id: 'BOOSTER', - name: 'Boosters', - category: 'accessory', - }, - { - id: 'DBTRBTR', - name: 'Tandem/Tridem Drive B-Train (Super B-Train)', - category: 'trailer', - }, - { - id: 'DOLLIES', - name: 'Dollies', - category: 'trailer', - }, - { - id: 'EXPANDO', - name: 'Expando Semi-Trailers', - category: 'trailer', - }, - { - id: 'FEBGHSE', - name: 'Fixed Equipment - Portable Asphalt Baghouses', - category: 'trailer', - }, - { - id: 'FECVYER', - name: 'Fixed Equipment - Conveyors (Semi-Trailers)', - category: 'trailer', - }, - { - id: 'FECVYPT', - name: 'Fixed Equipment - Conveyors (Pony Trailers)', - category: 'trailer', - }, - { - id: 'FEDRMMX', - name: 'Fixed Equipment - Counter Flow Asphalt Drum Mixers', - category: 'trailer', - }, - { - id: 'FEPNYTR', - name: 'Fixed Equipment - Pony Trailers', - category: 'trailer', - }, - { - id: 'FESEMTR', - name: 'Fixed Equipment - Semi-Trailers', - category: 'trailer', - }, - { - id: 'FEWHELR', - name: 'Fixed Equipment - Wheeler Semi-Trailers', - category: 'wheeler', - }, - { - id: 'FLOATTR', - name: 'Float Trailers', - category: 'wheeler', - }, - { - id: 'FULLLTL', - name: 'Full Trailers', - category: 'trailer', - }, - { - id: 'HIBOEXP', - name: 'Semi-Trailers - Hiboys/Expandos', - category: 'trailer', - }, - { - id: 'HIBOFLT', - name: 'Semi-Trailers - Hiboys/Flat Decks', - category: 'trailer', - }, - { - id: 'JEEPSRG', - name: 'Jeeps', - category: 'accessory', - }, - { - id: 'LOGDGLG', - name: 'Legacy Logging Trailer Combinations - Tandem Pole Trailers, Dogloggers', - category: 'trailer', - }, - { - id: 'LOGLGCY', - name: 'Legacy Logging Trailer Combinations', - category: 'trailer', - }, - { - id: 'LOGFULL', - name: 'Logging Trailer - Full Trailers, Tri Axle, Quad Axle', - category: 'trailer', - }, - { - id: 'LOGNTAC', - name: 'Legacy Logging Trailer Combinations - Non-TAC B-Trains', - category: 'trailer', - }, - { - id: 'LOGOWBK', - name: 'Logging Trailer - Overwidth Bunks', - category: 'trailer', - }, - { - id: 'LOGSMEM', - name: 'Logging Semi-Trailer - Empty, 3.2 m Bunks', - category: 'trailer', - }, - { - id: 'LOGTNDM', - name: 'Legacy Logging Trailer Combinations - Single Axle Jeeps, Tandem Axle Pole Trailers, Dogloggers', - category: 'trailer', - }, - { - id: 'LOGTRIX', - name: 'Legacy Logging Trailer Combinations - Single Axle Jeeps, Tri Axle Trailers', - category: 'trailer', - }, - { - id: 'MHMBSHG', - name: 'Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW) with Attached Axles', - category: 'trailer', - }, - { - id: 'MHMBSHL', - name: 'Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW) with Attached Axles', - category: 'trailer', - }, - { - id: 'ODTRLEX', - name: 'Overdimensional Trailers and Semi-Trailers (For Export)', - category: 'trailer', - }, - { - id: 'OGOSFDT', - name: 'Oil and Gas - Oversize Oilfield Flat Deck Semi-Trailers', - category: 'trailer', - }, - { - id: 'PLATFRM', - name: 'Platform Trailers', - category: 'trailer', - }, - { - id: 'PMHWAAX', - name: 'Park Model Homes with Attached Axles', - category: 'trailer', - }, - { - id: 'POLETRL', - name: 'Pole Trailers', - category: 'trailer', - }, - { - id: 'PONYTRL', - name: 'Pony Trailers', - category: 'trailer', - }, - { - id: 'REDIMIX', - name: 'Ready Mix Concrete Pump Semi-Trailers', - category: 'trailer', - }, - { - id: 'SEMITRL', - name: 'Semi-Trailers', - category: 'trailer', - }, - { - id: 'STACTRN', - name: 'Semi-Trailers - A-Trains and C-Trains', - category: 'trailer', - }, - { - id: 'STBTRAN', - name: 'Semi-Trailers - B-Trains', - category: 'trailer', - }, - { - id: 'STCHIPS', - name: 'Semi-Trailers - Walled B-Trains (Chip Trucks)', - category: 'trailer', - }, - { - id: 'STCRANE', - name: 'Semi-Trailers with Crane', - category: 'trailer', - }, - { - id: 'STINGAT', - name: 'Stinger Steered Automobile Transporters', - category: 'trailer', - }, - { - id: 'STLOGNG', - name: 'Semi-Trailers - Logging', - category: 'trailer', - }, - { - id: 'STNTSHC', - name: 'Semi-Trailers - Non-Tac Short Chassis', - category: 'trailer', - }, - { - id: 'STREEFR', - name: 'Semi-Trailers - Insulated Vans with Reefer/Refrigeration Units', - category: 'trailer', - }, - { - id: 'STROPRT', - name: 'Steering Trailers - Manned', - category: 'trailer', - }, - { - id: 'STRSELF', - name: 'Steering Trailers - Self/Remote', - category: 'trailer', - }, - { - id: 'STSDBDK', - name: 'Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.', - category: 'trailer', - }, - { - id: 'STSTEER', - name: 'Semi-Trailers - Steering Trailers', - category: 'trailer', - }, - { - id: 'STSTNGR', - name: 'Semi-Trailers - Stinger Steered Automobile Transporters', - category: 'trailer', - }, - { - id: 'STWDTAN', - name: 'Semi-Trailers - Spread Tandems', - category: 'trailer', - }, - { - id: 'STWHELR', - name: 'Semi-Trailers - Wheelers', - category: 'trailer', - }, - { - id: 'STWIDWH', - name: 'Semi-Trailers - Wide Wheelers', - category: 'trailer', - }, - { - id: 'NONEXXX', - name: 'None', - category: 'pseudo', - }, - ], - }, - commodities: [ - { - id: 'NONEXXX', - name: 'None', - size: { - powerUnits: [ - { - type: 'CONCRET', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - l: 15.5, - }, - ], - }, - ], - }, - { - type: 'CRAFTAT', - trailers: [ - { - type: 'DOLLIES', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 10, - rp: 6.5, - w: 3.8, - h: 4.3, - l: 25, - }, - ], - }, - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 10, - rp: 6.5, - w: 3.8, - h: 4.3, - l: 14, - regions: [ - { - region: 'PCE', - l: 15, - }, - ], - }, - ], - }, - ], - }, - { - type: 'CRAFTMB', - trailers: [ - { - type: 'DOLLIES', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 10, - rp: 6.5, - w: 3.8, - h: 4.3, - l: 25, - }, - ], - }, - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 10, - rp: 6.5, - w: 3.8, - h: 4.3, - l: 14, - regions: [ - { - region: 'PCE', - l: 15, - }, - ], - }, - ], - }, - ], - }, - { - type: 'DDCKBUS', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - h: 4.42, - regions: [ - { - region: 'LMN', - h: 4.3, - }, - { - region: 'KTN', - h: 4.3, - }, - { - region: 'PCE', - h: 4.3, - }, - ], - }, - ], - }, - ], - }, - { - type: 'GRADERS', - trailers: [ - { - type: 'FEPNYTR', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 4, - w: 3.2, - h: 4.3, - l: 31, - }, - ], - }, - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [ - { - w: 3.5, - h: 4.4, - l: 12.5, - regions: [ - { - region: 'LMN', - h: 4.3, - }, - { - region: 'KTN', - h: 4.3, - }, - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - ], - }, - { - type: 'BUSTRLR', - trailers: [ - { - type: 'PONYTRL', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [{}], - }, - ], - }, - { - type: 'LOGOFFH', - trailers: [ - { - type: 'STLOGNG', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 4.4, - }, - ], - }, - ], - }, - { - type: 'LCVRMDB', - trailers: [ - { - type: 'SEMITRL', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [ - { - l: 32, - regions: [ - { - region: 'PCE', - l: 31, - }, - ], - }, - ], - }, - ], - }, - { - type: 'LCVTPDB', - trailers: [ - { - type: 'SEMITRL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - l: 41, - }, - ], - }, - ], - }, - { - type: 'LWBTRCT', - trailers: [ - { - type: 'SEMITRL', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - w: 2.6, - h: 4.15, - l: 23, - }, - ], - }, - ], - }, - { - type: 'PICKRTT', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - w: 2.6, - h: 4.15, - l: 16, - }, - ], - }, - { - type: 'STCRANE', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 2.6, - h: 4.15, - l: 25, - }, - ], - }, - { - type: 'STROPRT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 40, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STRSELF', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 36, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - ], - }, - { - type: 'SCRAPER', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - l: 12.5, - }, - ], - }, - ], - }, - { - type: 'TRKTRAC', - trailers: [ - { - type: 'FECVYER', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 4, - rp: 9.5, - w: 3.8, - h: 4.72, - l: 31, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'FEDRMMX', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.8, - h: 4.72, - l: 31, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'FEBGHSE', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 4.26, - h: 4.72, - l: 31, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'FESEMTR', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.8, - h: 4.72, - l: 31, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'FEWHELR', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 31, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'ODTRLEX', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [ - { - w: 3.65, - }, - ], - }, - { - type: 'REDIMIX', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - }, - ], - }, - { - type: 'HIBOFLT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - h: 4.3, - l: 31, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STREEFR', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - h: 4.3, - }, - ], - }, - { - type: 'STNTSHC', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [{}], - }, - { - type: 'STSDBDK', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.2, - h: 4.3, - l: 27.5, - regions: [ - { - region: 'PCE', - l: 32, - }, - ], - }, - ], - }, - { - type: 'STROPRT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - h: 4.15, - l: 40, - }, - ], - }, - { - type: 'STRSELF', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - l: 36, - }, - ], - }, - ], - }, - { - type: 'REGTRCK', - trailers: [ - { - type: 'FECVYPT', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 4, - rp: 9.5, - w: 3.2, - h: 4.3, - l: 31, - }, - ], - }, - { - type: 'FEPNYTR', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 4, - w: 3.2, - h: 4.3, - l: 31, - }, - ], - }, - { - type: 'FULLLTL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 6.5, - w: 3.8, - h: 4.3, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'MHMBSHL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 1, - rp: 6.9, - h: 4.88, - l: 31.5, - regions: [ - { - region: 'PCE', - h: 5.33, - l: 36, - }, - ], - }, - ], - }, - { - type: 'MHMBSHG', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 1, - rp: 6.9, - h: 4.88, - l: 31.5, - regions: [ - { - region: 'PCE', - h: 5.33, - l: 36, - }, - ], - }, - ], - }, - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 1, - rp: 6.5, - w: 3.2, - h: 4.3, - l: 16, - regions: [ - { - region: 'PCE', - h: 4.4, - }, - ], - }, - ], - }, - { - type: 'ODTRLEX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 3.65, - }, - ], - }, - { - type: 'PMHWAAX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.9, - w: 4.4, - h: 4.88, - l: 31.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'PONYTRL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 6.5, - w: 3.2, - h: 4.3, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - ], - }, - { - type: 'PLOWBLD', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 3.2, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'DOGLOGG', - name: 'Doglogger/Sjostrum Trailers (decked)', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 5, - l: 13.5, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'GRTBBUK', - name: 'Grader, Tractor Blades, Buckets', - size: { - powerUnits: [ - { - type: 'GRADERS', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 4.4, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'HAYRACK', - name: 'Hayrack Semi-Trailer with a Folded Chassis/Empty Piggyback', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'STLOGNG', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 5, - h: 4.15, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'IMCONTN', - name: 'Intermodal Containers', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'STACTRN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - h: 4.4, - l: 26, - }, - ], - }, - { - type: 'STBTRAN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - h: 4.4, - l: 27.5, - }, - ], - }, - { - type: 'HIBOFLT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - h: 4.4, - }, - ], - }, - ], - }, - { - type: 'REGTRCK', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - h: 4.4, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'IMCONWS', - name: 'Intermodal Containers without Sides', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'STSDBDK', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 4.4, - h: 4.72, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'LPBOOMS', - name: 'Logs, Poles And Boomsticks (Up To 20.1)', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'FULLLTL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 2.9, - l: 27.5, - }, - ], - }, - { - type: 'LOGLGCY', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 5, - w: 2.6, - l: 25, - }, - ], - }, - { - type: 'POLETRL', - jeep: true, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 2.9, - l: 27.5, - }, - ], - }, - { - type: 'STACTRN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 2.9, - l: 26, - }, - ], - }, - { - type: 'STBTRAN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 2.9, - l: 27.5, - }, - ], - }, - { - type: 'HIBOFLT', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 2.9, - l: 25, - }, - ], - }, - { - type: 'STLOGNG', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 2.9, - l: 25, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'LPBOOML', - name: 'Logs, Poles And Boomsticks (Over 20.1)', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'LOGFULL', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [ - { - fp: 10, - rp: 10, - l: 40, - }, - ], - }, - { - type: 'POLETRL', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - fp: 8, - rp: 9, - l: 40, - }, - ], - }, - { - type: 'STROPRT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 10, - rp: 10, - l: 40, - }, - ], - }, - { - type: 'STRSELF', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 10, - rp: 10, - l: 36, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'MFHOMES', - name: 'Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW)', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'SEMITRL', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - fp: 3, - rp: 7.5, - h: 4.88, - l: 31.5, - regions: [ - { - region: 'PCE', - h: 5.33, - l: 36, - }, - ], - }, - ], - }, - { - type: 'STSDBDK', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - fp: 3, - rp: 7.5, - h: 4.88, - l: 31.5, - regions: [ - { - region: 'PCE', - h: 5.33, - l: 36, - }, - ], - }, - ], - }, - ], - }, - { - type: 'REGTRCK', - trailers: [ - { - type: 'DOLLIES', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [ - { - fp: 1, - rp: 6.9, - h: 4.88, - l: 31.5, - regions: [ - { - region: 'PCE', - h: 5.33, - l: 36, - }, - ], - }, - ], - }, - { - type: 'FLOATTR', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [ - { - fp: 1, - rp: 6.9, - h: 4.57, - l: 31.5, - regions: [ - { - region: 'PCE', - h: 5.33, - l: 36, - }, - ], - }, - ], - }, - { - type: 'PONYTRL', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [ - { - fp: 1, - rp: 6.9, - h: 4.88, - l: 31.5, - regions: [ - { - region: 'PCE', - h: 5.33, - l: 36, - }, - ], - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'MFHOMEL', - name: 'Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW)', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'SEMITRL', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - fp: 3, - rp: 7.5, - h: 4.88, - l: 31.5, - regions: [ - { - region: 'PCE', - h: 5.33, - l: 36, - }, - ], - }, - ], - }, - { - type: 'STSDBDK', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - fp: 3, - rp: 7.5, - h: 4.88, - l: 31.5, - regions: [ - { - region: 'PCE', - h: 5.33, - l: 36, - }, - ], - }, - ], - }, - ], - }, - { - type: 'REGTRCK', - trailers: [ - { - type: 'DOLLIES', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [ - { - fp: 1, - rp: 6.9, - h: 4.88, - l: 31.5, - regions: [ - { - region: 'PCE', - h: 5.33, - l: 36, - }, - ], - }, - ], - }, - { - type: 'FLOATTR', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [ - { - fp: 1, - rp: 6.9, - h: 4.57, - l: 31.5, - regions: [ - { - region: 'PCE', - h: 5.33, - l: 36, - }, - ], - }, - ], - }, - { - type: 'PONYTRL', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [ - { - fp: 1, - rp: 6.9, - h: 4.88, - l: 31.5, - regions: [ - { - region: 'PCE', - h: 5.33, - l: 36, - }, - ], - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'PARKMHS', - name: 'Park Model Homes', - size: { - powerUnits: [ - { - type: 'REGTRCK', - trailers: [ - { - type: 'DOLLIES', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [ - { - fp: 3, - rp: 6.9, - w: 4.4, - h: 4.88, - l: 31.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'FLOATTR', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [ - { - fp: 3, - rp: 6.9, - w: 4.4, - h: 4.88, - l: 31.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'PONYTRL', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [ - { - fp: 3, - rp: 6.9, - w: 4.4, - h: 4.88, - l: 31.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'PIPESTL', - name: 'Pipe And Steel Products (Rebar, Pilings, Reinforcing Steel, Etc.)', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'HIBOEXP', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.2, - h: 4.3, - l: 31, - }, - ], - }, - { - type: 'HIBOFLT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.2, - h: 4.3, - l: 27.5, - }, - ], - }, - { - type: 'STSTEER', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.2, - h: 4.3, - l: 36, - }, - ], - }, - { - type: 'STROPRT', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.2, - h: 4.3, - l: 40, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'REDUCBL', - name: 'Reducible Loads', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'STLOGNG', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 3.2, - h: 4.15, - l: 27.5, - }, - ], - }, - { - type: 'PLATFRM', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - w: 3.2, - h: 4.3, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'SEMITRL', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 3.2, - h: 4.3, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STACTRN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 3.2, - h: 4.3, - l: 26, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STBTRAN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 3.2, - h: 4.3, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'HIBOEXP', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 3.2, - h: 4.3, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'HIBOFLT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 3.2, - h: 4.3, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STSDBDK', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 3.2, - h: 4.3, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STSTEER', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 3.2, - h: 4.3, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STWHELR', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - w: 3.2, - h: 4.3, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STWIDWH', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - w: 3.2, - h: 4.3, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STCRANE', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 3.2, - h: 4.3, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STROPRT', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - w: 3.2, - h: 4.3, - l: 40, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STRSELF', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 3.2, - h: 4.3, - l: 36, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - ], - }, - { - type: 'PICKRTT', - trailers: [ - { - type: 'SEMITRL', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - w: 3.2, - h: 4.3, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'HIBOEXP', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - w: 3.2, - h: 4.3, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'HIBOFLT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - w: 3.2, - h: 4.3, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STSDBDK', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - w: 3.2, - h: 4.3, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - ], - }, - { - type: 'STINGER', - trailers: [ - { - type: 'SEMITRL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 1, - rp: 1.2, - h: 4.3, - l: 25, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STSTNGR', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 1, - rp: 1.2, - h: 4.3, - l: 25, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - ], - }, - { - type: 'REGTRCK', - trailers: [ - { - type: 'DOLLIES', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 1, - rp: 6.5, - w: 3.2, - h: 4.3, - l: 25, - regions: [ - { - region: 'PCE', - h: 4.4, - }, - ], - }, - ], - }, - { - type: 'FULLLTL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 1, - rp: 6.5, - w: 3.2, - h: 4.3, - l: 25, - regions: [ - { - region: 'PCE', - h: 4.4, - }, - ], - }, - ], - }, - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 1, - rp: 6.5, - w: 3.2, - h: 4.3, - l: 16, - regions: [ - { - region: 'PCE', - h: 4.4, - }, - ], - }, - ], - }, - { - type: 'PONYTRL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 1, - rp: 6.5, - w: 3.2, - h: 4.3, - l: 25, - regions: [ - { - region: 'PCE', - h: 4.4, - }, - ], - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'SCRAPER', - name: 'Scraper on Dollies', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'DOLLIES', - jeep: true, - booster: false, - selfIssue: false, - sizeDimensions: [ - { - w: 3.2, - h: 4.3, - l: 25, - regions: [ - { - region: 'PCE', - h: 4.4, - }, - ], - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'OILFILD', - name: 'Oil Field Equipment', - size: { - powerUnits: [ - { - type: 'OGBEDTK', - trailers: [ - { - type: 'EXPANDO', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - h: 4.3, - l: 27.5, - }, - ], - }, - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 5, - w: 3.3, - h: 4.3, - l: 14, - }, - ], - }, - { - type: 'OGOSFDT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.3, - h: 4.3, - l: 23, - }, - ], - }, - ], - }, - { - type: 'OGOILSW', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 5, - w: 3.2, - h: 4.3, - l: 15, - }, - ], - }, - { - type: 'HIBOFLT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.2, - h: 4.3, - l: 25, - }, - ], - }, - ], - }, - { - type: 'OGSERVC', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 10, - rp: 6.5, - w: 3.8, - h: 4.3, - l: 15, - }, - ], - }, - { - type: 'PONYTRL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 10, - rp: 6.5, - w: 3.8, - h: 4.3, - l: 23, - }, - ], - }, - ], - }, - { - type: 'OGSRRAH', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 10, - rp: 6.5, - w: 2.9, - h: 4.15, - l: 15.5, - }, - ], - }, - { - type: 'PONYTRL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 10, - rp: 6.5, - w: 2.9, - h: 4.15, - l: 23, - }, - ], - }, - ], - }, - { - type: 'TRKTRAC', - trailers: [ - { - type: 'OGOSFDT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.3, - h: 4.3, - l: 23, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'JPTRLOG', - name: 'Tandem Jeep/Pole Trailer Loaded on Logging Truck', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 5, - w: 2.9, - h: 4.3, - }, - ], - }, - ], - }, - { - type: 'REGTRCK', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 5, - w: 2.9, - h: 4.3, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'TOWDISB', - name: 'Tow Trucks And Disabled Vehicles', - size: { - powerUnits: [ - { - type: 'TOWVEHC', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - h: 4.3, - l: 27.5, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'TRQDLOG', - name: 'Tri-Axle or Quad Axle Full Trailer Loaded on Logging Truck', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 5, - h: 4.3, - l: 13.5, - }, - ], - }, - ], - }, - { - type: 'REGTRCK', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 5, - h: 4.3, - l: 13.5, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'WOODCHP', - name: 'Wood Chips, Residuals', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'STBTRAN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - h: 4.45, - l: 27.5, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'EMPTYXX', - name: 'Empty', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'LOGOWBK', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 0, - rp: 0, - w: 3.2, - }, - ], - }, - { - type: 'PLATFRM', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - w: 3.2, - h: 4.88, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'HIBOEXP', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - l: 31, - }, - ], - }, - { - type: 'HIBOFLT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - l: 27.5, - }, - ], - }, - { - type: 'STSDBDK', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.2, - l: 31, - }, - ], - }, - { - type: 'STWHELR', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - w: 3.2, - h: 4.88, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STWIDWH', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - w: 3.2, - h: 4.88, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STCRANE', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 3.2, - h: 4.88, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - ], - }, - { - type: 'PICKRTT', - trailers: [ - { - type: 'OGOSFDT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.2, - h: 4.3, - l: 23, - }, - ], - }, - { - type: 'PLATFRM', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - w: 3.2, - h: 4.88, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'HIBOEXP', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - l: 25, - regions: [ - { - region: 'PCE', - l: 27.5, - }, - ], - }, - ], - }, - { - type: 'STWHELR', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - w: 3.2, - h: 4.88, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STWIDWH', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - w: 3.2, - h: 4.88, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STCRANE', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 3.2, - h: 4.88, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'GRBBINS', - name: 'Garbage Bins', - size: { - powerUnits: [ - { - type: 'REGTRCK', - trailers: [ - { - type: 'FULLLTL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - }, - ], - }, - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - }, - ], - }, - { - type: 'PONYTRL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'LAMBEAM', - name: 'Laminated Beams', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'POLETRL', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - l: 40, - }, - ], - }, - { - type: 'HIBOEXP', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - l: 31, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'HAYLREC', - name: 'Hay Bales Large Rectangular', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'STACTRN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 3.05, - h: 4.3, - l: 26, - regions: [ - { - region: 'PCE', - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'STBTRAN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 3.05, - h: 4.3, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'HIBOFLT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.05, - h: 4.4, - regions: [ - { - region: 'LMN', - h: 4.3, - }, - { - region: 'KTN', - h: 4.3, - }, - { - region: 'PCE', - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'STSDBDK', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.05, - h: 4.3, - regions: [ - { - region: 'PCE', - h: 4.8, - }, - ], - }, - ], - }, - ], - }, - { - type: 'REGTRCK', - trailers: [ - { - type: 'FULLLTL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 4, - w: 3.05, - h: 4.3, - regions: [ - { - region: 'PCE', - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 3.05, - h: 4.3, - regions: [ - { - region: 'PCE', - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'PONYTRL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 4, - w: 3.05, - h: 4.3, - regions: [ - { - region: 'PCE', - h: 4.8, - }, - ], - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'HAYROND', - name: 'Hay Bales Round', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'STACTRN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 3.5, - h: 4.3, - l: 26, - regions: [ - { - region: 'PCE', - w: 3.84, - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'STBTRAN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 3.5, - h: 4.3, - l: 27.5, - regions: [ - { - region: 'PCE', - w: 3.84, - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'HIBOFLT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.5, - h: 4.3, - regions: [ - { - region: 'PCE', - w: 3.84, - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'STSDBDK', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.5, - h: 4.3, - regions: [ - { - region: 'PCE', - w: 3.84, - h: 4.8, - }, - ], - }, - ], - }, - ], - }, - { - type: 'REGTRCK', - trailers: [ - { - type: 'FULLLTL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 4, - w: 3.5, - h: 4.3, - regions: [ - { - region: 'PCE', - w: 3.84, - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 3.5, - h: 4.3, - regions: [ - { - region: 'PCE', - w: 3.84, - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'PONYTRL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 4, - w: 3.5, - h: 4.3, - regions: [ - { - region: 'PCE', - w: 3.84, - h: 4.8, - }, - ], - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'HAYSREC', - name: 'Hay Bales Small Rectangular', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'STACTRN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 3.05, - h: 4.3, - l: 26, - regions: [ - { - region: 'PCE', - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'STBTRAN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 3.05, - h: 4.3, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'HIBOFLT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.05, - h: 4.3, - regions: [ - { - region: 'PCE', - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'STSDBDK', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.05, - h: 4.3, - regions: [ - { - region: 'PCE', - h: 4.8, - }, - ], - }, - ], - }, - ], - }, - { - type: 'REGTRCK', - trailers: [ - { - type: 'FULLLTL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 4, - w: 3.05, - h: 4.3, - regions: [ - { - region: 'PCE', - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 3.05, - h: 4.3, - regions: [ - { - region: 'PCE', - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'PONYTRL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 4, - w: 3.05, - h: 4.3, - regions: [ - { - region: 'PCE', - h: 4.8, - }, - ], - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'BRGBEAM', - name: 'Bridge Beams', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'POLETRL', - jeep: true, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - l: 31, - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'NONREDU', - name: 'Non-Reducible Loads', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'STLOGNG', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [ - { - w: 3.8, - h: 4.15, - l: 27.5, - }, - ], - }, - { - type: 'PLATFRM', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'SEMITRL', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STACTRN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.4, - l: 26, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STBTRAN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.4, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'HIBOEXP', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.4, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'HIBOFLT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.4, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STSDBDK', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STSTEER', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STWHELR', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STWIDWH', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STCRANE', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STROPRT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 40, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STRSELF', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 36, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - ], - }, - { - type: 'PICKRTT', - trailers: [ - { - type: 'OGOSFDT', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.3, - h: 4.3, - l: 23, - }, - ], - }, - { - type: 'SEMITRL', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - w: 5, - h: 4.88, - l: 25, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'HIBOEXP', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - w: 5, - h: 4.4, - l: 25, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'HIBOFLT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - w: 5, - h: 4.4, - l: 25, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STSDBDK', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - fp: 3, - w: 5, - h: 4.88, - l: 25, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STSTEER', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STWHELR', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STWIDWH', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STCRANE', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 27.5, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STROPRT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 40, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STRSELF', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - w: 5, - h: 4.88, - l: 36, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - ], - }, - { - type: 'STINGER', - trailers: [ - { - type: 'SEMITRL', - jeep: false, - booster: false, - selfIssue: false, - sizeDimensions: [ - { - fp: 1, - rp: 1.2, - h: 4.88, - l: 25, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STSTNGR', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 1, - rp: 1.2, - h: 4.88, - l: 25, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - ], - }, - { - type: 'REGTRCK', - trailers: [ - { - type: 'DOLLIES', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 1, - rp: 6.5, - w: 5, - h: 4.88, - l: 25, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'FULLLTL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 1, - rp: 6.5, - w: 5, - h: 4.88, - l: 25, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 1, - rp: 6.5, - w: 5, - h: 4.88, - l: 16, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'PONYTRL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 1, - rp: 6.5, - w: 5, - h: 4.88, - l: 25, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'AUTOCRR', - name: 'Auto Carrier, Campers And Boats (Stinger Steered Transporters Only)', - size: { - powerUnits: [ - { - type: 'STINGER', - trailers: [ - { - type: 'STSTNGR', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 1, - rp: 1.2, - h: 4.4, - l: 25, - regions: [ - { - region: 'LMN', - h: 4.3, - }, - { - region: 'KTN', - h: 4.3, - }, - { - region: 'PCE', - h: 4.88, - }, - ], - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'HAYRNPR', - name: 'Hay Bales (Round) Peace River Only', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'STACTRN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 3.5, - h: 4.3, - l: 26, - regions: [ - { - region: 'PCE', - w: 3.84, - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'STBTRAN', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 3.5, - h: 4.3, - regions: [ - { - region: 'PCE', - w: 3.84, - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'HIBOFLT', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.5, - h: 4.3, - regions: [ - { - region: 'PCE', - w: 3.84, - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'STSDBDK', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.5, - h: 4.3, - regions: [ - { - region: 'PCE', - w: 3.84, - h: 4.8, - }, - ], - }, - ], - }, - ], - }, - { - type: 'REGTRCK', - trailers: [ - { - type: 'FULLLTL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 4, - w: 3.5, - h: 4.3, - regions: [ - { - region: 'PCE', - w: 3.84, - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - w: 3.5, - h: 4.3, - regions: [ - { - region: 'PCE', - w: 3.84, - h: 4.8, - }, - ], - }, - ], - }, - { - type: 'PONYTRL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 4, - w: 3.5, - h: 4.3, - regions: [ - { - region: 'PCE', - w: 3.84, - h: 4.8, - }, - ], - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'BRSHCUT', - name: 'Brushcutters (Peace Only)', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'SEMITRL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - regions: [ - { - region: 'PCE', - w: 4.57, - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'STSDBDK', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - regions: [ - { - region: 'PCE', - w: 4.57, - h: 5.33, - }, - ], - }, - ], - }, - ], - }, - { - type: 'REGTRCK', - trailers: [ - { - type: 'NONEXXX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - regions: [ - { - region: 'PCE', - w: 4.57, - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'PONYTRL', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - regions: [ - { - region: 'PCE', - w: 3.8, - h: 5.33, - }, - ], - }, - ], - }, - ], - }, - ], - }, - }, - { - id: 'FIXEDEQ', - name: 'Fixed Equipment', - size: { - powerUnits: [ - { - type: 'TRKTRAC', - trailers: [ - { - type: 'FECVYER', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 4, - rp: 9.5, - w: 3.8, - h: 4.72, - l: 31, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'FEDRMMX', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.8, - h: 4.72, - l: 31, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'FEBGHSE', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 4.26, - h: 4.72, - l: 31, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'FESEMTR', - jeep: true, - booster: true, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.8, - h: 4.72, - l: 31, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'FEWHELR', - jeep: true, - booster: true, - selfIssue: false, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.8, - h: 4.72, - l: 31, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - ], - }, - { - type: 'REGTRCK', - trailers: [ - { - type: 'FECVYPT', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 4, - rp: 9.5, - w: 3.2, - h: 4.3, - l: 31, - }, - ], - }, - { - type: 'FEDRMMX', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 3.8, - h: 4.72, - l: 31, - regions: [ - { - region: 'PCE', - h: 5.33, - }, - ], - }, - ], - }, - { - type: 'FEPNYTR', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - rp: 4, - w: 3.2, - h: 4.3, - l: 31, - }, - ], - }, - { - type: 'FEBGHSE', - jeep: false, - booster: false, - selfIssue: true, - sizeDimensions: [ - { - fp: 3, - rp: 6.5, - w: 4.26, - h: 4.72, - l: 31, - }, - ], - }, - ], - }, - ], - }, - }, - ], - globalSizeDefaults: { - fp: 3, - rp: 6.5, - w: 2.6, - h: 4.15, - l: 31, - }, -}; diff --git a/policy-engine/src/_test/policy-config/tros-multiple-cost-rules.sample.ts b/policy-engine/src/_test/policy-config/tros-multiple-cost-rules.sample.ts deleted file mode 100644 index 0fadd0709..000000000 --- a/policy-engine/src/_test/policy-config/tros-multiple-cost-rules.sample.ts +++ /dev/null @@ -1,53 +0,0 @@ -import { PolicyDefinition } from '../../types/policy-definition'; - -export const multipleCostRules: PolicyDefinition = { - version: '2024.03.18.001', - geographicRegions: [], - commonRules: [], - permitTypes: [ - { - id: 'TROS', - name: 'Term Oversize', - routingRequired: false, - weightDimensionRequired: false, - sizeDimensionRequired: false, - commodityRequired: false, - allowedVehicles: [], - rules: [], - costRules: [ - { - fact: 'costPerMonth', - params: { - cost: 30, - }, - }, - { - fact: 'fixedCost', - params: { - cost: 15, - }, - }, - ], - }, - ], - globalWeightDefaults: { - powerUnits: [], - trailers: [], - }, - vehicleCategories: { - trailerCategories: [], - powerUnitCategories: [], - }, - vehicleTypes: { - powerUnitTypes: [], - trailerTypes: [], - }, - commodities: [], - globalSizeDefaults: { - fp: 3, - rp: 6.5, - w: 2.6, - h: 4.15, - l: 31, - }, -}; diff --git a/policy-engine/src/_test/policy-config/tros-no-allowed-vehicles.sample.ts b/policy-engine/src/_test/policy-config/tros-no-allowed-vehicles.sample.ts deleted file mode 100644 index 762e7a43d..000000000 --- a/policy-engine/src/_test/policy-config/tros-no-allowed-vehicles.sample.ts +++ /dev/null @@ -1,60 +0,0 @@ -import { PolicyDefinition } from '../../types/policy-definition'; - -export const trosNoAllowedVehicles: PolicyDefinition = { - version: '2024.03.18.001', - geographicRegions: [], - commonRules: [], - permitTypes: [ - { - id: 'TROS', - name: 'Term Oversize', - routingRequired: false, - weightDimensionRequired: false, - sizeDimensionRequired: false, - commodityRequired: false, - allowedVehicles: [], - rules: [ - { - conditions: { - not: { - fact: 'permitData', - path: '$.vehicleDetails.vehicleSubType', - operator: 'in', - value: { - fact: 'allowedVehicles', - }, - }, - }, - event: { - type: 'violation', - params: { - message: 'Vehicle type not permittable for this permit type', - code: 'field-validation-error', - fieldReference: 'permitData.vehicleDetails.vehicleSubType', - }, - }, - }, - ], - }, - ], - globalWeightDefaults: { - powerUnits: [], - trailers: [], - }, - globalSizeDefaults: { - fp: 3, - rp: 6.5, - w: 2.6, - h: 4.15, - l: 31, - }, - vehicleCategories: { - trailerCategories: [], - powerUnitCategories: [], - }, - vehicleTypes: { - powerUnitTypes: [], - trailerTypes: [], - }, - commodities: [], -}; diff --git a/policy-engine/src/_test/policy-config/tros-no-params.sample.ts b/policy-engine/src/_test/policy-config/tros-no-params.sample.ts deleted file mode 100644 index 252901b81..000000000 --- a/policy-engine/src/_test/policy-config/tros-no-params.sample.ts +++ /dev/null @@ -1,55 +0,0 @@ -import { PolicyDefinition } from '../../types/policy-definition'; - -export const trosNoParamsSample: PolicyDefinition = { - version: '2024.03.18.001', - geographicRegions: [], - commonRules: [], - permitTypes: [ - { - id: 'TROS', - name: 'Term Oversize', - routingRequired: false, - weightDimensionRequired: false, - sizeDimensionRequired: false, - commodityRequired: false, - allowedVehicles: [], - rules: [ - { - conditions: { - not: { - fact: 'permitData', - path: '$.vehicleDetails.vehicleSubType', - operator: 'in', - value: { - fact: 'allowedVehicles', - }, - }, - }, - event: { - type: 'violation', - }, - }, - ], - }, - ], - globalWeightDefaults: { - powerUnits: [], - trailers: [], - }, - globalSizeDefaults: { - fp: 3, - rp: 6.5, - w: 2.6, - h: 4.15, - l: 31, - }, - vehicleCategories: { - trailerCategories: [], - powerUnitCategories: [], - }, - vehicleTypes: { - powerUnitTypes: [], - trailerTypes: [], - }, - commodities: [], -}; diff --git a/policy-engine/src/_test/policy-config/tros-only.sample.ts b/policy-engine/src/_test/policy-config/tros-only.sample.ts deleted file mode 100644 index f64cfc16e..000000000 --- a/policy-engine/src/_test/policy-config/tros-only.sample.ts +++ /dev/null @@ -1,170 +0,0 @@ -import { PolicyDefinition } from '../../types/policy-definition'; - -export const trosOnly: PolicyDefinition = { - version: '2024.03.18.001', - geographicRegions: [], - commonRules: [ - { - conditions: { - not: { - fact: 'permitData', - path: '$.companyName', - operator: 'stringMinimumLength', - value: 1, - }, - }, - event: { - type: 'violation', - params: { - message: 'Company is required', - code: 'field-validation-error', - fieldReference: 'permitData.companyName', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - path: '$.contactDetails.firstName', - operator: 'stringMinimumLength', - value: 1, - }, - }, - event: { - type: 'violation', - params: { - message: 'Contact first name is required', - code: 'field-validation-error', - fieldReference: 'permitData.contactDetails.firstName', - }, - }, - }, - { - conditions: { - any: [ - { - fact: 'permitData', - path: '$.startDate', - operator: 'dateLessThan', - value: { - fact: 'validationDate', - }, - }, - ], - }, - event: { - type: 'violation', - params: { - message: 'Permit start date cannot be in the past', - code: 'field-validation-error', - fieldReference: 'permitData.startDate', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - path: '$.vehicleDetails.vin', - operator: 'regex', - value: '^[a-zA-Z0-9]{6}$', - }, - }, - event: { - type: 'violation', - params: { - message: - 'Vehicle Identification Number (vin) must be 6 alphanumeric characters', - code: 'field-validation-error', - fieldReference: 'permitData.vehicleDetails.vin', - }, - }, - }, - ], - permitTypes: [ - { - id: 'TROS', - name: 'Term Oversize', - routingRequired: false, - weightDimensionRequired: false, - sizeDimensionRequired: false, - commodityRequired: false, - allowedVehicles: ['TRKTRAK', 'TRUCK', 'SEMITRL', 'PLTFRM', 'OGSEMI'], - rules: [ - { - conditions: { - all: [ - { - not: { - fact: 'permitData', - path: '$.permitDuration', - operator: 'in', - value: [30, 60, 90, 120, 150, 180, 210, 240, 270, 300, 330], - }, - }, - { - not: { - fact: 'permitData', - path: '$.permitDuration', - operator: 'equal', - value: { - fact: 'daysInPermitYear', - }, - }, - }, - ], - }, - event: { - type: 'violation', - params: { - message: 'Duration must be in 30 day increments or a full year', - code: 'field-validation-error', - fieldReference: 'permitData.permitDuration', - }, - }, - }, - { - conditions: { - not: { - fact: 'permitData', - path: '$.vehicleDetails.vehicleSubType', - operator: 'in', - value: { - fact: 'allowedVehicles', - }, - }, - }, - event: { - type: 'violation', - params: { - message: 'Vehicle type not permittable for this permit type', - code: 'field-validation-error', - fieldReference: 'permitData.vehicleDetails.vehicleSubType', - }, - }, - }, - ], - }, - ], - globalWeightDefaults: { - powerUnits: [], - trailers: [], - }, - globalSizeDefaults: { - fp: 3, - rp: 6.5, - w: 2.6, - h: 4.15, - l: 31, - }, - vehicleCategories: { - trailerCategories: [], - powerUnitCategories: [], - }, - vehicleTypes: { - powerUnitTypes: [], - trailerTypes: [], - }, - commodities: [], -}; diff --git a/policy-engine/src/_test/unit/configuration.spec.ts b/policy-engine/src/_test/unit/configuration.spec.ts deleted file mode 100644 index 25bb33c61..000000000 --- a/policy-engine/src/_test/unit/configuration.spec.ts +++ /dev/null @@ -1,143 +0,0 @@ -import { Policy } from '../../policy-engine'; -import { stosPolicyConfig } from '../policy-config/stos-vehicle-config.sample'; - -describe('Permit Engine Oversize Configuration Functions', () => { - const policy: Policy = new Policy(stosPolicyConfig); - - it('should retrieve all permittable power unit types for STOS', async () => { - const puTypes = policy.getPermittablePowerUnitTypes('STOS', 'EMPTYXX'); - expect(puTypes.size).toBe(2); - expect(puTypes.keys()).toContain('TRKTRAC'); - expect(puTypes.keys()).toContain('PICKRTT'); - }); - - it('should throw an error for invalid permit type', async () => { - expect(() => { - policy.getPermittablePowerUnitTypes('_INVALID', 'EMPTYXX'); - }).toThrow(); - }); - - it('should return an empty map for invalid commodity', async () => { - const puTypes = policy.getPermittablePowerUnitTypes('STOS', '_INVALID'); - expect(puTypes.size).toBe(0); - }); -}); - -describe('Permit Engine Get Next Permittable Vehicles', () => { - const policy: Policy = new Policy(stosPolicyConfig); - - it('should return permittable power units with empty current configuration', async () => { - const vehicles = policy.getNextPermittableVehicles('STOS', 'LAMBEAM', []); - expect(vehicles.size).toBe(1); - expect(vehicles.keys()).toContain('TRKTRAC'); - }); - - it('should return jeep and a trailer when current config is just power unit', async () => { - const vehicles = policy.getNextPermittableVehicles('STOS', 'LAMBEAM', [ - 'TRKTRAC', - ]); - expect(vehicles.size).toBe(3); - expect(vehicles.keys()).toContain('JEEPSRG'); - expect(vehicles.keys()).toContain('POLETRL'); - expect(vehicles.keys()).toContain('HIBOEXP'); - }); - - it('should return jeep and a trailer when current config is power unit and jeep', async () => { - const vehicles = policy.getNextPermittableVehicles('STOS', 'LAMBEAM', [ - 'TRKTRAC', - 'JEEPSRG', - ]); - expect(vehicles.size).toBe(3); - expect(vehicles.keys()).toContain('JEEPSRG'); - expect(vehicles.keys()).toContain('POLETRL'); - expect(vehicles.keys()).toContain('HIBOEXP'); - }); - - it('should return booster when current config is power unit and trailer', async () => { - const vehicles = policy.getNextPermittableVehicles('STOS', 'LAMBEAM', [ - 'TRKTRAC', - 'POLETRL', - ]); - expect(vehicles.size).toBe(1); - expect(vehicles.keys()).toContain('BOOSTER'); - }); - - it('should return empty map when current configuration is invalid', async () => { - const vehicles = policy.getNextPermittableVehicles('STOS', 'LAMBEAM', [ - 'TRKTRAC', - '_INVALID', - ]); - expect(vehicles.size).toBe(0); - }); -}); - -describe('Permit Engine Configuration Validation', () => { - const policy: Policy = new Policy(stosPolicyConfig); - - it('should return true for a valid configuration with power unit and trailer', async () => { - const isValid = policy.isConfigurationValid('STOS', 'LAMBEAM', [ - 'TRKTRAC', - 'POLETRL', - ]); - expect(isValid).toBe(true); - }); - - it('should return true for a valid configuration with power unit and trailer and jeep and booster', async () => { - const isValid = policy.isConfigurationValid('STOS', 'LAMBEAM', [ - 'TRKTRAC', - 'JEEPSRG', - 'POLETRL', - 'BOOSTER', - ]); - expect(isValid).toBe(true); - }); - - it('should return false for a configuration out of order', async () => { - const isValid = policy.isConfigurationValid('STOS', 'LAMBEAM', [ - 'TRKTRAC', - 'POLETRL', - 'JEEPSRG', - 'BOOSTER', - ]); - expect(isValid).toBe(false); - }); - - it('should throw an error for an invalid permit type', async () => { - expect(() => { - policy.isConfigurationValid('_INVALID', 'LAMBEAM', [ - 'TRKTRAC', - 'POLETRL', - ]); - }).toThrow(); - }); - - it('should throw an error for an invalid commodity', async () => { - expect(() => { - policy.isConfigurationValid('STOS', '_INVALID', ['TRKTRAC', 'POLETRL']); - }).toThrow(); - }); - - it('should return false for a configuration missing a trailer', async () => { - const isValid = policy.isConfigurationValid('STOS', 'LAMBEAM', [ - 'TRKTRAC', - 'JEEPSRG', - ]); - expect(isValid).toBe(false); - }); - - it('should return true for a partial configuration missing a trailer', async () => { - const isValid = policy.isConfigurationValid( - 'STOS', - 'LAMBEAM', - ['TRKTRAC', 'JEEPSRG'], - true, - ); - expect(isValid).toBe(true); - }); - - it('should throw an error for a permit type not requiring commodity', async () => { - expect(() => { - policy.isConfigurationValid('TROS', 'LAMBEAM', ['TRKTRAC']); - }).toThrow(); - }); -}); diff --git a/policy-engine/src/_test/unit/cost.spec.ts b/policy-engine/src/_test/unit/cost.spec.ts deleted file mode 100644 index 5bfce40aa..000000000 --- a/policy-engine/src/_test/unit/cost.spec.ts +++ /dev/null @@ -1,109 +0,0 @@ -import { Policy } from 'onroute-policy-engine'; -import { completePolicyConfig } from '../policy-config/complete-in-progress.sample'; -import { multipleCostRules } from '../policy-config/tros-multiple-cost-rules.sample'; -import { validTros30Day } from '../permit-app/valid-tros-30day'; -import { validTrow120Day } from '../permit-app/valid-trow-120day'; -import { testStos } from '../permit-app/test-stos'; -import dayjs from 'dayjs'; -import { PermitAppInfo } from '../../enum/permit-app-info'; - -describe('Policy Engine Cost Calculator', () => { - const policy: Policy = new Policy(completePolicyConfig); - const multipleCostRulesPolicy = new Policy(multipleCostRules); - - it('should calculate 30 day TROS cost correctly', async () => { - const permit = JSON.parse(JSON.stringify(validTros30Day)); - // Set startDate to today - permit.permitData.startDate = dayjs().format( - PermitAppInfo.PermitDateFormat.toString(), - ); - - const validationResult = await policy.validate(permit); - expect(validationResult.cost).toHaveLength(1); - expect(validationResult.cost[0].cost).toBe(30); - }); - - it('should calculate 31 day TROS cost as 2 months', async () => { - const permit = JSON.parse(JSON.stringify(validTros30Day)); - // Set startDate to today - permit.permitData.startDate = dayjs().format( - PermitAppInfo.PermitDateFormat.toString(), - ); - // Set duration to 31 - permit.permitData.permitDuration = 31; - - const validationResult = await policy.validate(permit); - expect(validationResult.cost).toHaveLength(1); - expect(validationResult.cost[0].cost).toBe(60); - }); - - it('should calculate 1 year TROS cost correctly', async () => { - const permit = JSON.parse(JSON.stringify(validTros30Day)); - const today = dayjs(); - // Set startDate to today - permit.permitData.startDate = today.format( - PermitAppInfo.PermitDateFormat.toString(), - ); - // Set duration to full year (365 or 366 depending on leap year) - const oneYearDuration: number = today.add(1, 'year').diff(today, 'day'); - permit.permitData.permitDuration = oneYearDuration; - - const validationResult = await policy.validate(permit); - expect(validationResult.cost).toHaveLength(1); - expect(validationResult.cost[0].cost).toBe(360); - }); - - it('should calculate 120 day TROW cost correctly', async () => { - const permit = JSON.parse(JSON.stringify(validTrow120Day)); - // Set startDate to today - permit.permitData.startDate = dayjs().format( - PermitAppInfo.PermitDateFormat.toString(), - ); - - const validationResult = await policy.validate(permit); - expect(validationResult.cost).toHaveLength(1); - expect(validationResult.cost[0].cost).toBe(400); - }); - - it('should calculate STOS cost correctly', async () => { - const permit = JSON.parse(JSON.stringify(testStos)); - // Set startDate to today - permit.permitData.startDate = dayjs().format( - PermitAppInfo.PermitDateFormat.toString(), - ); - - const validationResult = await policy.validate(permit); - expect(validationResult.cost).toHaveLength(1); - expect(validationResult.cost[0].cost).toBe(15); - }); - - it('should calculate valid TROS with multiple cost rules correctly', async () => { - const permit = JSON.parse(JSON.stringify(validTros30Day)); - // Set startDate to today - permit.permitData.startDate = dayjs().format( - PermitAppInfo.PermitDateFormat.toString(), - ); - - const validationResult = await multipleCostRulesPolicy.validate(permit); - expect(validationResult.cost).toHaveLength(2); - const cost1: number = validationResult.cost[0]?.cost || 0; - const cost2: number = validationResult.cost[1]?.cost || 0; - expect(cost1 + cost2).toBe(45); - }); - - it('should calculate 31 day TROS with multiple cost rules correctly', async () => { - const permit = JSON.parse(JSON.stringify(validTros30Day)); - // Set startDate to today - permit.permitData.startDate = dayjs().format( - PermitAppInfo.PermitDateFormat.toString(), - ); - // Set duration to 31 - permit.permitData.permitDuration = 31; - - const validationResult = await multipleCostRulesPolicy.validate(permit); - expect(validationResult.cost).toHaveLength(2); - const cost1: number = validationResult.cost[0]?.cost || 0; - const cost2: number = validationResult.cost[1]?.cost || 0; - expect(cost1 + cost2).toBe(75); - }); -}); diff --git a/policy-engine/src/_test/unit/size-dimension.spec.ts b/policy-engine/src/_test/unit/size-dimension.spec.ts deleted file mode 100644 index 6dbd0438e..000000000 --- a/policy-engine/src/_test/unit/size-dimension.spec.ts +++ /dev/null @@ -1,67 +0,0 @@ -import { Policy } from '../../policy-engine'; -import { stosPolicyConfig } from '../policy-config/stos-vehicle-config.sample'; - -describe('Permit Engine Size Dimension Functions', () => { - const policy: Policy = new Policy(stosPolicyConfig); - - it('should assume all regions if none are supplied', async () => { - // This configuration has minimum values pulled from multiple regions - const sizeDimension = policy.getSizeDimension('STOS', 'EMPTYXX', [ - 'TRKTRAC', - 'JEEPSRG', - 'HIBOEXP', - ]); - expect(sizeDimension?.fp).toBe(3); - expect(sizeDimension?.rp).toBe(6.5); - expect(sizeDimension?.l).toBe(31); - expect(sizeDimension?.h).toBeUndefined(); - expect(sizeDimension?.w).toBeUndefined(); - }); - - it('should retrieve correct values for a single specified region', async () => { - const sizeDimension = policy.getSizeDimension( - 'STOS', - 'EMPTYXX', - ['TRKTRAC', 'JEEPSRG', 'PLATFRM'], - ['PCE'], - ); - expect(sizeDimension?.fp).toBeUndefined(); - expect(sizeDimension?.rp).toBeUndefined(); - expect(sizeDimension?.l).toBe(27.5); - expect(sizeDimension?.h).toBe(5.33); - expect(sizeDimension?.w).toBe(3.2); - }); - - it('should throw an error if an invalid permit type is specified', async () => { - expect(() => { - policy.getSizeDimension('_INVALID', 'EMPTYXX', [ - 'TRKTRAC', - 'JEEPSRG', - 'STWHELR', - ]); - }).toThrow(); - }); - - it('should return null if an invalid configuration is specified', async () => { - const sizeDimension = policy.getSizeDimension('STOS', 'EMPTYXX', [ - '_INVALID', - 'JEEPSRG', - 'STWHELR', - ]); - expect(sizeDimension).toBeNull(); - }); - - it('should return null if no dimensionable trailer is specified', async () => { - const sizeDimension = policy.getSizeDimension('STOS', 'EMPTYXX', [ - 'TRKTRAC', - 'JEEPSRG', - ]); - expect(sizeDimension).toBeNull(); - }); - - it('should throw an error if an invalid commodity is specified', async () => { - expect(() => { - policy.getSizeDimension('STOS', '_INVALID', ['TRKTRAC', 'JEEPSRG']); - }).toThrow(); - }); -}); diff --git a/policy-engine/src/_test/unit/utility.spec.ts b/policy-engine/src/_test/unit/utility.spec.ts deleted file mode 100644 index fc1e0a73e..000000000 --- a/policy-engine/src/_test/unit/utility.spec.ts +++ /dev/null @@ -1,50 +0,0 @@ -import { PermitType } from 'onroute-policy-engine/types'; -import { Policy } from 'onroute-policy-engine'; -import { fiveTypes } from '../policy-config/five-types.sample'; - -describe('Permit Engine Utility Functions', () => { - const policy: Policy = new Policy(fiveTypes); - - it('should return the correct number of permit types', async () => { - const permitTypes: Map = policy.getPermitTypes(); - expect(permitTypes.size).toBe(5); - }); - - it('should return the correct number of geographic regions', async () => { - const geographicRegions: Map = - policy.getGeographicRegions(); - expect(geographicRegions.size).toBe(3); - }); - - it('should return the correct number of commodities', async () => { - const commodities: Map = policy.getCommodities(); - expect(commodities.size).toBe(5); - }); - - it('should return the correct number of commodities for a single permit type', async () => { - const commodities: Map = policy.getCommodities('STOS'); - expect(commodities.size).toBe(3); - }); - - it('should return the correct number of power unit types', async () => { - const powerUnitTypes: Map = policy.getPowerUnitTypes(); - expect(powerUnitTypes.size).toBe(27); - }); - - it('should return the correct number of trailer types', async () => { - const trailerTypes: Map = policy.getTrailerTypes(); - expect(trailerTypes.size).toBe(51); - }); - - it('should return a TROS permit type', async () => { - const permitType: PermitType | null = - policy.getPermitTypeDefinition('TROS'); - expect(permitType).not.toBeNull(); - }); - - it('should return null for an unknown permit type', async () => { - const permitType: PermitType | null = - policy.getPermitTypeDefinition('__INVALID'); - expect(permitType).toBeNull(); - }); -}); diff --git a/policy-engine/src/_test/unit/validation.spec.ts b/policy-engine/src/_test/unit/validation.spec.ts deleted file mode 100644 index c4ab0653f..000000000 --- a/policy-engine/src/_test/unit/validation.spec.ts +++ /dev/null @@ -1,202 +0,0 @@ -import { Policy } from 'onroute-policy-engine'; -import { trosOnly } from '../policy-config/tros-only.sample'; -import { trosNoAllowedVehicles } from '../policy-config/tros-no-allowed-vehicles.sample'; -import { completePolicyConfig } from '../policy-config/complete-in-progress.sample'; -import { trosNoParamsSample } from '../policy-config/tros-no-params.sample'; -import { testStos } from '../permit-app/test-stos'; -import { validTros30Day } from '../permit-app/valid-tros-30day'; -import { validTrow120Day } from '../permit-app/valid-trow-120day'; -import { allEventTypes } from '../policy-config/all-event-types.sample'; -import dayjs from 'dayjs'; -import { PermitAppInfo } from '../../enum/permit-app-info'; -import { ValidationResultCode } from '../../enum/validation-result-code'; - -describe('Permit Engine Constructor', () => { - it('should construct without error', () => { - expect(() => new Policy(trosOnly)).not.toThrow(); - }); - - it('should assign policy definition correctly', () => { - const policy: Policy = new Policy(trosOnly); - expect(policy.policyDefinition).toBeTruthy(); - }); -}); - -describe('Policy Engine Validator', () => { - const policy: Policy = new Policy(trosOnly); - - it('should validate TROS successfully', async () => { - const permit = JSON.parse(JSON.stringify(validTros30Day)); - // Set startDate to today - permit.permitData.startDate = dayjs().format( - PermitAppInfo.PermitDateFormat.toString(), - ); - - const validationResult = await policy.validate(permit); - expect(validationResult.violations).toHaveLength(0); - }); - - it('should raise violation for start date in the past', async () => { - const permit = JSON.parse(JSON.stringify(validTros30Day)); - // Set startDate to yesterday - permit.permitData.startDate = dayjs() - .subtract(1, 'day') - .format(PermitAppInfo.PermitDateFormat.toString()); - - const validationResult = await policy.validate(permit); - expect(validationResult.violations).toHaveLength(1); - }); - - it('should raise violation for invalid permit type', async () => { - const permit = JSON.parse(JSON.stringify(validTros30Day)); - // Set startDate to today - permit.permitData.startDate = dayjs().format( - PermitAppInfo.PermitDateFormat.toString(), - ); - permit.permitType = '__INVALID'; - - const validationResult = await policy.validate(permit); - expect(validationResult.violations).toHaveLength(1); - }); - - it('should raise violation for invalid vehicle type', async () => { - const permit = JSON.parse(JSON.stringify(validTros30Day)); - // Set startDate to today - permit.permitData.startDate = dayjs().format( - PermitAppInfo.PermitDateFormat.toString(), - ); - // Set an invalid vehicle type - permit.permitData.vehicleDetails.vehicleSubType = '__INVALID'; - - const validationResult = await policy.validate(permit); - expect(validationResult.violations).toHaveLength(1); - }); - - it('should raise violation if no allowed vehicles are specified', async () => { - const policyNoVehicles: Policy = new Policy(trosNoAllowedVehicles); - const permit = JSON.parse(JSON.stringify(validTros30Day)); - - const validationResult = await policyNoVehicles.validate(permit); - expect(validationResult.violations).toHaveLength(1); - }); - - it('should return the correct validation code', async () => { - const permit = JSON.parse(JSON.stringify(validTros30Day)); - // Set startDate to today - permit.permitData.startDate = dayjs().format( - PermitAppInfo.PermitDateFormat.toString(), - ); - // Set an invalid companyName - permit.permitData.companyName = ''; - - const validationResult = await policy.validate(permit); - expect(validationResult.violations).toHaveLength(1); - expect(validationResult.violations[0].code).toBe( - ValidationResultCode.FieldValidationError.toString(), - ); - }); - - it('should return the correct field reference', async () => { - const permit = JSON.parse(JSON.stringify(validTros30Day)); - // Set startDate to today - permit.permitData.startDate = dayjs().format( - PermitAppInfo.PermitDateFormat.toString(), - ); - // Set an invalid companyName - permit.permitData.companyName = ''; - - const validationResult = await policy.validate(permit); - expect(validationResult.violations).toHaveLength(1); - expect(validationResult.violations[0].fieldReference).toBe( - 'permitData.companyName', - ); - }); -}); - -describe('Master Policy Configuration Validator', () => { - const policy: Policy = new Policy(completePolicyConfig); - - it('should validate TROS successfully', async () => { - const permit = JSON.parse(JSON.stringify(validTros30Day)); - // Set startDate to today - permit.permitData.startDate = dayjs().format( - PermitAppInfo.PermitDateFormat.toString(), - ); - - const validationResult = await policy.validate(permit); - expect(validationResult.violations).toHaveLength(0); - }); - - it('should validate TROW successfully', async () => { - const permit = JSON.parse(JSON.stringify(validTrow120Day)); - // Set startDate to today - permit.permitData.startDate = dayjs().format( - PermitAppInfo.PermitDateFormat.toString(), - ); - - const validationResult = await policy.validate(permit); - expect(validationResult.violations).toHaveLength(0); - }); - - it('should validate STOS successfully', async () => { - const permit = JSON.parse(JSON.stringify(testStos)); - // Set startDate to today - permit.permitData.startDate = dayjs().format( - PermitAppInfo.PermitDateFormat.toString(), - ); - - const validationResult = await policy.validate(permit); - expect(validationResult.violations).toHaveLength(0); - }); - - it('should fail validation for STOS with invalid configuration', async () => { - const permit = JSON.parse(JSON.stringify(testStos)); - // Set startDate to today - permit.permitData.startDate = dayjs().format( - PermitAppInfo.PermitDateFormat.toString(), - ); - // Add an invalid trailer to the configuration list - permit.permitData.vehicleConfiguration.trailers.push({ - vehicleSubType: '_INVALID', - }); - - const validationResult = await policy.validate(permit); - expect(validationResult.violations).toHaveLength(1); - }); -}); - -describe('Policy Configuration Missing Elements', () => { - const policy: Policy = new Policy(trosNoParamsSample); - - it('should not fail when a validation has no params', async () => { - const permit = JSON.parse(JSON.stringify(validTros30Day)); - // Set startDate to today - permit.permitData.startDate = dayjs().format( - PermitAppInfo.PermitDateFormat.toString(), - ); - - const validationResult = await policy.validate(permit); - expect(validationResult.violations).toHaveLength(1); - expect(validationResult.violations[0].message).not.toBeUndefined; - expect(validationResult.violations[0].message).not.toBeNull; - }); -}); - -describe('Permit Engine Validation Results Aggregator', () => { - const policy: Policy = new Policy(allEventTypes); - - it('should process all event types', async () => { - const permit = JSON.parse(JSON.stringify(validTros30Day)); - - const validationResult = await policy.validate(permit); - // Violation 1: expected structure - // Violation 2: unknown event type (defaults to violation) - expect(validationResult.violations).toHaveLength(2); - expect(validationResult.requirements).toHaveLength(1); - expect(validationResult.warnings).toHaveLength(1); - // Information 1: expected structure - // Information 2: params object, but no message property - // Information 3: no params object in the event - expect(validationResult.information).toHaveLength(3); - }); -}); diff --git a/policy-engine/src/enum/accessory-vehicle-type.ts b/policy-engine/src/enum/accessory-vehicle-type.ts deleted file mode 100644 index 4ec6151a1..000000000 --- a/policy-engine/src/enum/accessory-vehicle-type.ts +++ /dev/null @@ -1,4 +0,0 @@ -export enum AccessoryVehicleType { - Booster = 'BOOSTER', - Jeep = 'JEEPSRG', -} diff --git a/policy-engine/src/enum/facts.ts b/policy-engine/src/enum/facts.ts deleted file mode 100644 index 7b3765632..000000000 --- a/policy-engine/src/enum/facts.ts +++ /dev/null @@ -1,9 +0,0 @@ -export enum PolicyFacts { - AllowedVehicles = 'allowedVehicles', - DaysInPermitYear = 'daysInPermitYear', - ValidationDate = 'validationDate', - FixedCost = 'fixedCost', - CostPerMonth = 'costPerMonth', - RangeMatrixCostLookup = 'rangeMatrixCostLookup', - ConfigurationIsValid = 'configurationIsValid', -} diff --git a/policy-engine/src/enum/index.ts b/policy-engine/src/enum/index.ts deleted file mode 100644 index ce8278efd..000000000 --- a/policy-engine/src/enum/index.ts +++ /dev/null @@ -1,7 +0,0 @@ -export { AccessoryVehicleType } from './accessory-vehicle-type'; -export { PolicyFacts } from './facts'; -export { PermitAppInfo } from './permit-app-info'; -export { RelativePosition } from './relative-position'; -export { ValidationResultCode } from './validation-result-code'; -export { ValidationResultType } from './validation-result-type'; -export { VehicleTypes } from './vehicle-types'; diff --git a/policy-engine/src/enum/permit-app-info.ts b/policy-engine/src/enum/permit-app-info.ts deleted file mode 100644 index 8d4eb0121..000000000 --- a/policy-engine/src/enum/permit-app-info.ts +++ /dev/null @@ -1,16 +0,0 @@ -/** - * This enum represents a subset of commonly-used paths and - * other information in permit applications which may be - * referenced from within source code. - */ -export enum PermitAppInfo { - PermitType = 'permitType', - PermitData = 'permitData', - PermitStartDate = '$.startDate', - PermitDateFormat = 'YYYY-MM-DD', - CompanyName = '$.companyName', - PermitDuration = '$.permitDuration', - PowerUnitType = '$.vehicleDetails.vehicleSubType', - TrailerList = '$.vehicleConfiguration.trailers', - Commodity = '$.permittedCommodity.commodityType', -} diff --git a/policy-engine/src/enum/relative-position.ts b/policy-engine/src/enum/relative-position.ts deleted file mode 100644 index 347f8f26c..000000000 --- a/policy-engine/src/enum/relative-position.ts +++ /dev/null @@ -1,6 +0,0 @@ -export enum RelativePosition { - Before = 'before', - After = 'after', - First = 'first', - Last = 'last', -} diff --git a/policy-engine/src/enum/validation-result-code.ts b/policy-engine/src/enum/validation-result-code.ts deleted file mode 100644 index 5938cdb0a..000000000 --- a/policy-engine/src/enum/validation-result-code.ts +++ /dev/null @@ -1,7 +0,0 @@ -export enum ValidationResultCode { - PermitTypeUnknown = 'permit-type-unknown', - FieldValidationError = 'field-validation-error', - ConfigurationInvalid = 'configuration-invalid', - GeneralResult = 'general-result', - CostValue = 'cost-value', -} diff --git a/policy-engine/src/enum/validation-result-type.ts b/policy-engine/src/enum/validation-result-type.ts deleted file mode 100644 index 5bcce4d9d..000000000 --- a/policy-engine/src/enum/validation-result-type.ts +++ /dev/null @@ -1,7 +0,0 @@ -export enum ValidationResultType { - Violation = 'violation', - Requirement = 'requirement', - Warning = 'warning', - Information = 'information', - Cost = 'cost', -} diff --git a/policy-engine/src/enum/vehicle-types.ts b/policy-engine/src/enum/vehicle-types.ts deleted file mode 100644 index 1a87b0800..000000000 --- a/policy-engine/src/enum/vehicle-types.ts +++ /dev/null @@ -1,4 +0,0 @@ -export enum VehicleTypes { - PowerUnits = 'powerUnits', - Trailers = 'trailers', -} diff --git a/policy-engine/src/helper/facts.helper.ts b/policy-engine/src/helper/facts.helper.ts deleted file mode 100644 index 352dddbec..000000000 --- a/policy-engine/src/helper/facts.helper.ts +++ /dev/null @@ -1,120 +0,0 @@ -import dayjs from 'dayjs'; -import { Engine } from 'json-rules-engine'; -import { PermitAppInfo, PolicyFacts } from 'onroute-policy-engine/enum'; -import { Policy } from '../policy-engine'; - -/** - * Adds runtime facts for the validation. For example, adds the - * validation date for comparison against startDate of the permit. - * @param engine json-rules-engine Engine instance to add facts to. - */ -export function addRuntimeFacts(engine: Engine, policy: Policy): void { - const today: string = dayjs().format(PermitAppInfo.PermitDateFormat); - engine.addFact(PolicyFacts.ValidationDate, today); - - /** - * Add runtime fact for number of days in the permit year. - * Will be either 365 or 366, for use when comparing against - * duration for 1 year permits. - */ - engine.addFact( - PolicyFacts.DaysInPermitYear, - async function (params, almanac) { - const startDate: string = await almanac.factValue( - PermitAppInfo.PermitData, - {}, - PermitAppInfo.PermitStartDate, - ); - const dateFrom = dayjs(startDate, PermitAppInfo.PermitDateFormat); - const daysInPermitYear = dateFrom.add(1, 'year').diff(dateFrom, 'day'); - return daysInPermitYear; - }, - ); - - /** - * Adds a runtime fact specifying whether the vehicle configuration - * in the permit application is valid for the permit type and - * commodity. Will return true or false. - */ - engine.addFact( - PolicyFacts.ConfigurationIsValid.toString(), - async function (params, almanac) { - const powerUnit: string = await almanac.factValue( - PermitAppInfo.PermitData, - {}, - PermitAppInfo.PowerUnitType, - ); - const trailerList: Array = await almanac.factValue( - PermitAppInfo.PermitData, - {}, - PermitAppInfo.TrailerList, - ); - let fullVehicleConfiguration = []; - fullVehicleConfiguration.push(powerUnit); - fullVehicleConfiguration = fullVehicleConfiguration.concat( - trailerList.map((t) => t.vehicleSubType), - ); - - const permitType: string = await almanac.factValue( - PermitAppInfo.PermitType, - ); - const commodity: string = await almanac.factValue( - PermitAppInfo.PermitData, - {}, - PermitAppInfo.Commodity, - ); - let isValid: boolean; - try { - isValid = policy.isConfigurationValid( - permitType, - commodity, - fullVehicleConfiguration, - ); - } catch (e) { - console.log(`Error validating vehicle configuration: '{e.message}'`); - isValid = false; - } - return isValid; - }, - ); - - /** - * Add runtime fact for a fixed permit cost, the cost supplied - * as a parameter. - */ - engine.addFact(PolicyFacts.FixedCost.toString(), async function (params) { - return params.cost; - }); - - /** - * Add runtime fact for cost per month, where month is defined by - * policy as a 30 day period or portion thereof, except in the - * case of a full year in which case it is 12 months. - */ - engine.addFact( - PolicyFacts.CostPerMonth.toString(), - async function (params, almanac) { - const duration: number = await almanac.factValue( - PermitAppInfo.PermitData, - {}, - PermitAppInfo.PermitDuration, - ); - const daysInPermitYear: number = await almanac.factValue( - PolicyFacts.DaysInPermitYear.toString(), - ); - - let months: number = Math.floor(duration / 30); - const extraDays: number = duration % 30; - - if (extraDays > 0 && duration !== daysInPermitYear) { - // Add an extra month for a partial month unless it is - // a full year. Note this does not handle the case where 2 - // or more years duration is specified, since that is not - // a valid permit and does not warrant considetation. - months++; - } - - return months * params.cost; - }, - ); -} diff --git a/policy-engine/src/helper/lists.helper.ts b/policy-engine/src/helper/lists.helper.ts deleted file mode 100644 index aa927850c..000000000 --- a/policy-engine/src/helper/lists.helper.ts +++ /dev/null @@ -1,61 +0,0 @@ -import { IdentifiedObject } from 'onroute-policy-engine/types'; - -/** - * Extracts a map containing just the ID and name of each of the supplied - * identified objects. - * @param objects List of identified objects to extract id and name from. - * @param filter Optional list of IDs to constrain the map to. Only objects - * with an ID matching one of the elements in the filter will - * be returned. If no filter supplied, all objects will be returned. - * @returns Map of object ID to object name. - */ -export function extractIdentifiedObjects( - objects: Array, - filter?: Array, -): Map { - const objectMap: Map = new Map(); - objects.forEach((o) => { - if (!filter || filter.includes(o.id)) { - objectMap.set(o.id, o.name); - } - }); - return objectMap; -} - -/** - * Intersects two maps containing string id and string description to - * return a new map containing those entries common to both. - * This only checks that the keys are common, not the values. If the - * values are different, this returns the value from the first map. - * If any values in the first map are null or undefined, these will - * be replaced with empty string. - * @param first The first map - * @param second The second map - * @returns New map containing entries common to both input maps - */ -export function intersectIdMaps( - first: Map, - second: Map, -): Map { - const combinedMap = new Map(); - for (const key in first.keys()) { - if (second.has(key)) { - combinedMap.set(key, first.get(key) ?? ''); - } - } - return combinedMap; -} - -export function getIdFromName( - list: Array, - name: string, -): string | null { - let id: string | null = null; - - const identifiedObject = list.find((i) => i.name == name); - if (identifiedObject) { - id = identifiedObject.id; - } - - return id; -} diff --git a/policy-engine/src/helper/rules-engine.helper.ts b/policy-engine/src/helper/rules-engine.helper.ts deleted file mode 100644 index 951964732..000000000 --- a/policy-engine/src/helper/rules-engine.helper.ts +++ /dev/null @@ -1,81 +0,0 @@ -import { Engine, RuleProperties } from 'json-rules-engine'; -import { CustomOperators } from '../rule-operator/custom-operators'; -import { Policy } from 'onroute-policy-engine'; -import { PolicyDefinition } from 'onroute-policy-engine/types'; -import { PolicyFacts } from 'onroute-policy-engine/enum'; - -/** - * Gets a json-rules-engine with all onRouteBC custom operators added, - * and all policy rules that apply to all permit types added. - * @param policyDefinition The definition of policy to validate against. - * @returns json-rules-engine Engine instance. - */ -function getEngine(policyDefinition: PolicyDefinition): Engine { - const engine = new Engine([], { - replaceFactsInEventParams: true, - allowUndefinedFacts: true, - }); - CustomOperators.forEach((o) => engine.addOperator(o)); - policyDefinition.commonRules.forEach((r) => engine.addRule(r)); - return engine; -} - -/** - * Creates a json-rules-engine Engine object for each permit type specified in - * the policy definition, added to a Map. All rules specific to each permit type - * will be added to the appropriate Engine instance. - * @param policy orbc-policy-engine Policy object containg current policy definition. - * @returns Map of json-rules-engines, one per permit type, keyed on permit type ID. - */ -export function getRulesEngines(policy: Policy): Map { - const engineMap: Map = new Map(); - - policy.policyDefinition?.permitTypes?.forEach((permitType) => { - const engine = getEngine(policy.policyDefinition); - - permitType.rules?.forEach((r) => engine.addRule(r)); - - // Convert the cost definitions into proper rules so the - // results can be added to the validation run. This takes advantage - // of the replaceFactsInEventParams option for the json-rules-engine - // Engine object. - permitType.costRules?.forEach((c) => { - const costRule: RuleProperties = { - conditions: { - all: [ - { - fact: c.fact, - params: c.params, - operator: 'greaterThanInclusive', - value: 0, - }, - ], - }, - event: { - type: 'cost', - params: { - message: 'Calculated permit cost', - code: 'cost-value', - cost: c, - }, - }, - }; - - engine.addRule(costRule); - }); - - let allowedVehicles: Array; - if (permitType.allowedVehicles && permitType.allowedVehicles.length > 0) { - allowedVehicles = permitType.allowedVehicles; - } else { - // If no allowed vehicles are specified, none are permitted - allowedVehicles = []; - } - // Each permit type should have a list of allowed vehicles configured. - engine.addFact(PolicyFacts.AllowedVehicles.toString(), allowedVehicles); - - engineMap.set(permitType.id, engine); - }); - - return engineMap; -} diff --git a/policy-engine/src/index.ts b/policy-engine/src/index.ts deleted file mode 100644 index 77dc4546b..000000000 --- a/policy-engine/src/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { Policy } from './policy-engine'; -export { ValidationResult } from './validation-result'; -export { ValidationResults } from './validation-results'; diff --git a/policy-engine/src/policy-engine.ts b/policy-engine/src/policy-engine.ts deleted file mode 100644 index 98ed82270..000000000 --- a/policy-engine/src/policy-engine.ts +++ /dev/null @@ -1,794 +0,0 @@ -import { - PolicyDefinition, - PermitType, - Commodity, - VehicleType, - SizeDimension, - RegionSizeOverride, - TrailerSize, -} from 'onroute-policy-engine/types'; -import { - extractIdentifiedObjects, - intersectIdMaps, -} from './helper/lists.helper'; -import { Engine, EngineResult } from 'json-rules-engine'; -import { getRulesEngines } from './helper/rules-engine.helper'; -import { ValidationResults } from './validation-results'; -import { ValidationResult } from './validation-result'; -import { addRuntimeFacts } from './helper/facts.helper'; -import { - AccessoryVehicleType, - ValidationResultType, - ValidationResultCode, - RelativePosition, - VehicleTypes, -} from 'onroute-policy-engine/enum'; - -/** Class representing commercial vehicle policy. */ -export class Policy { - /** Object representation of policy definition and rules. */ - policyDefinition: PolicyDefinition; - - /** - * Map of json-rules-engine instances, one for each - * permit type defined in the permit definition. Keyed - * on permit type id. - */ - rulesEngines: Map; - - /** - * Creates a new Policy object. - * @param definition Policy definition to validate permits against - */ - constructor(definition: PolicyDefinition) { - this.policyDefinition = definition; - - this.rulesEngines = getRulesEngines(this); - } - - /** - * Validates a permit application against the policy definition. - * @param permit The permit application to validate against policy - * @returns Results of the validation of the permit application - */ - async validate(permit: any): Promise { - const engine = this.rulesEngines.get(permit.permitType); - if (!engine) { - // If the permit type being validated has no configuration in the - // policy definition, there will be no engine for it. Return with - // a single violation result. - const validationResult: ValidationResults = new ValidationResults(); - validationResult.violations.push( - new ValidationResult( - ValidationResultType.Violation, - ValidationResultCode.PermitTypeUnknown, - `Permit type ${permit.permitType} unknown`, - ), - ); - return validationResult; - } else { - // Add facts specific to this run of the validation (e.g. validation - // date for comparison against start date of the permit). - addRuntimeFacts(engine, this); - - // Run the json-rules-engine against the permit facts - const engineResult: EngineResult = await engine.run(permit); - - // Wrap the json-rules-engine result in a ValidationResult object - return new ValidationResults(engineResult); - } - } - - /** - * Gets a list of all configured permit types in the policy definition. - * @returns Map of permit type IDs to permit type names. - */ - getPermitTypes(): Map { - const permitTypes = extractIdentifiedObjects( - this.policyDefinition.permitTypes, - ); - return permitTypes; - } - - /** - * Gets a list of all configured geographic regions in the policy definition. - * @returns Map of geographic region IDs to region names. - */ - getGeographicRegions(): Map { - const geographicRegions = extractIdentifiedObjects( - this.policyDefinition.geographicRegions, - ); - return geographicRegions; - } - - /** - * Gets a list of all configured commodities in the policy definition. - * @param permitTypeId Return only commodities valid for this permit type. - * If not supplied, return all commodities configured in policy. If permit - * type does not require commodity (e.g. 'TROS'), return empty map. - * @returns Map of commodity IDs to commodity names. - */ - getCommodities(permitTypeId?: string): Map { - const permitType = this.getPermitTypeDefinition(permitTypeId); - if (!permitTypeId) { - // Permit type not supplied, return all commodities - return extractIdentifiedObjects(this.policyDefinition.commodities); - } else if (!permitType) { - // Permit type invalid, throw error - throw new Error(`Invalid permit type supplied: '${permitTypeId}'`); - } else if (!permitType.commodityRequired) { - return new Map(); - } else { - // Commodities for oversize permits are those which have at least one - // power unit defined in the size dimension object of the commodity. - const commoditiesForOS = extractIdentifiedObjects( - this.policyDefinition.commodities.filter((c) => { - if (c.size) { - if (c.size.powerUnits) { - if (c.size.powerUnits.length > 0) { - return true; - } - } - } - return false; - }), - permitType.allowedCommodities, - ); - - // TODO when implementing overweight. Stub for now. - const commoditiesForOW: Map = new Map(); - - if ( - permitType.sizeDimensionRequired && - permitType.weightDimensionRequired - ) { - return intersectIdMaps(commoditiesForOS, commoditiesForOW); - } else if (permitType.sizeDimensionRequired) { - return commoditiesForOS; - } else if (permitType.weightDimensionRequired) { - return commoditiesForOW; - } else { - // This permit type requires commodity selection, but does not - // require size or weight dimensions. For these permit types, the - // allowedCommodities must be configured in policy. Return these. - const commodities = extractIdentifiedObjects( - this.policyDefinition.commodities, - permitType.allowedCommodities, - ); - return commodities; - } - } - } - - /** - * Gets a list of all allowable vehicle types for the given permit type - * and commodity. Includes all power units and trailers. - * @param permitTypeId ID of the permit type to get vehicles for - * @param commodityId ID of the commodity to get vehicles for - * @returns Map of two separate maps, one keyed on 'powerUnits' and the - * other keyed on 'trailers'. Each map consists of a string id for the - * vehicle, and a string common name for the vehicle. - */ - getPermittableVehicleTypes( - permitTypeId: string, - commodityId: string, - ): Map> { - if (!permitTypeId || !commodityId) { - throw new Error('Missing permitTypeId and/or commodityId'); - } - - const permitType = this.getPermitTypeDefinition(permitTypeId); - if (!permitType) { - throw new Error(`Invalid permit type: '${permitTypeId}'`); - } - - if (!permitType.commodityRequired) { - // If commodity is not required, this method cannot calculate the - // permittable vehicle types since they will not be configured. - throw new Error( - `Permit type '${permitTypeId}' does not require a commodity`, - ); - } - - let puTypes: Map; - let trTypes: Map; - const allowableCommodities = this.getCommodities(permitTypeId); - - if (!allowableCommodities.has(commodityId)) { - // If the commodity is not allowed for the permit type, no power - // units or trailers are allowed. - puTypes = new Map(); - trTypes = new Map(); - } else { - const commodity = this.getCommodityDefinition(commodityId); - if (!commodity) { - throw new Error( - `Commodity id '${commodityId}' is not correctly configured in the policy definition`, - ); - } - - const puTypeIdsOS: Array | undefined = - commodity.size?.powerUnits?.map((p) => p.type); - const trTypeIdsOS: Array | undefined = []; - commodity.size?.powerUnits?.forEach((pu) => { - const trForPu = pu.trailers.map((t) => t.type); - if (trForPu) trTypeIdsOS.concat(trForPu); - }); - // TODO: implement along with overweight permits. Stub for now. - const puTypeIdsOW: Array = []; - const trTypeIdsOW: Array = []; - - const puTypesOS = extractIdentifiedObjects( - this.policyDefinition.vehicleTypes.powerUnitTypes, - puTypeIdsOS, - ); - const trTypesOS = extractIdentifiedObjects( - this.policyDefinition.vehicleTypes.trailerTypes, - trTypeIdsOS, - ); - const puTypesOW = extractIdentifiedObjects( - this.policyDefinition.vehicleTypes.powerUnitTypes, - puTypeIdsOW, - ); - const trTypesOW = extractIdentifiedObjects( - this.policyDefinition.vehicleTypes.trailerTypes, - trTypeIdsOW, - ); - - if ( - permitType.sizeDimensionRequired && - permitType.weightDimensionRequired - ) { - puTypes = intersectIdMaps(puTypesOS, puTypesOW); - trTypes = intersectIdMaps(trTypesOS, trTypesOW); - } else if (permitType.sizeDimensionRequired) { - puTypes = puTypesOS; - trTypes = trTypesOS; - } else if (permitType.weightDimensionRequired) { - puTypes = puTypesOW; - trTypes = trTypesOW; - } else { - // This permit type requires commodity selection, but does not - // require size or weight dimensions. For these permit types, the - // allowedVehicles must be configured in policy. Return all power - // units and trailers from this list. - puTypes = extractIdentifiedObjects( - this.policyDefinition.vehicleTypes.powerUnitTypes, - permitType.allowedVehicles, - ); - trTypes = extractIdentifiedObjects( - this.policyDefinition.vehicleTypes.trailerTypes, - permitType.allowedVehicles, - ); - } - } - - const vehicleTypes = new Map>(); - vehicleTypes.set(VehicleTypes.PowerUnits, puTypes); - vehicleTypes.set(VehicleTypes.Trailers, trTypes); - - return vehicleTypes; - } - - /** - * Gets a list of all allowable power unit types for the given permit type - * and commodity. - * @param permitTypeId ID of the permit type to get power units for - * @param commodityId ID of the commodity to get power units for - * @returns Map of power unit IDs to power unit names. - */ - getPermittablePowerUnitTypes( - permitTypeId: string, - commodityId: string, - ): Map { - const vehicleTypes = this.getPermittableVehicleTypes( - permitTypeId, - commodityId, - ); - const puTypes = vehicleTypes.get(VehicleTypes.PowerUnits); - return puTypes ?? new Map(); - } - - /** - * Gets the next permittable vehicles based on the supplied permit type, - * commodity, and current configuration. - * If the permit type does not require commodity or if the commodity - * is not valid for the permit type, this will return an empty map - * (meaning no vehicles are permittable). - * @param permitTypeId ID of the permit type to get vehicles for - * @param commodityId ID of the commodity to get vehicles for - * @param currentConfiguration Current vehicle configuration to which will be - * added the next permittable vehicle - * @returns Map of vehicle ID to vehicle name. Includes both power units and - * trailers in a single return value (if applicable). - */ - getNextPermittableVehicles( - permitTypeId: string, - commodityId: string, - currentConfiguration: Array, - ): Map { - if (!permitTypeId || !commodityId || !currentConfiguration) { - throw new Error( - 'Missing permitTypeId and/or commodityId and/or currentConfiguration', - ); - } - - const permitType = this.getPermitTypeDefinition(permitTypeId); - if (!permitType) { - throw new Error(`Invalid permit type: '${permitTypeId}'`); - } - - if (!permitType.commodityRequired) { - // If commodity is not required, this method cannot calculate the - // permittable vehicle types since they will not be configured. - throw new Error( - `Permit type '${permitTypeId}' does not require a commodity`, - ); - } - - const commodity = this.getCommodityDefinition(commodityId); - if (!commodity) { - throw new Error(`Invalid commodity type: '${commodityId}'`); - } - - if ( - !this.isConfigurationValid( - permitTypeId, - commodityId, - currentConfiguration, - true, - ) - ) { - // Invalid configuration, no vehicles permitted - return new Map(); - } - - let vehicleTypes = new Map(); - let vehicleTypeIds: Array | undefined; - const allVehicles: Array = - this.policyDefinition.vehicleTypes.powerUnitTypes.concat( - this.policyDefinition.vehicleTypes.trailerTypes, - ); - - if (currentConfiguration.length == 0) { - // The current configuration is empty, so return only the - // allowable power units. - vehicleTypeIds = commodity.size?.powerUnits?.map((p) => p.type); - } else { - const powerUnit = commodity.size?.powerUnits?.find( - (p) => p.type == currentConfiguration[0], - ); - const trailerIds = powerUnit?.trailers.map((t) => t.type); - if (currentConfiguration.length == 1) { - // Just a power unit, return the list of trailerIds for the - // power unit, plus jeep if any of the trailer Ids allow - // a jeep. - if ( - powerUnit?.trailers && - powerUnit?.trailers.filter((t) => t.jeep).length > 0 - ) { - trailerIds?.push(AccessoryVehicleType.Jeep); - } - vehicleTypeIds = trailerIds; - } else { - const lastVehicleId = - currentConfiguration[currentConfiguration.length - 1]; - switch (lastVehicleId) { - case AccessoryVehicleType.Jeep: - // If there is one jeep, there can be more - trailerIds?.push(AccessoryVehicleType.Jeep); - vehicleTypeIds = trailerIds; - break; - case AccessoryVehicleType.Booster: - // If there is one booster, there can be more - vehicleTypeIds = [AccessoryVehicleType.Booster]; - break; - default: - { - const trailer = powerUnit?.trailers.find( - (t) => t.type == lastVehicleId, - ); - if (trailer && trailer.booster) { - vehicleTypeIds = [AccessoryVehicleType.Booster]; - } else { - vehicleTypeIds = new Array(); - } - } - break; - } - } - } - - vehicleTypes = extractIdentifiedObjects(allVehicles, vehicleTypeIds); - - return vehicleTypes; - } - - /** - * Returns whether the supplied configuration is valid for the given permit type - * and commodity. If the permit type does not require a commodity, this method - * will return false. This will not validate incomplete configurations - if the - * current configuration has only a power unit this will return false even if the - * power unit is acceptable because there is no trailer which is mandatory. - * If this is called for a permit type that does not require commodity, or with - * a commodity not permitted for the permit type, it will return false. - * @param permitTypeId ID of the permit type to validate the configuration against - * @param commodityId ID of the commodity used for the configuration - * @param currentConfiguration Current vehicle configuration to validate - * @param validatePartial Whether to validate a partial configuration (e.g. one - * that does not include a trailer). This will just return whether or not there - * are any invalid vehicles in the configuration. If true, an empty current - * configuration will return true from this method. - */ - isConfigurationValid( - permitTypeId: string, - commodityId: string, - currentConfiguration: Array, - validatePartial: boolean = false, - ): boolean { - if (!permitTypeId || !commodityId || !currentConfiguration) { - throw new Error( - 'Missing permitTypeId and/or commodityId and/or currentConfiguration', - ); - } - - const permitType = this.getPermitTypeDefinition(permitTypeId); - if (!permitType) { - throw new Error(`Invalid permit type: '${permitTypeId}'`); - } - - if (!permitType.commodityRequired) { - // If commodity is not required, this method cannot calculate the - // permittable vehicle types since they will not be configured. - throw new Error( - `Permit type '${permitTypeId}' does not require a commodity`, - ); - } - - const commodity = this.getCommodityDefinition(commodityId); - if (!commodity) { - throw new Error(`Invalid commodity type: '${commodityId}'`); - } - - if (currentConfiguration.length == 0) { - // The current configuration is empty. Fine for partial, but - // invalid as a complete configuration. - return validatePartial; - } - - const powerUnit = commodity.size?.powerUnits?.find( - (p) => p.type == currentConfiguration[0], - ); - if (!powerUnit) { - // The power unit is not allowed for the commodity - return false; - } - - let trailerIds = powerUnit.trailers.map((t) => t.type); - let jeepAllowed: boolean = true; - let trailerAllowed: boolean = true; - let boosterAllowed: boolean = false; - - for (let i = 1; i < currentConfiguration.length; i++) { - switch (currentConfiguration[i]) { - case AccessoryVehicleType.Jeep: - if (!jeepAllowed) { - return false; - } - // Filter allowed trailers to only those that allow jeeps - trailerIds = powerUnit.trailers - .filter((t) => t.jeep) - .map((t) => t.type); - break; - case AccessoryVehicleType.Booster: - if (!boosterAllowed) { - return false; - } - break; - default: - if (!trailerAllowed) { - return false; - } - { - const trailer = powerUnit.trailers.find( - (t) => t.type == currentConfiguration[i], - ); - if (!trailer || !trailerIds.includes(currentConfiguration[i])) { - // This trailer is not permitted for this power unit - return false; - } - jeepAllowed = false; - trailerAllowed = false; - boosterAllowed = trailer.booster; - } - break; - } - } - // We are still here, so configuration is valid. If there is a trailer - // it is a valid final configuration, otherwise it is a valid partial - // configuration. - return !trailerAllowed || validatePartial; - } - - /** - * Gets the maximum size dimensions for a given permit type, commodity, - * and vehicle configuration. A vehicle configuration's size dimension is - * dictated by the configuration on the trailer. For configurations that - * are just a power unit, a pseudo trailer type 'NONE' is used and the - * size dimension is configured on that. Accessory category trailers - * (e.g. jeeps and boosters) are not used for configuration since they - * do not impact the size dimension in policy. - * @param permitTypeId ID of the permit type to get size dimension for - * @param commodityId ID of the commodity to get size dimension for - * @param currentConfiguration Current vehicle configuration to get size dimension for - * @param regions List of regions the vehicle will be traveling in. If not - * supplied this defaults to the most restrictive size dimension (if multiple - * are configured). - * @returns SizeDimension for the given permit type, commodity, and configuration - */ - getSizeDimension( - permitTypeId: string, - commodityId: string, - configuration: Array, - regions?: Array, - ): SizeDimension | null { - // Initialize the sizeDimension with global defaults - let sizeDimension: SizeDimension | null = null; - - // Validate that the configuration is permittable - if (this.isConfigurationValid(permitTypeId, commodityId, configuration)) { - // Get the power unit that has the size configuration - const commodity = this.getCommodityDefinition(commodityId); - const powerUnit = commodity?.size?.powerUnits?.find( - (pu) => pu.type == configuration[0], - ); - if (!powerUnit) { - throw new Error( - `Configuration error: could not find power unit '${configuration[0]}'`, - ); - } - - // Get the last trailer in the configuration that can be used for size calculations - const sizeTrailer: string | undefined = Array.from(configuration) - .reverse() - .find((vehicleId) => { - const trailerType = - this.policyDefinition.vehicleTypes.trailerTypes?.find( - (v) => v.id == vehicleId, - ); - return !trailerType?.ignoreForSizeDimensions; - }); - - if (sizeTrailer) { - // Get the trailer size dimension array for the commodity - const trailer: TrailerSize | undefined = powerUnit.trailers?.find( - (t) => t.type == sizeTrailer, - ); - - let sizeDimensions: Array; - - if ( - trailer && - trailer.sizeDimensions && - trailer.sizeDimensions.length > 0 - ) { - sizeDimensions = trailer.sizeDimensions; - } else { - sizeDimensions = new Array(); - } - - const sizeDimensionConfigured = this.selectCorrectSizeDimension( - sizeDimensions, - configuration, - sizeTrailer, - ); - - if (sizeDimensionConfigured) { - // Adjust the size dimensions for the regions travelled, if needed - if (!regions) { - // If we are not provided a list of regions, assume we are - // traveling through all regions (will take the most restrictive - // of all dimensions in all cases). - console.log('Assuming all regions for size dimension lookup'); - regions = this.policyDefinition.geographicRegions.map((g) => g.id); - } else { - console.log(`Using '${regions}' as regions for size lookup`); - } - const valueOverrides: Array = []; - regions?.forEach((r) => { - let valueOverride: RegionSizeOverride; - // Check to see if this region has specific size dimensions - const regionOverride = sizeDimensionConfigured.regions?.find( - (cr) => cr.region == r, - ); - if (!regionOverride) { - // The region travelled does not have an override, so it assumes - // the dimensions of the bc default. - valueOverride = { - region: r, - h: sizeDimensionConfigured.h, - w: sizeDimensionConfigured.w, - l: sizeDimensionConfigured.l, - }; - } else { - // There is a region override with one or more dimensions. Use this - // value preferentially, using default dimension if not supplied - valueOverride = { - region: r, - h: regionOverride.h ?? sizeDimensionConfigured.h, - w: regionOverride.w ?? sizeDimensionConfigured.w, - l: regionOverride.l ?? sizeDimensionConfigured.l, - }; - } - valueOverrides.push(valueOverride); - }); - - // At this point we have a complete set of size dimensions for each of - // the regions that will be traversed. Take the minimum value of each - // dimension for the final value. - const minimumOverrides = valueOverrides.reduce( - (accumulator, currentValue) => { - if (typeof currentValue.h !== 'undefined') { - if (typeof accumulator.h === 'undefined') { - accumulator.h = currentValue.h; - } else { - accumulator.h = Math.min(accumulator.h, currentValue.h); - } - } - if (typeof currentValue.w !== 'undefined') { - if (typeof accumulator.w === 'undefined') { - accumulator.w = currentValue.w; - } else { - accumulator.w = Math.min(accumulator.w, currentValue.w); - } - } - if (typeof currentValue.l !== 'undefined') { - if (typeof accumulator.l === 'undefined') { - accumulator.l = currentValue.l; - } else { - accumulator.l = Math.min(accumulator.l, currentValue.l); - } - } - return accumulator; - }, - { region: '' }, - ); - - sizeDimension = { - rp: sizeDimensionConfigured.rp, - fp: sizeDimensionConfigured.fp, - h: minimumOverrides.h, - w: minimumOverrides.w, - l: minimumOverrides.l, - }; - } else { - console.log('Size dimension not configured for trailer'); - } - } else { - console.log('Could not locate trailer to use for size dimension'); - } - } else { - console.log('Configuration is invalid, returning null size dimension'); - } - - return sizeDimension; - } - - /** - * Selects the correct size dimension from a list of potential candidates, based - * on the modifier of each dimension. If none of the modifiers match, returns - * null. - * @param sizeDimensions Size dimension options to choose from - * @param currentConfiguration The full vehicle configuration - */ - selectCorrectSizeDimension( - sizeDimensions: Array, - configuration: Array, - sizeTrailer: string, - ): SizeDimension | null { - let matchingDimension: SizeDimension | null = null; - - if (sizeDimensions?.length > 0 && configuration?.length > 0) { - for (const sizeDimension of sizeDimensions) { - if (!sizeDimension.modifiers) { - // This dimension has no modifiers, so it is the default if none of - // the other specific modifiers match. - matchingDimension = sizeDimension; - console.log('Using default size dimension, no modifiers specified'); - } else { - const sizeTrailerIndex = configuration.findIndex( - (c) => sizeTrailer == c, - ); - const isMatch: boolean | undefined = sizeDimension.modifiers?.every( - (m) => { - if (!m.type) { - return false; - } - switch (m.position) { - case RelativePosition.First.toString(): - return configuration[0] == m.type; - case RelativePosition.Last.toString(): - return configuration[configuration.length - 1] == m.type; - case RelativePosition.Before.toString(): - return configuration[sizeTrailerIndex - 1] == m.type; - case RelativePosition.After.toString(): - return configuration[sizeTrailerIndex + 1] == m.type; - default: - return false; - } - }, - ); - // As soon as we find a dimension with matching modifiers, - // set it and return it. - if (isMatch) { - matchingDimension = sizeDimension; - break; - } - } - } - } else { - console.log( - 'Either size dimensions or configuration array is null, no matching dimension returned', - ); - } - return matchingDimension; - } - - /** - * Gets a list of all configured power unit types in the policy definition. - * @returns Map of power unit type IDs to power unit type names. - */ - getPowerUnitTypes(): Map { - const powerUnitTypes = extractIdentifiedObjects( - this.policyDefinition.vehicleTypes.powerUnitTypes, - ); - return powerUnitTypes; - } - - /** - * Gets a list of all configured trailer types in the policy definition. - * @returns Map of trailer type IDs to trailer type names. - */ - getTrailerTypes(): Map { - const trailerTypes = extractIdentifiedObjects( - this.policyDefinition.vehicleTypes.trailerTypes, - ); - return trailerTypes; - } - - /** - * Gets a full PermitType definition by ID. - * @param type Type ID of the permit definition to return. - * @returns PermitType definition for the supplied ID. - */ - getPermitTypeDefinition(type?: string): PermitType | null { - let permitType: PermitType | undefined; - if (this.policyDefinition.permitTypes) { - permitType = this.policyDefinition.permitTypes.find((p) => p.id === type); - } - - if (permitType) { - return permitType; - } else { - return null; - } - } - - /** - * Gets a full Commodity definition by ID - * @param type Type ID of the commodity to return. - * @returns Commodity definition for the supplied ID. - */ - getCommodityDefinition(type?: string): Commodity | null { - let commodity: Commodity | undefined; - if (this.policyDefinition.commodities) { - commodity = this.policyDefinition.commodities.find((c) => c.id === type); - } - - if (commodity) { - return commodity; - } else { - return null; - } - } -} diff --git a/policy-engine/src/rule-operator/custom-operators.ts b/policy-engine/src/rule-operator/custom-operators.ts deleted file mode 100644 index 297c38726..000000000 --- a/policy-engine/src/rule-operator/custom-operators.ts +++ /dev/null @@ -1,48 +0,0 @@ -import { Operator } from 'json-rules-engine'; -import { PermitAppInfo } from 'onroute-policy-engine/enum'; -import dayjs from 'dayjs'; - -function stringValidator(a: any): boolean { - return typeof a === 'string'; -} - -function dateStringValidator(a: any): boolean { - const d = dayjs(a, PermitAppInfo.PermitDateFormat.toString()); - return d.isValid(); -} - -const CustomOperators: Array = []; - -CustomOperators.push( - new Operator( - 'stringMinimumLength', - (a: string, b: number) => { - if (!a) return false; - - return a.trim().length >= b; - }, - stringValidator, - ), -); - -CustomOperators.push( - new Operator( - 'dateLessThan', - (a: string, b: string) => { - const firstDate = dayjs(a, PermitAppInfo.PermitDateFormat.toString()); - const secondDate = dayjs(b, PermitAppInfo.PermitDateFormat.toString()); - return firstDate.diff(secondDate) < 0; - }, - dateStringValidator, - ), -); - -CustomOperators.push( - new Operator( - 'regex', - (a: string, b: string) => RegExp(b).exec(a) !== null, - stringValidator, - ), -); - -export { CustomOperators }; diff --git a/policy-engine/src/types/commodity.ts b/policy-engine/src/types/commodity.ts deleted file mode 100644 index b5bbd8ca2..000000000 --- a/policy-engine/src/types/commodity.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { - IdentifiedObject, - VehicleSizeConfiguration, - PowerUnitWeight, - TrailerWeight, -} from 'onroute-policy-engine/types'; - -export type Commodity = IdentifiedObject & { - size?: CommoditySize; - weight?: CommodityWeight; -}; - -export type CommoditySize = { - powerUnits?: Array; -}; - -export type CommodityWeight = { - powerUnits?: Array; - trailers?: Array; -}; diff --git a/policy-engine/src/types/cost-rule.ts b/policy-engine/src/types/cost-rule.ts deleted file mode 100644 index d910c1ebf..000000000 --- a/policy-engine/src/types/cost-rule.ts +++ /dev/null @@ -1,4 +0,0 @@ -export type CostRule = { - fact: string; - params: Record; -}; diff --git a/policy-engine/src/types/dimension-modifier.ts b/policy-engine/src/types/dimension-modifier.ts deleted file mode 100644 index 2669d54ca..000000000 --- a/policy-engine/src/types/dimension-modifier.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { SelfIssuable } from 'onroute-policy-engine/types'; - -export type DimensionModifier = SelfIssuable & { - position: string; - type?: string; - category?: string; - axles?: number; - minInterAxleSpacing?: number; - maxInterAxleSpacing?: number; -}; diff --git a/policy-engine/src/types/facts.ts b/policy-engine/src/types/facts.ts deleted file mode 100644 index 20d65eec9..000000000 --- a/policy-engine/src/types/facts.ts +++ /dev/null @@ -1,10 +0,0 @@ -export type PermitFacts = { - companyName?: string; - duration?: number; - permitType?: string; - startDate?: string; - vehicleIdentificationNumber?: string; - vehiclePlate?: string; - vehicleType?: string; - app?: object; -}; diff --git a/policy-engine/src/types/geographic-region.ts b/policy-engine/src/types/geographic-region.ts deleted file mode 100644 index 254770c6b..000000000 --- a/policy-engine/src/types/geographic-region.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { IdentifiedObject } from 'onroute-policy-engine/types'; - -export type GeographicRegion = IdentifiedObject & { - description?: string; -}; diff --git a/policy-engine/src/types/identified-object.ts b/policy-engine/src/types/identified-object.ts deleted file mode 100644 index f774902cf..000000000 --- a/policy-engine/src/types/identified-object.ts +++ /dev/null @@ -1,4 +0,0 @@ -export type IdentifiedObject = { - id: string; - name: string; -}; diff --git a/policy-engine/src/types/index.ts b/policy-engine/src/types/index.ts deleted file mode 100644 index 2dc59cd8f..000000000 --- a/policy-engine/src/types/index.ts +++ /dev/null @@ -1,37 +0,0 @@ -export { Commodity, CommoditySize, CommodityWeight } from './commodity'; -export { CostRule } from './cost-rule'; -export { DimensionModifier } from './dimension-modifier'; -export { PermitFacts } from './facts'; -export { GeographicRegion } from './geographic-region'; -export { IdentifiedObject } from './identified-object'; -export { PermitType } from './permit-type'; -export { PolicyDefinition } from './policy-definition'; -export { Matrix, RangeMatrix } from './range-matrix'; -export { RegionSizeOverride } from './region-size-override'; -export { SelfIssuable } from './self-issuable'; -export { SizeDimension } from './size-dimension'; -export { - VehicleCategory, - PowerUnitCategory, - TrailerCategory, - VehicleCategories, -} from './vehicle-category'; -export { - VehicleType, - PowerUnitType, - TrailerType, - VehicleTypes, -} from './vehicle-type'; -export { - Vehicle, - VehicleSizeConfiguration, - TrailerSize, - PowerUnitWeight, - TrailerWeight, -} from './vehicle'; -export { - WeightDimension, - PowerUnitWeightDimension, - TrailerWeightDimension, - DefaultWeightDimensions, -} from './weight-dimension'; diff --git a/policy-engine/src/types/permit-type.ts b/policy-engine/src/types/permit-type.ts deleted file mode 100644 index 1a5280c4a..000000000 --- a/policy-engine/src/types/permit-type.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { RuleProperties } from 'json-rules-engine'; -import { CostRule, IdentifiedObject } from 'onroute-policy-engine/types'; - -export type PermitType = IdentifiedObject & { - routingRequired: boolean; - weightDimensionRequired: boolean; - sizeDimensionRequired: boolean; - commodityRequired: boolean; - allowedVehicles: Array; - allowedCommodities?: Array; - rules?: Array; - costRules?: Array; -}; diff --git a/policy-engine/src/types/policy-definition.ts b/policy-engine/src/types/policy-definition.ts deleted file mode 100644 index 4efcb78a1..000000000 --- a/policy-engine/src/types/policy-definition.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { - GeographicRegion, - PermitType, - DefaultWeightDimensions, - VehicleTypes, - Commodity, - SizeDimension, - VehicleCategories, - RangeMatrix, -} from 'onroute-policy-engine/types'; -import { RuleProperties } from 'json-rules-engine'; - -export type PolicyDefinition = { - version: string; - geographicRegions: Array; - permitTypes: Array; - commonRules: Array; - globalWeightDefaults: DefaultWeightDimensions; - globalSizeDefaults: SizeDimension; - vehicleCategories: VehicleCategories; - vehicleTypes: VehicleTypes; - commodities: Array; - rangeMatrices?: Array; -}; diff --git a/policy-engine/src/types/range-matrix.ts b/policy-engine/src/types/range-matrix.ts deleted file mode 100644 index 145178ef6..000000000 --- a/policy-engine/src/types/range-matrix.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { IdentifiedObject } from 'onroute-policy-engine/types'; - -export type RangeMatrix = IdentifiedObject & { - matrix: Matrix[]; -}; - -export type Matrix = { - min?: number; - max?: number; - value: number; -}; diff --git a/policy-engine/src/types/region-size-override.ts b/policy-engine/src/types/region-size-override.ts deleted file mode 100644 index 92c17e028..000000000 --- a/policy-engine/src/types/region-size-override.ts +++ /dev/null @@ -1,6 +0,0 @@ -export type RegionSizeOverride = { - region: string; - w?: number; - h?: number; - l?: number; -}; diff --git a/policy-engine/src/types/self-issuable.ts b/policy-engine/src/types/self-issuable.ts deleted file mode 100644 index fcc8ab81c..000000000 --- a/policy-engine/src/types/self-issuable.ts +++ /dev/null @@ -1,3 +0,0 @@ -export type SelfIssuable = { - selfIssue?: boolean; -}; diff --git a/policy-engine/src/types/size-dimension.ts b/policy-engine/src/types/size-dimension.ts deleted file mode 100644 index 942c0db08..000000000 --- a/policy-engine/src/types/size-dimension.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { - DimensionModifier, - RegionSizeOverride, - SelfIssuable, -} from 'onroute-policy-engine/types'; - -export type SizeDimension = SelfIssuable & { - fp?: number; - rp?: number; - w?: number; - h?: number; - l?: number; - modifiers?: Array; - regions?: Array; -}; diff --git a/policy-engine/src/types/vehicle-category.ts b/policy-engine/src/types/vehicle-category.ts deleted file mode 100644 index 65912b6f9..000000000 --- a/policy-engine/src/types/vehicle-category.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { - IdentifiedObject, - SizeDimension, - PowerUnitWeightDimension, - TrailerWeightDimension, -} from 'onroute-policy-engine/types'; - -export type VehicleCategory = IdentifiedObject & { - defaultSizeDimensions?: SizeDimension; -}; - -export type PowerUnitCategory = VehicleCategory & { - defaultWeightDimensions?: Array; -}; - -export type TrailerCategory = VehicleCategory & { - defaultWeightDimensions?: Array; -}; - -export type VehicleCategories = { - powerUnitCategories: Array; - trailerCategories: Array; -}; diff --git a/policy-engine/src/types/vehicle-type.ts b/policy-engine/src/types/vehicle-type.ts deleted file mode 100644 index faef34df4..000000000 --- a/policy-engine/src/types/vehicle-type.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { - IdentifiedObject, - SizeDimension, - PowerUnitWeightDimension, - TrailerWeightDimension, -} from 'onroute-policy-engine/types'; - -export type VehicleType = IdentifiedObject & { - category: string; - defaultSizeDimensions?: SizeDimension; - ignoreForSizeDimensions?: boolean; -}; - -export type PowerUnitType = VehicleType & { - defaultWeightDimensions?: Array; -}; - -export type TrailerType = VehicleType & { - defaultWeightDimensions?: Array; -}; - -export type VehicleTypes = { - powerUnitTypes: Array; - trailerTypes: Array; -}; diff --git a/policy-engine/src/types/vehicle.ts b/policy-engine/src/types/vehicle.ts deleted file mode 100644 index 4d557feb0..000000000 --- a/policy-engine/src/types/vehicle.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { - SelfIssuable, - SizeDimension, - PowerUnitWeightDimension, - TrailerWeightDimension, -} from 'onroute-policy-engine/types'; - -export type Vehicle = SelfIssuable & { - type: string; -}; - -export type VehicleSizeConfiguration = Vehicle & { - trailers: Array; -}; - -export type TrailerSize = Vehicle & { - sizeDimensions?: Array; - jeep: boolean; - booster: boolean; -}; - -export type PowerUnitWeight = Vehicle & { - weightDimensions?: Array; -}; - -export type TrailerWeight = Vehicle & { - weightDimensions?: Array; -}; diff --git a/policy-engine/src/types/weight-dimension.ts b/policy-engine/src/types/weight-dimension.ts deleted file mode 100644 index df22b7ce8..000000000 --- a/policy-engine/src/types/weight-dimension.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { DimensionModifier, SelfIssuable } from 'onroute-policy-engine/types'; - -export type WeightDimension = SelfIssuable & { - axles: number; - modifiers?: Array; -}; - -export type PowerUnitWeightDimension = WeightDimension & { - saLegal?: number; - saPermittable?: number; - daLegal?: number; - daPermittable?: number; -}; - -export type TrailerWeightDimension = WeightDimension & { - legal?: number; - permittable?: number; -}; - -export type DefaultWeightDimensions = { - powerUnits: Array; - trailers: Array; -}; diff --git a/policy-engine/src/validation-result.ts b/policy-engine/src/validation-result.ts deleted file mode 100644 index 9face0a63..000000000 --- a/policy-engine/src/validation-result.ts +++ /dev/null @@ -1,25 +0,0 @@ -/** - * Represents a single validation result when a permit application is - * validated against policy. A single validation run can result in multiple - * validation result messages. - */ -export class ValidationResult { - /** - * Creates a new ValidationResult from the supplied type, code, and message. - * - * @param type type of result, one of the ValidationResultType enum - * @param code code for identifying common categories of results - * @param message text message describing the result - */ - constructor(type: string, code: string, message: string) { - this.type = type; - this.code = code; - this.message = message; - } - - type: string; - code: string; - message: string; - fieldReference?: string; - cost?: number; -} diff --git a/policy-engine/src/validation-results.ts b/policy-engine/src/validation-results.ts deleted file mode 100644 index 99fd395bc..000000000 --- a/policy-engine/src/validation-results.ts +++ /dev/null @@ -1,86 +0,0 @@ -import { EngineResult } from 'json-rules-engine'; -import { ValidationResultType } from './enum/validation-result-type'; -import { ValidationResultCode } from './enum/validation-result-code'; -import { ValidationResult } from './validation-result'; - -/** Represents the results of a permit application validation against policy */ -export class ValidationResults { - /** Array of policy violations found during validation. */ - violations: Array = []; - /** - * Array of additional requirements found during validation. For example, - * a permit may require that other additional permits be applied for in - * order to be legal. - */ - requirements: Array = []; - /** Array of policy warnings found during validation. */ - warnings: Array = []; - /** - * Array of policy messages found during validation. These should be - * considered informational only and do not impact the validity of the - * permit. - */ - information: Array = []; - /** - * Array of cost messages, based on cost rules. If there are more than - * one cost message, all should be summed to get the total permit cost. - */ - cost: Array = []; - - /** - * Creates a new ValidationResults from the json-rules-engine result. - * Populates the violations, requirements, warnings, and messages arrays - * based on the events in the json-rules-engine result. - * @param engineResult json-rules-engine run result. - */ - constructor(engineResult?: EngineResult) { - if (engineResult) { - engineResult.events.forEach((e) => { - const message: string = - e.params?.message ?? - `Unknown message: params=${JSON.stringify(e.params)}`; - const code: string = - e.params?.code ?? ValidationResultCode.GeneralResult; - const type: string = - e.type ?? ValidationResultType.Violation.toString(); - - const result: ValidationResult = new ValidationResult( - type, - code, - message, - ); - result.fieldReference = e.params?.fieldReference; - result.cost = e.params?.cost; - - switch (type) { - case ValidationResultType.Violation: - this.violations.push(result); - break; - case ValidationResultType.Requirement: - this.requirements.push(result); - break; - case ValidationResultType.Warning: - this.warnings.push(result); - break; - case ValidationResultType.Information: - this.information.push(result); - break; - case ValidationResultType.Cost: - this.cost.push(result); - break; - default: - // Treat any unknown validation event as a violation since - // it is an unexpected scenario. - console.log('Unknown validation event encountered'); - this.violations.push( - new ValidationResult( - ValidationResultType.Violation, - ValidationResultCode.GeneralResult, - 'Unknown validation event encountered', - ), - ); - } - }); - } - } -} diff --git a/policy-engine/tsconfig.json b/policy-engine/tsconfig.json deleted file mode 100644 index 1fb473208..000000000 --- a/policy-engine/tsconfig.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "compilerOptions": { - "module": "nodenext", - "strict": true, - "allowUnreachableCode": false, - "declaration": true, - "outDir": "dist", - "target": "es2017", - "incremental": true, - "skipLibCheck": true, - "esModuleInterop": true, - "rootDir": "./src" - }, - "include": [ - "src/**/*", - "**/*.spec.ts", - "src/_test/permit-app/permit-application.type.ts" ] -} \ No newline at end of file From 5f0620cd8f891c552719c71d804fed49445e3eb0 Mon Sep 17 00:00:00 2001 From: Krishnan Subramanian <84348052+krishnan-aot@users.noreply.github.com> Date: Mon, 9 Dec 2024 10:58:35 -0800 Subject: [PATCH 10/25] Dependency updates - Minor and patch versions (#1699) --- dops/package-lock.json | 2090 +++++++-------- dops/package.json | 50 +- frontend/package-lock.json | 2816 +++++++++++--------- frontend/package.json | 66 +- policy/package-lock.json | 857 +++--- policy/package.json | 44 +- scheduler/package-lock.json | 4970 ++++++++++++++++++----------------- scheduler/package.json | 48 +- vehicles/package-lock.json | 1291 +++++---- vehicles/package.json | 46 +- 10 files changed, 6393 insertions(+), 5885 deletions(-) diff --git a/dops/package-lock.json b/dops/package-lock.json index 7df2efec6..9c3dec6c2 100644 --- a/dops/package-lock.json +++ b/dops/package-lock.json @@ -13,20 +13,20 @@ "@automapper/core": "^8.8.1", "@automapper/nestjs": "^8.8.1", "@automapper/types": "^6.3.1", - "@aws-sdk/client-s3": "^3.637.0", - "@aws-sdk/lib-storage": "^3.637.0", - "@aws-sdk/s3-request-presigner": "^3.637.0", - "@nestjs/axios": "^3.0.3", - "@nestjs/cache-manager": "^2.2.2", - "@nestjs/cli": "^10.4.4", - "@nestjs/common": "^10.4.1", - "@nestjs/config": "^3.2.3", - "@nestjs/core": "^10.4.1", + "@aws-sdk/client-s3": "^3.705.0", + "@aws-sdk/lib-storage": "^3.705.0", + "@aws-sdk/s3-request-presigner": "^3.705.0", + "@nestjs/axios": "^3.1.3", + "@nestjs/cache-manager": "^2.3.0", + "@nestjs/cli": "^10.4.9", + "@nestjs/common": "^10.4.15", + "@nestjs/config": "^3.3.0", + "@nestjs/core": "^10.4.15", "@nestjs/passport": "^10.0.3", - "@nestjs/platform-express": "^10.4.1", - "@nestjs/schematics": "^10.1.4", - "@nestjs/swagger": "^7.4.0", - "@nestjs/testing": "^10.4.1", + "@nestjs/platform-express": "^10.4.15", + "@nestjs/schematics": "^10.2.3", + "@nestjs/swagger": "^7.4.2", + "@nestjs/testing": "^10.4.15", "@nestjs/typeorm": "^10.0.2", "@types/response-time": "^2.3.8", "axios-retry": "^4.5.0", @@ -34,31 +34,31 @@ "class-transformer": "^0.5.1", "class-validator": "^0.14.1", "dayjs": "^1.11.13", - "dotenv": "^16.4.5", + "dotenv": "^16.4.7", "handlebars": "^4.7.8", - "helmet": "^7.1.0", + "helmet": "^7.2.0", "jwks-rsa": "^3.1.0", "mssql": "^10.0.4", "nest-winston": "^1.10.0", - "nestjs-cls": "^4.4.1", + "nestjs-cls": "^4.5.0", "passport": "^0.7.0", "passport-jwt": "^4.0.1", "pdf-lib": "^1.17.1", "puppeteer": "^22.15.0", - "response-time": "^2.3.2", + "response-time": "^2.3.3", "rxjs": "^7.8.1", "swagger-ui-express": "^5.0.1", "typeorm": "^0.3.20", "typescript-eslint": "^7.18.0", "uuid": "^9.0.1", - "winston": "^3.14.2" + "winston": "^3.17.0" }, "devDependencies": { - "@golevelup/ts-jest": "^0.5.4", + "@golevelup/ts-jest": "^0.6.1", "@types/express": "^4.17.21", - "@types/jest": "^29.5.12", + "@types/jest": "^29.5.14", "@types/multer": "^1.4.12", - "@types/node": "^20.16.1", + "@types/node": "^20.17.9", "@types/passport-jwt": "^4.0.1", "@types/supertest": "^6.0.2", "@types/uuid": "^10.0.0", @@ -66,7 +66,7 @@ "eslint-config-airbnb-base": "^15.0.0", "eslint-config-prettier": "^9.1.0", "eslint-config-standard": "^17.1.0", - "eslint-plugin-import": "^2.29.1", + "eslint-plugin-import": "^2.31.0", "eslint-plugin-node": "^11.1.0", "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-promise": "^6.6.0", @@ -74,8 +74,8 @@ "jest": "^29.7.0", "jest-badges": "^0.1.3", "jest-sonar-reporter": "^2.0.0", - "lint-staged": "^15.2.9", - "prettier": "^3.3.3", + "lint-staged": "^15.2.10", + "prettier": "^3.4.2", "rimraf": "^5.0.10", "source-map-support": "^0.5.21", "supertest": "^7.0.0", @@ -83,7 +83,7 @@ "ts-loader": "^9.5.1", "ts-node": "^10.9.2", "tsconfig-paths": "^4.2.0", - "typescript": "^5.5.4" + "typescript": "^5.7.2" } }, "node_modules/@ampproject/remapping": { @@ -101,9 +101,9 @@ } }, "node_modules/@angular-devkit/core": { - "version": "17.3.8", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-17.3.8.tgz", - "integrity": "sha512-Q8q0voCGudbdCgJ7lXdnyaxKHbNQBARH68zPQV72WT8NWy+Gw/tys870i6L58NWbBaCJEUcIj/kb6KoakSRu+Q==", + "version": "17.3.11", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-17.3.11.tgz", + "integrity": "sha512-vTNDYNsLIWpYk2I969LMQFH29GTsLzxNk/0cLw5q56ARF0v5sIWfHYwGTS88jdDqIpuuettcSczbxeA7EuAmqQ==", "dependencies": { "ajv": "8.12.0", "ajv-formats": "2.1.1", @@ -127,11 +127,11 @@ } }, "node_modules/@angular-devkit/schematics": { - "version": "17.3.8", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-17.3.8.tgz", - "integrity": "sha512-QRVEYpIfgkprNHc916JlPuNbLzOgrm9DZalHasnLUz4P6g7pR21olb8YCyM2OTJjombNhya9ZpckcADU5Qyvlg==", + "version": "17.3.11", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-17.3.11.tgz", + "integrity": "sha512-I5wviiIqiFwar9Pdk30Lujk8FczEEc18i22A5c6Z9lbmhPQdTroDnEQdsfXjy404wPe8H62s0I15o4pmMGfTYQ==", "dependencies": { - "@angular-devkit/core": "17.3.8", + "@angular-devkit/core": "17.3.11", "jsonc-parser": "3.2.1", "magic-string": "0.30.8", "ora": "5.4.1", @@ -144,12 +144,12 @@ } }, "node_modules/@angular-devkit/schematics-cli": { - "version": "17.3.8", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics-cli/-/schematics-cli-17.3.8.tgz", - "integrity": "sha512-TjmiwWJarX7oqvNiRAroQ5/LeKUatxBOCNEuKXO/PV8e7pn/Hr/BqfFm+UcYrQoFdZplmtNAfqmbqgVziKvCpA==", + "version": "17.3.11", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics-cli/-/schematics-cli-17.3.11.tgz", + "integrity": "sha512-kcOMqp+PHAKkqRad7Zd7PbpqJ0LqLaNZdY1+k66lLWmkEBozgq8v4ASn/puPWf9Bo0HpCiK+EzLf0VHE8Z/y6Q==", "dependencies": { - "@angular-devkit/core": "17.3.8", - "@angular-devkit/schematics": "17.3.8", + "@angular-devkit/core": "17.3.11", + "@angular-devkit/schematics": "17.3.11", "ansi-colors": "4.1.3", "inquirer": "9.2.15", "symbol-observable": "4.0.0", @@ -456,67 +456,67 @@ } }, "node_modules/@aws-sdk/client-s3": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.637.0.tgz", - "integrity": "sha512-y6UC94fsMvhKbf0dzfnjVP1HePeGjplfcYfilZU1COIJLyTkMcUv4XcT4I407CGIrvgEafONHkiC09ygqUauNA==", + "version": "3.705.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.705.0.tgz", + "integrity": "sha512-Fm0Cbc4zr0yG0DnNycz7ywlL5tQFdLSb7xCIPfzrxJb3YQiTXWxH5eu61SSsP/Z6RBNRolmRPvst/iNgX0fWvA==", "dependencies": { "@aws-crypto/sha1-browser": "5.2.0", "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/client-sso-oidc": "3.637.0", - "@aws-sdk/client-sts": "3.637.0", - "@aws-sdk/core": "3.635.0", - "@aws-sdk/credential-provider-node": "3.637.0", - "@aws-sdk/middleware-bucket-endpoint": "3.620.0", - "@aws-sdk/middleware-expect-continue": "3.620.0", - "@aws-sdk/middleware-flexible-checksums": "3.620.0", - "@aws-sdk/middleware-host-header": "3.620.0", - "@aws-sdk/middleware-location-constraint": "3.609.0", - "@aws-sdk/middleware-logger": "3.609.0", - "@aws-sdk/middleware-recursion-detection": "3.620.0", - "@aws-sdk/middleware-sdk-s3": "3.635.0", - "@aws-sdk/middleware-ssec": "3.609.0", - "@aws-sdk/middleware-user-agent": "3.637.0", - "@aws-sdk/region-config-resolver": "3.614.0", - "@aws-sdk/signature-v4-multi-region": "3.635.0", - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-endpoints": "3.637.0", - "@aws-sdk/util-user-agent-browser": "3.609.0", - "@aws-sdk/util-user-agent-node": "3.614.0", - "@aws-sdk/xml-builder": "3.609.0", - "@smithy/config-resolver": "^3.0.5", - "@smithy/core": "^2.4.0", - "@smithy/eventstream-serde-browser": "^3.0.6", - "@smithy/eventstream-serde-config-resolver": "^3.0.3", - "@smithy/eventstream-serde-node": "^3.0.5", - "@smithy/fetch-http-handler": "^3.2.4", - "@smithy/hash-blob-browser": "^3.1.2", - "@smithy/hash-node": "^3.0.3", - "@smithy/hash-stream-node": "^3.1.2", - "@smithy/invalid-dependency": "^3.0.3", - "@smithy/md5-js": "^3.0.3", - "@smithy/middleware-content-length": "^3.0.5", - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/middleware-retry": "^3.0.15", - "@smithy/middleware-serde": "^3.0.3", - "@smithy/middleware-stack": "^3.0.3", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/node-http-handler": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/url-parser": "^3.0.3", + "@aws-sdk/client-sso-oidc": "3.699.0", + "@aws-sdk/client-sts": "3.699.0", + "@aws-sdk/core": "3.696.0", + "@aws-sdk/credential-provider-node": "3.699.0", + "@aws-sdk/middleware-bucket-endpoint": "3.696.0", + "@aws-sdk/middleware-expect-continue": "3.696.0", + "@aws-sdk/middleware-flexible-checksums": "3.701.0", + "@aws-sdk/middleware-host-header": "3.696.0", + "@aws-sdk/middleware-location-constraint": "3.696.0", + "@aws-sdk/middleware-logger": "3.696.0", + "@aws-sdk/middleware-recursion-detection": "3.696.0", + "@aws-sdk/middleware-sdk-s3": "3.696.0", + "@aws-sdk/middleware-ssec": "3.696.0", + "@aws-sdk/middleware-user-agent": "3.696.0", + "@aws-sdk/region-config-resolver": "3.696.0", + "@aws-sdk/signature-v4-multi-region": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-endpoints": "3.696.0", + "@aws-sdk/util-user-agent-browser": "3.696.0", + "@aws-sdk/util-user-agent-node": "3.696.0", + "@aws-sdk/xml-builder": "3.696.0", + "@smithy/config-resolver": "^3.0.12", + "@smithy/core": "^2.5.3", + "@smithy/eventstream-serde-browser": "^3.0.13", + "@smithy/eventstream-serde-config-resolver": "^3.0.10", + "@smithy/eventstream-serde-node": "^3.0.12", + "@smithy/fetch-http-handler": "^4.1.1", + "@smithy/hash-blob-browser": "^3.1.9", + "@smithy/hash-node": "^3.0.10", + "@smithy/hash-stream-node": "^3.1.9", + "@smithy/invalid-dependency": "^3.0.10", + "@smithy/md5-js": "^3.0.10", + "@smithy/middleware-content-length": "^3.0.12", + "@smithy/middleware-endpoint": "^3.2.3", + "@smithy/middleware-retry": "^3.0.27", + "@smithy/middleware-serde": "^3.0.10", + "@smithy/middleware-stack": "^3.0.10", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/node-http-handler": "^3.3.1", + "@smithy/protocol-http": "^4.1.7", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", + "@smithy/url-parser": "^3.0.10", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.15", - "@smithy/util-defaults-mode-node": "^3.0.15", - "@smithy/util-endpoints": "^2.0.5", - "@smithy/util-middleware": "^3.0.3", - "@smithy/util-retry": "^3.0.3", - "@smithy/util-stream": "^3.1.3", + "@smithy/util-defaults-mode-browser": "^3.0.27", + "@smithy/util-defaults-mode-node": "^3.0.27", + "@smithy/util-endpoints": "^2.1.6", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-retry": "^3.0.10", + "@smithy/util-stream": "^3.3.1", "@smithy/util-utf8": "^3.0.0", - "@smithy/util-waiter": "^3.1.2", + "@smithy/util-waiter": "^3.1.9", "tslib": "^2.6.2" }, "engines": { @@ -524,46 +524,46 @@ } }, "node_modules/@aws-sdk/client-sso": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.637.0.tgz", - "integrity": "sha512-+KjLvgX5yJYROWo3TQuwBJlHCY0zz9PsLuEolmXQn0BVK1L/m9GteZHtd+rEdAoDGBpE0Xqjy1oz5+SmtsaRUw==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.696.0.tgz", + "integrity": "sha512-q5TTkd08JS0DOkHfUL853tuArf7NrPeqoS5UOvqJho8ibV9Ak/a/HO4kNvy9Nj3cib/toHYHsQIEtecUPSUUrQ==", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "3.635.0", - "@aws-sdk/middleware-host-header": "3.620.0", - "@aws-sdk/middleware-logger": "3.609.0", - "@aws-sdk/middleware-recursion-detection": "3.620.0", - "@aws-sdk/middleware-user-agent": "3.637.0", - "@aws-sdk/region-config-resolver": "3.614.0", - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-endpoints": "3.637.0", - "@aws-sdk/util-user-agent-browser": "3.609.0", - "@aws-sdk/util-user-agent-node": "3.614.0", - "@smithy/config-resolver": "^3.0.5", - "@smithy/core": "^2.4.0", - "@smithy/fetch-http-handler": "^3.2.4", - "@smithy/hash-node": "^3.0.3", - "@smithy/invalid-dependency": "^3.0.3", - "@smithy/middleware-content-length": "^3.0.5", - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/middleware-retry": "^3.0.15", - "@smithy/middleware-serde": "^3.0.3", - "@smithy/middleware-stack": "^3.0.3", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/node-http-handler": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/url-parser": "^3.0.3", + "@aws-sdk/core": "3.696.0", + "@aws-sdk/middleware-host-header": "3.696.0", + "@aws-sdk/middleware-logger": "3.696.0", + "@aws-sdk/middleware-recursion-detection": "3.696.0", + "@aws-sdk/middleware-user-agent": "3.696.0", + "@aws-sdk/region-config-resolver": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-endpoints": "3.696.0", + "@aws-sdk/util-user-agent-browser": "3.696.0", + "@aws-sdk/util-user-agent-node": "3.696.0", + "@smithy/config-resolver": "^3.0.12", + "@smithy/core": "^2.5.3", + "@smithy/fetch-http-handler": "^4.1.1", + "@smithy/hash-node": "^3.0.10", + "@smithy/invalid-dependency": "^3.0.10", + "@smithy/middleware-content-length": "^3.0.12", + "@smithy/middleware-endpoint": "^3.2.3", + "@smithy/middleware-retry": "^3.0.27", + "@smithy/middleware-serde": "^3.0.10", + "@smithy/middleware-stack": "^3.0.10", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/node-http-handler": "^3.3.1", + "@smithy/protocol-http": "^4.1.7", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", + "@smithy/url-parser": "^3.0.10", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.15", - "@smithy/util-defaults-mode-node": "^3.0.15", - "@smithy/util-endpoints": "^2.0.5", - "@smithy/util-middleware": "^3.0.3", - "@smithy/util-retry": "^3.0.3", + "@smithy/util-defaults-mode-browser": "^3.0.27", + "@smithy/util-defaults-mode-node": "^3.0.27", + "@smithy/util-endpoints": "^2.1.6", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-retry": "^3.0.10", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -572,47 +572,47 @@ } }, "node_modules/@aws-sdk/client-sso-oidc": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.637.0.tgz", - "integrity": "sha512-27bHALN6Qb6m6KZmPvRieJ/QRlj1lyac/GT2Rn5kJpre8Mpp+yxrtvp3h9PjNBty4lCeFEENfY4dGNSozBuBcw==", + "version": "3.699.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.699.0.tgz", + "integrity": "sha512-u8a1GorY5D1l+4FQAf4XBUC1T10/t7neuwT21r0ymrtMFSK2a9QqVHKMoLkvavAwyhJnARSBM9/UQC797PFOFw==", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "3.635.0", - "@aws-sdk/credential-provider-node": "3.637.0", - "@aws-sdk/middleware-host-header": "3.620.0", - "@aws-sdk/middleware-logger": "3.609.0", - "@aws-sdk/middleware-recursion-detection": "3.620.0", - "@aws-sdk/middleware-user-agent": "3.637.0", - "@aws-sdk/region-config-resolver": "3.614.0", - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-endpoints": "3.637.0", - "@aws-sdk/util-user-agent-browser": "3.609.0", - "@aws-sdk/util-user-agent-node": "3.614.0", - "@smithy/config-resolver": "^3.0.5", - "@smithy/core": "^2.4.0", - "@smithy/fetch-http-handler": "^3.2.4", - "@smithy/hash-node": "^3.0.3", - "@smithy/invalid-dependency": "^3.0.3", - "@smithy/middleware-content-length": "^3.0.5", - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/middleware-retry": "^3.0.15", - "@smithy/middleware-serde": "^3.0.3", - "@smithy/middleware-stack": "^3.0.3", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/node-http-handler": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/url-parser": "^3.0.3", + "@aws-sdk/core": "3.696.0", + "@aws-sdk/credential-provider-node": "3.699.0", + "@aws-sdk/middleware-host-header": "3.696.0", + "@aws-sdk/middleware-logger": "3.696.0", + "@aws-sdk/middleware-recursion-detection": "3.696.0", + "@aws-sdk/middleware-user-agent": "3.696.0", + "@aws-sdk/region-config-resolver": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-endpoints": "3.696.0", + "@aws-sdk/util-user-agent-browser": "3.696.0", + "@aws-sdk/util-user-agent-node": "3.696.0", + "@smithy/config-resolver": "^3.0.12", + "@smithy/core": "^2.5.3", + "@smithy/fetch-http-handler": "^4.1.1", + "@smithy/hash-node": "^3.0.10", + "@smithy/invalid-dependency": "^3.0.10", + "@smithy/middleware-content-length": "^3.0.12", + "@smithy/middleware-endpoint": "^3.2.3", + "@smithy/middleware-retry": "^3.0.27", + "@smithy/middleware-serde": "^3.0.10", + "@smithy/middleware-stack": "^3.0.10", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/node-http-handler": "^3.3.1", + "@smithy/protocol-http": "^4.1.7", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", + "@smithy/url-parser": "^3.0.10", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.15", - "@smithy/util-defaults-mode-node": "^3.0.15", - "@smithy/util-endpoints": "^2.0.5", - "@smithy/util-middleware": "^3.0.3", - "@smithy/util-retry": "^3.0.3", + "@smithy/util-defaults-mode-browser": "^3.0.27", + "@smithy/util-defaults-mode-node": "^3.0.27", + "@smithy/util-endpoints": "^2.1.6", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-retry": "^3.0.10", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -620,52 +620,52 @@ "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.637.0" + "@aws-sdk/client-sts": "^3.699.0" } }, "node_modules/@aws-sdk/client-sts": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.637.0.tgz", - "integrity": "sha512-xUi7x4qDubtA8QREtlblPuAcn91GS/09YVEY/RwU7xCY0aqGuFwgszAANlha4OUIqva8oVj2WO4gJuG+iaSnhw==", + "version": "3.699.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.699.0.tgz", + "integrity": "sha512-++lsn4x2YXsZPIzFVwv3fSUVM55ZT0WRFmPeNilYIhZClxHLmVAWKH4I55cY9ry60/aTKYjzOXkWwyBKGsGvQg==", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/client-sso-oidc": "3.637.0", - "@aws-sdk/core": "3.635.0", - "@aws-sdk/credential-provider-node": "3.637.0", - "@aws-sdk/middleware-host-header": "3.620.0", - "@aws-sdk/middleware-logger": "3.609.0", - "@aws-sdk/middleware-recursion-detection": "3.620.0", - "@aws-sdk/middleware-user-agent": "3.637.0", - "@aws-sdk/region-config-resolver": "3.614.0", - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-endpoints": "3.637.0", - "@aws-sdk/util-user-agent-browser": "3.609.0", - "@aws-sdk/util-user-agent-node": "3.614.0", - "@smithy/config-resolver": "^3.0.5", - "@smithy/core": "^2.4.0", - "@smithy/fetch-http-handler": "^3.2.4", - "@smithy/hash-node": "^3.0.3", - "@smithy/invalid-dependency": "^3.0.3", - "@smithy/middleware-content-length": "^3.0.5", - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/middleware-retry": "^3.0.15", - "@smithy/middleware-serde": "^3.0.3", - "@smithy/middleware-stack": "^3.0.3", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/node-http-handler": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/url-parser": "^3.0.3", + "@aws-sdk/client-sso-oidc": "3.699.0", + "@aws-sdk/core": "3.696.0", + "@aws-sdk/credential-provider-node": "3.699.0", + "@aws-sdk/middleware-host-header": "3.696.0", + "@aws-sdk/middleware-logger": "3.696.0", + "@aws-sdk/middleware-recursion-detection": "3.696.0", + "@aws-sdk/middleware-user-agent": "3.696.0", + "@aws-sdk/region-config-resolver": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-endpoints": "3.696.0", + "@aws-sdk/util-user-agent-browser": "3.696.0", + "@aws-sdk/util-user-agent-node": "3.696.0", + "@smithy/config-resolver": "^3.0.12", + "@smithy/core": "^2.5.3", + "@smithy/fetch-http-handler": "^4.1.1", + "@smithy/hash-node": "^3.0.10", + "@smithy/invalid-dependency": "^3.0.10", + "@smithy/middleware-content-length": "^3.0.12", + "@smithy/middleware-endpoint": "^3.2.3", + "@smithy/middleware-retry": "^3.0.27", + "@smithy/middleware-serde": "^3.0.10", + "@smithy/middleware-stack": "^3.0.10", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/node-http-handler": "^3.3.1", + "@smithy/protocol-http": "^4.1.7", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", + "@smithy/url-parser": "^3.0.10", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.15", - "@smithy/util-defaults-mode-node": "^3.0.15", - "@smithy/util-endpoints": "^2.0.5", - "@smithy/util-middleware": "^3.0.3", - "@smithy/util-retry": "^3.0.3", + "@smithy/util-defaults-mode-browser": "^3.0.27", + "@smithy/util-defaults-mode-node": "^3.0.27", + "@smithy/util-endpoints": "^2.1.6", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-retry": "^3.0.10", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -674,18 +674,19 @@ } }, "node_modules/@aws-sdk/core": { - "version": "3.635.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.635.0.tgz", - "integrity": "sha512-i1x/E/sgA+liUE1XJ7rj1dhyXpAKO1UKFUcTTHXok2ARjWTvszHnSXMOsB77aPbmn0fUp1JTx2kHUAZ1LVt5Bg==", - "dependencies": { - "@smithy/core": "^2.4.0", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/property-provider": "^3.1.3", - "@smithy/protocol-http": "^4.1.0", - "@smithy/signature-v4": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/util-middleware": "^3.0.3", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.696.0.tgz", + "integrity": "sha512-3c9III1k03DgvRZWg8vhVmfIXPG6hAciN9MzQTzqGngzWAELZF/WONRTRQuDFixVtarQatmLHYVw/atGeA2Byw==", + "dependencies": { + "@aws-sdk/types": "3.696.0", + "@smithy/core": "^2.5.3", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/property-provider": "^3.1.9", + "@smithy/protocol-http": "^4.1.7", + "@smithy/signature-v4": "^4.2.2", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", + "@smithy/util-middleware": "^3.0.10", "fast-xml-parser": "4.4.1", "tslib": "^2.6.2" }, @@ -694,13 +695,14 @@ } }, "node_modules/@aws-sdk/credential-provider-env": { - "version": "3.620.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.620.1.tgz", - "integrity": "sha512-ExuILJ2qLW5ZO+rgkNRj0xiAipKT16Rk77buvPP8csR7kkCflT/gXTyzRe/uzIiETTxM7tr8xuO9MP/DQXqkfg==", - "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.696.0.tgz", + "integrity": "sha512-T9iMFnJL7YTlESLpVFT3fg1Lkb1lD+oiaIC8KMpepb01gDUBIpj9+Y+pA/cgRWW0yRxmkDXNazAE2qQTVFGJzA==", + "dependencies": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/property-provider": "^3.1.9", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -708,18 +710,19 @@ } }, "node_modules/@aws-sdk/credential-provider-http": { - "version": "3.635.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.635.0.tgz", - "integrity": "sha512-iJyRgEjOCQlBMXqtwPLIKYc7Bsc6nqjrZybdMDenPDa+kmLg7xh8LxHsu9088e+2/wtLicE34FsJJIfzu3L82g==", - "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/fetch-http-handler": "^3.2.4", - "@smithy/node-http-handler": "^3.1.4", - "@smithy/property-provider": "^3.1.3", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/util-stream": "^3.1.3", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.696.0.tgz", + "integrity": "sha512-GV6EbvPi2eq1+WgY/o2RFA3P7HGmnkIzCNmhwtALFlqMroLYWKE7PSeHw66Uh1dFQeVESn0/+hiUNhu1mB0emA==", + "dependencies": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/fetch-http-handler": "^4.1.1", + "@smithy/node-http-handler": "^3.3.1", + "@smithy/property-provider": "^3.1.9", + "@smithy/protocol-http": "^4.1.7", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", + "@smithy/util-stream": "^3.3.1", "tslib": "^2.6.2" }, "engines": { @@ -727,45 +730,46 @@ } }, "node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.637.0.tgz", - "integrity": "sha512-h+PFCWfZ0Q3Dx84SppET/TFpcQHmxFW8/oV9ArEvMilw4EBN+IlxgbL0CnHwjHW64szcmrM0mbebjEfHf4FXmw==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.620.1", - "@aws-sdk/credential-provider-http": "3.635.0", - "@aws-sdk/credential-provider-process": "3.620.1", - "@aws-sdk/credential-provider-sso": "3.637.0", - "@aws-sdk/credential-provider-web-identity": "3.621.0", - "@aws-sdk/types": "3.609.0", - "@smithy/credential-provider-imds": "^3.2.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", + "version": "3.699.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.699.0.tgz", + "integrity": "sha512-dXmCqjJnKmG37Q+nLjPVu22mNkrGHY8hYoOt3Jo9R2zr5MYV7s/NHsCHr+7E+BZ+tfZYLRPeB1wkpTeHiEcdRw==", + "dependencies": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/credential-provider-env": "3.696.0", + "@aws-sdk/credential-provider-http": "3.696.0", + "@aws-sdk/credential-provider-process": "3.696.0", + "@aws-sdk/credential-provider-sso": "3.699.0", + "@aws-sdk/credential-provider-web-identity": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/credential-provider-imds": "^3.2.6", + "@smithy/property-provider": "^3.1.9", + "@smithy/shared-ini-file-loader": "^3.1.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.637.0" + "@aws-sdk/client-sts": "^3.699.0" } }, "node_modules/@aws-sdk/credential-provider-node": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.637.0.tgz", - "integrity": "sha512-yoEhoxJJfs7sPVQ6Is939BDQJZpZCoUgKr/ySse4YKOZ24t4VqgHA6+wV7rYh+7IW24Rd91UTvEzSuHYTlxlNA==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.620.1", - "@aws-sdk/credential-provider-http": "3.635.0", - "@aws-sdk/credential-provider-ini": "3.637.0", - "@aws-sdk/credential-provider-process": "3.620.1", - "@aws-sdk/credential-provider-sso": "3.637.0", - "@aws-sdk/credential-provider-web-identity": "3.621.0", - "@aws-sdk/types": "3.609.0", - "@smithy/credential-provider-imds": "^3.2.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", + "version": "3.699.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.699.0.tgz", + "integrity": "sha512-MmEmNDo1bBtTgRmdNfdQksXu4uXe66s0p1hi1YPrn1h59Q605eq/xiWbGL6/3KdkViH6eGUuABeV2ODld86ylg==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.696.0", + "@aws-sdk/credential-provider-http": "3.696.0", + "@aws-sdk/credential-provider-ini": "3.699.0", + "@aws-sdk/credential-provider-process": "3.696.0", + "@aws-sdk/credential-provider-sso": "3.699.0", + "@aws-sdk/credential-provider-web-identity": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/credential-provider-imds": "^3.2.6", + "@smithy/property-provider": "^3.1.9", + "@smithy/shared-ini-file-loader": "^3.1.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -773,14 +777,15 @@ } }, "node_modules/@aws-sdk/credential-provider-process": { - "version": "3.620.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.620.1.tgz", - "integrity": "sha512-hWqFMidqLAkaV9G460+1at6qa9vySbjQKKc04p59OT7lZ5cO5VH5S4aI05e+m4j364MBROjjk2ugNvfNf/8ILg==", - "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.696.0.tgz", + "integrity": "sha512-mL1RcFDe9sfmyU5K1nuFkO8UiJXXxLX4JO1gVaDIOvPqwStpUAwi3A1BoeZhWZZNQsiKI810RnYGo0E0WB/hUA==", + "dependencies": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/property-provider": "^3.1.9", + "@smithy/shared-ini-file-loader": "^3.1.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -788,16 +793,17 @@ } }, "node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.637.0.tgz", - "integrity": "sha512-Mvz+h+e62/tl+dVikLafhv+qkZJ9RUb8l2YN/LeKMWkxQylPT83CPk9aimVhCV89zth1zpREArl97+3xsfgQvA==", - "dependencies": { - "@aws-sdk/client-sso": "3.637.0", - "@aws-sdk/token-providers": "3.614.0", - "@aws-sdk/types": "3.609.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", + "version": "3.699.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.699.0.tgz", + "integrity": "sha512-Ekp2cZG4pl9D8+uKWm4qO1xcm8/MeiI8f+dnlZm8aQzizeC+aXYy9GyoclSf6daK8KfRPiRfM7ZHBBL5dAfdMA==", + "dependencies": { + "@aws-sdk/client-sso": "3.696.0", + "@aws-sdk/core": "3.696.0", + "@aws-sdk/token-providers": "3.699.0", + "@aws-sdk/types": "3.696.0", + "@smithy/property-provider": "^3.1.9", + "@smithy/shared-ini-file-loader": "^3.1.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -805,30 +811,31 @@ } }, "node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.621.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.621.0.tgz", - "integrity": "sha512-w7ASSyfNvcx7+bYGep3VBgC3K6vEdLmlpjT7nSIHxxQf+WSdvy+HynwJosrpZax0sK5q0D1Jpn/5q+r5lwwW6w==", - "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.696.0.tgz", + "integrity": "sha512-XJ/CVlWChM0VCoc259vWguFUjJDn/QwDqHwbx+K9cg3v6yrqXfK5ai+p/6lx0nQpnk4JzPVeYYxWRpaTsGC9rg==", + "dependencies": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/property-provider": "^3.1.9", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.621.0" + "@aws-sdk/client-sts": "^3.696.0" } }, "node_modules/@aws-sdk/lib-storage": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/lib-storage/-/lib-storage-3.637.0.tgz", - "integrity": "sha512-HiNGOP4a1QrCWwO1joKw4mCp19nLXoF9K52PislBaYDI35IlHC3DP6MeOg5zmElwtL1GtEHFBy5olfPWPsLyLg==", + "version": "3.705.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/lib-storage/-/lib-storage-3.705.0.tgz", + "integrity": "sha512-jucPgdO5RCQAki8+CcEi3ZQxBUpq6iVcurtMkLS1xGbe/VOhxzNOt44V/4WqjUu7ra3on8DD0DOqd9523BqOzA==", "dependencies": { - "@smithy/abort-controller": "^3.1.1", - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/smithy-client": "^3.2.0", + "@smithy/abort-controller": "^3.1.7", + "@smithy/middleware-endpoint": "^3.2.3", + "@smithy/smithy-client": "^3.4.4", "buffer": "5.6.0", "events": "3.3.0", "stream-browserify": "3.0.0", @@ -838,19 +845,19 @@ "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-s3": "^3.637.0" + "@aws-sdk/client-s3": "^3.705.0" } }, "node_modules/@aws-sdk/middleware-bucket-endpoint": { - "version": "3.620.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.620.0.tgz", - "integrity": "sha512-eGLL0W6L3HDb3OACyetZYOWpHJ+gLo0TehQKeQyy2G8vTYXqNTeqYhuI6up9HVjBzU9eQiULVQETmgQs7TFaRg==", - "dependencies": { - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-arn-parser": "3.568.0", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.696.0.tgz", + "integrity": "sha512-V07jishKHUS5heRNGFpCWCSTjRJyQLynS/ncUeE8ZYtG66StOOQWftTwDfFOSoXlIqrXgb4oT9atryzXq7Z4LQ==", + "dependencies": { + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-arn-parser": "3.693.0", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "@smithy/util-config-provider": "^3.0.0", "tslib": "^2.6.2" }, @@ -859,13 +866,13 @@ } }, "node_modules/@aws-sdk/middleware-expect-continue": { - "version": "3.620.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.620.0.tgz", - "integrity": "sha512-QXeRFMLfyQ31nAHLbiTLtk0oHzG9QLMaof5jIfqcUwnOkO8YnQdeqzakrg1Alpy/VQ7aqzIi8qypkBe2KXZz0A==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.696.0.tgz", + "integrity": "sha512-vpVukqY3U2pb+ULeX0shs6L0aadNep6kKzjme/MyulPjtUDJpD3AekHsXRrCCGLmOqSKqRgQn5zhV9pQhHsb6Q==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -873,16 +880,21 @@ } }, "node_modules/@aws-sdk/middleware-flexible-checksums": { - "version": "3.620.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.620.0.tgz", - "integrity": "sha512-ftz+NW7qka2sVuwnnO1IzBku5ccP+s5qZGeRTPgrKB7OzRW85gthvIo1vQR2w+OwHFk7WJbbhhWwbCbktnP4UA==", + "version": "3.701.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.701.0.tgz", + "integrity": "sha512-adNaPCyTT+CiVM0ufDiO1Fe7nlRmJdI9Hcgj0M9S6zR7Dw70Ra5z8Lslkd7syAccYvZaqxLklGjPQH/7GNxwTA==", "dependencies": { "@aws-crypto/crc32": "5.2.0", "@aws-crypto/crc32c": "5.2.0", - "@aws-sdk/types": "3.609.0", + "@aws-crypto/util": "5.2.0", + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", "@smithy/is-array-buffer": "^3.0.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-stream": "^3.3.1", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -891,13 +903,13 @@ } }, "node_modules/@aws-sdk/middleware-host-header": { - "version": "3.620.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.620.0.tgz", - "integrity": "sha512-VMtPEZwqYrII/oUkffYsNWY9PZ9xpNJpMgmyU0rlDQ25O1c0Hk3fJmZRe6pEkAJ0omD7kLrqGl1DUjQVxpd/Rg==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.696.0.tgz", + "integrity": "sha512-zELJp9Ta2zkX7ELggMN9qMCgekqZhFC5V2rOr4hJDEb/Tte7gpfKSObAnw/3AYiVqt36sjHKfdkoTsuwGdEoDg==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -905,12 +917,12 @@ } }, "node_modules/@aws-sdk/middleware-location-constraint": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.609.0.tgz", - "integrity": "sha512-xzsdoTkszGVqGVPjUmgoP7TORiByLueMHieI1fhQL888WPdqctwAx3ES6d/bA9Q/i8jnc6hs+Fjhy8UvBTkE9A==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.696.0.tgz", + "integrity": "sha512-FgH12OB0q+DtTrP2aiDBddDKwL4BPOrm7w3VV9BJrSdkqQCNBPz8S1lb0y5eVH4tBG+2j7gKPlOv1wde4jF/iw==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -918,12 +930,12 @@ } }, "node_modules/@aws-sdk/middleware-logger": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.609.0.tgz", - "integrity": "sha512-S62U2dy4jMDhDFDK5gZ4VxFdWzCtLzwbYyFZx2uvPYTECkepLUfzLic2BHg2Qvtu4QjX+oGE3P/7fwaGIsGNuQ==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.696.0.tgz", + "integrity": "sha512-KhkHt+8AjCxcR/5Zp3++YPJPpFQzxpr+jmONiT/Jw2yqnSngZ0Yspm5wGoRx2hS1HJbyZNuaOWEGuJoxLeBKfA==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -931,13 +943,13 @@ } }, "node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.620.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.620.0.tgz", - "integrity": "sha512-nh91S7aGK3e/o1ck64sA/CyoFw+gAYj2BDOnoNa6ouyCrVJED96ZXWbhye/fz9SgmNUZR2g7GdVpiLpMKZoI5w==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.696.0.tgz", + "integrity": "sha512-si/maV3Z0hH7qa99f9ru2xpS5HlfSVcasRlNUXKSDm611i7jFMWwGNLUOXFAOLhXotPX5G3Z6BLwL34oDeBMug==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -945,22 +957,22 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3": { - "version": "3.635.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.635.0.tgz", - "integrity": "sha512-RLdYJPEV4JL/7NBoFUs7VlP90X++5FlJdxHz0DzCjmiD3qCviKy+Cym3qg1gBgHwucs5XisuClxDrGokhAdTQw==", - "dependencies": { - "@aws-sdk/core": "3.635.0", - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-arn-parser": "3.568.0", - "@smithy/core": "^2.4.0", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/signature-v4": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.696.0.tgz", + "integrity": "sha512-M7fEiAiN7DBMHflzOFzh1I2MNSlLpbiH2ubs87bdRc2wZsDPSbs4l3v6h3WLhxoQK0bq6vcfroudrLBgvCuX3Q==", + "dependencies": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-arn-parser": "3.693.0", + "@smithy/core": "^2.5.3", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/protocol-http": "^4.1.7", + "@smithy/signature-v4": "^4.2.2", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.3", - "@smithy/util-stream": "^3.1.3", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-stream": "^3.3.1", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -969,12 +981,12 @@ } }, "node_modules/@aws-sdk/middleware-ssec": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.609.0.tgz", - "integrity": "sha512-GZSD1s7+JswWOTamVap79QiDaIV7byJFssBW68GYjyRS5EBjNfwA/8s+6uE6g39R3ojyTbYOmvcANoZEhSULXg==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.696.0.tgz", + "integrity": "sha512-w/d6O7AOZ7Pg3w2d3BxnX5RmGNWb5X4RNxF19rJqcgu/xqxxE/QwZTNd5a7eTsqLXAUIfbbR8hh0czVfC1pJLA==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -982,14 +994,16 @@ } }, "node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.637.0.tgz", - "integrity": "sha512-EYo0NE9/da/OY8STDsK2LvM4kNa79DBsf4YVtaG4P5pZ615IeFsD8xOHZeuJmUrSMlVQ8ywPRX7WMucUybsKug==", - "dependencies": { - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-endpoints": "3.637.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.696.0.tgz", + "integrity": "sha512-Lvyj8CTyxrHI6GHd2YVZKIRI5Fmnugt3cpJo0VrKKEgK5zMySwEZ1n4dqPK6czYRWKd5+WnYHYAuU+Wdk6Jsjw==", + "dependencies": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-endpoints": "3.696.0", + "@smithy/core": "^2.5.3", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -997,15 +1011,15 @@ } }, "node_modules/@aws-sdk/region-config-resolver": { - "version": "3.614.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.614.0.tgz", - "integrity": "sha512-vDCeMXvic/LU0KFIUjpC3RiSTIkkvESsEfbVHiHH0YINfl8HnEqR5rj+L8+phsCeVg2+LmYwYxd5NRz4PHxt5g==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.696.0.tgz", + "integrity": "sha512-7EuH142lBXjI8yH6dVS/CZeiK/WZsmb/8zP6bQbVYpMrppSTgB3MzZZdxVZGzL5r8zPQOU10wLC4kIMy0qdBVQ==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/types": "^3.7.1", "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.3", + "@smithy/util-middleware": "^3.0.10", "tslib": "^2.6.2" }, "engines": { @@ -1013,17 +1027,17 @@ } }, "node_modules/@aws-sdk/s3-request-presigner": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.637.0.tgz", - "integrity": "sha512-URRiEDZEICyfAXmXcXREQCsvZrapITAymvg46p1Xjnuv7PTnUB0SF18B2omPL0E5d/X+T3O9NKdtot+BqJbIWw==", - "dependencies": { - "@aws-sdk/signature-v4-multi-region": "3.635.0", - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-format-url": "3.609.0", - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", + "version": "3.705.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.705.0.tgz", + "integrity": "sha512-dAQiXv/TqjEUCoEeiKqQGI8LJ3g8Xv+XJL4W9CwsB6ZHHDq0Q05ulpDSkhhCf52ySXf5dJ33e1o/VeUDY3q0pw==", + "dependencies": { + "@aws-sdk/signature-v4-multi-region": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-format-url": "3.696.0", + "@smithy/middleware-endpoint": "^3.2.3", + "@smithy/protocol-http": "^4.1.7", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -1031,15 +1045,15 @@ } }, "node_modules/@aws-sdk/signature-v4-multi-region": { - "version": "3.635.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.635.0.tgz", - "integrity": "sha512-J6QY4/invOkpogCHjSaDON1hF03viPpOnsrzVuCvJMmclS/iG62R4EY0wq1alYll0YmSdmKlpJwHMWwGtqK63Q==", - "dependencies": { - "@aws-sdk/middleware-sdk-s3": "3.635.0", - "@aws-sdk/types": "3.609.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/signature-v4": "^4.1.0", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.696.0.tgz", + "integrity": "sha512-ijPkoLjXuPtgxAYlDoYls8UaG/VKigROn9ebbvPL/orEY5umedd3iZTcS9T+uAf4Ur3GELLxMQiERZpfDKaz3g==", + "dependencies": { + "@aws-sdk/middleware-sdk-s3": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/signature-v4": "^4.2.2", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -1047,29 +1061,29 @@ } }, "node_modules/@aws-sdk/token-providers": { - "version": "3.614.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.614.0.tgz", - "integrity": "sha512-okItqyY6L9IHdxqs+Z116y5/nda7rHxLvROxtAJdLavWTYDydxrZstImNgGWTeVdmc0xX2gJCI77UYUTQWnhRw==", - "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", + "version": "3.699.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.699.0.tgz", + "integrity": "sha512-kuiEW9DWs7fNos/SM+y58HCPhcIzm1nEZLhe2/7/6+TvAYLuEWURYsbK48gzsxXlaJ2k/jGY3nIsA7RptbMOwA==", + "dependencies": { + "@aws-sdk/types": "3.696.0", + "@smithy/property-provider": "^3.1.9", + "@smithy/shared-ini-file-loader": "^3.1.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sso-oidc": "^3.614.0" + "@aws-sdk/client-sso-oidc": "^3.699.0" } }, "node_modules/@aws-sdk/types": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz", - "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.696.0.tgz", + "integrity": "sha512-9rTvUJIAj5d3//U5FDPWGJ1nFJLuWb30vugGOrWk7aNZ6y9tuA3PI7Cc9dP8WEXKVyK1vuuk8rSFP2iqXnlgrw==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -1077,9 +1091,9 @@ } }, "node_modules/@aws-sdk/util-arn-parser": { - "version": "3.568.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.568.0.tgz", - "integrity": "sha512-XUKJWWo+KOB7fbnPP0+g/o5Ulku/X53t7i/h+sPHr5xxYTJJ9CYnbToo95mzxe7xWvkLrsNtJ8L+MnNn9INs2w==", + "version": "3.693.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.693.0.tgz", + "integrity": "sha512-WC8x6ca+NRrtpAH64rWu+ryDZI3HuLwlEr8EU6/dbC/pt+r/zC0PBoC15VEygUaBA+isppCikQpGyEDu0Yj7gQ==", "dependencies": { "tslib": "^2.6.2" }, @@ -1088,13 +1102,13 @@ } }, "node_modules/@aws-sdk/util-endpoints": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.637.0.tgz", - "integrity": "sha512-pAqOKUHeVWHEXXDIp/qoMk/6jyxIb6GGjnK1/f8dKHtKIEs4tKsnnL563gceEvdad53OPXIt86uoevCcCzmBnw==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.696.0.tgz", + "integrity": "sha512-T5s0IlBVX+gkb9g/I6CLt4yAZVzMSiGnbUqWihWsHvQR1WOoIcndQy/Oz/IJXT9T2ipoy7a80gzV6a5mglrioA==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/types": "^3.3.0", - "@smithy/util-endpoints": "^2.0.5", + "@aws-sdk/types": "3.696.0", + "@smithy/types": "^3.7.1", + "@smithy/util-endpoints": "^2.1.6", "tslib": "^2.6.2" }, "engines": { @@ -1102,13 +1116,13 @@ } }, "node_modules/@aws-sdk/util-format-url": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.609.0.tgz", - "integrity": "sha512-fuk29BI/oLQlJ7pfm6iJ4gkEpHdavffAALZwXh9eaY1vQ0ip0aKfRTiNudPoJjyyahnz5yJ1HkmlcDitlzsOrQ==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.696.0.tgz", + "integrity": "sha512-R6yK1LozUD1GdAZRPhNsIow6VNFJUTyyoIar1OCWaknlucBMcq7musF3DN3TlORBwfFMj5buHc2ET9OtMtzvuA==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/querystring-builder": "^3.0.3", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/querystring-builder": "^3.0.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -1127,24 +1141,25 @@ } }, "node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.609.0.tgz", - "integrity": "sha512-fojPU+mNahzQ0YHYBsx0ZIhmMA96H+ZIZ665ObU9tl+SGdbLneVZVikGve+NmHTQwHzwkFsZYYnVKAkreJLAtA==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.696.0.tgz", + "integrity": "sha512-Z5rVNDdmPOe6ELoM5AhF/ja5tSjbe6ctSctDPb0JdDf4dT0v2MfwhJKzXju2RzX8Es/77Glh7MlaXLE0kCB9+Q==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/types": "^3.7.1", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.614.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.614.0.tgz", - "integrity": "sha512-15ElZT88peoHnq5TEoEtZwoXTXRxNrk60TZNdpl/TUBJ5oNJ9Dqb5Z4ryb8ofN6nm9aFf59GVAerFDz8iUoHBA==", - "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.696.0.tgz", + "integrity": "sha512-KhKqcfyXIB0SCCt+qsu4eJjsfiOrNzK5dCV7RAW2YIpp+msxGUUX0NdRE9rkzjiv+3EMktgJm3eEIS+yxtlVdQ==", + "dependencies": { + "@aws-sdk/middleware-user-agent": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -1160,11 +1175,11 @@ } }, "node_modules/@aws-sdk/xml-builder": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.609.0.tgz", - "integrity": "sha512-l9XxNcA4HX98rwCC2/KoiWcmEiRfZe4G+mYwDbCFT87JIMj6GBhLDkAzr/W8KAaA2IDr8Vc6J8fZPgVulxxfMA==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.696.0.tgz", + "integrity": "sha512-dn1mX+EeqivoLYnY7p2qLrir0waPnCgS/0YdRCAVU2x14FgfUYCH6Im3w3oi2dMwhxfKY5lYVB5NKvZu7uI9lQ==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -2309,9 +2324,9 @@ } }, "node_modules/@golevelup/ts-jest": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/@golevelup/ts-jest/-/ts-jest-0.5.4.tgz", - "integrity": "sha512-2djwElTE0dMyjK6uYk7YqGs5BoA++O+bqhzDVsWHXrUD9XlOj3Ig0JeyILC8P7eBvSbWPaA61xaJX4doDvi4oQ==", + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/@golevelup/ts-jest/-/ts-jest-0.6.1.tgz", + "integrity": "sha512-ubs2xao8q2BsFWD6g2GnkWLLIeVHsPQKYMihzk3v0ptegKJhlNRZvk8wodDx2U2MI7cyKh43mueafZ9xpYdwHQ==", "dev": true }, "node_modules/@humanwhocodes/config-array": { @@ -2987,9 +3002,9 @@ "integrity": "sha512-HZpPoABogPvjeJOdzCOSJsXeL/SMCBgBZMVC3X3d7YYp2gf31MfxhUoYUNwf1ERPJOnQc0wkFn9trqI6ZEdZuA==" }, "node_modules/@nestjs/axios": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@nestjs/axios/-/axios-3.0.3.tgz", - "integrity": "sha512-h6TCn3yJwD6OKqqqfmtRS5Zo4E46Ip2n+gK1sqwzNBC+qxQ9xpCu+ODVRFur6V3alHSCSBxb3nNtt73VEdluyA==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@nestjs/axios/-/axios-3.1.3.tgz", + "integrity": "sha512-RZ/63c1tMxGLqyG3iOCVt7A72oy4x1eM6QEhd4KzCYpaVWW0igq0WSREeRoEZhIxRcZfDfIIkvsOMiM7yfVGZQ==", "peerDependencies": { "@nestjs/common": "^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0", "axios": "^1.3.1", @@ -2997,10 +3012,9 @@ } }, "node_modules/@nestjs/cache-manager": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@nestjs/cache-manager/-/cache-manager-2.2.2.tgz", - "integrity": "sha512-+n7rpU1QABeW2WV17Dl1vZCG3vWjJU1MaamWgZvbGxYE9EeCM0lVLfw3z7acgDTNwOy+K68xuQPoIMxD0bhjlA==", - "license": "MIT", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@nestjs/cache-manager/-/cache-manager-2.3.0.tgz", + "integrity": "sha512-pxeBp9w/s99HaW2+pezM1P3fLiWmUEnTUoUMLa9UYViCtjj0E0A19W/vaT5JFACCzFIeNrwH4/16jkpAhQ25Vw==", "peerDependencies": { "@nestjs/common": "^9.0.0 || ^10.0.0", "@nestjs/core": "^9.0.0 || ^10.0.0", @@ -3009,28 +3023,28 @@ } }, "node_modules/@nestjs/cli": { - "version": "10.4.4", - "resolved": "https://registry.npmjs.org/@nestjs/cli/-/cli-10.4.4.tgz", - "integrity": "sha512-WKERbSZJGof0+9XeeMmWnb/9FpNxogcB5eTJTHjc9no0ymdTw3jTzT+KZL9iC/hGqBpuomDLaNFCYbAOt29nBw==", + "version": "10.4.9", + "resolved": "https://registry.npmjs.org/@nestjs/cli/-/cli-10.4.9.tgz", + "integrity": "sha512-s8qYd97bggqeK7Op3iD49X2MpFtW4LVNLAwXFkfbRxKME6IYT7X0muNTJ2+QfI8hpbNx9isWkrLWIp+g5FOhiA==", "dependencies": { - "@angular-devkit/core": "17.3.8", - "@angular-devkit/schematics": "17.3.8", - "@angular-devkit/schematics-cli": "17.3.8", + "@angular-devkit/core": "17.3.11", + "@angular-devkit/schematics": "17.3.11", + "@angular-devkit/schematics-cli": "17.3.11", "@nestjs/schematics": "^10.0.1", "chalk": "4.1.2", "chokidar": "3.6.0", "cli-table3": "0.6.5", "commander": "4.1.1", "fork-ts-checker-webpack-plugin": "9.0.2", - "glob": "10.4.2", + "glob": "10.4.5", "inquirer": "8.2.6", "node-emoji": "1.11.0", "ora": "5.4.1", "tree-kill": "1.2.2", "tsconfig-paths": "4.2.0", - "tsconfig-paths-webpack-plugin": "4.1.0", - "typescript": "5.3.3", - "webpack": "5.93.0", + "tsconfig-paths-webpack-plugin": "4.2.0", + "typescript": "5.7.2", + "webpack": "5.97.1", "webpack-node-externals": "3.0.0" }, "bin": { @@ -3040,7 +3054,7 @@ "node": ">= 16.14" }, "peerDependencies": { - "@swc/cli": "^0.1.62 || ^0.3.0 || ^0.4.0", + "@swc/cli": "^0.1.62 || ^0.3.0 || ^0.4.0 || ^0.5.0", "@swc/core": "^1.3.62" }, "peerDependenciesMeta": { @@ -3052,26 +3066,13 @@ } } }, - "node_modules/@nestjs/cli/node_modules/typescript": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", - "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, "node_modules/@nestjs/common": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/common/-/common-10.4.1.tgz", - "integrity": "sha512-4CkrDx0s4XuWqFjX8WvOFV7Y6RGJd0P2OBblkhZS7nwoctoSuW5pyEa8SWak6YHNGrHRpFb6ymm5Ai4LncwRVA==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/common/-/common-10.4.15.tgz", + "integrity": "sha512-vaLg1ZgwhG29BuLDxPA9OAcIlgqzp9/N8iG0wGapyUNTf4IY4O6zAHgN6QalwLhFxq7nOI021vdRojR1oF3bqg==", "dependencies": { "iterare": "1.2.1", - "tslib": "2.6.3", + "tslib": "2.8.1", "uid": "2.0.2" }, "funding": { @@ -3094,9 +3095,9 @@ } }, "node_modules/@nestjs/config": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@nestjs/config/-/config-3.2.3.tgz", - "integrity": "sha512-p6yv/CvoBewJ72mBq4NXgOAi2rSQNWx3a+IMJLVKS2uiwFCOQQuiIatGwq6MRjXV3Jr+B41iUO8FIf4xBrZ4/w==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@nestjs/config/-/config-3.3.0.tgz", + "integrity": "sha512-pdGTp8m9d0ZCrjTpjkUbZx6gyf2IKf+7zlkrPNMsJzYZ4bFRRTpXrnj+556/5uiI6AfL5mMrJc2u7dB6bvM+VA==", "dependencies": { "dotenv": "16.4.5", "dotenv-expand": "10.0.0", @@ -3107,17 +3108,28 @@ "rxjs": "^7.1.0" } }, + "node_modules/@nestjs/config/node_modules/dotenv": { + "version": "16.4.5", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", + "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, "node_modules/@nestjs/core": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/core/-/core-10.4.1.tgz", - "integrity": "sha512-9I1WdfOBCCHdUm+ClBJupOuZQS6UxzIWHIq6Vp1brAA5ZKl/Wq6BVwSsbnUJGBy3J3PM2XHmR0EQ4fwX3nR7lA==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/core/-/core-10.4.15.tgz", + "integrity": "sha512-UBejmdiYwaH6fTsz2QFBlC1cJHM+3UDeLZN+CiP9I1fRv2KlBZsmozGLbV5eS1JAVWJB4T5N5yQ0gjN8ZvcS2w==", "hasInstallScript": true, "dependencies": { "@nuxtjs/opencollective": "0.3.2", "fast-safe-stringify": "2.1.1", "iterare": "1.2.1", - "path-to-regexp": "3.2.0", - "tslib": "2.6.3", + "path-to-regexp": "3.3.0", + "tslib": "2.8.1", "uid": "2.0.2" }, "funding": { @@ -3175,15 +3187,15 @@ } }, "node_modules/@nestjs/platform-express": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/platform-express/-/platform-express-10.4.1.tgz", - "integrity": "sha512-ccfqIDAq/bg1ShLI5KGtaLaYGykuAdvCi57ohewH7eKJSIpWY1DQjbgKlFfXokALYUq1YOMGqjeZ244OWHfDQg==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/platform-express/-/platform-express-10.4.15.tgz", + "integrity": "sha512-63ZZPkXHjoDyO7ahGOVcybZCRa7/Scp6mObQKjcX/fTEq1YJeU75ELvMsuQgc8U2opMGOBD7GVuc4DV0oeDHoA==", "dependencies": { - "body-parser": "1.20.2", + "body-parser": "1.20.3", "cors": "2.8.5", - "express": "4.19.2", + "express": "4.21.2", "multer": "1.4.4-lts.1", - "tslib": "2.6.3" + "tslib": "2.8.1" }, "funding": { "type": "opencollective", @@ -3195,13 +3207,13 @@ } }, "node_modules/@nestjs/schematics": { - "version": "10.1.4", - "resolved": "https://registry.npmjs.org/@nestjs/schematics/-/schematics-10.1.4.tgz", - "integrity": "sha512-QpY8ez9cTvXXPr3/KBrtSgXQHMSV6BkOUYy2c2TTe6cBqriEdGnCYqGl8cnfrQl3632q3lveQPaZ/c127dHsEw==", + "version": "10.2.3", + "resolved": "https://registry.npmjs.org/@nestjs/schematics/-/schematics-10.2.3.tgz", + "integrity": "sha512-4e8gxaCk7DhBxVUly2PjYL4xC2ifDFexCqq1/u4TtivLGXotVk0wHdYuPYe1tHTHuR1lsOkRbfOCpkdTnigLVg==", "dependencies": { - "@angular-devkit/core": "17.3.8", - "@angular-devkit/schematics": "17.3.8", - "comment-json": "4.2.3", + "@angular-devkit/core": "17.3.11", + "@angular-devkit/schematics": "17.3.11", + "comment-json": "4.2.5", "jsonc-parser": "3.3.1", "pluralize": "8.0.0" }, @@ -3215,15 +3227,15 @@ "integrity": "sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==" }, "node_modules/@nestjs/swagger": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@nestjs/swagger/-/swagger-7.4.0.tgz", - "integrity": "sha512-dCiwKkRxcR7dZs5jtrGspBAe/nqJd1AYzOBTzw9iCdbq3BGrLpwokelk6lFZPe4twpTsPQqzNKBwKzVbI6AR/g==", + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/@nestjs/swagger/-/swagger-7.4.2.tgz", + "integrity": "sha512-Mu6TEn1M/owIvAx2B4DUQObQXqo2028R2s9rSZ/hJEgBK95+doTwS0DjmVA2wTeZTyVtXOoN7CsoM5pONBzvKQ==", "dependencies": { "@microsoft/tsdoc": "^0.15.0", "@nestjs/mapped-types": "2.0.5", "js-yaml": "4.1.0", "lodash": "4.17.21", - "path-to-regexp": "3.2.0", + "path-to-regexp": "3.3.0", "swagger-ui-dist": "5.17.14" }, "peerDependencies": { @@ -3247,11 +3259,11 @@ } }, "node_modules/@nestjs/testing": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/testing/-/testing-10.4.1.tgz", - "integrity": "sha512-pR+su5+YGqCLH0RhhVkPowQK7FCORU0/PWAywPK7LScAOtD67ZoviZ7hAU4vnGdwkg4HCB0D7W8Bkg19CGU8Xw==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/testing/-/testing-10.4.15.tgz", + "integrity": "sha512-eGlWESkACMKti+iZk1hs6FUY/UqObmMaa8HAN9JLnaYkoLf1Jeh+EuHlGnfqo/Rq77oznNLIyaA3PFjrFDlNUg==", "dependencies": { - "tslib": "2.6.3" + "tslib": "2.8.1" }, "funding": { "type": "opencollective", @@ -3433,6 +3445,12 @@ "node": ">=10" } }, + "node_modules/@rtsao/scc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", + "dev": true + }, "node_modules/@sinclair/typebox": { "version": "0.27.8", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", @@ -3461,11 +3479,11 @@ } }, "node_modules/@smithy/abort-controller": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.1.1.tgz", - "integrity": "sha512-MBJBiidoe+0cTFhyxT8g+9g7CeVccLM0IOKKUMCNQ1CNMJ/eIfoo0RTfVrXOONEI1UCN1W+zkiHSbzUNE9dZtQ==", + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.1.8.tgz", + "integrity": "sha512-+3DOBcUn5/rVjlxGvUPKc416SExarAQ+Qe0bqk30YSUjbepwpS7QN0cyKUSifvLJhdMZ0WPzPP5ymut0oonrpQ==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3473,31 +3491,31 @@ } }, "node_modules/@smithy/chunked-blob-reader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-3.0.0.tgz", - "integrity": "sha512-sbnURCwjF0gSToGlsBiAmd1lRCmSn72nu9axfJu5lIx6RUEgHu6GwTMbqCdhQSi0Pumcm5vFxsi9XWXb2mTaoA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-4.0.0.tgz", + "integrity": "sha512-jSqRnZvkT4egkq/7b6/QRCNXmmYVcHwnJldqJ3IhVpQE2atObVJ137xmGeuGFhjFUr8gCEVAOKwSY79OvpbDaQ==", "dependencies": { "tslib": "^2.6.2" } }, "node_modules/@smithy/chunked-blob-reader-native": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-3.0.0.tgz", - "integrity": "sha512-VDkpCYW+peSuM4zJip5WDfqvg2Mo/e8yxOv3VF1m11y7B8KKMKVFtmZWDe36Fvk8rGuWrPZHHXZ7rR7uM5yWyg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-3.0.1.tgz", + "integrity": "sha512-VEYtPvh5rs/xlyqpm5NRnfYLZn+q0SRPELbvBV+C/G7IQ+ouTuo+NKKa3ShG5OaFR8NYVMXls9hPYLTvIKKDrQ==", "dependencies": { "@smithy/util-base64": "^3.0.0", "tslib": "^2.6.2" } }, "node_modules/@smithy/config-resolver": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.5.tgz", - "integrity": "sha512-SkW5LxfkSI1bUC74OtfBbdz+grQXYiPYolyu8VfpLIjEoN/sHVBlLeGXMQ1vX4ejkgfv6sxVbQJ32yF2cl1veA==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.12.tgz", + "integrity": "sha512-YAJP9UJFZRZ8N+UruTeq78zkdjUHmzsY62J4qKWZ4SXB4QXJ/+680EfXXgkYA2xj77ooMqtUY9m406zGNqwivQ==", "dependencies": { - "@smithy/node-config-provider": "^3.1.4", - "@smithy/types": "^3.3.0", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/types": "^3.7.1", "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.3", + "@smithy/util-middleware": "^3.0.10", "tslib": "^2.6.2" }, "engines": { @@ -3505,18 +3523,16 @@ } }, "node_modules/@smithy/core": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.4.0.tgz", - "integrity": "sha512-cHXq+FneIF/KJbt4q4pjN186+Jf4ZB0ZOqEaZMBhT79srEyGDDBV31NqBRBjazz8ppQ1bJbDJMY9ba5wKFV36w==", - "dependencies": { - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/middleware-retry": "^3.0.15", - "@smithy/middleware-serde": "^3.0.3", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.5.4.tgz", + "integrity": "sha512-iFh2Ymn2sCziBRLPuOOxRPkuCx/2gBdXtBGuCUFLUe6bWYjKnhHyIPqGeNkLZ5Aco/5GjebRTBFiWID3sDbrKw==", + "dependencies": { + "@smithy/middleware-serde": "^3.0.10", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "@smithy/util-body-length-browser": "^3.0.0", - "@smithy/util-middleware": "^3.0.3", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-stream": "^3.3.1", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -3525,14 +3541,14 @@ } }, "node_modules/@smithy/credential-provider-imds": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.2.0.tgz", - "integrity": "sha512-0SCIzgd8LYZ9EJxUjLXBmEKSZR/P/w6l7Rz/pab9culE/RWuqelAKGJvn5qUOl8BgX8Yj5HWM50A5hiB/RzsgA==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.2.7.tgz", + "integrity": "sha512-cEfbau+rrWF8ylkmmVAObOmjbTIzKyUC5TkBL58SbLywD0RCBC4JAUKbmtSm2w5KUJNRPGgpGFMvE2FKnuNlWQ==", "dependencies": { - "@smithy/node-config-provider": "^3.1.4", - "@smithy/property-provider": "^3.1.3", - "@smithy/types": "^3.3.0", - "@smithy/url-parser": "^3.0.3", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/property-provider": "^3.1.10", + "@smithy/types": "^3.7.1", + "@smithy/url-parser": "^3.0.10", "tslib": "^2.6.2" }, "engines": { @@ -3540,23 +3556,23 @@ } }, "node_modules/@smithy/eventstream-codec": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-3.1.2.tgz", - "integrity": "sha512-0mBcu49JWt4MXhrhRAlxASNy0IjDRFU+aWNDRal9OtUJvJNiwDuyKMUONSOjLjSCeGwZaE0wOErdqULer8r7yw==", + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-3.1.9.tgz", + "integrity": "sha512-F574nX0hhlNOjBnP+noLtsPFqXnWh2L0+nZKCwcu7P7J8k+k+rdIDs+RMnrMwrzhUE4mwMgyN0cYnEn0G8yrnQ==", "dependencies": { "@aws-crypto/crc32": "5.2.0", - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "@smithy/util-hex-encoding": "^3.0.0", "tslib": "^2.6.2" } }, "node_modules/@smithy/eventstream-serde-browser": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-3.0.6.tgz", - "integrity": "sha512-2hM54UWQUOrki4BtsUI1WzmD13/SeaqT/AB3EUJKbcver/WgKNaiJ5y5F5XXuVe6UekffVzuUDrBZVAA3AWRpQ==", + "version": "3.0.13", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-3.0.13.tgz", + "integrity": "sha512-Nee9m+97o9Qj6/XeLz2g2vANS2SZgAxV4rDBMKGHvFJHU/xz88x2RwCkwsvEwYjSX4BV1NG1JXmxEaDUzZTAtw==", "dependencies": { - "@smithy/eventstream-serde-universal": "^3.0.5", - "@smithy/types": "^3.3.0", + "@smithy/eventstream-serde-universal": "^3.0.12", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3564,11 +3580,11 @@ } }, "node_modules/@smithy/eventstream-serde-config-resolver": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.0.3.tgz", - "integrity": "sha512-NVTYjOuYpGfrN/VbRQgn31x73KDLfCXCsFdad8DiIc3IcdxL+dYA9zEQPyOP7Fy2QL8CPy2WE4WCUD+ZsLNfaQ==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.0.10.tgz", + "integrity": "sha512-K1M0x7P7qbBUKB0UWIL5KOcyi6zqV5mPJoL0/o01HPJr0CSq3A9FYuJC6e11EX6hR8QTIR++DBiGrYveOu6trw==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3576,12 +3592,12 @@ } }, "node_modules/@smithy/eventstream-serde-node": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-3.0.5.tgz", - "integrity": "sha512-+upXvnHNyZP095s11jF5dhGw/Ihzqwl5G+/KtMnoQOpdfC3B5HYCcDVG9EmgkhJMXJlM64PyN5gjJl0uXFQehQ==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-3.0.12.tgz", + "integrity": "sha512-kiZymxXvZ4tnuYsPSMUHe+MMfc4FTeFWJIc0Q5wygJoUQM4rVHNghvd48y7ppuulNMbuYt95ah71pYc2+o4JOA==", "dependencies": { - "@smithy/eventstream-serde-universal": "^3.0.5", - "@smithy/types": "^3.3.0", + "@smithy/eventstream-serde-universal": "^3.0.12", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3589,12 +3605,12 @@ } }, "node_modules/@smithy/eventstream-serde-universal": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-3.0.5.tgz", - "integrity": "sha512-5u/nXbyoh1s4QxrvNre9V6vfyoLWuiVvvd5TlZjGThIikc3G+uNiG9uOTCWweSRjv1asdDIWK7nOmN7le4RYHQ==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-3.0.12.tgz", + "integrity": "sha512-1i8ifhLJrOZ+pEifTlF0EfZzMLUGQggYQ6WmZ4d5g77zEKf7oZ0kvh1yKWHPjofvOwqrkwRDVuxuYC8wVd662A==", "dependencies": { - "@smithy/eventstream-codec": "^3.1.2", - "@smithy/types": "^3.3.0", + "@smithy/eventstream-codec": "^3.1.9", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3602,34 +3618,34 @@ } }, "node_modules/@smithy/fetch-http-handler": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.2.4.tgz", - "integrity": "sha512-kBprh5Gs5h7ug4nBWZi1FZthdqSM+T7zMmsZxx0IBvWUn7dK3diz2SHn7Bs4dQGFDk8plDv375gzenDoNwrXjg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-4.1.1.tgz", + "integrity": "sha512-bH7QW0+JdX0bPBadXt8GwMof/jz0H28I84hU1Uet9ISpzUqXqRQ3fEZJ+ANPOhzSEczYvANNl3uDQDYArSFDtA==", "dependencies": { - "@smithy/protocol-http": "^4.1.0", - "@smithy/querystring-builder": "^3.0.3", - "@smithy/types": "^3.3.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/querystring-builder": "^3.0.10", + "@smithy/types": "^3.7.1", "@smithy/util-base64": "^3.0.0", "tslib": "^2.6.2" } }, "node_modules/@smithy/hash-blob-browser": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-3.1.2.tgz", - "integrity": "sha512-hAbfqN2UbISltakCC2TP0kx4LqXBttEv2MqSPE98gVuDFMf05lU+TpC41QtqGP3Ff5A3GwZMPfKnEy0VmEUpmg==", + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-3.1.9.tgz", + "integrity": "sha512-wOu78omaUuW5DE+PVWXiRKWRZLecARyP3xcq5SmkXUw9+utgN8HnSnBfrjL2B/4ZxgqPjaAJQkC/+JHf1ITVaQ==", "dependencies": { - "@smithy/chunked-blob-reader": "^3.0.0", - "@smithy/chunked-blob-reader-native": "^3.0.0", - "@smithy/types": "^3.3.0", + "@smithy/chunked-blob-reader": "^4.0.0", + "@smithy/chunked-blob-reader-native": "^3.0.1", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "node_modules/@smithy/hash-node": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.3.tgz", - "integrity": "sha512-2ctBXpPMG+B3BtWSGNnKELJ7SH9e4TNefJS0cd2eSkOOROeBnnVBnAy9LtJ8tY4vUEoe55N4CNPxzbWvR39iBw==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.10.tgz", + "integrity": "sha512-3zWGWCHI+FlJ5WJwx73Mw2llYR8aflVyZN5JhoqLxbdPZi6UyKSdCeXAWJw9ja22m6S6Tzz1KZ+kAaSwvydi0g==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "@smithy/util-buffer-from": "^3.0.0", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" @@ -3639,11 +3655,11 @@ } }, "node_modules/@smithy/hash-stream-node": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-3.1.2.tgz", - "integrity": "sha512-PBgDMeEdDzi6JxKwbfBtwQG9eT9cVwsf0dZzLXoJF4sHKHs5HEo/3lJWpn6jibfJwT34I1EBXpBnZE8AxAft6g==", + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-3.1.9.tgz", + "integrity": "sha512-3XfHBjSP3oDWxLmlxnt+F+FqXpL3WlXs+XXaB6bV9Wo8BBu87fK1dSEsyH7Z4ZHRmwZ4g9lFMdf08m9hoX1iRA==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -3652,11 +3668,11 @@ } }, "node_modules/@smithy/invalid-dependency": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.3.tgz", - "integrity": "sha512-ID1eL/zpDULmHJbflb864k72/SNOZCADRc9i7Exq3RUNJw6raWUSlFEQ+3PX3EYs++bTxZB2dE9mEHTQLv61tw==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.10.tgz", + "integrity": "sha512-Lp2L65vFi+cj0vFMu2obpPW69DU+6O5g3086lmI4XcnRCG8PxvpWC7XyaVwJCxsZFzueHjXnrOH/E0pl0zikfA==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, @@ -3673,22 +3689,22 @@ } }, "node_modules/@smithy/md5-js": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-3.0.3.tgz", - "integrity": "sha512-O/SAkGVwpWmelpj/8yDtsaVe6sINHLB1q8YE/+ZQbDxIw3SRLbTZuRaI10K12sVoENdnHqzPp5i3/H+BcZ3m3Q==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-3.0.10.tgz", + "integrity": "sha512-m3bv6dApflt3fS2Y1PyWPUtRP7iuBlvikEOGwu0HsCZ0vE7zcIX+dBoh3e+31/rddagw8nj92j0kJg2TfV+SJA==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" } }, "node_modules/@smithy/middleware-content-length": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.5.tgz", - "integrity": "sha512-ILEzC2eyxx6ncej3zZSwMpB5RJ0zuqH7eMptxC4KN3f+v9bqT8ohssKbhNR78k/2tWW+KS5Spw+tbPF4Ejyqvw==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.12.tgz", + "integrity": "sha512-1mDEXqzM20yywaMDuf5o9ue8OkJ373lSPbaSjyEvkWdqELhFMyNNgKGWL/rCSf4KME8B+HlHKuR8u9kRj8HzEQ==", "dependencies": { - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3696,16 +3712,17 @@ } }, "node_modules/@smithy/middleware-endpoint": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.1.0.tgz", - "integrity": "sha512-5y5aiKCEwg9TDPB4yFE7H6tYvGFf1OJHNczeY10/EFF8Ir8jZbNntQJxMWNfeQjC1mxPsaQ6mR9cvQbf+0YeMw==", - "dependencies": { - "@smithy/middleware-serde": "^3.0.3", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", - "@smithy/url-parser": "^3.0.3", - "@smithy/util-middleware": "^3.0.3", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.2.4.tgz", + "integrity": "sha512-TybiW2LA3kYVd3e+lWhINVu1o26KJbBwOpADnf0L4x/35vLVica77XVR5hvV9+kWeTGeSJ3IHTcYxbRxlbwhsg==", + "dependencies": { + "@smithy/core": "^2.5.4", + "@smithy/middleware-serde": "^3.0.10", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/shared-ini-file-loader": "^3.1.11", + "@smithy/types": "^3.7.1", + "@smithy/url-parser": "^3.0.10", + "@smithy/util-middleware": "^3.0.10", "tslib": "^2.6.2" }, "engines": { @@ -3713,17 +3730,17 @@ } }, "node_modules/@smithy/middleware-retry": { - "version": "3.0.15", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.15.tgz", - "integrity": "sha512-iTMedvNt1ApdvkaoE8aSDuwaoc+BhvHqttbA/FO4Ty+y/S5hW6Ci/CTScG7vam4RYJWZxdTElc3MEfHRVH6cgQ==", - "dependencies": { - "@smithy/node-config-provider": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/service-error-classification": "^3.0.3", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/util-middleware": "^3.0.3", - "@smithy/util-retry": "^3.0.3", + "version": "3.0.28", + "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.28.tgz", + "integrity": "sha512-vK2eDfvIXG1U64FEUhYxoZ1JSj4XFbYWkK36iz02i3pFwWiDz1Q7jKhGTBCwx/7KqJNk4VS7d7cDLXFOvP7M+g==", + "dependencies": { + "@smithy/node-config-provider": "^3.1.11", + "@smithy/protocol-http": "^4.1.7", + "@smithy/service-error-classification": "^3.0.10", + "@smithy/smithy-client": "^3.4.5", + "@smithy/types": "^3.7.1", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-retry": "^3.0.10", "tslib": "^2.6.2", "uuid": "^9.0.1" }, @@ -3732,11 +3749,11 @@ } }, "node_modules/@smithy/middleware-serde": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.3.tgz", - "integrity": "sha512-puUbyJQBcg9eSErFXjKNiGILJGtiqmuuNKEYNYfUD57fUl4i9+mfmThtQhvFXU0hCVG0iEJhvQUipUf+/SsFdA==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.10.tgz", + "integrity": "sha512-MnAuhh+dD14F428ubSJuRnmRsfOpxSzvRhaGVTvd/lrUDE3kxzCCmH8lnVTvoNQnV2BbJ4c15QwZ3UdQBtFNZA==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3744,11 +3761,11 @@ } }, "node_modules/@smithy/middleware-stack": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.3.tgz", - "integrity": "sha512-r4klY9nFudB0r9UdSMaGSyjyQK5adUyPnQN/ZM6M75phTxOdnc/AhpvGD1fQUvgmqjQEBGCwpnPbDm8pH5PapA==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.10.tgz", + "integrity": "sha512-grCHyoiARDBBGPyw2BeicpjgpsDFWZZxptbVKb3CRd/ZA15F/T6rZjCCuBUjJwdck1nwUuIxYtsS4H9DDpbP5w==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3756,13 +3773,13 @@ } }, "node_modules/@smithy/node-config-provider": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.1.4.tgz", - "integrity": "sha512-YvnElQy8HR4vDcAjoy7Xkx9YT8xZP4cBXcbJSgm/kxmiQu08DwUwj8rkGnyoJTpfl/3xYHH+d8zE+eHqoDCSdQ==", + "version": "3.1.11", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.1.11.tgz", + "integrity": "sha512-URq3gT3RpDikh/8MBJUB+QGZzfS7Bm6TQTqoh4CqE8NBuyPkWa5eUXj0XFcFfeZVgg3WMh1u19iaXn8FvvXxZw==", "dependencies": { - "@smithy/property-provider": "^3.1.3", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", + "@smithy/property-provider": "^3.1.10", + "@smithy/shared-ini-file-loader": "^3.1.11", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3770,14 +3787,14 @@ } }, "node_modules/@smithy/node-http-handler": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.1.4.tgz", - "integrity": "sha512-+UmxgixgOr/yLsUxcEKGH0fMNVteJFGkmRltYFHnBMlogyFdpzn2CwqWmxOrfJELhV34v0WSlaqG1UtE1uXlJg==", - "dependencies": { - "@smithy/abort-controller": "^3.1.1", - "@smithy/protocol-http": "^4.1.0", - "@smithy/querystring-builder": "^3.0.3", - "@smithy/types": "^3.3.0", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.3.1.tgz", + "integrity": "sha512-fr+UAOMGWh6bn4YSEezBCpJn9Ukp9oR4D32sCjCo7U81evE11YePOQ58ogzyfgmjIO79YeOdfXXqr0jyhPQeMg==", + "dependencies": { + "@smithy/abort-controller": "^3.1.8", + "@smithy/protocol-http": "^4.1.7", + "@smithy/querystring-builder": "^3.0.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3785,11 +3802,11 @@ } }, "node_modules/@smithy/property-provider": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.1.3.tgz", - "integrity": "sha512-zahyOVR9Q4PEoguJ/NrFP4O7SMAfYO1HLhB18M+q+Z4KFd4V2obiMnlVoUFzFLSPeVt1POyNWneHHrZaTMoc/g==", + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.1.10.tgz", + "integrity": "sha512-n1MJZGTorTH2DvyTVj+3wXnd4CzjJxyXeOgnTlgNVFxaaMeT4OteEp4QrzF8p9ee2yg42nvyVK6R/awLCakjeQ==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3797,11 +3814,11 @@ } }, "node_modules/@smithy/protocol-http": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.1.0.tgz", - "integrity": "sha512-dPVoHYQ2wcHooGXg3LQisa1hH0e4y0pAddPMeeUPipI1tEOqL6A4N0/G7abeq+K8wrwSgjk4C0wnD1XZpJm5aA==", + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.1.7.tgz", + "integrity": "sha512-FP2LepWD0eJeOTm0SjssPcgqAlDFzOmRXqXmGhfIM52G7Lrox/pcpQf6RP4F21k0+O12zaqQt5fCDOeBtqY6Cg==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3809,11 +3826,11 @@ } }, "node_modules/@smithy/querystring-builder": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-3.0.3.tgz", - "integrity": "sha512-vyWckeUeesFKzCDaRwWLUA1Xym9McaA6XpFfAK5qI9DKJ4M33ooQGqvM4J+LalH4u/Dq9nFiC8U6Qn1qi0+9zw==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-3.0.10.tgz", + "integrity": "sha512-nT9CQF3EIJtIUepXQuBFb8dxJi3WVZS3XfuDksxSCSn+/CzZowRLdhDn+2acbBv8R6eaJqPupoI/aRFIImNVPQ==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "@smithy/util-uri-escape": "^3.0.0", "tslib": "^2.6.2" }, @@ -3822,11 +3839,11 @@ } }, "node_modules/@smithy/querystring-parser": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.3.tgz", - "integrity": "sha512-zahM1lQv2YjmznnfQsWbYojFe55l0SLG/988brlLv1i8z3dubloLF+75ATRsqPBboUXsW6I9CPGE5rQgLfY0vQ==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.10.tgz", + "integrity": "sha512-Oa0XDcpo9SmjhiDD9ua2UyM3uU01ZTuIrNdZvzwUTykW1PM8o2yJvMh1Do1rY5sUQg4NDV70dMi0JhDx4GyxuQ==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3834,22 +3851,22 @@ } }, "node_modules/@smithy/service-error-classification": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.3.tgz", - "integrity": "sha512-Jn39sSl8cim/VlkLsUhRFq/dKDnRUFlfRkvhOJaUbLBXUsLRLNf9WaxDv/z9BjuQ3A6k/qE8af1lsqcwm7+DaQ==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.10.tgz", + "integrity": "sha512-zHe642KCqDxXLuhs6xmHVgRwy078RfqxP2wRDpIyiF8EmsWXptMwnMwbVa50lw+WOGNrYm9zbaEg0oDe3PTtvQ==", "dependencies": { - "@smithy/types": "^3.3.0" + "@smithy/types": "^3.7.1" }, "engines": { "node": ">=16.0.0" } }, "node_modules/@smithy/shared-ini-file-loader": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.4.tgz", - "integrity": "sha512-qMxS4hBGB8FY2GQqshcRUy1K6k8aBWP5vwm8qKkCT3A9K2dawUwOIJfqh9Yste/Bl0J2lzosVyrXDj68kLcHXQ==", + "version": "3.1.11", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.11.tgz", + "integrity": "sha512-AUdrIZHFtUgmfSN4Gq9nHu3IkHMa1YDcN+s061Nfm+6pQ0mJy85YQDB0tZBCmls0Vuj22pLwDPmL92+Hvfwwlg==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3857,15 +3874,15 @@ } }, "node_modules/@smithy/signature-v4": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-4.1.0.tgz", - "integrity": "sha512-aRryp2XNZeRcOtuJoxjydO6QTaVhxx/vjaR+gx7ZjaFgrgPRyZ3HCTbfwqYj6ZWEBHkCSUfcaymKPURaByukag==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-4.2.3.tgz", + "integrity": "sha512-pPSQQ2v2vu9vc8iew7sszLd0O09I5TRc5zhY71KA+Ao0xYazIG+uLeHbTJfIWGO3BGVLiXjUr3EEeCcEQLjpWQ==", "dependencies": { "@smithy/is-array-buffer": "^3.0.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "@smithy/util-hex-encoding": "^3.0.0", - "@smithy/util-middleware": "^3.0.3", + "@smithy/util-middleware": "^3.0.10", "@smithy/util-uri-escape": "^3.0.0", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" @@ -3875,15 +3892,16 @@ } }, "node_modules/@smithy/smithy-client": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.2.0.tgz", - "integrity": "sha512-pDbtxs8WOhJLJSeaF/eAbPgXg4VVYFlRcL/zoNYA5WbG3wBL06CHtBSg53ppkttDpAJ/hdiede+xApip1CwSLw==", - "dependencies": { - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/middleware-stack": "^3.0.3", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", - "@smithy/util-stream": "^3.1.3", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.4.5.tgz", + "integrity": "sha512-k0sybYT9zlP79sIKd1XGm4TmK0AS1nA2bzDHXx7m0nGi3RQ8dxxQUs4CPkSmQTKAo+KF9aINU3KzpGIpV7UoMw==", + "dependencies": { + "@smithy/core": "^2.5.4", + "@smithy/middleware-endpoint": "^3.2.4", + "@smithy/middleware-stack": "^3.0.10", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", + "@smithy/util-stream": "^3.3.1", "tslib": "^2.6.2" }, "engines": { @@ -3891,9 +3909,9 @@ } }, "node_modules/@smithy/types": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.3.0.tgz", - "integrity": "sha512-IxvBBCTFDHbVoK7zIxqA1ZOdc4QfM5HM7rGleCuHi7L1wnKv5Pn69xXJQ9hgxH60ZVygH9/JG0jRgtUncE3QUA==", + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.7.1.tgz", + "integrity": "sha512-XKLcLXZY7sUQgvvWyeaL/qwNPp6V3dWcUjqrQKjSb+tzYiCy340R/c64LV5j+Tnb2GhmunEX0eou+L+m2hJNYA==", "dependencies": { "tslib": "^2.6.2" }, @@ -3902,12 +3920,12 @@ } }, "node_modules/@smithy/url-parser": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.3.tgz", - "integrity": "sha512-pw3VtZtX2rg+s6HMs6/+u9+hu6oY6U7IohGhVNnjbgKy86wcIsSZwgHrFR+t67Uyxvp4Xz3p3kGXXIpTNisq8A==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.10.tgz", + "integrity": "sha512-j90NUalTSBR2NaZTuruEgavSdh8MLirf58LoGSk4AtQfyIymogIhgnGUU2Mga2bkMkpSoC9gxb74xBXL5afKAQ==", "dependencies": { - "@smithy/querystring-parser": "^3.0.3", - "@smithy/types": "^3.3.0", + "@smithy/querystring-parser": "^3.0.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, @@ -3969,13 +3987,13 @@ } }, "node_modules/@smithy/util-defaults-mode-browser": { - "version": "3.0.15", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.15.tgz", - "integrity": "sha512-FZ4Psa3vjp8kOXcd3HJOiDPBCWtiilLl57r0cnNtq/Ga9RSDrM5ERL6xt+tO43+2af6Pn5Yp92x2n5vPuduNfg==", + "version": "3.0.28", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.28.tgz", + "integrity": "sha512-6bzwAbZpHRFVJsOztmov5PGDmJYsbNSoIEfHSJJyFLzfBGCCChiO3od9k7E/TLgrCsIifdAbB9nqbVbyE7wRUw==", "dependencies": { - "@smithy/property-provider": "^3.1.3", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", + "@smithy/property-provider": "^3.1.10", + "@smithy/smithy-client": "^3.4.5", + "@smithy/types": "^3.7.1", "bowser": "^2.11.0", "tslib": "^2.6.2" }, @@ -3984,16 +4002,16 @@ } }, "node_modules/@smithy/util-defaults-mode-node": { - "version": "3.0.15", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.15.tgz", - "integrity": "sha512-KSyAAx2q6d0t6f/S4XB2+3+6aQacm3aLMhs9aLMqn18uYGUepbdssfogW5JQZpc6lXNBnp0tEnR5e9CEKmEd7A==", - "dependencies": { - "@smithy/config-resolver": "^3.0.5", - "@smithy/credential-provider-imds": "^3.2.0", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/property-provider": "^3.1.3", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", + "version": "3.0.28", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.28.tgz", + "integrity": "sha512-78ENJDorV1CjOQselGmm3+z7Yqjj5HWCbjzh0Ixuq736dh1oEnD9sAttSBNSLlpZsX8VQnmERqA2fEFlmqWn8w==", + "dependencies": { + "@smithy/config-resolver": "^3.0.12", + "@smithy/credential-provider-imds": "^3.2.7", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/property-provider": "^3.1.10", + "@smithy/smithy-client": "^3.4.5", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -4001,12 +4019,12 @@ } }, "node_modules/@smithy/util-endpoints": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.0.5.tgz", - "integrity": "sha512-ReQP0BWihIE68OAblC/WQmDD40Gx+QY1Ez8mTdFMXpmjfxSyz2fVQu3A4zXRfQU9sZXtewk3GmhfOHswvX+eNg==", + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.1.6.tgz", + "integrity": "sha512-mFV1t3ndBh0yZOJgWxO9J/4cHZVn5UG1D8DeCc6/echfNkeEJWu9LD7mgGH5fHrEdR7LDoWw7PQO6QiGpHXhgA==", "dependencies": { - "@smithy/node-config-provider": "^3.1.4", - "@smithy/types": "^3.3.0", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -4025,11 +4043,11 @@ } }, "node_modules/@smithy/util-middleware": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.3.tgz", - "integrity": "sha512-l+StyYYK/eO3DlVPbU+4Bi06Jjal+PFLSMmlWM1BEwyLxZ3aKkf1ROnoIakfaA7mC6uw3ny7JBkau4Yc+5zfWw==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.10.tgz", + "integrity": "sha512-eJO+/+RsrG2RpmY68jZdwQtnfsxjmPxzMlQpnHKjFPwrYqvlcT+fHdT+ZVwcjlWSrByOhGr9Ff2GG17efc192A==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -4037,12 +4055,12 @@ } }, "node_modules/@smithy/util-retry": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.3.tgz", - "integrity": "sha512-AFw+hjpbtVApzpNDhbjNG5NA3kyoMs7vx0gsgmlJF4s+yz1Zlepde7J58zpIRIsdjc+emhpAITxA88qLkPF26w==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.10.tgz", + "integrity": "sha512-1l4qatFp4PiU6j7UsbasUHL2VU023NRB/gfaa1M0rDqVrRN4g3mCArLRyH3OuktApA4ye+yjWQHjdziunw2eWA==", "dependencies": { - "@smithy/service-error-classification": "^3.0.3", - "@smithy/types": "^3.3.0", + "@smithy/service-error-classification": "^3.0.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -4050,13 +4068,13 @@ } }, "node_modules/@smithy/util-stream": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-3.1.3.tgz", - "integrity": "sha512-FIv/bRhIlAxC0U7xM1BCnF2aDRPq0UaelqBHkM2lsCp26mcBbgI0tCVTv+jGdsQLUmAMybua/bjDsSu8RQHbmw==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-3.3.1.tgz", + "integrity": "sha512-Ff68R5lJh2zj+AUTvbAU/4yx+6QPRzg7+pI7M1FbtQHcRIp7xvguxVsQBKyB3fwiOwhAKu0lnNyYBaQfSW6TNw==", "dependencies": { - "@smithy/fetch-http-handler": "^3.2.4", - "@smithy/node-http-handler": "^3.1.4", - "@smithy/types": "^3.3.0", + "@smithy/fetch-http-handler": "^4.1.1", + "@smithy/node-http-handler": "^3.3.1", + "@smithy/types": "^3.7.1", "@smithy/util-base64": "^3.0.0", "@smithy/util-buffer-from": "^3.0.0", "@smithy/util-hex-encoding": "^3.0.0", @@ -4092,12 +4110,12 @@ } }, "node_modules/@smithy/util-waiter": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-3.1.2.tgz", - "integrity": "sha512-4pP0EV3iTsexDx+8PPGAKCQpd/6hsQBaQhqWzU4hqKPHN5epPsxKbvUTIiYIHTxaKt6/kEaqPBpu/ufvfbrRzw==", + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-3.1.9.tgz", + "integrity": "sha512-/aMXPANhMOlMPjfPtSrDfPeVP8l56SJlz93xeiLmhLe5xvlXA5T3abZ2ilEsDEPeY9T/wnN/vNGn9wa1SbufWA==", "dependencies": { - "@smithy/abort-controller": "^3.1.1", - "@smithy/types": "^3.3.0", + "@smithy/abort-controller": "^3.1.8", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -4241,10 +4259,9 @@ } }, "node_modules/@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", - "license": "MIT" + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==" }, "node_modules/@types/express": { "version": "4.17.21", @@ -4314,11 +4331,10 @@ } }, "node_modules/@types/jest": { - "version": "29.5.12", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.12.tgz", - "integrity": "sha512-eDC8bTvT/QhYdxJAulQikueigY5AsdBRH2yDKW3yveW7svY3+DzN84/2NUgkw10RTiJbWqZrTtoGVdYlvFJdLw==", + "version": "29.5.14", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.14.tgz", + "integrity": "sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==", "dev": true, - "license": "MIT", "dependencies": { "expect": "^29.0.0", "pretty-format": "^29.0.0" @@ -4369,9 +4385,9 @@ } }, "node_modules/@types/node": { - "version": "20.16.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.1.tgz", - "integrity": "sha512-zJDo7wEadFtSyNz5QITDfRcrhqDvQI1xQNQ0VoizPjM/dVAODqqIUWbJPkvsxmTI0MYRGRikcdjMPhOssnPejQ==", + "version": "20.17.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.9.tgz", + "integrity": "sha512-0JOXkRyLanfGPE2QRCwgxhzlBAvaRdCNMcvbd7jFfpmD4eEXll7LRwy5ymJmyeZqk7Nh7eD2LeUyQ68BbndmXw==", "dependencies": { "undici-types": "~6.19.2" } @@ -4500,8 +4516,7 @@ "node_modules/@types/triple-beam": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.5.tgz", - "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==", - "license": "MIT" + "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==" }, "node_modules/@types/uuid": { "version": "10.0.0", @@ -4822,162 +4837,145 @@ "license": "ISC" }, "node_modules/@webassemblyjs/ast": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", - "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", - "license": "MIT", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.14.1.tgz", + "integrity": "sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==", "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + "@webassemblyjs/helper-numbers": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2" } }, "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", - "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", - "license": "MIT" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz", + "integrity": "sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==" }, "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", - "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", - "license": "MIT" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz", + "integrity": "sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==" }, "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", - "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", - "license": "MIT" + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz", + "integrity": "sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==" }, "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", - "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", - "license": "MIT", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz", + "integrity": "sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==", "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.6", - "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/floating-point-hex-parser": "1.13.2", + "@webassemblyjs/helper-api-error": "1.13.2", "@xtuc/long": "4.2.2" } }, "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", - "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", - "license": "MIT" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz", + "integrity": "sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==" }, "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", - "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", - "license": "MIT", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz", + "integrity": "sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/wasm-gen": "1.12.1" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/wasm-gen": "1.14.1" } }, "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", - "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", - "license": "MIT", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz", + "integrity": "sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==", "dependencies": { "@xtuc/ieee754": "^1.2.0" } }, "node_modules/@webassemblyjs/leb128": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", - "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", - "license": "Apache-2.0", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.13.2.tgz", + "integrity": "sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==", "dependencies": { "@xtuc/long": "4.2.2" } }, "node_modules/@webassemblyjs/utf8": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", - "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", - "license": "MIT" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.13.2.tgz", + "integrity": "sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==" }, "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", - "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", - "license": "MIT", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz", + "integrity": "sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/helper-wasm-section": "1.12.1", - "@webassemblyjs/wasm-gen": "1.12.1", - "@webassemblyjs/wasm-opt": "1.12.1", - "@webassemblyjs/wasm-parser": "1.12.1", - "@webassemblyjs/wast-printer": "1.12.1" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/helper-wasm-section": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-opt": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1", + "@webassemblyjs/wast-printer": "1.14.1" } }, "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", - "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", - "license": "MIT", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz", + "integrity": "sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" } }, "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", - "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", - "license": "MIT", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz", + "integrity": "sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/wasm-gen": "1.12.1", - "@webassemblyjs/wasm-parser": "1.12.1" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1" } }, "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", - "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", - "license": "MIT", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz", + "integrity": "sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-api-error": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-api-error": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" } }, "node_modules/@webassemblyjs/wast-printer": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", - "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", - "license": "MIT", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz", + "integrity": "sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/ast": "1.14.1", "@xtuc/long": "4.2.2" } }, "node_modules/@xtuc/ieee754": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "license": "BSD-3-Clause" + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" }, "node_modules/@xtuc/long": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "license": "Apache-2.0" + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" }, "node_modules/abort-controller": { "version": "3.0.0", @@ -5005,10 +5003,9 @@ } }, "node_modules/acorn": { - "version": "8.11.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", - "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", - "license": "MIT", + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", "bin": { "acorn": "bin/acorn" }, @@ -5016,14 +5013,6 @@ "node": ">=0.4.0" } }, - "node_modules/acorn-import-attributes": { - "version": "1.9.5", - "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", - "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", - "peerDependencies": { - "acorn": "^8" - } - }, "node_modules/acorn-jsx": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", @@ -5273,8 +5262,7 @@ "node_modules/array-timsort": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/array-timsort/-/array-timsort-1.0.3.tgz", - "integrity": "sha512-/+3GRL7dDAGEfM6TseQk/U+mi18TU2Ms9I3UlLdUMhz2hbvGNTKdj9xniwXfUqgYhHxRx0+8UnKkvlNwVU+cWQ==", - "license": "MIT" + "integrity": "sha512-/+3GRL7dDAGEfM6TseQk/U+mi18TU2Ms9I3UlLdUMhz2hbvGNTKdj9xniwXfUqgYhHxRx0+8UnKkvlNwVU+cWQ==" }, "node_modules/array-union": { "version": "2.1.0", @@ -5663,10 +5651,9 @@ } }, "node_modules/body-parser": { - "version": "1.20.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", - "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", - "license": "MIT", + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "dependencies": { "bytes": "3.1.2", "content-type": "~1.0.5", @@ -5676,7 +5663,7 @@ "http-errors": "2.0.0", "iconv-lite": "0.4.24", "on-finished": "2.4.1", - "qs": "6.11.0", + "qs": "6.13.0", "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" @@ -5714,9 +5701,9 @@ } }, "node_modules/browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "version": "4.24.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", + "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", "funding": [ { "type": "opencollective", @@ -5731,12 +5718,11 @@ "url": "https://github.com/sponsors/ai" } ], - "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" + "caniuse-lite": "^1.0.30001669", + "electron-to-chromium": "^1.5.41", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.1" }, "bin": { "browserslist": "cli.js" @@ -5910,9 +5896,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001629", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001629.tgz", - "integrity": "sha512-c3dl911slnQhmxUIT4HhYzT7wnBK/XYpGnYLOj4nJBaRiw52Ibe7YxlDaAeRECvA786zCuExhxIUJ2K7nHMrBw==", + "version": "1.0.30001683", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001683.tgz", + "integrity": "sha512-iqmNnThZ0n70mNwvxpEC2nBJ037ZHZUoBI5Gorh1Mw6IlEAZujEoU1tXA628iZfzm7R9FvFzxbfdgml82a3k8Q==", "funding": [ { "type": "opencollective", @@ -5926,8 +5912,7 @@ "type": "github", "url": "https://github.com/sponsors/ai" } - ], - "license": "CC-BY-4.0" + ] }, "node_modules/chalk": { "version": "4.1.2", @@ -6385,10 +6370,9 @@ } }, "node_modules/comment-json": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/comment-json/-/comment-json-4.2.3.tgz", - "integrity": "sha512-SsxdiOf064DWoZLH799Ata6u7iV658A11PlWtZATDlXPpKGJnbJZ5Z24ybixAi+LUUqJ/GKowAejtC5GFUG7Tw==", - "license": "MIT", + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/comment-json/-/comment-json-4.2.5.tgz", + "integrity": "sha512-bKw/r35jR3HGt5PEPm1ljsQQGyCrR8sFGNiN5L+ykDHdpO8Smxkrkla9Yi6NkQyUrb8V54PGhfMs6NrIwtxtdw==", "dependencies": { "array-timsort": "^1.0.3", "core-util-is": "^1.0.3", @@ -6473,10 +6457,9 @@ "license": "MIT" }, "node_modules/cookie": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", - "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", - "license": "MIT", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", "engines": { "node": ">= 0.6" } @@ -6569,10 +6552,9 @@ "license": "MIT" }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "license": "MIT", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -6851,10 +6833,9 @@ } }, "node_modules/dotenv": { - "version": "16.4.5", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", - "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", - "license": "BSD-2-Clause", + "version": "16.4.7", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz", + "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==", "engines": { "node": ">=12" }, @@ -6907,10 +6888,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.792", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.792.tgz", - "integrity": "sha512-rkg5/N3L+Y844JyfgPUyuKK0Hk0efo3JNxUDKvz3HgP6EmN4rNGhr2D8boLsfTV/hGo7ZGAL8djw+jlg99zQyA==", - "license": "ISC" + "version": "1.5.63", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.63.tgz", + "integrity": "sha512-ddeXKuY9BHo/mw145axlyWjlJ1UBt4WK3AlvkT7W2AbqfRQoacVoRUCF6wL3uIx/8wT9oLKXzI+rFqHHscByaA==" }, "node_modules/emittery": { "version": "0.13.1", @@ -6938,10 +6918,9 @@ "license": "MIT" }, "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "license": "MIT", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "engines": { "node": ">= 0.8" } @@ -6955,10 +6934,9 @@ } }, "node_modules/enhanced-resolve": { - "version": "5.17.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz", - "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==", - "license": "MIT", + "version": "5.17.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", + "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", "dependencies": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" @@ -7160,10 +7138,9 @@ } }, "node_modules/escalade": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", - "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", - "license": "MIT", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "engines": { "node": ">=6" } @@ -7171,8 +7148,7 @@ "node_modules/escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "license": "MIT" + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" }, "node_modules/escape-string-regexp": { "version": "4.0.0", @@ -7394,11 +7370,10 @@ "license": "MIT" }, "node_modules/eslint-module-utils": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.1.tgz", - "integrity": "sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz", + "integrity": "sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==", "dev": true, - "license": "MIT", "dependencies": { "debug": "^3.2.7" }, @@ -7416,7 +7391,6 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, - "license": "MIT", "dependencies": { "ms": "^2.1.1" } @@ -7425,8 +7399,7 @@ "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/eslint-plugin-es": { "version": "3.0.1", @@ -7471,35 +7444,36 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.29.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", - "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", + "version": "2.31.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz", + "integrity": "sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==", "dev": true, - "license": "MIT", "dependencies": { - "array-includes": "^3.1.7", - "array.prototype.findlastindex": "^1.2.3", + "@rtsao/scc": "^1.1.0", + "array-includes": "^3.1.8", + "array.prototype.findlastindex": "^1.2.5", "array.prototype.flat": "^1.3.2", "array.prototype.flatmap": "^1.3.2", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.8.0", - "hasown": "^2.0.0", - "is-core-module": "^2.13.1", + "eslint-module-utils": "^2.12.0", + "hasown": "^2.0.2", + "is-core-module": "^2.15.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", - "object.fromentries": "^2.0.7", - "object.groupby": "^1.0.1", - "object.values": "^1.1.7", + "object.fromentries": "^2.0.8", + "object.groupby": "^1.0.3", + "object.values": "^1.2.0", "semver": "^6.3.1", + "string.prototype.trimend": "^1.0.8", "tsconfig-paths": "^3.15.0" }, "engines": { "node": ">=4" }, "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" } }, "node_modules/eslint-plugin-import/node_modules/debug": { @@ -7865,7 +7839,6 @@ "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "license": "MIT", "engines": { "node": ">= 0.6" } @@ -7952,37 +7925,36 @@ } }, "node_modules/express": { - "version": "4.19.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", - "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", - "license": "MIT", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.2", + "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.6.0", + "cookie": "0.7.1", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "1.2.0", + "finalhandler": "1.3.1", "fresh": "0.5.2", "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", + "merge-descriptors": "1.0.3", "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", - "qs": "6.11.0", + "qs": "6.13.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", + "send": "0.19.0", + "serve-static": "1.16.2", "setprototypeof": "1.2.0", "statuses": "2.0.1", "type-is": "~1.6.18", @@ -7991,13 +7963,16 @@ }, "engines": { "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/express/node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", - "license": "MIT" + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==" }, "node_modules/external-editor": { "version": "3.1.0", @@ -8169,8 +8144,7 @@ "node_modules/fecha": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz", - "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==", - "license": "MIT" + "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==" }, "node_modules/figures": { "version": "3.2.0", @@ -8251,13 +8225,12 @@ } }, "node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "license": "MIT", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", "dependencies": { "debug": "2.6.9", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "on-finished": "2.4.1", "parseurl": "~1.3.3", @@ -8475,7 +8448,6 @@ "version": "0.5.2", "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "license": "MIT", "engines": { "node": ">= 0.6" } @@ -8709,9 +8681,9 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, "node_modules/glob": { - "version": "10.4.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", - "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", @@ -8723,9 +8695,6 @@ "bin": { "glob": "dist/esm/bin.mjs" }, - "engines": { - "node": ">=16 || 14 >=14.18" - }, "funding": { "url": "https://github.com/sponsors/isaacs" } @@ -8898,7 +8867,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-own-prop/-/has-own-prop-2.0.0.tgz", "integrity": "sha512-Pq0h+hvsVm6dDEa8x82GnLSYHOzNDt7f0ddFa3FqcQlgzEiptPqL+XrOJNavjOzSYiYWIrgeVYYgGlLmnxwilQ==", - "license": "MIT", "engines": { "node": ">=8" } @@ -8967,10 +8935,9 @@ } }, "node_modules/helmet": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/helmet/-/helmet-7.1.0.tgz", - "integrity": "sha512-g+HZqgfbpXdCkme/Cd/mZkV0aV3BZZZSugecH03kl38m/Kmdx8jKjBikpDj2cr+Iynv4KpYEviojNdTJActJAg==", - "license": "MIT", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/helmet/-/helmet-7.2.0.tgz", + "integrity": "sha512-ZRiwvN089JfMXokizgqEPXsl2Guk094yExfoDXR0cBYWxtBbaSww/w+vT4WEJsBW2iTUi1GgZ6swmoug3Oy4Xw==", "engines": { "node": ">=16.0.0" } @@ -9354,13 +9321,15 @@ } }, "node_modules/is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", "dev": true, - "license": "MIT", "dependencies": { - "hasown": "^2.0.0" + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -10811,9 +10780,9 @@ "license": "MIT" }, "node_modules/lint-staged": { - "version": "15.2.9", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.2.9.tgz", - "integrity": "sha512-BZAt8Lk3sEnxw7tfxM7jeZlPRuT4M68O0/CwZhhaw6eeWu0Lz5eERE3m386InivXB64fp/mDID452h48tvKlRQ==", + "version": "15.2.10", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.2.10.tgz", + "integrity": "sha512-5dY5t743e1byO19P9I4b3x8HJwalIznL5E1FWYnU6OWw33KxNBSLAc6Cy7F2PsFEO8FKnLwjwm5hx7aMF0jzZg==", "dev": true, "dependencies": { "chalk": "~5.3.0", @@ -10822,7 +10791,7 @@ "execa": "~8.0.1", "lilconfig": "~3.1.2", "listr2": "~8.2.4", - "micromatch": "~4.0.7", + "micromatch": "~4.0.8", "pidtree": "~0.6.0", "string-argv": "~0.3.2", "yaml": "~2.5.0" @@ -11408,10 +11377,9 @@ } }, "node_modules/logform": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/logform/-/logform-2.6.0.tgz", - "integrity": "sha512-1ulHeNPp6k/LD8H91o7VYFBng5i1BDE7HoKxVbZiGFidS1Rj65qcywLxX+pVfAPoQJEjRdvKcusKwOupHCVOVQ==", - "license": "MIT", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/logform/-/logform-2.7.0.tgz", + "integrity": "sha512-TFYA4jnP7PVbmlBIfhlSe+WKxs9dklXMTEGcBCIvLhE/Tn3H6Gk1norupVW7m5Cnd4bLcr08AytbyV/xj7f/kQ==", "dependencies": { "@colors/colors": "1.6.0", "@types/triple-beam": "^1.3.2", @@ -11428,7 +11396,6 @@ "version": "1.6.0", "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.6.0.tgz", "integrity": "sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==", - "license": "MIT", "engines": { "node": ">=0.1.90" } @@ -11436,8 +11403,7 @@ "node_modules/logform/node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "license": "MIT" + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "node_modules/lru-cache": { "version": "10.2.2", @@ -11555,10 +11521,12 @@ } }, "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", - "license": "MIT" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, "node_modules/merge-stream": { "version": "2.0.0", @@ -11611,7 +11579,6 @@ "version": "1.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "license": "MIT", "bin": { "mime": "cli.js" }, @@ -11838,9 +11805,9 @@ } }, "node_modules/nestjs-cls": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/nestjs-cls/-/nestjs-cls-4.4.1.tgz", - "integrity": "sha512-4yhldwm/cJ02lQ8ZAdM8KQ7gMfjAc1z3fo5QAQgXNyN4N6X5So9BCwv+BTLRugDCkELUo3qtzQHnKhGYL/ftPg==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/nestjs-cls/-/nestjs-cls-4.5.0.tgz", + "integrity": "sha512-oi3GNCc5pnsnVI5WJKMDwmg4NP+JyEw+edlwgepyUba5+RGGtJzpbVaaxXGW1iPbDuQde3/fA8Jdjq9j88BVcQ==", "engines": { "node": ">=16" }, @@ -11902,10 +11869,9 @@ "license": "MIT" }, "node_modules/node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "license": "MIT" + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==" }, "node_modules/normalize-path": { "version": "3.0.0", @@ -12318,7 +12284,6 @@ "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "license": "MIT", "engines": { "node": ">= 0.8" } @@ -12410,10 +12375,9 @@ } }, "node_modules/path-to-regexp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-3.2.0.tgz", - "integrity": "sha512-jczvQbCUS7XmS7o+y1aEO9OBVFeZBQ1MDSEqmO7xSoPgOPoowY/SxLpZ6Vh97/8qHZOteiCKb7gkG9gA2ZUxJA==", - "license": "MIT" + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-3.3.0.tgz", + "integrity": "sha512-qyCH421YQPS2WFDxDjftfc1ZR5WKQzVzqsp4n9M2kQhVOo/ByahFoUNJfl58kOcEGfQ//7weFTDhm+ss8Ecxgw==" }, "node_modules/path-type": { "version": "4.0.0", @@ -12453,10 +12417,9 @@ "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==" }, "node_modules/picocolors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", - "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", - "license": "ISC" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" }, "node_modules/picomatch": { "version": "4.0.1", @@ -12589,9 +12552,9 @@ } }, "node_modules/prettier": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz", - "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==", + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.4.2.tgz", + "integrity": "sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" @@ -12872,12 +12835,11 @@ "license": "MIT" }, "node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", - "license": "BSD-3-Clause", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dependencies": { - "side-channel": "^1.0.4" + "side-channel": "^1.0.6" }, "engines": { "node": ">=0.6" @@ -12924,7 +12886,6 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "license": "MIT", "engines": { "node": ">= 0.6" } @@ -13038,7 +12999,6 @@ "version": "1.6.1", "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", - "license": "MIT", "engines": { "node": ">=0.10" } @@ -13132,27 +13092,17 @@ } }, "node_modules/response-time": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/response-time/-/response-time-2.3.2.tgz", - "integrity": "sha512-MUIDaDQf+CVqflfTdQ5yam+aYCkXj1PY8fjlPDQ6ppxJlmgZb864pHtA750mayywNg8tx4rS7qH9JXd/OF+3gw==", - "license": "MIT", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/response-time/-/response-time-2.3.3.tgz", + "integrity": "sha512-SsjjOPHl/FfrTQNgmc5oen8Hr1Jxpn6LlHNXxCIFdYMHuK1kMeYMobb9XN3mvxaGQm3dbegqYFMX4+GDORfbWg==", "dependencies": { - "depd": "~1.1.0", + "depd": "~2.0.0", "on-headers": "~1.0.1" }, "engines": { "node": ">= 0.8.0" } }, - "node_modules/response-time/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/restore-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", @@ -13305,10 +13255,9 @@ } }, "node_modules/safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", - "license": "MIT", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz", + "integrity": "sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==", "engines": { "node": ">=10" } @@ -13379,10 +13328,9 @@ } }, "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "license": "MIT", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", "dependencies": { "debug": "2.6.9", "depd": "2.0.0", @@ -13402,11 +13350,18 @@ "node": ">= 0.8.0" } }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, "node_modules/send/node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "license": "MIT" + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "node_modules/serialize-javascript": { "version": "6.0.2", @@ -13418,15 +13373,14 @@ } }, "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "license": "MIT", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", "dependencies": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" }, "engines": { "node": ">= 0.8.0" @@ -14491,7 +14445,6 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz", "integrity": "sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==", - "license": "MIT", "engines": { "node": ">= 14.0.0" } @@ -14660,13 +14613,13 @@ } }, "node_modules/tsconfig-paths-webpack-plugin": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths-webpack-plugin/-/tsconfig-paths-webpack-plugin-4.1.0.tgz", - "integrity": "sha512-xWFISjviPydmtmgeUAuXp4N1fky+VCtfhOkDUFIv5ea7p4wuTomI4QTrXvFBX2S4jZsmyTSrStQl+E+4w+RzxA==", - "license": "MIT", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths-webpack-plugin/-/tsconfig-paths-webpack-plugin-4.2.0.tgz", + "integrity": "sha512-zbem3rfRS8BgeNK50Zz5SIQgXzLafiHjOwUAvk/38/o1jHn/V5QAgVUcz884or7WYcPaH3N2CIfUc2u0ul7UcA==", "dependencies": { "chalk": "^4.1.0", "enhanced-resolve": "^5.7.0", + "tapable": "^2.2.1", "tsconfig-paths": "^4.1.2" }, "engines": { @@ -14683,10 +14636,9 @@ } }, "node_modules/tslib": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", - "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", - "license": "0BSD" + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==" }, "node_modules/type-check": { "version": "0.4.0", @@ -14989,9 +14941,9 @@ "license": "Apache-2.0" }, "node_modules/typescript": { - "version": "5.5.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", - "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz", + "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -15098,9 +15050,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.16", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz", - "integrity": "sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", + "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", "funding": [ { "type": "opencollective", @@ -15115,10 +15067,9 @@ "url": "https://github.com/sponsors/ai" } ], - "license": "MIT", "dependencies": { - "escalade": "^3.1.2", - "picocolors": "^1.0.1" + "escalade": "^3.2.0", + "picocolors": "^1.1.0" }, "bin": { "update-browserslist-db": "cli.js" @@ -15248,20 +15199,19 @@ "license": "BSD-2-Clause" }, "node_modules/webpack": { - "version": "5.93.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.93.0.tgz", - "integrity": "sha512-Y0m5oEY1LRuwly578VqluorkXbvXKh7U3rLoQCEO04M97ScRr44afGVkI0FQFsXzysk5OgFAxjZAb9rsGQVihA==", - "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.5", - "@webassemblyjs/ast": "^1.12.1", - "@webassemblyjs/wasm-edit": "^1.12.1", - "@webassemblyjs/wasm-parser": "^1.12.1", - "acorn": "^8.7.1", - "acorn-import-attributes": "^1.9.5", - "browserslist": "^4.21.10", + "version": "5.97.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.97.1.tgz", + "integrity": "sha512-EksG6gFY3L1eFMROS/7Wzgrii5mBAFe4rIr3r2BTfo7bcc+DWwFZ4OJ/miOuHJO/A85HwyI4eQ0F6IKXesO7Fg==", + "dependencies": { + "@types/eslint-scope": "^3.7.7", + "@types/estree": "^1.0.6", + "@webassemblyjs/ast": "^1.14.1", + "@webassemblyjs/wasm-edit": "^1.14.1", + "@webassemblyjs/wasm-parser": "^1.14.1", + "acorn": "^8.14.0", + "browserslist": "^4.24.0", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.17.0", + "enhanced-resolve": "^5.17.1", "es-module-lexer": "^1.2.1", "eslint-scope": "5.1.1", "events": "^3.2.0", @@ -15394,34 +15344,33 @@ } }, "node_modules/winston": { - "version": "3.14.2", - "resolved": "https://registry.npmjs.org/winston/-/winston-3.14.2.tgz", - "integrity": "sha512-CO8cdpBB2yqzEf8v895L+GNKYJiEq8eKlHU38af3snQBQ+sdAIUepjMSguOIJC7ICbzm0ZI+Af2If4vIJrtmOg==", + "version": "3.17.0", + "resolved": "https://registry.npmjs.org/winston/-/winston-3.17.0.tgz", + "integrity": "sha512-DLiFIXYC5fMPxaRg832S6F5mJYvePtmO5G9v9IgUFPhXm9/GkXarH/TUrBAVzhTCzAj9anE/+GjrgXp/54nOgw==", "dependencies": { "@colors/colors": "^1.6.0", "@dabh/diagnostics": "^2.0.2", "async": "^3.2.3", "is-stream": "^2.0.0", - "logform": "^2.6.0", + "logform": "^2.7.0", "one-time": "^1.0.0", "readable-stream": "^3.4.0", "safe-stable-stringify": "^2.3.1", "stack-trace": "0.0.x", "triple-beam": "^1.3.0", - "winston-transport": "^4.7.0" + "winston-transport": "^4.9.0" }, "engines": { "node": ">= 12.0.0" } }, "node_modules/winston-transport": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.7.0.tgz", - "integrity": "sha512-ajBj65K5I7denzer2IYW6+2bNIVqLGDHqDw3Ow8Ohh+vdW+rv4MZ6eiDvHoKhfJFZ2auyN8byXieDDJ96ViONg==", - "license": "MIT", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.9.0.tgz", + "integrity": "sha512-8drMJ4rkgaPo1Me4zD/3WLfI/zPdA9o2IipKODunnGDcuqbHwjsbB79ylv04LCGGzU0xQ6vTznOMpQGaLhhm6A==", "dependencies": { - "logform": "^2.3.2", - "readable-stream": "^3.6.0", + "logform": "^2.7.0", + "readable-stream": "^3.6.2", "triple-beam": "^1.3.0" }, "engines": { @@ -15432,7 +15381,6 @@ "version": "3.6.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "license": "MIT", "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", diff --git a/dops/package.json b/dops/package.json index b8062f739..33c1d622d 100644 --- a/dops/package.json +++ b/dops/package.json @@ -45,20 +45,20 @@ "@automapper/core": "^8.8.1", "@automapper/nestjs": "^8.8.1", "@automapper/types": "^6.3.1", - "@aws-sdk/client-s3": "^3.637.0", - "@aws-sdk/lib-storage": "^3.637.0", - "@aws-sdk/s3-request-presigner": "^3.637.0", - "@nestjs/axios": "^3.0.3", - "@nestjs/cache-manager": "^2.2.2", - "@nestjs/cli": "^10.4.4", - "@nestjs/common": "^10.4.1", - "@nestjs/config": "^3.2.3", - "@nestjs/core": "^10.4.1", + "@aws-sdk/client-s3": "^3.705.0", + "@aws-sdk/lib-storage": "^3.705.0", + "@aws-sdk/s3-request-presigner": "^3.705.0", + "@nestjs/axios": "^3.1.3", + "@nestjs/cache-manager": "^2.3.0", + "@nestjs/cli": "^10.4.9", + "@nestjs/common": "^10.4.15", + "@nestjs/config": "^3.3.0", + "@nestjs/core": "^10.4.15", "@nestjs/passport": "^10.0.3", - "@nestjs/platform-express": "^10.4.1", - "@nestjs/schematics": "^10.1.4", - "@nestjs/swagger": "^7.4.0", - "@nestjs/testing": "^10.4.1", + "@nestjs/platform-express": "^10.4.15", + "@nestjs/schematics": "^10.2.3", + "@nestjs/swagger": "^7.4.2", + "@nestjs/testing": "^10.4.15", "@nestjs/typeorm": "^10.0.2", "@types/response-time": "^2.3.8", "axios-retry": "^4.5.0", @@ -66,31 +66,31 @@ "class-transformer": "^0.5.1", "class-validator": "^0.14.1", "dayjs": "^1.11.13", - "dotenv": "^16.4.5", + "dotenv": "^16.4.7", "handlebars": "^4.7.8", - "helmet": "^7.1.0", + "helmet": "^7.2.0", "jwks-rsa": "^3.1.0", "mssql": "^10.0.4", "nest-winston": "^1.10.0", - "nestjs-cls": "^4.4.1", + "nestjs-cls": "^4.5.0", "passport": "^0.7.0", "passport-jwt": "^4.0.1", "pdf-lib": "^1.17.1", "puppeteer": "^22.15.0", - "response-time": "^2.3.2", + "response-time": "^2.3.3", "rxjs": "^7.8.1", "swagger-ui-express": "^5.0.1", "typeorm": "^0.3.20", "typescript-eslint": "^7.18.0", "uuid": "^9.0.1", - "winston": "^3.14.2" + "winston": "^3.17.0" }, "devDependencies": { - "@golevelup/ts-jest": "^0.5.4", + "@golevelup/ts-jest": "^0.6.1", "@types/express": "^4.17.21", - "@types/jest": "^29.5.12", + "@types/jest": "^29.5.14", "@types/multer": "^1.4.12", - "@types/node": "^20.16.1", + "@types/node": "^20.17.9", "@types/passport-jwt": "^4.0.1", "@types/supertest": "^6.0.2", "@types/uuid": "^10.0.0", @@ -98,7 +98,7 @@ "eslint-config-airbnb-base": "^15.0.0", "eslint-config-prettier": "^9.1.0", "eslint-config-standard": "^17.1.0", - "eslint-plugin-import": "^2.29.1", + "eslint-plugin-import": "^2.31.0", "eslint-plugin-node": "^11.1.0", "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-promise": "^6.6.0", @@ -106,8 +106,8 @@ "jest": "^29.7.0", "jest-badges": "^0.1.3", "jest-sonar-reporter": "^2.0.0", - "lint-staged": "^15.2.9", - "prettier": "^3.3.3", + "lint-staged": "^15.2.10", + "prettier": "^3.4.2", "rimraf": "^5.0.10", "source-map-support": "^0.5.21", "supertest": "^7.0.0", @@ -115,7 +115,7 @@ "ts-loader": "^9.5.1", "ts-node": "^10.9.2", "tsconfig-paths": "^4.2.0", - "typescript": "^5.5.4" + "typescript": "^5.7.2" }, "jest": { "moduleFileExtensions": [ diff --git a/frontend/package-lock.json b/frontend/package-lock.json index acb2c624f..6d6b666a6 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -9,66 +9,66 @@ "version": "0.1.0", "dependencies": { "@bcgov/bc-sans": "^2.1.0", - "@emotion/react": "^11.13.3", - "@emotion/styled": "^11.13.0", - "@fortawesome/fontawesome-svg-core": "^6.6.0", - "@fortawesome/free-regular-svg-icons": "^6.6.0", - "@fortawesome/free-solid-svg-icons": "^6.6.0", + "@emotion/react": "^11.14.0", + "@emotion/styled": "^11.14.0", + "@fortawesome/fontawesome-svg-core": "^6.7.1", + "@fortawesome/free-regular-svg-icons": "^6.7.1", + "@fortawesome/free-solid-svg-icons": "^6.7.1", "@fortawesome/react-fontawesome": "^0.2.2", - "@mui/icons-material": "^5.16.7", - "@mui/material": "^5.16.7", + "@mui/icons-material": "^5.16.9", + "@mui/material": "^5.16.9", "@mui/x-date-pickers": "^6.20.2", - "@tanstack/react-query": "^5.52.2", + "@tanstack/react-query": "^5.62.3", "@uidotdev/usehooks": "^2.4.1", - "axios": "^1.7.5", + "axios": "^1.7.9", "dayjs": "^1.11.13", "lottie-web": "^5.12.2", - "material-react-table": "^2.13.1", + "material-react-table": "^2.13.3", "mui-nested-menu": "^3.4.0", - "oidc-client-ts": "^3.0.1", - "onroute-policy-engine": "^0.4.6", + "oidc-client-ts": "^3.1.0", + "onroute-policy-engine": "^0.7.1", "react": "^18.3.1", "react-dom": "^18.3.1", - "react-error-boundary": "^4.0.13", + "react-error-boundary": "^4.1.2", "react-hook-form": "^7.50.1", "react-modal": "^3.16.1", - "react-oidc-context": "^3.1.0", - "react-router-dom": "^6.26.1", - "sass": "^1.77.8", + "react-oidc-context": "^3.2.0", + "react-router-dom": "^6.28.0", + "sass": "^1.82.0", "uuid": "^9.0.1", "validator": "^13.12.0" }, "devDependencies": { "@hookform/devtools": "^4.3.1", - "@mswjs/data": "^0.16.1", - "@testing-library/jest-dom": "^6.5.0", + "@mswjs/data": "^0.16.2", + "@testing-library/jest-dom": "^6.6.3", "@testing-library/react": "^14.3.1", "@testing-library/user-event": "^14.5.2", - "@types/material-ui": "^0.21.17", - "@types/node": "^20.16.2", - "@types/react": "^18.3.4", - "@types/react-dom": "^18.3.0", + "@types/material-ui": "^0.21.18", + "@types/node": "^20.17.9", + "@types/react": "^18.3.14", + "@types/react-dom": "^18.3.2", "@types/react-modal": "^3.16.3", - "@types/validator": "^13.12.1", + "@types/validator": "^13.12.2", "@typescript-eslint/eslint-plugin": "^7.18.0", "@typescript-eslint/parser": "^7.18.0", - "@vitejs/plugin-react-swc": "^3.7.0", + "@vitejs/plugin-react-swc": "^3.7.2", "@vitest/coverage-v8": "^1.6.0", "autoprefixer": "^10.4.20", "eslint": "^8.57.0", "eslint-config-prettier": "^9.1.0", - "eslint-plugin-import": "^2.29.1", - "eslint-plugin-jsx-a11y": "^6.9.0", + "eslint-plugin-import": "^2.31.0", + "eslint-plugin-jsx-a11y": "^6.10.2", "eslint-plugin-prettier": "^5.2.1", - "eslint-plugin-react": "^7.35.0", + "eslint-plugin-react": "^7.37.2", "jsdom": "^24.1.3", - "msw": "^2.4.1", - "postcss": "^8.4.41", - "prettier": "^3.3.3", - "typescript": "^5.5.4", - "vite": "^5.4.2", + "msw": "^2.6.8", + "postcss": "^8.4.49", + "prettier": "^3.4.2", + "typescript": "^5.7.2", + "vite": "^5.4.11", "vite-plugin-eslint": "^1.8.1", - "vite-plugin-svgr": "^4.2.0", + "vite-plugin-svgr": "^4.3.0", "vite-tsconfig-paths": "^4.3.2", "vitest": "^1.6.0", "vitest-canvas-mock": "^0.3.3" @@ -421,12 +421,12 @@ "dev": true }, "node_modules/@bundled-es-modules/cookie": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@bundled-es-modules/cookie/-/cookie-2.0.0.tgz", - "integrity": "sha512-Or6YHg/kamKHpxULAdSqhGqnWFneIXu1NKvvfBBzKGwpVsYuFIQ5aBPHDnnoR3ghW1nvSkALd+EF9iMtY7Vjxw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@bundled-es-modules/cookie/-/cookie-2.0.1.tgz", + "integrity": "sha512-8o+5fRPLNbjbdGRRmJj3h6Hh1AQJf2dk3qQ/5ZFb+PXkRNiSoMGGUKlsgLfrxneb72axVJyIYji64E2+nNfYyw==", "dev": true, "dependencies": { - "cookie": "^0.5.0" + "cookie": "^0.7.2" } }, "node_modules/@bundled-es-modules/statuses": { @@ -449,15 +449,15 @@ } }, "node_modules/@emotion/babel-plugin": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.12.0.tgz", - "integrity": "sha512-y2WQb+oP8Jqvvclh8Q55gLUyb7UFvgv7eJfsj7td5TToBrIUtPay2kMrZi4xjq9qw2vD0ZR5fSho0yqoFgX7Rw==", + "version": "11.13.5", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz", + "integrity": "sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==", "dependencies": { "@babel/helper-module-imports": "^7.16.7", "@babel/runtime": "^7.18.3", "@emotion/hash": "^0.9.2", "@emotion/memoize": "^0.9.0", - "@emotion/serialize": "^1.2.0", + "@emotion/serialize": "^1.3.3", "babel-plugin-macros": "^3.1.0", "convert-source-map": "^1.5.0", "escape-string-regexp": "^4.0.0", @@ -467,13 +467,13 @@ } }, "node_modules/@emotion/cache": { - "version": "11.13.1", - "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.13.1.tgz", - "integrity": "sha512-iqouYkuEblRcXmylXIwwOodiEK5Ifl7JcX7o6V4jI3iW4mLXX3dmt5xwBtIkJiQEXFAI+pC8X0i67yiPkH9Ucw==", + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.14.0.tgz", + "integrity": "sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA==", "dependencies": { "@emotion/memoize": "^0.9.0", "@emotion/sheet": "^1.4.0", - "@emotion/utils": "^1.4.0", + "@emotion/utils": "^1.4.2", "@emotion/weak-memoize": "^0.4.0", "stylis": "4.2.0" } @@ -497,16 +497,16 @@ "integrity": "sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==" }, "node_modules/@emotion/react": { - "version": "11.13.3", - "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.13.3.tgz", - "integrity": "sha512-lIsdU6JNrmYfJ5EbUCf4xW1ovy5wKQ2CkPRM4xogziOxH1nXxBSjpC9YqbFAP7circxMfYp+6x676BqWcEiixg==", + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.14.0.tgz", + "integrity": "sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA==", "dependencies": { "@babel/runtime": "^7.18.3", - "@emotion/babel-plugin": "^11.12.0", - "@emotion/cache": "^11.13.0", - "@emotion/serialize": "^1.3.1", - "@emotion/use-insertion-effect-with-fallbacks": "^1.1.0", - "@emotion/utils": "^1.4.0", + "@emotion/babel-plugin": "^11.13.5", + "@emotion/cache": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", + "@emotion/utils": "^1.4.2", "@emotion/weak-memoize": "^0.4.0", "hoist-non-react-statics": "^3.3.1" }, @@ -520,14 +520,14 @@ } }, "node_modules/@emotion/serialize": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.3.1.tgz", - "integrity": "sha512-dEPNKzBPU+vFPGa+z3axPRn8XVDetYORmDC0wAiej+TNcOZE70ZMJa0X7JdeoM6q/nWTMZeLpN/fTnD9o8MQBA==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.3.3.tgz", + "integrity": "sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==", "dependencies": { "@emotion/hash": "^0.9.2", "@emotion/memoize": "^0.9.0", "@emotion/unitless": "^0.10.0", - "@emotion/utils": "^1.4.0", + "@emotion/utils": "^1.4.2", "csstype": "^3.0.2" } }, @@ -537,16 +537,16 @@ "integrity": "sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==" }, "node_modules/@emotion/styled": { - "version": "11.13.0", - "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.13.0.tgz", - "integrity": "sha512-tkzkY7nQhW/zC4hztlwucpT8QEZ6eUzpXDRhww/Eej4tFfO0FxQYWRyg/c5CCXa4d/f174kqeXYjuQRnhzf6dA==", + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.14.0.tgz", + "integrity": "sha512-XxfOnXFffatap2IyCeJyNov3kiDQWoR08gPUQxvbL7fxKryGBKUZUkG6Hz48DZwVrJSVh9sJboyV1Ds4OW6SgA==", "dependencies": { "@babel/runtime": "^7.18.3", - "@emotion/babel-plugin": "^11.12.0", + "@emotion/babel-plugin": "^11.13.5", "@emotion/is-prop-valid": "^1.3.0", - "@emotion/serialize": "^1.3.0", - "@emotion/use-insertion-effect-with-fallbacks": "^1.1.0", - "@emotion/utils": "^1.4.0" + "@emotion/serialize": "^1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", + "@emotion/utils": "^1.4.2" }, "peerDependencies": { "@emotion/react": "^11.0.0-rc.0", @@ -564,17 +564,17 @@ "integrity": "sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==" }, "node_modules/@emotion/use-insertion-effect-with-fallbacks": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.1.0.tgz", - "integrity": "sha512-+wBOcIV5snwGgI2ya3u99D7/FJquOIniQT1IKyDsBmEgwvpxMNeS65Oib7OnE2d2aY+3BU4OiH+0Wchf8yk3Hw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.2.0.tgz", + "integrity": "sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg==", "peerDependencies": { "react": ">=16.8.0" } }, "node_modules/@emotion/utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.4.0.tgz", - "integrity": "sha512-spEnrA1b6hDR/C68lC2M7m6ALPUHZC0lIY7jAS/B/9DuuO1ZP04eov8SMv/6fwRd8pzmsn2AuJEznRREWlQrlQ==" + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.4.2.tgz", + "integrity": "sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA==" }, "node_modules/@emotion/weak-memoize": { "version": "0.4.0", @@ -1055,41 +1055,41 @@ "integrity": "sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q==" }, "node_modules/@fortawesome/fontawesome-common-types": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.6.0.tgz", - "integrity": "sha512-xyX0X9mc0kyz9plIyryrRbl7ngsA9jz77mCZJsUkLl+ZKs0KWObgaEBoSgQiYWAsSmjz/yjl0F++Got0Mdp4Rw==", + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.7.1.tgz", + "integrity": "sha512-gbDz3TwRrIPT3i0cDfujhshnXO9z03IT1UKRIVi/VEjpNHtSBIP2o5XSm+e816FzzCFEzAxPw09Z13n20PaQJQ==", "engines": { "node": ">=6" } }, "node_modules/@fortawesome/fontawesome-svg-core": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.6.0.tgz", - "integrity": "sha512-KHwPkCk6oRT4HADE7smhfsKudt9N/9lm6EJ5BVg0tD1yPA5hht837fB87F8pn15D8JfTqQOjhKTktwmLMiD7Kg==", + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.7.1.tgz", + "integrity": "sha512-8dBIHbfsKlCk2jHQ9PoRBg2Z+4TwyE3vZICSnoDlnsHA6SiMlTwfmW6yX0lHsRmWJugkeb92sA0hZdkXJhuz+g==", "dependencies": { - "@fortawesome/fontawesome-common-types": "6.6.0" + "@fortawesome/fontawesome-common-types": "6.7.1" }, "engines": { "node": ">=6" } }, "node_modules/@fortawesome/free-regular-svg-icons": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/@fortawesome/free-regular-svg-icons/-/free-regular-svg-icons-6.6.0.tgz", - "integrity": "sha512-Yv9hDzL4aI73BEwSEh20clrY8q/uLxawaQ98lekBx6t9dQKDHcDzzV1p2YtBGTtolYtNqcWdniOnhzB+JPnQEQ==", + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/@fortawesome/free-regular-svg-icons/-/free-regular-svg-icons-6.7.1.tgz", + "integrity": "sha512-e13cp+bAx716RZOTQ59DhqikAgETA9u1qTBHO3e3jMQQ+4H/N1NC1ZVeFYt1V0m+Th68BrEL1/X6XplISutbXg==", "dependencies": { - "@fortawesome/fontawesome-common-types": "6.6.0" + "@fortawesome/fontawesome-common-types": "6.7.1" }, "engines": { "node": ">=6" } }, "node_modules/@fortawesome/free-solid-svg-icons": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.6.0.tgz", - "integrity": "sha512-IYv/2skhEDFc2WGUcqvFJkeK39Q+HyPf5GHUrT/l2pKbtgEIv1al1TKd6qStR5OIwQdN1GZP54ci3y4mroJWjA==", + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.7.1.tgz", + "integrity": "sha512-BTKc0b0mgjWZ2UDKVgmwaE0qt0cZs6ITcDgjrti5f/ki7aF5zs+N91V6hitGo3TItCFtnKg6cUVGdTmBFICFRg==", "dependencies": { - "@fortawesome/fontawesome-common-types": "6.6.0" + "@fortawesome/fontawesome-common-types": "6.7.1" }, "engines": { "node": ">=6" @@ -1170,38 +1170,36 @@ "dev": true }, "node_modules/@inquirer/confirm": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-3.0.0.tgz", - "integrity": "sha512-LHeuYP1D8NmQra1eR4UqvZMXwxEdDXyElJmmZfU44xdNLL6+GcQBS0uE16vyfZVjH8c22p9e+DStROfE/hyHrg==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-5.0.2.tgz", + "integrity": "sha512-KJLUHOaKnNCYzwVbryj3TNBxyZIrr56fR5N45v6K9IPrbT6B7DcudBMfylkV1A8PUdJE15mybkEQyp2/ZUpxUA==", "dev": true, "dependencies": { - "@inquirer/core": "^7.0.0", - "@inquirer/type": "^1.2.0" + "@inquirer/core": "^10.1.0", + "@inquirer/type": "^3.0.1" }, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@inquirer/core": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-7.0.0.tgz", - "integrity": "sha512-g13W5yEt9r1sEVVriffJqQ8GWy94OnfxLCreNSOTw0HPVcszmc/If1KIf7YBmlwtX4klmvwpZHnQpl3N7VX2xA==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-10.1.0.tgz", + "integrity": "sha512-I+ETk2AL+yAVbvuKx5AJpQmoaWhpiTFOg/UJb7ZkMAK4blmtG8ATh5ct+T/8xNld0CZG/2UhtkdMwpgvld92XQ==", "dev": true, "dependencies": { - "@inquirer/type": "^1.2.0", - "@types/mute-stream": "^0.0.4", - "@types/node": "^20.11.16", - "@types/wrap-ansi": "^3.0.0", + "@inquirer/figures": "^1.0.8", + "@inquirer/type": "^3.0.1", "ansi-escapes": "^4.3.2", - "chalk": "^4.1.2", - "cli-spinners": "^2.9.2", "cli-width": "^4.1.0", - "figures": "^3.2.0", - "mute-stream": "^1.0.0", - "run-async": "^3.0.0", + "mute-stream": "^2.0.0", "signal-exit": "^4.1.0", "strip-ansi": "^6.0.1", - "wrap-ansi": "^6.2.0" + "wrap-ansi": "^6.2.0", + "yoctocolors-cjs": "^2.1.2" }, "engines": { "node": ">=18" @@ -1222,22 +1220,6 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@inquirer/core/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, "node_modules/@inquirer/core/node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -1256,27 +1238,6 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/@inquirer/core/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@inquirer/core/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@inquirer/core/node_modules/wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", @@ -1291,13 +1252,25 @@ "node": ">=8" } }, + "node_modules/@inquirer/figures": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@inquirer/figures/-/figures-1.0.8.tgz", + "integrity": "sha512-tKd+jsmhq21AP1LhexC0pPwsCxEhGgAkg28byjJAd+xhmIs8LUX8JbUc3vBf3PhLxWiB5EvyBE5X7JSPAqMAqg==", + "dev": true, + "engines": { + "node": ">=18" + } + }, "node_modules/@inquirer/type": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-1.2.0.tgz", - "integrity": "sha512-/vvkUkYhrjbm+RolU7V1aUFDydZVKNKqKHR5TsE+j5DXgXFwrsOPcoGUJ02K0O7q7O53CU2DOTMYCHeGZ25WHA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-3.0.1.tgz", + "integrity": "sha512-+ksJMIy92sOAiAccGpcKZUc3bYO07cADnscIxHBknEm3uNts3movSmBofc1908BNy5edKscxYeAdaX1NXkHS6A==", "dev": true, "engines": { "node": ">=18" + }, + "peerDependencies": { + "@types/node": ">=18" } }, "node_modules/@istanbuljs/schema": { @@ -1370,9 +1343,9 @@ } }, "node_modules/@mswjs/data": { - "version": "0.16.1", - "resolved": "https://registry.npmjs.org/@mswjs/data/-/data-0.16.1.tgz", - "integrity": "sha512-VhJvL/VmgAuU9/tDOcKcxHfNd+8nxYntZnrkaQEQPvZZnFwQQR9bzI1FTRROGxCHVoyfv9v84AEkl/7CIw4FAg==", + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@mswjs/data/-/data-0.16.2.tgz", + "integrity": "sha512-/C0d/PBcJyQJokUhcjO4HiZPc67hzllKlRtD1XELygl2t991/ATAAQJVcStn4YtVALsNodruzOHT0JIvgr0hnA==", "dev": true, "dependencies": { "@types/lodash": "^4.14.172", @@ -1403,16 +1376,16 @@ } }, "node_modules/@mswjs/interceptors": { - "version": "0.29.1", - "resolved": "https://registry.npmjs.org/@mswjs/interceptors/-/interceptors-0.29.1.tgz", - "integrity": "sha512-3rDakgJZ77+RiQUuSK69t1F0m8BQKA8Vh5DCS5V0DWvNY67zob2JhhQrhCO0AKLGINTRSFd1tBaHcJTkhefoSw==", + "version": "0.37.1", + "resolved": "https://registry.npmjs.org/@mswjs/interceptors/-/interceptors-0.37.1.tgz", + "integrity": "sha512-SvE+tSpcX884RJrPCskXxoS965Ky/pYABDEhWW6oeSRhpUDLrS5nTvT5n1LLSDVDYvty4imVmXsy+3/ROVuknA==", "dev": true, "dependencies": { "@open-draft/deferred-promise": "^2.2.0", "@open-draft/logger": "^0.3.0", "@open-draft/until": "^2.0.0", "is-node-process": "^1.2.0", - "outvariant": "^1.2.1", + "outvariant": "^1.4.3", "strict-event-emitter": "^0.5.1" }, "engines": { @@ -1451,18 +1424,18 @@ } }, "node_modules/@mui/core-downloads-tracker": { - "version": "5.16.7", - "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.16.7.tgz", - "integrity": "sha512-RtsCt4Geed2/v74sbihWzzRs+HsIQCfclHeORh5Ynu2fS4icIKozcSubwuG7vtzq2uW3fOR1zITSP84TNt2GoQ==", + "version": "5.16.9", + "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.16.9.tgz", + "integrity": "sha512-ue3j79XJ56+F6DlTtFTM+n//5AvNENOvl3MFruZZP5iZzz+hOq6WBwnr+YxiMlr+kvmMHuHxgOHFdPR8+mElDw==", "funding": { "type": "opencollective", "url": "https://opencollective.com/mui-org" } }, "node_modules/@mui/icons-material": { - "version": "5.16.7", - "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.16.7.tgz", - "integrity": "sha512-UrGwDJCXEszbDI7yV047BYU5A28eGJ79keTCP4cc74WyncuVrnurlmIRxaHL8YK+LI1Kzq+/JM52IAkNnv4u+Q==", + "version": "5.16.9", + "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.16.9.tgz", + "integrity": "sha512-nnOJIqan6FS6zEsLX3vf8LZ4vXpZjP5xfCFezeXmqfQConypCOZG4nangoVwKwROlas7b6/bqOdacFUb/HuM/g==", "dependencies": { "@babel/runtime": "^7.23.9" }, @@ -1475,8 +1448,8 @@ }, "peerDependencies": { "@mui/material": "^5.0.0", - "@types/react": "^17.0.0 || ^18.0.0", - "react": "^17.0.0 || ^18.0.0" + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "peerDependenciesMeta": { "@types/react": { @@ -1485,15 +1458,15 @@ } }, "node_modules/@mui/material": { - "version": "5.16.7", - "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.16.7.tgz", - "integrity": "sha512-cwwVQxBhK60OIOqZOVLFt55t01zmarKJiJUWbk0+8s/Ix5IaUzAShqlJchxsIQ4mSrWqgcKCCXKtIlG5H+/Jmg==", + "version": "5.16.9", + "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.16.9.tgz", + "integrity": "sha512-XC0oHFm7mrWV0tvhed9uv/o6kLNClnLj1eo/ufuKbj+rgk47ek8Y6HjHe3cGvMn4Bcq8KyoQPgzdwqvS2ZzYrA==", "dependencies": { "@babel/runtime": "^7.23.9", - "@mui/core-downloads-tracker": "^5.16.7", - "@mui/system": "^5.16.7", + "@mui/core-downloads-tracker": "^5.16.9", + "@mui/system": "^5.16.8", "@mui/types": "^7.2.15", - "@mui/utils": "^5.16.6", + "@mui/utils": "^5.16.8", "@popperjs/core": "^2.11.8", "@types/react-transition-group": "^4.4.10", "clsx": "^2.1.0", @@ -1512,9 +1485,9 @@ "peerDependencies": { "@emotion/react": "^11.5.0", "@emotion/styled": "^11.3.0", - "@types/react": "^17.0.0 || ^18.0.0", - "react": "^17.0.0 || ^18.0.0", - "react-dom": "^17.0.0 || ^18.0.0" + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "peerDependenciesMeta": { "@emotion/react": { @@ -1529,12 +1502,12 @@ } }, "node_modules/@mui/private-theming": { - "version": "5.16.6", - "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.16.6.tgz", - "integrity": "sha512-rAk+Rh8Clg7Cd7shZhyt2HGTTE5wYKNSJ5sspf28Fqm/PZ69Er9o6KX25g03/FG2dfpg5GCwZh/xOojiTfm3hw==", + "version": "5.16.8", + "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.16.8.tgz", + "integrity": "sha512-3Vl9yFVLU6T3CFtxRMQTcJ60Ijv7wxQi4yjH92+9YXcsqvVspeIYoocqNoIV/1bXGYfyWu5zrCmwQVHaGY7bug==", "dependencies": { "@babel/runtime": "^7.23.9", - "@mui/utils": "^5.16.6", + "@mui/utils": "^5.16.8", "prop-types": "^15.8.1" }, "engines": { @@ -1545,8 +1518,8 @@ "url": "https://opencollective.com/mui-org" }, "peerDependencies": { - "@types/react": "^17.0.0 || ^18.0.0", - "react": "^17.0.0 || ^18.0.0" + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "peerDependenciesMeta": { "@types/react": { @@ -1555,9 +1528,9 @@ } }, "node_modules/@mui/styled-engine": { - "version": "5.16.6", - "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.16.6.tgz", - "integrity": "sha512-zaThmS67ZmtHSWToTiHslbI8jwrmITcN93LQaR2lKArbvS7Z3iLkwRoiikNWutx9MBs8Q6okKvbZq1RQYB3v7g==", + "version": "5.16.8", + "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.16.8.tgz", + "integrity": "sha512-OFdgFf8JczSRs0kvWGdSn0ZeXxWrY0LITDPJ/nAtLEvUUTyrlFaO4il3SECX8ruzvf1VnAxHx4M/4mX9oOn9yA==", "dependencies": { "@babel/runtime": "^7.23.9", "@emotion/cache": "^11.11.0", @@ -1574,7 +1547,7 @@ "peerDependencies": { "@emotion/react": "^11.4.1", "@emotion/styled": "^11.3.0", - "react": "^17.0.0 || ^18.0.0" + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "peerDependenciesMeta": { "@emotion/react": { @@ -1586,15 +1559,15 @@ } }, "node_modules/@mui/system": { - "version": "5.16.7", - "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.16.7.tgz", - "integrity": "sha512-Jncvs/r/d/itkxh7O7opOunTqbbSSzMTHzZkNLM+FjAOg+cYAZHrPDlYe1ZGKUYORwwb2XexlWnpZp0kZ4AHuA==", + "version": "5.16.8", + "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.16.8.tgz", + "integrity": "sha512-L32TaFDFpGIi1g6ysRtmhc9zDgrlxDXu3NlrGE8gAsQw/ziHrPdr0PNr20O0POUshA1q14W4dNZ/z0Nx2F9lhA==", "dependencies": { "@babel/runtime": "^7.23.9", - "@mui/private-theming": "^5.16.6", - "@mui/styled-engine": "^5.16.6", + "@mui/private-theming": "^5.16.8", + "@mui/styled-engine": "^5.16.8", "@mui/types": "^7.2.15", - "@mui/utils": "^5.16.6", + "@mui/utils": "^5.16.8", "clsx": "^2.1.0", "csstype": "^3.1.3", "prop-types": "^15.8.1" @@ -1609,8 +1582,8 @@ "peerDependencies": { "@emotion/react": "^11.5.0", "@emotion/styled": "^11.3.0", - "@types/react": "^17.0.0 || ^18.0.0", - "react": "^17.0.0 || ^18.0.0" + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "peerDependenciesMeta": { "@emotion/react": { @@ -1638,9 +1611,9 @@ } }, "node_modules/@mui/utils": { - "version": "5.16.6", - "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.16.6.tgz", - "integrity": "sha512-tWiQqlhxAt3KENNiSRL+DIn9H5xNVK6Jjf70x3PnfQPz1MPBdh7yyIcAyVBT9xiw7hP3SomRhPR7hzBMBCjqEA==", + "version": "5.16.8", + "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.16.8.tgz", + "integrity": "sha512-P/yb7BSWallQUeiNGxb+TM8epHteIUC8gzNTdPV2VfKhVY/EnGliHgt5np0GPkjQ7EzwDi/+gBevrAJtf+K94A==", "dependencies": { "@babel/runtime": "^7.23.9", "@mui/types": "^7.2.15", @@ -1657,8 +1630,8 @@ "url": "https://opencollective.com/mui-org" }, "peerDependencies": { - "@types/react": "^17.0.0 || ^18.0.0", - "react": "^17.0.0 || ^18.0.0" + "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0" }, "peerDependenciesMeta": { "@types/react": { @@ -1788,6 +1761,288 @@ "integrity": "sha512-U69T3ItWHvLwGg5eJ0n3I62nWuE6ilHlmz7zM0npLBRvPRd7e6NYmg54vvRtP5mZG7kZqZCFVdsTWo7BPtBujg==", "dev": true }, + "node_modules/@parcel/watcher": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.0.tgz", + "integrity": "sha512-i0GV1yJnm2n3Yq1qw6QrUrd/LI9bE8WEBOTtOkpCXHHdyN3TAGgqAK/DAT05z4fq2x04cARXt2pDmjWjL92iTQ==", + "hasInstallScript": true, + "optional": true, + "dependencies": { + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.5.0", + "@parcel/watcher-darwin-arm64": "2.5.0", + "@parcel/watcher-darwin-x64": "2.5.0", + "@parcel/watcher-freebsd-x64": "2.5.0", + "@parcel/watcher-linux-arm-glibc": "2.5.0", + "@parcel/watcher-linux-arm-musl": "2.5.0", + "@parcel/watcher-linux-arm64-glibc": "2.5.0", + "@parcel/watcher-linux-arm64-musl": "2.5.0", + "@parcel/watcher-linux-x64-glibc": "2.5.0", + "@parcel/watcher-linux-x64-musl": "2.5.0", + "@parcel/watcher-win32-arm64": "2.5.0", + "@parcel/watcher-win32-ia32": "2.5.0", + "@parcel/watcher-win32-x64": "2.5.0" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.0.tgz", + "integrity": "sha512-qlX4eS28bUcQCdribHkg/herLe+0A9RyYC+mm2PXpncit8z5b3nSqGVzMNR3CmtAOgRutiZ02eIJJgP/b1iEFQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.0.tgz", + "integrity": "sha512-hyZ3TANnzGfLpRA2s/4U1kbw2ZI4qGxaRJbBH2DCSREFfubMswheh8TeiC1sGZ3z2jUf3s37P0BBlrD3sjVTUw==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.0.tgz", + "integrity": "sha512-9rhlwd78saKf18fT869/poydQK8YqlU26TMiNg7AIu7eBp9adqbJZqmdFOsbZ5cnLp5XvRo9wcFmNHgHdWaGYA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.0.tgz", + "integrity": "sha512-syvfhZzyM8kErg3VF0xpV8dixJ+RzbUaaGaeb7uDuz0D3FK97/mZ5AJQ3XNnDsXX7KkFNtyQyFrXZzQIcN49Tw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.0.tgz", + "integrity": "sha512-0VQY1K35DQET3dVYWpOaPFecqOT9dbuCfzjxoQyif1Wc574t3kOSkKevULddcR9znz1TcklCE7Ht6NIxjvTqLA==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-musl": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.0.tgz", + "integrity": "sha512-6uHywSIzz8+vi2lAzFeltnYbdHsDm3iIB57d4g5oaB9vKwjb6N6dRIgZMujw4nm5r6v9/BQH0noq6DzHrqr2pA==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.0.tgz", + "integrity": "sha512-BfNjXwZKxBy4WibDb/LDCriWSKLz+jJRL3cM/DllnHH5QUyoiUNEp3GmL80ZqxeumoADfCCP19+qiYiC8gUBjA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.0.tgz", + "integrity": "sha512-S1qARKOphxfiBEkwLUbHjCY9BWPdWnW9j7f7Hb2jPplu8UZ3nes7zpPOW9bkLbHRvWM0WDTsjdOTUgW0xLBN1Q==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.0.tgz", + "integrity": "sha512-d9AOkusyXARkFD66S6zlGXyzx5RvY+chTP9Jp0ypSTC9d4lzyRs9ovGf/80VCxjKddcUvnsGwCHWuF2EoPgWjw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.0.tgz", + "integrity": "sha512-iqOC+GoTDoFyk/VYSFHwjHhYrk8bljW6zOhPuhi5t9ulqiYq1togGJB5e3PwYVFFfeVgc6pbz3JdQyDoBszVaA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.0.tgz", + "integrity": "sha512-twtft1d+JRNkM5YbmexfcH/N4znDtjgysFaV9zvZmmJezQsKpkfLYJ+JFV3uygugK6AtIM2oADPkB2AdhBrNig==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-ia32": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.0.tgz", + "integrity": "sha512-+rgpsNRKwo8A53elqbbHXdOMtY/tAtTzManTWShB5Kk54N8Q9mzNWV7tV+IbGueCbcj826MfWGU3mprWtuf1TA==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.0.tgz", + "integrity": "sha512-lPrxve92zEHdgeff3aiu4gDOIt4u7sJYha6wbdEZDCDUhtjTsOMiaJzG5lMY4GkWH8p0fMmO2Ppq5G5XXG+DQw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, "node_modules/@pkgr/core": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", @@ -1810,9 +2065,9 @@ } }, "node_modules/@remix-run/router": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.19.1.tgz", - "integrity": "sha512-S45oynt/WH19bHbIXjtli6QmwNYvaz+vtnubvNpNDvUOoA/OWh6j1OikIP3G+v5GHdxyC6EXoChG3HgYGEUfcg==", + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.21.0.tgz", + "integrity": "sha512-xfSkCAchbdG5PnbrKqFWwia4Bi61nH+wm8wLEqfHDyp7Y3dZzgqS2itV8i4gAq9pC2HsTpwyBC6Ds8VHZ96JlA==", "engines": { "node": ">=14.0.0" } @@ -1831,9 +2086,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.21.0.tgz", - "integrity": "sha512-WTWD8PfoSAJ+qL87lE7votj3syLavxunWhzCnx3XFxFiI/BA/r3X7MUM8dVrH8rb2r4AiO8jJsr3ZjdaftmnfA==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.27.3.tgz", + "integrity": "sha512-EzxVSkIvCFxUd4Mgm4xR9YXrcp976qVaHnqom/Tgm+vU79k4vV4eYTjmRvGfeoW8m9LVcsAy/lGjcgVegKEhLQ==", "cpu": [ "arm" ], @@ -1844,9 +2099,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.21.0.tgz", - "integrity": "sha512-a1sR2zSK1B4eYkiZu17ZUZhmUQcKjk2/j9Me2IDjk1GHW7LB5Z35LEzj9iJch6gtUfsnvZs1ZNyDW2oZSThrkA==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.27.3.tgz", + "integrity": "sha512-LJc5pDf1wjlt9o/Giaw9Ofl+k/vLUaYsE2zeQGH85giX2F+wn/Cg8b3c5CDP3qmVmeO5NzwVUzQQxwZvC2eQKw==", "cpu": [ "arm64" ], @@ -1857,9 +2112,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.21.0.tgz", - "integrity": "sha512-zOnKWLgDld/svhKO5PD9ozmL6roy5OQ5T4ThvdYZLpiOhEGY+dp2NwUmxK0Ld91LrbjrvtNAE0ERBwjqhZTRAA==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.27.3.tgz", + "integrity": "sha512-OuRysZ1Mt7wpWJ+aYKblVbJWtVn3Cy52h8nLuNSzTqSesYw1EuN6wKp5NW/4eSre3mp12gqFRXOKTcN3AI3LqA==", "cpu": [ "arm64" ], @@ -1870,9 +2125,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.21.0.tgz", - "integrity": "sha512-7doS8br0xAkg48SKE2QNtMSFPFUlRdw9+votl27MvT46vo44ATBmdZdGysOevNELmZlfd+NEa0UYOA8f01WSrg==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.27.3.tgz", + "integrity": "sha512-xW//zjJMlJs2sOrCmXdB4d0uiilZsOdlGQIC/jjmMWT47lkLLoB1nsNhPUcnoqyi5YR6I4h+FjBpILxbEy8JRg==", "cpu": [ "x64" ], @@ -1882,10 +2137,36 @@ "darwin" ] }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.27.3.tgz", + "integrity": "sha512-58E0tIcwZ+12nK1WiLzHOD8I0d0kdrY/+o7yFVPRHuVGY3twBwzwDdTIBGRxLmyjciMYl1B/U515GJy+yn46qw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.27.3.tgz", + "integrity": "sha512-78fohrpcVwTLxg1ZzBMlwEimoAJmY6B+5TsyAZ3Vok7YabRBUvjYTsRXPTjGEvv/mfgVBepbW28OlMEz4w8wGA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ] + }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.21.0.tgz", - "integrity": "sha512-pWJsfQjNWNGsoCq53KjMtwdJDmh/6NubwQcz52aEwLEuvx08bzcy6tOUuawAOncPnxz/3siRtd8hiQ32G1y8VA==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.27.3.tgz", + "integrity": "sha512-h2Ay79YFXyQi+QZKo3ISZDyKaVD7uUvukEHTOft7kh00WF9mxAaxZsNs3o/eukbeKuH35jBvQqrT61fzKfAB/Q==", "cpu": [ "arm" ], @@ -1896,9 +2177,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.21.0.tgz", - "integrity": "sha512-efRIANsz3UHZrnZXuEvxS9LoCOWMGD1rweciD6uJQIx2myN3a8Im1FafZBzh7zk1RJ6oKcR16dU3UPldaKd83w==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.27.3.tgz", + "integrity": "sha512-Sv2GWmrJfRY57urktVLQ0VKZjNZGogVtASAgosDZ1aUB+ykPxSi3X1nWORL5Jk0sTIIwQiPH7iE3BMi9zGWfkg==", "cpu": [ "arm" ], @@ -1909,9 +2190,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.21.0.tgz", - "integrity": "sha512-ZrPhydkTVhyeGTW94WJ8pnl1uroqVHM3j3hjdquwAcWnmivjAwOYjTEAuEDeJvGX7xv3Z9GAvrBkEzCgHq9U1w==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.27.3.tgz", + "integrity": "sha512-FPoJBLsPW2bDNWjSrwNuTPUt30VnfM8GPGRoLCYKZpPx0xiIEdFip3dH6CqgoT0RnoGXptaNziM0WlKgBc+OWQ==", "cpu": [ "arm64" ], @@ -1922,9 +2203,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.21.0.tgz", - "integrity": "sha512-cfaupqd+UEFeURmqNP2eEvXqgbSox/LHOyN9/d2pSdV8xTrjdg3NgOFJCtc1vQ/jEke1qD0IejbBfxleBPHnPw==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.27.3.tgz", + "integrity": "sha512-TKxiOvBorYq4sUpA0JT+Fkh+l+G9DScnG5Dqx7wiiqVMiRSkzTclP35pE6eQQYjP4Gc8yEkJGea6rz4qyWhp3g==", "cpu": [ "arm64" ], @@ -1935,9 +2216,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.21.0.tgz", - "integrity": "sha512-ZKPan1/RvAhrUylwBXC9t7B2hXdpb/ufeu22pG2psV7RN8roOfGurEghw1ySmX/CmDDHNTDDjY3lo9hRlgtaHg==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.27.3.tgz", + "integrity": "sha512-v2M/mPvVUKVOKITa0oCFksnQQ/TqGrT+yD0184/cWHIu0LoIuYHwox0Pm3ccXEz8cEQDLk6FPKd1CCm+PlsISw==", "cpu": [ "ppc64" ], @@ -1948,9 +2229,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.21.0.tgz", - "integrity": "sha512-H1eRaCwd5E8eS8leiS+o/NqMdljkcb1d6r2h4fKSsCXQilLKArq6WS7XBLDu80Yz+nMqHVFDquwcVrQmGr28rg==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.27.3.tgz", + "integrity": "sha512-LdrI4Yocb1a/tFVkzmOE5WyYRgEBOyEhWYJe4gsDWDiwnjYKjNs7PS6SGlTDB7maOHF4kxevsuNBl2iOcj3b4A==", "cpu": [ "riscv64" ], @@ -1961,9 +2242,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.21.0.tgz", - "integrity": "sha512-zJ4hA+3b5tu8u7L58CCSI0A9N1vkfwPhWd/puGXwtZlsB5bTkwDNW/+JCU84+3QYmKpLi+XvHdmrlwUwDA6kqw==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.27.3.tgz", + "integrity": "sha512-d4wVu6SXij/jyiwPvI6C4KxdGzuZOvJ6y9VfrcleHTwo68fl8vZC5ZYHsCVPUi4tndCfMlFniWgwonQ5CUpQcA==", "cpu": [ "s390x" ], @@ -1974,9 +2255,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.21.0.tgz", - "integrity": "sha512-e2hrvElFIh6kW/UNBQK/kzqMNY5mO+67YtEh9OA65RM5IJXYTWiXjX6fjIiPaqOkBthYF1EqgiZ6OXKcQsM0hg==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.27.3.tgz", + "integrity": "sha512-/6bn6pp1fsCGEY5n3yajmzZQAh+mW4QPItbiWxs69zskBzJuheb3tNynEjL+mKOsUSFK11X4LYF2BwwXnzWleA==", "cpu": [ "x64" ], @@ -1987,9 +2268,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.21.0.tgz", - "integrity": "sha512-1vvmgDdUSebVGXWX2lIcgRebqfQSff0hMEkLJyakQ9JQUbLDkEaMsPTLOmyccyC6IJ/l3FZuJbmrBw/u0A0uCQ==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.27.3.tgz", + "integrity": "sha512-nBXOfJds8OzUT1qUreT/en3eyOXd2EH5b0wr2bVB5999qHdGKkzGzIyKYaKj02lXk6wpN71ltLIaQpu58YFBoQ==", "cpu": [ "x64" ], @@ -2000,9 +2281,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.21.0.tgz", - "integrity": "sha512-s5oFkZ/hFcrlAyBTONFY1TWndfyre1wOMwU+6KCpm/iatybvrRgmZVM+vCFwxmC5ZhdlgfE0N4XorsDpi7/4XQ==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.27.3.tgz", + "integrity": "sha512-ogfbEVQgIZOz5WPWXF2HVb6En+kWzScuxJo/WdQTqEgeyGkaa2ui5sQav9Zkr7bnNCLK48uxmmK0TySm22eiuw==", "cpu": [ "arm64" ], @@ -2013,9 +2294,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.21.0.tgz", - "integrity": "sha512-G9+TEqRnAA6nbpqyUqgTiopmnfgnMkR3kMukFBDsiyy23LZvUCpiUwjTRx6ezYCjJODXrh52rBR9oXvm+Fp5wg==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.27.3.tgz", + "integrity": "sha512-ecE36ZBMLINqiTtSNQ1vzWc5pXLQHlf/oqGp/bSbi7iedcjcNb6QbCBNG73Euyy2C+l/fn8qKWEwxr+0SSfs3w==", "cpu": [ "ia32" ], @@ -2026,9 +2307,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.21.0.tgz", - "integrity": "sha512-2jsCDZwtQvRhejHLfZ1JY6w6kEuEtfF9nzYsZxzSlNVKDX+DpsDJ+Rbjkm74nvg2rdx0gwBS+IMdvwJuq3S9pQ==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.27.3.tgz", + "integrity": "sha512-vliZLrDmYKyaUoMzEbMTg2JkerfBjn03KmAw9CykO0Zzkzoyd7o3iZNam/TpyWNjNT+Cz2iO3P9Smv2wgrR+Eg==", "cpu": [ "x64" ], @@ -2038,6 +2319,12 @@ "win32" ] }, + "node_modules/@rtsao/scc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", + "dev": true + }, "node_modules/@sinclair/typebox": { "version": "0.27.8", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", @@ -2284,14 +2571,14 @@ } }, "node_modules/@swc/core": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.7.14.tgz", - "integrity": "sha512-9aeXeifnyuvc2pcuuhPQgVUwdpGEzZ+9nJu0W8/hNl/aESFsJGR5i9uQJRGu0atoNr01gK092fvmqMmQAPcKow==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.9.2.tgz", + "integrity": "sha512-dYyEkO6mRYtZFpnOsnYzv9rY69fHAHoawYOjGOEcxk9WYtaJhowMdP/w6NcOKnz2G7GlZaenjkzkMa6ZeQeMsg==", "dev": true, "hasInstallScript": true, "dependencies": { "@swc/counter": "^0.1.3", - "@swc/types": "^0.1.12" + "@swc/types": "^0.1.15" }, "engines": { "node": ">=10" @@ -2301,16 +2588,16 @@ "url": "https://opencollective.com/swc" }, "optionalDependencies": { - "@swc/core-darwin-arm64": "1.7.14", - "@swc/core-darwin-x64": "1.7.14", - "@swc/core-linux-arm-gnueabihf": "1.7.14", - "@swc/core-linux-arm64-gnu": "1.7.14", - "@swc/core-linux-arm64-musl": "1.7.14", - "@swc/core-linux-x64-gnu": "1.7.14", - "@swc/core-linux-x64-musl": "1.7.14", - "@swc/core-win32-arm64-msvc": "1.7.14", - "@swc/core-win32-ia32-msvc": "1.7.14", - "@swc/core-win32-x64-msvc": "1.7.14" + "@swc/core-darwin-arm64": "1.9.2", + "@swc/core-darwin-x64": "1.9.2", + "@swc/core-linux-arm-gnueabihf": "1.9.2", + "@swc/core-linux-arm64-gnu": "1.9.2", + "@swc/core-linux-arm64-musl": "1.9.2", + "@swc/core-linux-x64-gnu": "1.9.2", + "@swc/core-linux-x64-musl": "1.9.2", + "@swc/core-win32-arm64-msvc": "1.9.2", + "@swc/core-win32-ia32-msvc": "1.9.2", + "@swc/core-win32-x64-msvc": "1.9.2" }, "peerDependencies": { "@swc/helpers": "*" @@ -2322,9 +2609,9 @@ } }, "node_modules/@swc/core-darwin-arm64": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.7.14.tgz", - "integrity": "sha512-V0OUXjOH+hdGxDYG8NkQzy25mKOpcNKFpqtZEzLe5V/CpLJPnpg1+pMz70m14s9ZFda9OxsjlvPbg1FLUwhgIQ==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.9.2.tgz", + "integrity": "sha512-nETmsCoY29krTF2PtspEgicb3tqw7Ci5sInTI03EU5zpqYbPjoPH99BVTjj0OsF53jP5MxwnLI5Hm21lUn1d6A==", "cpu": [ "arm64" ], @@ -2338,9 +2625,9 @@ } }, "node_modules/@swc/core-darwin-x64": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.7.14.tgz", - "integrity": "sha512-9iFvUnxG6FC3An5ogp5jbBfQuUmTTwy8KMB+ZddUoPB3NR1eV+Y9vOh/tfWcenSJbgOKDLgYC5D/b1mHAprsrQ==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.9.2.tgz", + "integrity": "sha512-9gD+bwBz8ZByjP6nZTXe/hzd0tySIAjpDHgkFiUrc+5zGF+rdTwhcNrzxNHJmy6mw+PW38jqII4uspFHUqqxuQ==", "cpu": [ "x64" ], @@ -2354,9 +2641,9 @@ } }, "node_modules/@swc/core-linux-arm-gnueabihf": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.7.14.tgz", - "integrity": "sha512-zGJsef9qPivKSH8Vv4F/HiBXBTHZ5Hs3ZjVGo/UIdWPJF8fTL9OVADiRrl34Q7zOZEtGXRwEKLUW1SCQcbDvZA==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.9.2.tgz", + "integrity": "sha512-kYq8ief1Qrn+WmsTWAYo4r+Coul4dXN6cLFjiPZ29Cv5pyU+GFvSPAB4bEdMzwy99rCR0u2P10UExaeCjurjvg==", "cpu": [ "arm" ], @@ -2370,9 +2657,9 @@ } }, "node_modules/@swc/core-linux-arm64-gnu": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.7.14.tgz", - "integrity": "sha512-AxV3MPsoI7i4B8FXOew3dx3N8y00YoJYvIPfxelw07RegeCEH3aHp2U2DtgbP/NV1ugZMx0TL2Z2DEvocmA51g==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.9.2.tgz", + "integrity": "sha512-n0W4XiXlmEIVqxt+rD3ZpkogsEWUk1jJ+i5bQNgB+1JuWh0fBE8c/blDgTQXa0GB5lTPVDZQussgdNOCnAZwiA==", "cpu": [ "arm64" ], @@ -2386,9 +2673,9 @@ } }, "node_modules/@swc/core-linux-arm64-musl": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.7.14.tgz", - "integrity": "sha512-JDLdNjUj3zPehd4+DrQD8Ltb3B5lD8D05IwePyDWw+uR/YPc7w/TX1FUVci5h3giJnlMCJRvi1IQYV7K1n7KtQ==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.9.2.tgz", + "integrity": "sha512-8xzrOmsyCC1zrx2Wzx/h8dVsdewO1oMCwBTLc1gSJ/YllZYTb04pNm6NsVbzUX2tKddJVRgSJXV10j/NECLwpA==", "cpu": [ "arm64" ], @@ -2402,9 +2689,9 @@ } }, "node_modules/@swc/core-linux-x64-gnu": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.7.14.tgz", - "integrity": "sha512-Siy5OvPCLLWmMdx4msnEs8HvEVUEigSn0+3pbLjv78iwzXd0qSBNHUPZyC1xeurVaUbpNDxZTpPRIwpqNE2+Og==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.9.2.tgz", + "integrity": "sha512-kZrNz/PjRQKcchWF6W292jk3K44EoVu1ad5w+zbS4jekIAxsM8WwQ1kd+yjUlN9jFcF8XBat5NKIs9WphJCVXg==", "cpu": [ "x64" ], @@ -2418,9 +2705,9 @@ } }, "node_modules/@swc/core-linux-x64-musl": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.7.14.tgz", - "integrity": "sha512-FtEGm9mwtRYQNK43WMtUIadxHs/ja2rnDurB99os0ZoFTGG2IHuht2zD97W0wB8JbqEabT1XwSG9Y5wmN+ciEQ==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.9.2.tgz", + "integrity": "sha512-TTIpR4rjMkhX1lnFR+PSXpaL83TrQzp9znRdp2TzYrODlUd/R20zOwSo9vFLCyH6ZoD47bccY7QeGZDYT3nlRg==", "cpu": [ "x64" ], @@ -2434,9 +2721,9 @@ } }, "node_modules/@swc/core-win32-arm64-msvc": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.7.14.tgz", - "integrity": "sha512-Jp8KDlfq7Ntt2/BXr0y344cYgB1zf0DaLzDZ1ZJR6rYlAzWYSccLYcxHa97VGnsYhhPspMpmCvHid97oe2hl4A==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.9.2.tgz", + "integrity": "sha512-+Eg2d4icItKC0PMjZxH7cSYFLWk0aIp94LNmOw6tPq0e69ax6oh10upeq0D1fjWsKLmOJAWEvnXlayZcijEXDw==", "cpu": [ "arm64" ], @@ -2450,9 +2737,9 @@ } }, "node_modules/@swc/core-win32-ia32-msvc": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.7.14.tgz", - "integrity": "sha512-I+cFsXF0OU0J9J4zdWiQKKLURO5dvCujH9Jr8N0cErdy54l9d4gfIxdctfTF+7FyXtWKLTCkp+oby9BQhkFGWA==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.9.2.tgz", + "integrity": "sha512-nLWBi4vZDdM/LkiQmPCakof8Dh1/t5EM7eudue04V1lIcqx9YHVRS3KMwEaCoHLGg0c312Wm4YgrWQd9vwZ5zQ==", "cpu": [ "ia32" ], @@ -2466,9 +2753,9 @@ } }, "node_modules/@swc/core-win32-x64-msvc": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.7.14.tgz", - "integrity": "sha512-NNrprQCK6d28mG436jVo2TD+vACHseUECacEBGZ9Ef0qfOIWS1XIt2MisQKG0Oea2VvLFl6tF/V4Lnx/H0Sn3Q==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.9.2.tgz", + "integrity": "sha512-ik/k+JjRJBFkXARukdU82tSVx0CbExFQoQ78qTO682esbYXzjdB5eLVkoUbwen299pnfr88Kn4kyIqFPTje8Xw==", "cpu": [ "x64" ], @@ -2488,18 +2775,18 @@ "dev": true }, "node_modules/@swc/types": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.12.tgz", - "integrity": "sha512-wBJA+SdtkbFhHjTMYH+dEH1y4VpfGdAc2Kw/LK09i9bXd/K6j6PkDcFCEzb6iVfZMkPRrl/q0e3toqTAJdkIVA==", + "version": "0.1.17", + "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.17.tgz", + "integrity": "sha512-V5gRru+aD8YVyCOMAjMpWR1Ui577DD5KSJsHP8RAxopAH22jFz6GZd/qxqjO6MJHQhcsjvjOFXyDhyLQUnMveQ==", "dev": true, "dependencies": { "@swc/counter": "^0.1.3" } }, "node_modules/@tanstack/match-sorter-utils": { - "version": "8.15.1", - "resolved": "https://registry.npmjs.org/@tanstack/match-sorter-utils/-/match-sorter-utils-8.15.1.tgz", - "integrity": "sha512-PnVV3d2poenUM31ZbZi/yXkBu3J7kd5k2u51CGwwNojag451AjTH9N6n41yjXz2fpLeewleyLBmNS6+HcGDlXw==", + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/@tanstack/match-sorter-utils/-/match-sorter-utils-8.19.4.tgz", + "integrity": "sha512-Wo1iKt2b9OT7d+YGhvEPD3DXvPv2etTusIMhMUoG7fbhmxcXCtIjJDEygy91Y2JFlwGyjqiBPRozme7UD8hoqg==", "dependencies": { "remove-accents": "0.5.0" }, @@ -2512,20 +2799,20 @@ } }, "node_modules/@tanstack/query-core": { - "version": "5.52.2", - "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.52.2.tgz", - "integrity": "sha512-9vvbFecK4A0nDnrc/ks41e3UHONF1DAnGz8Tgbxkl59QcvKWmc0ewhYuIKRh8NC4ja5LTHT9EH16KHbn2AIYWA==", + "version": "5.62.3", + "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.62.3.tgz", + "integrity": "sha512-Jp/nYoz8cnO7kqhOlSv8ke/0MJRJVGuZ0P/JO9KQ+f45mpN90hrerzavyTKeSoT/pOzeoOUkv1Xd0wPsxAWXfg==", "funding": { "type": "github", "url": "https://github.com/sponsors/tannerlinsley" } }, "node_modules/@tanstack/react-query": { - "version": "5.52.2", - "resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.52.2.tgz", - "integrity": "sha512-d4OwmobpP+6+SvuAxW1RzAY95Pv87Gu+0GjtErzFOUXo+n0FGcwxKvzhswCsXKxsgnAr3bU2eJ2u+GXQAutkCQ==", + "version": "5.62.3", + "resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.62.3.tgz", + "integrity": "sha512-y2zDNKuhgiuMgsKkqd4AcsLIBiCfEO8U11AdrtAUihmLbRNztPrlcZqx2lH1GacZsx+y1qRRbCcJLYTtF1vKsw==", "dependencies": { - "@tanstack/query-core": "5.52.2" + "@tanstack/query-core": "5.62.3" }, "funding": { "type": "github", @@ -2536,11 +2823,11 @@ } }, "node_modules/@tanstack/react-table": { - "version": "8.19.3", - "resolved": "https://registry.npmjs.org/@tanstack/react-table/-/react-table-8.19.3.tgz", - "integrity": "sha512-MtgPZc4y+cCRtU16y1vh1myuyZ2OdkWgMEBzyjYsoMWMicKZGZvcDnub3Zwb6XF2pj9iRMvm1SO1n57lS0vXLw==", + "version": "8.20.5", + "resolved": "https://registry.npmjs.org/@tanstack/react-table/-/react-table-8.20.5.tgz", + "integrity": "sha512-WEHopKw3znbUZ61s9i0+i9g8drmDo6asTWbrQh8Us63DAk/M0FkmIqERew6P71HI75ksZ2Pxyuf4vvKh9rAkiA==", "dependencies": { - "@tanstack/table-core": "8.19.3" + "@tanstack/table-core": "8.20.5" }, "engines": { "node": ">=12" @@ -2555,11 +2842,11 @@ } }, "node_modules/@tanstack/react-virtual": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.8.3.tgz", - "integrity": "sha512-9ICwbDUUzN99CJIGc373i8NLoj6zFTKI2Hlcmo0+lCSAhPQ5mxq4dGOMKmLYoEFyHcGQ64Bd6ZVbnPpM6lNK5w==", + "version": "3.10.6", + "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.10.6.tgz", + "integrity": "sha512-xaSy6uUxB92O8mngHZ6CvbhGuqxQ5lIZWCBy+FjhrbHmOwc6BnOnKkYm2FsB1/BpKw/+FVctlMbEtI+F6I1aJg==", "dependencies": { - "@tanstack/virtual-core": "3.8.3" + "@tanstack/virtual-core": "3.10.6" }, "funding": { "type": "github", @@ -2571,9 +2858,9 @@ } }, "node_modules/@tanstack/table-core": { - "version": "8.19.3", - "resolved": "https://registry.npmjs.org/@tanstack/table-core/-/table-core-8.19.3.tgz", - "integrity": "sha512-IqREj9ADoml9zCAouIG/5kCGoyIxPFdqdyoxis9FisXFi5vT+iYfEfLosq4xkU/iDbMcEuAj+X8dWRLvKYDNoQ==", + "version": "8.20.5", + "resolved": "https://registry.npmjs.org/@tanstack/table-core/-/table-core-8.20.5.tgz", + "integrity": "sha512-P9dF7XbibHph2PFRz8gfBKEXEY/HJPOhym8CHmjF8y3q5mWpKx9xtZapXQUWCgkqvsK0R46Azuz+VaxD4Xl+Tg==", "engines": { "node": ">=12" }, @@ -2583,9 +2870,9 @@ } }, "node_modules/@tanstack/virtual-core": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.8.3.tgz", - "integrity": "sha512-vd2A2TnM5lbnWZnHi9B+L2gPtkSeOtJOAw358JqokIH1+v2J7vUAzFVPwB/wrye12RFOurffXu33plm4uQ+JBQ==", + "version": "3.10.6", + "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.10.6.tgz", + "integrity": "sha512-1giLc4dzgEKLMx5pgKjL6HlG5fjZMgCjzlKAlpr7yoUtetVPELgER1NtephAI910nMwfPTHNyWKSFmJdHkz2Cw==", "funding": { "type": "github", "url": "https://github.com/sponsors/tannerlinsley" @@ -2722,9 +3009,9 @@ } }, "node_modules/@testing-library/jest-dom": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.5.0.tgz", - "integrity": "sha512-xGGHpBXYSHUUr6XsKBfs85TWlYKpTc37cSBBVrXcib2MkHLboWlkClhWF37JKlDb9KEq3dHs+f2xR7XJEWGBxA==", + "version": "6.6.3", + "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.6.3.tgz", + "integrity": "sha512-IteBhl4XqYNkM54f4ejhLRJiZNqcSCoXUOG2CPK7qbD322KjQozM4kHQOfkG2oln9b9HTYqs+Sae8vBATubxxA==", "dev": true, "dependencies": { "@adobe/css-tools": "^4.4.0", @@ -2868,9 +3155,9 @@ } }, "node_modules/@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", "dev": true }, "node_modules/@types/json-schema": { @@ -2892,12 +3179,12 @@ "dev": true }, "node_modules/@types/material-ui": { - "version": "0.21.17", - "resolved": "https://registry.npmjs.org/@types/material-ui/-/material-ui-0.21.17.tgz", - "integrity": "sha512-3iyPhFkqI856UBWRxaO7ZZDpOtWM3XPl5gdKKkVBPn3TqNBdgDuFFhHx8BFLL85o5oYy5Y/SX5s0bs7a2VdLTw==", + "version": "0.21.18", + "resolved": "https://registry.npmjs.org/@types/material-ui/-/material-ui-0.21.18.tgz", + "integrity": "sha512-wGyYlCJaznt0C87Xnqae7v3imh57gsomQvzozsHhZKJHH4QG+i0qE4/h6D4igpXEXr4ooscgclg+O2RIKOP84Q==", "dev": true, "dependencies": { - "@types/react": "*", + "@types/react": "^18", "@types/react-addons-linked-state-mixin": "*" } }, @@ -2907,19 +3194,10 @@ "integrity": "sha512-/i42wjYNgE6wf0j2bcTX6kuowmdL/6PE4IVitMpm2eYKBUuYCprdcWVK+xEF0gcV6ufMCRhtxmReGfc6hIK7Jw==", "dev": true }, - "node_modules/@types/mute-stream": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/@types/mute-stream/-/mute-stream-0.0.4.tgz", - "integrity": "sha512-CPM9nzrCPPJHQNA9keH9CVkVI+WR5kMa+7XEs5jcGQ0VoAGnLv242w8lIVgwAEfmE4oufJRaTc9PNLQl0ioAow==", - "dev": true, - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/node": { - "version": "20.16.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.2.tgz", - "integrity": "sha512-91s/n4qUPV/wg8eE9KHYW1kouTfDk2FPGjXbBMfRWP/2vg1rCXNQL1OCabwGs0XSdukuK+MwCDXE30QpSeMUhQ==", + "version": "20.17.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.9.tgz", + "integrity": "sha512-0JOXkRyLanfGPE2QRCwgxhzlBAvaRdCNMcvbd7jFfpmD4eEXll7LRwy5ymJmyeZqk7Nh7eD2LeUyQ68BbndmXw==", "dev": true, "dependencies": { "undici-types": "~6.19.2" @@ -2942,9 +3220,9 @@ "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" }, "node_modules/@types/react": { - "version": "18.3.4", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.4.tgz", - "integrity": "sha512-J7W30FTdfCxDDjmfRM+/JqLHBIyl7xUIp9kwK637FGmY7+mkSFSe6L4jpZzhj5QMfLssSDP4/i75AKkrdC7/Jw==", + "version": "18.3.14", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.14.tgz", + "integrity": "sha512-NzahNKvjNhVjuPBQ+2G7WlxstQ+47kXZNHlUvFakDViuIEfGY926GqhMueQFZ7woG+sPiQKlF36XfrIUVSUfFg==", "dependencies": { "@types/prop-types": "*", "csstype": "^3.0.2" @@ -2960,12 +3238,12 @@ } }, "node_modules/@types/react-dom": { - "version": "18.3.0", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.0.tgz", - "integrity": "sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==", + "version": "18.3.2", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.2.tgz", + "integrity": "sha512-Fqp+rcvem9wEnGr3RY8dYNvSQ8PoLqjZ9HLgaPUOjJJD120uDyOxOjc/39M4Kddp9JQCxpGQbnhVQF0C0ncYVg==", "dev": true, "dependencies": { - "@types/react": "*" + "@types/react": "^18" } }, "node_modules/@types/react-modal": { @@ -3004,15 +3282,9 @@ "dev": true }, "node_modules/@types/validator": { - "version": "13.12.1", - "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.12.1.tgz", - "integrity": "sha512-w0URwf7BQb0rD/EuiG12KP0bailHKHP5YVviJG9zw3ykAokL0TuxU2TUqMB7EwZ59bDHYdeTIvjI5m0S7qHfOA==", - "dev": true - }, - "node_modules/@types/wrap-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/wrap-ansi/-/wrap-ansi-3.0.0.tgz", - "integrity": "sha512-ltIpx+kM7g/MLRZfkbL7EsCEjfzCcScLpkg37eXEtx5kmrAKBkTJwd1GIAjDSL8wTpM6Hzn5YO4pSb91BEwu1g==", + "version": "13.12.2", + "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.12.2.tgz", + "integrity": "sha512-6SlHBzUW8Jhf3liqrGGXyTJSIFe4nqlJ5A5KaMZ2l/vbM3Wh3KSybots/wfWVzNLK4D1NZluDlSQIbIEPx6oyA==", "dev": true }, "node_modules/@typescript-eslint/eslint-plugin": { @@ -3255,15 +3527,15 @@ "dev": true }, "node_modules/@vitejs/plugin-react-swc": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-react-swc/-/plugin-react-swc-3.7.0.tgz", - "integrity": "sha512-yrknSb3Dci6svCd/qhHqhFPDSw0QtjumcqdKMoNNzmOl5lMXTTiqzjWtG4Qask2HdvvzaNgSunbQGet8/GrKdA==", + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react-swc/-/plugin-react-swc-3.7.2.tgz", + "integrity": "sha512-y0byko2b2tSVVf5Gpng1eEhX1OvPC7x8yns1Fx8jDzlJp4LS6CMkCPfLw47cjyoMrshQDoQw4qcgjsU9VvlCew==", "dev": true, "dependencies": { - "@swc/core": "^1.5.7" + "@swc/core": "^1.7.26" }, "peerDependencies": { - "vite": "^4 || ^5" + "vite": "^4 || ^5 || ^6" } }, "node_modules/@vitest/coverage-v8": { @@ -3503,18 +3775,6 @@ "node": ">=4" } }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -3522,12 +3782,12 @@ "dev": true }, "node_modules/aria-query": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz", - "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz", + "integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==", "dev": true, - "dependencies": { - "dequal": "^2.0.3" + "engines": { + "node": ">= 0.4" } }, "node_modules/array-buffer-byte-length": { @@ -3596,16 +3856,17 @@ } }, "node_modules/array.prototype.findlastindex": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz", - "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", + "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.2.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -3770,9 +4031,9 @@ } }, "node_modules/axios": { - "version": "1.7.5", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.5.tgz", - "integrity": "sha512-fZu86yCo+svH3uqJ/yTdQ0QHpQu5oL+/QE+QPSv6BZSkDAoky9vytxp7u5qk83OJFS3kEBcesWni9WTZAv3tSw==", + "version": "1.7.9", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.9.tgz", + "integrity": "sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==", "dependencies": { "follow-redirects": "^1.15.6", "form-data": "^4.0.0", @@ -3780,12 +4041,12 @@ } }, "node_modules/axobject-query": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.1.1.tgz", - "integrity": "sha512-goKlv8DZrK9hUh975fnHzhNIO4jUnFCfv/dszV5VwUGDFjI6vQ2VwoyjYjYNEbBE8AH87TduWP5uyDR1D+Iteg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", + "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", "dev": true, - "dependencies": { - "deep-equal": "^2.0.5" + "engines": { + "node": ">= 0.4" } }, "node_modules/babel-plugin-macros": { @@ -3808,14 +4069,6 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "engines": { - "node": ">=8" - } - }, "node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -3830,6 +4083,7 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "devOptional": true, "dependencies": { "fill-range": "^7.1.1" }, @@ -3998,52 +4252,17 @@ } }, "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/chokidar/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz", + "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==", "dependencies": { - "is-glob": "^4.0.1" + "readdirp": "^4.0.1" }, "engines": { - "node": ">= 6" - } - }, - "node_modules/cli-spinners": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", - "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", - "dev": true, - "engines": { - "node": ">=6" + "node": ">= 14.16.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://paulmillr.com/funding/" } }, "node_modules/cli-width": { @@ -4108,9 +4327,9 @@ "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" }, "node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", "dev": true, "engines": { "node": ">= 0.6" @@ -4132,9 +4351,9 @@ } }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "dependencies": { "path-key": "^3.1.0", @@ -4398,6 +4617,18 @@ "node": ">=6" } }, + "node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "optional": true, + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" + } + }, "node_modules/diff-sequences": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", @@ -4590,9 +4821,9 @@ } }, "node_modules/es-iterator-helpers": { - "version": "1.0.19", - "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.19.tgz", - "integrity": "sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.0.tgz", + "integrity": "sha512-tpxqxncxnpw3c93u8n3VOzACmRFoVmWJqbWXvX/JfKbkhBw1oslgPrUfeSt2psuqyEJFD6N/9lg5i7bsKpoq+Q==", "dev": true, "dependencies": { "call-bind": "^1.0.7", @@ -4602,12 +4833,13 @@ "es-set-tostringtag": "^2.0.3", "function-bind": "^1.1.2", "get-intrinsic": "^1.2.4", - "globalthis": "^1.0.3", + "globalthis": "^1.0.4", + "gopd": "^1.0.1", "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.2", + "iterator.prototype": "^1.1.3", "safe-array-concat": "^1.1.2" }, "engines": { @@ -4812,9 +5044,9 @@ } }, "node_modules/eslint-module-utils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", - "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz", + "integrity": "sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==", "dev": true, "dependencies": { "debug": "^3.2.7" @@ -4838,34 +5070,36 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.29.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", - "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", + "version": "2.31.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz", + "integrity": "sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==", "dev": true, "dependencies": { - "array-includes": "^3.1.7", - "array.prototype.findlastindex": "^1.2.3", + "@rtsao/scc": "^1.1.0", + "array-includes": "^3.1.8", + "array.prototype.findlastindex": "^1.2.5", "array.prototype.flat": "^1.3.2", "array.prototype.flatmap": "^1.3.2", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.8.0", - "hasown": "^2.0.0", - "is-core-module": "^2.13.1", + "eslint-module-utils": "^2.12.0", + "hasown": "^2.0.2", + "is-core-module": "^2.15.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", - "object.fromentries": "^2.0.7", - "object.groupby": "^1.0.1", - "object.values": "^1.1.7", + "object.fromentries": "^2.0.8", + "object.groupby": "^1.0.3", + "object.values": "^1.2.0", "semver": "^6.3.1", + "string.prototype.trimend": "^1.0.8", "tsconfig-paths": "^3.15.0" }, "engines": { "node": ">=4" }, "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" } }, "node_modules/eslint-plugin-import/node_modules/debug": { @@ -4890,42 +5124,32 @@ } }, "node_modules/eslint-plugin-jsx-a11y": { - "version": "6.9.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.9.0.tgz", - "integrity": "sha512-nOFOCaJG2pYqORjK19lqPqxMO/JpvdCZdPtNdxY3kvom3jTvkAbOvQvD8wuD0G8BYR0IGAGYDlzqWJOh/ybn2g==", + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.2.tgz", + "integrity": "sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==", "dev": true, "dependencies": { - "aria-query": "~5.1.3", + "aria-query": "^5.3.2", "array-includes": "^3.1.8", "array.prototype.flatmap": "^1.3.2", "ast-types-flow": "^0.0.8", - "axe-core": "^4.9.1", - "axobject-query": "~3.1.1", + "axe-core": "^4.10.0", + "axobject-query": "^4.1.0", "damerau-levenshtein": "^1.0.8", "emoji-regex": "^9.2.2", - "es-iterator-helpers": "^1.0.19", "hasown": "^2.0.2", "jsx-ast-utils": "^3.3.5", "language-tags": "^1.0.9", "minimatch": "^3.1.2", "object.fromentries": "^2.0.8", "safe-regex-test": "^1.0.3", - "string.prototype.includes": "^2.0.0" + "string.prototype.includes": "^2.0.1" }, "engines": { "node": ">=4.0" }, "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" - } - }, - "node_modules/eslint-plugin-jsx-a11y/node_modules/aria-query": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", - "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==", - "dev": true, - "dependencies": { - "deep-equal": "^2.0.5" + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9" } }, "node_modules/eslint-plugin-prettier": { @@ -4959,9 +5183,9 @@ } }, "node_modules/eslint-plugin-react": { - "version": "7.35.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.35.0.tgz", - "integrity": "sha512-v501SSMOWv8gerHkk+IIQBkcGRGrO2nfybfj5pLxuJNFTPxxA3PSryhXTK+9pNbtkggheDdsC0E9Q8CuPk6JKA==", + "version": "7.37.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.2.tgz", + "integrity": "sha512-EsTAnj9fLVr/GZleBLFbj/sSuXeWmp1eXIN60ceYnZveqEaUCyW4X+Vh4WTdUhCkW4xutXYqTXCUSyqD4rB75w==", "dev": true, "dependencies": { "array-includes": "^3.1.8", @@ -4969,7 +5193,7 @@ "array.prototype.flatmap": "^1.3.2", "array.prototype.tosorted": "^1.1.4", "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.0.19", + "es-iterator-helpers": "^1.1.0", "estraverse": "^5.3.0", "hasown": "^2.0.2", "jsx-ast-utils": "^2.4.1 || ^3.0.0", @@ -5319,30 +5543,6 @@ "reusify": "^1.0.4" } }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/figures/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } - }, "node_modules/file-entry-cache": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", @@ -5359,6 +5559,7 @@ "version": "7.1.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "devOptional": true, "dependencies": { "to-regex-range": "^5.0.1" }, @@ -5470,6 +5671,7 @@ "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, "hasInstallScript": true, "optional": true, "os": [ @@ -5631,12 +5833,13 @@ } }, "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", "dev": true, "dependencies": { - "define-properties": "^1.1.3" + "define-properties": "^1.2.1", + "gopd": "^1.0.1" }, "engines": { "node": ">= 0.4" @@ -5886,9 +6089,9 @@ } }, "node_modules/immutable": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.4.tgz", - "integrity": "sha512-WDxL3Hheb1JkRN3sQkyujNlL/xRjAo3rJtaU5xeufUauG66JdMr32bLj4gF+vWl84DIA3Zxw7tiAjneYzRRw+w==" + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.0.3.tgz", + "integrity": "sha512-P8IdPQHq3lA1xVeBRi5VPqUm5HDgKnx0Ru51wZz5mjxHr5n3RWhjIpOFU7ybkUxfB+5IToy+OLaHYDBIWsv+uw==" }, "node_modules/import-fresh": { "version": "3.3.0", @@ -6017,17 +6220,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/is-boolean-object": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", @@ -6063,11 +6255,14 @@ } }, "node_modules/is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", "dependencies": { - "hasown": "^2.0.0" + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -6107,6 +6302,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "devOptional": true, "engines": { "node": ">=0.10.0" } @@ -6151,6 +6347,7 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "devOptional": true, "dependencies": { "is-extglob": "^2.1.1" }, @@ -6192,6 +6389,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "devOptional": true, "engines": { "node": ">=0.12.0" } @@ -6450,9 +6648,9 @@ } }, "node_modules/iterator.prototype": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz", - "integrity": "sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.3.tgz", + "integrity": "sha512-FW5iMbeQ6rBGm/oKgzq2aW4KvAGpxPzYES8N4g4xNXUKpL1mclMvOe+76AcLDTvD+Ze+sOpVhgdAQEKF4L9iGQ==", "dev": true, "dependencies": { "define-properties": "^1.2.1", @@ -6460,6 +6658,9 @@ "has-symbols": "^1.0.3", "reflect.getprototypeof": "^1.0.4", "set-function-name": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" } }, "node_modules/jest-canvas-mock": { @@ -6844,13 +7045,13 @@ "dev": true }, "node_modules/material-react-table": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/material-react-table/-/material-react-table-2.13.1.tgz", - "integrity": "sha512-3iWwCa24ogxwllP4+W11euR/GV6f5wQE5FEilJ72/H3hDYHgsN+XehANytaG0G7/qy/OWYE7oXkcsRUU35I/iA==", + "version": "2.13.3", + "resolved": "https://registry.npmjs.org/material-react-table/-/material-react-table-2.13.3.tgz", + "integrity": "sha512-xeyAEG6UYG3qgBIo17epAP5zsWT1pH0uCEkaUxvhki9sGcP35OqfOMSZJNhISvmqEqXKYHdqKbZI6iOwsg1sYA==", "dependencies": { - "@tanstack/match-sorter-utils": "8.15.1", - "@tanstack/react-table": "8.19.3", - "@tanstack/react-virtual": "3.8.3", + "@tanstack/match-sorter-utils": "8.19.4", + "@tanstack/react-table": "8.20.5", + "@tanstack/react-virtual": "3.10.6", "highlight-words": "1.2.2" }, "engines": { @@ -6900,7 +7101,7 @@ "version": "4.0.8", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "dev": true, + "devOptional": true, "dependencies": { "braces": "^3.0.3", "picomatch": "^2.3.1" @@ -6992,27 +7193,29 @@ "dev": true }, "node_modules/msw": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/msw/-/msw-2.4.1.tgz", - "integrity": "sha512-HXcoQPzYTwEmVk+BGIcRa0vLabBT+J20SSSeYh/QfajaK5ceA6dlD4ZZjfz2dqGEq4vRNCPLP6eXsB94KllPFg==", + "version": "2.6.8", + "resolved": "https://registry.npmjs.org/msw/-/msw-2.6.8.tgz", + "integrity": "sha512-nxXxnH6WALZ9a7rsQp4HU2AaD4iGAiouMmE/MY4al7pXTibgA6OZOuKhmN2WBIM6w9qMKwRtX8p2iOb45B2M/Q==", "dev": true, "hasInstallScript": true, "dependencies": { - "@bundled-es-modules/cookie": "^2.0.0", + "@bundled-es-modules/cookie": "^2.0.1", "@bundled-es-modules/statuses": "^1.0.1", "@bundled-es-modules/tough-cookie": "^0.1.6", - "@inquirer/confirm": "^3.0.0", - "@mswjs/interceptors": "^0.29.0", + "@inquirer/confirm": "^5.0.0", + "@mswjs/interceptors": "^0.37.0", + "@open-draft/deferred-promise": "^2.2.0", "@open-draft/until": "^2.1.0", "@types/cookie": "^0.6.0", "@types/statuses": "^2.0.4", "chalk": "^4.1.2", + "graphql": "^16.8.1", "headers-polyfill": "^4.0.2", "is-node-process": "^1.2.0", - "outvariant": "^1.4.2", - "path-to-regexp": "^6.2.0", + "outvariant": "^1.4.3", + "path-to-regexp": "^6.3.0", "strict-event-emitter": "^0.5.1", - "type-fest": "^4.9.0", + "type-fest": "^4.26.1", "yargs": "^17.7.2" }, "bin": { @@ -7025,13 +7228,9 @@ "url": "https://github.com/sponsors/mswjs" }, "peerDependencies": { - "graphql": ">= 16.8.x", - "typescript": ">= 4.7.x" + "typescript": ">= 4.8.x" }, "peerDependenciesMeta": { - "graphql": { - "optional": true - }, "typescript": { "optional": true } @@ -7122,9 +7321,9 @@ } }, "node_modules/msw/node_modules/type-fest": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.10.1.tgz", - "integrity": "sha512-7ZnJYTp6uc04uYRISWtiX3DSKB/fxNQT0B5o1OUeCqiQiwF+JC9+rJiZIDrPrNCLLuTqyQmh4VdQqh/ZOkv9MQ==", + "version": "4.27.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.27.0.tgz", + "integrity": "sha512-3IMSWgP7C5KSQqmo1wjhKrwsvXAtF33jO3QY+Uy++ia7hqvgSK6iXbbg5PbDBc1P2ZbNEDgejOrN4YooXvhwCw==", "dev": true, "engines": { "node": ">=16" @@ -7185,12 +7384,12 @@ } }, "node_modules/mute-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz", - "integrity": "sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-2.0.0.tgz", + "integrity": "sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==", "dev": true, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^18.17.0 || >=20.5.0" } }, "node_modules/nanoid": { @@ -7227,20 +7426,18 @@ "tslib": "^2.0.3" } }, + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", + "optional": true + }, "node_modules/node-releases": { "version": "2.0.18", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", "dev": true }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/normalize-range": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", @@ -7376,15 +7573,17 @@ } }, "node_modules/object.groupby": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz", - "integrity": "sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", + "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2" + }, + "engines": { + "node": ">= 0.4" } }, "node_modules/object.values": { @@ -7405,9 +7604,9 @@ } }, "node_modules/oidc-client-ts": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/oidc-client-ts/-/oidc-client-ts-3.0.1.tgz", - "integrity": "sha512-xX8unZNtmtw3sOz4FPSqDhkLFnxCDsdo2qhFEH2opgWnF/iXMFoYdBQzkwCxAZVgt3FT3DnuBY3k80EZHT0RYg==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/oidc-client-ts/-/oidc-client-ts-3.1.0.tgz", + "integrity": "sha512-IDopEXjiwjkmJLYZo6BTlvwOtnlSniWZkKZoXforC/oLZHC9wkIxd25Kwtmo5yKFMMVcsp3JY6bhcNJqdYk8+g==", "dependencies": { "jwt-decode": "^4.0.0" }, @@ -7425,10 +7624,9 @@ } }, "node_modules/onroute-policy-engine": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/onroute-policy-engine/-/onroute-policy-engine-0.4.6.tgz", - "integrity": "sha512-BmuZu7hP6tjreva2orZPUM6WSRxoZjheYrxQBjRBEC/oHaVXk1wUIANP0zDQAdAj2Q/Tb6yB3q+gWinofkYudQ==", - "license": "Apache-2.0", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/onroute-policy-engine/-/onroute-policy-engine-0.7.1.tgz", + "integrity": "sha512-6kgEQp4/JKmU5DJzeh+Kplth4g15DuRR37/9c4yMqgCKs1Y0rEzfbsnm4z4odNia58c/9zCNQyupqIOuT9/9fQ==", "dependencies": { "dayjs": "^1.11.10", "json-rules-engine": "^6.5.0" @@ -7452,9 +7650,9 @@ } }, "node_modules/outvariant": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/outvariant/-/outvariant-1.4.2.tgz", - "integrity": "sha512-Ou3dJ6bA/UJ5GVHxah4LnqDwZRwAmWxrG3wtrHrbGnP4RnLCtA64A4F+ae7Y8ww660JaddSoArUR5HjipWSHAQ==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/outvariant/-/outvariant-1.4.3.tgz", + "integrity": "sha512-+Sl2UErvtsoajRDKCE5/dBz4DIvHXQQnAxtQTF04OJxY0+DyZXSo5P5Bb7XYWOh81syohlYL24hbDwxedPUJCA==", "dev": true }, "node_modules/p-limit": { @@ -7560,9 +7758,9 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-to-regexp": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz", - "integrity": "sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", + "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", "dev": true }, "node_modules/path-type": { @@ -7589,15 +7787,16 @@ } }, "node_modules/picocolors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", - "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", "dev": true }, "node_modules/picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "devOptional": true, "engines": { "node": ">=8.6" }, @@ -7635,9 +7834,9 @@ } }, "node_modules/postcss": { - "version": "8.4.41", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.41.tgz", - "integrity": "sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==", + "version": "8.4.49", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz", + "integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==", "dev": true, "funding": [ { @@ -7655,8 +7854,8 @@ ], "dependencies": { "nanoid": "^3.3.7", - "picocolors": "^1.0.1", - "source-map-js": "^1.2.0" + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" }, "engines": { "node": "^10 || ^12 || >=14" @@ -7678,9 +7877,9 @@ } }, "node_modules/prettier": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz", - "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==", + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.4.2.tgz", + "integrity": "sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" @@ -7815,9 +8014,9 @@ } }, "node_modules/react-error-boundary": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/react-error-boundary/-/react-error-boundary-4.0.13.tgz", - "integrity": "sha512-b6PwbdSv8XeOSYvjt8LpgpKrZ0yGdtZokYwkwV2wlcZbxgopHX/hgPl5VgpnoVOWd868n1hktM8Qm4b+02MiLQ==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/react-error-boundary/-/react-error-boundary-4.1.2.tgz", + "integrity": "sha512-GQDxZ5Jd+Aq/qUxbCm1UtzmL/s++V7zKgE8yMktJiCQXCCFZnMZh9ng+6/Ne6PjNSXH0L9CjeOEREfRnq6Duag==", "dependencies": { "@babel/runtime": "^7.12.5" }, @@ -7869,23 +8068,23 @@ } }, "node_modules/react-oidc-context": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/react-oidc-context/-/react-oidc-context-3.1.0.tgz", - "integrity": "sha512-ceQztvDfdl28mbr0So31XF/tCJamyF1+nm4AQNIE/nub+Xs9PLtDqLy/+75Yx1ahI0/n3nsq0R2qcP0R2Laa3Q==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/react-oidc-context/-/react-oidc-context-3.2.0.tgz", + "integrity": "sha512-ZLaCRLWV84Cn9pFdsatmblqxLMv0np69GWVXq9RWGqAjppdOGXNIbIxWMByIio0oSCVUwdeqwYRnJme0tjqd8A==", "engines": { "node": ">=18" }, "peerDependencies": { - "oidc-client-ts": "^3.0.0", + "oidc-client-ts": "^3.1.0", "react": ">=16.8.0" } }, "node_modules/react-router": { - "version": "6.26.1", - "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.26.1.tgz", - "integrity": "sha512-kIwJveZNwp7teQRI5QmwWo39A5bXRyqpH0COKKmPnyD2vBvDwgFXSqDUYtt1h+FEyfnE8eXr7oe0MxRzVwCcvQ==", + "version": "6.28.0", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.28.0.tgz", + "integrity": "sha512-HrYdIFqdrnhDw0PqG/AKjAqEqM7AvxCz0DQ4h2W8k6nqmc5uRBYDag0SBxx9iYz5G8gnuNVLzUe13wl9eAsXXg==", "dependencies": { - "@remix-run/router": "1.19.1" + "@remix-run/router": "1.21.0" }, "engines": { "node": ">=14.0.0" @@ -7895,12 +8094,12 @@ } }, "node_modules/react-router-dom": { - "version": "6.26.1", - "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.26.1.tgz", - "integrity": "sha512-veut7m41S1fLql4pLhxeSW3jlqs+4MtjRLj0xvuCEXsxusJCbs6I8yn9BxzzDX2XDgafrccY6hwjmd/bL54tFw==", + "version": "6.28.0", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.28.0.tgz", + "integrity": "sha512-kQ7Unsl5YdyOltsPGl31zOjLrDv+m2VcIEcIHqYYD3Lp0UppLjrzcfJqDJwXxFw3TH/yvapbnUvPlAj7Kx5nbg==", "dependencies": { - "@remix-run/router": "1.19.1", - "react-router": "6.26.1" + "@remix-run/router": "1.21.0", + "react-router": "6.28.0" }, "engines": { "node": ">=14.0.0" @@ -7935,14 +8134,15 @@ } }, "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dependencies": { - "picomatch": "^2.2.1" - }, + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", + "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==", "engines": { - "node": ">=8.10.0" + "node": ">= 14.16.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" } }, "node_modules/redent": { @@ -8067,12 +8267,12 @@ } }, "node_modules/rollup": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.21.0.tgz", - "integrity": "sha512-vo+S/lfA2lMS7rZ2Qoubi6I5hwZwzXeUIctILZLbHI+laNtvhhOIon2S1JksA5UEDQ7l3vberd0fxK44lTYjbQ==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.27.3.tgz", + "integrity": "sha512-SLsCOnlmGt9VoZ9Ek8yBK8tAdmPHeppkw+Xa7yDlCEhDTvwYei03JlWo1fdc7YTfLZ4tD8riJCUyAgTbszk1fQ==", "dev": true, "dependencies": { - "@types/estree": "1.0.5" + "@types/estree": "1.0.6" }, "bin": { "rollup": "dist/bin/rollup" @@ -8082,22 +8282,24 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.21.0", - "@rollup/rollup-android-arm64": "4.21.0", - "@rollup/rollup-darwin-arm64": "4.21.0", - "@rollup/rollup-darwin-x64": "4.21.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.21.0", - "@rollup/rollup-linux-arm-musleabihf": "4.21.0", - "@rollup/rollup-linux-arm64-gnu": "4.21.0", - "@rollup/rollup-linux-arm64-musl": "4.21.0", - "@rollup/rollup-linux-powerpc64le-gnu": "4.21.0", - "@rollup/rollup-linux-riscv64-gnu": "4.21.0", - "@rollup/rollup-linux-s390x-gnu": "4.21.0", - "@rollup/rollup-linux-x64-gnu": "4.21.0", - "@rollup/rollup-linux-x64-musl": "4.21.0", - "@rollup/rollup-win32-arm64-msvc": "4.21.0", - "@rollup/rollup-win32-ia32-msvc": "4.21.0", - "@rollup/rollup-win32-x64-msvc": "4.21.0", + "@rollup/rollup-android-arm-eabi": "4.27.3", + "@rollup/rollup-android-arm64": "4.27.3", + "@rollup/rollup-darwin-arm64": "4.27.3", + "@rollup/rollup-darwin-x64": "4.27.3", + "@rollup/rollup-freebsd-arm64": "4.27.3", + "@rollup/rollup-freebsd-x64": "4.27.3", + "@rollup/rollup-linux-arm-gnueabihf": "4.27.3", + "@rollup/rollup-linux-arm-musleabihf": "4.27.3", + "@rollup/rollup-linux-arm64-gnu": "4.27.3", + "@rollup/rollup-linux-arm64-musl": "4.27.3", + "@rollup/rollup-linux-powerpc64le-gnu": "4.27.3", + "@rollup/rollup-linux-riscv64-gnu": "4.27.3", + "@rollup/rollup-linux-s390x-gnu": "4.27.3", + "@rollup/rollup-linux-x64-gnu": "4.27.3", + "@rollup/rollup-linux-x64-musl": "4.27.3", + "@rollup/rollup-win32-arm64-msvc": "4.27.3", + "@rollup/rollup-win32-ia32-msvc": "4.27.3", + "@rollup/rollup-win32-x64-msvc": "4.27.3", "fsevents": "~2.3.2" } }, @@ -8107,15 +8309,6 @@ "integrity": "sha512-APM0Gt1KoXBz0iIkkdB/kfvGOwC4UuJFeG/c+yV7wSc7q96cG/kJ0HiYCnzivD9SB53cLV1MlHFNfOuPaadYSw==", "dev": true }, - "node_modules/run-async": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-3.0.0.tgz", - "integrity": "sha512-540WwVDOMxA6dN6We19EcT9sc3hkXPw5mzRNGM3FkdN/vtE9NFvj5lFAPNwUDmJjXidm3v7TC1cTE7t17Ulm1Q==", - "dev": true, - "engines": { - "node": ">=0.12.0" - } - }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -8181,12 +8374,12 @@ "dev": true }, "node_modules/sass": { - "version": "1.77.8", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.77.8.tgz", - "integrity": "sha512-4UHg6prsrycW20fqLGPShtEvo/WyHRVRHwOP4DzkUrObWoWI05QBSfzU71TVB7PFaL104TwNaHpjlWXAZbQiNQ==", + "version": "1.82.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.82.0.tgz", + "integrity": "sha512-j4GMCTa8elGyN9A7x7bEglx0VgSpNUG4W4wNedQ33wSMdnkqQCT8HTwOaVSV4e6yQovcu/3Oc4coJP/l0xhL2Q==", "dependencies": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", + "chokidar": "^4.0.0", + "immutable": "^5.0.2", "source-map-js": ">=0.6.2 <2.0.0" }, "bin": { @@ -8194,6 +8387,9 @@ }, "engines": { "node": ">=14.0.0" + }, + "optionalDependencies": { + "@parcel/watcher": "^2.4.1" } }, "node_modules/saxes": { @@ -8342,9 +8538,9 @@ } }, "node_modules/source-map-js": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", - "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", "engines": { "node": ">=0.10.0" } @@ -8409,13 +8605,17 @@ "dev": true }, "node_modules/string.prototype.includes": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.0.tgz", - "integrity": "sha512-E34CkBgyeqNDcrbU76cDjL5JLcVrtSdYq0MEh/B10r17pRP4ciHLwTgnuLV8Ay6cgEMLkcBkFCKyFZ43YldYzg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz", + "integrity": "sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==", "dev": true, "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3" + }, + "engines": { + "node": ">= 0.4" } }, "node_modules/string.prototype.matchall": { @@ -8689,6 +8889,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "devOptional": true, "dependencies": { "is-number": "^7.0.0" }, @@ -8892,9 +9093,9 @@ } }, "node_modules/typescript": { - "version": "5.5.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", - "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz", + "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -9027,13 +9228,13 @@ } }, "node_modules/vite": { - "version": "5.4.2", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.2.tgz", - "integrity": "sha512-dDrQTRHp5C1fTFzcSaMxjk6vdpKvT+2/mIdE07Gw2ykehT49O0z/VHS3zZ8iV/Gh8BJJKHWOe5RjaNrW5xf/GA==", + "version": "5.4.11", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.11.tgz", + "integrity": "sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==", "dev": true, "dependencies": { "esbuild": "^0.21.3", - "postcss": "^8.4.41", + "postcss": "^8.4.43", "rollup": "^4.20.0" }, "bin": { @@ -9123,9 +9324,9 @@ } }, "node_modules/vite-plugin-eslint/node_modules/rollup": { - "version": "2.79.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz", - "integrity": "sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==", + "version": "2.79.2", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.2.tgz", + "integrity": "sha512-fS6iqSPZDs3dr/y7Od6y5nha8dW1YnbgtsyotCVvoFGKbERG++CVRFv1meyGDE1SNItQA8BrnCw7ScdAhRJ3XQ==", "dev": true, "bin": { "rollup": "dist/bin/rollup" @@ -9138,28 +9339,28 @@ } }, "node_modules/vite-plugin-svgr": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/vite-plugin-svgr/-/vite-plugin-svgr-4.2.0.tgz", - "integrity": "sha512-SC7+FfVtNQk7So0XMjrrtLAbEC8qjFPifyD7+fs/E6aaNdVde6umlVVh0QuwDLdOMu7vp5RiGFsB70nj5yo0XA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/vite-plugin-svgr/-/vite-plugin-svgr-4.3.0.tgz", + "integrity": "sha512-Jy9qLB2/PyWklpYy0xk0UU3TlU0t2UMpJXZvf+hWII1lAmRHrOUKi11Uw8N3rxoNk7atZNYO3pR3vI1f7oi+6w==", "dev": true, "dependencies": { - "@rollup/pluginutils": "^5.0.5", + "@rollup/pluginutils": "^5.1.3", "@svgr/core": "^8.1.0", "@svgr/plugin-jsx": "^8.1.0" }, "peerDependencies": { - "vite": "^2.6.0 || 3 || 4 || 5" + "vite": ">=2.6.0" } }, "node_modules/vite-plugin-svgr/node_modules/@rollup/pluginutils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.0.tgz", - "integrity": "sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.3.tgz", + "integrity": "sha512-Pnsb6f32CD2W3uCaLZIzDmeFyQ2b8UWMFI7xtwUezpcGBDVDW6y9XgAWIlARiGAo6eNF5FK5aQTr0LFyNyqq5A==", "dev": true, "dependencies": { "@types/estree": "^1.0.0", "estree-walker": "^2.0.2", - "picomatch": "^2.3.1" + "picomatch": "^4.0.2" }, "engines": { "node": ">=14.0.0" @@ -9173,6 +9374,18 @@ } } }, + "node_modules/vite-plugin-svgr/node_modules/picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/vite-tsconfig-paths": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-4.3.2.tgz", @@ -9563,7 +9776,19 @@ "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true, "engines": { - "node": ">=10" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/yoctocolors-cjs": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yoctocolors-cjs/-/yoctocolors-cjs-2.1.2.tgz", + "integrity": "sha512-cYVsTjKl8b+FrnidjibDWskAv7UKOfcwaVZdp/it9n1s9fU3IkgDbhdIRKCW4JDsAlECJY0ytoVPT3sK6kideA==", + "dev": true, + "engines": { + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -9837,12 +10062,12 @@ "dev": true }, "@bundled-es-modules/cookie": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@bundled-es-modules/cookie/-/cookie-2.0.0.tgz", - "integrity": "sha512-Or6YHg/kamKHpxULAdSqhGqnWFneIXu1NKvvfBBzKGwpVsYuFIQ5aBPHDnnoR3ghW1nvSkALd+EF9iMtY7Vjxw==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@bundled-es-modules/cookie/-/cookie-2.0.1.tgz", + "integrity": "sha512-8o+5fRPLNbjbdGRRmJj3h6Hh1AQJf2dk3qQ/5ZFb+PXkRNiSoMGGUKlsgLfrxneb72axVJyIYji64E2+nNfYyw==", "dev": true, "requires": { - "cookie": "^0.5.0" + "cookie": "^0.7.2" } }, "@bundled-es-modules/statuses": { @@ -9865,15 +10090,15 @@ } }, "@emotion/babel-plugin": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.12.0.tgz", - "integrity": "sha512-y2WQb+oP8Jqvvclh8Q55gLUyb7UFvgv7eJfsj7td5TToBrIUtPay2kMrZi4xjq9qw2vD0ZR5fSho0yqoFgX7Rw==", + "version": "11.13.5", + "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz", + "integrity": "sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==", "requires": { "@babel/helper-module-imports": "^7.16.7", "@babel/runtime": "^7.18.3", "@emotion/hash": "^0.9.2", "@emotion/memoize": "^0.9.0", - "@emotion/serialize": "^1.2.0", + "@emotion/serialize": "^1.3.3", "babel-plugin-macros": "^3.1.0", "convert-source-map": "^1.5.0", "escape-string-regexp": "^4.0.0", @@ -9883,13 +10108,13 @@ } }, "@emotion/cache": { - "version": "11.13.1", - "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.13.1.tgz", - "integrity": "sha512-iqouYkuEblRcXmylXIwwOodiEK5Ifl7JcX7o6V4jI3iW4mLXX3dmt5xwBtIkJiQEXFAI+pC8X0i67yiPkH9Ucw==", + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.14.0.tgz", + "integrity": "sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA==", "requires": { "@emotion/memoize": "^0.9.0", "@emotion/sheet": "^1.4.0", - "@emotion/utils": "^1.4.0", + "@emotion/utils": "^1.4.2", "@emotion/weak-memoize": "^0.4.0", "stylis": "4.2.0" } @@ -9913,29 +10138,29 @@ "integrity": "sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==" }, "@emotion/react": { - "version": "11.13.3", - "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.13.3.tgz", - "integrity": "sha512-lIsdU6JNrmYfJ5EbUCf4xW1ovy5wKQ2CkPRM4xogziOxH1nXxBSjpC9YqbFAP7circxMfYp+6x676BqWcEiixg==", + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.14.0.tgz", + "integrity": "sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA==", "requires": { "@babel/runtime": "^7.18.3", - "@emotion/babel-plugin": "^11.12.0", - "@emotion/cache": "^11.13.0", - "@emotion/serialize": "^1.3.1", - "@emotion/use-insertion-effect-with-fallbacks": "^1.1.0", - "@emotion/utils": "^1.4.0", + "@emotion/babel-plugin": "^11.13.5", + "@emotion/cache": "^11.14.0", + "@emotion/serialize": "^1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", + "@emotion/utils": "^1.4.2", "@emotion/weak-memoize": "^0.4.0", "hoist-non-react-statics": "^3.3.1" } }, "@emotion/serialize": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.3.1.tgz", - "integrity": "sha512-dEPNKzBPU+vFPGa+z3axPRn8XVDetYORmDC0wAiej+TNcOZE70ZMJa0X7JdeoM6q/nWTMZeLpN/fTnD9o8MQBA==", + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.3.3.tgz", + "integrity": "sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==", "requires": { "@emotion/hash": "^0.9.2", "@emotion/memoize": "^0.9.0", "@emotion/unitless": "^0.10.0", - "@emotion/utils": "^1.4.0", + "@emotion/utils": "^1.4.2", "csstype": "^3.0.2" } }, @@ -9945,16 +10170,16 @@ "integrity": "sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==" }, "@emotion/styled": { - "version": "11.13.0", - "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.13.0.tgz", - "integrity": "sha512-tkzkY7nQhW/zC4hztlwucpT8QEZ6eUzpXDRhww/Eej4tFfO0FxQYWRyg/c5CCXa4d/f174kqeXYjuQRnhzf6dA==", + "version": "11.14.0", + "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.14.0.tgz", + "integrity": "sha512-XxfOnXFffatap2IyCeJyNov3kiDQWoR08gPUQxvbL7fxKryGBKUZUkG6Hz48DZwVrJSVh9sJboyV1Ds4OW6SgA==", "requires": { "@babel/runtime": "^7.18.3", - "@emotion/babel-plugin": "^11.12.0", + "@emotion/babel-plugin": "^11.13.5", "@emotion/is-prop-valid": "^1.3.0", - "@emotion/serialize": "^1.3.0", - "@emotion/use-insertion-effect-with-fallbacks": "^1.1.0", - "@emotion/utils": "^1.4.0" + "@emotion/serialize": "^1.3.3", + "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", + "@emotion/utils": "^1.4.2" } }, "@emotion/unitless": { @@ -9963,15 +10188,15 @@ "integrity": "sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==" }, "@emotion/use-insertion-effect-with-fallbacks": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.1.0.tgz", - "integrity": "sha512-+wBOcIV5snwGgI2ya3u99D7/FJquOIniQT1IKyDsBmEgwvpxMNeS65Oib7OnE2d2aY+3BU4OiH+0Wchf8yk3Hw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.2.0.tgz", + "integrity": "sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg==", "requires": {} }, "@emotion/utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.4.0.tgz", - "integrity": "sha512-spEnrA1b6hDR/C68lC2M7m6ALPUHZC0lIY7jAS/B/9DuuO1ZP04eov8SMv/6fwRd8pzmsn2AuJEznRREWlQrlQ==" + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.4.2.tgz", + "integrity": "sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA==" }, "@emotion/weak-memoize": { "version": "0.4.0", @@ -10219,32 +10444,32 @@ "integrity": "sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q==" }, "@fortawesome/fontawesome-common-types": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.6.0.tgz", - "integrity": "sha512-xyX0X9mc0kyz9plIyryrRbl7ngsA9jz77mCZJsUkLl+ZKs0KWObgaEBoSgQiYWAsSmjz/yjl0F++Got0Mdp4Rw==" + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.7.1.tgz", + "integrity": "sha512-gbDz3TwRrIPT3i0cDfujhshnXO9z03IT1UKRIVi/VEjpNHtSBIP2o5XSm+e816FzzCFEzAxPw09Z13n20PaQJQ==" }, "@fortawesome/fontawesome-svg-core": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.6.0.tgz", - "integrity": "sha512-KHwPkCk6oRT4HADE7smhfsKudt9N/9lm6EJ5BVg0tD1yPA5hht837fB87F8pn15D8JfTqQOjhKTktwmLMiD7Kg==", + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.7.1.tgz", + "integrity": "sha512-8dBIHbfsKlCk2jHQ9PoRBg2Z+4TwyE3vZICSnoDlnsHA6SiMlTwfmW6yX0lHsRmWJugkeb92sA0hZdkXJhuz+g==", "requires": { - "@fortawesome/fontawesome-common-types": "6.6.0" + "@fortawesome/fontawesome-common-types": "6.7.1" } }, "@fortawesome/free-regular-svg-icons": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/@fortawesome/free-regular-svg-icons/-/free-regular-svg-icons-6.6.0.tgz", - "integrity": "sha512-Yv9hDzL4aI73BEwSEh20clrY8q/uLxawaQ98lekBx6t9dQKDHcDzzV1p2YtBGTtolYtNqcWdniOnhzB+JPnQEQ==", + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/@fortawesome/free-regular-svg-icons/-/free-regular-svg-icons-6.7.1.tgz", + "integrity": "sha512-e13cp+bAx716RZOTQ59DhqikAgETA9u1qTBHO3e3jMQQ+4H/N1NC1ZVeFYt1V0m+Th68BrEL1/X6XplISutbXg==", "requires": { - "@fortawesome/fontawesome-common-types": "6.6.0" + "@fortawesome/fontawesome-common-types": "6.7.1" } }, "@fortawesome/free-solid-svg-icons": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.6.0.tgz", - "integrity": "sha512-IYv/2skhEDFc2WGUcqvFJkeK39Q+HyPf5GHUrT/l2pKbtgEIv1al1TKd6qStR5OIwQdN1GZP54ci3y4mroJWjA==", + "version": "6.7.1", + "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.7.1.tgz", + "integrity": "sha512-BTKc0b0mgjWZ2UDKVgmwaE0qt0cZs6ITcDgjrti5f/ki7aF5zs+N91V6hitGo3TItCFtnKg6cUVGdTmBFICFRg==", "requires": { - "@fortawesome/fontawesome-common-types": "6.6.0" + "@fortawesome/fontawesome-common-types": "6.7.1" } }, "@fortawesome/react-fontawesome": { @@ -10303,35 +10528,30 @@ "dev": true }, "@inquirer/confirm": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-3.0.0.tgz", - "integrity": "sha512-LHeuYP1D8NmQra1eR4UqvZMXwxEdDXyElJmmZfU44xdNLL6+GcQBS0uE16vyfZVjH8c22p9e+DStROfE/hyHrg==", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-5.0.2.tgz", + "integrity": "sha512-KJLUHOaKnNCYzwVbryj3TNBxyZIrr56fR5N45v6K9IPrbT6B7DcudBMfylkV1A8PUdJE15mybkEQyp2/ZUpxUA==", "dev": true, "requires": { - "@inquirer/core": "^7.0.0", - "@inquirer/type": "^1.2.0" + "@inquirer/core": "^10.1.0", + "@inquirer/type": "^3.0.1" } }, "@inquirer/core": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-7.0.0.tgz", - "integrity": "sha512-g13W5yEt9r1sEVVriffJqQ8GWy94OnfxLCreNSOTw0HPVcszmc/If1KIf7YBmlwtX4klmvwpZHnQpl3N7VX2xA==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-10.1.0.tgz", + "integrity": "sha512-I+ETk2AL+yAVbvuKx5AJpQmoaWhpiTFOg/UJb7ZkMAK4blmtG8ATh5ct+T/8xNld0CZG/2UhtkdMwpgvld92XQ==", "dev": true, "requires": { - "@inquirer/type": "^1.2.0", - "@types/mute-stream": "^0.0.4", - "@types/node": "^20.11.16", - "@types/wrap-ansi": "^3.0.0", + "@inquirer/figures": "^1.0.8", + "@inquirer/type": "^3.0.1", "ansi-escapes": "^4.3.2", - "chalk": "^4.1.2", - "cli-spinners": "^2.9.2", "cli-width": "^4.1.0", - "figures": "^3.2.0", - "mute-stream": "^1.0.0", - "run-async": "^3.0.0", + "mute-stream": "^2.0.0", "signal-exit": "^4.1.0", "strip-ansi": "^6.0.1", - "wrap-ansi": "^6.2.0" + "wrap-ansi": "^6.2.0", + "yoctocolors-cjs": "^2.1.2" }, "dependencies": { "ansi-styles": { @@ -10343,16 +10563,6 @@ "color-convert": "^2.0.1" } }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -10368,21 +10578,6 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, "wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", @@ -10396,12 +10591,19 @@ } } }, - "@inquirer/type": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-1.2.0.tgz", - "integrity": "sha512-/vvkUkYhrjbm+RolU7V1aUFDydZVKNKqKHR5TsE+j5DXgXFwrsOPcoGUJ02K0O7q7O53CU2DOTMYCHeGZ25WHA==", + "@inquirer/figures": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/@inquirer/figures/-/figures-1.0.8.tgz", + "integrity": "sha512-tKd+jsmhq21AP1LhexC0pPwsCxEhGgAkg28byjJAd+xhmIs8LUX8JbUc3vBf3PhLxWiB5EvyBE5X7JSPAqMAqg==", "dev": true }, + "@inquirer/type": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-3.0.1.tgz", + "integrity": "sha512-+ksJMIy92sOAiAccGpcKZUc3bYO07cADnscIxHBknEm3uNts3movSmBofc1908BNy5edKscxYeAdaX1NXkHS6A==", + "dev": true, + "requires": {} + }, "@istanbuljs/schema": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", @@ -10457,9 +10659,9 @@ } }, "@mswjs/data": { - "version": "0.16.1", - "resolved": "https://registry.npmjs.org/@mswjs/data/-/data-0.16.1.tgz", - "integrity": "sha512-VhJvL/VmgAuU9/tDOcKcxHfNd+8nxYntZnrkaQEQPvZZnFwQQR9bzI1FTRROGxCHVoyfv9v84AEkl/7CIw4FAg==", + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@mswjs/data/-/data-0.16.2.tgz", + "integrity": "sha512-/C0d/PBcJyQJokUhcjO4HiZPc67hzllKlRtD1XELygl2t991/ATAAQJVcStn4YtVALsNodruzOHT0JIvgr0hnA==", "dev": true, "requires": { "@types/lodash": "^4.14.172", @@ -10487,16 +10689,16 @@ } }, "@mswjs/interceptors": { - "version": "0.29.1", - "resolved": "https://registry.npmjs.org/@mswjs/interceptors/-/interceptors-0.29.1.tgz", - "integrity": "sha512-3rDakgJZ77+RiQUuSK69t1F0m8BQKA8Vh5DCS5V0DWvNY67zob2JhhQrhCO0AKLGINTRSFd1tBaHcJTkhefoSw==", + "version": "0.37.1", + "resolved": "https://registry.npmjs.org/@mswjs/interceptors/-/interceptors-0.37.1.tgz", + "integrity": "sha512-SvE+tSpcX884RJrPCskXxoS965Ky/pYABDEhWW6oeSRhpUDLrS5nTvT5n1LLSDVDYvty4imVmXsy+3/ROVuknA==", "dev": true, "requires": { "@open-draft/deferred-promise": "^2.2.0", "@open-draft/logger": "^0.3.0", "@open-draft/until": "^2.0.0", "is-node-process": "^1.2.0", - "outvariant": "^1.2.1", + "outvariant": "^1.4.3", "strict-event-emitter": "^0.5.1" } }, @@ -10515,28 +10717,28 @@ } }, "@mui/core-downloads-tracker": { - "version": "5.16.7", - "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.16.7.tgz", - "integrity": "sha512-RtsCt4Geed2/v74sbihWzzRs+HsIQCfclHeORh5Ynu2fS4icIKozcSubwuG7vtzq2uW3fOR1zITSP84TNt2GoQ==" + "version": "5.16.9", + "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-5.16.9.tgz", + "integrity": "sha512-ue3j79XJ56+F6DlTtFTM+n//5AvNENOvl3MFruZZP5iZzz+hOq6WBwnr+YxiMlr+kvmMHuHxgOHFdPR8+mElDw==" }, "@mui/icons-material": { - "version": "5.16.7", - "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.16.7.tgz", - "integrity": "sha512-UrGwDJCXEszbDI7yV047BYU5A28eGJ79keTCP4cc74WyncuVrnurlmIRxaHL8YK+LI1Kzq+/JM52IAkNnv4u+Q==", + "version": "5.16.9", + "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-5.16.9.tgz", + "integrity": "sha512-nnOJIqan6FS6zEsLX3vf8LZ4vXpZjP5xfCFezeXmqfQConypCOZG4nangoVwKwROlas7b6/bqOdacFUb/HuM/g==", "requires": { "@babel/runtime": "^7.23.9" } }, "@mui/material": { - "version": "5.16.7", - "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.16.7.tgz", - "integrity": "sha512-cwwVQxBhK60OIOqZOVLFt55t01zmarKJiJUWbk0+8s/Ix5IaUzAShqlJchxsIQ4mSrWqgcKCCXKtIlG5H+/Jmg==", + "version": "5.16.9", + "resolved": "https://registry.npmjs.org/@mui/material/-/material-5.16.9.tgz", + "integrity": "sha512-XC0oHFm7mrWV0tvhed9uv/o6kLNClnLj1eo/ufuKbj+rgk47ek8Y6HjHe3cGvMn4Bcq8KyoQPgzdwqvS2ZzYrA==", "requires": { "@babel/runtime": "^7.23.9", - "@mui/core-downloads-tracker": "^5.16.7", - "@mui/system": "^5.16.7", + "@mui/core-downloads-tracker": "^5.16.9", + "@mui/system": "^5.16.8", "@mui/types": "^7.2.15", - "@mui/utils": "^5.16.6", + "@mui/utils": "^5.16.8", "@popperjs/core": "^2.11.8", "@types/react-transition-group": "^4.4.10", "clsx": "^2.1.0", @@ -10547,19 +10749,19 @@ } }, "@mui/private-theming": { - "version": "5.16.6", - "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.16.6.tgz", - "integrity": "sha512-rAk+Rh8Clg7Cd7shZhyt2HGTTE5wYKNSJ5sspf28Fqm/PZ69Er9o6KX25g03/FG2dfpg5GCwZh/xOojiTfm3hw==", + "version": "5.16.8", + "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-5.16.8.tgz", + "integrity": "sha512-3Vl9yFVLU6T3CFtxRMQTcJ60Ijv7wxQi4yjH92+9YXcsqvVspeIYoocqNoIV/1bXGYfyWu5zrCmwQVHaGY7bug==", "requires": { "@babel/runtime": "^7.23.9", - "@mui/utils": "^5.16.6", + "@mui/utils": "^5.16.8", "prop-types": "^15.8.1" } }, "@mui/styled-engine": { - "version": "5.16.6", - "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.16.6.tgz", - "integrity": "sha512-zaThmS67ZmtHSWToTiHslbI8jwrmITcN93LQaR2lKArbvS7Z3iLkwRoiikNWutx9MBs8Q6okKvbZq1RQYB3v7g==", + "version": "5.16.8", + "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-5.16.8.tgz", + "integrity": "sha512-OFdgFf8JczSRs0kvWGdSn0ZeXxWrY0LITDPJ/nAtLEvUUTyrlFaO4il3SECX8ruzvf1VnAxHx4M/4mX9oOn9yA==", "requires": { "@babel/runtime": "^7.23.9", "@emotion/cache": "^11.11.0", @@ -10568,15 +10770,15 @@ } }, "@mui/system": { - "version": "5.16.7", - "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.16.7.tgz", - "integrity": "sha512-Jncvs/r/d/itkxh7O7opOunTqbbSSzMTHzZkNLM+FjAOg+cYAZHrPDlYe1ZGKUYORwwb2XexlWnpZp0kZ4AHuA==", + "version": "5.16.8", + "resolved": "https://registry.npmjs.org/@mui/system/-/system-5.16.8.tgz", + "integrity": "sha512-L32TaFDFpGIi1g6ysRtmhc9zDgrlxDXu3NlrGE8gAsQw/ziHrPdr0PNr20O0POUshA1q14W4dNZ/z0Nx2F9lhA==", "requires": { "@babel/runtime": "^7.23.9", - "@mui/private-theming": "^5.16.6", - "@mui/styled-engine": "^5.16.6", + "@mui/private-theming": "^5.16.8", + "@mui/styled-engine": "^5.16.8", "@mui/types": "^7.2.15", - "@mui/utils": "^5.16.6", + "@mui/utils": "^5.16.8", "clsx": "^2.1.0", "csstype": "^3.1.3", "prop-types": "^15.8.1" @@ -10589,9 +10791,9 @@ "requires": {} }, "@mui/utils": { - "version": "5.16.6", - "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.16.6.tgz", - "integrity": "sha512-tWiQqlhxAt3KENNiSRL+DIn9H5xNVK6Jjf70x3PnfQPz1MPBdh7yyIcAyVBT9xiw7hP3SomRhPR7hzBMBCjqEA==", + "version": "5.16.8", + "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-5.16.8.tgz", + "integrity": "sha512-P/yb7BSWallQUeiNGxb+TM8epHteIUC8gzNTdPV2VfKhVY/EnGliHgt5np0GPkjQ7EzwDi/+gBevrAJtf+K94A==", "requires": { "@babel/runtime": "^7.23.9", "@mui/types": "^7.2.15", @@ -10663,6 +10865,109 @@ "integrity": "sha512-U69T3ItWHvLwGg5eJ0n3I62nWuE6ilHlmz7zM0npLBRvPRd7e6NYmg54vvRtP5mZG7kZqZCFVdsTWo7BPtBujg==", "dev": true }, + "@parcel/watcher": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.0.tgz", + "integrity": "sha512-i0GV1yJnm2n3Yq1qw6QrUrd/LI9bE8WEBOTtOkpCXHHdyN3TAGgqAK/DAT05z4fq2x04cARXt2pDmjWjL92iTQ==", + "optional": true, + "requires": { + "@parcel/watcher-android-arm64": "2.5.0", + "@parcel/watcher-darwin-arm64": "2.5.0", + "@parcel/watcher-darwin-x64": "2.5.0", + "@parcel/watcher-freebsd-x64": "2.5.0", + "@parcel/watcher-linux-arm-glibc": "2.5.0", + "@parcel/watcher-linux-arm-musl": "2.5.0", + "@parcel/watcher-linux-arm64-glibc": "2.5.0", + "@parcel/watcher-linux-arm64-musl": "2.5.0", + "@parcel/watcher-linux-x64-glibc": "2.5.0", + "@parcel/watcher-linux-x64-musl": "2.5.0", + "@parcel/watcher-win32-arm64": "2.5.0", + "@parcel/watcher-win32-ia32": "2.5.0", + "@parcel/watcher-win32-x64": "2.5.0", + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + } + }, + "@parcel/watcher-android-arm64": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.0.tgz", + "integrity": "sha512-qlX4eS28bUcQCdribHkg/herLe+0A9RyYC+mm2PXpncit8z5b3nSqGVzMNR3CmtAOgRutiZ02eIJJgP/b1iEFQ==", + "optional": true + }, + "@parcel/watcher-darwin-arm64": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.0.tgz", + "integrity": "sha512-hyZ3TANnzGfLpRA2s/4U1kbw2ZI4qGxaRJbBH2DCSREFfubMswheh8TeiC1sGZ3z2jUf3s37P0BBlrD3sjVTUw==", + "optional": true + }, + "@parcel/watcher-darwin-x64": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.0.tgz", + "integrity": "sha512-9rhlwd78saKf18fT869/poydQK8YqlU26TMiNg7AIu7eBp9adqbJZqmdFOsbZ5cnLp5XvRo9wcFmNHgHdWaGYA==", + "optional": true + }, + "@parcel/watcher-freebsd-x64": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.0.tgz", + "integrity": "sha512-syvfhZzyM8kErg3VF0xpV8dixJ+RzbUaaGaeb7uDuz0D3FK97/mZ5AJQ3XNnDsXX7KkFNtyQyFrXZzQIcN49Tw==", + "optional": true + }, + "@parcel/watcher-linux-arm-glibc": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.0.tgz", + "integrity": "sha512-0VQY1K35DQET3dVYWpOaPFecqOT9dbuCfzjxoQyif1Wc574t3kOSkKevULddcR9znz1TcklCE7Ht6NIxjvTqLA==", + "optional": true + }, + "@parcel/watcher-linux-arm-musl": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.0.tgz", + "integrity": "sha512-6uHywSIzz8+vi2lAzFeltnYbdHsDm3iIB57d4g5oaB9vKwjb6N6dRIgZMujw4nm5r6v9/BQH0noq6DzHrqr2pA==", + "optional": true + }, + "@parcel/watcher-linux-arm64-glibc": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.0.tgz", + "integrity": "sha512-BfNjXwZKxBy4WibDb/LDCriWSKLz+jJRL3cM/DllnHH5QUyoiUNEp3GmL80ZqxeumoADfCCP19+qiYiC8gUBjA==", + "optional": true + }, + "@parcel/watcher-linux-arm64-musl": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.0.tgz", + "integrity": "sha512-S1qARKOphxfiBEkwLUbHjCY9BWPdWnW9j7f7Hb2jPplu8UZ3nes7zpPOW9bkLbHRvWM0WDTsjdOTUgW0xLBN1Q==", + "optional": true + }, + "@parcel/watcher-linux-x64-glibc": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.0.tgz", + "integrity": "sha512-d9AOkusyXARkFD66S6zlGXyzx5RvY+chTP9Jp0ypSTC9d4lzyRs9ovGf/80VCxjKddcUvnsGwCHWuF2EoPgWjw==", + "optional": true + }, + "@parcel/watcher-linux-x64-musl": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.0.tgz", + "integrity": "sha512-iqOC+GoTDoFyk/VYSFHwjHhYrk8bljW6zOhPuhi5t9ulqiYq1togGJB5e3PwYVFFfeVgc6pbz3JdQyDoBszVaA==", + "optional": true + }, + "@parcel/watcher-win32-arm64": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.0.tgz", + "integrity": "sha512-twtft1d+JRNkM5YbmexfcH/N4znDtjgysFaV9zvZmmJezQsKpkfLYJ+JFV3uygugK6AtIM2oADPkB2AdhBrNig==", + "optional": true + }, + "@parcel/watcher-win32-ia32": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.0.tgz", + "integrity": "sha512-+rgpsNRKwo8A53elqbbHXdOMtY/tAtTzManTWShB5Kk54N8Q9mzNWV7tV+IbGueCbcj826MfWGU3mprWtuf1TA==", + "optional": true + }, + "@parcel/watcher-win32-x64": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.0.tgz", + "integrity": "sha512-lPrxve92zEHdgeff3aiu4gDOIt4u7sJYha6wbdEZDCDUhtjTsOMiaJzG5lMY4GkWH8p0fMmO2Ppq5G5XXG+DQw==", + "optional": true + }, "@pkgr/core": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", @@ -10675,9 +10980,9 @@ "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==" }, "@remix-run/router": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.19.1.tgz", - "integrity": "sha512-S45oynt/WH19bHbIXjtli6QmwNYvaz+vtnubvNpNDvUOoA/OWh6j1OikIP3G+v5GHdxyC6EXoChG3HgYGEUfcg==" + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.21.0.tgz", + "integrity": "sha512-xfSkCAchbdG5PnbrKqFWwia4Bi61nH+wm8wLEqfHDyp7Y3dZzgqS2itV8i4gAq9pC2HsTpwyBC6Ds8VHZ96JlA==" }, "@rollup/pluginutils": { "version": "4.2.1", @@ -10690,117 +10995,137 @@ } }, "@rollup/rollup-android-arm-eabi": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.21.0.tgz", - "integrity": "sha512-WTWD8PfoSAJ+qL87lE7votj3syLavxunWhzCnx3XFxFiI/BA/r3X7MUM8dVrH8rb2r4AiO8jJsr3ZjdaftmnfA==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.27.3.tgz", + "integrity": "sha512-EzxVSkIvCFxUd4Mgm4xR9YXrcp976qVaHnqom/Tgm+vU79k4vV4eYTjmRvGfeoW8m9LVcsAy/lGjcgVegKEhLQ==", "dev": true, "optional": true }, "@rollup/rollup-android-arm64": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.21.0.tgz", - "integrity": "sha512-a1sR2zSK1B4eYkiZu17ZUZhmUQcKjk2/j9Me2IDjk1GHW7LB5Z35LEzj9iJch6gtUfsnvZs1ZNyDW2oZSThrkA==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.27.3.tgz", + "integrity": "sha512-LJc5pDf1wjlt9o/Giaw9Ofl+k/vLUaYsE2zeQGH85giX2F+wn/Cg8b3c5CDP3qmVmeO5NzwVUzQQxwZvC2eQKw==", "dev": true, "optional": true }, "@rollup/rollup-darwin-arm64": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.21.0.tgz", - "integrity": "sha512-zOnKWLgDld/svhKO5PD9ozmL6roy5OQ5T4ThvdYZLpiOhEGY+dp2NwUmxK0Ld91LrbjrvtNAE0ERBwjqhZTRAA==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.27.3.tgz", + "integrity": "sha512-OuRysZ1Mt7wpWJ+aYKblVbJWtVn3Cy52h8nLuNSzTqSesYw1EuN6wKp5NW/4eSre3mp12gqFRXOKTcN3AI3LqA==", "dev": true, "optional": true }, "@rollup/rollup-darwin-x64": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.21.0.tgz", - "integrity": "sha512-7doS8br0xAkg48SKE2QNtMSFPFUlRdw9+votl27MvT46vo44ATBmdZdGysOevNELmZlfd+NEa0UYOA8f01WSrg==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.27.3.tgz", + "integrity": "sha512-xW//zjJMlJs2sOrCmXdB4d0uiilZsOdlGQIC/jjmMWT47lkLLoB1nsNhPUcnoqyi5YR6I4h+FjBpILxbEy8JRg==", + "dev": true, + "optional": true + }, + "@rollup/rollup-freebsd-arm64": { + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.27.3.tgz", + "integrity": "sha512-58E0tIcwZ+12nK1WiLzHOD8I0d0kdrY/+o7yFVPRHuVGY3twBwzwDdTIBGRxLmyjciMYl1B/U515GJy+yn46qw==", + "dev": true, + "optional": true + }, + "@rollup/rollup-freebsd-x64": { + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.27.3.tgz", + "integrity": "sha512-78fohrpcVwTLxg1ZzBMlwEimoAJmY6B+5TsyAZ3Vok7YabRBUvjYTsRXPTjGEvv/mfgVBepbW28OlMEz4w8wGA==", "dev": true, "optional": true }, "@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.21.0.tgz", - "integrity": "sha512-pWJsfQjNWNGsoCq53KjMtwdJDmh/6NubwQcz52aEwLEuvx08bzcy6tOUuawAOncPnxz/3siRtd8hiQ32G1y8VA==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.27.3.tgz", + "integrity": "sha512-h2Ay79YFXyQi+QZKo3ISZDyKaVD7uUvukEHTOft7kh00WF9mxAaxZsNs3o/eukbeKuH35jBvQqrT61fzKfAB/Q==", "dev": true, "optional": true }, "@rollup/rollup-linux-arm-musleabihf": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.21.0.tgz", - "integrity": "sha512-efRIANsz3UHZrnZXuEvxS9LoCOWMGD1rweciD6uJQIx2myN3a8Im1FafZBzh7zk1RJ6oKcR16dU3UPldaKd83w==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.27.3.tgz", + "integrity": "sha512-Sv2GWmrJfRY57urktVLQ0VKZjNZGogVtASAgosDZ1aUB+ykPxSi3X1nWORL5Jk0sTIIwQiPH7iE3BMi9zGWfkg==", "dev": true, "optional": true }, "@rollup/rollup-linux-arm64-gnu": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.21.0.tgz", - "integrity": "sha512-ZrPhydkTVhyeGTW94WJ8pnl1uroqVHM3j3hjdquwAcWnmivjAwOYjTEAuEDeJvGX7xv3Z9GAvrBkEzCgHq9U1w==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.27.3.tgz", + "integrity": "sha512-FPoJBLsPW2bDNWjSrwNuTPUt30VnfM8GPGRoLCYKZpPx0xiIEdFip3dH6CqgoT0RnoGXptaNziM0WlKgBc+OWQ==", "dev": true, "optional": true }, "@rollup/rollup-linux-arm64-musl": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.21.0.tgz", - "integrity": "sha512-cfaupqd+UEFeURmqNP2eEvXqgbSox/LHOyN9/d2pSdV8xTrjdg3NgOFJCtc1vQ/jEke1qD0IejbBfxleBPHnPw==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.27.3.tgz", + "integrity": "sha512-TKxiOvBorYq4sUpA0JT+Fkh+l+G9DScnG5Dqx7wiiqVMiRSkzTclP35pE6eQQYjP4Gc8yEkJGea6rz4qyWhp3g==", "dev": true, "optional": true }, "@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.21.0.tgz", - "integrity": "sha512-ZKPan1/RvAhrUylwBXC9t7B2hXdpb/ufeu22pG2psV7RN8roOfGurEghw1ySmX/CmDDHNTDDjY3lo9hRlgtaHg==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.27.3.tgz", + "integrity": "sha512-v2M/mPvVUKVOKITa0oCFksnQQ/TqGrT+yD0184/cWHIu0LoIuYHwox0Pm3ccXEz8cEQDLk6FPKd1CCm+PlsISw==", "dev": true, "optional": true }, "@rollup/rollup-linux-riscv64-gnu": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.21.0.tgz", - "integrity": "sha512-H1eRaCwd5E8eS8leiS+o/NqMdljkcb1d6r2h4fKSsCXQilLKArq6WS7XBLDu80Yz+nMqHVFDquwcVrQmGr28rg==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.27.3.tgz", + "integrity": "sha512-LdrI4Yocb1a/tFVkzmOE5WyYRgEBOyEhWYJe4gsDWDiwnjYKjNs7PS6SGlTDB7maOHF4kxevsuNBl2iOcj3b4A==", "dev": true, "optional": true }, "@rollup/rollup-linux-s390x-gnu": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.21.0.tgz", - "integrity": "sha512-zJ4hA+3b5tu8u7L58CCSI0A9N1vkfwPhWd/puGXwtZlsB5bTkwDNW/+JCU84+3QYmKpLi+XvHdmrlwUwDA6kqw==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.27.3.tgz", + "integrity": "sha512-d4wVu6SXij/jyiwPvI6C4KxdGzuZOvJ6y9VfrcleHTwo68fl8vZC5ZYHsCVPUi4tndCfMlFniWgwonQ5CUpQcA==", "dev": true, "optional": true }, "@rollup/rollup-linux-x64-gnu": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.21.0.tgz", - "integrity": "sha512-e2hrvElFIh6kW/UNBQK/kzqMNY5mO+67YtEh9OA65RM5IJXYTWiXjX6fjIiPaqOkBthYF1EqgiZ6OXKcQsM0hg==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.27.3.tgz", + "integrity": "sha512-/6bn6pp1fsCGEY5n3yajmzZQAh+mW4QPItbiWxs69zskBzJuheb3tNynEjL+mKOsUSFK11X4LYF2BwwXnzWleA==", "dev": true, "optional": true }, "@rollup/rollup-linux-x64-musl": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.21.0.tgz", - "integrity": "sha512-1vvmgDdUSebVGXWX2lIcgRebqfQSff0hMEkLJyakQ9JQUbLDkEaMsPTLOmyccyC6IJ/l3FZuJbmrBw/u0A0uCQ==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.27.3.tgz", + "integrity": "sha512-nBXOfJds8OzUT1qUreT/en3eyOXd2EH5b0wr2bVB5999qHdGKkzGzIyKYaKj02lXk6wpN71ltLIaQpu58YFBoQ==", "dev": true, "optional": true }, "@rollup/rollup-win32-arm64-msvc": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.21.0.tgz", - "integrity": "sha512-s5oFkZ/hFcrlAyBTONFY1TWndfyre1wOMwU+6KCpm/iatybvrRgmZVM+vCFwxmC5ZhdlgfE0N4XorsDpi7/4XQ==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.27.3.tgz", + "integrity": "sha512-ogfbEVQgIZOz5WPWXF2HVb6En+kWzScuxJo/WdQTqEgeyGkaa2ui5sQav9Zkr7bnNCLK48uxmmK0TySm22eiuw==", "dev": true, "optional": true }, "@rollup/rollup-win32-ia32-msvc": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.21.0.tgz", - "integrity": "sha512-G9+TEqRnAA6nbpqyUqgTiopmnfgnMkR3kMukFBDsiyy23LZvUCpiUwjTRx6ezYCjJODXrh52rBR9oXvm+Fp5wg==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.27.3.tgz", + "integrity": "sha512-ecE36ZBMLINqiTtSNQ1vzWc5pXLQHlf/oqGp/bSbi7iedcjcNb6QbCBNG73Euyy2C+l/fn8qKWEwxr+0SSfs3w==", "dev": true, "optional": true }, "@rollup/rollup-win32-x64-msvc": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.21.0.tgz", - "integrity": "sha512-2jsCDZwtQvRhejHLfZ1JY6w6kEuEtfF9nzYsZxzSlNVKDX+DpsDJ+Rbjkm74nvg2rdx0gwBS+IMdvwJuq3S9pQ==", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.27.3.tgz", + "integrity": "sha512-vliZLrDmYKyaUoMzEbMTg2JkerfBjn03KmAw9CykO0Zzkzoyd7o3iZNam/TpyWNjNT+Cz2iO3P9Smv2wgrR+Eg==", "dev": true, "optional": true }, + "@rtsao/scc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", + "dev": true + }, "@sinclair/typebox": { "version": "0.27.8", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", @@ -10929,92 +11254,92 @@ } }, "@swc/core": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.7.14.tgz", - "integrity": "sha512-9aeXeifnyuvc2pcuuhPQgVUwdpGEzZ+9nJu0W8/hNl/aESFsJGR5i9uQJRGu0atoNr01gK092fvmqMmQAPcKow==", - "dev": true, - "requires": { - "@swc/core-darwin-arm64": "1.7.14", - "@swc/core-darwin-x64": "1.7.14", - "@swc/core-linux-arm-gnueabihf": "1.7.14", - "@swc/core-linux-arm64-gnu": "1.7.14", - "@swc/core-linux-arm64-musl": "1.7.14", - "@swc/core-linux-x64-gnu": "1.7.14", - "@swc/core-linux-x64-musl": "1.7.14", - "@swc/core-win32-arm64-msvc": "1.7.14", - "@swc/core-win32-ia32-msvc": "1.7.14", - "@swc/core-win32-x64-msvc": "1.7.14", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.9.2.tgz", + "integrity": "sha512-dYyEkO6mRYtZFpnOsnYzv9rY69fHAHoawYOjGOEcxk9WYtaJhowMdP/w6NcOKnz2G7GlZaenjkzkMa6ZeQeMsg==", + "dev": true, + "requires": { + "@swc/core-darwin-arm64": "1.9.2", + "@swc/core-darwin-x64": "1.9.2", + "@swc/core-linux-arm-gnueabihf": "1.9.2", + "@swc/core-linux-arm64-gnu": "1.9.2", + "@swc/core-linux-arm64-musl": "1.9.2", + "@swc/core-linux-x64-gnu": "1.9.2", + "@swc/core-linux-x64-musl": "1.9.2", + "@swc/core-win32-arm64-msvc": "1.9.2", + "@swc/core-win32-ia32-msvc": "1.9.2", + "@swc/core-win32-x64-msvc": "1.9.2", "@swc/counter": "^0.1.3", - "@swc/types": "^0.1.12" + "@swc/types": "^0.1.15" } }, "@swc/core-darwin-arm64": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.7.14.tgz", - "integrity": "sha512-V0OUXjOH+hdGxDYG8NkQzy25mKOpcNKFpqtZEzLe5V/CpLJPnpg1+pMz70m14s9ZFda9OxsjlvPbg1FLUwhgIQ==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.9.2.tgz", + "integrity": "sha512-nETmsCoY29krTF2PtspEgicb3tqw7Ci5sInTI03EU5zpqYbPjoPH99BVTjj0OsF53jP5MxwnLI5Hm21lUn1d6A==", "dev": true, "optional": true }, "@swc/core-darwin-x64": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.7.14.tgz", - "integrity": "sha512-9iFvUnxG6FC3An5ogp5jbBfQuUmTTwy8KMB+ZddUoPB3NR1eV+Y9vOh/tfWcenSJbgOKDLgYC5D/b1mHAprsrQ==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.9.2.tgz", + "integrity": "sha512-9gD+bwBz8ZByjP6nZTXe/hzd0tySIAjpDHgkFiUrc+5zGF+rdTwhcNrzxNHJmy6mw+PW38jqII4uspFHUqqxuQ==", "dev": true, "optional": true }, "@swc/core-linux-arm-gnueabihf": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.7.14.tgz", - "integrity": "sha512-zGJsef9qPivKSH8Vv4F/HiBXBTHZ5Hs3ZjVGo/UIdWPJF8fTL9OVADiRrl34Q7zOZEtGXRwEKLUW1SCQcbDvZA==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.9.2.tgz", + "integrity": "sha512-kYq8ief1Qrn+WmsTWAYo4r+Coul4dXN6cLFjiPZ29Cv5pyU+GFvSPAB4bEdMzwy99rCR0u2P10UExaeCjurjvg==", "dev": true, "optional": true }, "@swc/core-linux-arm64-gnu": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.7.14.tgz", - "integrity": "sha512-AxV3MPsoI7i4B8FXOew3dx3N8y00YoJYvIPfxelw07RegeCEH3aHp2U2DtgbP/NV1ugZMx0TL2Z2DEvocmA51g==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.9.2.tgz", + "integrity": "sha512-n0W4XiXlmEIVqxt+rD3ZpkogsEWUk1jJ+i5bQNgB+1JuWh0fBE8c/blDgTQXa0GB5lTPVDZQussgdNOCnAZwiA==", "dev": true, "optional": true }, "@swc/core-linux-arm64-musl": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.7.14.tgz", - "integrity": "sha512-JDLdNjUj3zPehd4+DrQD8Ltb3B5lD8D05IwePyDWw+uR/YPc7w/TX1FUVci5h3giJnlMCJRvi1IQYV7K1n7KtQ==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.9.2.tgz", + "integrity": "sha512-8xzrOmsyCC1zrx2Wzx/h8dVsdewO1oMCwBTLc1gSJ/YllZYTb04pNm6NsVbzUX2tKddJVRgSJXV10j/NECLwpA==", "dev": true, "optional": true }, "@swc/core-linux-x64-gnu": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.7.14.tgz", - "integrity": "sha512-Siy5OvPCLLWmMdx4msnEs8HvEVUEigSn0+3pbLjv78iwzXd0qSBNHUPZyC1xeurVaUbpNDxZTpPRIwpqNE2+Og==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.9.2.tgz", + "integrity": "sha512-kZrNz/PjRQKcchWF6W292jk3K44EoVu1ad5w+zbS4jekIAxsM8WwQ1kd+yjUlN9jFcF8XBat5NKIs9WphJCVXg==", "dev": true, "optional": true }, "@swc/core-linux-x64-musl": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.7.14.tgz", - "integrity": "sha512-FtEGm9mwtRYQNK43WMtUIadxHs/ja2rnDurB99os0ZoFTGG2IHuht2zD97W0wB8JbqEabT1XwSG9Y5wmN+ciEQ==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.9.2.tgz", + "integrity": "sha512-TTIpR4rjMkhX1lnFR+PSXpaL83TrQzp9znRdp2TzYrODlUd/R20zOwSo9vFLCyH6ZoD47bccY7QeGZDYT3nlRg==", "dev": true, "optional": true }, "@swc/core-win32-arm64-msvc": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.7.14.tgz", - "integrity": "sha512-Jp8KDlfq7Ntt2/BXr0y344cYgB1zf0DaLzDZ1ZJR6rYlAzWYSccLYcxHa97VGnsYhhPspMpmCvHid97oe2hl4A==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.9.2.tgz", + "integrity": "sha512-+Eg2d4icItKC0PMjZxH7cSYFLWk0aIp94LNmOw6tPq0e69ax6oh10upeq0D1fjWsKLmOJAWEvnXlayZcijEXDw==", "dev": true, "optional": true }, "@swc/core-win32-ia32-msvc": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.7.14.tgz", - "integrity": "sha512-I+cFsXF0OU0J9J4zdWiQKKLURO5dvCujH9Jr8N0cErdy54l9d4gfIxdctfTF+7FyXtWKLTCkp+oby9BQhkFGWA==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.9.2.tgz", + "integrity": "sha512-nLWBi4vZDdM/LkiQmPCakof8Dh1/t5EM7eudue04V1lIcqx9YHVRS3KMwEaCoHLGg0c312Wm4YgrWQd9vwZ5zQ==", "dev": true, "optional": true }, "@swc/core-win32-x64-msvc": { - "version": "1.7.14", - "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.7.14.tgz", - "integrity": "sha512-NNrprQCK6d28mG436jVo2TD+vACHseUECacEBGZ9Ef0qfOIWS1XIt2MisQKG0Oea2VvLFl6tF/V4Lnx/H0Sn3Q==", + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.9.2.tgz", + "integrity": "sha512-ik/k+JjRJBFkXARukdU82tSVx0CbExFQoQ78qTO682esbYXzjdB5eLVkoUbwen299pnfr88Kn4kyIqFPTje8Xw==", "dev": true, "optional": true }, @@ -11025,60 +11350,60 @@ "dev": true }, "@swc/types": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.12.tgz", - "integrity": "sha512-wBJA+SdtkbFhHjTMYH+dEH1y4VpfGdAc2Kw/LK09i9bXd/K6j6PkDcFCEzb6iVfZMkPRrl/q0e3toqTAJdkIVA==", + "version": "0.1.17", + "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.17.tgz", + "integrity": "sha512-V5gRru+aD8YVyCOMAjMpWR1Ui577DD5KSJsHP8RAxopAH22jFz6GZd/qxqjO6MJHQhcsjvjOFXyDhyLQUnMveQ==", "dev": true, "requires": { "@swc/counter": "^0.1.3" } }, "@tanstack/match-sorter-utils": { - "version": "8.15.1", - "resolved": "https://registry.npmjs.org/@tanstack/match-sorter-utils/-/match-sorter-utils-8.15.1.tgz", - "integrity": "sha512-PnVV3d2poenUM31ZbZi/yXkBu3J7kd5k2u51CGwwNojag451AjTH9N6n41yjXz2fpLeewleyLBmNS6+HcGDlXw==", + "version": "8.19.4", + "resolved": "https://registry.npmjs.org/@tanstack/match-sorter-utils/-/match-sorter-utils-8.19.4.tgz", + "integrity": "sha512-Wo1iKt2b9OT7d+YGhvEPD3DXvPv2etTusIMhMUoG7fbhmxcXCtIjJDEygy91Y2JFlwGyjqiBPRozme7UD8hoqg==", "requires": { "remove-accents": "0.5.0" } }, "@tanstack/query-core": { - "version": "5.52.2", - "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.52.2.tgz", - "integrity": "sha512-9vvbFecK4A0nDnrc/ks41e3UHONF1DAnGz8Tgbxkl59QcvKWmc0ewhYuIKRh8NC4ja5LTHT9EH16KHbn2AIYWA==" + "version": "5.62.3", + "resolved": "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.62.3.tgz", + "integrity": "sha512-Jp/nYoz8cnO7kqhOlSv8ke/0MJRJVGuZ0P/JO9KQ+f45mpN90hrerzavyTKeSoT/pOzeoOUkv1Xd0wPsxAWXfg==" }, "@tanstack/react-query": { - "version": "5.52.2", - "resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.52.2.tgz", - "integrity": "sha512-d4OwmobpP+6+SvuAxW1RzAY95Pv87Gu+0GjtErzFOUXo+n0FGcwxKvzhswCsXKxsgnAr3bU2eJ2u+GXQAutkCQ==", + "version": "5.62.3", + "resolved": "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.62.3.tgz", + "integrity": "sha512-y2zDNKuhgiuMgsKkqd4AcsLIBiCfEO8U11AdrtAUihmLbRNztPrlcZqx2lH1GacZsx+y1qRRbCcJLYTtF1vKsw==", "requires": { - "@tanstack/query-core": "5.52.2" + "@tanstack/query-core": "5.62.3" } }, "@tanstack/react-table": { - "version": "8.19.3", - "resolved": "https://registry.npmjs.org/@tanstack/react-table/-/react-table-8.19.3.tgz", - "integrity": "sha512-MtgPZc4y+cCRtU16y1vh1myuyZ2OdkWgMEBzyjYsoMWMicKZGZvcDnub3Zwb6XF2pj9iRMvm1SO1n57lS0vXLw==", + "version": "8.20.5", + "resolved": "https://registry.npmjs.org/@tanstack/react-table/-/react-table-8.20.5.tgz", + "integrity": "sha512-WEHopKw3znbUZ61s9i0+i9g8drmDo6asTWbrQh8Us63DAk/M0FkmIqERew6P71HI75ksZ2Pxyuf4vvKh9rAkiA==", "requires": { - "@tanstack/table-core": "8.19.3" + "@tanstack/table-core": "8.20.5" } }, "@tanstack/react-virtual": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.8.3.tgz", - "integrity": "sha512-9ICwbDUUzN99CJIGc373i8NLoj6zFTKI2Hlcmo0+lCSAhPQ5mxq4dGOMKmLYoEFyHcGQ64Bd6ZVbnPpM6lNK5w==", + "version": "3.10.6", + "resolved": "https://registry.npmjs.org/@tanstack/react-virtual/-/react-virtual-3.10.6.tgz", + "integrity": "sha512-xaSy6uUxB92O8mngHZ6CvbhGuqxQ5lIZWCBy+FjhrbHmOwc6BnOnKkYm2FsB1/BpKw/+FVctlMbEtI+F6I1aJg==", "requires": { - "@tanstack/virtual-core": "3.8.3" + "@tanstack/virtual-core": "3.10.6" } }, "@tanstack/table-core": { - "version": "8.19.3", - "resolved": "https://registry.npmjs.org/@tanstack/table-core/-/table-core-8.19.3.tgz", - "integrity": "sha512-IqREj9ADoml9zCAouIG/5kCGoyIxPFdqdyoxis9FisXFi5vT+iYfEfLosq4xkU/iDbMcEuAj+X8dWRLvKYDNoQ==" + "version": "8.20.5", + "resolved": "https://registry.npmjs.org/@tanstack/table-core/-/table-core-8.20.5.tgz", + "integrity": "sha512-P9dF7XbibHph2PFRz8gfBKEXEY/HJPOhym8CHmjF8y3q5mWpKx9xtZapXQUWCgkqvsK0R46Azuz+VaxD4Xl+Tg==" }, "@tanstack/virtual-core": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.8.3.tgz", - "integrity": "sha512-vd2A2TnM5lbnWZnHi9B+L2gPtkSeOtJOAw358JqokIH1+v2J7vUAzFVPwB/wrye12RFOurffXu33plm4uQ+JBQ==" + "version": "3.10.6", + "resolved": "https://registry.npmjs.org/@tanstack/virtual-core/-/virtual-core-3.10.6.tgz", + "integrity": "sha512-1giLc4dzgEKLMx5pgKjL6HlG5fjZMgCjzlKAlpr7yoUtetVPELgER1NtephAI910nMwfPTHNyWKSFmJdHkz2Cw==" }, "@testing-library/dom": { "version": "9.3.4", @@ -11182,9 +11507,9 @@ } }, "@testing-library/jest-dom": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.5.0.tgz", - "integrity": "sha512-xGGHpBXYSHUUr6XsKBfs85TWlYKpTc37cSBBVrXcib2MkHLboWlkClhWF37JKlDb9KEq3dHs+f2xR7XJEWGBxA==", + "version": "6.6.3", + "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.6.3.tgz", + "integrity": "sha512-IteBhl4XqYNkM54f4ejhLRJiZNqcSCoXUOG2CPK7qbD322KjQozM4kHQOfkG2oln9b9HTYqs+Sae8vBATubxxA==", "dev": true, "requires": { "@adobe/css-tools": "^4.3.2", @@ -11294,9 +11619,9 @@ } }, "@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", "dev": true }, "@types/json-schema": { @@ -11318,12 +11643,12 @@ "dev": true }, "@types/material-ui": { - "version": "0.21.17", - "resolved": "https://registry.npmjs.org/@types/material-ui/-/material-ui-0.21.17.tgz", - "integrity": "sha512-3iyPhFkqI856UBWRxaO7ZZDpOtWM3XPl5gdKKkVBPn3TqNBdgDuFFhHx8BFLL85o5oYy5Y/SX5s0bs7a2VdLTw==", + "version": "0.21.18", + "resolved": "https://registry.npmjs.org/@types/material-ui/-/material-ui-0.21.18.tgz", + "integrity": "sha512-wGyYlCJaznt0C87Xnqae7v3imh57gsomQvzozsHhZKJHH4QG+i0qE4/h6D4igpXEXr4ooscgclg+O2RIKOP84Q==", "dev": true, "requires": { - "@types/react": "*", + "@types/react": "^18", "@types/react-addons-linked-state-mixin": "*" } }, @@ -11333,19 +11658,10 @@ "integrity": "sha512-/i42wjYNgE6wf0j2bcTX6kuowmdL/6PE4IVitMpm2eYKBUuYCprdcWVK+xEF0gcV6ufMCRhtxmReGfc6hIK7Jw==", "dev": true }, - "@types/mute-stream": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/@types/mute-stream/-/mute-stream-0.0.4.tgz", - "integrity": "sha512-CPM9nzrCPPJHQNA9keH9CVkVI+WR5kMa+7XEs5jcGQ0VoAGnLv242w8lIVgwAEfmE4oufJRaTc9PNLQl0ioAow==", - "dev": true, - "requires": { - "@types/node": "*" - } - }, "@types/node": { - "version": "20.16.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.2.tgz", - "integrity": "sha512-91s/n4qUPV/wg8eE9KHYW1kouTfDk2FPGjXbBMfRWP/2vg1rCXNQL1OCabwGs0XSdukuK+MwCDXE30QpSeMUhQ==", + "version": "20.17.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.9.tgz", + "integrity": "sha512-0JOXkRyLanfGPE2QRCwgxhzlBAvaRdCNMcvbd7jFfpmD4eEXll7LRwy5ymJmyeZqk7Nh7eD2LeUyQ68BbndmXw==", "dev": true, "requires": { "undici-types": "~6.19.2" @@ -11368,9 +11684,9 @@ "integrity": "sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==" }, "@types/react": { - "version": "18.3.4", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.4.tgz", - "integrity": "sha512-J7W30FTdfCxDDjmfRM+/JqLHBIyl7xUIp9kwK637FGmY7+mkSFSe6L4jpZzhj5QMfLssSDP4/i75AKkrdC7/Jw==", + "version": "18.3.14", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.14.tgz", + "integrity": "sha512-NzahNKvjNhVjuPBQ+2G7WlxstQ+47kXZNHlUvFakDViuIEfGY926GqhMueQFZ7woG+sPiQKlF36XfrIUVSUfFg==", "requires": { "@types/prop-types": "*", "csstype": "^3.0.2" @@ -11386,12 +11702,12 @@ } }, "@types/react-dom": { - "version": "18.3.0", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.0.tgz", - "integrity": "sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==", + "version": "18.3.2", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.2.tgz", + "integrity": "sha512-Fqp+rcvem9wEnGr3RY8dYNvSQ8PoLqjZ9HLgaPUOjJJD120uDyOxOjc/39M4Kddp9JQCxpGQbnhVQF0C0ncYVg==", "dev": true, "requires": { - "@types/react": "*" + "@types/react": "^18" } }, "@types/react-modal": { @@ -11430,15 +11746,9 @@ "dev": true }, "@types/validator": { - "version": "13.12.1", - "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.12.1.tgz", - "integrity": "sha512-w0URwf7BQb0rD/EuiG12KP0bailHKHP5YVviJG9zw3ykAokL0TuxU2TUqMB7EwZ59bDHYdeTIvjI5m0S7qHfOA==", - "dev": true - }, - "@types/wrap-ansi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/wrap-ansi/-/wrap-ansi-3.0.0.tgz", - "integrity": "sha512-ltIpx+kM7g/MLRZfkbL7EsCEjfzCcScLpkg37eXEtx5kmrAKBkTJwd1GIAjDSL8wTpM6Hzn5YO4pSb91BEwu1g==", + "version": "13.12.2", + "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.12.2.tgz", + "integrity": "sha512-6SlHBzUW8Jhf3liqrGGXyTJSIFe4nqlJ5A5KaMZ2l/vbM3Wh3KSybots/wfWVzNLK4D1NZluDlSQIbIEPx6oyA==", "dev": true }, "@typescript-eslint/eslint-plugin": { @@ -11576,12 +11886,12 @@ "dev": true }, "@vitejs/plugin-react-swc": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-react-swc/-/plugin-react-swc-3.7.0.tgz", - "integrity": "sha512-yrknSb3Dci6svCd/qhHqhFPDSw0QtjumcqdKMoNNzmOl5lMXTTiqzjWtG4Qask2HdvvzaNgSunbQGet8/GrKdA==", + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react-swc/-/plugin-react-swc-3.7.2.tgz", + "integrity": "sha512-y0byko2b2tSVVf5Gpng1eEhX1OvPC7x8yns1Fx8jDzlJp4LS6CMkCPfLw47cjyoMrshQDoQw4qcgjsU9VvlCew==", "dev": true, "requires": { - "@swc/core": "^1.5.7" + "@swc/core": "^1.7.26" } }, "@vitest/coverage-v8": { @@ -11758,15 +12068,6 @@ "color-convert": "^1.9.0" } }, - "anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, "argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -11774,13 +12075,10 @@ "dev": true }, "aria-query": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz", - "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==", - "dev": true, - "requires": { - "dequal": "^2.0.3" - } + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz", + "integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==", + "dev": true }, "array-buffer-byte-length": { "version": "1.0.1", @@ -11827,16 +12125,17 @@ } }, "array.prototype.findlastindex": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz", - "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", + "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", "dev": true, "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.2.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" } }, "array.prototype.flat": { @@ -11939,9 +12238,9 @@ "dev": true }, "axios": { - "version": "1.7.5", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.5.tgz", - "integrity": "sha512-fZu86yCo+svH3uqJ/yTdQ0QHpQu5oL+/QE+QPSv6BZSkDAoky9vytxp7u5qk83OJFS3kEBcesWni9WTZAv3tSw==", + "version": "1.7.9", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.9.tgz", + "integrity": "sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==", "requires": { "follow-redirects": "^1.15.6", "form-data": "^4.0.0", @@ -11949,13 +12248,10 @@ } }, "axobject-query": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.1.1.tgz", - "integrity": "sha512-goKlv8DZrK9hUh975fnHzhNIO4jUnFCfv/dszV5VwUGDFjI6vQ2VwoyjYjYNEbBE8AH87TduWP5uyDR1D+Iteg==", - "dev": true, - "requires": { - "deep-equal": "^2.0.5" - } + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", + "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", + "dev": true }, "babel-plugin-macros": { "version": "3.1.0", @@ -11973,11 +12269,6 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, - "binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==" - }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -11992,6 +12283,7 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "devOptional": true, "requires": { "fill-range": "^7.1.1" } @@ -12092,36 +12384,13 @@ } }, "chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.1.tgz", + "integrity": "sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==", "requires": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "fsevents": "~2.3.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "dependencies": { - "glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "requires": { - "is-glob": "^4.0.1" - } - } + "readdirp": "^4.0.1" } }, - "cli-spinners": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", - "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", - "dev": true - }, "cli-width": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-4.1.0.tgz", @@ -12171,9 +12440,9 @@ "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" }, "cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", "dev": true }, "cosmiconfig": { @@ -12189,9 +12458,9 @@ } }, "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "requires": { "path-key": "^3.1.0", @@ -12383,6 +12652,12 @@ "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", "dev": true }, + "detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "optional": true + }, "diff-sequences": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", @@ -12545,9 +12820,9 @@ } }, "es-iterator-helpers": { - "version": "1.0.19", - "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.19.tgz", - "integrity": "sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.0.tgz", + "integrity": "sha512-tpxqxncxnpw3c93u8n3VOzACmRFoVmWJqbWXvX/JfKbkhBw1oslgPrUfeSt2psuqyEJFD6N/9lg5i7bsKpoq+Q==", "dev": true, "requires": { "call-bind": "^1.0.7", @@ -12557,12 +12832,13 @@ "es-set-tostringtag": "^2.0.3", "function-bind": "^1.1.2", "get-intrinsic": "^1.2.4", - "globalthis": "^1.0.3", + "globalthis": "^1.0.4", + "gopd": "^1.0.1", "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.2", + "iterator.prototype": "^1.1.3", "safe-array-concat": "^1.1.2" } }, @@ -12794,9 +13070,9 @@ } }, "eslint-module-utils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", - "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz", + "integrity": "sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==", "dev": true, "requires": { "debug": "^3.2.7" @@ -12814,27 +13090,29 @@ } }, "eslint-plugin-import": { - "version": "2.29.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", - "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", + "version": "2.31.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz", + "integrity": "sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==", "dev": true, "requires": { - "array-includes": "^3.1.7", - "array.prototype.findlastindex": "^1.2.3", + "@rtsao/scc": "^1.1.0", + "array-includes": "^3.1.8", + "array.prototype.findlastindex": "^1.2.5", "array.prototype.flat": "^1.3.2", "array.prototype.flatmap": "^1.3.2", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.8.0", - "hasown": "^2.0.0", - "is-core-module": "^2.13.1", + "eslint-module-utils": "^2.12.0", + "hasown": "^2.0.2", + "is-core-module": "^2.15.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", - "object.fromentries": "^2.0.7", - "object.groupby": "^1.0.1", - "object.values": "^1.1.7", + "object.fromentries": "^2.0.8", + "object.groupby": "^1.0.3", + "object.values": "^1.2.0", "semver": "^6.3.1", + "string.prototype.trimend": "^1.0.8", "tsconfig-paths": "^3.15.0" }, "dependencies": { @@ -12859,38 +13137,26 @@ } }, "eslint-plugin-jsx-a11y": { - "version": "6.9.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.9.0.tgz", - "integrity": "sha512-nOFOCaJG2pYqORjK19lqPqxMO/JpvdCZdPtNdxY3kvom3jTvkAbOvQvD8wuD0G8BYR0IGAGYDlzqWJOh/ybn2g==", + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.2.tgz", + "integrity": "sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==", "dev": true, "requires": { - "aria-query": "~5.1.3", + "aria-query": "^5.3.2", "array-includes": "^3.1.8", "array.prototype.flatmap": "^1.3.2", "ast-types-flow": "^0.0.8", - "axe-core": "^4.9.1", - "axobject-query": "~3.1.1", + "axe-core": "^4.10.0", + "axobject-query": "^4.1.0", "damerau-levenshtein": "^1.0.8", "emoji-regex": "^9.2.2", - "es-iterator-helpers": "^1.0.19", "hasown": "^2.0.2", "jsx-ast-utils": "^3.3.5", "language-tags": "^1.0.9", "minimatch": "^3.1.2", "object.fromentries": "^2.0.8", "safe-regex-test": "^1.0.3", - "string.prototype.includes": "^2.0.0" - }, - "dependencies": { - "aria-query": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz", - "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==", - "dev": true, - "requires": { - "deep-equal": "^2.0.5" - } - } + "string.prototype.includes": "^2.0.1" } }, "eslint-plugin-prettier": { @@ -12904,9 +13170,9 @@ } }, "eslint-plugin-react": { - "version": "7.35.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.35.0.tgz", - "integrity": "sha512-v501SSMOWv8gerHkk+IIQBkcGRGrO2nfybfj5pLxuJNFTPxxA3PSryhXTK+9pNbtkggheDdsC0E9Q8CuPk6JKA==", + "version": "7.37.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.2.tgz", + "integrity": "sha512-EsTAnj9fLVr/GZleBLFbj/sSuXeWmp1eXIN60ceYnZveqEaUCyW4X+Vh4WTdUhCkW4xutXYqTXCUSyqD4rB75w==", "dev": true, "requires": { "array-includes": "^3.1.8", @@ -12914,7 +13180,7 @@ "array.prototype.flatmap": "^1.3.2", "array.prototype.tosorted": "^1.1.4", "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.0.19", + "es-iterator-helpers": "^1.1.0", "estraverse": "^5.3.0", "hasown": "^2.0.2", "jsx-ast-utils": "^2.4.1 || ^3.0.0", @@ -13105,23 +13371,6 @@ "reusify": "^1.0.4" } }, - "figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "requires": { - "escape-string-regexp": "^1.0.5" - }, - "dependencies": { - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", - "dev": true - } - } - }, "file-entry-cache": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", @@ -13135,6 +13384,7 @@ "version": "7.1.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "devOptional": true, "requires": { "to-regex-range": "^5.0.1" } @@ -13210,6 +13460,7 @@ "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, "optional": true }, "function-bind": { @@ -13313,12 +13564,13 @@ "dev": true }, "globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", "dev": true, "requires": { - "define-properties": "^1.1.3" + "define-properties": "^1.2.1", + "gopd": "^1.0.1" } }, "globby": { @@ -13499,9 +13751,9 @@ "dev": true }, "immutable": { - "version": "4.2.4", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.4.tgz", - "integrity": "sha512-WDxL3Hheb1JkRN3sQkyujNlL/xRjAo3rJtaU5xeufUauG66JdMr32bLj4gF+vWl84DIA3Zxw7tiAjneYzRRw+w==" + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.0.3.tgz", + "integrity": "sha512-P8IdPQHq3lA1xVeBRi5VPqUm5HDgKnx0Ru51wZz5mjxHr5n3RWhjIpOFU7ybkUxfB+5IToy+OLaHYDBIWsv+uw==" }, "import-fresh": { "version": "3.3.0", @@ -13594,14 +13846,6 @@ "has-bigints": "^1.0.1" } }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "requires": { - "binary-extensions": "^2.0.0" - } - }, "is-boolean-object": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", @@ -13625,11 +13869,11 @@ "dev": true }, "is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", "requires": { - "hasown": "^2.0.0" + "hasown": "^2.0.2" } }, "is-data-view": { @@ -13653,7 +13897,8 @@ "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==" + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "devOptional": true }, "is-finalizationregistry": { "version": "1.0.2", @@ -13683,6 +13928,7 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "devOptional": true, "requires": { "is-extglob": "^2.1.1" } @@ -13708,7 +13954,8 @@ "is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "devOptional": true }, "is-number-object": { "version": "1.0.7", @@ -13882,9 +14129,9 @@ } }, "iterator.prototype": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz", - "integrity": "sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.3.tgz", + "integrity": "sha512-FW5iMbeQ6rBGm/oKgzq2aW4KvAGpxPzYES8N4g4xNXUKpL1mclMvOe+76AcLDTvD+Ze+sOpVhgdAQEKF4L9iGQ==", "dev": true, "requires": { "define-properties": "^1.2.1", @@ -14201,13 +14448,13 @@ } }, "material-react-table": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/material-react-table/-/material-react-table-2.13.1.tgz", - "integrity": "sha512-3iWwCa24ogxwllP4+W11euR/GV6f5wQE5FEilJ72/H3hDYHgsN+XehANytaG0G7/qy/OWYE7oXkcsRUU35I/iA==", + "version": "2.13.3", + "resolved": "https://registry.npmjs.org/material-react-table/-/material-react-table-2.13.3.tgz", + "integrity": "sha512-xeyAEG6UYG3qgBIo17epAP5zsWT1pH0uCEkaUxvhki9sGcP35OqfOMSZJNhISvmqEqXKYHdqKbZI6iOwsg1sYA==", "requires": { - "@tanstack/match-sorter-utils": "8.15.1", - "@tanstack/react-table": "8.19.3", - "@tanstack/react-virtual": "3.8.3", + "@tanstack/match-sorter-utils": "8.19.4", + "@tanstack/react-table": "8.20.5", + "@tanstack/react-virtual": "3.10.6", "highlight-words": "1.2.2" } }, @@ -14238,7 +14485,7 @@ "version": "4.0.8", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - "dev": true, + "devOptional": true, "requires": { "braces": "^3.0.3", "picomatch": "^2.3.1" @@ -14314,26 +14561,28 @@ "dev": true }, "msw": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/msw/-/msw-2.4.1.tgz", - "integrity": "sha512-HXcoQPzYTwEmVk+BGIcRa0vLabBT+J20SSSeYh/QfajaK5ceA6dlD4ZZjfz2dqGEq4vRNCPLP6eXsB94KllPFg==", + "version": "2.6.8", + "resolved": "https://registry.npmjs.org/msw/-/msw-2.6.8.tgz", + "integrity": "sha512-nxXxnH6WALZ9a7rsQp4HU2AaD4iGAiouMmE/MY4al7pXTibgA6OZOuKhmN2WBIM6w9qMKwRtX8p2iOb45B2M/Q==", "dev": true, "requires": { - "@bundled-es-modules/cookie": "^2.0.0", + "@bundled-es-modules/cookie": "^2.0.1", "@bundled-es-modules/statuses": "^1.0.1", "@bundled-es-modules/tough-cookie": "^0.1.6", - "@inquirer/confirm": "^3.0.0", - "@mswjs/interceptors": "^0.29.0", + "@inquirer/confirm": "^5.0.0", + "@mswjs/interceptors": "^0.37.0", + "@open-draft/deferred-promise": "^2.2.0", "@open-draft/until": "^2.1.0", "@types/cookie": "^0.6.0", "@types/statuses": "^2.0.4", "chalk": "^4.1.2", + "graphql": "^16.8.1", "headers-polyfill": "^4.0.2", "is-node-process": "^1.2.0", - "outvariant": "^1.4.2", - "path-to-regexp": "^6.2.0", + "outvariant": "^1.4.3", + "path-to-regexp": "^6.3.0", "strict-event-emitter": "^0.5.1", - "type-fest": "^4.9.0", + "type-fest": "^4.26.1", "yargs": "^17.7.2" }, "dependencies": { @@ -14398,9 +14647,9 @@ } }, "type-fest": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.10.1.tgz", - "integrity": "sha512-7ZnJYTp6uc04uYRISWtiX3DSKB/fxNQT0B5o1OUeCqiQiwF+JC9+rJiZIDrPrNCLLuTqyQmh4VdQqh/ZOkv9MQ==", + "version": "4.27.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.27.0.tgz", + "integrity": "sha512-3IMSWgP7C5KSQqmo1wjhKrwsvXAtF33jO3QY+Uy++ia7hqvgSK6iXbbg5PbDBc1P2ZbNEDgejOrN4YooXvhwCw==", "dev": true }, "yargs": { @@ -14433,9 +14682,9 @@ "requires": {} }, "mute-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz", - "integrity": "sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-2.0.0.tgz", + "integrity": "sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==", "dev": true }, "nanoid": { @@ -14460,17 +14709,18 @@ "tslib": "^2.0.3" } }, + "node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", + "optional": true + }, "node-releases": { "version": "2.0.18", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", "dev": true }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" - }, "normalize-range": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", @@ -14563,15 +14813,14 @@ } }, "object.groupby": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz", - "integrity": "sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", + "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", "dev": true, "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2" } }, "object.values": { @@ -14586,9 +14835,9 @@ } }, "oidc-client-ts": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/oidc-client-ts/-/oidc-client-ts-3.0.1.tgz", - "integrity": "sha512-xX8unZNtmtw3sOz4FPSqDhkLFnxCDsdo2qhFEH2opgWnF/iXMFoYdBQzkwCxAZVgt3FT3DnuBY3k80EZHT0RYg==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/oidc-client-ts/-/oidc-client-ts-3.1.0.tgz", + "integrity": "sha512-IDopEXjiwjkmJLYZo6BTlvwOtnlSniWZkKZoXforC/oLZHC9wkIxd25Kwtmo5yKFMMVcsp3JY6bhcNJqdYk8+g==", "requires": { "jwt-decode": "^4.0.0" } @@ -14603,9 +14852,9 @@ } }, "onroute-policy-engine": { - "version": "0.4.6", - "resolved": "https://registry.npmjs.org/onroute-policy-engine/-/onroute-policy-engine-0.4.6.tgz", - "integrity": "sha512-BmuZu7hP6tjreva2orZPUM6WSRxoZjheYrxQBjRBEC/oHaVXk1wUIANP0zDQAdAj2Q/Tb6yB3q+gWinofkYudQ==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/onroute-policy-engine/-/onroute-policy-engine-0.7.1.tgz", + "integrity": "sha512-6kgEQp4/JKmU5DJzeh+Kplth4g15DuRR37/9c4yMqgCKs1Y0rEzfbsnm4z4odNia58c/9zCNQyupqIOuT9/9fQ==", "requires": { "dayjs": "^1.11.10", "json-rules-engine": "^6.5.0" @@ -14626,9 +14875,9 @@ } }, "outvariant": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/outvariant/-/outvariant-1.4.2.tgz", - "integrity": "sha512-Ou3dJ6bA/UJ5GVHxah4LnqDwZRwAmWxrG3wtrHrbGnP4RnLCtA64A4F+ae7Y8ww660JaddSoArUR5HjipWSHAQ==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/outvariant/-/outvariant-1.4.3.tgz", + "integrity": "sha512-+Sl2UErvtsoajRDKCE5/dBz4DIvHXQQnAxtQTF04OJxY0+DyZXSo5P5Bb7XYWOh81syohlYL24hbDwxedPUJCA==", "dev": true }, "p-limit": { @@ -14701,9 +14950,9 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "path-to-regexp": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz", - "integrity": "sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", + "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", "dev": true }, "path-type": { @@ -14724,15 +14973,16 @@ "dev": true }, "picocolors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", - "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", "dev": true }, "picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "devOptional": true }, "pkg-types": { "version": "1.0.3", @@ -14758,14 +15008,14 @@ "dev": true }, "postcss": { - "version": "8.4.41", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.41.tgz", - "integrity": "sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==", + "version": "8.4.49", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz", + "integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==", "dev": true, "requires": { "nanoid": "^3.3.7", - "picocolors": "^1.0.1", - "source-map-js": "^1.2.0" + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" } }, "postcss-value-parser": { @@ -14781,9 +15031,9 @@ "dev": true }, "prettier": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz", - "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==", + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.4.2.tgz", + "integrity": "sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==", "dev": true }, "prettier-linter-helpers": { @@ -14878,9 +15128,9 @@ } }, "react-error-boundary": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/react-error-boundary/-/react-error-boundary-4.0.13.tgz", - "integrity": "sha512-b6PwbdSv8XeOSYvjt8LpgpKrZ0yGdtZokYwkwV2wlcZbxgopHX/hgPl5VgpnoVOWd868n1hktM8Qm4b+02MiLQ==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/react-error-boundary/-/react-error-boundary-4.1.2.tgz", + "integrity": "sha512-GQDxZ5Jd+Aq/qUxbCm1UtzmL/s++V7zKgE8yMktJiCQXCCFZnMZh9ng+6/Ne6PjNSXH0L9CjeOEREfRnq6Duag==", "requires": { "@babel/runtime": "^7.12.5" } @@ -14913,26 +15163,26 @@ } }, "react-oidc-context": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/react-oidc-context/-/react-oidc-context-3.1.0.tgz", - "integrity": "sha512-ceQztvDfdl28mbr0So31XF/tCJamyF1+nm4AQNIE/nub+Xs9PLtDqLy/+75Yx1ahI0/n3nsq0R2qcP0R2Laa3Q==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/react-oidc-context/-/react-oidc-context-3.2.0.tgz", + "integrity": "sha512-ZLaCRLWV84Cn9pFdsatmblqxLMv0np69GWVXq9RWGqAjppdOGXNIbIxWMByIio0oSCVUwdeqwYRnJme0tjqd8A==", "requires": {} }, "react-router": { - "version": "6.26.1", - "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.26.1.tgz", - "integrity": "sha512-kIwJveZNwp7teQRI5QmwWo39A5bXRyqpH0COKKmPnyD2vBvDwgFXSqDUYtt1h+FEyfnE8eXr7oe0MxRzVwCcvQ==", + "version": "6.28.0", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.28.0.tgz", + "integrity": "sha512-HrYdIFqdrnhDw0PqG/AKjAqEqM7AvxCz0DQ4h2W8k6nqmc5uRBYDag0SBxx9iYz5G8gnuNVLzUe13wl9eAsXXg==", "requires": { - "@remix-run/router": "1.19.1" + "@remix-run/router": "1.21.0" } }, "react-router-dom": { - "version": "6.26.1", - "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.26.1.tgz", - "integrity": "sha512-veut7m41S1fLql4pLhxeSW3jlqs+4MtjRLj0xvuCEXsxusJCbs6I8yn9BxzzDX2XDgafrccY6hwjmd/bL54tFw==", + "version": "6.28.0", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.28.0.tgz", + "integrity": "sha512-kQ7Unsl5YdyOltsPGl31zOjLrDv+m2VcIEcIHqYYD3Lp0UppLjrzcfJqDJwXxFw3TH/yvapbnUvPlAj7Kx5nbg==", "requires": { - "@remix-run/router": "1.19.1", - "react-router": "6.26.1" + "@remix-run/router": "1.21.0", + "react-router": "6.28.0" } }, "react-simple-animate": { @@ -14954,12 +15204,9 @@ } }, "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "requires": { - "picomatch": "^2.2.1" - } + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", + "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==" }, "redent": { "version": "3.0.0", @@ -15046,28 +15293,30 @@ } }, "rollup": { - "version": "4.21.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.21.0.tgz", - "integrity": "sha512-vo+S/lfA2lMS7rZ2Qoubi6I5hwZwzXeUIctILZLbHI+laNtvhhOIon2S1JksA5UEDQ7l3vberd0fxK44lTYjbQ==", - "dev": true, - "requires": { - "@rollup/rollup-android-arm-eabi": "4.21.0", - "@rollup/rollup-android-arm64": "4.21.0", - "@rollup/rollup-darwin-arm64": "4.21.0", - "@rollup/rollup-darwin-x64": "4.21.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.21.0", - "@rollup/rollup-linux-arm-musleabihf": "4.21.0", - "@rollup/rollup-linux-arm64-gnu": "4.21.0", - "@rollup/rollup-linux-arm64-musl": "4.21.0", - "@rollup/rollup-linux-powerpc64le-gnu": "4.21.0", - "@rollup/rollup-linux-riscv64-gnu": "4.21.0", - "@rollup/rollup-linux-s390x-gnu": "4.21.0", - "@rollup/rollup-linux-x64-gnu": "4.21.0", - "@rollup/rollup-linux-x64-musl": "4.21.0", - "@rollup/rollup-win32-arm64-msvc": "4.21.0", - "@rollup/rollup-win32-ia32-msvc": "4.21.0", - "@rollup/rollup-win32-x64-msvc": "4.21.0", - "@types/estree": "1.0.5", + "version": "4.27.3", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.27.3.tgz", + "integrity": "sha512-SLsCOnlmGt9VoZ9Ek8yBK8tAdmPHeppkw+Xa7yDlCEhDTvwYei03JlWo1fdc7YTfLZ4tD8riJCUyAgTbszk1fQ==", + "dev": true, + "requires": { + "@rollup/rollup-android-arm-eabi": "4.27.3", + "@rollup/rollup-android-arm64": "4.27.3", + "@rollup/rollup-darwin-arm64": "4.27.3", + "@rollup/rollup-darwin-x64": "4.27.3", + "@rollup/rollup-freebsd-arm64": "4.27.3", + "@rollup/rollup-freebsd-x64": "4.27.3", + "@rollup/rollup-linux-arm-gnueabihf": "4.27.3", + "@rollup/rollup-linux-arm-musleabihf": "4.27.3", + "@rollup/rollup-linux-arm64-gnu": "4.27.3", + "@rollup/rollup-linux-arm64-musl": "4.27.3", + "@rollup/rollup-linux-powerpc64le-gnu": "4.27.3", + "@rollup/rollup-linux-riscv64-gnu": "4.27.3", + "@rollup/rollup-linux-s390x-gnu": "4.27.3", + "@rollup/rollup-linux-x64-gnu": "4.27.3", + "@rollup/rollup-linux-x64-musl": "4.27.3", + "@rollup/rollup-win32-arm64-msvc": "4.27.3", + "@rollup/rollup-win32-ia32-msvc": "4.27.3", + "@rollup/rollup-win32-x64-msvc": "4.27.3", + "@types/estree": "1.0.6", "fsevents": "~2.3.2" } }, @@ -15077,12 +15326,6 @@ "integrity": "sha512-APM0Gt1KoXBz0iIkkdB/kfvGOwC4UuJFeG/c+yV7wSc7q96cG/kJ0HiYCnzivD9SB53cLV1MlHFNfOuPaadYSw==", "dev": true }, - "run-async": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-3.0.0.tgz", - "integrity": "sha512-540WwVDOMxA6dN6We19EcT9sc3hkXPw5mzRNGM3FkdN/vtE9NFvj5lFAPNwUDmJjXidm3v7TC1cTE7t17Ulm1Q==", - "dev": true - }, "run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -15122,12 +15365,13 @@ "dev": true }, "sass": { - "version": "1.77.8", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.77.8.tgz", - "integrity": "sha512-4UHg6prsrycW20fqLGPShtEvo/WyHRVRHwOP4DzkUrObWoWI05QBSfzU71TVB7PFaL104TwNaHpjlWXAZbQiNQ==", + "version": "1.82.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.82.0.tgz", + "integrity": "sha512-j4GMCTa8elGyN9A7x7bEglx0VgSpNUG4W4wNedQ33wSMdnkqQCT8HTwOaVSV4e6yQovcu/3Oc4coJP/l0xhL2Q==", "requires": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", + "@parcel/watcher": "^2.4.1", + "chokidar": "^4.0.0", + "immutable": "^5.0.2", "source-map-js": ">=0.6.2 <2.0.0" } }, @@ -15241,9 +15485,9 @@ "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==" }, "source-map-js": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", - "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==" + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==" }, "stackback": { "version": "0.0.2", @@ -15298,13 +15542,14 @@ } }, "string.prototype.includes": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.0.tgz", - "integrity": "sha512-E34CkBgyeqNDcrbU76cDjL5JLcVrtSdYq0MEh/B10r17pRP4ciHLwTgnuLV8Ay6cgEMLkcBkFCKyFZ43YldYzg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz", + "integrity": "sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==", "dev": true, "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.3" } }, "string.prototype.matchall": { @@ -15508,6 +15753,7 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "devOptional": true, "requires": { "is-number": "^7.0.0" } @@ -15650,9 +15896,9 @@ } }, "typescript": { - "version": "5.5.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", - "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz", + "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==", "dev": true }, "ufo": { @@ -15735,14 +15981,14 @@ "integrity": "sha512-c1Q0mCiPlgdTVVVIJIrBuxNicYE+t/7oKeI9MWLj3fh/uq2Pxh/3eeWbVZ4OcGW1TUf53At0njHw5SMdA3tmMg==" }, "vite": { - "version": "5.4.2", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.2.tgz", - "integrity": "sha512-dDrQTRHp5C1fTFzcSaMxjk6vdpKvT+2/mIdE07Gw2ykehT49O0z/VHS3zZ8iV/Gh8BJJKHWOe5RjaNrW5xf/GA==", + "version": "5.4.11", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.11.tgz", + "integrity": "sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==", "dev": true, "requires": { "esbuild": "^0.21.3", "fsevents": "~2.3.3", - "postcss": "^8.4.41", + "postcss": "^8.4.43", "rollup": "^4.20.0" } }, @@ -15771,9 +16017,9 @@ }, "dependencies": { "rollup": { - "version": "2.79.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz", - "integrity": "sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==", + "version": "2.79.2", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.2.tgz", + "integrity": "sha512-fS6iqSPZDs3dr/y7Od6y5nha8dW1YnbgtsyotCVvoFGKbERG++CVRFv1meyGDE1SNItQA8BrnCw7ScdAhRJ3XQ==", "dev": true, "requires": { "fsevents": "~2.3.2" @@ -15782,26 +16028,32 @@ } }, "vite-plugin-svgr": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/vite-plugin-svgr/-/vite-plugin-svgr-4.2.0.tgz", - "integrity": "sha512-SC7+FfVtNQk7So0XMjrrtLAbEC8qjFPifyD7+fs/E6aaNdVde6umlVVh0QuwDLdOMu7vp5RiGFsB70nj5yo0XA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/vite-plugin-svgr/-/vite-plugin-svgr-4.3.0.tgz", + "integrity": "sha512-Jy9qLB2/PyWklpYy0xk0UU3TlU0t2UMpJXZvf+hWII1lAmRHrOUKi11Uw8N3rxoNk7atZNYO3pR3vI1f7oi+6w==", "dev": true, "requires": { - "@rollup/pluginutils": "^5.0.5", + "@rollup/pluginutils": "^5.1.3", "@svgr/core": "^8.1.0", "@svgr/plugin-jsx": "^8.1.0" }, "dependencies": { "@rollup/pluginutils": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.0.tgz", - "integrity": "sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.3.tgz", + "integrity": "sha512-Pnsb6f32CD2W3uCaLZIzDmeFyQ2b8UWMFI7xtwUezpcGBDVDW6y9XgAWIlARiGAo6eNF5FK5aQTr0LFyNyqq5A==", "dev": true, "requires": { "@types/estree": "^1.0.0", "estree-walker": "^2.0.2", - "picomatch": "^2.3.1" + "picomatch": "^4.0.2" } + }, + "picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "dev": true } } }, @@ -16062,6 +16314,12 @@ "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true + }, + "yoctocolors-cjs": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yoctocolors-cjs/-/yoctocolors-cjs-2.1.2.tgz", + "integrity": "sha512-cYVsTjKl8b+FrnidjibDWskAv7UKOfcwaVZdp/it9n1s9fU3IkgDbhdIRKCW4JDsAlECJY0ytoVPT3sK6kideA==", + "dev": true } } } diff --git a/frontend/package.json b/frontend/package.json index 6e2a5b0fb..b74462188 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -4,32 +4,32 @@ "private": true, "dependencies": { "@bcgov/bc-sans": "^2.1.0", - "@emotion/react": "^11.13.3", - "@emotion/styled": "^11.13.0", - "@fortawesome/fontawesome-svg-core": "^6.6.0", - "@fortawesome/free-regular-svg-icons": "^6.6.0", - "@fortawesome/free-solid-svg-icons": "^6.6.0", + "@emotion/react": "^11.14.0", + "@emotion/styled": "^11.14.0", + "@fortawesome/fontawesome-svg-core": "^6.7.1", + "@fortawesome/free-regular-svg-icons": "^6.7.1", + "@fortawesome/free-solid-svg-icons": "^6.7.1", "@fortawesome/react-fontawesome": "^0.2.2", - "@mui/icons-material": "^5.16.7", - "@mui/material": "^5.16.7", + "@mui/icons-material": "^5.16.9", + "@mui/material": "^5.16.9", "@mui/x-date-pickers": "^6.20.2", - "@tanstack/react-query": "^5.52.2", + "@tanstack/react-query": "^5.62.3", "@uidotdev/usehooks": "^2.4.1", - "axios": "^1.7.5", + "axios": "^1.7.9", "dayjs": "^1.11.13", "lottie-web": "^5.12.2", - "material-react-table": "^2.13.1", + "material-react-table": "^2.13.3", "mui-nested-menu": "^3.4.0", - "oidc-client-ts": "^3.0.1", - "onroute-policy-engine": "^0.4.6", + "oidc-client-ts": "^3.1.0", + "onroute-policy-engine": "^0.7.1", "react": "^18.3.1", "react-dom": "^18.3.1", - "react-error-boundary": "^4.0.13", + "react-error-boundary": "^4.1.2", "react-hook-form": "^7.50.1", "react-modal": "^3.16.1", - "react-oidc-context": "^3.1.0", - "react-router-dom": "^6.26.1", - "sass": "^1.77.8", + "react-oidc-context": "^3.2.0", + "react-router-dom": "^6.28.0", + "sass": "^1.82.0", "uuid": "^9.0.1", "validator": "^13.12.0" }, @@ -57,35 +57,35 @@ }, "devDependencies": { "@hookform/devtools": "^4.3.1", - "@mswjs/data": "^0.16.1", - "@testing-library/jest-dom": "^6.5.0", + "@mswjs/data": "^0.16.2", + "@testing-library/jest-dom": "^6.6.3", "@testing-library/react": "^14.3.1", "@testing-library/user-event": "^14.5.2", - "@types/material-ui": "^0.21.17", - "@types/node": "^20.16.2", - "@types/react": "^18.3.4", - "@types/react-dom": "^18.3.0", + "@types/material-ui": "^0.21.18", + "@types/node": "^20.17.9", + "@types/react": "^18.3.14", + "@types/react-dom": "^18.3.2", "@types/react-modal": "^3.16.3", - "@types/validator": "^13.12.1", + "@types/validator": "^13.12.2", "@typescript-eslint/eslint-plugin": "^7.18.0", "@typescript-eslint/parser": "^7.18.0", - "@vitejs/plugin-react-swc": "^3.7.0", + "@vitejs/plugin-react-swc": "^3.7.2", "@vitest/coverage-v8": "^1.6.0", "autoprefixer": "^10.4.20", "eslint": "^8.57.0", "eslint-config-prettier": "^9.1.0", - "eslint-plugin-import": "^2.29.1", - "eslint-plugin-jsx-a11y": "^6.9.0", + "eslint-plugin-import": "^2.31.0", + "eslint-plugin-jsx-a11y": "^6.10.2", "eslint-plugin-prettier": "^5.2.1", - "eslint-plugin-react": "^7.35.0", + "eslint-plugin-react": "^7.37.2", "jsdom": "^24.1.3", - "msw": "^2.4.1", - "postcss": "^8.4.41", - "prettier": "^3.3.3", - "typescript": "^5.5.4", - "vite": "^5.4.2", + "msw": "^2.6.8", + "postcss": "^8.4.49", + "prettier": "^3.4.2", + "typescript": "^5.7.2", + "vite": "^5.4.11", "vite-plugin-eslint": "^1.8.1", - "vite-plugin-svgr": "^4.2.0", + "vite-plugin-svgr": "^4.3.0", "vite-tsconfig-paths": "^4.3.2", "vitest": "^1.6.0", "vitest-canvas-mock": "^0.3.3" diff --git a/policy/package-lock.json b/policy/package-lock.json index d4a7e1f40..04782396a 100644 --- a/policy/package-lock.json +++ b/policy/package-lock.json @@ -13,17 +13,17 @@ "@automapper/core": "^8.8.1", "@automapper/nestjs": "^8.8.1", "@automapper/types": "^6.3.1", - "@nestjs/axios": "^3.0.3", - "@nestjs/cache-manager": "^2.2.2", - "@nestjs/cli": "^10.4.4", - "@nestjs/common": "^10.4.1", - "@nestjs/config": "^3.2.3", - "@nestjs/core": "^10.4.1", + "@nestjs/axios": "^3.1.3", + "@nestjs/cache-manager": "^2.3.0", + "@nestjs/cli": "^10.4.9", + "@nestjs/common": "^10.4.15", + "@nestjs/config": "^3.3.0", + "@nestjs/core": "^10.4.15", "@nestjs/passport": "^10.0.3", - "@nestjs/platform-express": "^10.4.1", - "@nestjs/schematics": "^10.1.4", - "@nestjs/swagger": "^7.4.0", - "@nestjs/testing": "^10.4.1", + "@nestjs/platform-express": "^10.4.15", + "@nestjs/schematics": "^10.2.3", + "@nestjs/swagger": "^7.4.2", + "@nestjs/testing": "^10.4.15", "@nestjs/typeorm": "^10.0.2", "@types/response-time": "^2.3.8", "axios-retry": "^4.5.0", @@ -31,28 +31,28 @@ "class-transformer": "^0.5.1", "class-validator": "^0.14.1", "dayjs": "^1.11.13", - "dotenv": "^16.4.5", - "helmet": "^7.1.0", + "dotenv": "^16.4.7", + "helmet": "^7.2.0", "jwks-rsa": "^3.1.0", "mssql": "^10.0.4", "nest-winston": "^1.10.0", - "nestjs-cls": "^4.4.1", + "nestjs-cls": "^4.5.0", "passport": "^0.7.0", "passport-jwt": "^4.0.1", - "response-time": "^2.3.2", + "response-time": "^2.3.3", "rxjs": "^7.8.1", "swagger-ui-express": "^5.0.1", "typeorm": "^0.3.20", "typescript-eslint": "^7.18.0", "uuid": "^9.0.1", - "winston": "^3.14.2" + "winston": "^3.17.0" }, "devDependencies": { - "@golevelup/ts-jest": "^0.5.4", + "@golevelup/ts-jest": "^0.6.1", "@types/express": "^4.17.21", - "@types/jest": "^29.5.12", + "@types/jest": "^29.5.14", "@types/multer": "^1.4.12", - "@types/node": "^20.16.1", + "@types/node": "^20.17.9", "@types/passport-jwt": "^4.0.1", "@types/supertest": "^6.0.2", "@types/uuid": "^10.0.0", @@ -60,7 +60,7 @@ "eslint-config-airbnb-base": "^15.0.0", "eslint-config-prettier": "^9.1.0", "eslint-config-standard": "^17.1.0", - "eslint-plugin-import": "^2.29.1", + "eslint-plugin-import": "^2.31.0", "eslint-plugin-node": "^11.1.0", "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-promise": "^6.6.0", @@ -68,8 +68,8 @@ "jest": "^29.7.0", "jest-badges": "^0.1.3", "jest-sonar-reporter": "^2.0.0", - "lint-staged": "^15.2.9", - "prettier": "^3.3.3", + "lint-staged": "^15.2.10", + "prettier": "^3.4.2", "rimraf": "^5.0.10", "source-map-support": "^0.5.21", "supertest": "^7.0.0", @@ -77,7 +77,7 @@ "ts-loader": "^9.5.1", "ts-node": "^10.9.2", "tsconfig-paths": "^4.2.0", - "typescript": "^5.5.4" + "typescript": "^5.7.2" } }, "node_modules/@ampproject/remapping": { @@ -95,10 +95,9 @@ } }, "node_modules/@angular-devkit/core": { - "version": "17.3.8", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-17.3.8.tgz", - "integrity": "sha512-Q8q0voCGudbdCgJ7lXdnyaxKHbNQBARH68zPQV72WT8NWy+Gw/tys870i6L58NWbBaCJEUcIj/kb6KoakSRu+Q==", - "license": "MIT", + "version": "17.3.11", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-17.3.11.tgz", + "integrity": "sha512-vTNDYNsLIWpYk2I969LMQFH29GTsLzxNk/0cLw5q56ARF0v5sIWfHYwGTS88jdDqIpuuettcSczbxeA7EuAmqQ==", "dependencies": { "ajv": "8.12.0", "ajv-formats": "2.1.1", @@ -122,12 +121,11 @@ } }, "node_modules/@angular-devkit/schematics": { - "version": "17.3.8", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-17.3.8.tgz", - "integrity": "sha512-QRVEYpIfgkprNHc916JlPuNbLzOgrm9DZalHasnLUz4P6g7pR21olb8YCyM2OTJjombNhya9ZpckcADU5Qyvlg==", - "license": "MIT", + "version": "17.3.11", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-17.3.11.tgz", + "integrity": "sha512-I5wviiIqiFwar9Pdk30Lujk8FczEEc18i22A5c6Z9lbmhPQdTroDnEQdsfXjy404wPe8H62s0I15o4pmMGfTYQ==", "dependencies": { - "@angular-devkit/core": "17.3.8", + "@angular-devkit/core": "17.3.11", "jsonc-parser": "3.2.1", "magic-string": "0.30.8", "ora": "5.4.1", @@ -140,13 +138,12 @@ } }, "node_modules/@angular-devkit/schematics-cli": { - "version": "17.3.8", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics-cli/-/schematics-cli-17.3.8.tgz", - "integrity": "sha512-TjmiwWJarX7oqvNiRAroQ5/LeKUatxBOCNEuKXO/PV8e7pn/Hr/BqfFm+UcYrQoFdZplmtNAfqmbqgVziKvCpA==", - "license": "MIT", + "version": "17.3.11", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics-cli/-/schematics-cli-17.3.11.tgz", + "integrity": "sha512-kcOMqp+PHAKkqRad7Zd7PbpqJ0LqLaNZdY1+k66lLWmkEBozgq8v4ASn/puPWf9Bo0HpCiK+EzLf0VHE8Z/y6Q==", "dependencies": { - "@angular-devkit/core": "17.3.8", - "@angular-devkit/schematics": "17.3.8", + "@angular-devkit/core": "17.3.11", + "@angular-devkit/schematics": "17.3.11", "ansi-colors": "4.1.3", "inquirer": "9.2.15", "symbol-observable": "4.0.0", @@ -165,7 +162,6 @@ "version": "5.3.0", "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", - "license": "MIT", "engines": { "node": "^12.17.0 || ^14.13 || >=16.0.0" }, @@ -177,7 +173,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-4.1.0.tgz", "integrity": "sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==", - "license": "ISC", "engines": { "node": ">= 12" } @@ -186,7 +181,6 @@ "version": "9.2.15", "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-9.2.15.tgz", "integrity": "sha512-vI2w4zl/mDluHt9YEQ/543VTCwPKWiHzKtm9dM2V0NdFcqEexDAjUHzO1oA60HRNaVifGXXM1tRRNluLVHa0Kg==", - "license": "MIT", "dependencies": { "@ljharb/through": "^2.3.12", "ansi-escapes": "^4.3.2", @@ -212,7 +206,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz", "integrity": "sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==", - "license": "ISC", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } @@ -221,7 +214,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/run-async/-/run-async-3.0.0.tgz", "integrity": "sha512-540WwVDOMxA6dN6We19EcT9sc3hkXPw5mzRNGM3FkdN/vtE9NFvj5lFAPNwUDmJjXidm3v7TC1cTE7t17Ulm1Q==", - "license": "MIT", "engines": { "node": ">=0.12.0" } @@ -1403,9 +1395,9 @@ } }, "node_modules/@golevelup/ts-jest": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/@golevelup/ts-jest/-/ts-jest-0.5.4.tgz", - "integrity": "sha512-2djwElTE0dMyjK6uYk7YqGs5BoA++O+bqhzDVsWHXrUD9XlOj3Ig0JeyILC8P7eBvSbWPaA61xaJX4doDvi4oQ==", + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/@golevelup/ts-jest/-/ts-jest-0.6.1.tgz", + "integrity": "sha512-ubs2xao8q2BsFWD6g2GnkWLLIeVHsPQKYMihzk3v0ptegKJhlNRZvk8wodDx2U2MI7cyKh43mueafZ9xpYdwHQ==", "dev": true }, "node_modules/@humanwhocodes/config-array": { @@ -2068,7 +2060,6 @@ "version": "2.3.13", "resolved": "https://registry.npmjs.org/@ljharb/through/-/through-2.3.13.tgz", "integrity": "sha512-/gKJun8NNiWGZJkGzI/Ragc53cOdcLNdzjLaIa+GEjguQs0ulsurx8WN0jijdK9yPqDvziX995sMRLyLt1uZMQ==", - "license": "MIT", "dependencies": { "call-bind": "^1.0.7" }, @@ -2092,9 +2083,9 @@ "license": "MIT" }, "node_modules/@nestjs/axios": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@nestjs/axios/-/axios-3.0.3.tgz", - "integrity": "sha512-h6TCn3yJwD6OKqqqfmtRS5Zo4E46Ip2n+gK1sqwzNBC+qxQ9xpCu+ODVRFur6V3alHSCSBxb3nNtt73VEdluyA==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@nestjs/axios/-/axios-3.1.3.tgz", + "integrity": "sha512-RZ/63c1tMxGLqyG3iOCVt7A72oy4x1eM6QEhd4KzCYpaVWW0igq0WSREeRoEZhIxRcZfDfIIkvsOMiM7yfVGZQ==", "peerDependencies": { "@nestjs/common": "^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0", "axios": "^1.3.1", @@ -2102,10 +2093,9 @@ } }, "node_modules/@nestjs/cache-manager": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@nestjs/cache-manager/-/cache-manager-2.2.2.tgz", - "integrity": "sha512-+n7rpU1QABeW2WV17Dl1vZCG3vWjJU1MaamWgZvbGxYE9EeCM0lVLfw3z7acgDTNwOy+K68xuQPoIMxD0bhjlA==", - "license": "MIT", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@nestjs/cache-manager/-/cache-manager-2.3.0.tgz", + "integrity": "sha512-pxeBp9w/s99HaW2+pezM1P3fLiWmUEnTUoUMLa9UYViCtjj0E0A19W/vaT5JFACCzFIeNrwH4/16jkpAhQ25Vw==", "peerDependencies": { "@nestjs/common": "^9.0.0 || ^10.0.0", "@nestjs/core": "^9.0.0 || ^10.0.0", @@ -2114,28 +2104,28 @@ } }, "node_modules/@nestjs/cli": { - "version": "10.4.4", - "resolved": "https://registry.npmjs.org/@nestjs/cli/-/cli-10.4.4.tgz", - "integrity": "sha512-WKERbSZJGof0+9XeeMmWnb/9FpNxogcB5eTJTHjc9no0ymdTw3jTzT+KZL9iC/hGqBpuomDLaNFCYbAOt29nBw==", + "version": "10.4.9", + "resolved": "https://registry.npmjs.org/@nestjs/cli/-/cli-10.4.9.tgz", + "integrity": "sha512-s8qYd97bggqeK7Op3iD49X2MpFtW4LVNLAwXFkfbRxKME6IYT7X0muNTJ2+QfI8hpbNx9isWkrLWIp+g5FOhiA==", "dependencies": { - "@angular-devkit/core": "17.3.8", - "@angular-devkit/schematics": "17.3.8", - "@angular-devkit/schematics-cli": "17.3.8", + "@angular-devkit/core": "17.3.11", + "@angular-devkit/schematics": "17.3.11", + "@angular-devkit/schematics-cli": "17.3.11", "@nestjs/schematics": "^10.0.1", "chalk": "4.1.2", "chokidar": "3.6.0", "cli-table3": "0.6.5", "commander": "4.1.1", "fork-ts-checker-webpack-plugin": "9.0.2", - "glob": "10.4.2", + "glob": "10.4.5", "inquirer": "8.2.6", "node-emoji": "1.11.0", "ora": "5.4.1", "tree-kill": "1.2.2", "tsconfig-paths": "4.2.0", - "tsconfig-paths-webpack-plugin": "4.1.0", - "typescript": "5.3.3", - "webpack": "5.93.0", + "tsconfig-paths-webpack-plugin": "4.2.0", + "typescript": "5.7.2", + "webpack": "5.97.1", "webpack-node-externals": "3.0.0" }, "bin": { @@ -2145,7 +2135,7 @@ "node": ">= 16.14" }, "peerDependencies": { - "@swc/cli": "^0.1.62 || ^0.3.0 || ^0.4.0", + "@swc/cli": "^0.1.62 || ^0.3.0 || ^0.4.0 || ^0.5.0", "@swc/core": "^1.3.62" }, "peerDependenciesMeta": { @@ -2157,26 +2147,13 @@ } } }, - "node_modules/@nestjs/cli/node_modules/typescript": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", - "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, "node_modules/@nestjs/common": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/common/-/common-10.4.1.tgz", - "integrity": "sha512-4CkrDx0s4XuWqFjX8WvOFV7Y6RGJd0P2OBblkhZS7nwoctoSuW5pyEa8SWak6YHNGrHRpFb6ymm5Ai4LncwRVA==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/common/-/common-10.4.15.tgz", + "integrity": "sha512-vaLg1ZgwhG29BuLDxPA9OAcIlgqzp9/N8iG0wGapyUNTf4IY4O6zAHgN6QalwLhFxq7nOI021vdRojR1oF3bqg==", "dependencies": { "iterare": "1.2.1", - "tslib": "2.6.3", + "tslib": "2.8.1", "uid": "2.0.2" }, "funding": { @@ -2199,10 +2176,9 @@ } }, "node_modules/@nestjs/config": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@nestjs/config/-/config-3.2.3.tgz", - "integrity": "sha512-p6yv/CvoBewJ72mBq4NXgOAi2rSQNWx3a+IMJLVKS2uiwFCOQQuiIatGwq6MRjXV3Jr+B41iUO8FIf4xBrZ4/w==", - "license": "MIT", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@nestjs/config/-/config-3.3.0.tgz", + "integrity": "sha512-pdGTp8m9d0ZCrjTpjkUbZx6gyf2IKf+7zlkrPNMsJzYZ4bFRRTpXrnj+556/5uiI6AfL5mMrJc2u7dB6bvM+VA==", "dependencies": { "dotenv": "16.4.5", "dotenv-expand": "10.0.0", @@ -2213,17 +2189,28 @@ "rxjs": "^7.1.0" } }, + "node_modules/@nestjs/config/node_modules/dotenv": { + "version": "16.4.5", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", + "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, "node_modules/@nestjs/core": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/core/-/core-10.4.1.tgz", - "integrity": "sha512-9I1WdfOBCCHdUm+ClBJupOuZQS6UxzIWHIq6Vp1brAA5ZKl/Wq6BVwSsbnUJGBy3J3PM2XHmR0EQ4fwX3nR7lA==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/core/-/core-10.4.15.tgz", + "integrity": "sha512-UBejmdiYwaH6fTsz2QFBlC1cJHM+3UDeLZN+CiP9I1fRv2KlBZsmozGLbV5eS1JAVWJB4T5N5yQ0gjN8ZvcS2w==", "hasInstallScript": true, "dependencies": { "@nuxtjs/opencollective": "0.3.2", "fast-safe-stringify": "2.1.1", "iterare": "1.2.1", - "path-to-regexp": "3.2.0", - "tslib": "2.6.3", + "path-to-regexp": "3.3.0", + "tslib": "2.8.1", "uid": "2.0.2" }, "funding": { @@ -2281,15 +2268,15 @@ } }, "node_modules/@nestjs/platform-express": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/platform-express/-/platform-express-10.4.1.tgz", - "integrity": "sha512-ccfqIDAq/bg1ShLI5KGtaLaYGykuAdvCi57ohewH7eKJSIpWY1DQjbgKlFfXokALYUq1YOMGqjeZ244OWHfDQg==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/platform-express/-/platform-express-10.4.15.tgz", + "integrity": "sha512-63ZZPkXHjoDyO7ahGOVcybZCRa7/Scp6mObQKjcX/fTEq1YJeU75ELvMsuQgc8U2opMGOBD7GVuc4DV0oeDHoA==", "dependencies": { - "body-parser": "1.20.2", + "body-parser": "1.20.3", "cors": "2.8.5", - "express": "4.19.2", + "express": "4.21.2", "multer": "1.4.4-lts.1", - "tslib": "2.6.3" + "tslib": "2.8.1" }, "funding": { "type": "opencollective", @@ -2301,13 +2288,13 @@ } }, "node_modules/@nestjs/schematics": { - "version": "10.1.4", - "resolved": "https://registry.npmjs.org/@nestjs/schematics/-/schematics-10.1.4.tgz", - "integrity": "sha512-QpY8ez9cTvXXPr3/KBrtSgXQHMSV6BkOUYy2c2TTe6cBqriEdGnCYqGl8cnfrQl3632q3lveQPaZ/c127dHsEw==", + "version": "10.2.3", + "resolved": "https://registry.npmjs.org/@nestjs/schematics/-/schematics-10.2.3.tgz", + "integrity": "sha512-4e8gxaCk7DhBxVUly2PjYL4xC2ifDFexCqq1/u4TtivLGXotVk0wHdYuPYe1tHTHuR1lsOkRbfOCpkdTnigLVg==", "dependencies": { - "@angular-devkit/core": "17.3.8", - "@angular-devkit/schematics": "17.3.8", - "comment-json": "4.2.3", + "@angular-devkit/core": "17.3.11", + "@angular-devkit/schematics": "17.3.11", + "comment-json": "4.2.5", "jsonc-parser": "3.3.1", "pluralize": "8.0.0" }, @@ -2322,16 +2309,15 @@ "license": "MIT" }, "node_modules/@nestjs/swagger": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@nestjs/swagger/-/swagger-7.4.0.tgz", - "integrity": "sha512-dCiwKkRxcR7dZs5jtrGspBAe/nqJd1AYzOBTzw9iCdbq3BGrLpwokelk6lFZPe4twpTsPQqzNKBwKzVbI6AR/g==", - "license": "MIT", + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/@nestjs/swagger/-/swagger-7.4.2.tgz", + "integrity": "sha512-Mu6TEn1M/owIvAx2B4DUQObQXqo2028R2s9rSZ/hJEgBK95+doTwS0DjmVA2wTeZTyVtXOoN7CsoM5pONBzvKQ==", "dependencies": { "@microsoft/tsdoc": "^0.15.0", "@nestjs/mapped-types": "2.0.5", "js-yaml": "4.1.0", "lodash": "4.17.21", - "path-to-regexp": "3.2.0", + "path-to-regexp": "3.3.0", "swagger-ui-dist": "5.17.14" }, "peerDependencies": { @@ -2355,11 +2341,11 @@ } }, "node_modules/@nestjs/testing": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/testing/-/testing-10.4.1.tgz", - "integrity": "sha512-pR+su5+YGqCLH0RhhVkPowQK7FCORU0/PWAywPK7LScAOtD67ZoviZ7hAU4vnGdwkg4HCB0D7W8Bkg19CGU8Xw==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/testing/-/testing-10.4.15.tgz", + "integrity": "sha512-eGlWESkACMKti+iZk1hs6FUY/UqObmMaa8HAN9JLnaYkoLf1Jeh+EuHlGnfqo/Rq77oznNLIyaA3PFjrFDlNUg==", "dependencies": { - "tslib": "2.6.3" + "tslib": "2.8.1" }, "funding": { "type": "opencollective", @@ -2471,6 +2457,12 @@ "url": "https://opencollective.com/unts" } }, + "node_modules/@rtsao/scc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", + "dev": true + }, "node_modules/@sinclair/typebox": { "version": "0.27.8", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", @@ -2630,10 +2622,9 @@ } }, "node_modules/@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", - "license": "MIT" + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==" }, "node_modules/@types/express": { "version": "4.17.21", @@ -2703,11 +2694,10 @@ } }, "node_modules/@types/jest": { - "version": "29.5.12", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.12.tgz", - "integrity": "sha512-eDC8bTvT/QhYdxJAulQikueigY5AsdBRH2yDKW3yveW7svY3+DzN84/2NUgkw10RTiJbWqZrTtoGVdYlvFJdLw==", + "version": "29.5.14", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.14.tgz", + "integrity": "sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==", "dev": true, - "license": "MIT", "dependencies": { "expect": "^29.0.0", "pretty-format": "^29.0.0" @@ -2758,9 +2748,9 @@ } }, "node_modules/@types/node": { - "version": "20.16.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.1.tgz", - "integrity": "sha512-zJDo7wEadFtSyNz5QITDfRcrhqDvQI1xQNQ0VoizPjM/dVAODqqIUWbJPkvsxmTI0MYRGRikcdjMPhOssnPejQ==", + "version": "20.17.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.9.tgz", + "integrity": "sha512-0JOXkRyLanfGPE2QRCwgxhzlBAvaRdCNMcvbd7jFfpmD4eEXll7LRwy5ymJmyeZqk7Nh7eD2LeUyQ68BbndmXw==", "dependencies": { "undici-types": "~6.19.2" } @@ -2889,8 +2879,7 @@ "node_modules/@types/triple-beam": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.5.tgz", - "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==", - "license": "MIT" + "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==" }, "node_modules/@types/uuid": { "version": "10.0.0", @@ -3202,162 +3191,145 @@ "license": "ISC" }, "node_modules/@webassemblyjs/ast": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", - "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", - "license": "MIT", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.14.1.tgz", + "integrity": "sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==", "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + "@webassemblyjs/helper-numbers": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2" } }, "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", - "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", - "license": "MIT" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz", + "integrity": "sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==" }, "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", - "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", - "license": "MIT" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz", + "integrity": "sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==" }, "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", - "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", - "license": "MIT" + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz", + "integrity": "sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==" }, "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", - "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", - "license": "MIT", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz", + "integrity": "sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==", "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.6", - "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/floating-point-hex-parser": "1.13.2", + "@webassemblyjs/helper-api-error": "1.13.2", "@xtuc/long": "4.2.2" } }, "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", - "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", - "license": "MIT" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz", + "integrity": "sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==" }, "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", - "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", - "license": "MIT", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz", + "integrity": "sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/wasm-gen": "1.12.1" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/wasm-gen": "1.14.1" } }, "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", - "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", - "license": "MIT", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz", + "integrity": "sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==", "dependencies": { "@xtuc/ieee754": "^1.2.0" } }, "node_modules/@webassemblyjs/leb128": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", - "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", - "license": "Apache-2.0", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.13.2.tgz", + "integrity": "sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==", "dependencies": { "@xtuc/long": "4.2.2" } }, "node_modules/@webassemblyjs/utf8": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", - "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", - "license": "MIT" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.13.2.tgz", + "integrity": "sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==" }, "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", - "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", - "license": "MIT", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz", + "integrity": "sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/helper-wasm-section": "1.12.1", - "@webassemblyjs/wasm-gen": "1.12.1", - "@webassemblyjs/wasm-opt": "1.12.1", - "@webassemblyjs/wasm-parser": "1.12.1", - "@webassemblyjs/wast-printer": "1.12.1" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/helper-wasm-section": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-opt": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1", + "@webassemblyjs/wast-printer": "1.14.1" } }, "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", - "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", - "license": "MIT", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz", + "integrity": "sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" } }, "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", - "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", - "license": "MIT", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz", + "integrity": "sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/wasm-gen": "1.12.1", - "@webassemblyjs/wasm-parser": "1.12.1" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1" } }, "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", - "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", - "license": "MIT", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz", + "integrity": "sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-api-error": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-api-error": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" } }, "node_modules/@webassemblyjs/wast-printer": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", - "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", - "license": "MIT", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz", + "integrity": "sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/ast": "1.14.1", "@xtuc/long": "4.2.2" } }, "node_modules/@xtuc/ieee754": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "license": "BSD-3-Clause" + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" }, "node_modules/@xtuc/long": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "license": "Apache-2.0" + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" }, "node_modules/abort-controller": { "version": "3.0.0", @@ -3385,10 +3357,9 @@ } }, "node_modules/acorn": { - "version": "8.12.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz", - "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==", - "license": "MIT", + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", "bin": { "acorn": "bin/acorn" }, @@ -3396,15 +3367,6 @@ "node": ">=0.4.0" } }, - "node_modules/acorn-import-attributes": { - "version": "1.9.5", - "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", - "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", - "license": "MIT", - "peerDependencies": { - "acorn": "^8" - } - }, "node_modules/acorn-jsx": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", @@ -3466,7 +3428,6 @@ "version": "8.12.0", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", - "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", "json-schema-traverse": "^1.0.0", @@ -3482,7 +3443,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", - "license": "MIT", "dependencies": { "ajv": "^8.0.0" }, @@ -3499,7 +3459,6 @@ "version": "4.1.3", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "license": "MIT", "engines": { "node": ">=6" } @@ -3660,8 +3619,7 @@ "node_modules/array-timsort": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/array-timsort/-/array-timsort-1.0.3.tgz", - "integrity": "sha512-/+3GRL7dDAGEfM6TseQk/U+mi18TU2Ms9I3UlLdUMhz2hbvGNTKdj9xniwXfUqgYhHxRx0+8UnKkvlNwVU+cWQ==", - "license": "MIT" + "integrity": "sha512-/+3GRL7dDAGEfM6TseQk/U+mi18TU2Ms9I3UlLdUMhz2hbvGNTKdj9xniwXfUqgYhHxRx0+8UnKkvlNwVU+cWQ==" }, "node_modules/array-union": { "version": "2.1.0", @@ -3985,10 +3943,9 @@ } }, "node_modules/body-parser": { - "version": "1.20.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", - "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", - "license": "MIT", + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "dependencies": { "bytes": "3.1.2", "content-type": "~1.0.5", @@ -3998,7 +3955,7 @@ "http-errors": "2.0.0", "iconv-lite": "0.4.24", "on-finished": "2.4.1", - "qs": "6.11.0", + "qs": "6.13.0", "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" @@ -4031,9 +3988,9 @@ } }, "node_modules/browserslist": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.2.tgz", - "integrity": "sha512-qkqSyistMYdxAcw+CzbZwlBy8AGmS/eEWs+sEV5TnLRGDOL+C5M2EnH6tlZyg0YoAxGJAFKh61En9BR941GnHA==", + "version": "4.24.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", + "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", "funding": [ { "type": "opencollective", @@ -4048,12 +4005,11 @@ "url": "https://github.com/sponsors/ai" } ], - "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001640", - "electron-to-chromium": "^1.4.820", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.1.0" + "caniuse-lite": "^1.0.30001669", + "electron-to-chromium": "^1.5.41", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.1" }, "bin": { "browserslist": "cli.js" @@ -4233,9 +4189,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001641", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001641.tgz", - "integrity": "sha512-Phv5thgl67bHYo1TtMY/MurjkHhV4EDaCosezRXgZ8jzA/Ub+wjxAvbGvjoFENStinwi5kCyOYV3mi5tOGykwA==", + "version": "1.0.30001683", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001683.tgz", + "integrity": "sha512-iqmNnThZ0n70mNwvxpEC2nBJ037ZHZUoBI5Gorh1Mw6IlEAZujEoU1tXA628iZfzm7R9FvFzxbfdgml82a3k8Q==", "funding": [ { "type": "opencollective", @@ -4249,8 +4205,7 @@ "type": "github", "url": "https://github.com/sponsors/ai" } - ], - "license": "CC-BY-4.0" + ] }, "node_modules/chalk": { "version": "4.1.2", @@ -4696,10 +4651,9 @@ } }, "node_modules/comment-json": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/comment-json/-/comment-json-4.2.3.tgz", - "integrity": "sha512-SsxdiOf064DWoZLH799Ata6u7iV658A11PlWtZATDlXPpKGJnbJZ5Z24ybixAi+LUUqJ/GKowAejtC5GFUG7Tw==", - "license": "MIT", + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/comment-json/-/comment-json-4.2.5.tgz", + "integrity": "sha512-bKw/r35jR3HGt5PEPm1ljsQQGyCrR8sFGNiN5L+ykDHdpO8Smxkrkla9Yi6NkQyUrb8V54PGhfMs6NrIwtxtdw==", "dependencies": { "array-timsort": "^1.0.3", "core-util-is": "^1.0.3", @@ -4784,10 +4738,9 @@ "license": "MIT" }, "node_modules/cookie": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", - "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", - "license": "MIT", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", "engines": { "node": ">= 0.6" } @@ -4880,10 +4833,9 @@ "license": "MIT" }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "license": "MIT", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -5136,10 +5088,9 @@ } }, "node_modules/dotenv": { - "version": "16.4.5", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", - "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", - "license": "BSD-2-Clause", + "version": "16.4.7", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz", + "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==", "engines": { "node": ">=12" }, @@ -5194,10 +5145,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.826", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.826.tgz", - "integrity": "sha512-zULpSu/wQI4X9qWAHabbi0ZUfJ/bEFTA6bfdXlg6HSf5XS7A8vMdzpJC4r5Ws/5E5NGdrNHmXgvGewGuHMxhPQ==", - "license": "ISC" + "version": "1.5.63", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.63.tgz", + "integrity": "sha512-ddeXKuY9BHo/mw145axlyWjlJ1UBt4WK3AlvkT7W2AbqfRQoacVoRUCF6wL3uIx/8wT9oLKXzI+rFqHHscByaA==" }, "node_modules/emittery": { "version": "0.13.1", @@ -5225,19 +5175,17 @@ "license": "MIT" }, "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", - "license": "MIT", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "engines": { "node": ">= 0.8" } }, "node_modules/enhanced-resolve": { - "version": "5.17.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz", - "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==", - "license": "MIT", + "version": "5.17.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", + "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", "dependencies": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" @@ -5430,10 +5378,9 @@ } }, "node_modules/escalade": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", - "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", - "license": "MIT", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "engines": { "node": ">=6" } @@ -5441,8 +5388,7 @@ "node_modules/escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "license": "MIT" + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" }, "node_modules/escape-string-regexp": { "version": "4.0.0", @@ -5635,11 +5581,10 @@ "license": "MIT" }, "node_modules/eslint-module-utils": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.1.tgz", - "integrity": "sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz", + "integrity": "sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==", "dev": true, - "license": "MIT", "dependencies": { "debug": "^3.2.7" }, @@ -5657,7 +5602,6 @@ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, - "license": "MIT", "dependencies": { "ms": "^2.1.1" } @@ -5666,8 +5610,7 @@ "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/eslint-plugin-es": { "version": "3.0.1", @@ -5713,35 +5656,36 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.29.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", - "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", + "version": "2.31.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz", + "integrity": "sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==", "dev": true, - "license": "MIT", "dependencies": { - "array-includes": "^3.1.7", - "array.prototype.findlastindex": "^1.2.3", + "@rtsao/scc": "^1.1.0", + "array-includes": "^3.1.8", + "array.prototype.findlastindex": "^1.2.5", "array.prototype.flat": "^1.3.2", "array.prototype.flatmap": "^1.3.2", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.8.0", - "hasown": "^2.0.0", - "is-core-module": "^2.13.1", + "eslint-module-utils": "^2.12.0", + "hasown": "^2.0.2", + "is-core-module": "^2.15.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", - "object.fromentries": "^2.0.7", - "object.groupby": "^1.0.1", - "object.values": "^1.1.7", + "object.fromentries": "^2.0.8", + "object.groupby": "^1.0.3", + "object.values": "^1.2.0", "semver": "^6.3.1", + "string.prototype.trimend": "^1.0.8", "tsconfig-paths": "^3.15.0" }, "engines": { "node": ">=4" }, "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" } }, "node_modules/eslint-plugin-import/node_modules/debug": { @@ -6114,7 +6058,6 @@ "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", - "license": "MIT", "engines": { "node": ">= 0.6" } @@ -6201,37 +6144,36 @@ } }, "node_modules/express": { - "version": "4.19.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", - "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", - "license": "MIT", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.2", + "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.6.0", + "cookie": "0.7.1", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "1.2.0", + "finalhandler": "1.3.1", "fresh": "0.5.2", "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", + "merge-descriptors": "1.0.3", "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", - "qs": "6.11.0", + "qs": "6.13.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", + "send": "0.19.0", + "serve-static": "1.16.2", "setprototypeof": "1.2.0", "statuses": "2.0.1", "type-is": "~1.6.18", @@ -6240,13 +6182,16 @@ }, "engines": { "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/express/node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", - "license": "MIT" + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==" }, "node_modules/external-editor": { "version": "3.1.0", @@ -6330,8 +6275,7 @@ "node_modules/fecha": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz", - "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==", - "license": "MIT" + "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==" }, "node_modules/figures": { "version": "3.2.0", @@ -6415,13 +6359,12 @@ } }, "node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", - "license": "MIT", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", "dependencies": { "debug": "2.6.9", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "on-finished": "2.4.1", "parseurl": "~1.3.3", @@ -6639,7 +6582,6 @@ "version": "0.5.2", "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", - "license": "MIT", "engines": { "node": ">= 0.6" } @@ -6825,10 +6767,9 @@ } }, "node_modules/glob": { - "version": "10.4.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", - "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", - "license": "ISC", + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", @@ -6840,9 +6781,6 @@ "bin": { "glob": "dist/esm/bin.mjs" }, - "engines": { - "node": ">=16 || 14 >=14.18" - }, "funding": { "url": "https://github.com/sponsors/isaacs" } @@ -6985,7 +6923,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-own-prop/-/has-own-prop-2.0.0.tgz", "integrity": "sha512-Pq0h+hvsVm6dDEa8x82GnLSYHOzNDt7f0ddFa3FqcQlgzEiptPqL+XrOJNavjOzSYiYWIrgeVYYgGlLmnxwilQ==", - "license": "MIT", "engines": { "node": ">=8" } @@ -7054,10 +6991,9 @@ } }, "node_modules/helmet": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/helmet/-/helmet-7.1.0.tgz", - "integrity": "sha512-g+HZqgfbpXdCkme/Cd/mZkV0aV3BZZZSugecH03kl38m/Kmdx8jKjBikpDj2cr+Iynv4KpYEviojNdTJActJAg==", - "license": "MIT", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/helmet/-/helmet-7.2.0.tgz", + "integrity": "sha512-ZRiwvN089JfMXokizgqEPXsl2Guk094yExfoDXR0cBYWxtBbaSww/w+vT4WEJsBW2iTUi1GgZ6swmoug3Oy4Xw==", "engines": { "node": ">=16.0.0" } @@ -7430,11 +7366,10 @@ } }, "node_modules/is-core-module": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.14.0.tgz", - "integrity": "sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==", + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", "dev": true, - "license": "MIT", "dependencies": { "hasown": "^2.0.2" }, @@ -8671,8 +8606,7 @@ "node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "license": "MIT" + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", @@ -8695,8 +8629,7 @@ "node_modules/jsonc-parser": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.1.tgz", - "integrity": "sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==", - "license": "MIT" + "integrity": "sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==" }, "node_modules/jsonfile": { "version": "6.1.0", @@ -8890,9 +8823,9 @@ "license": "MIT" }, "node_modules/lint-staged": { - "version": "15.2.9", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.2.9.tgz", - "integrity": "sha512-BZAt8Lk3sEnxw7tfxM7jeZlPRuT4M68O0/CwZhhaw6eeWu0Lz5eERE3m386InivXB64fp/mDID452h48tvKlRQ==", + "version": "15.2.10", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.2.10.tgz", + "integrity": "sha512-5dY5t743e1byO19P9I4b3x8HJwalIznL5E1FWYnU6OWw33KxNBSLAc6Cy7F2PsFEO8FKnLwjwm5hx7aMF0jzZg==", "dev": true, "dependencies": { "chalk": "~5.3.0", @@ -8901,7 +8834,7 @@ "execa": "~8.0.1", "lilconfig": "~3.1.2", "listr2": "~8.2.4", - "micromatch": "~4.0.7", + "micromatch": "~4.0.8", "pidtree": "~0.6.0", "string-argv": "~0.3.2", "yaml": "~2.5.0" @@ -9487,10 +9420,9 @@ } }, "node_modules/logform": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/logform/-/logform-2.6.1.tgz", - "integrity": "sha512-CdaO738xRapbKIMVn2m4F6KTj4j7ooJ8POVnebSgKo3KBz5axNXRAL7ZdRjIV6NOr2Uf4vjtRkxrFETOioCqSA==", - "license": "MIT", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/logform/-/logform-2.7.0.tgz", + "integrity": "sha512-TFYA4jnP7PVbmlBIfhlSe+WKxs9dklXMTEGcBCIvLhE/Tn3H6Gk1norupVW7m5Cnd4bLcr08AytbyV/xj7f/kQ==", "dependencies": { "@colors/colors": "1.6.0", "@types/triple-beam": "^1.3.2", @@ -9507,7 +9439,6 @@ "version": "1.6.0", "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.6.0.tgz", "integrity": "sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==", - "license": "MIT", "engines": { "node": ">=0.1.90" } @@ -9515,8 +9446,7 @@ "node_modules/logform/node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "license": "MIT" + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "node_modules/lru-cache": { "version": "10.4.3", @@ -9555,7 +9485,6 @@ "version": "0.30.8", "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.8.tgz", "integrity": "sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ==", - "license": "MIT", "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" }, @@ -9631,10 +9560,12 @@ } }, "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", - "license": "MIT" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, "node_modules/merge-stream": { "version": "2.0.0", @@ -9687,7 +9618,6 @@ "version": "1.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "license": "MIT", "bin": { "mime": "cli.js" }, @@ -9913,9 +9843,9 @@ } }, "node_modules/nestjs-cls": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/nestjs-cls/-/nestjs-cls-4.4.1.tgz", - "integrity": "sha512-4yhldwm/cJ02lQ8ZAdM8KQ7gMfjAc1z3fo5QAQgXNyN4N6X5So9BCwv+BTLRugDCkELUo3qtzQHnKhGYL/ftPg==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/nestjs-cls/-/nestjs-cls-4.5.0.tgz", + "integrity": "sha512-oi3GNCc5pnsnVI5WJKMDwmg4NP+JyEw+edlwgepyUba5+RGGtJzpbVaaxXGW1iPbDuQde3/fA8Jdjq9j88BVcQ==", "engines": { "node": ">=16" }, @@ -9969,10 +9899,9 @@ "license": "MIT" }, "node_modules/node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "license": "MIT" + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==" }, "node_modules/normalize-path": { "version": "3.0.0", @@ -10332,7 +10261,6 @@ "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", - "license": "MIT", "engines": { "node": ">= 0.8" } @@ -10424,10 +10352,9 @@ } }, "node_modules/path-to-regexp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-3.2.0.tgz", - "integrity": "sha512-jczvQbCUS7XmS7o+y1aEO9OBVFeZBQ1MDSEqmO7xSoPgOPoowY/SxLpZ6Vh97/8qHZOteiCKb7gkG9gA2ZUxJA==", - "license": "MIT" + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-3.3.0.tgz", + "integrity": "sha512-qyCH421YQPS2WFDxDjftfc1ZR5WKQzVzqsp4n9M2kQhVOo/ByahFoUNJfl58kOcEGfQ//7weFTDhm+ss8Ecxgw==" }, "node_modules/path-type": { "version": "4.0.0", @@ -10444,16 +10371,14 @@ "integrity": "sha512-KG8UEiEVkR3wGEb4m5yZkVCzigAD+cVEJck2CzYZO37ZGJfctvVptVO192MwrtPhzONn6go8ylnOdMhKqi4nfg==" }, "node_modules/picocolors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", - "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", - "license": "ISC" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" }, "node_modules/picomatch": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.1.tgz", "integrity": "sha512-xUXwsxNjwTQ8K3GnT4pCJm+xq3RUPQbmkYJTP5aFIfNIvbcc/4MUxgBaaRSZJ6yGJZiGSyYlM6MzwTsRk8SYCg==", - "license": "MIT", "engines": { "node": ">=12" }, @@ -10581,9 +10506,9 @@ } }, "node_modules/prettier": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz", - "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==", + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.4.2.tgz", + "integrity": "sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" @@ -10721,12 +10646,11 @@ "license": "MIT" }, "node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", - "license": "BSD-3-Clause", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dependencies": { - "side-channel": "^1.0.4" + "side-channel": "^1.0.6" }, "engines": { "node": ">=0.6" @@ -10768,7 +10692,6 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", - "license": "MIT", "engines": { "node": ">= 0.6" } @@ -10882,7 +10805,6 @@ "version": "1.6.1", "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", - "license": "MIT", "engines": { "node": ">=0.10" } @@ -10900,7 +10822,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -10977,27 +10898,17 @@ } }, "node_modules/response-time": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/response-time/-/response-time-2.3.2.tgz", - "integrity": "sha512-MUIDaDQf+CVqflfTdQ5yam+aYCkXj1PY8fjlPDQ6ppxJlmgZb864pHtA750mayywNg8tx4rS7qH9JXd/OF+3gw==", - "license": "MIT", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/response-time/-/response-time-2.3.3.tgz", + "integrity": "sha512-SsjjOPHl/FfrTQNgmc5oen8Hr1Jxpn6LlHNXxCIFdYMHuK1kMeYMobb9XN3mvxaGQm3dbegqYFMX4+GDORfbWg==", "dependencies": { - "depd": "~1.1.0", + "depd": "~2.0.0", "on-headers": "~1.0.1" }, "engines": { "node": ">= 0.8.0" } }, - "node_modules/response-time/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "license": "MIT", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/restore-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", @@ -11151,10 +11062,9 @@ } }, "node_modules/safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", - "license": "MIT", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz", + "integrity": "sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==", "engines": { "node": ">=10" } @@ -11225,10 +11135,9 @@ } }, "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", - "license": "MIT", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", "dependencies": { "debug": "2.6.9", "depd": "2.0.0", @@ -11248,11 +11157,18 @@ "node": ">= 0.8.0" } }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, "node_modules/send/node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "license": "MIT" + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" }, "node_modules/serialize-javascript": { "version": "6.0.2", @@ -11264,15 +11180,14 @@ } }, "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", - "license": "MIT", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", "dependencies": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" }, "engines": { "node": ">= 0.8.0" @@ -11847,7 +11762,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", - "license": "MIT", "engines": { "node": ">=0.10" } @@ -12213,7 +12127,6 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz", "integrity": "sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==", - "license": "MIT", "engines": { "node": ">= 14.0.0" } @@ -12382,13 +12295,13 @@ } }, "node_modules/tsconfig-paths-webpack-plugin": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths-webpack-plugin/-/tsconfig-paths-webpack-plugin-4.1.0.tgz", - "integrity": "sha512-xWFISjviPydmtmgeUAuXp4N1fky+VCtfhOkDUFIv5ea7p4wuTomI4QTrXvFBX2S4jZsmyTSrStQl+E+4w+RzxA==", - "license": "MIT", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths-webpack-plugin/-/tsconfig-paths-webpack-plugin-4.2.0.tgz", + "integrity": "sha512-zbem3rfRS8BgeNK50Zz5SIQgXzLafiHjOwUAvk/38/o1jHn/V5QAgVUcz884or7WYcPaH3N2CIfUc2u0ul7UcA==", "dependencies": { "chalk": "^4.1.0", "enhanced-resolve": "^5.7.0", + "tapable": "^2.2.1", "tsconfig-paths": "^4.1.2" }, "engines": { @@ -12405,10 +12318,9 @@ } }, "node_modules/tslib": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", - "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", - "license": "0BSD" + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==" }, "node_modules/type-check": { "version": "0.4.0", @@ -12711,9 +12623,9 @@ "license": "Apache-2.0" }, "node_modules/typescript": { - "version": "5.5.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", - "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz", + "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -12798,9 +12710,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz", - "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", + "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", "funding": [ { "type": "opencollective", @@ -12815,10 +12727,9 @@ "url": "https://github.com/sponsors/ai" } ], - "license": "MIT", "dependencies": { - "escalade": "^3.1.2", - "picocolors": "^1.0.1" + "escalade": "^3.2.0", + "picocolors": "^1.1.0" }, "bin": { "update-browserslist-db": "cli.js" @@ -12943,21 +12854,19 @@ "license": "BSD-2-Clause" }, "node_modules/webpack": { - "version": "5.93.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.93.0.tgz", - "integrity": "sha512-Y0m5oEY1LRuwly578VqluorkXbvXKh7U3rLoQCEO04M97ScRr44afGVkI0FQFsXzysk5OgFAxjZAb9rsGQVihA==", - "license": "MIT", - "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.5", - "@webassemblyjs/ast": "^1.12.1", - "@webassemblyjs/wasm-edit": "^1.12.1", - "@webassemblyjs/wasm-parser": "^1.12.1", - "acorn": "^8.7.1", - "acorn-import-attributes": "^1.9.5", - "browserslist": "^4.21.10", + "version": "5.97.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.97.1.tgz", + "integrity": "sha512-EksG6gFY3L1eFMROS/7Wzgrii5mBAFe4rIr3r2BTfo7bcc+DWwFZ4OJ/miOuHJO/A85HwyI4eQ0F6IKXesO7Fg==", + "dependencies": { + "@types/eslint-scope": "^3.7.7", + "@types/estree": "^1.0.6", + "@webassemblyjs/ast": "^1.14.1", + "@webassemblyjs/wasm-edit": "^1.14.1", + "@webassemblyjs/wasm-parser": "^1.14.1", + "acorn": "^8.14.0", + "browserslist": "^4.24.0", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.17.0", + "enhanced-resolve": "^5.17.1", "es-module-lexer": "^1.2.1", "eslint-scope": "5.1.1", "events": "^3.2.0", @@ -13090,33 +12999,32 @@ } }, "node_modules/winston": { - "version": "3.14.2", - "resolved": "https://registry.npmjs.org/winston/-/winston-3.14.2.tgz", - "integrity": "sha512-CO8cdpBB2yqzEf8v895L+GNKYJiEq8eKlHU38af3snQBQ+sdAIUepjMSguOIJC7ICbzm0ZI+Af2If4vIJrtmOg==", + "version": "3.17.0", + "resolved": "https://registry.npmjs.org/winston/-/winston-3.17.0.tgz", + "integrity": "sha512-DLiFIXYC5fMPxaRg832S6F5mJYvePtmO5G9v9IgUFPhXm9/GkXarH/TUrBAVzhTCzAj9anE/+GjrgXp/54nOgw==", "dependencies": { "@colors/colors": "^1.6.0", "@dabh/diagnostics": "^2.0.2", "async": "^3.2.3", "is-stream": "^2.0.0", - "logform": "^2.6.0", + "logform": "^2.7.0", "one-time": "^1.0.0", "readable-stream": "^3.4.0", "safe-stable-stringify": "^2.3.1", "stack-trace": "0.0.x", "triple-beam": "^1.3.0", - "winston-transport": "^4.7.0" + "winston-transport": "^4.9.0" }, "engines": { "node": ">= 12.0.0" } }, "node_modules/winston-transport": { - "version": "4.7.1", - "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.7.1.tgz", - "integrity": "sha512-wQCXXVgfv/wUPOfb2x0ruxzwkcZfxcktz6JIMUaPLmcNhO4bZTwA/WtDWK74xV3F2dKu8YadrFv0qhwYjVEwhA==", - "license": "MIT", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.9.0.tgz", + "integrity": "sha512-8drMJ4rkgaPo1Me4zD/3WLfI/zPdA9o2IipKODunnGDcuqbHwjsbB79ylv04LCGGzU0xQ6vTznOMpQGaLhhm6A==", "dependencies": { - "logform": "^2.6.1", + "logform": "^2.7.0", "readable-stream": "^3.6.2", "triple-beam": "^1.3.0" }, @@ -13128,7 +13036,6 @@ "version": "3.6.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "license": "MIT", "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", diff --git a/policy/package.json b/policy/package.json index 41b4439a2..745bcbf5e 100644 --- a/policy/package.json +++ b/policy/package.json @@ -45,17 +45,17 @@ "@automapper/core": "^8.8.1", "@automapper/nestjs": "^8.8.1", "@automapper/types": "^6.3.1", - "@nestjs/axios": "^3.0.3", - "@nestjs/cache-manager": "^2.2.2", - "@nestjs/cli": "^10.4.4", - "@nestjs/common": "^10.4.1", - "@nestjs/config": "^3.2.3", - "@nestjs/core": "^10.4.1", + "@nestjs/axios": "^3.1.3", + "@nestjs/cache-manager": "^2.3.0", + "@nestjs/cli": "^10.4.9", + "@nestjs/common": "^10.4.15", + "@nestjs/config": "^3.3.0", + "@nestjs/core": "^10.4.15", "@nestjs/passport": "^10.0.3", - "@nestjs/platform-express": "^10.4.1", - "@nestjs/schematics": "^10.1.4", - "@nestjs/swagger": "^7.4.0", - "@nestjs/testing": "^10.4.1", + "@nestjs/platform-express": "^10.4.15", + "@nestjs/schematics": "^10.2.3", + "@nestjs/swagger": "^7.4.2", + "@nestjs/testing": "^10.4.15", "@nestjs/typeorm": "^10.0.2", "@types/response-time": "^2.3.8", "axios-retry": "^4.5.0", @@ -63,28 +63,28 @@ "class-transformer": "^0.5.1", "class-validator": "^0.14.1", "dayjs": "^1.11.13", - "dotenv": "^16.4.5", - "helmet": "^7.1.0", + "dotenv": "^16.4.7", + "helmet": "^7.2.0", "jwks-rsa": "^3.1.0", "mssql": "^10.0.4", "nest-winston": "^1.10.0", - "nestjs-cls": "^4.4.1", + "nestjs-cls": "^4.5.0", "passport": "^0.7.0", "passport-jwt": "^4.0.1", - "response-time": "^2.3.2", + "response-time": "^2.3.3", "rxjs": "^7.8.1", "swagger-ui-express": "^5.0.1", "typeorm": "^0.3.20", "typescript-eslint": "^7.18.0", "uuid": "^9.0.1", - "winston": "^3.14.2" + "winston": "^3.17.0" }, "devDependencies": { - "@golevelup/ts-jest": "^0.5.4", + "@golevelup/ts-jest": "^0.6.1", "@types/express": "^4.17.21", - "@types/jest": "^29.5.12", + "@types/jest": "^29.5.14", "@types/multer": "^1.4.12", - "@types/node": "^20.16.1", + "@types/node": "^20.17.9", "@types/passport-jwt": "^4.0.1", "@types/supertest": "^6.0.2", "@types/uuid": "^10.0.0", @@ -92,7 +92,7 @@ "eslint-config-airbnb-base": "^15.0.0", "eslint-config-prettier": "^9.1.0", "eslint-config-standard": "^17.1.0", - "eslint-plugin-import": "^2.29.1", + "eslint-plugin-import": "^2.31.0", "eslint-plugin-node": "^11.1.0", "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-promise": "^6.6.0", @@ -100,8 +100,8 @@ "jest": "^29.7.0", "jest-badges": "^0.1.3", "jest-sonar-reporter": "^2.0.0", - "lint-staged": "^15.2.9", - "prettier": "^3.3.3", + "lint-staged": "^15.2.10", + "prettier": "^3.4.2", "rimraf": "^5.0.10", "source-map-support": "^0.5.21", "supertest": "^7.0.0", @@ -109,7 +109,7 @@ "ts-loader": "^9.5.1", "ts-node": "^10.9.2", "tsconfig-paths": "^4.2.0", - "typescript": "^5.5.4" + "typescript": "^5.7.2" }, "jest": { "moduleFileExtensions": [ diff --git a/scheduler/package-lock.json b/scheduler/package-lock.json index 106e471e6..19f3851bb 100644 --- a/scheduler/package-lock.json +++ b/scheduler/package-lock.json @@ -10,21 +10,21 @@ "license": "Apache-2.0", "dependencies": { "@automapper/classes": "^8.8.1", - "@aws-sdk/client-s3": "^3.637.0", - "@aws-sdk/lib-storage": "^3.637.0", - "@aws-sdk/s3-request-presigner": "^3.637.0", - "@nestjs/axios": "^3.0.3", - "@nestjs/cache-manager": "^2.2.2", - "@nestjs/cli": "^10.4.4", - "@nestjs/common": "^10.4.1", - "@nestjs/config": "^3.2.3", - "@nestjs/core": "^10.4.1", + "@aws-sdk/client-s3": "^3.705.0", + "@aws-sdk/lib-storage": "^3.705.0", + "@aws-sdk/s3-request-presigner": "^3.705.0", + "@nestjs/axios": "^3.1.3", + "@nestjs/cache-manager": "^2.3.0", + "@nestjs/cli": "^10.4.9", + "@nestjs/common": "^10.4.15", + "@nestjs/config": "^3.3.0", + "@nestjs/core": "^10.4.15", "@nestjs/passport": "^10.0.3", - "@nestjs/platform-express": "^10.4.1", - "@nestjs/schedule": "^4.1.0", - "@nestjs/schematics": "^10.1.4", - "@nestjs/swagger": "^7.4.0", - "@nestjs/testing": "^10.4.1", + "@nestjs/platform-express": "^10.4.15", + "@nestjs/schedule": "^4.1.2", + "@nestjs/schematics": "^10.2.3", + "@nestjs/swagger": "^7.4.2", + "@nestjs/testing": "^10.4.15", "@nestjs/typeorm": "^10.0.2", "@types/crypto-js": "^4.2.2", "cache-manager": "^5.7.6", @@ -32,25 +32,25 @@ "class-validator": "^0.14.1", "crypto-js": "^4.2.0", "dayjs": "^1.11.13", - "dotenv": "^16.4.5", + "dotenv": "^16.4.7", "jwks-rsa": "^3.1.0", "mssql": "^10.0.4", "nest-winston": "^1.10.0", - "nestjs-cls": "^4.4.1", + "nestjs-cls": "^4.5.0", "rxjs": "^7.8.1", "ssh2-sftp-client": "^10.0.3", "swagger-ui-express": "^5.0.1", "typeorm": "^0.3.20", "typescript-eslint": "^7.18.0", "uuid": "^9.0.1", - "winston": "^3.14.2" + "winston": "^3.17.0" }, "devDependencies": { - "@golevelup/ts-jest": "^0.5.4", + "@golevelup/ts-jest": "^0.6.1", "@types/express": "^4.17.21", - "@types/jest": "^29.5.12", + "@types/jest": "^29.5.14", "@types/multer": "^1.4.12", - "@types/node": "^20.16.1", + "@types/node": "^20.17.9", "@types/passport-jwt": "^4.0.1", "@types/supertest": "^6.0.2", "@types/uuid": "^10.0.0", @@ -58,7 +58,7 @@ "eslint-config-airbnb-base": "^15.0.0", "eslint-config-prettier": "^9.1.0", "eslint-config-standard": "^17.1.0", - "eslint-plugin-import": "^2.29.1", + "eslint-plugin-import": "^2.31.0", "eslint-plugin-node": "^11.1.0", "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-promise": "^6.6.0", @@ -66,8 +66,8 @@ "jest": "^29.7.0", "jest-badges": "^0.1.3", "jest-sonar-reporter": "^2.0.0", - "lint-staged": "^15.2.9", - "prettier": "^3.3.3", + "lint-staged": "^15.2.10", + "prettier": "^3.4.2", "rimraf": "^5.0.10", "source-map-support": "^0.5.21", "supertest": "^7.0.0", @@ -75,7 +75,7 @@ "ts-loader": "^9.5.1", "ts-node": "^10.9.2", "tsconfig-paths": "^4.2.0", - "typescript": "^5.5.4" + "typescript": "^5.7.2" } }, "node_modules/@aashutoshrathi/word-wrap": { @@ -100,9 +100,9 @@ } }, "node_modules/@angular-devkit/core": { - "version": "17.3.8", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-17.3.8.tgz", - "integrity": "sha512-Q8q0voCGudbdCgJ7lXdnyaxKHbNQBARH68zPQV72WT8NWy+Gw/tys870i6L58NWbBaCJEUcIj/kb6KoakSRu+Q==", + "version": "17.3.11", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-17.3.11.tgz", + "integrity": "sha512-vTNDYNsLIWpYk2I969LMQFH29GTsLzxNk/0cLw5q56ARF0v5sIWfHYwGTS88jdDqIpuuettcSczbxeA7EuAmqQ==", "dependencies": { "ajv": "8.12.0", "ajv-formats": "2.1.1", @@ -137,11 +137,11 @@ } }, "node_modules/@angular-devkit/schematics": { - "version": "17.3.8", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-17.3.8.tgz", - "integrity": "sha512-QRVEYpIfgkprNHc916JlPuNbLzOgrm9DZalHasnLUz4P6g7pR21olb8YCyM2OTJjombNhya9ZpckcADU5Qyvlg==", + "version": "17.3.11", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-17.3.11.tgz", + "integrity": "sha512-I5wviiIqiFwar9Pdk30Lujk8FczEEc18i22A5c6Z9lbmhPQdTroDnEQdsfXjy404wPe8H62s0I15o4pmMGfTYQ==", "dependencies": { - "@angular-devkit/core": "17.3.8", + "@angular-devkit/core": "17.3.11", "jsonc-parser": "3.2.1", "magic-string": "0.30.8", "ora": "5.4.1", @@ -154,12 +154,12 @@ } }, "node_modules/@angular-devkit/schematics-cli": { - "version": "17.3.8", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics-cli/-/schematics-cli-17.3.8.tgz", - "integrity": "sha512-TjmiwWJarX7oqvNiRAroQ5/LeKUatxBOCNEuKXO/PV8e7pn/Hr/BqfFm+UcYrQoFdZplmtNAfqmbqgVziKvCpA==", + "version": "17.3.11", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics-cli/-/schematics-cli-17.3.11.tgz", + "integrity": "sha512-kcOMqp+PHAKkqRad7Zd7PbpqJ0LqLaNZdY1+k66lLWmkEBozgq8v4ASn/puPWf9Bo0HpCiK+EzLf0VHE8Z/y6Q==", "dependencies": { - "@angular-devkit/core": "17.3.8", - "@angular-devkit/schematics": "17.3.8", + "@angular-devkit/core": "17.3.11", + "@angular-devkit/schematics": "17.3.11", "ansi-colors": "4.1.3", "inquirer": "9.2.15", "symbol-observable": "4.0.0", @@ -455,67 +455,67 @@ } }, "node_modules/@aws-sdk/client-s3": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.637.0.tgz", - "integrity": "sha512-y6UC94fsMvhKbf0dzfnjVP1HePeGjplfcYfilZU1COIJLyTkMcUv4XcT4I407CGIrvgEafONHkiC09ygqUauNA==", + "version": "3.705.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.705.0.tgz", + "integrity": "sha512-Fm0Cbc4zr0yG0DnNycz7ywlL5tQFdLSb7xCIPfzrxJb3YQiTXWxH5eu61SSsP/Z6RBNRolmRPvst/iNgX0fWvA==", "dependencies": { "@aws-crypto/sha1-browser": "5.2.0", "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/client-sso-oidc": "3.637.0", - "@aws-sdk/client-sts": "3.637.0", - "@aws-sdk/core": "3.635.0", - "@aws-sdk/credential-provider-node": "3.637.0", - "@aws-sdk/middleware-bucket-endpoint": "3.620.0", - "@aws-sdk/middleware-expect-continue": "3.620.0", - "@aws-sdk/middleware-flexible-checksums": "3.620.0", - "@aws-sdk/middleware-host-header": "3.620.0", - "@aws-sdk/middleware-location-constraint": "3.609.0", - "@aws-sdk/middleware-logger": "3.609.0", - "@aws-sdk/middleware-recursion-detection": "3.620.0", - "@aws-sdk/middleware-sdk-s3": "3.635.0", - "@aws-sdk/middleware-ssec": "3.609.0", - "@aws-sdk/middleware-user-agent": "3.637.0", - "@aws-sdk/region-config-resolver": "3.614.0", - "@aws-sdk/signature-v4-multi-region": "3.635.0", - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-endpoints": "3.637.0", - "@aws-sdk/util-user-agent-browser": "3.609.0", - "@aws-sdk/util-user-agent-node": "3.614.0", - "@aws-sdk/xml-builder": "3.609.0", - "@smithy/config-resolver": "^3.0.5", - "@smithy/core": "^2.4.0", - "@smithy/eventstream-serde-browser": "^3.0.6", - "@smithy/eventstream-serde-config-resolver": "^3.0.3", - "@smithy/eventstream-serde-node": "^3.0.5", - "@smithy/fetch-http-handler": "^3.2.4", - "@smithy/hash-blob-browser": "^3.1.2", - "@smithy/hash-node": "^3.0.3", - "@smithy/hash-stream-node": "^3.1.2", - "@smithy/invalid-dependency": "^3.0.3", - "@smithy/md5-js": "^3.0.3", - "@smithy/middleware-content-length": "^3.0.5", - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/middleware-retry": "^3.0.15", - "@smithy/middleware-serde": "^3.0.3", - "@smithy/middleware-stack": "^3.0.3", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/node-http-handler": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/url-parser": "^3.0.3", + "@aws-sdk/client-sso-oidc": "3.699.0", + "@aws-sdk/client-sts": "3.699.0", + "@aws-sdk/core": "3.696.0", + "@aws-sdk/credential-provider-node": "3.699.0", + "@aws-sdk/middleware-bucket-endpoint": "3.696.0", + "@aws-sdk/middleware-expect-continue": "3.696.0", + "@aws-sdk/middleware-flexible-checksums": "3.701.0", + "@aws-sdk/middleware-host-header": "3.696.0", + "@aws-sdk/middleware-location-constraint": "3.696.0", + "@aws-sdk/middleware-logger": "3.696.0", + "@aws-sdk/middleware-recursion-detection": "3.696.0", + "@aws-sdk/middleware-sdk-s3": "3.696.0", + "@aws-sdk/middleware-ssec": "3.696.0", + "@aws-sdk/middleware-user-agent": "3.696.0", + "@aws-sdk/region-config-resolver": "3.696.0", + "@aws-sdk/signature-v4-multi-region": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-endpoints": "3.696.0", + "@aws-sdk/util-user-agent-browser": "3.696.0", + "@aws-sdk/util-user-agent-node": "3.696.0", + "@aws-sdk/xml-builder": "3.696.0", + "@smithy/config-resolver": "^3.0.12", + "@smithy/core": "^2.5.3", + "@smithy/eventstream-serde-browser": "^3.0.13", + "@smithy/eventstream-serde-config-resolver": "^3.0.10", + "@smithy/eventstream-serde-node": "^3.0.12", + "@smithy/fetch-http-handler": "^4.1.1", + "@smithy/hash-blob-browser": "^3.1.9", + "@smithy/hash-node": "^3.0.10", + "@smithy/hash-stream-node": "^3.1.9", + "@smithy/invalid-dependency": "^3.0.10", + "@smithy/md5-js": "^3.0.10", + "@smithy/middleware-content-length": "^3.0.12", + "@smithy/middleware-endpoint": "^3.2.3", + "@smithy/middleware-retry": "^3.0.27", + "@smithy/middleware-serde": "^3.0.10", + "@smithy/middleware-stack": "^3.0.10", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/node-http-handler": "^3.3.1", + "@smithy/protocol-http": "^4.1.7", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", + "@smithy/url-parser": "^3.0.10", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.15", - "@smithy/util-defaults-mode-node": "^3.0.15", - "@smithy/util-endpoints": "^2.0.5", - "@smithy/util-middleware": "^3.0.3", - "@smithy/util-retry": "^3.0.3", - "@smithy/util-stream": "^3.1.3", + "@smithy/util-defaults-mode-browser": "^3.0.27", + "@smithy/util-defaults-mode-node": "^3.0.27", + "@smithy/util-endpoints": "^2.1.6", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-retry": "^3.0.10", + "@smithy/util-stream": "^3.3.1", "@smithy/util-utf8": "^3.0.0", - "@smithy/util-waiter": "^3.1.2", + "@smithy/util-waiter": "^3.1.9", "tslib": "^2.6.2" }, "engines": { @@ -523,46 +523,46 @@ } }, "node_modules/@aws-sdk/client-sso": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.637.0.tgz", - "integrity": "sha512-+KjLvgX5yJYROWo3TQuwBJlHCY0zz9PsLuEolmXQn0BVK1L/m9GteZHtd+rEdAoDGBpE0Xqjy1oz5+SmtsaRUw==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.696.0.tgz", + "integrity": "sha512-q5TTkd08JS0DOkHfUL853tuArf7NrPeqoS5UOvqJho8ibV9Ak/a/HO4kNvy9Nj3cib/toHYHsQIEtecUPSUUrQ==", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "3.635.0", - "@aws-sdk/middleware-host-header": "3.620.0", - "@aws-sdk/middleware-logger": "3.609.0", - "@aws-sdk/middleware-recursion-detection": "3.620.0", - "@aws-sdk/middleware-user-agent": "3.637.0", - "@aws-sdk/region-config-resolver": "3.614.0", - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-endpoints": "3.637.0", - "@aws-sdk/util-user-agent-browser": "3.609.0", - "@aws-sdk/util-user-agent-node": "3.614.0", - "@smithy/config-resolver": "^3.0.5", - "@smithy/core": "^2.4.0", - "@smithy/fetch-http-handler": "^3.2.4", - "@smithy/hash-node": "^3.0.3", - "@smithy/invalid-dependency": "^3.0.3", - "@smithy/middleware-content-length": "^3.0.5", - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/middleware-retry": "^3.0.15", - "@smithy/middleware-serde": "^3.0.3", - "@smithy/middleware-stack": "^3.0.3", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/node-http-handler": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/url-parser": "^3.0.3", + "@aws-sdk/core": "3.696.0", + "@aws-sdk/middleware-host-header": "3.696.0", + "@aws-sdk/middleware-logger": "3.696.0", + "@aws-sdk/middleware-recursion-detection": "3.696.0", + "@aws-sdk/middleware-user-agent": "3.696.0", + "@aws-sdk/region-config-resolver": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-endpoints": "3.696.0", + "@aws-sdk/util-user-agent-browser": "3.696.0", + "@aws-sdk/util-user-agent-node": "3.696.0", + "@smithy/config-resolver": "^3.0.12", + "@smithy/core": "^2.5.3", + "@smithy/fetch-http-handler": "^4.1.1", + "@smithy/hash-node": "^3.0.10", + "@smithy/invalid-dependency": "^3.0.10", + "@smithy/middleware-content-length": "^3.0.12", + "@smithy/middleware-endpoint": "^3.2.3", + "@smithy/middleware-retry": "^3.0.27", + "@smithy/middleware-serde": "^3.0.10", + "@smithy/middleware-stack": "^3.0.10", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/node-http-handler": "^3.3.1", + "@smithy/protocol-http": "^4.1.7", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", + "@smithy/url-parser": "^3.0.10", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.15", - "@smithy/util-defaults-mode-node": "^3.0.15", - "@smithy/util-endpoints": "^2.0.5", - "@smithy/util-middleware": "^3.0.3", - "@smithy/util-retry": "^3.0.3", + "@smithy/util-defaults-mode-browser": "^3.0.27", + "@smithy/util-defaults-mode-node": "^3.0.27", + "@smithy/util-endpoints": "^2.1.6", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-retry": "^3.0.10", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -571,47 +571,47 @@ } }, "node_modules/@aws-sdk/client-sso-oidc": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.637.0.tgz", - "integrity": "sha512-27bHALN6Qb6m6KZmPvRieJ/QRlj1lyac/GT2Rn5kJpre8Mpp+yxrtvp3h9PjNBty4lCeFEENfY4dGNSozBuBcw==", + "version": "3.699.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.699.0.tgz", + "integrity": "sha512-u8a1GorY5D1l+4FQAf4XBUC1T10/t7neuwT21r0ymrtMFSK2a9QqVHKMoLkvavAwyhJnARSBM9/UQC797PFOFw==", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "3.635.0", - "@aws-sdk/credential-provider-node": "3.637.0", - "@aws-sdk/middleware-host-header": "3.620.0", - "@aws-sdk/middleware-logger": "3.609.0", - "@aws-sdk/middleware-recursion-detection": "3.620.0", - "@aws-sdk/middleware-user-agent": "3.637.0", - "@aws-sdk/region-config-resolver": "3.614.0", - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-endpoints": "3.637.0", - "@aws-sdk/util-user-agent-browser": "3.609.0", - "@aws-sdk/util-user-agent-node": "3.614.0", - "@smithy/config-resolver": "^3.0.5", - "@smithy/core": "^2.4.0", - "@smithy/fetch-http-handler": "^3.2.4", - "@smithy/hash-node": "^3.0.3", - "@smithy/invalid-dependency": "^3.0.3", - "@smithy/middleware-content-length": "^3.0.5", - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/middleware-retry": "^3.0.15", - "@smithy/middleware-serde": "^3.0.3", - "@smithy/middleware-stack": "^3.0.3", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/node-http-handler": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/url-parser": "^3.0.3", + "@aws-sdk/core": "3.696.0", + "@aws-sdk/credential-provider-node": "3.699.0", + "@aws-sdk/middleware-host-header": "3.696.0", + "@aws-sdk/middleware-logger": "3.696.0", + "@aws-sdk/middleware-recursion-detection": "3.696.0", + "@aws-sdk/middleware-user-agent": "3.696.0", + "@aws-sdk/region-config-resolver": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-endpoints": "3.696.0", + "@aws-sdk/util-user-agent-browser": "3.696.0", + "@aws-sdk/util-user-agent-node": "3.696.0", + "@smithy/config-resolver": "^3.0.12", + "@smithy/core": "^2.5.3", + "@smithy/fetch-http-handler": "^4.1.1", + "@smithy/hash-node": "^3.0.10", + "@smithy/invalid-dependency": "^3.0.10", + "@smithy/middleware-content-length": "^3.0.12", + "@smithy/middleware-endpoint": "^3.2.3", + "@smithy/middleware-retry": "^3.0.27", + "@smithy/middleware-serde": "^3.0.10", + "@smithy/middleware-stack": "^3.0.10", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/node-http-handler": "^3.3.1", + "@smithy/protocol-http": "^4.1.7", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", + "@smithy/url-parser": "^3.0.10", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.15", - "@smithy/util-defaults-mode-node": "^3.0.15", - "@smithy/util-endpoints": "^2.0.5", - "@smithy/util-middleware": "^3.0.3", - "@smithy/util-retry": "^3.0.3", + "@smithy/util-defaults-mode-browser": "^3.0.27", + "@smithy/util-defaults-mode-node": "^3.0.27", + "@smithy/util-endpoints": "^2.1.6", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-retry": "^3.0.10", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -619,52 +619,52 @@ "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.637.0" + "@aws-sdk/client-sts": "^3.699.0" } }, "node_modules/@aws-sdk/client-sts": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.637.0.tgz", - "integrity": "sha512-xUi7x4qDubtA8QREtlblPuAcn91GS/09YVEY/RwU7xCY0aqGuFwgszAANlha4OUIqva8oVj2WO4gJuG+iaSnhw==", + "version": "3.699.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.699.0.tgz", + "integrity": "sha512-++lsn4x2YXsZPIzFVwv3fSUVM55ZT0WRFmPeNilYIhZClxHLmVAWKH4I55cY9ry60/aTKYjzOXkWwyBKGsGvQg==", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/client-sso-oidc": "3.637.0", - "@aws-sdk/core": "3.635.0", - "@aws-sdk/credential-provider-node": "3.637.0", - "@aws-sdk/middleware-host-header": "3.620.0", - "@aws-sdk/middleware-logger": "3.609.0", - "@aws-sdk/middleware-recursion-detection": "3.620.0", - "@aws-sdk/middleware-user-agent": "3.637.0", - "@aws-sdk/region-config-resolver": "3.614.0", - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-endpoints": "3.637.0", - "@aws-sdk/util-user-agent-browser": "3.609.0", - "@aws-sdk/util-user-agent-node": "3.614.0", - "@smithy/config-resolver": "^3.0.5", - "@smithy/core": "^2.4.0", - "@smithy/fetch-http-handler": "^3.2.4", - "@smithy/hash-node": "^3.0.3", - "@smithy/invalid-dependency": "^3.0.3", - "@smithy/middleware-content-length": "^3.0.5", - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/middleware-retry": "^3.0.15", - "@smithy/middleware-serde": "^3.0.3", - "@smithy/middleware-stack": "^3.0.3", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/node-http-handler": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/url-parser": "^3.0.3", + "@aws-sdk/client-sso-oidc": "3.699.0", + "@aws-sdk/core": "3.696.0", + "@aws-sdk/credential-provider-node": "3.699.0", + "@aws-sdk/middleware-host-header": "3.696.0", + "@aws-sdk/middleware-logger": "3.696.0", + "@aws-sdk/middleware-recursion-detection": "3.696.0", + "@aws-sdk/middleware-user-agent": "3.696.0", + "@aws-sdk/region-config-resolver": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-endpoints": "3.696.0", + "@aws-sdk/util-user-agent-browser": "3.696.0", + "@aws-sdk/util-user-agent-node": "3.696.0", + "@smithy/config-resolver": "^3.0.12", + "@smithy/core": "^2.5.3", + "@smithy/fetch-http-handler": "^4.1.1", + "@smithy/hash-node": "^3.0.10", + "@smithy/invalid-dependency": "^3.0.10", + "@smithy/middleware-content-length": "^3.0.12", + "@smithy/middleware-endpoint": "^3.2.3", + "@smithy/middleware-retry": "^3.0.27", + "@smithy/middleware-serde": "^3.0.10", + "@smithy/middleware-stack": "^3.0.10", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/node-http-handler": "^3.3.1", + "@smithy/protocol-http": "^4.1.7", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", + "@smithy/url-parser": "^3.0.10", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.15", - "@smithy/util-defaults-mode-node": "^3.0.15", - "@smithy/util-endpoints": "^2.0.5", - "@smithy/util-middleware": "^3.0.3", - "@smithy/util-retry": "^3.0.3", + "@smithy/util-defaults-mode-browser": "^3.0.27", + "@smithy/util-defaults-mode-node": "^3.0.27", + "@smithy/util-endpoints": "^2.1.6", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-retry": "^3.0.10", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -673,18 +673,19 @@ } }, "node_modules/@aws-sdk/core": { - "version": "3.635.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.635.0.tgz", - "integrity": "sha512-i1x/E/sgA+liUE1XJ7rj1dhyXpAKO1UKFUcTTHXok2ARjWTvszHnSXMOsB77aPbmn0fUp1JTx2kHUAZ1LVt5Bg==", - "dependencies": { - "@smithy/core": "^2.4.0", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/property-provider": "^3.1.3", - "@smithy/protocol-http": "^4.1.0", - "@smithy/signature-v4": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/util-middleware": "^3.0.3", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.696.0.tgz", + "integrity": "sha512-3c9III1k03DgvRZWg8vhVmfIXPG6hAciN9MzQTzqGngzWAELZF/WONRTRQuDFixVtarQatmLHYVw/atGeA2Byw==", + "dependencies": { + "@aws-sdk/types": "3.696.0", + "@smithy/core": "^2.5.3", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/property-provider": "^3.1.9", + "@smithy/protocol-http": "^4.1.7", + "@smithy/signature-v4": "^4.2.2", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", + "@smithy/util-middleware": "^3.0.10", "fast-xml-parser": "4.4.1", "tslib": "^2.6.2" }, @@ -693,13 +694,14 @@ } }, "node_modules/@aws-sdk/credential-provider-env": { - "version": "3.620.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.620.1.tgz", - "integrity": "sha512-ExuILJ2qLW5ZO+rgkNRj0xiAipKT16Rk77buvPP8csR7kkCflT/gXTyzRe/uzIiETTxM7tr8xuO9MP/DQXqkfg==", - "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.696.0.tgz", + "integrity": "sha512-T9iMFnJL7YTlESLpVFT3fg1Lkb1lD+oiaIC8KMpepb01gDUBIpj9+Y+pA/cgRWW0yRxmkDXNazAE2qQTVFGJzA==", + "dependencies": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/property-provider": "^3.1.9", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -707,18 +709,19 @@ } }, "node_modules/@aws-sdk/credential-provider-http": { - "version": "3.635.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.635.0.tgz", - "integrity": "sha512-iJyRgEjOCQlBMXqtwPLIKYc7Bsc6nqjrZybdMDenPDa+kmLg7xh8LxHsu9088e+2/wtLicE34FsJJIfzu3L82g==", - "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/fetch-http-handler": "^3.2.4", - "@smithy/node-http-handler": "^3.1.4", - "@smithy/property-provider": "^3.1.3", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/util-stream": "^3.1.3", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.696.0.tgz", + "integrity": "sha512-GV6EbvPi2eq1+WgY/o2RFA3P7HGmnkIzCNmhwtALFlqMroLYWKE7PSeHw66Uh1dFQeVESn0/+hiUNhu1mB0emA==", + "dependencies": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/fetch-http-handler": "^4.1.1", + "@smithy/node-http-handler": "^3.3.1", + "@smithy/property-provider": "^3.1.9", + "@smithy/protocol-http": "^4.1.7", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", + "@smithy/util-stream": "^3.3.1", "tslib": "^2.6.2" }, "engines": { @@ -726,45 +729,46 @@ } }, "node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.637.0.tgz", - "integrity": "sha512-h+PFCWfZ0Q3Dx84SppET/TFpcQHmxFW8/oV9ArEvMilw4EBN+IlxgbL0CnHwjHW64szcmrM0mbebjEfHf4FXmw==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.620.1", - "@aws-sdk/credential-provider-http": "3.635.0", - "@aws-sdk/credential-provider-process": "3.620.1", - "@aws-sdk/credential-provider-sso": "3.637.0", - "@aws-sdk/credential-provider-web-identity": "3.621.0", - "@aws-sdk/types": "3.609.0", - "@smithy/credential-provider-imds": "^3.2.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", + "version": "3.699.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.699.0.tgz", + "integrity": "sha512-dXmCqjJnKmG37Q+nLjPVu22mNkrGHY8hYoOt3Jo9R2zr5MYV7s/NHsCHr+7E+BZ+tfZYLRPeB1wkpTeHiEcdRw==", + "dependencies": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/credential-provider-env": "3.696.0", + "@aws-sdk/credential-provider-http": "3.696.0", + "@aws-sdk/credential-provider-process": "3.696.0", + "@aws-sdk/credential-provider-sso": "3.699.0", + "@aws-sdk/credential-provider-web-identity": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/credential-provider-imds": "^3.2.6", + "@smithy/property-provider": "^3.1.9", + "@smithy/shared-ini-file-loader": "^3.1.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.637.0" + "@aws-sdk/client-sts": "^3.699.0" } }, "node_modules/@aws-sdk/credential-provider-node": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.637.0.tgz", - "integrity": "sha512-yoEhoxJJfs7sPVQ6Is939BDQJZpZCoUgKr/ySse4YKOZ24t4VqgHA6+wV7rYh+7IW24Rd91UTvEzSuHYTlxlNA==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.620.1", - "@aws-sdk/credential-provider-http": "3.635.0", - "@aws-sdk/credential-provider-ini": "3.637.0", - "@aws-sdk/credential-provider-process": "3.620.1", - "@aws-sdk/credential-provider-sso": "3.637.0", - "@aws-sdk/credential-provider-web-identity": "3.621.0", - "@aws-sdk/types": "3.609.0", - "@smithy/credential-provider-imds": "^3.2.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", + "version": "3.699.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.699.0.tgz", + "integrity": "sha512-MmEmNDo1bBtTgRmdNfdQksXu4uXe66s0p1hi1YPrn1h59Q605eq/xiWbGL6/3KdkViH6eGUuABeV2ODld86ylg==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.696.0", + "@aws-sdk/credential-provider-http": "3.696.0", + "@aws-sdk/credential-provider-ini": "3.699.0", + "@aws-sdk/credential-provider-process": "3.696.0", + "@aws-sdk/credential-provider-sso": "3.699.0", + "@aws-sdk/credential-provider-web-identity": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/credential-provider-imds": "^3.2.6", + "@smithy/property-provider": "^3.1.9", + "@smithy/shared-ini-file-loader": "^3.1.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -772,14 +776,15 @@ } }, "node_modules/@aws-sdk/credential-provider-process": { - "version": "3.620.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.620.1.tgz", - "integrity": "sha512-hWqFMidqLAkaV9G460+1at6qa9vySbjQKKc04p59OT7lZ5cO5VH5S4aI05e+m4j364MBROjjk2ugNvfNf/8ILg==", - "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.696.0.tgz", + "integrity": "sha512-mL1RcFDe9sfmyU5K1nuFkO8UiJXXxLX4JO1gVaDIOvPqwStpUAwi3A1BoeZhWZZNQsiKI810RnYGo0E0WB/hUA==", + "dependencies": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/property-provider": "^3.1.9", + "@smithy/shared-ini-file-loader": "^3.1.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -787,16 +792,17 @@ } }, "node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.637.0.tgz", - "integrity": "sha512-Mvz+h+e62/tl+dVikLafhv+qkZJ9RUb8l2YN/LeKMWkxQylPT83CPk9aimVhCV89zth1zpREArl97+3xsfgQvA==", - "dependencies": { - "@aws-sdk/client-sso": "3.637.0", - "@aws-sdk/token-providers": "3.614.0", - "@aws-sdk/types": "3.609.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", + "version": "3.699.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.699.0.tgz", + "integrity": "sha512-Ekp2cZG4pl9D8+uKWm4qO1xcm8/MeiI8f+dnlZm8aQzizeC+aXYy9GyoclSf6daK8KfRPiRfM7ZHBBL5dAfdMA==", + "dependencies": { + "@aws-sdk/client-sso": "3.696.0", + "@aws-sdk/core": "3.696.0", + "@aws-sdk/token-providers": "3.699.0", + "@aws-sdk/types": "3.696.0", + "@smithy/property-provider": "^3.1.9", + "@smithy/shared-ini-file-loader": "^3.1.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -804,30 +810,31 @@ } }, "node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.621.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.621.0.tgz", - "integrity": "sha512-w7ASSyfNvcx7+bYGep3VBgC3K6vEdLmlpjT7nSIHxxQf+WSdvy+HynwJosrpZax0sK5q0D1Jpn/5q+r5lwwW6w==", - "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.696.0.tgz", + "integrity": "sha512-XJ/CVlWChM0VCoc259vWguFUjJDn/QwDqHwbx+K9cg3v6yrqXfK5ai+p/6lx0nQpnk4JzPVeYYxWRpaTsGC9rg==", + "dependencies": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/property-provider": "^3.1.9", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sts": "^3.621.0" + "@aws-sdk/client-sts": "^3.696.0" } }, "node_modules/@aws-sdk/lib-storage": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/lib-storage/-/lib-storage-3.637.0.tgz", - "integrity": "sha512-HiNGOP4a1QrCWwO1joKw4mCp19nLXoF9K52PislBaYDI35IlHC3DP6MeOg5zmElwtL1GtEHFBy5olfPWPsLyLg==", + "version": "3.705.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/lib-storage/-/lib-storage-3.705.0.tgz", + "integrity": "sha512-jucPgdO5RCQAki8+CcEi3ZQxBUpq6iVcurtMkLS1xGbe/VOhxzNOt44V/4WqjUu7ra3on8DD0DOqd9523BqOzA==", "dependencies": { - "@smithy/abort-controller": "^3.1.1", - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/smithy-client": "^3.2.0", + "@smithy/abort-controller": "^3.1.7", + "@smithy/middleware-endpoint": "^3.2.3", + "@smithy/smithy-client": "^3.4.4", "buffer": "5.6.0", "events": "3.3.0", "stream-browserify": "3.0.0", @@ -837,7 +844,7 @@ "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-s3": "^3.637.0" + "@aws-sdk/client-s3": "^3.705.0" } }, "node_modules/@aws-sdk/lib-storage/node_modules/buffer": { @@ -850,15 +857,15 @@ } }, "node_modules/@aws-sdk/middleware-bucket-endpoint": { - "version": "3.620.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.620.0.tgz", - "integrity": "sha512-eGLL0W6L3HDb3OACyetZYOWpHJ+gLo0TehQKeQyy2G8vTYXqNTeqYhuI6up9HVjBzU9eQiULVQETmgQs7TFaRg==", - "dependencies": { - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-arn-parser": "3.568.0", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.696.0.tgz", + "integrity": "sha512-V07jishKHUS5heRNGFpCWCSTjRJyQLynS/ncUeE8ZYtG66StOOQWftTwDfFOSoXlIqrXgb4oT9atryzXq7Z4LQ==", + "dependencies": { + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-arn-parser": "3.693.0", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "@smithy/util-config-provider": "^3.0.0", "tslib": "^2.6.2" }, @@ -867,13 +874,13 @@ } }, "node_modules/@aws-sdk/middleware-expect-continue": { - "version": "3.620.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.620.0.tgz", - "integrity": "sha512-QXeRFMLfyQ31nAHLbiTLtk0oHzG9QLMaof5jIfqcUwnOkO8YnQdeqzakrg1Alpy/VQ7aqzIi8qypkBe2KXZz0A==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.696.0.tgz", + "integrity": "sha512-vpVukqY3U2pb+ULeX0shs6L0aadNep6kKzjme/MyulPjtUDJpD3AekHsXRrCCGLmOqSKqRgQn5zhV9pQhHsb6Q==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -881,16 +888,21 @@ } }, "node_modules/@aws-sdk/middleware-flexible-checksums": { - "version": "3.620.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.620.0.tgz", - "integrity": "sha512-ftz+NW7qka2sVuwnnO1IzBku5ccP+s5qZGeRTPgrKB7OzRW85gthvIo1vQR2w+OwHFk7WJbbhhWwbCbktnP4UA==", + "version": "3.701.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.701.0.tgz", + "integrity": "sha512-adNaPCyTT+CiVM0ufDiO1Fe7nlRmJdI9Hcgj0M9S6zR7Dw70Ra5z8Lslkd7syAccYvZaqxLklGjPQH/7GNxwTA==", "dependencies": { "@aws-crypto/crc32": "5.2.0", "@aws-crypto/crc32c": "5.2.0", - "@aws-sdk/types": "3.609.0", + "@aws-crypto/util": "5.2.0", + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", "@smithy/is-array-buffer": "^3.0.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-stream": "^3.3.1", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -899,13 +911,13 @@ } }, "node_modules/@aws-sdk/middleware-host-header": { - "version": "3.620.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.620.0.tgz", - "integrity": "sha512-VMtPEZwqYrII/oUkffYsNWY9PZ9xpNJpMgmyU0rlDQ25O1c0Hk3fJmZRe6pEkAJ0omD7kLrqGl1DUjQVxpd/Rg==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.696.0.tgz", + "integrity": "sha512-zELJp9Ta2zkX7ELggMN9qMCgekqZhFC5V2rOr4hJDEb/Tte7gpfKSObAnw/3AYiVqt36sjHKfdkoTsuwGdEoDg==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -913,12 +925,12 @@ } }, "node_modules/@aws-sdk/middleware-location-constraint": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.609.0.tgz", - "integrity": "sha512-xzsdoTkszGVqGVPjUmgoP7TORiByLueMHieI1fhQL888WPdqctwAx3ES6d/bA9Q/i8jnc6hs+Fjhy8UvBTkE9A==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.696.0.tgz", + "integrity": "sha512-FgH12OB0q+DtTrP2aiDBddDKwL4BPOrm7w3VV9BJrSdkqQCNBPz8S1lb0y5eVH4tBG+2j7gKPlOv1wde4jF/iw==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -926,12 +938,12 @@ } }, "node_modules/@aws-sdk/middleware-logger": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.609.0.tgz", - "integrity": "sha512-S62U2dy4jMDhDFDK5gZ4VxFdWzCtLzwbYyFZx2uvPYTECkepLUfzLic2BHg2Qvtu4QjX+oGE3P/7fwaGIsGNuQ==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.696.0.tgz", + "integrity": "sha512-KhkHt+8AjCxcR/5Zp3++YPJPpFQzxpr+jmONiT/Jw2yqnSngZ0Yspm5wGoRx2hS1HJbyZNuaOWEGuJoxLeBKfA==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -939,13 +951,13 @@ } }, "node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.620.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.620.0.tgz", - "integrity": "sha512-nh91S7aGK3e/o1ck64sA/CyoFw+gAYj2BDOnoNa6ouyCrVJED96ZXWbhye/fz9SgmNUZR2g7GdVpiLpMKZoI5w==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.696.0.tgz", + "integrity": "sha512-si/maV3Z0hH7qa99f9ru2xpS5HlfSVcasRlNUXKSDm611i7jFMWwGNLUOXFAOLhXotPX5G3Z6BLwL34oDeBMug==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -953,22 +965,22 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3": { - "version": "3.635.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.635.0.tgz", - "integrity": "sha512-RLdYJPEV4JL/7NBoFUs7VlP90X++5FlJdxHz0DzCjmiD3qCviKy+Cym3qg1gBgHwucs5XisuClxDrGokhAdTQw==", - "dependencies": { - "@aws-sdk/core": "3.635.0", - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-arn-parser": "3.568.0", - "@smithy/core": "^2.4.0", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/signature-v4": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.696.0.tgz", + "integrity": "sha512-M7fEiAiN7DBMHflzOFzh1I2MNSlLpbiH2ubs87bdRc2wZsDPSbs4l3v6h3WLhxoQK0bq6vcfroudrLBgvCuX3Q==", + "dependencies": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-arn-parser": "3.693.0", + "@smithy/core": "^2.5.3", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/protocol-http": "^4.1.7", + "@smithy/signature-v4": "^4.2.2", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.3", - "@smithy/util-stream": "^3.1.3", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-stream": "^3.3.1", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -977,12 +989,12 @@ } }, "node_modules/@aws-sdk/middleware-ssec": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.609.0.tgz", - "integrity": "sha512-GZSD1s7+JswWOTamVap79QiDaIV7byJFssBW68GYjyRS5EBjNfwA/8s+6uE6g39R3ojyTbYOmvcANoZEhSULXg==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.696.0.tgz", + "integrity": "sha512-w/d6O7AOZ7Pg3w2d3BxnX5RmGNWb5X4RNxF19rJqcgu/xqxxE/QwZTNd5a7eTsqLXAUIfbbR8hh0czVfC1pJLA==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -990,14 +1002,16 @@ } }, "node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.637.0.tgz", - "integrity": "sha512-EYo0NE9/da/OY8STDsK2LvM4kNa79DBsf4YVtaG4P5pZ615IeFsD8xOHZeuJmUrSMlVQ8ywPRX7WMucUybsKug==", - "dependencies": { - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-endpoints": "3.637.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.696.0.tgz", + "integrity": "sha512-Lvyj8CTyxrHI6GHd2YVZKIRI5Fmnugt3cpJo0VrKKEgK5zMySwEZ1n4dqPK6czYRWKd5+WnYHYAuU+Wdk6Jsjw==", + "dependencies": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-endpoints": "3.696.0", + "@smithy/core": "^2.5.3", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -1005,15 +1019,15 @@ } }, "node_modules/@aws-sdk/region-config-resolver": { - "version": "3.614.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.614.0.tgz", - "integrity": "sha512-vDCeMXvic/LU0KFIUjpC3RiSTIkkvESsEfbVHiHH0YINfl8HnEqR5rj+L8+phsCeVg2+LmYwYxd5NRz4PHxt5g==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.696.0.tgz", + "integrity": "sha512-7EuH142lBXjI8yH6dVS/CZeiK/WZsmb/8zP6bQbVYpMrppSTgB3MzZZdxVZGzL5r8zPQOU10wLC4kIMy0qdBVQ==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/types": "^3.7.1", "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.3", + "@smithy/util-middleware": "^3.0.10", "tslib": "^2.6.2" }, "engines": { @@ -1021,17 +1035,17 @@ } }, "node_modules/@aws-sdk/s3-request-presigner": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.637.0.tgz", - "integrity": "sha512-URRiEDZEICyfAXmXcXREQCsvZrapITAymvg46p1Xjnuv7PTnUB0SF18B2omPL0E5d/X+T3O9NKdtot+BqJbIWw==", - "dependencies": { - "@aws-sdk/signature-v4-multi-region": "3.635.0", - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-format-url": "3.609.0", - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", + "version": "3.705.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.705.0.tgz", + "integrity": "sha512-dAQiXv/TqjEUCoEeiKqQGI8LJ3g8Xv+XJL4W9CwsB6ZHHDq0Q05ulpDSkhhCf52ySXf5dJ33e1o/VeUDY3q0pw==", + "dependencies": { + "@aws-sdk/signature-v4-multi-region": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-format-url": "3.696.0", + "@smithy/middleware-endpoint": "^3.2.3", + "@smithy/protocol-http": "^4.1.7", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -1039,15 +1053,15 @@ } }, "node_modules/@aws-sdk/signature-v4-multi-region": { - "version": "3.635.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.635.0.tgz", - "integrity": "sha512-J6QY4/invOkpogCHjSaDON1hF03viPpOnsrzVuCvJMmclS/iG62R4EY0wq1alYll0YmSdmKlpJwHMWwGtqK63Q==", - "dependencies": { - "@aws-sdk/middleware-sdk-s3": "3.635.0", - "@aws-sdk/types": "3.609.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/signature-v4": "^4.1.0", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.696.0.tgz", + "integrity": "sha512-ijPkoLjXuPtgxAYlDoYls8UaG/VKigROn9ebbvPL/orEY5umedd3iZTcS9T+uAf4Ur3GELLxMQiERZpfDKaz3g==", + "dependencies": { + "@aws-sdk/middleware-sdk-s3": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/signature-v4": "^4.2.2", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -1055,29 +1069,29 @@ } }, "node_modules/@aws-sdk/token-providers": { - "version": "3.614.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.614.0.tgz", - "integrity": "sha512-okItqyY6L9IHdxqs+Z116y5/nda7rHxLvROxtAJdLavWTYDydxrZstImNgGWTeVdmc0xX2gJCI77UYUTQWnhRw==", - "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", + "version": "3.699.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.699.0.tgz", + "integrity": "sha512-kuiEW9DWs7fNos/SM+y58HCPhcIzm1nEZLhe2/7/6+TvAYLuEWURYsbK48gzsxXlaJ2k/jGY3nIsA7RptbMOwA==", + "dependencies": { + "@aws-sdk/types": "3.696.0", + "@smithy/property-provider": "^3.1.9", + "@smithy/shared-ini-file-loader": "^3.1.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { "node": ">=16.0.0" }, "peerDependencies": { - "@aws-sdk/client-sso-oidc": "^3.614.0" + "@aws-sdk/client-sso-oidc": "^3.699.0" } }, "node_modules/@aws-sdk/types": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz", - "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.696.0.tgz", + "integrity": "sha512-9rTvUJIAj5d3//U5FDPWGJ1nFJLuWb30vugGOrWk7aNZ6y9tuA3PI7Cc9dP8WEXKVyK1vuuk8rSFP2iqXnlgrw==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -1085,9 +1099,9 @@ } }, "node_modules/@aws-sdk/util-arn-parser": { - "version": "3.568.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.568.0.tgz", - "integrity": "sha512-XUKJWWo+KOB7fbnPP0+g/o5Ulku/X53t7i/h+sPHr5xxYTJJ9CYnbToo95mzxe7xWvkLrsNtJ8L+MnNn9INs2w==", + "version": "3.693.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.693.0.tgz", + "integrity": "sha512-WC8x6ca+NRrtpAH64rWu+ryDZI3HuLwlEr8EU6/dbC/pt+r/zC0PBoC15VEygUaBA+isppCikQpGyEDu0Yj7gQ==", "dependencies": { "tslib": "^2.6.2" }, @@ -1096,13 +1110,13 @@ } }, "node_modules/@aws-sdk/util-endpoints": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.637.0.tgz", - "integrity": "sha512-pAqOKUHeVWHEXXDIp/qoMk/6jyxIb6GGjnK1/f8dKHtKIEs4tKsnnL563gceEvdad53OPXIt86uoevCcCzmBnw==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.696.0.tgz", + "integrity": "sha512-T5s0IlBVX+gkb9g/I6CLt4yAZVzMSiGnbUqWihWsHvQR1WOoIcndQy/Oz/IJXT9T2ipoy7a80gzV6a5mglrioA==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/types": "^3.3.0", - "@smithy/util-endpoints": "^2.0.5", + "@aws-sdk/types": "3.696.0", + "@smithy/types": "^3.7.1", + "@smithy/util-endpoints": "^2.1.6", "tslib": "^2.6.2" }, "engines": { @@ -1110,13 +1124,13 @@ } }, "node_modules/@aws-sdk/util-format-url": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.609.0.tgz", - "integrity": "sha512-fuk29BI/oLQlJ7pfm6iJ4gkEpHdavffAALZwXh9eaY1vQ0ip0aKfRTiNudPoJjyyahnz5yJ1HkmlcDitlzsOrQ==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.696.0.tgz", + "integrity": "sha512-R6yK1LozUD1GdAZRPhNsIow6VNFJUTyyoIar1OCWaknlucBMcq7musF3DN3TlORBwfFMj5buHc2ET9OtMtzvuA==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/querystring-builder": "^3.0.3", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/querystring-builder": "^3.0.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -1135,24 +1149,25 @@ } }, "node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.609.0.tgz", - "integrity": "sha512-fojPU+mNahzQ0YHYBsx0ZIhmMA96H+ZIZ665ObU9tl+SGdbLneVZVikGve+NmHTQwHzwkFsZYYnVKAkreJLAtA==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.696.0.tgz", + "integrity": "sha512-Z5rVNDdmPOe6ELoM5AhF/ja5tSjbe6ctSctDPb0JdDf4dT0v2MfwhJKzXju2RzX8Es/77Glh7MlaXLE0kCB9+Q==", "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/types": "^3.7.1", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.614.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.614.0.tgz", - "integrity": "sha512-15ElZT88peoHnq5TEoEtZwoXTXRxNrk60TZNdpl/TUBJ5oNJ9Dqb5Z4ryb8ofN6nm9aFf59GVAerFDz8iUoHBA==", - "dependencies": { - "@aws-sdk/types": "3.609.0", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.696.0.tgz", + "integrity": "sha512-KhKqcfyXIB0SCCt+qsu4eJjsfiOrNzK5dCV7RAW2YIpp+msxGUUX0NdRE9rkzjiv+3EMktgJm3eEIS+yxtlVdQ==", + "dependencies": { + "@aws-sdk/middleware-user-agent": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -1168,11 +1183,11 @@ } }, "node_modules/@aws-sdk/xml-builder": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.609.0.tgz", - "integrity": "sha512-l9XxNcA4HX98rwCC2/KoiWcmEiRfZe4G+mYwDbCFT87JIMj6GBhLDkAzr/W8KAaA2IDr8Vc6J8fZPgVulxxfMA==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.696.0.tgz", + "integrity": "sha512-dn1mX+EeqivoLYnY7p2qLrir0waPnCgS/0YdRCAVU2x14FgfUYCH6Im3w3oi2dMwhxfKY5lYVB5NKvZu7uI9lQ==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -2141,9 +2156,9 @@ } }, "node_modules/@golevelup/ts-jest": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/@golevelup/ts-jest/-/ts-jest-0.5.4.tgz", - "integrity": "sha512-2djwElTE0dMyjK6uYk7YqGs5BoA++O+bqhzDVsWHXrUD9XlOj3Ig0JeyILC8P7eBvSbWPaA61xaJX4doDvi4oQ==", + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/@golevelup/ts-jest/-/ts-jest-0.6.1.tgz", + "integrity": "sha512-ubs2xao8q2BsFWD6g2GnkWLLIeVHsPQKYMihzk3v0ptegKJhlNRZvk8wodDx2U2MI7cyKh43mueafZ9xpYdwHQ==", "dev": true }, "node_modules/@humanwhocodes/config-array": { @@ -2733,9 +2748,9 @@ "integrity": "sha512-HZpPoABogPvjeJOdzCOSJsXeL/SMCBgBZMVC3X3d7YYp2gf31MfxhUoYUNwf1ERPJOnQc0wkFn9trqI6ZEdZuA==" }, "node_modules/@nestjs/axios": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@nestjs/axios/-/axios-3.0.3.tgz", - "integrity": "sha512-h6TCn3yJwD6OKqqqfmtRS5Zo4E46Ip2n+gK1sqwzNBC+qxQ9xpCu+ODVRFur6V3alHSCSBxb3nNtt73VEdluyA==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@nestjs/axios/-/axios-3.1.3.tgz", + "integrity": "sha512-RZ/63c1tMxGLqyG3iOCVt7A72oy4x1eM6QEhd4KzCYpaVWW0igq0WSREeRoEZhIxRcZfDfIIkvsOMiM7yfVGZQ==", "peerDependencies": { "@nestjs/common": "^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0", "axios": "^1.3.1", @@ -2743,9 +2758,9 @@ } }, "node_modules/@nestjs/cache-manager": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@nestjs/cache-manager/-/cache-manager-2.2.2.tgz", - "integrity": "sha512-+n7rpU1QABeW2WV17Dl1vZCG3vWjJU1MaamWgZvbGxYE9EeCM0lVLfw3z7acgDTNwOy+K68xuQPoIMxD0bhjlA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@nestjs/cache-manager/-/cache-manager-2.3.0.tgz", + "integrity": "sha512-pxeBp9w/s99HaW2+pezM1P3fLiWmUEnTUoUMLa9UYViCtjj0E0A19W/vaT5JFACCzFIeNrwH4/16jkpAhQ25Vw==", "peerDependencies": { "@nestjs/common": "^9.0.0 || ^10.0.0", "@nestjs/core": "^9.0.0 || ^10.0.0", @@ -2754,28 +2769,28 @@ } }, "node_modules/@nestjs/cli": { - "version": "10.4.4", - "resolved": "https://registry.npmjs.org/@nestjs/cli/-/cli-10.4.4.tgz", - "integrity": "sha512-WKERbSZJGof0+9XeeMmWnb/9FpNxogcB5eTJTHjc9no0ymdTw3jTzT+KZL9iC/hGqBpuomDLaNFCYbAOt29nBw==", + "version": "10.4.9", + "resolved": "https://registry.npmjs.org/@nestjs/cli/-/cli-10.4.9.tgz", + "integrity": "sha512-s8qYd97bggqeK7Op3iD49X2MpFtW4LVNLAwXFkfbRxKME6IYT7X0muNTJ2+QfI8hpbNx9isWkrLWIp+g5FOhiA==", "dependencies": { - "@angular-devkit/core": "17.3.8", - "@angular-devkit/schematics": "17.3.8", - "@angular-devkit/schematics-cli": "17.3.8", + "@angular-devkit/core": "17.3.11", + "@angular-devkit/schematics": "17.3.11", + "@angular-devkit/schematics-cli": "17.3.11", "@nestjs/schematics": "^10.0.1", "chalk": "4.1.2", "chokidar": "3.6.0", "cli-table3": "0.6.5", "commander": "4.1.1", "fork-ts-checker-webpack-plugin": "9.0.2", - "glob": "10.4.2", + "glob": "10.4.5", "inquirer": "8.2.6", "node-emoji": "1.11.0", "ora": "5.4.1", "tree-kill": "1.2.2", "tsconfig-paths": "4.2.0", - "tsconfig-paths-webpack-plugin": "4.1.0", - "typescript": "5.3.3", - "webpack": "5.93.0", + "tsconfig-paths-webpack-plugin": "4.2.0", + "typescript": "5.7.2", + "webpack": "5.97.1", "webpack-node-externals": "3.0.0" }, "bin": { @@ -2785,7 +2800,7 @@ "node": ">= 16.14" }, "peerDependencies": { - "@swc/cli": "^0.1.62 || ^0.3.0 || ^0.4.0", + "@swc/cli": "^0.1.62 || ^0.3.0 || ^0.4.0 || ^0.5.0", "@swc/core": "^1.3.62" }, "peerDependenciesMeta": { @@ -2806,9 +2821,9 @@ } }, "node_modules/@nestjs/cli/node_modules/glob": { - "version": "10.4.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", - "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", @@ -2820,9 +2835,6 @@ "bin": { "glob": "dist/esm/bin.mjs" }, - "engines": { - "node": ">=16 || 14 >=14.18" - }, "funding": { "url": "https://github.com/sponsors/isaacs" } @@ -2855,25 +2867,13 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@nestjs/cli/node_modules/typescript": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", - "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, "node_modules/@nestjs/common": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/common/-/common-10.4.1.tgz", - "integrity": "sha512-4CkrDx0s4XuWqFjX8WvOFV7Y6RGJd0P2OBblkhZS7nwoctoSuW5pyEa8SWak6YHNGrHRpFb6ymm5Ai4LncwRVA==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/common/-/common-10.4.15.tgz", + "integrity": "sha512-vaLg1ZgwhG29BuLDxPA9OAcIlgqzp9/N8iG0wGapyUNTf4IY4O6zAHgN6QalwLhFxq7nOI021vdRojR1oF3bqg==", "dependencies": { "iterare": "1.2.1", - "tslib": "2.6.3", + "tslib": "2.8.1", "uid": "2.0.2" }, "funding": { @@ -2896,9 +2896,9 @@ } }, "node_modules/@nestjs/config": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@nestjs/config/-/config-3.2.3.tgz", - "integrity": "sha512-p6yv/CvoBewJ72mBq4NXgOAi2rSQNWx3a+IMJLVKS2uiwFCOQQuiIatGwq6MRjXV3Jr+B41iUO8FIf4xBrZ4/w==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@nestjs/config/-/config-3.3.0.tgz", + "integrity": "sha512-pdGTp8m9d0ZCrjTpjkUbZx6gyf2IKf+7zlkrPNMsJzYZ4bFRRTpXrnj+556/5uiI6AfL5mMrJc2u7dB6bvM+VA==", "dependencies": { "dotenv": "16.4.5", "dotenv-expand": "10.0.0", @@ -2909,17 +2909,28 @@ "rxjs": "^7.1.0" } }, + "node_modules/@nestjs/config/node_modules/dotenv": { + "version": "16.4.5", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", + "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, "node_modules/@nestjs/core": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/core/-/core-10.4.1.tgz", - "integrity": "sha512-9I1WdfOBCCHdUm+ClBJupOuZQS6UxzIWHIq6Vp1brAA5ZKl/Wq6BVwSsbnUJGBy3J3PM2XHmR0EQ4fwX3nR7lA==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/core/-/core-10.4.15.tgz", + "integrity": "sha512-UBejmdiYwaH6fTsz2QFBlC1cJHM+3UDeLZN+CiP9I1fRv2KlBZsmozGLbV5eS1JAVWJB4T5N5yQ0gjN8ZvcS2w==", "hasInstallScript": true, "dependencies": { "@nuxtjs/opencollective": "0.3.2", "fast-safe-stringify": "2.1.1", "iterare": "1.2.1", - "path-to-regexp": "3.2.0", - "tslib": "2.6.3", + "path-to-regexp": "3.3.0", + "tslib": "2.8.1", "uid": "2.0.2" }, "funding": { @@ -2975,15 +2986,15 @@ } }, "node_modules/@nestjs/platform-express": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/platform-express/-/platform-express-10.4.1.tgz", - "integrity": "sha512-ccfqIDAq/bg1ShLI5KGtaLaYGykuAdvCi57ohewH7eKJSIpWY1DQjbgKlFfXokALYUq1YOMGqjeZ244OWHfDQg==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/platform-express/-/platform-express-10.4.15.tgz", + "integrity": "sha512-63ZZPkXHjoDyO7ahGOVcybZCRa7/Scp6mObQKjcX/fTEq1YJeU75ELvMsuQgc8U2opMGOBD7GVuc4DV0oeDHoA==", "dependencies": { - "body-parser": "1.20.2", + "body-parser": "1.20.3", "cors": "2.8.5", - "express": "4.19.2", + "express": "4.21.2", "multer": "1.4.4-lts.1", - "tslib": "2.6.3" + "tslib": "2.8.1" }, "funding": { "type": "opencollective", @@ -2995,12 +3006,12 @@ } }, "node_modules/@nestjs/schedule": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@nestjs/schedule/-/schedule-4.1.0.tgz", - "integrity": "sha512-WEc96WTXZW+VI/Ng+uBpiBUwm6TWtAbQ4RKWkfbmzKvmbRGzA/9k/UyAWDS9k0pp+ZcbC+MaZQtt7TjQHrwX6g==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@nestjs/schedule/-/schedule-4.1.2.tgz", + "integrity": "sha512-hCTQ1lNjIA5EHxeu8VvQu2Ed2DBLS1GSC6uKPYlBiQe6LL9a7zfE9iVSK+zuK8E2odsApteEBmfAQchc8Hx0Gg==", "dependencies": { - "cron": "3.1.7", - "uuid": "10.0.0" + "cron": "3.2.1", + "uuid": "11.0.3" }, "peerDependencies": { "@nestjs/common": "^8.0.0 || ^9.0.0 || ^10.0.0", @@ -3008,25 +3019,25 @@ } }, "node_modules/@nestjs/schedule/node_modules/uuid": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz", - "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==", + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.0.3.tgz", + "integrity": "sha512-d0z310fCWv5dJwnX1Y/MncBAqGMKEzlBb1AOf7z9K8ALnd0utBX/msg/fA0+sbyN1ihbMsLhrBlnl1ak7Wa0rg==", "funding": [ "https://github.com/sponsors/broofa", "https://github.com/sponsors/ctavan" ], "bin": { - "uuid": "dist/bin/uuid" + "uuid": "dist/esm/bin/uuid" } }, "node_modules/@nestjs/schematics": { - "version": "10.1.4", - "resolved": "https://registry.npmjs.org/@nestjs/schematics/-/schematics-10.1.4.tgz", - "integrity": "sha512-QpY8ez9cTvXXPr3/KBrtSgXQHMSV6BkOUYy2c2TTe6cBqriEdGnCYqGl8cnfrQl3632q3lveQPaZ/c127dHsEw==", + "version": "10.2.3", + "resolved": "https://registry.npmjs.org/@nestjs/schematics/-/schematics-10.2.3.tgz", + "integrity": "sha512-4e8gxaCk7DhBxVUly2PjYL4xC2ifDFexCqq1/u4TtivLGXotVk0wHdYuPYe1tHTHuR1lsOkRbfOCpkdTnigLVg==", "dependencies": { - "@angular-devkit/core": "17.3.8", - "@angular-devkit/schematics": "17.3.8", - "comment-json": "4.2.3", + "@angular-devkit/core": "17.3.11", + "@angular-devkit/schematics": "17.3.11", + "comment-json": "4.2.5", "jsonc-parser": "3.3.1", "pluralize": "8.0.0" }, @@ -3040,15 +3051,15 @@ "integrity": "sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==" }, "node_modules/@nestjs/swagger": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@nestjs/swagger/-/swagger-7.4.0.tgz", - "integrity": "sha512-dCiwKkRxcR7dZs5jtrGspBAe/nqJd1AYzOBTzw9iCdbq3BGrLpwokelk6lFZPe4twpTsPQqzNKBwKzVbI6AR/g==", + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/@nestjs/swagger/-/swagger-7.4.2.tgz", + "integrity": "sha512-Mu6TEn1M/owIvAx2B4DUQObQXqo2028R2s9rSZ/hJEgBK95+doTwS0DjmVA2wTeZTyVtXOoN7CsoM5pONBzvKQ==", "dependencies": { "@microsoft/tsdoc": "^0.15.0", "@nestjs/mapped-types": "2.0.5", "js-yaml": "4.1.0", "lodash": "4.17.21", - "path-to-regexp": "3.2.0", + "path-to-regexp": "3.3.0", "swagger-ui-dist": "5.17.14" }, "peerDependencies": { @@ -3072,11 +3083,11 @@ } }, "node_modules/@nestjs/testing": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/testing/-/testing-10.4.1.tgz", - "integrity": "sha512-pR+su5+YGqCLH0RhhVkPowQK7FCORU0/PWAywPK7LScAOtD67ZoviZ7hAU4vnGdwkg4HCB0D7W8Bkg19CGU8Xw==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/testing/-/testing-10.4.15.tgz", + "integrity": "sha512-eGlWESkACMKti+iZk1hs6FUY/UqObmMaa8HAN9JLnaYkoLf1Jeh+EuHlGnfqo/Rq77oznNLIyaA3PFjrFDlNUg==", "dependencies": { - "tslib": "2.6.3" + "tslib": "2.8.1" }, "funding": { "type": "opencollective", @@ -3182,6 +3193,12 @@ "url": "https://opencollective.com/unts" } }, + "node_modules/@rtsao/scc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", + "dev": true + }, "node_modules/@sinclair/typebox": { "version": "0.27.8", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", @@ -3207,11 +3224,11 @@ } }, "node_modules/@smithy/abort-controller": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.1.1.tgz", - "integrity": "sha512-MBJBiidoe+0cTFhyxT8g+9g7CeVccLM0IOKKUMCNQ1CNMJ/eIfoo0RTfVrXOONEI1UCN1W+zkiHSbzUNE9dZtQ==", + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.1.8.tgz", + "integrity": "sha512-+3DOBcUn5/rVjlxGvUPKc416SExarAQ+Qe0bqk30YSUjbepwpS7QN0cyKUSifvLJhdMZ0WPzPP5ymut0oonrpQ==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3219,31 +3236,31 @@ } }, "node_modules/@smithy/chunked-blob-reader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-3.0.0.tgz", - "integrity": "sha512-sbnURCwjF0gSToGlsBiAmd1lRCmSn72nu9axfJu5lIx6RUEgHu6GwTMbqCdhQSi0Pumcm5vFxsi9XWXb2mTaoA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-4.0.0.tgz", + "integrity": "sha512-jSqRnZvkT4egkq/7b6/QRCNXmmYVcHwnJldqJ3IhVpQE2atObVJ137xmGeuGFhjFUr8gCEVAOKwSY79OvpbDaQ==", "dependencies": { "tslib": "^2.6.2" } }, "node_modules/@smithy/chunked-blob-reader-native": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-3.0.0.tgz", - "integrity": "sha512-VDkpCYW+peSuM4zJip5WDfqvg2Mo/e8yxOv3VF1m11y7B8KKMKVFtmZWDe36Fvk8rGuWrPZHHXZ7rR7uM5yWyg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-3.0.1.tgz", + "integrity": "sha512-VEYtPvh5rs/xlyqpm5NRnfYLZn+q0SRPELbvBV+C/G7IQ+ouTuo+NKKa3ShG5OaFR8NYVMXls9hPYLTvIKKDrQ==", "dependencies": { "@smithy/util-base64": "^3.0.0", "tslib": "^2.6.2" } }, "node_modules/@smithy/config-resolver": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.5.tgz", - "integrity": "sha512-SkW5LxfkSI1bUC74OtfBbdz+grQXYiPYolyu8VfpLIjEoN/sHVBlLeGXMQ1vX4ejkgfv6sxVbQJ32yF2cl1veA==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.12.tgz", + "integrity": "sha512-YAJP9UJFZRZ8N+UruTeq78zkdjUHmzsY62J4qKWZ4SXB4QXJ/+680EfXXgkYA2xj77ooMqtUY9m406zGNqwivQ==", "dependencies": { - "@smithy/node-config-provider": "^3.1.4", - "@smithy/types": "^3.3.0", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/types": "^3.7.1", "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.3", + "@smithy/util-middleware": "^3.0.10", "tslib": "^2.6.2" }, "engines": { @@ -3251,18 +3268,16 @@ } }, "node_modules/@smithy/core": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.4.0.tgz", - "integrity": "sha512-cHXq+FneIF/KJbt4q4pjN186+Jf4ZB0ZOqEaZMBhT79srEyGDDBV31NqBRBjazz8ppQ1bJbDJMY9ba5wKFV36w==", - "dependencies": { - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/middleware-retry": "^3.0.15", - "@smithy/middleware-serde": "^3.0.3", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.5.4.tgz", + "integrity": "sha512-iFh2Ymn2sCziBRLPuOOxRPkuCx/2gBdXtBGuCUFLUe6bWYjKnhHyIPqGeNkLZ5Aco/5GjebRTBFiWID3sDbrKw==", + "dependencies": { + "@smithy/middleware-serde": "^3.0.10", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "@smithy/util-body-length-browser": "^3.0.0", - "@smithy/util-middleware": "^3.0.3", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-stream": "^3.3.1", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -3271,14 +3286,14 @@ } }, "node_modules/@smithy/credential-provider-imds": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.2.0.tgz", - "integrity": "sha512-0SCIzgd8LYZ9EJxUjLXBmEKSZR/P/w6l7Rz/pab9culE/RWuqelAKGJvn5qUOl8BgX8Yj5HWM50A5hiB/RzsgA==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.2.7.tgz", + "integrity": "sha512-cEfbau+rrWF8ylkmmVAObOmjbTIzKyUC5TkBL58SbLywD0RCBC4JAUKbmtSm2w5KUJNRPGgpGFMvE2FKnuNlWQ==", "dependencies": { - "@smithy/node-config-provider": "^3.1.4", - "@smithy/property-provider": "^3.1.3", - "@smithy/types": "^3.3.0", - "@smithy/url-parser": "^3.0.3", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/property-provider": "^3.1.10", + "@smithy/types": "^3.7.1", + "@smithy/url-parser": "^3.0.10", "tslib": "^2.6.2" }, "engines": { @@ -3286,23 +3301,23 @@ } }, "node_modules/@smithy/eventstream-codec": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-3.1.2.tgz", - "integrity": "sha512-0mBcu49JWt4MXhrhRAlxASNy0IjDRFU+aWNDRal9OtUJvJNiwDuyKMUONSOjLjSCeGwZaE0wOErdqULer8r7yw==", + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-3.1.9.tgz", + "integrity": "sha512-F574nX0hhlNOjBnP+noLtsPFqXnWh2L0+nZKCwcu7P7J8k+k+rdIDs+RMnrMwrzhUE4mwMgyN0cYnEn0G8yrnQ==", "dependencies": { "@aws-crypto/crc32": "5.2.0", - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "@smithy/util-hex-encoding": "^3.0.0", "tslib": "^2.6.2" } }, "node_modules/@smithy/eventstream-serde-browser": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-3.0.6.tgz", - "integrity": "sha512-2hM54UWQUOrki4BtsUI1WzmD13/SeaqT/AB3EUJKbcver/WgKNaiJ5y5F5XXuVe6UekffVzuUDrBZVAA3AWRpQ==", + "version": "3.0.13", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-3.0.13.tgz", + "integrity": "sha512-Nee9m+97o9Qj6/XeLz2g2vANS2SZgAxV4rDBMKGHvFJHU/xz88x2RwCkwsvEwYjSX4BV1NG1JXmxEaDUzZTAtw==", "dependencies": { - "@smithy/eventstream-serde-universal": "^3.0.5", - "@smithy/types": "^3.3.0", + "@smithy/eventstream-serde-universal": "^3.0.12", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3310,11 +3325,11 @@ } }, "node_modules/@smithy/eventstream-serde-config-resolver": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.0.3.tgz", - "integrity": "sha512-NVTYjOuYpGfrN/VbRQgn31x73KDLfCXCsFdad8DiIc3IcdxL+dYA9zEQPyOP7Fy2QL8CPy2WE4WCUD+ZsLNfaQ==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.0.10.tgz", + "integrity": "sha512-K1M0x7P7qbBUKB0UWIL5KOcyi6zqV5mPJoL0/o01HPJr0CSq3A9FYuJC6e11EX6hR8QTIR++DBiGrYveOu6trw==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3322,12 +3337,12 @@ } }, "node_modules/@smithy/eventstream-serde-node": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-3.0.5.tgz", - "integrity": "sha512-+upXvnHNyZP095s11jF5dhGw/Ihzqwl5G+/KtMnoQOpdfC3B5HYCcDVG9EmgkhJMXJlM64PyN5gjJl0uXFQehQ==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-3.0.12.tgz", + "integrity": "sha512-kiZymxXvZ4tnuYsPSMUHe+MMfc4FTeFWJIc0Q5wygJoUQM4rVHNghvd48y7ppuulNMbuYt95ah71pYc2+o4JOA==", "dependencies": { - "@smithy/eventstream-serde-universal": "^3.0.5", - "@smithy/types": "^3.3.0", + "@smithy/eventstream-serde-universal": "^3.0.12", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3335,12 +3350,12 @@ } }, "node_modules/@smithy/eventstream-serde-universal": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-3.0.5.tgz", - "integrity": "sha512-5u/nXbyoh1s4QxrvNre9V6vfyoLWuiVvvd5TlZjGThIikc3G+uNiG9uOTCWweSRjv1asdDIWK7nOmN7le4RYHQ==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-3.0.12.tgz", + "integrity": "sha512-1i8ifhLJrOZ+pEifTlF0EfZzMLUGQggYQ6WmZ4d5g77zEKf7oZ0kvh1yKWHPjofvOwqrkwRDVuxuYC8wVd662A==", "dependencies": { - "@smithy/eventstream-codec": "^3.1.2", - "@smithy/types": "^3.3.0", + "@smithy/eventstream-codec": "^3.1.9", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3348,34 +3363,34 @@ } }, "node_modules/@smithy/fetch-http-handler": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.2.4.tgz", - "integrity": "sha512-kBprh5Gs5h7ug4nBWZi1FZthdqSM+T7zMmsZxx0IBvWUn7dK3diz2SHn7Bs4dQGFDk8plDv375gzenDoNwrXjg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-4.1.1.tgz", + "integrity": "sha512-bH7QW0+JdX0bPBadXt8GwMof/jz0H28I84hU1Uet9ISpzUqXqRQ3fEZJ+ANPOhzSEczYvANNl3uDQDYArSFDtA==", "dependencies": { - "@smithy/protocol-http": "^4.1.0", - "@smithy/querystring-builder": "^3.0.3", - "@smithy/types": "^3.3.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/querystring-builder": "^3.0.10", + "@smithy/types": "^3.7.1", "@smithy/util-base64": "^3.0.0", "tslib": "^2.6.2" } }, "node_modules/@smithy/hash-blob-browser": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-3.1.2.tgz", - "integrity": "sha512-hAbfqN2UbISltakCC2TP0kx4LqXBttEv2MqSPE98gVuDFMf05lU+TpC41QtqGP3Ff5A3GwZMPfKnEy0VmEUpmg==", + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-3.1.9.tgz", + "integrity": "sha512-wOu78omaUuW5DE+PVWXiRKWRZLecARyP3xcq5SmkXUw9+utgN8HnSnBfrjL2B/4ZxgqPjaAJQkC/+JHf1ITVaQ==", "dependencies": { - "@smithy/chunked-blob-reader": "^3.0.0", - "@smithy/chunked-blob-reader-native": "^3.0.0", - "@smithy/types": "^3.3.0", + "@smithy/chunked-blob-reader": "^4.0.0", + "@smithy/chunked-blob-reader-native": "^3.0.1", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "node_modules/@smithy/hash-node": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.3.tgz", - "integrity": "sha512-2ctBXpPMG+B3BtWSGNnKELJ7SH9e4TNefJS0cd2eSkOOROeBnnVBnAy9LtJ8tY4vUEoe55N4CNPxzbWvR39iBw==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.10.tgz", + "integrity": "sha512-3zWGWCHI+FlJ5WJwx73Mw2llYR8aflVyZN5JhoqLxbdPZi6UyKSdCeXAWJw9ja22m6S6Tzz1KZ+kAaSwvydi0g==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "@smithy/util-buffer-from": "^3.0.0", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" @@ -3385,11 +3400,11 @@ } }, "node_modules/@smithy/hash-stream-node": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-3.1.2.tgz", - "integrity": "sha512-PBgDMeEdDzi6JxKwbfBtwQG9eT9cVwsf0dZzLXoJF4sHKHs5HEo/3lJWpn6jibfJwT34I1EBXpBnZE8AxAft6g==", + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-3.1.9.tgz", + "integrity": "sha512-3XfHBjSP3oDWxLmlxnt+F+FqXpL3WlXs+XXaB6bV9Wo8BBu87fK1dSEsyH7Z4ZHRmwZ4g9lFMdf08m9hoX1iRA==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" }, @@ -3398,11 +3413,11 @@ } }, "node_modules/@smithy/invalid-dependency": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.3.tgz", - "integrity": "sha512-ID1eL/zpDULmHJbflb864k72/SNOZCADRc9i7Exq3RUNJw6raWUSlFEQ+3PX3EYs++bTxZB2dE9mEHTQLv61tw==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.10.tgz", + "integrity": "sha512-Lp2L65vFi+cj0vFMu2obpPW69DU+6O5g3086lmI4XcnRCG8PxvpWC7XyaVwJCxsZFzueHjXnrOH/E0pl0zikfA==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, @@ -3419,22 +3434,22 @@ } }, "node_modules/@smithy/md5-js": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-3.0.3.tgz", - "integrity": "sha512-O/SAkGVwpWmelpj/8yDtsaVe6sINHLB1q8YE/+ZQbDxIw3SRLbTZuRaI10K12sVoENdnHqzPp5i3/H+BcZ3m3Q==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-3.0.10.tgz", + "integrity": "sha512-m3bv6dApflt3fS2Y1PyWPUtRP7iuBlvikEOGwu0HsCZ0vE7zcIX+dBoh3e+31/rddagw8nj92j0kJg2TfV+SJA==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" } }, "node_modules/@smithy/middleware-content-length": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.5.tgz", - "integrity": "sha512-ILEzC2eyxx6ncej3zZSwMpB5RJ0zuqH7eMptxC4KN3f+v9bqT8ohssKbhNR78k/2tWW+KS5Spw+tbPF4Ejyqvw==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.12.tgz", + "integrity": "sha512-1mDEXqzM20yywaMDuf5o9ue8OkJ373lSPbaSjyEvkWdqELhFMyNNgKGWL/rCSf4KME8B+HlHKuR8u9kRj8HzEQ==", "dependencies": { - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3442,16 +3457,17 @@ } }, "node_modules/@smithy/middleware-endpoint": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.1.0.tgz", - "integrity": "sha512-5y5aiKCEwg9TDPB4yFE7H6tYvGFf1OJHNczeY10/EFF8Ir8jZbNntQJxMWNfeQjC1mxPsaQ6mR9cvQbf+0YeMw==", - "dependencies": { - "@smithy/middleware-serde": "^3.0.3", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", - "@smithy/url-parser": "^3.0.3", - "@smithy/util-middleware": "^3.0.3", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.2.4.tgz", + "integrity": "sha512-TybiW2LA3kYVd3e+lWhINVu1o26KJbBwOpADnf0L4x/35vLVica77XVR5hvV9+kWeTGeSJ3IHTcYxbRxlbwhsg==", + "dependencies": { + "@smithy/core": "^2.5.4", + "@smithy/middleware-serde": "^3.0.10", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/shared-ini-file-loader": "^3.1.11", + "@smithy/types": "^3.7.1", + "@smithy/url-parser": "^3.0.10", + "@smithy/util-middleware": "^3.0.10", "tslib": "^2.6.2" }, "engines": { @@ -3459,17 +3475,17 @@ } }, "node_modules/@smithy/middleware-retry": { - "version": "3.0.15", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.15.tgz", - "integrity": "sha512-iTMedvNt1ApdvkaoE8aSDuwaoc+BhvHqttbA/FO4Ty+y/S5hW6Ci/CTScG7vam4RYJWZxdTElc3MEfHRVH6cgQ==", - "dependencies": { - "@smithy/node-config-provider": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/service-error-classification": "^3.0.3", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/util-middleware": "^3.0.3", - "@smithy/util-retry": "^3.0.3", + "version": "3.0.28", + "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.28.tgz", + "integrity": "sha512-vK2eDfvIXG1U64FEUhYxoZ1JSj4XFbYWkK36iz02i3pFwWiDz1Q7jKhGTBCwx/7KqJNk4VS7d7cDLXFOvP7M+g==", + "dependencies": { + "@smithy/node-config-provider": "^3.1.11", + "@smithy/protocol-http": "^4.1.7", + "@smithy/service-error-classification": "^3.0.10", + "@smithy/smithy-client": "^3.4.5", + "@smithy/types": "^3.7.1", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-retry": "^3.0.10", "tslib": "^2.6.2", "uuid": "^9.0.1" }, @@ -3478,11 +3494,11 @@ } }, "node_modules/@smithy/middleware-serde": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.3.tgz", - "integrity": "sha512-puUbyJQBcg9eSErFXjKNiGILJGtiqmuuNKEYNYfUD57fUl4i9+mfmThtQhvFXU0hCVG0iEJhvQUipUf+/SsFdA==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.10.tgz", + "integrity": "sha512-MnAuhh+dD14F428ubSJuRnmRsfOpxSzvRhaGVTvd/lrUDE3kxzCCmH8lnVTvoNQnV2BbJ4c15QwZ3UdQBtFNZA==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3490,11 +3506,11 @@ } }, "node_modules/@smithy/middleware-stack": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.3.tgz", - "integrity": "sha512-r4klY9nFudB0r9UdSMaGSyjyQK5adUyPnQN/ZM6M75phTxOdnc/AhpvGD1fQUvgmqjQEBGCwpnPbDm8pH5PapA==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.10.tgz", + "integrity": "sha512-grCHyoiARDBBGPyw2BeicpjgpsDFWZZxptbVKb3CRd/ZA15F/T6rZjCCuBUjJwdck1nwUuIxYtsS4H9DDpbP5w==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3502,13 +3518,13 @@ } }, "node_modules/@smithy/node-config-provider": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.1.4.tgz", - "integrity": "sha512-YvnElQy8HR4vDcAjoy7Xkx9YT8xZP4cBXcbJSgm/kxmiQu08DwUwj8rkGnyoJTpfl/3xYHH+d8zE+eHqoDCSdQ==", + "version": "3.1.11", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.1.11.tgz", + "integrity": "sha512-URq3gT3RpDikh/8MBJUB+QGZzfS7Bm6TQTqoh4CqE8NBuyPkWa5eUXj0XFcFfeZVgg3WMh1u19iaXn8FvvXxZw==", "dependencies": { - "@smithy/property-provider": "^3.1.3", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", + "@smithy/property-provider": "^3.1.10", + "@smithy/shared-ini-file-loader": "^3.1.11", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3516,14 +3532,14 @@ } }, "node_modules/@smithy/node-http-handler": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.1.4.tgz", - "integrity": "sha512-+UmxgixgOr/yLsUxcEKGH0fMNVteJFGkmRltYFHnBMlogyFdpzn2CwqWmxOrfJELhV34v0WSlaqG1UtE1uXlJg==", - "dependencies": { - "@smithy/abort-controller": "^3.1.1", - "@smithy/protocol-http": "^4.1.0", - "@smithy/querystring-builder": "^3.0.3", - "@smithy/types": "^3.3.0", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.3.1.tgz", + "integrity": "sha512-fr+UAOMGWh6bn4YSEezBCpJn9Ukp9oR4D32sCjCo7U81evE11YePOQ58ogzyfgmjIO79YeOdfXXqr0jyhPQeMg==", + "dependencies": { + "@smithy/abort-controller": "^3.1.8", + "@smithy/protocol-http": "^4.1.7", + "@smithy/querystring-builder": "^3.0.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3531,11 +3547,11 @@ } }, "node_modules/@smithy/property-provider": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.1.3.tgz", - "integrity": "sha512-zahyOVR9Q4PEoguJ/NrFP4O7SMAfYO1HLhB18M+q+Z4KFd4V2obiMnlVoUFzFLSPeVt1POyNWneHHrZaTMoc/g==", + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.1.10.tgz", + "integrity": "sha512-n1MJZGTorTH2DvyTVj+3wXnd4CzjJxyXeOgnTlgNVFxaaMeT4OteEp4QrzF8p9ee2yg42nvyVK6R/awLCakjeQ==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3543,11 +3559,11 @@ } }, "node_modules/@smithy/protocol-http": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.1.0.tgz", - "integrity": "sha512-dPVoHYQ2wcHooGXg3LQisa1hH0e4y0pAddPMeeUPipI1tEOqL6A4N0/G7abeq+K8wrwSgjk4C0wnD1XZpJm5aA==", + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.1.7.tgz", + "integrity": "sha512-FP2LepWD0eJeOTm0SjssPcgqAlDFzOmRXqXmGhfIM52G7Lrox/pcpQf6RP4F21k0+O12zaqQt5fCDOeBtqY6Cg==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3555,11 +3571,11 @@ } }, "node_modules/@smithy/querystring-builder": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-3.0.3.tgz", - "integrity": "sha512-vyWckeUeesFKzCDaRwWLUA1Xym9McaA6XpFfAK5qI9DKJ4M33ooQGqvM4J+LalH4u/Dq9nFiC8U6Qn1qi0+9zw==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-3.0.10.tgz", + "integrity": "sha512-nT9CQF3EIJtIUepXQuBFb8dxJi3WVZS3XfuDksxSCSn+/CzZowRLdhDn+2acbBv8R6eaJqPupoI/aRFIImNVPQ==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "@smithy/util-uri-escape": "^3.0.0", "tslib": "^2.6.2" }, @@ -3568,11 +3584,11 @@ } }, "node_modules/@smithy/querystring-parser": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.3.tgz", - "integrity": "sha512-zahM1lQv2YjmznnfQsWbYojFe55l0SLG/988brlLv1i8z3dubloLF+75ATRsqPBboUXsW6I9CPGE5rQgLfY0vQ==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.10.tgz", + "integrity": "sha512-Oa0XDcpo9SmjhiDD9ua2UyM3uU01ZTuIrNdZvzwUTykW1PM8o2yJvMh1Do1rY5sUQg4NDV70dMi0JhDx4GyxuQ==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3580,22 +3596,22 @@ } }, "node_modules/@smithy/service-error-classification": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.3.tgz", - "integrity": "sha512-Jn39sSl8cim/VlkLsUhRFq/dKDnRUFlfRkvhOJaUbLBXUsLRLNf9WaxDv/z9BjuQ3A6k/qE8af1lsqcwm7+DaQ==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.10.tgz", + "integrity": "sha512-zHe642KCqDxXLuhs6xmHVgRwy078RfqxP2wRDpIyiF8EmsWXptMwnMwbVa50lw+WOGNrYm9zbaEg0oDe3PTtvQ==", "dependencies": { - "@smithy/types": "^3.3.0" + "@smithy/types": "^3.7.1" }, "engines": { "node": ">=16.0.0" } }, "node_modules/@smithy/shared-ini-file-loader": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.4.tgz", - "integrity": "sha512-qMxS4hBGB8FY2GQqshcRUy1K6k8aBWP5vwm8qKkCT3A9K2dawUwOIJfqh9Yste/Bl0J2lzosVyrXDj68kLcHXQ==", + "version": "3.1.11", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.11.tgz", + "integrity": "sha512-AUdrIZHFtUgmfSN4Gq9nHu3IkHMa1YDcN+s061Nfm+6pQ0mJy85YQDB0tZBCmls0Vuj22pLwDPmL92+Hvfwwlg==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3603,15 +3619,15 @@ } }, "node_modules/@smithy/signature-v4": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-4.1.0.tgz", - "integrity": "sha512-aRryp2XNZeRcOtuJoxjydO6QTaVhxx/vjaR+gx7ZjaFgrgPRyZ3HCTbfwqYj6ZWEBHkCSUfcaymKPURaByukag==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-4.2.3.tgz", + "integrity": "sha512-pPSQQ2v2vu9vc8iew7sszLd0O09I5TRc5zhY71KA+Ao0xYazIG+uLeHbTJfIWGO3BGVLiXjUr3EEeCcEQLjpWQ==", "dependencies": { "@smithy/is-array-buffer": "^3.0.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "@smithy/util-hex-encoding": "^3.0.0", - "@smithy/util-middleware": "^3.0.3", + "@smithy/util-middleware": "^3.0.10", "@smithy/util-uri-escape": "^3.0.0", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" @@ -3621,15 +3637,16 @@ } }, "node_modules/@smithy/smithy-client": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.2.0.tgz", - "integrity": "sha512-pDbtxs8WOhJLJSeaF/eAbPgXg4VVYFlRcL/zoNYA5WbG3wBL06CHtBSg53ppkttDpAJ/hdiede+xApip1CwSLw==", - "dependencies": { - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/middleware-stack": "^3.0.3", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", - "@smithy/util-stream": "^3.1.3", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.4.5.tgz", + "integrity": "sha512-k0sybYT9zlP79sIKd1XGm4TmK0AS1nA2bzDHXx7m0nGi3RQ8dxxQUs4CPkSmQTKAo+KF9aINU3KzpGIpV7UoMw==", + "dependencies": { + "@smithy/core": "^2.5.4", + "@smithy/middleware-endpoint": "^3.2.4", + "@smithy/middleware-stack": "^3.0.10", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", + "@smithy/util-stream": "^3.3.1", "tslib": "^2.6.2" }, "engines": { @@ -3637,9 +3654,9 @@ } }, "node_modules/@smithy/types": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.3.0.tgz", - "integrity": "sha512-IxvBBCTFDHbVoK7zIxqA1ZOdc4QfM5HM7rGleCuHi7L1wnKv5Pn69xXJQ9hgxH60ZVygH9/JG0jRgtUncE3QUA==", + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.7.1.tgz", + "integrity": "sha512-XKLcLXZY7sUQgvvWyeaL/qwNPp6V3dWcUjqrQKjSb+tzYiCy340R/c64LV5j+Tnb2GhmunEX0eou+L+m2hJNYA==", "dependencies": { "tslib": "^2.6.2" }, @@ -3648,12 +3665,12 @@ } }, "node_modules/@smithy/url-parser": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.3.tgz", - "integrity": "sha512-pw3VtZtX2rg+s6HMs6/+u9+hu6oY6U7IohGhVNnjbgKy86wcIsSZwgHrFR+t67Uyxvp4Xz3p3kGXXIpTNisq8A==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.10.tgz", + "integrity": "sha512-j90NUalTSBR2NaZTuruEgavSdh8MLirf58LoGSk4AtQfyIymogIhgnGUU2Mga2bkMkpSoC9gxb74xBXL5afKAQ==", "dependencies": { - "@smithy/querystring-parser": "^3.0.3", - "@smithy/types": "^3.3.0", + "@smithy/querystring-parser": "^3.0.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, @@ -3715,13 +3732,13 @@ } }, "node_modules/@smithy/util-defaults-mode-browser": { - "version": "3.0.15", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.15.tgz", - "integrity": "sha512-FZ4Psa3vjp8kOXcd3HJOiDPBCWtiilLl57r0cnNtq/Ga9RSDrM5ERL6xt+tO43+2af6Pn5Yp92x2n5vPuduNfg==", + "version": "3.0.28", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.28.tgz", + "integrity": "sha512-6bzwAbZpHRFVJsOztmov5PGDmJYsbNSoIEfHSJJyFLzfBGCCChiO3od9k7E/TLgrCsIifdAbB9nqbVbyE7wRUw==", "dependencies": { - "@smithy/property-provider": "^3.1.3", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", + "@smithy/property-provider": "^3.1.10", + "@smithy/smithy-client": "^3.4.5", + "@smithy/types": "^3.7.1", "bowser": "^2.11.0", "tslib": "^2.6.2" }, @@ -3730,16 +3747,16 @@ } }, "node_modules/@smithy/util-defaults-mode-node": { - "version": "3.0.15", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.15.tgz", - "integrity": "sha512-KSyAAx2q6d0t6f/S4XB2+3+6aQacm3aLMhs9aLMqn18uYGUepbdssfogW5JQZpc6lXNBnp0tEnR5e9CEKmEd7A==", - "dependencies": { - "@smithy/config-resolver": "^3.0.5", - "@smithy/credential-provider-imds": "^3.2.0", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/property-provider": "^3.1.3", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", + "version": "3.0.28", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.28.tgz", + "integrity": "sha512-78ENJDorV1CjOQselGmm3+z7Yqjj5HWCbjzh0Ixuq736dh1oEnD9sAttSBNSLlpZsX8VQnmERqA2fEFlmqWn8w==", + "dependencies": { + "@smithy/config-resolver": "^3.0.12", + "@smithy/credential-provider-imds": "^3.2.7", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/property-provider": "^3.1.10", + "@smithy/smithy-client": "^3.4.5", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3747,12 +3764,12 @@ } }, "node_modules/@smithy/util-endpoints": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.0.5.tgz", - "integrity": "sha512-ReQP0BWihIE68OAblC/WQmDD40Gx+QY1Ez8mTdFMXpmjfxSyz2fVQu3A4zXRfQU9sZXtewk3GmhfOHswvX+eNg==", + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.1.6.tgz", + "integrity": "sha512-mFV1t3ndBh0yZOJgWxO9J/4cHZVn5UG1D8DeCc6/echfNkeEJWu9LD7mgGH5fHrEdR7LDoWw7PQO6QiGpHXhgA==", "dependencies": { - "@smithy/node-config-provider": "^3.1.4", - "@smithy/types": "^3.3.0", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3771,11 +3788,11 @@ } }, "node_modules/@smithy/util-middleware": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.3.tgz", - "integrity": "sha512-l+StyYYK/eO3DlVPbU+4Bi06Jjal+PFLSMmlWM1BEwyLxZ3aKkf1ROnoIakfaA7mC6uw3ny7JBkau4Yc+5zfWw==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.10.tgz", + "integrity": "sha512-eJO+/+RsrG2RpmY68jZdwQtnfsxjmPxzMlQpnHKjFPwrYqvlcT+fHdT+ZVwcjlWSrByOhGr9Ff2GG17efc192A==", "dependencies": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3783,12 +3800,12 @@ } }, "node_modules/@smithy/util-retry": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.3.tgz", - "integrity": "sha512-AFw+hjpbtVApzpNDhbjNG5NA3kyoMs7vx0gsgmlJF4s+yz1Zlepde7J58zpIRIsdjc+emhpAITxA88qLkPF26w==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.10.tgz", + "integrity": "sha512-1l4qatFp4PiU6j7UsbasUHL2VU023NRB/gfaa1M0rDqVrRN4g3mCArLRyH3OuktApA4ye+yjWQHjdziunw2eWA==", "dependencies": { - "@smithy/service-error-classification": "^3.0.3", - "@smithy/types": "^3.3.0", + "@smithy/service-error-classification": "^3.0.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3796,13 +3813,13 @@ } }, "node_modules/@smithy/util-stream": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-3.1.3.tgz", - "integrity": "sha512-FIv/bRhIlAxC0U7xM1BCnF2aDRPq0UaelqBHkM2lsCp26mcBbgI0tCVTv+jGdsQLUmAMybua/bjDsSu8RQHbmw==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-3.3.1.tgz", + "integrity": "sha512-Ff68R5lJh2zj+AUTvbAU/4yx+6QPRzg7+pI7M1FbtQHcRIp7xvguxVsQBKyB3fwiOwhAKu0lnNyYBaQfSW6TNw==", "dependencies": { - "@smithy/fetch-http-handler": "^3.2.4", - "@smithy/node-http-handler": "^3.1.4", - "@smithy/types": "^3.3.0", + "@smithy/fetch-http-handler": "^4.1.1", + "@smithy/node-http-handler": "^3.3.1", + "@smithy/types": "^3.7.1", "@smithy/util-base64": "^3.0.0", "@smithy/util-buffer-from": "^3.0.0", "@smithy/util-hex-encoding": "^3.0.0", @@ -3838,12 +3855,12 @@ } }, "node_modules/@smithy/util-waiter": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-3.1.2.tgz", - "integrity": "sha512-4pP0EV3iTsexDx+8PPGAKCQpd/6hsQBaQhqWzU4hqKPHN5epPsxKbvUTIiYIHTxaKt6/kEaqPBpu/ufvfbrRzw==", + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-3.1.9.tgz", + "integrity": "sha512-/aMXPANhMOlMPjfPtSrDfPeVP8l56SJlz93xeiLmhLe5xvlXA5T3abZ2ilEsDEPeY9T/wnN/vNGn9wa1SbufWA==", "dependencies": { - "@smithy/abort-controller": "^3.1.1", - "@smithy/types": "^3.3.0", + "@smithy/abort-controller": "^3.1.8", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" }, "engines": { @@ -3980,9 +3997,9 @@ } }, "node_modules/@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==" + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==" }, "node_modules/@types/express": { "version": "4.17.21", @@ -4045,9 +4062,9 @@ } }, "node_modules/@types/jest": { - "version": "29.5.12", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.12.tgz", - "integrity": "sha512-eDC8bTvT/QhYdxJAulQikueigY5AsdBRH2yDKW3yveW7svY3+DzN84/2NUgkw10RTiJbWqZrTtoGVdYlvFJdLw==", + "version": "29.5.14", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.14.tgz", + "integrity": "sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==", "dev": true, "dependencies": { "expect": "^29.0.0", @@ -4099,9 +4116,9 @@ } }, "node_modules/@types/node": { - "version": "20.16.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.1.tgz", - "integrity": "sha512-zJDo7wEadFtSyNz5QITDfRcrhqDvQI1xQNQ0VoizPjM/dVAODqqIUWbJPkvsxmTI0MYRGRikcdjMPhOssnPejQ==", + "version": "20.17.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.9.tgz", + "integrity": "sha512-0JOXkRyLanfGPE2QRCwgxhzlBAvaRdCNMcvbd7jFfpmD4eEXll7LRwy5ymJmyeZqk7Nh7eD2LeUyQ68BbndmXw==", "dependencies": { "undici-types": "~6.19.2" } @@ -4427,133 +4444,133 @@ "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==" }, "node_modules/@webassemblyjs/ast": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", - "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.14.1.tgz", + "integrity": "sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==", "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + "@webassemblyjs/helper-numbers": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2" } }, "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", - "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz", + "integrity": "sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==" }, "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", - "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz", + "integrity": "sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==" }, "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", - "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==" + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz", + "integrity": "sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==" }, "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", - "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz", + "integrity": "sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==", "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.6", - "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/floating-point-hex-parser": "1.13.2", + "@webassemblyjs/helper-api-error": "1.13.2", "@xtuc/long": "4.2.2" } }, "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", - "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz", + "integrity": "sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==" }, "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", - "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz", + "integrity": "sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/wasm-gen": "1.12.1" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/wasm-gen": "1.14.1" } }, "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", - "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz", + "integrity": "sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==", "dependencies": { "@xtuc/ieee754": "^1.2.0" } }, "node_modules/@webassemblyjs/leb128": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", - "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.13.2.tgz", + "integrity": "sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==", "dependencies": { "@xtuc/long": "4.2.2" } }, "node_modules/@webassemblyjs/utf8": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", - "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.13.2.tgz", + "integrity": "sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==" }, "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", - "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz", + "integrity": "sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/helper-wasm-section": "1.12.1", - "@webassemblyjs/wasm-gen": "1.12.1", - "@webassemblyjs/wasm-opt": "1.12.1", - "@webassemblyjs/wasm-parser": "1.12.1", - "@webassemblyjs/wast-printer": "1.12.1" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/helper-wasm-section": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-opt": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1", + "@webassemblyjs/wast-printer": "1.14.1" } }, "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", - "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz", + "integrity": "sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" } }, "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", - "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz", + "integrity": "sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/wasm-gen": "1.12.1", - "@webassemblyjs/wasm-parser": "1.12.1" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1" } }, "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", - "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz", + "integrity": "sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-api-error": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-api-error": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" } }, "node_modules/@webassemblyjs/wast-printer": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", - "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz", + "integrity": "sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/ast": "1.14.1", "@xtuc/long": "4.2.2" } }, @@ -4591,9 +4608,9 @@ } }, "node_modules/acorn": { - "version": "8.11.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz", - "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==", + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", "bin": { "acorn": "bin/acorn" }, @@ -4601,14 +4618,6 @@ "node": ">=0.4.0" } }, - "node_modules/acorn-import-attributes": { - "version": "1.9.5", - "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", - "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", - "peerDependencies": { - "acorn": "^8" - } - }, "node_modules/acorn-jsx": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", @@ -4765,12 +4774,15 @@ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" }, "node_modules/array-buffer-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", - "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", "dependencies": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -4782,15 +4794,16 @@ "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" }, "node_modules/array-includes": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz", - "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==", + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", + "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.4", "is-string": "^1.0.7" }, "engines": { @@ -4814,16 +4827,17 @@ } }, "node_modules/array.prototype.findlastindex": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz", - "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", + "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.2.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -4869,16 +4883,17 @@ } }, "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz", - "integrity": "sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "is-array-buffer": "^3.0.2", + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", "is-shared-array-buffer": "^1.0.2" }, "engines": { @@ -4913,9 +4928,12 @@ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" }, "node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, "engines": { "node": ">= 0.4" }, @@ -5114,9 +5132,9 @@ } }, "node_modules/body-parser": { - "version": "1.20.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", - "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "dependencies": { "bytes": "3.1.2", "content-type": "~1.0.5", @@ -5126,7 +5144,7 @@ "http-errors": "2.0.0", "iconv-lite": "0.4.24", "on-finished": "2.4.1", - "qs": "6.11.0", + "qs": "6.13.0", "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" @@ -5176,9 +5194,9 @@ } }, "node_modules/browserslist": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", - "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", + "version": "4.24.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", + "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", "funding": [ { "type": "opencollective", @@ -5194,10 +5212,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001541", - "electron-to-chromium": "^1.4.535", - "node-releases": "^2.0.13", - "update-browserslist-db": "^1.0.13" + "caniuse-lite": "^1.0.30001669", + "electron-to-chromium": "^1.5.41", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.1" }, "bin": { "browserslist": "cli.js" @@ -5379,9 +5397,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001565", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001565.tgz", - "integrity": "sha512-xrE//a3O7TP0vaJ8ikzkD2c2NgcVUvsEe2IvFTntV4Yd1Z9FVzh+gW+enX96L0psrbaFMcVcH2l90xNuGDWc8w==", + "version": "1.0.30001683", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001683.tgz", + "integrity": "sha512-iqmNnThZ0n70mNwvxpEC2nBJ037ZHZUoBI5Gorh1Mw6IlEAZujEoU1tXA628iZfzm7R9FvFzxbfdgml82a3k8Q==", "funding": [ { "type": "opencollective", @@ -5777,9 +5795,9 @@ } }, "node_modules/comment-json": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/comment-json/-/comment-json-4.2.3.tgz", - "integrity": "sha512-SsxdiOf064DWoZLH799Ata6u7iV658A11PlWtZATDlXPpKGJnbJZ5Z24ybixAi+LUUqJ/GKowAejtC5GFUG7Tw==", + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/comment-json/-/comment-json-4.2.5.tgz", + "integrity": "sha512-bKw/r35jR3HGt5PEPm1ljsQQGyCrR8sFGNiN5L+ykDHdpO8Smxkrkla9Yi6NkQyUrb8V54PGhfMs6NrIwtxtdw==", "dependencies": { "array-timsort": "^1.0.3", "core-util-is": "^1.0.3", @@ -5856,9 +5874,9 @@ "dev": true }, "node_modules/cookie": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", - "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", "engines": { "node": ">= 0.6" } @@ -5958,18 +5976,18 @@ "devOptional": true }, "node_modules/cron": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/cron/-/cron-3.1.7.tgz", - "integrity": "sha512-tlBg7ARsAMQLzgwqVxy8AZl/qlTc5nibqYwtNGoCrd+cV+ugI+tvZC1oT/8dFH8W455YrywGykx/KMmAqOr7Jw==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/cron/-/cron-3.2.1.tgz", + "integrity": "sha512-w2n5l49GMmmkBFEsH9FIDhjZ1n1QgTMOCMGuQtOXs5veNiosZmso6bQGuqOJSYAXXrG84WQFVneNk+Yt0Ua9iw==", "dependencies": { "@types/luxon": "~3.4.0", - "luxon": "~3.4.0" + "luxon": "~3.5.0" } }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -5984,6 +6002,54 @@ "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.2.0.tgz", "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==" }, + "node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/dayjs": { "version": "1.11.13", "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz", @@ -6168,9 +6234,9 @@ } }, "node_modules/dotenv": { - "version": "16.4.5", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", - "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", + "version": "16.4.7", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz", + "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==", "engines": { "node": ">=12" }, @@ -6220,9 +6286,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.596", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.596.tgz", - "integrity": "sha512-zW3zbZ40Icb2BCWjm47nxwcFGYlIgdXkAx85XDO7cyky9J4QQfq8t0W19/TLZqq3JPQXtlv8BPIGmfa9Jb4scg==" + "version": "1.5.63", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.63.tgz", + "integrity": "sha512-ddeXKuY9BHo/mw145axlyWjlJ1UBt4WK3AlvkT7W2AbqfRQoacVoRUCF6wL3uIx/8wT9oLKXzI+rFqHHscByaA==" }, "node_modules/emittery": { "version": "0.13.1", @@ -6247,9 +6313,9 @@ "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==" }, "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "engines": { "node": ">= 0.8" } @@ -6292,49 +6358,56 @@ } }, "node_modules/es-abstract": { - "version": "1.22.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.3.tgz", - "integrity": "sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==", - "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "arraybuffer.prototype.slice": "^1.0.2", - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.5", - "es-set-tostringtag": "^2.0.1", + "version": "1.23.5", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.5.tgz", + "integrity": "sha512-vlmniQ0WNPwXqA0BnmwV3Ng7HxiGlh6r5U6JcTMNx8OilcAGqVJBHJcPjqOMaczU9fRuRK5Px2BdVyPRnKMMVQ==", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", "es-to-primitive": "^1.2.1", "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.2", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.4", "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", "has-symbols": "^1.0.3", - "hasown": "^2.0.0", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", + "is-shared-array-buffer": "^1.0.3", "is-string": "^1.0.7", - "is-typed-array": "^1.1.12", + "is-typed-array": "^1.1.13", "is-weakref": "^1.0.2", - "object-inspect": "^1.13.1", + "object-inspect": "^1.13.3", "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.1", - "safe-array-concat": "^1.0.1", - "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.8", - "string.prototype.trimend": "^1.0.7", - "string.prototype.trimstart": "^1.0.7", - "typed-array-buffer": "^1.0.0", - "typed-array-byte-length": "^1.0.0", - "typed-array-byte-offset": "^1.0.0", - "typed-array-length": "^1.0.4", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.3", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.13" + "which-typed-array": "^1.1.15" }, "engines": { "node": ">= 0.4" @@ -6388,14 +6461,25 @@ "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.4.1.tgz", "integrity": "sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==" }, + "node_modules/es-object-atoms": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", + "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/es-set-tostringtag": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz", - "integrity": "sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", "dependencies": { - "get-intrinsic": "^1.2.2", - "has-tostringtag": "^1.0.0", - "hasown": "^2.0.0" + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" }, "engines": { "node": ">= 0.4" @@ -6427,9 +6511,9 @@ } }, "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "engines": { "node": ">=6" } @@ -6607,9 +6691,9 @@ } }, "node_modules/eslint-module-utils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", - "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz", + "integrity": "sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==", "dev": true, "dependencies": { "debug": "^3.2.7" @@ -6673,34 +6757,36 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.29.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", - "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", + "version": "2.31.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz", + "integrity": "sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==", "dev": true, "dependencies": { - "array-includes": "^3.1.7", - "array.prototype.findlastindex": "^1.2.3", + "@rtsao/scc": "^1.1.0", + "array-includes": "^3.1.8", + "array.prototype.findlastindex": "^1.2.5", "array.prototype.flat": "^1.3.2", "array.prototype.flatmap": "^1.3.2", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.8.0", - "hasown": "^2.0.0", - "is-core-module": "^2.13.1", + "eslint-module-utils": "^2.12.0", + "hasown": "^2.0.2", + "is-core-module": "^2.15.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", - "object.fromentries": "^2.0.7", - "object.groupby": "^1.0.1", - "object.values": "^1.1.7", + "object.fromentries": "^2.0.8", + "object.groupby": "^1.0.3", + "object.values": "^1.2.0", "semver": "^6.3.1", + "string.prototype.trimend": "^1.0.8", "tsconfig-paths": "^3.15.0" }, "engines": { "node": ">=4" }, "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" } }, "node_modules/eslint-plugin-import/node_modules/debug": { @@ -7135,36 +7221,36 @@ } }, "node_modules/express": { - "version": "4.19.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", - "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.2", + "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.6.0", + "cookie": "0.7.1", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "1.2.0", + "finalhandler": "1.3.1", "fresh": "0.5.2", "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", + "merge-descriptors": "1.0.3", "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", - "qs": "6.11.0", + "qs": "6.13.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", + "send": "0.19.0", + "serve-static": "1.16.2", "setprototypeof": "1.2.0", "statuses": "2.0.1", "type-is": "~1.6.18", @@ -7173,6 +7259,10 @@ }, "engines": { "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/express/node_modules/debug": { @@ -7189,9 +7279,9 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/express/node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==" }, "node_modules/external-editor": { "version": "3.1.0", @@ -7366,12 +7456,12 @@ } }, "node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", "dependencies": { "debug": "2.6.9", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "on-finished": "2.4.1", "parseurl": "~1.3.3", @@ -7709,12 +7799,13 @@ } }, "node_modules/get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" }, "engines": { "node": ">= 0.4" @@ -7786,11 +7877,12 @@ } }, "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", "dependencies": { - "define-properties": "^1.1.3" + "define-properties": "^1.2.1", + "gopd": "^1.0.1" }, "engines": { "node": ">= 0.4" @@ -7875,9 +7967,9 @@ } }, "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", "engines": { "node": ">= 0.4" }, @@ -7897,11 +7989,11 @@ } }, "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "dependencies": { - "has-symbols": "^1.0.2" + "has-symbols": "^1.0.3" }, "engines": { "node": ">= 0.4" @@ -7911,9 +8003,9 @@ } }, "node_modules/hasown": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", - "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "dependencies": { "function-bind": "^1.1.2" }, @@ -8126,11 +8218,11 @@ } }, "node_modules/internal-slot": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.6.tgz", - "integrity": "sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", "dependencies": { - "get-intrinsic": "^1.2.2", + "es-errors": "^1.3.0", "hasown": "^2.0.0", "side-channel": "^1.0.4" }, @@ -8147,13 +8239,15 @@ } }, "node_modules/is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", "dependencies": { "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -8229,12 +8323,29 @@ } }, "node_modules/is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", "dev": true, "dependencies": { - "hasown": "^2.0.0" + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "dependencies": { + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -8313,9 +8424,9 @@ } }, "node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", "engines": { "node": ">= 0.4" }, @@ -8370,11 +8481,14 @@ } }, "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", "dependencies": { - "call-bind": "^1.0.2" + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -8420,11 +8534,11 @@ } }, "node_modules/is-typed-array": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", - "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", "dependencies": { - "which-typed-array": "^1.1.11" + "which-typed-array": "^1.1.14" }, "engines": { "node": ">= 0.4" @@ -9438,9 +9552,9 @@ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" }, "node_modules/lint-staged": { - "version": "15.2.9", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.2.9.tgz", - "integrity": "sha512-BZAt8Lk3sEnxw7tfxM7jeZlPRuT4M68O0/CwZhhaw6eeWu0Lz5eERE3m386InivXB64fp/mDID452h48tvKlRQ==", + "version": "15.2.10", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.2.10.tgz", + "integrity": "sha512-5dY5t743e1byO19P9I4b3x8HJwalIznL5E1FWYnU6OWw33KxNBSLAc6Cy7F2PsFEO8FKnLwjwm5hx7aMF0jzZg==", "dev": true, "dependencies": { "chalk": "~5.3.0", @@ -9449,7 +9563,7 @@ "execa": "~8.0.1", "lilconfig": "~3.1.2", "listr2": "~8.2.4", - "micromatch": "~4.0.7", + "micromatch": "~4.0.8", "pidtree": "~0.6.0", "string-argv": "~0.3.2", "yaml": "~2.5.0" @@ -10012,9 +10126,9 @@ } }, "node_modules/logform": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/logform/-/logform-2.6.0.tgz", - "integrity": "sha512-1ulHeNPp6k/LD8H91o7VYFBng5i1BDE7HoKxVbZiGFidS1Rj65qcywLxX+pVfAPoQJEjRdvKcusKwOupHCVOVQ==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/logform/-/logform-2.7.0.tgz", + "integrity": "sha512-TFYA4jnP7PVbmlBIfhlSe+WKxs9dklXMTEGcBCIvLhE/Tn3H6Gk1norupVW7m5Cnd4bLcr08AytbyV/xj7f/kQ==", "dependencies": { "@colors/colors": "1.6.0", "@types/triple-beam": "^1.3.2", @@ -10068,9 +10182,9 @@ "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" }, "node_modules/luxon": { - "version": "3.4.4", - "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.4.4.tgz", - "integrity": "sha512-zobTr7akeGHnv7eBOXcRgMeCP6+uyYsczwmeRCauvpvaAltgNyTbLH/+VaEAPUeWBT+1GuNmz4wC/6jtQzbbVA==", + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.5.0.tgz", + "integrity": "sha512-rh+Zjr6DNfUYR3bPwJEnuwDdqMbxZW7LOQfUN4B54+Cl+0o5zaU9RJ6bcidfDtC1cWCZXQ+nvX8bf6bAji37QQ==", "engines": { "node": ">=12" } @@ -10136,9 +10250,12 @@ } }, "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, "node_modules/merge-stream": { "version": "2.0.0", @@ -10368,9 +10485,9 @@ } }, "node_modules/nestjs-cls": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/nestjs-cls/-/nestjs-cls-4.4.1.tgz", - "integrity": "sha512-4yhldwm/cJ02lQ8ZAdM8KQ7gMfjAc1z3fo5QAQgXNyN4N6X5So9BCwv+BTLRugDCkELUo3qtzQHnKhGYL/ftPg==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/nestjs-cls/-/nestjs-cls-4.5.0.tgz", + "integrity": "sha512-oi3GNCc5pnsnVI5WJKMDwmg4NP+JyEw+edlwgepyUba5+RGGtJzpbVaaxXGW1iPbDuQde3/fA8Jdjq9j88BVcQ==", "engines": { "node": ">=16" }, @@ -10420,9 +10537,9 @@ "dev": true }, "node_modules/node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==" + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==" }, "node_modules/normalize-path": { "version": "3.0.0", @@ -10453,9 +10570,12 @@ } }, "node_modules/object-inspect": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", - "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.3.tgz", + "integrity": "sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==", + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -10469,12 +10589,12 @@ } }, "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", "has-symbols": "^1.0.3", "object-keys": "^1.1.1" }, @@ -10500,14 +10620,15 @@ } }, "node_modules/object.fromentries": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz", - "integrity": "sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==", + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -10517,26 +10638,28 @@ } }, "node_modules/object.groupby": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz", - "integrity": "sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", + "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2" + }, + "engines": { + "node": ">= 0.4" } }, "node_modules/object.values": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz", - "integrity": "sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", + "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -10686,9 +10809,9 @@ } }, "node_modules/package-json-from-dist": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", - "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==" }, "node_modules/packet-reader": { "version": "1.0.0", @@ -10829,9 +10952,9 @@ "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" }, "node_modules/path-to-regexp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-3.2.0.tgz", - "integrity": "sha512-jczvQbCUS7XmS7o+y1aEO9OBVFeZBQ1MDSEqmO7xSoPgOPoowY/SxLpZ6Vh97/8qHZOteiCKb7gkG9gA2ZUxJA==" + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-3.3.0.tgz", + "integrity": "sha512-qyCH421YQPS2WFDxDjftfc1ZR5WKQzVzqsp4n9M2kQhVOo/ByahFoUNJfl58kOcEGfQ//7weFTDhm+ss8Ecxgw==" }, "node_modules/path-type": { "version": "4.0.0", @@ -10946,9 +11069,9 @@ } }, "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" }, "node_modules/picomatch": { "version": "2.3.1", @@ -11054,6 +11177,14 @@ "node": ">=4" } }, + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/postgres-array": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/postgres-array/-/postgres-array-2.0.0.tgz", @@ -11106,9 +11237,9 @@ } }, "node_modules/prettier": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz", - "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==", + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.4.2.tgz", + "integrity": "sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" @@ -11252,11 +11383,11 @@ ] }, "node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dependencies": { - "side-channel": "^1.0.4" + "side-channel": "^1.0.6" }, "engines": { "node": ">=0.6" @@ -11357,13 +11488,14 @@ "peer": true }, "node_modules/regexp.prototype.flags": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz", - "integrity": "sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz", + "integrity": "sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "set-function-name": "^2.0.0" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.2" }, "engines": { "node": ">= 0.4" @@ -11607,12 +11739,12 @@ } }, "node_modules/safe-array-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.1.tgz", - "integrity": "sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", "has-symbols": "^1.0.3", "isarray": "^2.0.5" }, @@ -11648,22 +11780,25 @@ ] }, "node_modules/safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", "is-regex": "^1.1.4" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz", + "integrity": "sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==", "engines": { "node": ">=10" } @@ -11730,9 +11865,9 @@ } }, "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", "dependencies": { "debug": "2.6.9", "depd": "2.0.0", @@ -11765,6 +11900,14 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, "node_modules/send/node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -11779,14 +11922,14 @@ } }, "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", "dependencies": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" }, "engines": { "node": ">= 0.8.0" @@ -11809,13 +11952,14 @@ } }, "node_modules/set-function-name": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.1.tgz", - "integrity": "sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", "dependencies": { - "define-data-property": "^1.0.1", + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.0" + "has-property-descriptors": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -11858,13 +12002,17 @@ } }, "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -12183,13 +12331,14 @@ } }, "node_modules/string.prototype.trim": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz", - "integrity": "sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==", + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -12199,26 +12348,29 @@ } }, "node_modules/string.prototype.trimend": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz", - "integrity": "sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/string.prototype.trimstart": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz", - "integrity": "sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -12836,12 +12988,13 @@ } }, "node_modules/tsconfig-paths-webpack-plugin": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths-webpack-plugin/-/tsconfig-paths-webpack-plugin-4.1.0.tgz", - "integrity": "sha512-xWFISjviPydmtmgeUAuXp4N1fky+VCtfhOkDUFIv5ea7p4wuTomI4QTrXvFBX2S4jZsmyTSrStQl+E+4w+RzxA==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths-webpack-plugin/-/tsconfig-paths-webpack-plugin-4.2.0.tgz", + "integrity": "sha512-zbem3rfRS8BgeNK50Zz5SIQgXzLafiHjOwUAvk/38/o1jHn/V5QAgVUcz884or7WYcPaH3N2CIfUc2u0ul7UcA==", "dependencies": { "chalk": "^4.1.0", "enhanced-resolve": "^5.7.0", + "tapable": "^2.2.1", "tsconfig-paths": "^4.1.2" }, "engines": { @@ -12857,9 +13010,9 @@ } }, "node_modules/tslib": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", - "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==" + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==" }, "node_modules/tweetnacl": { "version": "0.14.5", @@ -12910,27 +13063,28 @@ } }, "node_modules/typed-array-buffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz", - "integrity": "sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", - "is-typed-array": "^1.1.10" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" }, "engines": { "node": ">= 0.4" } }, "node_modules/typed-array-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz", - "integrity": "sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", "dependencies": { - "call-bind": "^1.0.2", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" }, "engines": { "node": ">= 0.4" @@ -12940,15 +13094,16 @@ } }, "node_modules/typed-array-byte-offset": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz", - "integrity": "sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", + "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" }, "engines": { "node": ">= 0.4" @@ -12958,13 +13113,19 @@ } }, "node_modules/typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", + "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", "dependencies": { - "call-bind": "^1.0.2", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -13166,9 +13327,9 @@ "integrity": "sha512-i5lLI6iw9AU3Uu4szRNPPEkomnkjRTaVt9hy/bn5g/oSzekBSMeLZblcjP74AW0vBabqERLLIrz+gR8QYR54Tw==" }, "node_modules/typescript": { - "version": "5.5.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", - "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz", + "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -13249,9 +13410,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", + "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", "funding": [ { "type": "opencollective", @@ -13267,8 +13428,8 @@ } ], "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" + "escalade": "^3.2.0", + "picocolors": "^1.1.0" }, "bin": { "update-browserslist-db": "cli.js" @@ -13381,20 +13542,19 @@ "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" }, "node_modules/webpack": { - "version": "5.93.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.93.0.tgz", - "integrity": "sha512-Y0m5oEY1LRuwly578VqluorkXbvXKh7U3rLoQCEO04M97ScRr44afGVkI0FQFsXzysk5OgFAxjZAb9rsGQVihA==", - "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.5", - "@webassemblyjs/ast": "^1.12.1", - "@webassemblyjs/wasm-edit": "^1.12.1", - "@webassemblyjs/wasm-parser": "^1.12.1", - "acorn": "^8.7.1", - "acorn-import-attributes": "^1.9.5", - "browserslist": "^4.21.10", + "version": "5.97.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.97.1.tgz", + "integrity": "sha512-EksG6gFY3L1eFMROS/7Wzgrii5mBAFe4rIr3r2BTfo7bcc+DWwFZ4OJ/miOuHJO/A85HwyI4eQ0F6IKXesO7Fg==", + "dependencies": { + "@types/eslint-scope": "^3.7.7", + "@types/estree": "^1.0.6", + "@webassemblyjs/ast": "^1.14.1", + "@webassemblyjs/wasm-edit": "^1.14.1", + "@webassemblyjs/wasm-parser": "^1.14.1", + "acorn": "^8.14.0", + "browserslist": "^4.24.0", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.17.0", + "enhanced-resolve": "^5.17.1", "es-module-lexer": "^1.2.1", "eslint-scope": "5.1.1", "events": "^3.2.0", @@ -13481,15 +13641,15 @@ } }, "node_modules/which-typed-array": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz", - "integrity": "sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==", + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", + "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", "for-each": "^0.3.3", "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -13499,33 +13659,33 @@ } }, "node_modules/winston": { - "version": "3.14.2", - "resolved": "https://registry.npmjs.org/winston/-/winston-3.14.2.tgz", - "integrity": "sha512-CO8cdpBB2yqzEf8v895L+GNKYJiEq8eKlHU38af3snQBQ+sdAIUepjMSguOIJC7ICbzm0ZI+Af2If4vIJrtmOg==", + "version": "3.17.0", + "resolved": "https://registry.npmjs.org/winston/-/winston-3.17.0.tgz", + "integrity": "sha512-DLiFIXYC5fMPxaRg832S6F5mJYvePtmO5G9v9IgUFPhXm9/GkXarH/TUrBAVzhTCzAj9anE/+GjrgXp/54nOgw==", "dependencies": { "@colors/colors": "^1.6.0", "@dabh/diagnostics": "^2.0.2", "async": "^3.2.3", "is-stream": "^2.0.0", - "logform": "^2.6.0", + "logform": "^2.7.0", "one-time": "^1.0.0", "readable-stream": "^3.4.0", "safe-stable-stringify": "^2.3.1", "stack-trace": "0.0.x", "triple-beam": "^1.3.0", - "winston-transport": "^4.7.0" + "winston-transport": "^4.9.0" }, "engines": { "node": ">= 12.0.0" } }, "node_modules/winston-transport": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.7.0.tgz", - "integrity": "sha512-ajBj65K5I7denzer2IYW6+2bNIVqLGDHqDw3Ow8Ohh+vdW+rv4MZ6eiDvHoKhfJFZ2auyN8byXieDDJ96ViONg==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.9.0.tgz", + "integrity": "sha512-8drMJ4rkgaPo1Me4zD/3WLfI/zPdA9o2IipKODunnGDcuqbHwjsbB79ylv04LCGGzU0xQ6vTznOMpQGaLhhm6A==", "dependencies": { - "logform": "^2.3.2", - "readable-stream": "^3.6.0", + "logform": "^2.7.0", + "readable-stream": "^3.6.2", "triple-beam": "^1.3.0" }, "engines": { @@ -13720,9 +13880,9 @@ } }, "@angular-devkit/core": { - "version": "17.3.8", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-17.3.8.tgz", - "integrity": "sha512-Q8q0voCGudbdCgJ7lXdnyaxKHbNQBARH68zPQV72WT8NWy+Gw/tys870i6L58NWbBaCJEUcIj/kb6KoakSRu+Q==", + "version": "17.3.11", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-17.3.11.tgz", + "integrity": "sha512-vTNDYNsLIWpYk2I969LMQFH29GTsLzxNk/0cLw5q56ARF0v5sIWfHYwGTS88jdDqIpuuettcSczbxeA7EuAmqQ==", "requires": { "ajv": "8.12.0", "ajv-formats": "2.1.1", @@ -13740,11 +13900,11 @@ } }, "@angular-devkit/schematics": { - "version": "17.3.8", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-17.3.8.tgz", - "integrity": "sha512-QRVEYpIfgkprNHc916JlPuNbLzOgrm9DZalHasnLUz4P6g7pR21olb8YCyM2OTJjombNhya9ZpckcADU5Qyvlg==", + "version": "17.3.11", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-17.3.11.tgz", + "integrity": "sha512-I5wviiIqiFwar9Pdk30Lujk8FczEEc18i22A5c6Z9lbmhPQdTroDnEQdsfXjy404wPe8H62s0I15o4pmMGfTYQ==", "requires": { - "@angular-devkit/core": "17.3.8", + "@angular-devkit/core": "17.3.11", "jsonc-parser": "3.2.1", "magic-string": "0.30.8", "ora": "5.4.1", @@ -13752,12 +13912,12 @@ } }, "@angular-devkit/schematics-cli": { - "version": "17.3.8", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics-cli/-/schematics-cli-17.3.8.tgz", - "integrity": "sha512-TjmiwWJarX7oqvNiRAroQ5/LeKUatxBOCNEuKXO/PV8e7pn/Hr/BqfFm+UcYrQoFdZplmtNAfqmbqgVziKvCpA==", + "version": "17.3.11", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics-cli/-/schematics-cli-17.3.11.tgz", + "integrity": "sha512-kcOMqp+PHAKkqRad7Zd7PbpqJ0LqLaNZdY1+k66lLWmkEBozgq8v4ASn/puPWf9Bo0HpCiK+EzLf0VHE8Z/y6Q==", "requires": { - "@angular-devkit/core": "17.3.8", - "@angular-devkit/schematics": "17.3.8", + "@angular-devkit/core": "17.3.11", + "@angular-devkit/schematics": "17.3.11", "ansi-colors": "4.1.3", "inquirer": "9.2.15", "symbol-observable": "4.0.0", @@ -13990,334 +14150,341 @@ } }, "@aws-sdk/client-s3": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.637.0.tgz", - "integrity": "sha512-y6UC94fsMvhKbf0dzfnjVP1HePeGjplfcYfilZU1COIJLyTkMcUv4XcT4I407CGIrvgEafONHkiC09ygqUauNA==", + "version": "3.705.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.705.0.tgz", + "integrity": "sha512-Fm0Cbc4zr0yG0DnNycz7ywlL5tQFdLSb7xCIPfzrxJb3YQiTXWxH5eu61SSsP/Z6RBNRolmRPvst/iNgX0fWvA==", "requires": { "@aws-crypto/sha1-browser": "5.2.0", "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/client-sso-oidc": "3.637.0", - "@aws-sdk/client-sts": "3.637.0", - "@aws-sdk/core": "3.635.0", - "@aws-sdk/credential-provider-node": "3.637.0", - "@aws-sdk/middleware-bucket-endpoint": "3.620.0", - "@aws-sdk/middleware-expect-continue": "3.620.0", - "@aws-sdk/middleware-flexible-checksums": "3.620.0", - "@aws-sdk/middleware-host-header": "3.620.0", - "@aws-sdk/middleware-location-constraint": "3.609.0", - "@aws-sdk/middleware-logger": "3.609.0", - "@aws-sdk/middleware-recursion-detection": "3.620.0", - "@aws-sdk/middleware-sdk-s3": "3.635.0", - "@aws-sdk/middleware-ssec": "3.609.0", - "@aws-sdk/middleware-user-agent": "3.637.0", - "@aws-sdk/region-config-resolver": "3.614.0", - "@aws-sdk/signature-v4-multi-region": "3.635.0", - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-endpoints": "3.637.0", - "@aws-sdk/util-user-agent-browser": "3.609.0", - "@aws-sdk/util-user-agent-node": "3.614.0", - "@aws-sdk/xml-builder": "3.609.0", - "@smithy/config-resolver": "^3.0.5", - "@smithy/core": "^2.4.0", - "@smithy/eventstream-serde-browser": "^3.0.6", - "@smithy/eventstream-serde-config-resolver": "^3.0.3", - "@smithy/eventstream-serde-node": "^3.0.5", - "@smithy/fetch-http-handler": "^3.2.4", - "@smithy/hash-blob-browser": "^3.1.2", - "@smithy/hash-node": "^3.0.3", - "@smithy/hash-stream-node": "^3.1.2", - "@smithy/invalid-dependency": "^3.0.3", - "@smithy/md5-js": "^3.0.3", - "@smithy/middleware-content-length": "^3.0.5", - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/middleware-retry": "^3.0.15", - "@smithy/middleware-serde": "^3.0.3", - "@smithy/middleware-stack": "^3.0.3", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/node-http-handler": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/url-parser": "^3.0.3", + "@aws-sdk/client-sso-oidc": "3.699.0", + "@aws-sdk/client-sts": "3.699.0", + "@aws-sdk/core": "3.696.0", + "@aws-sdk/credential-provider-node": "3.699.0", + "@aws-sdk/middleware-bucket-endpoint": "3.696.0", + "@aws-sdk/middleware-expect-continue": "3.696.0", + "@aws-sdk/middleware-flexible-checksums": "3.701.0", + "@aws-sdk/middleware-host-header": "3.696.0", + "@aws-sdk/middleware-location-constraint": "3.696.0", + "@aws-sdk/middleware-logger": "3.696.0", + "@aws-sdk/middleware-recursion-detection": "3.696.0", + "@aws-sdk/middleware-sdk-s3": "3.696.0", + "@aws-sdk/middleware-ssec": "3.696.0", + "@aws-sdk/middleware-user-agent": "3.696.0", + "@aws-sdk/region-config-resolver": "3.696.0", + "@aws-sdk/signature-v4-multi-region": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-endpoints": "3.696.0", + "@aws-sdk/util-user-agent-browser": "3.696.0", + "@aws-sdk/util-user-agent-node": "3.696.0", + "@aws-sdk/xml-builder": "3.696.0", + "@smithy/config-resolver": "^3.0.12", + "@smithy/core": "^2.5.3", + "@smithy/eventstream-serde-browser": "^3.0.13", + "@smithy/eventstream-serde-config-resolver": "^3.0.10", + "@smithy/eventstream-serde-node": "^3.0.12", + "@smithy/fetch-http-handler": "^4.1.1", + "@smithy/hash-blob-browser": "^3.1.9", + "@smithy/hash-node": "^3.0.10", + "@smithy/hash-stream-node": "^3.1.9", + "@smithy/invalid-dependency": "^3.0.10", + "@smithy/md5-js": "^3.0.10", + "@smithy/middleware-content-length": "^3.0.12", + "@smithy/middleware-endpoint": "^3.2.3", + "@smithy/middleware-retry": "^3.0.27", + "@smithy/middleware-serde": "^3.0.10", + "@smithy/middleware-stack": "^3.0.10", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/node-http-handler": "^3.3.1", + "@smithy/protocol-http": "^4.1.7", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", + "@smithy/url-parser": "^3.0.10", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.15", - "@smithy/util-defaults-mode-node": "^3.0.15", - "@smithy/util-endpoints": "^2.0.5", - "@smithy/util-middleware": "^3.0.3", - "@smithy/util-retry": "^3.0.3", - "@smithy/util-stream": "^3.1.3", + "@smithy/util-defaults-mode-browser": "^3.0.27", + "@smithy/util-defaults-mode-node": "^3.0.27", + "@smithy/util-endpoints": "^2.1.6", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-retry": "^3.0.10", + "@smithy/util-stream": "^3.3.1", "@smithy/util-utf8": "^3.0.0", - "@smithy/util-waiter": "^3.1.2", + "@smithy/util-waiter": "^3.1.9", "tslib": "^2.6.2" } }, "@aws-sdk/client-sso": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.637.0.tgz", - "integrity": "sha512-+KjLvgX5yJYROWo3TQuwBJlHCY0zz9PsLuEolmXQn0BVK1L/m9GteZHtd+rEdAoDGBpE0Xqjy1oz5+SmtsaRUw==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.696.0.tgz", + "integrity": "sha512-q5TTkd08JS0DOkHfUL853tuArf7NrPeqoS5UOvqJho8ibV9Ak/a/HO4kNvy9Nj3cib/toHYHsQIEtecUPSUUrQ==", "requires": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "3.635.0", - "@aws-sdk/middleware-host-header": "3.620.0", - "@aws-sdk/middleware-logger": "3.609.0", - "@aws-sdk/middleware-recursion-detection": "3.620.0", - "@aws-sdk/middleware-user-agent": "3.637.0", - "@aws-sdk/region-config-resolver": "3.614.0", - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-endpoints": "3.637.0", - "@aws-sdk/util-user-agent-browser": "3.609.0", - "@aws-sdk/util-user-agent-node": "3.614.0", - "@smithy/config-resolver": "^3.0.5", - "@smithy/core": "^2.4.0", - "@smithy/fetch-http-handler": "^3.2.4", - "@smithy/hash-node": "^3.0.3", - "@smithy/invalid-dependency": "^3.0.3", - "@smithy/middleware-content-length": "^3.0.5", - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/middleware-retry": "^3.0.15", - "@smithy/middleware-serde": "^3.0.3", - "@smithy/middleware-stack": "^3.0.3", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/node-http-handler": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/url-parser": "^3.0.3", + "@aws-sdk/core": "3.696.0", + "@aws-sdk/middleware-host-header": "3.696.0", + "@aws-sdk/middleware-logger": "3.696.0", + "@aws-sdk/middleware-recursion-detection": "3.696.0", + "@aws-sdk/middleware-user-agent": "3.696.0", + "@aws-sdk/region-config-resolver": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-endpoints": "3.696.0", + "@aws-sdk/util-user-agent-browser": "3.696.0", + "@aws-sdk/util-user-agent-node": "3.696.0", + "@smithy/config-resolver": "^3.0.12", + "@smithy/core": "^2.5.3", + "@smithy/fetch-http-handler": "^4.1.1", + "@smithy/hash-node": "^3.0.10", + "@smithy/invalid-dependency": "^3.0.10", + "@smithy/middleware-content-length": "^3.0.12", + "@smithy/middleware-endpoint": "^3.2.3", + "@smithy/middleware-retry": "^3.0.27", + "@smithy/middleware-serde": "^3.0.10", + "@smithy/middleware-stack": "^3.0.10", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/node-http-handler": "^3.3.1", + "@smithy/protocol-http": "^4.1.7", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", + "@smithy/url-parser": "^3.0.10", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.15", - "@smithy/util-defaults-mode-node": "^3.0.15", - "@smithy/util-endpoints": "^2.0.5", - "@smithy/util-middleware": "^3.0.3", - "@smithy/util-retry": "^3.0.3", + "@smithy/util-defaults-mode-browser": "^3.0.27", + "@smithy/util-defaults-mode-node": "^3.0.27", + "@smithy/util-endpoints": "^2.1.6", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-retry": "^3.0.10", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" } }, "@aws-sdk/client-sso-oidc": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.637.0.tgz", - "integrity": "sha512-27bHALN6Qb6m6KZmPvRieJ/QRlj1lyac/GT2Rn5kJpre8Mpp+yxrtvp3h9PjNBty4lCeFEENfY4dGNSozBuBcw==", + "version": "3.699.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.699.0.tgz", + "integrity": "sha512-u8a1GorY5D1l+4FQAf4XBUC1T10/t7neuwT21r0ymrtMFSK2a9QqVHKMoLkvavAwyhJnARSBM9/UQC797PFOFw==", "requires": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "3.635.0", - "@aws-sdk/credential-provider-node": "3.637.0", - "@aws-sdk/middleware-host-header": "3.620.0", - "@aws-sdk/middleware-logger": "3.609.0", - "@aws-sdk/middleware-recursion-detection": "3.620.0", - "@aws-sdk/middleware-user-agent": "3.637.0", - "@aws-sdk/region-config-resolver": "3.614.0", - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-endpoints": "3.637.0", - "@aws-sdk/util-user-agent-browser": "3.609.0", - "@aws-sdk/util-user-agent-node": "3.614.0", - "@smithy/config-resolver": "^3.0.5", - "@smithy/core": "^2.4.0", - "@smithy/fetch-http-handler": "^3.2.4", - "@smithy/hash-node": "^3.0.3", - "@smithy/invalid-dependency": "^3.0.3", - "@smithy/middleware-content-length": "^3.0.5", - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/middleware-retry": "^3.0.15", - "@smithy/middleware-serde": "^3.0.3", - "@smithy/middleware-stack": "^3.0.3", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/node-http-handler": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/url-parser": "^3.0.3", + "@aws-sdk/core": "3.696.0", + "@aws-sdk/credential-provider-node": "3.699.0", + "@aws-sdk/middleware-host-header": "3.696.0", + "@aws-sdk/middleware-logger": "3.696.0", + "@aws-sdk/middleware-recursion-detection": "3.696.0", + "@aws-sdk/middleware-user-agent": "3.696.0", + "@aws-sdk/region-config-resolver": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-endpoints": "3.696.0", + "@aws-sdk/util-user-agent-browser": "3.696.0", + "@aws-sdk/util-user-agent-node": "3.696.0", + "@smithy/config-resolver": "^3.0.12", + "@smithy/core": "^2.5.3", + "@smithy/fetch-http-handler": "^4.1.1", + "@smithy/hash-node": "^3.0.10", + "@smithy/invalid-dependency": "^3.0.10", + "@smithy/middleware-content-length": "^3.0.12", + "@smithy/middleware-endpoint": "^3.2.3", + "@smithy/middleware-retry": "^3.0.27", + "@smithy/middleware-serde": "^3.0.10", + "@smithy/middleware-stack": "^3.0.10", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/node-http-handler": "^3.3.1", + "@smithy/protocol-http": "^4.1.7", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", + "@smithy/url-parser": "^3.0.10", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.15", - "@smithy/util-defaults-mode-node": "^3.0.15", - "@smithy/util-endpoints": "^2.0.5", - "@smithy/util-middleware": "^3.0.3", - "@smithy/util-retry": "^3.0.3", + "@smithy/util-defaults-mode-browser": "^3.0.27", + "@smithy/util-defaults-mode-node": "^3.0.27", + "@smithy/util-endpoints": "^2.1.6", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-retry": "^3.0.10", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" } }, "@aws-sdk/client-sts": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.637.0.tgz", - "integrity": "sha512-xUi7x4qDubtA8QREtlblPuAcn91GS/09YVEY/RwU7xCY0aqGuFwgszAANlha4OUIqva8oVj2WO4gJuG+iaSnhw==", + "version": "3.699.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.699.0.tgz", + "integrity": "sha512-++lsn4x2YXsZPIzFVwv3fSUVM55ZT0WRFmPeNilYIhZClxHLmVAWKH4I55cY9ry60/aTKYjzOXkWwyBKGsGvQg==", "requires": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/client-sso-oidc": "3.637.0", - "@aws-sdk/core": "3.635.0", - "@aws-sdk/credential-provider-node": "3.637.0", - "@aws-sdk/middleware-host-header": "3.620.0", - "@aws-sdk/middleware-logger": "3.609.0", - "@aws-sdk/middleware-recursion-detection": "3.620.0", - "@aws-sdk/middleware-user-agent": "3.637.0", - "@aws-sdk/region-config-resolver": "3.614.0", - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-endpoints": "3.637.0", - "@aws-sdk/util-user-agent-browser": "3.609.0", - "@aws-sdk/util-user-agent-node": "3.614.0", - "@smithy/config-resolver": "^3.0.5", - "@smithy/core": "^2.4.0", - "@smithy/fetch-http-handler": "^3.2.4", - "@smithy/hash-node": "^3.0.3", - "@smithy/invalid-dependency": "^3.0.3", - "@smithy/middleware-content-length": "^3.0.5", - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/middleware-retry": "^3.0.15", - "@smithy/middleware-serde": "^3.0.3", - "@smithy/middleware-stack": "^3.0.3", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/node-http-handler": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/url-parser": "^3.0.3", + "@aws-sdk/client-sso-oidc": "3.699.0", + "@aws-sdk/core": "3.696.0", + "@aws-sdk/credential-provider-node": "3.699.0", + "@aws-sdk/middleware-host-header": "3.696.0", + "@aws-sdk/middleware-logger": "3.696.0", + "@aws-sdk/middleware-recursion-detection": "3.696.0", + "@aws-sdk/middleware-user-agent": "3.696.0", + "@aws-sdk/region-config-resolver": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-endpoints": "3.696.0", + "@aws-sdk/util-user-agent-browser": "3.696.0", + "@aws-sdk/util-user-agent-node": "3.696.0", + "@smithy/config-resolver": "^3.0.12", + "@smithy/core": "^2.5.3", + "@smithy/fetch-http-handler": "^4.1.1", + "@smithy/hash-node": "^3.0.10", + "@smithy/invalid-dependency": "^3.0.10", + "@smithy/middleware-content-length": "^3.0.12", + "@smithy/middleware-endpoint": "^3.2.3", + "@smithy/middleware-retry": "^3.0.27", + "@smithy/middleware-serde": "^3.0.10", + "@smithy/middleware-stack": "^3.0.10", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/node-http-handler": "^3.3.1", + "@smithy/protocol-http": "^4.1.7", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", + "@smithy/url-parser": "^3.0.10", "@smithy/util-base64": "^3.0.0", "@smithy/util-body-length-browser": "^3.0.0", "@smithy/util-body-length-node": "^3.0.0", - "@smithy/util-defaults-mode-browser": "^3.0.15", - "@smithy/util-defaults-mode-node": "^3.0.15", - "@smithy/util-endpoints": "^2.0.5", - "@smithy/util-middleware": "^3.0.3", - "@smithy/util-retry": "^3.0.3", + "@smithy/util-defaults-mode-browser": "^3.0.27", + "@smithy/util-defaults-mode-node": "^3.0.27", + "@smithy/util-endpoints": "^2.1.6", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-retry": "^3.0.10", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" } }, "@aws-sdk/core": { - "version": "3.635.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.635.0.tgz", - "integrity": "sha512-i1x/E/sgA+liUE1XJ7rj1dhyXpAKO1UKFUcTTHXok2ARjWTvszHnSXMOsB77aPbmn0fUp1JTx2kHUAZ1LVt5Bg==", - "requires": { - "@smithy/core": "^2.4.0", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/property-provider": "^3.1.3", - "@smithy/protocol-http": "^4.1.0", - "@smithy/signature-v4": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/util-middleware": "^3.0.3", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.696.0.tgz", + "integrity": "sha512-3c9III1k03DgvRZWg8vhVmfIXPG6hAciN9MzQTzqGngzWAELZF/WONRTRQuDFixVtarQatmLHYVw/atGeA2Byw==", + "requires": { + "@aws-sdk/types": "3.696.0", + "@smithy/core": "^2.5.3", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/property-provider": "^3.1.9", + "@smithy/protocol-http": "^4.1.7", + "@smithy/signature-v4": "^4.2.2", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", + "@smithy/util-middleware": "^3.0.10", "fast-xml-parser": "4.4.1", "tslib": "^2.6.2" } }, "@aws-sdk/credential-provider-env": { - "version": "3.620.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.620.1.tgz", - "integrity": "sha512-ExuILJ2qLW5ZO+rgkNRj0xiAipKT16Rk77buvPP8csR7kkCflT/gXTyzRe/uzIiETTxM7tr8xuO9MP/DQXqkfg==", - "requires": { - "@aws-sdk/types": "3.609.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.696.0.tgz", + "integrity": "sha512-T9iMFnJL7YTlESLpVFT3fg1Lkb1lD+oiaIC8KMpepb01gDUBIpj9+Y+pA/cgRWW0yRxmkDXNazAE2qQTVFGJzA==", + "requires": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/property-provider": "^3.1.9", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@aws-sdk/credential-provider-http": { - "version": "3.635.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.635.0.tgz", - "integrity": "sha512-iJyRgEjOCQlBMXqtwPLIKYc7Bsc6nqjrZybdMDenPDa+kmLg7xh8LxHsu9088e+2/wtLicE34FsJJIfzu3L82g==", - "requires": { - "@aws-sdk/types": "3.609.0", - "@smithy/fetch-http-handler": "^3.2.4", - "@smithy/node-http-handler": "^3.1.4", - "@smithy/property-provider": "^3.1.3", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/util-stream": "^3.1.3", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.696.0.tgz", + "integrity": "sha512-GV6EbvPi2eq1+WgY/o2RFA3P7HGmnkIzCNmhwtALFlqMroLYWKE7PSeHw66Uh1dFQeVESn0/+hiUNhu1mB0emA==", + "requires": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/fetch-http-handler": "^4.1.1", + "@smithy/node-http-handler": "^3.3.1", + "@smithy/property-provider": "^3.1.9", + "@smithy/protocol-http": "^4.1.7", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", + "@smithy/util-stream": "^3.3.1", "tslib": "^2.6.2" } }, "@aws-sdk/credential-provider-ini": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.637.0.tgz", - "integrity": "sha512-h+PFCWfZ0Q3Dx84SppET/TFpcQHmxFW8/oV9ArEvMilw4EBN+IlxgbL0CnHwjHW64szcmrM0mbebjEfHf4FXmw==", - "requires": { - "@aws-sdk/credential-provider-env": "3.620.1", - "@aws-sdk/credential-provider-http": "3.635.0", - "@aws-sdk/credential-provider-process": "3.620.1", - "@aws-sdk/credential-provider-sso": "3.637.0", - "@aws-sdk/credential-provider-web-identity": "3.621.0", - "@aws-sdk/types": "3.609.0", - "@smithy/credential-provider-imds": "^3.2.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", + "version": "3.699.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.699.0.tgz", + "integrity": "sha512-dXmCqjJnKmG37Q+nLjPVu22mNkrGHY8hYoOt3Jo9R2zr5MYV7s/NHsCHr+7E+BZ+tfZYLRPeB1wkpTeHiEcdRw==", + "requires": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/credential-provider-env": "3.696.0", + "@aws-sdk/credential-provider-http": "3.696.0", + "@aws-sdk/credential-provider-process": "3.696.0", + "@aws-sdk/credential-provider-sso": "3.699.0", + "@aws-sdk/credential-provider-web-identity": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/credential-provider-imds": "^3.2.6", + "@smithy/property-provider": "^3.1.9", + "@smithy/shared-ini-file-loader": "^3.1.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@aws-sdk/credential-provider-node": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.637.0.tgz", - "integrity": "sha512-yoEhoxJJfs7sPVQ6Is939BDQJZpZCoUgKr/ySse4YKOZ24t4VqgHA6+wV7rYh+7IW24Rd91UTvEzSuHYTlxlNA==", - "requires": { - "@aws-sdk/credential-provider-env": "3.620.1", - "@aws-sdk/credential-provider-http": "3.635.0", - "@aws-sdk/credential-provider-ini": "3.637.0", - "@aws-sdk/credential-provider-process": "3.620.1", - "@aws-sdk/credential-provider-sso": "3.637.0", - "@aws-sdk/credential-provider-web-identity": "3.621.0", - "@aws-sdk/types": "3.609.0", - "@smithy/credential-provider-imds": "^3.2.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", + "version": "3.699.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.699.0.tgz", + "integrity": "sha512-MmEmNDo1bBtTgRmdNfdQksXu4uXe66s0p1hi1YPrn1h59Q605eq/xiWbGL6/3KdkViH6eGUuABeV2ODld86ylg==", + "requires": { + "@aws-sdk/credential-provider-env": "3.696.0", + "@aws-sdk/credential-provider-http": "3.696.0", + "@aws-sdk/credential-provider-ini": "3.699.0", + "@aws-sdk/credential-provider-process": "3.696.0", + "@aws-sdk/credential-provider-sso": "3.699.0", + "@aws-sdk/credential-provider-web-identity": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/credential-provider-imds": "^3.2.6", + "@smithy/property-provider": "^3.1.9", + "@smithy/shared-ini-file-loader": "^3.1.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@aws-sdk/credential-provider-process": { - "version": "3.620.1", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.620.1.tgz", - "integrity": "sha512-hWqFMidqLAkaV9G460+1at6qa9vySbjQKKc04p59OT7lZ5cO5VH5S4aI05e+m4j364MBROjjk2ugNvfNf/8ILg==", - "requires": { - "@aws-sdk/types": "3.609.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.696.0.tgz", + "integrity": "sha512-mL1RcFDe9sfmyU5K1nuFkO8UiJXXxLX4JO1gVaDIOvPqwStpUAwi3A1BoeZhWZZNQsiKI810RnYGo0E0WB/hUA==", + "requires": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/property-provider": "^3.1.9", + "@smithy/shared-ini-file-loader": "^3.1.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@aws-sdk/credential-provider-sso": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.637.0.tgz", - "integrity": "sha512-Mvz+h+e62/tl+dVikLafhv+qkZJ9RUb8l2YN/LeKMWkxQylPT83CPk9aimVhCV89zth1zpREArl97+3xsfgQvA==", - "requires": { - "@aws-sdk/client-sso": "3.637.0", - "@aws-sdk/token-providers": "3.614.0", - "@aws-sdk/types": "3.609.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", + "version": "3.699.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.699.0.tgz", + "integrity": "sha512-Ekp2cZG4pl9D8+uKWm4qO1xcm8/MeiI8f+dnlZm8aQzizeC+aXYy9GyoclSf6daK8KfRPiRfM7ZHBBL5dAfdMA==", + "requires": { + "@aws-sdk/client-sso": "3.696.0", + "@aws-sdk/core": "3.696.0", + "@aws-sdk/token-providers": "3.699.0", + "@aws-sdk/types": "3.696.0", + "@smithy/property-provider": "^3.1.9", + "@smithy/shared-ini-file-loader": "^3.1.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@aws-sdk/credential-provider-web-identity": { - "version": "3.621.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.621.0.tgz", - "integrity": "sha512-w7ASSyfNvcx7+bYGep3VBgC3K6vEdLmlpjT7nSIHxxQf+WSdvy+HynwJosrpZax0sK5q0D1Jpn/5q+r5lwwW6w==", - "requires": { - "@aws-sdk/types": "3.609.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.696.0.tgz", + "integrity": "sha512-XJ/CVlWChM0VCoc259vWguFUjJDn/QwDqHwbx+K9cg3v6yrqXfK5ai+p/6lx0nQpnk4JzPVeYYxWRpaTsGC9rg==", + "requires": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/property-provider": "^3.1.9", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@aws-sdk/lib-storage": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/lib-storage/-/lib-storage-3.637.0.tgz", - "integrity": "sha512-HiNGOP4a1QrCWwO1joKw4mCp19nLXoF9K52PislBaYDI35IlHC3DP6MeOg5zmElwtL1GtEHFBy5olfPWPsLyLg==", + "version": "3.705.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/lib-storage/-/lib-storage-3.705.0.tgz", + "integrity": "sha512-jucPgdO5RCQAki8+CcEi3ZQxBUpq6iVcurtMkLS1xGbe/VOhxzNOt44V/4WqjUu7ra3on8DD0DOqd9523BqOzA==", "requires": { - "@smithy/abort-controller": "^3.1.1", - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/smithy-client": "^3.2.0", + "@smithy/abort-controller": "^3.1.7", + "@smithy/middleware-endpoint": "^3.2.3", + "@smithy/smithy-client": "^3.4.4", "buffer": "5.6.0", "events": "3.3.0", "stream-browserify": "3.0.0", @@ -14336,219 +14503,226 @@ } }, "@aws-sdk/middleware-bucket-endpoint": { - "version": "3.620.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.620.0.tgz", - "integrity": "sha512-eGLL0W6L3HDb3OACyetZYOWpHJ+gLo0TehQKeQyy2G8vTYXqNTeqYhuI6up9HVjBzU9eQiULVQETmgQs7TFaRg==", - "requires": { - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-arn-parser": "3.568.0", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.696.0.tgz", + "integrity": "sha512-V07jishKHUS5heRNGFpCWCSTjRJyQLynS/ncUeE8ZYtG66StOOQWftTwDfFOSoXlIqrXgb4oT9atryzXq7Z4LQ==", + "requires": { + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-arn-parser": "3.693.0", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "@smithy/util-config-provider": "^3.0.0", "tslib": "^2.6.2" } }, "@aws-sdk/middleware-expect-continue": { - "version": "3.620.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.620.0.tgz", - "integrity": "sha512-QXeRFMLfyQ31nAHLbiTLtk0oHzG9QLMaof5jIfqcUwnOkO8YnQdeqzakrg1Alpy/VQ7aqzIi8qypkBe2KXZz0A==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.696.0.tgz", + "integrity": "sha512-vpVukqY3U2pb+ULeX0shs6L0aadNep6kKzjme/MyulPjtUDJpD3AekHsXRrCCGLmOqSKqRgQn5zhV9pQhHsb6Q==", "requires": { - "@aws-sdk/types": "3.609.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@aws-sdk/middleware-flexible-checksums": { - "version": "3.620.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.620.0.tgz", - "integrity": "sha512-ftz+NW7qka2sVuwnnO1IzBku5ccP+s5qZGeRTPgrKB7OzRW85gthvIo1vQR2w+OwHFk7WJbbhhWwbCbktnP4UA==", + "version": "3.701.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.701.0.tgz", + "integrity": "sha512-adNaPCyTT+CiVM0ufDiO1Fe7nlRmJdI9Hcgj0M9S6zR7Dw70Ra5z8Lslkd7syAccYvZaqxLklGjPQH/7GNxwTA==", "requires": { "@aws-crypto/crc32": "5.2.0", "@aws-crypto/crc32c": "5.2.0", - "@aws-sdk/types": "3.609.0", + "@aws-crypto/util": "5.2.0", + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", "@smithy/is-array-buffer": "^3.0.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-stream": "^3.3.1", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" } }, "@aws-sdk/middleware-host-header": { - "version": "3.620.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.620.0.tgz", - "integrity": "sha512-VMtPEZwqYrII/oUkffYsNWY9PZ9xpNJpMgmyU0rlDQ25O1c0Hk3fJmZRe6pEkAJ0omD7kLrqGl1DUjQVxpd/Rg==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.696.0.tgz", + "integrity": "sha512-zELJp9Ta2zkX7ELggMN9qMCgekqZhFC5V2rOr4hJDEb/Tte7gpfKSObAnw/3AYiVqt36sjHKfdkoTsuwGdEoDg==", "requires": { - "@aws-sdk/types": "3.609.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@aws-sdk/middleware-location-constraint": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.609.0.tgz", - "integrity": "sha512-xzsdoTkszGVqGVPjUmgoP7TORiByLueMHieI1fhQL888WPdqctwAx3ES6d/bA9Q/i8jnc6hs+Fjhy8UvBTkE9A==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.696.0.tgz", + "integrity": "sha512-FgH12OB0q+DtTrP2aiDBddDKwL4BPOrm7w3VV9BJrSdkqQCNBPz8S1lb0y5eVH4tBG+2j7gKPlOv1wde4jF/iw==", "requires": { - "@aws-sdk/types": "3.609.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@aws-sdk/middleware-logger": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.609.0.tgz", - "integrity": "sha512-S62U2dy4jMDhDFDK5gZ4VxFdWzCtLzwbYyFZx2uvPYTECkepLUfzLic2BHg2Qvtu4QjX+oGE3P/7fwaGIsGNuQ==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.696.0.tgz", + "integrity": "sha512-KhkHt+8AjCxcR/5Zp3++YPJPpFQzxpr+jmONiT/Jw2yqnSngZ0Yspm5wGoRx2hS1HJbyZNuaOWEGuJoxLeBKfA==", "requires": { - "@aws-sdk/types": "3.609.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@aws-sdk/middleware-recursion-detection": { - "version": "3.620.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.620.0.tgz", - "integrity": "sha512-nh91S7aGK3e/o1ck64sA/CyoFw+gAYj2BDOnoNa6ouyCrVJED96ZXWbhye/fz9SgmNUZR2g7GdVpiLpMKZoI5w==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.696.0.tgz", + "integrity": "sha512-si/maV3Z0hH7qa99f9ru2xpS5HlfSVcasRlNUXKSDm611i7jFMWwGNLUOXFAOLhXotPX5G3Z6BLwL34oDeBMug==", "requires": { - "@aws-sdk/types": "3.609.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@aws-sdk/middleware-sdk-s3": { - "version": "3.635.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.635.0.tgz", - "integrity": "sha512-RLdYJPEV4JL/7NBoFUs7VlP90X++5FlJdxHz0DzCjmiD3qCviKy+Cym3qg1gBgHwucs5XisuClxDrGokhAdTQw==", - "requires": { - "@aws-sdk/core": "3.635.0", - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-arn-parser": "3.568.0", - "@smithy/core": "^2.4.0", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/signature-v4": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.696.0.tgz", + "integrity": "sha512-M7fEiAiN7DBMHflzOFzh1I2MNSlLpbiH2ubs87bdRc2wZsDPSbs4l3v6h3WLhxoQK0bq6vcfroudrLBgvCuX3Q==", + "requires": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-arn-parser": "3.693.0", + "@smithy/core": "^2.5.3", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/protocol-http": "^4.1.7", + "@smithy/signature-v4": "^4.2.2", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.3", - "@smithy/util-stream": "^3.1.3", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-stream": "^3.3.1", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" } }, "@aws-sdk/middleware-ssec": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.609.0.tgz", - "integrity": "sha512-GZSD1s7+JswWOTamVap79QiDaIV7byJFssBW68GYjyRS5EBjNfwA/8s+6uE6g39R3ojyTbYOmvcANoZEhSULXg==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.696.0.tgz", + "integrity": "sha512-w/d6O7AOZ7Pg3w2d3BxnX5RmGNWb5X4RNxF19rJqcgu/xqxxE/QwZTNd5a7eTsqLXAUIfbbR8hh0czVfC1pJLA==", "requires": { - "@aws-sdk/types": "3.609.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@aws-sdk/middleware-user-agent": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.637.0.tgz", - "integrity": "sha512-EYo0NE9/da/OY8STDsK2LvM4kNa79DBsf4YVtaG4P5pZ615IeFsD8xOHZeuJmUrSMlVQ8ywPRX7WMucUybsKug==", - "requires": { - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-endpoints": "3.637.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.696.0.tgz", + "integrity": "sha512-Lvyj8CTyxrHI6GHd2YVZKIRI5Fmnugt3cpJo0VrKKEgK5zMySwEZ1n4dqPK6czYRWKd5+WnYHYAuU+Wdk6Jsjw==", + "requires": { + "@aws-sdk/core": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-endpoints": "3.696.0", + "@smithy/core": "^2.5.3", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@aws-sdk/region-config-resolver": { - "version": "3.614.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.614.0.tgz", - "integrity": "sha512-vDCeMXvic/LU0KFIUjpC3RiSTIkkvESsEfbVHiHH0YINfl8HnEqR5rj+L8+phsCeVg2+LmYwYxd5NRz4PHxt5g==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.696.0.tgz", + "integrity": "sha512-7EuH142lBXjI8yH6dVS/CZeiK/WZsmb/8zP6bQbVYpMrppSTgB3MzZZdxVZGzL5r8zPQOU10wLC4kIMy0qdBVQ==", "requires": { - "@aws-sdk/types": "3.609.0", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/types": "^3.7.1", "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.3", + "@smithy/util-middleware": "^3.0.10", "tslib": "^2.6.2" } }, "@aws-sdk/s3-request-presigner": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.637.0.tgz", - "integrity": "sha512-URRiEDZEICyfAXmXcXREQCsvZrapITAymvg46p1Xjnuv7PTnUB0SF18B2omPL0E5d/X+T3O9NKdtot+BqJbIWw==", - "requires": { - "@aws-sdk/signature-v4-multi-region": "3.635.0", - "@aws-sdk/types": "3.609.0", - "@aws-sdk/util-format-url": "3.609.0", - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", + "version": "3.705.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/s3-request-presigner/-/s3-request-presigner-3.705.0.tgz", + "integrity": "sha512-dAQiXv/TqjEUCoEeiKqQGI8LJ3g8Xv+XJL4W9CwsB6ZHHDq0Q05ulpDSkhhCf52ySXf5dJ33e1o/VeUDY3q0pw==", + "requires": { + "@aws-sdk/signature-v4-multi-region": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@aws-sdk/util-format-url": "3.696.0", + "@smithy/middleware-endpoint": "^3.2.3", + "@smithy/protocol-http": "^4.1.7", + "@smithy/smithy-client": "^3.4.4", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@aws-sdk/signature-v4-multi-region": { - "version": "3.635.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.635.0.tgz", - "integrity": "sha512-J6QY4/invOkpogCHjSaDON1hF03viPpOnsrzVuCvJMmclS/iG62R4EY0wq1alYll0YmSdmKlpJwHMWwGtqK63Q==", - "requires": { - "@aws-sdk/middleware-sdk-s3": "3.635.0", - "@aws-sdk/types": "3.609.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/signature-v4": "^4.1.0", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.696.0.tgz", + "integrity": "sha512-ijPkoLjXuPtgxAYlDoYls8UaG/VKigROn9ebbvPL/orEY5umedd3iZTcS9T+uAf4Ur3GELLxMQiERZpfDKaz3g==", + "requires": { + "@aws-sdk/middleware-sdk-s3": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/signature-v4": "^4.2.2", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@aws-sdk/token-providers": { - "version": "3.614.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.614.0.tgz", - "integrity": "sha512-okItqyY6L9IHdxqs+Z116y5/nda7rHxLvROxtAJdLavWTYDydxrZstImNgGWTeVdmc0xX2gJCI77UYUTQWnhRw==", - "requires": { - "@aws-sdk/types": "3.609.0", - "@smithy/property-provider": "^3.1.3", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", + "version": "3.699.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.699.0.tgz", + "integrity": "sha512-kuiEW9DWs7fNos/SM+y58HCPhcIzm1nEZLhe2/7/6+TvAYLuEWURYsbK48gzsxXlaJ2k/jGY3nIsA7RptbMOwA==", + "requires": { + "@aws-sdk/types": "3.696.0", + "@smithy/property-provider": "^3.1.9", + "@smithy/shared-ini-file-loader": "^3.1.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@aws-sdk/types": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.609.0.tgz", - "integrity": "sha512-+Tqnh9w0h2LcrUsdXyT1F8mNhXz+tVYBtP19LpeEGntmvHwa2XzvLUCWpoIAIVsHp5+HdB2X9Sn0KAtmbFXc2Q==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.696.0.tgz", + "integrity": "sha512-9rTvUJIAj5d3//U5FDPWGJ1nFJLuWb30vugGOrWk7aNZ6y9tuA3PI7Cc9dP8WEXKVyK1vuuk8rSFP2iqXnlgrw==", "requires": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@aws-sdk/util-arn-parser": { - "version": "3.568.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.568.0.tgz", - "integrity": "sha512-XUKJWWo+KOB7fbnPP0+g/o5Ulku/X53t7i/h+sPHr5xxYTJJ9CYnbToo95mzxe7xWvkLrsNtJ8L+MnNn9INs2w==", + "version": "3.693.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.693.0.tgz", + "integrity": "sha512-WC8x6ca+NRrtpAH64rWu+ryDZI3HuLwlEr8EU6/dbC/pt+r/zC0PBoC15VEygUaBA+isppCikQpGyEDu0Yj7gQ==", "requires": { "tslib": "^2.6.2" } }, "@aws-sdk/util-endpoints": { - "version": "3.637.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.637.0.tgz", - "integrity": "sha512-pAqOKUHeVWHEXXDIp/qoMk/6jyxIb6GGjnK1/f8dKHtKIEs4tKsnnL563gceEvdad53OPXIt86uoevCcCzmBnw==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.696.0.tgz", + "integrity": "sha512-T5s0IlBVX+gkb9g/I6CLt4yAZVzMSiGnbUqWihWsHvQR1WOoIcndQy/Oz/IJXT9T2ipoy7a80gzV6a5mglrioA==", "requires": { - "@aws-sdk/types": "3.609.0", - "@smithy/types": "^3.3.0", - "@smithy/util-endpoints": "^2.0.5", + "@aws-sdk/types": "3.696.0", + "@smithy/types": "^3.7.1", + "@smithy/util-endpoints": "^2.1.6", "tslib": "^2.6.2" } }, "@aws-sdk/util-format-url": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.609.0.tgz", - "integrity": "sha512-fuk29BI/oLQlJ7pfm6iJ4gkEpHdavffAALZwXh9eaY1vQ0ip0aKfRTiNudPoJjyyahnz5yJ1HkmlcDitlzsOrQ==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-format-url/-/util-format-url-3.696.0.tgz", + "integrity": "sha512-R6yK1LozUD1GdAZRPhNsIow6VNFJUTyyoIar1OCWaknlucBMcq7musF3DN3TlORBwfFMj5buHc2ET9OtMtzvuA==", "requires": { - "@aws-sdk/types": "3.609.0", - "@smithy/querystring-builder": "^3.0.3", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/querystring-builder": "^3.0.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, @@ -14561,33 +14735,34 @@ } }, "@aws-sdk/util-user-agent-browser": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.609.0.tgz", - "integrity": "sha512-fojPU+mNahzQ0YHYBsx0ZIhmMA96H+ZIZ665ObU9tl+SGdbLneVZVikGve+NmHTQwHzwkFsZYYnVKAkreJLAtA==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.696.0.tgz", + "integrity": "sha512-Z5rVNDdmPOe6ELoM5AhF/ja5tSjbe6ctSctDPb0JdDf4dT0v2MfwhJKzXju2RzX8Es/77Glh7MlaXLE0kCB9+Q==", "requires": { - "@aws-sdk/types": "3.609.0", - "@smithy/types": "^3.3.0", + "@aws-sdk/types": "3.696.0", + "@smithy/types": "^3.7.1", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "@aws-sdk/util-user-agent-node": { - "version": "3.614.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.614.0.tgz", - "integrity": "sha512-15ElZT88peoHnq5TEoEtZwoXTXRxNrk60TZNdpl/TUBJ5oNJ9Dqb5Z4ryb8ofN6nm9aFf59GVAerFDz8iUoHBA==", - "requires": { - "@aws-sdk/types": "3.609.0", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/types": "^3.3.0", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.696.0.tgz", + "integrity": "sha512-KhKqcfyXIB0SCCt+qsu4eJjsfiOrNzK5dCV7RAW2YIpp+msxGUUX0NdRE9rkzjiv+3EMktgJm3eEIS+yxtlVdQ==", + "requires": { + "@aws-sdk/middleware-user-agent": "3.696.0", + "@aws-sdk/types": "3.696.0", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@aws-sdk/xml-builder": { - "version": "3.609.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.609.0.tgz", - "integrity": "sha512-l9XxNcA4HX98rwCC2/KoiWcmEiRfZe4G+mYwDbCFT87JIMj6GBhLDkAzr/W8KAaA2IDr8Vc6J8fZPgVulxxfMA==", + "version": "3.696.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.696.0.tgz", + "integrity": "sha512-dn1mX+EeqivoLYnY7p2qLrir0waPnCgS/0YdRCAVU2x14FgfUYCH6Im3w3oi2dMwhxfKY5lYVB5NKvZu7uI9lQ==", "requires": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, @@ -15327,9 +15502,9 @@ "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==" }, "@golevelup/ts-jest": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/@golevelup/ts-jest/-/ts-jest-0.5.4.tgz", - "integrity": "sha512-2djwElTE0dMyjK6uYk7YqGs5BoA++O+bqhzDVsWHXrUD9XlOj3Ig0JeyILC8P7eBvSbWPaA61xaJX4doDvi4oQ==", + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/@golevelup/ts-jest/-/ts-jest-0.6.1.tgz", + "integrity": "sha512-ubs2xao8q2BsFWD6g2GnkWLLIeVHsPQKYMihzk3v0ptegKJhlNRZvk8wodDx2U2MI7cyKh43mueafZ9xpYdwHQ==", "dev": true }, "@humanwhocodes/config-array": { @@ -15780,40 +15955,40 @@ "integrity": "sha512-HZpPoABogPvjeJOdzCOSJsXeL/SMCBgBZMVC3X3d7YYp2gf31MfxhUoYUNwf1ERPJOnQc0wkFn9trqI6ZEdZuA==" }, "@nestjs/axios": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@nestjs/axios/-/axios-3.0.3.tgz", - "integrity": "sha512-h6TCn3yJwD6OKqqqfmtRS5Zo4E46Ip2n+gK1sqwzNBC+qxQ9xpCu+ODVRFur6V3alHSCSBxb3nNtt73VEdluyA==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@nestjs/axios/-/axios-3.1.3.tgz", + "integrity": "sha512-RZ/63c1tMxGLqyG3iOCVt7A72oy4x1eM6QEhd4KzCYpaVWW0igq0WSREeRoEZhIxRcZfDfIIkvsOMiM7yfVGZQ==", "requires": {} }, "@nestjs/cache-manager": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@nestjs/cache-manager/-/cache-manager-2.2.2.tgz", - "integrity": "sha512-+n7rpU1QABeW2WV17Dl1vZCG3vWjJU1MaamWgZvbGxYE9EeCM0lVLfw3z7acgDTNwOy+K68xuQPoIMxD0bhjlA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@nestjs/cache-manager/-/cache-manager-2.3.0.tgz", + "integrity": "sha512-pxeBp9w/s99HaW2+pezM1P3fLiWmUEnTUoUMLa9UYViCtjj0E0A19W/vaT5JFACCzFIeNrwH4/16jkpAhQ25Vw==", "requires": {} }, "@nestjs/cli": { - "version": "10.4.4", - "resolved": "https://registry.npmjs.org/@nestjs/cli/-/cli-10.4.4.tgz", - "integrity": "sha512-WKERbSZJGof0+9XeeMmWnb/9FpNxogcB5eTJTHjc9no0ymdTw3jTzT+KZL9iC/hGqBpuomDLaNFCYbAOt29nBw==", + "version": "10.4.9", + "resolved": "https://registry.npmjs.org/@nestjs/cli/-/cli-10.4.9.tgz", + "integrity": "sha512-s8qYd97bggqeK7Op3iD49X2MpFtW4LVNLAwXFkfbRxKME6IYT7X0muNTJ2+QfI8hpbNx9isWkrLWIp+g5FOhiA==", "requires": { - "@angular-devkit/core": "17.3.8", - "@angular-devkit/schematics": "17.3.8", - "@angular-devkit/schematics-cli": "17.3.8", + "@angular-devkit/core": "17.3.11", + "@angular-devkit/schematics": "17.3.11", + "@angular-devkit/schematics-cli": "17.3.11", "@nestjs/schematics": "^10.0.1", "chalk": "4.1.2", "chokidar": "3.6.0", "cli-table3": "0.6.5", "commander": "4.1.1", "fork-ts-checker-webpack-plugin": "9.0.2", - "glob": "10.4.2", + "glob": "10.4.5", "inquirer": "8.2.6", "node-emoji": "1.11.0", "ora": "5.4.1", "tree-kill": "1.2.2", "tsconfig-paths": "4.2.0", - "tsconfig-paths-webpack-plugin": "4.1.0", - "typescript": "5.3.3", - "webpack": "5.93.0", + "tsconfig-paths-webpack-plugin": "4.2.0", + "typescript": "5.7.2", + "webpack": "5.97.1", "webpack-node-externals": "3.0.0" }, "dependencies": { @@ -15826,9 +16001,9 @@ } }, "glob": { - "version": "10.4.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", - "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", "requires": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", @@ -15854,44 +16029,46 @@ "requires": { "brace-expansion": "^2.0.1" } - }, - "typescript": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", - "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==" } } }, "@nestjs/common": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/common/-/common-10.4.1.tgz", - "integrity": "sha512-4CkrDx0s4XuWqFjX8WvOFV7Y6RGJd0P2OBblkhZS7nwoctoSuW5pyEa8SWak6YHNGrHRpFb6ymm5Ai4LncwRVA==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/common/-/common-10.4.15.tgz", + "integrity": "sha512-vaLg1ZgwhG29BuLDxPA9OAcIlgqzp9/N8iG0wGapyUNTf4IY4O6zAHgN6QalwLhFxq7nOI021vdRojR1oF3bqg==", "requires": { "iterare": "1.2.1", - "tslib": "2.6.3", + "tslib": "2.8.1", "uid": "2.0.2" } }, "@nestjs/config": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@nestjs/config/-/config-3.2.3.tgz", - "integrity": "sha512-p6yv/CvoBewJ72mBq4NXgOAi2rSQNWx3a+IMJLVKS2uiwFCOQQuiIatGwq6MRjXV3Jr+B41iUO8FIf4xBrZ4/w==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@nestjs/config/-/config-3.3.0.tgz", + "integrity": "sha512-pdGTp8m9d0ZCrjTpjkUbZx6gyf2IKf+7zlkrPNMsJzYZ4bFRRTpXrnj+556/5uiI6AfL5mMrJc2u7dB6bvM+VA==", "requires": { "dotenv": "16.4.5", "dotenv-expand": "10.0.0", "lodash": "4.17.21" + }, + "dependencies": { + "dotenv": { + "version": "16.4.5", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", + "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==" + } } }, "@nestjs/core": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/core/-/core-10.4.1.tgz", - "integrity": "sha512-9I1WdfOBCCHdUm+ClBJupOuZQS6UxzIWHIq6Vp1brAA5ZKl/Wq6BVwSsbnUJGBy3J3PM2XHmR0EQ4fwX3nR7lA==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/core/-/core-10.4.15.tgz", + "integrity": "sha512-UBejmdiYwaH6fTsz2QFBlC1cJHM+3UDeLZN+CiP9I1fRv2KlBZsmozGLbV5eS1JAVWJB4T5N5yQ0gjN8ZvcS2w==", "requires": { "@nuxtjs/opencollective": "0.3.2", "fast-safe-stringify": "2.1.1", "iterare": "1.2.1", - "path-to-regexp": "3.2.0", - "tslib": "2.6.3", + "path-to-regexp": "3.3.0", + "tslib": "2.8.1", "uid": "2.0.2" } }, @@ -15908,41 +16085,41 @@ "requires": {} }, "@nestjs/platform-express": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/platform-express/-/platform-express-10.4.1.tgz", - "integrity": "sha512-ccfqIDAq/bg1ShLI5KGtaLaYGykuAdvCi57ohewH7eKJSIpWY1DQjbgKlFfXokALYUq1YOMGqjeZ244OWHfDQg==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/platform-express/-/platform-express-10.4.15.tgz", + "integrity": "sha512-63ZZPkXHjoDyO7ahGOVcybZCRa7/Scp6mObQKjcX/fTEq1YJeU75ELvMsuQgc8U2opMGOBD7GVuc4DV0oeDHoA==", "requires": { - "body-parser": "1.20.2", + "body-parser": "1.20.3", "cors": "2.8.5", - "express": "4.19.2", + "express": "4.21.2", "multer": "1.4.4-lts.1", - "tslib": "2.6.3" + "tslib": "2.8.1" } }, "@nestjs/schedule": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@nestjs/schedule/-/schedule-4.1.0.tgz", - "integrity": "sha512-WEc96WTXZW+VI/Ng+uBpiBUwm6TWtAbQ4RKWkfbmzKvmbRGzA/9k/UyAWDS9k0pp+ZcbC+MaZQtt7TjQHrwX6g==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@nestjs/schedule/-/schedule-4.1.2.tgz", + "integrity": "sha512-hCTQ1lNjIA5EHxeu8VvQu2Ed2DBLS1GSC6uKPYlBiQe6LL9a7zfE9iVSK+zuK8E2odsApteEBmfAQchc8Hx0Gg==", "requires": { - "cron": "3.1.7", - "uuid": "10.0.0" + "cron": "3.2.1", + "uuid": "11.0.3" }, "dependencies": { "uuid": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz", - "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==" + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.0.3.tgz", + "integrity": "sha512-d0z310fCWv5dJwnX1Y/MncBAqGMKEzlBb1AOf7z9K8ALnd0utBX/msg/fA0+sbyN1ihbMsLhrBlnl1ak7Wa0rg==" } } }, "@nestjs/schematics": { - "version": "10.1.4", - "resolved": "https://registry.npmjs.org/@nestjs/schematics/-/schematics-10.1.4.tgz", - "integrity": "sha512-QpY8ez9cTvXXPr3/KBrtSgXQHMSV6BkOUYy2c2TTe6cBqriEdGnCYqGl8cnfrQl3632q3lveQPaZ/c127dHsEw==", + "version": "10.2.3", + "resolved": "https://registry.npmjs.org/@nestjs/schematics/-/schematics-10.2.3.tgz", + "integrity": "sha512-4e8gxaCk7DhBxVUly2PjYL4xC2ifDFexCqq1/u4TtivLGXotVk0wHdYuPYe1tHTHuR1lsOkRbfOCpkdTnigLVg==", "requires": { - "@angular-devkit/core": "17.3.8", - "@angular-devkit/schematics": "17.3.8", - "comment-json": "4.2.3", + "@angular-devkit/core": "17.3.11", + "@angular-devkit/schematics": "17.3.11", + "comment-json": "4.2.5", "jsonc-parser": "3.3.1", "pluralize": "8.0.0" }, @@ -15955,24 +16132,24 @@ } }, "@nestjs/swagger": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@nestjs/swagger/-/swagger-7.4.0.tgz", - "integrity": "sha512-dCiwKkRxcR7dZs5jtrGspBAe/nqJd1AYzOBTzw9iCdbq3BGrLpwokelk6lFZPe4twpTsPQqzNKBwKzVbI6AR/g==", + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/@nestjs/swagger/-/swagger-7.4.2.tgz", + "integrity": "sha512-Mu6TEn1M/owIvAx2B4DUQObQXqo2028R2s9rSZ/hJEgBK95+doTwS0DjmVA2wTeZTyVtXOoN7CsoM5pONBzvKQ==", "requires": { "@microsoft/tsdoc": "^0.15.0", "@nestjs/mapped-types": "2.0.5", "js-yaml": "4.1.0", "lodash": "4.17.21", - "path-to-regexp": "3.2.0", + "path-to-regexp": "3.3.0", "swagger-ui-dist": "5.17.14" } }, "@nestjs/testing": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/testing/-/testing-10.4.1.tgz", - "integrity": "sha512-pR+su5+YGqCLH0RhhVkPowQK7FCORU0/PWAywPK7LScAOtD67ZoviZ7hAU4vnGdwkg4HCB0D7W8Bkg19CGU8Xw==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/testing/-/testing-10.4.15.tgz", + "integrity": "sha512-eGlWESkACMKti+iZk1hs6FUY/UqObmMaa8HAN9JLnaYkoLf1Jeh+EuHlGnfqo/Rq77oznNLIyaA3PFjrFDlNUg==", "requires": { - "tslib": "2.6.3" + "tslib": "2.8.1" } }, "@nestjs/typeorm": { @@ -16028,6 +16205,12 @@ "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==", "dev": true }, + "@rtsao/scc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", + "dev": true + }, "@sinclair/typebox": { "version": "0.27.8", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", @@ -16053,172 +16236,170 @@ } }, "@smithy/abort-controller": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.1.1.tgz", - "integrity": "sha512-MBJBiidoe+0cTFhyxT8g+9g7CeVccLM0IOKKUMCNQ1CNMJ/eIfoo0RTfVrXOONEI1UCN1W+zkiHSbzUNE9dZtQ==", + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-3.1.8.tgz", + "integrity": "sha512-+3DOBcUn5/rVjlxGvUPKc416SExarAQ+Qe0bqk30YSUjbepwpS7QN0cyKUSifvLJhdMZ0WPzPP5ymut0oonrpQ==", "requires": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@smithy/chunked-blob-reader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-3.0.0.tgz", - "integrity": "sha512-sbnURCwjF0gSToGlsBiAmd1lRCmSn72nu9axfJu5lIx6RUEgHu6GwTMbqCdhQSi0Pumcm5vFxsi9XWXb2mTaoA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader/-/chunked-blob-reader-4.0.0.tgz", + "integrity": "sha512-jSqRnZvkT4egkq/7b6/QRCNXmmYVcHwnJldqJ3IhVpQE2atObVJ137xmGeuGFhjFUr8gCEVAOKwSY79OvpbDaQ==", "requires": { "tslib": "^2.6.2" } }, "@smithy/chunked-blob-reader-native": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-3.0.0.tgz", - "integrity": "sha512-VDkpCYW+peSuM4zJip5WDfqvg2Mo/e8yxOv3VF1m11y7B8KKMKVFtmZWDe36Fvk8rGuWrPZHHXZ7rR7uM5yWyg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@smithy/chunked-blob-reader-native/-/chunked-blob-reader-native-3.0.1.tgz", + "integrity": "sha512-VEYtPvh5rs/xlyqpm5NRnfYLZn+q0SRPELbvBV+C/G7IQ+ouTuo+NKKa3ShG5OaFR8NYVMXls9hPYLTvIKKDrQ==", "requires": { "@smithy/util-base64": "^3.0.0", "tslib": "^2.6.2" } }, "@smithy/config-resolver": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.5.tgz", - "integrity": "sha512-SkW5LxfkSI1bUC74OtfBbdz+grQXYiPYolyu8VfpLIjEoN/sHVBlLeGXMQ1vX4ejkgfv6sxVbQJ32yF2cl1veA==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-3.0.12.tgz", + "integrity": "sha512-YAJP9UJFZRZ8N+UruTeq78zkdjUHmzsY62J4qKWZ4SXB4QXJ/+680EfXXgkYA2xj77ooMqtUY9m406zGNqwivQ==", "requires": { - "@smithy/node-config-provider": "^3.1.4", - "@smithy/types": "^3.3.0", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/types": "^3.7.1", "@smithy/util-config-provider": "^3.0.0", - "@smithy/util-middleware": "^3.0.3", + "@smithy/util-middleware": "^3.0.10", "tslib": "^2.6.2" } }, "@smithy/core": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.4.0.tgz", - "integrity": "sha512-cHXq+FneIF/KJbt4q4pjN186+Jf4ZB0ZOqEaZMBhT79srEyGDDBV31NqBRBjazz8ppQ1bJbDJMY9ba5wKFV36w==", - "requires": { - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/middleware-retry": "^3.0.15", - "@smithy/middleware-serde": "^3.0.3", - "@smithy/protocol-http": "^4.1.0", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", + "version": "2.5.4", + "resolved": "https://registry.npmjs.org/@smithy/core/-/core-2.5.4.tgz", + "integrity": "sha512-iFh2Ymn2sCziBRLPuOOxRPkuCx/2gBdXtBGuCUFLUe6bWYjKnhHyIPqGeNkLZ5Aco/5GjebRTBFiWID3sDbrKw==", + "requires": { + "@smithy/middleware-serde": "^3.0.10", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "@smithy/util-body-length-browser": "^3.0.0", - "@smithy/util-middleware": "^3.0.3", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-stream": "^3.3.1", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" } }, "@smithy/credential-provider-imds": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.2.0.tgz", - "integrity": "sha512-0SCIzgd8LYZ9EJxUjLXBmEKSZR/P/w6l7Rz/pab9culE/RWuqelAKGJvn5qUOl8BgX8Yj5HWM50A5hiB/RzsgA==", + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-3.2.7.tgz", + "integrity": "sha512-cEfbau+rrWF8ylkmmVAObOmjbTIzKyUC5TkBL58SbLywD0RCBC4JAUKbmtSm2w5KUJNRPGgpGFMvE2FKnuNlWQ==", "requires": { - "@smithy/node-config-provider": "^3.1.4", - "@smithy/property-provider": "^3.1.3", - "@smithy/types": "^3.3.0", - "@smithy/url-parser": "^3.0.3", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/property-provider": "^3.1.10", + "@smithy/types": "^3.7.1", + "@smithy/url-parser": "^3.0.10", "tslib": "^2.6.2" } }, "@smithy/eventstream-codec": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-3.1.2.tgz", - "integrity": "sha512-0mBcu49JWt4MXhrhRAlxASNy0IjDRFU+aWNDRal9OtUJvJNiwDuyKMUONSOjLjSCeGwZaE0wOErdqULer8r7yw==", + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-3.1.9.tgz", + "integrity": "sha512-F574nX0hhlNOjBnP+noLtsPFqXnWh2L0+nZKCwcu7P7J8k+k+rdIDs+RMnrMwrzhUE4mwMgyN0cYnEn0G8yrnQ==", "requires": { "@aws-crypto/crc32": "5.2.0", - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "@smithy/util-hex-encoding": "^3.0.0", "tslib": "^2.6.2" } }, "@smithy/eventstream-serde-browser": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-3.0.6.tgz", - "integrity": "sha512-2hM54UWQUOrki4BtsUI1WzmD13/SeaqT/AB3EUJKbcver/WgKNaiJ5y5F5XXuVe6UekffVzuUDrBZVAA3AWRpQ==", + "version": "3.0.13", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-3.0.13.tgz", + "integrity": "sha512-Nee9m+97o9Qj6/XeLz2g2vANS2SZgAxV4rDBMKGHvFJHU/xz88x2RwCkwsvEwYjSX4BV1NG1JXmxEaDUzZTAtw==", "requires": { - "@smithy/eventstream-serde-universal": "^3.0.5", - "@smithy/types": "^3.3.0", + "@smithy/eventstream-serde-universal": "^3.0.12", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@smithy/eventstream-serde-config-resolver": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.0.3.tgz", - "integrity": "sha512-NVTYjOuYpGfrN/VbRQgn31x73KDLfCXCsFdad8DiIc3IcdxL+dYA9zEQPyOP7Fy2QL8CPy2WE4WCUD+ZsLNfaQ==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.0.10.tgz", + "integrity": "sha512-K1M0x7P7qbBUKB0UWIL5KOcyi6zqV5mPJoL0/o01HPJr0CSq3A9FYuJC6e11EX6hR8QTIR++DBiGrYveOu6trw==", "requires": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@smithy/eventstream-serde-node": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-3.0.5.tgz", - "integrity": "sha512-+upXvnHNyZP095s11jF5dhGw/Ihzqwl5G+/KtMnoQOpdfC3B5HYCcDVG9EmgkhJMXJlM64PyN5gjJl0uXFQehQ==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-3.0.12.tgz", + "integrity": "sha512-kiZymxXvZ4tnuYsPSMUHe+MMfc4FTeFWJIc0Q5wygJoUQM4rVHNghvd48y7ppuulNMbuYt95ah71pYc2+o4JOA==", "requires": { - "@smithy/eventstream-serde-universal": "^3.0.5", - "@smithy/types": "^3.3.0", + "@smithy/eventstream-serde-universal": "^3.0.12", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@smithy/eventstream-serde-universal": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-3.0.5.tgz", - "integrity": "sha512-5u/nXbyoh1s4QxrvNre9V6vfyoLWuiVvvd5TlZjGThIikc3G+uNiG9uOTCWweSRjv1asdDIWK7nOmN7le4RYHQ==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-3.0.12.tgz", + "integrity": "sha512-1i8ifhLJrOZ+pEifTlF0EfZzMLUGQggYQ6WmZ4d5g77zEKf7oZ0kvh1yKWHPjofvOwqrkwRDVuxuYC8wVd662A==", "requires": { - "@smithy/eventstream-codec": "^3.1.2", - "@smithy/types": "^3.3.0", + "@smithy/eventstream-codec": "^3.1.9", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@smithy/fetch-http-handler": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-3.2.4.tgz", - "integrity": "sha512-kBprh5Gs5h7ug4nBWZi1FZthdqSM+T7zMmsZxx0IBvWUn7dK3diz2SHn7Bs4dQGFDk8plDv375gzenDoNwrXjg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-4.1.1.tgz", + "integrity": "sha512-bH7QW0+JdX0bPBadXt8GwMof/jz0H28I84hU1Uet9ISpzUqXqRQ3fEZJ+ANPOhzSEczYvANNl3uDQDYArSFDtA==", "requires": { - "@smithy/protocol-http": "^4.1.0", - "@smithy/querystring-builder": "^3.0.3", - "@smithy/types": "^3.3.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/querystring-builder": "^3.0.10", + "@smithy/types": "^3.7.1", "@smithy/util-base64": "^3.0.0", "tslib": "^2.6.2" } }, "@smithy/hash-blob-browser": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-3.1.2.tgz", - "integrity": "sha512-hAbfqN2UbISltakCC2TP0kx4LqXBttEv2MqSPE98gVuDFMf05lU+TpC41QtqGP3Ff5A3GwZMPfKnEy0VmEUpmg==", + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-3.1.9.tgz", + "integrity": "sha512-wOu78omaUuW5DE+PVWXiRKWRZLecARyP3xcq5SmkXUw9+utgN8HnSnBfrjL2B/4ZxgqPjaAJQkC/+JHf1ITVaQ==", "requires": { - "@smithy/chunked-blob-reader": "^3.0.0", - "@smithy/chunked-blob-reader-native": "^3.0.0", - "@smithy/types": "^3.3.0", + "@smithy/chunked-blob-reader": "^4.0.0", + "@smithy/chunked-blob-reader-native": "^3.0.1", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@smithy/hash-node": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.3.tgz", - "integrity": "sha512-2ctBXpPMG+B3BtWSGNnKELJ7SH9e4TNefJS0cd2eSkOOROeBnnVBnAy9LtJ8tY4vUEoe55N4CNPxzbWvR39iBw==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-3.0.10.tgz", + "integrity": "sha512-3zWGWCHI+FlJ5WJwx73Mw2llYR8aflVyZN5JhoqLxbdPZi6UyKSdCeXAWJw9ja22m6S6Tzz1KZ+kAaSwvydi0g==", "requires": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "@smithy/util-buffer-from": "^3.0.0", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" } }, "@smithy/hash-stream-node": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-3.1.2.tgz", - "integrity": "sha512-PBgDMeEdDzi6JxKwbfBtwQG9eT9cVwsf0dZzLXoJF4sHKHs5HEo/3lJWpn6jibfJwT34I1EBXpBnZE8AxAft6g==", + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-3.1.9.tgz", + "integrity": "sha512-3XfHBjSP3oDWxLmlxnt+F+FqXpL3WlXs+XXaB6bV9Wo8BBu87fK1dSEsyH7Z4ZHRmwZ4g9lFMdf08m9hoX1iRA==", "requires": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" } }, "@smithy/invalid-dependency": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.3.tgz", - "integrity": "sha512-ID1eL/zpDULmHJbflb864k72/SNOZCADRc9i7Exq3RUNJw6raWUSlFEQ+3PX3EYs++bTxZB2dE9mEHTQLv61tw==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-3.0.10.tgz", + "integrity": "sha512-Lp2L65vFi+cj0vFMu2obpPW69DU+6O5g3086lmI4XcnRCG8PxvpWC7XyaVwJCxsZFzueHjXnrOH/E0pl0zikfA==", "requires": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, @@ -16231,193 +16412,195 @@ } }, "@smithy/md5-js": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-3.0.3.tgz", - "integrity": "sha512-O/SAkGVwpWmelpj/8yDtsaVe6sINHLB1q8YE/+ZQbDxIw3SRLbTZuRaI10K12sVoENdnHqzPp5i3/H+BcZ3m3Q==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-3.0.10.tgz", + "integrity": "sha512-m3bv6dApflt3fS2Y1PyWPUtRP7iuBlvikEOGwu0HsCZ0vE7zcIX+dBoh3e+31/rddagw8nj92j0kJg2TfV+SJA==", "requires": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" } }, "@smithy/middleware-content-length": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.5.tgz", - "integrity": "sha512-ILEzC2eyxx6ncej3zZSwMpB5RJ0zuqH7eMptxC4KN3f+v9bqT8ohssKbhNR78k/2tWW+KS5Spw+tbPF4Ejyqvw==", + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-3.0.12.tgz", + "integrity": "sha512-1mDEXqzM20yywaMDuf5o9ue8OkJ373lSPbaSjyEvkWdqELhFMyNNgKGWL/rCSf4KME8B+HlHKuR8u9kRj8HzEQ==", "requires": { - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@smithy/middleware-endpoint": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.1.0.tgz", - "integrity": "sha512-5y5aiKCEwg9TDPB4yFE7H6tYvGFf1OJHNczeY10/EFF8Ir8jZbNntQJxMWNfeQjC1mxPsaQ6mR9cvQbf+0YeMw==", - "requires": { - "@smithy/middleware-serde": "^3.0.3", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", - "@smithy/url-parser": "^3.0.3", - "@smithy/util-middleware": "^3.0.3", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-3.2.4.tgz", + "integrity": "sha512-TybiW2LA3kYVd3e+lWhINVu1o26KJbBwOpADnf0L4x/35vLVica77XVR5hvV9+kWeTGeSJ3IHTcYxbRxlbwhsg==", + "requires": { + "@smithy/core": "^2.5.4", + "@smithy/middleware-serde": "^3.0.10", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/shared-ini-file-loader": "^3.1.11", + "@smithy/types": "^3.7.1", + "@smithy/url-parser": "^3.0.10", + "@smithy/util-middleware": "^3.0.10", "tslib": "^2.6.2" } }, "@smithy/middleware-retry": { - "version": "3.0.15", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.15.tgz", - "integrity": "sha512-iTMedvNt1ApdvkaoE8aSDuwaoc+BhvHqttbA/FO4Ty+y/S5hW6Ci/CTScG7vam4RYJWZxdTElc3MEfHRVH6cgQ==", - "requires": { - "@smithy/node-config-provider": "^3.1.4", - "@smithy/protocol-http": "^4.1.0", - "@smithy/service-error-classification": "^3.0.3", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", - "@smithy/util-middleware": "^3.0.3", - "@smithy/util-retry": "^3.0.3", + "version": "3.0.28", + "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-3.0.28.tgz", + "integrity": "sha512-vK2eDfvIXG1U64FEUhYxoZ1JSj4XFbYWkK36iz02i3pFwWiDz1Q7jKhGTBCwx/7KqJNk4VS7d7cDLXFOvP7M+g==", + "requires": { + "@smithy/node-config-provider": "^3.1.11", + "@smithy/protocol-http": "^4.1.7", + "@smithy/service-error-classification": "^3.0.10", + "@smithy/smithy-client": "^3.4.5", + "@smithy/types": "^3.7.1", + "@smithy/util-middleware": "^3.0.10", + "@smithy/util-retry": "^3.0.10", "tslib": "^2.6.2", "uuid": "^9.0.1" } }, "@smithy/middleware-serde": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.3.tgz", - "integrity": "sha512-puUbyJQBcg9eSErFXjKNiGILJGtiqmuuNKEYNYfUD57fUl4i9+mfmThtQhvFXU0hCVG0iEJhvQUipUf+/SsFdA==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-3.0.10.tgz", + "integrity": "sha512-MnAuhh+dD14F428ubSJuRnmRsfOpxSzvRhaGVTvd/lrUDE3kxzCCmH8lnVTvoNQnV2BbJ4c15QwZ3UdQBtFNZA==", "requires": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@smithy/middleware-stack": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.3.tgz", - "integrity": "sha512-r4klY9nFudB0r9UdSMaGSyjyQK5adUyPnQN/ZM6M75phTxOdnc/AhpvGD1fQUvgmqjQEBGCwpnPbDm8pH5PapA==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-3.0.10.tgz", + "integrity": "sha512-grCHyoiARDBBGPyw2BeicpjgpsDFWZZxptbVKb3CRd/ZA15F/T6rZjCCuBUjJwdck1nwUuIxYtsS4H9DDpbP5w==", "requires": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@smithy/node-config-provider": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.1.4.tgz", - "integrity": "sha512-YvnElQy8HR4vDcAjoy7Xkx9YT8xZP4cBXcbJSgm/kxmiQu08DwUwj8rkGnyoJTpfl/3xYHH+d8zE+eHqoDCSdQ==", + "version": "3.1.11", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-3.1.11.tgz", + "integrity": "sha512-URq3gT3RpDikh/8MBJUB+QGZzfS7Bm6TQTqoh4CqE8NBuyPkWa5eUXj0XFcFfeZVgg3WMh1u19iaXn8FvvXxZw==", "requires": { - "@smithy/property-provider": "^3.1.3", - "@smithy/shared-ini-file-loader": "^3.1.4", - "@smithy/types": "^3.3.0", + "@smithy/property-provider": "^3.1.10", + "@smithy/shared-ini-file-loader": "^3.1.11", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@smithy/node-http-handler": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.1.4.tgz", - "integrity": "sha512-+UmxgixgOr/yLsUxcEKGH0fMNVteJFGkmRltYFHnBMlogyFdpzn2CwqWmxOrfJELhV34v0WSlaqG1UtE1uXlJg==", - "requires": { - "@smithy/abort-controller": "^3.1.1", - "@smithy/protocol-http": "^4.1.0", - "@smithy/querystring-builder": "^3.0.3", - "@smithy/types": "^3.3.0", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-3.3.1.tgz", + "integrity": "sha512-fr+UAOMGWh6bn4YSEezBCpJn9Ukp9oR4D32sCjCo7U81evE11YePOQ58ogzyfgmjIO79YeOdfXXqr0jyhPQeMg==", + "requires": { + "@smithy/abort-controller": "^3.1.8", + "@smithy/protocol-http": "^4.1.7", + "@smithy/querystring-builder": "^3.0.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@smithy/property-provider": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.1.3.tgz", - "integrity": "sha512-zahyOVR9Q4PEoguJ/NrFP4O7SMAfYO1HLhB18M+q+Z4KFd4V2obiMnlVoUFzFLSPeVt1POyNWneHHrZaTMoc/g==", + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-3.1.10.tgz", + "integrity": "sha512-n1MJZGTorTH2DvyTVj+3wXnd4CzjJxyXeOgnTlgNVFxaaMeT4OteEp4QrzF8p9ee2yg42nvyVK6R/awLCakjeQ==", "requires": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@smithy/protocol-http": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.1.0.tgz", - "integrity": "sha512-dPVoHYQ2wcHooGXg3LQisa1hH0e4y0pAddPMeeUPipI1tEOqL6A4N0/G7abeq+K8wrwSgjk4C0wnD1XZpJm5aA==", + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-4.1.7.tgz", + "integrity": "sha512-FP2LepWD0eJeOTm0SjssPcgqAlDFzOmRXqXmGhfIM52G7Lrox/pcpQf6RP4F21k0+O12zaqQt5fCDOeBtqY6Cg==", "requires": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@smithy/querystring-builder": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-3.0.3.tgz", - "integrity": "sha512-vyWckeUeesFKzCDaRwWLUA1Xym9McaA6XpFfAK5qI9DKJ4M33ooQGqvM4J+LalH4u/Dq9nFiC8U6Qn1qi0+9zw==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-3.0.10.tgz", + "integrity": "sha512-nT9CQF3EIJtIUepXQuBFb8dxJi3WVZS3XfuDksxSCSn+/CzZowRLdhDn+2acbBv8R6eaJqPupoI/aRFIImNVPQ==", "requires": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "@smithy/util-uri-escape": "^3.0.0", "tslib": "^2.6.2" } }, "@smithy/querystring-parser": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.3.tgz", - "integrity": "sha512-zahM1lQv2YjmznnfQsWbYojFe55l0SLG/988brlLv1i8z3dubloLF+75ATRsqPBboUXsW6I9CPGE5rQgLfY0vQ==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-3.0.10.tgz", + "integrity": "sha512-Oa0XDcpo9SmjhiDD9ua2UyM3uU01ZTuIrNdZvzwUTykW1PM8o2yJvMh1Do1rY5sUQg4NDV70dMi0JhDx4GyxuQ==", "requires": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@smithy/service-error-classification": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.3.tgz", - "integrity": "sha512-Jn39sSl8cim/VlkLsUhRFq/dKDnRUFlfRkvhOJaUbLBXUsLRLNf9WaxDv/z9BjuQ3A6k/qE8af1lsqcwm7+DaQ==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-3.0.10.tgz", + "integrity": "sha512-zHe642KCqDxXLuhs6xmHVgRwy078RfqxP2wRDpIyiF8EmsWXptMwnMwbVa50lw+WOGNrYm9zbaEg0oDe3PTtvQ==", "requires": { - "@smithy/types": "^3.3.0" + "@smithy/types": "^3.7.1" } }, "@smithy/shared-ini-file-loader": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.4.tgz", - "integrity": "sha512-qMxS4hBGB8FY2GQqshcRUy1K6k8aBWP5vwm8qKkCT3A9K2dawUwOIJfqh9Yste/Bl0J2lzosVyrXDj68kLcHXQ==", + "version": "3.1.11", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-3.1.11.tgz", + "integrity": "sha512-AUdrIZHFtUgmfSN4Gq9nHu3IkHMa1YDcN+s061Nfm+6pQ0mJy85YQDB0tZBCmls0Vuj22pLwDPmL92+Hvfwwlg==", "requires": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@smithy/signature-v4": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-4.1.0.tgz", - "integrity": "sha512-aRryp2XNZeRcOtuJoxjydO6QTaVhxx/vjaR+gx7ZjaFgrgPRyZ3HCTbfwqYj6ZWEBHkCSUfcaymKPURaByukag==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-4.2.3.tgz", + "integrity": "sha512-pPSQQ2v2vu9vc8iew7sszLd0O09I5TRc5zhY71KA+Ao0xYazIG+uLeHbTJfIWGO3BGVLiXjUr3EEeCcEQLjpWQ==", "requires": { "@smithy/is-array-buffer": "^3.0.0", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", "@smithy/util-hex-encoding": "^3.0.0", - "@smithy/util-middleware": "^3.0.3", + "@smithy/util-middleware": "^3.0.10", "@smithy/util-uri-escape": "^3.0.0", "@smithy/util-utf8": "^3.0.0", "tslib": "^2.6.2" } }, "@smithy/smithy-client": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.2.0.tgz", - "integrity": "sha512-pDbtxs8WOhJLJSeaF/eAbPgXg4VVYFlRcL/zoNYA5WbG3wBL06CHtBSg53ppkttDpAJ/hdiede+xApip1CwSLw==", - "requires": { - "@smithy/middleware-endpoint": "^3.1.0", - "@smithy/middleware-stack": "^3.0.3", - "@smithy/protocol-http": "^4.1.0", - "@smithy/types": "^3.3.0", - "@smithy/util-stream": "^3.1.3", + "version": "3.4.5", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-3.4.5.tgz", + "integrity": "sha512-k0sybYT9zlP79sIKd1XGm4TmK0AS1nA2bzDHXx7m0nGi3RQ8dxxQUs4CPkSmQTKAo+KF9aINU3KzpGIpV7UoMw==", + "requires": { + "@smithy/core": "^2.5.4", + "@smithy/middleware-endpoint": "^3.2.4", + "@smithy/middleware-stack": "^3.0.10", + "@smithy/protocol-http": "^4.1.7", + "@smithy/types": "^3.7.1", + "@smithy/util-stream": "^3.3.1", "tslib": "^2.6.2" } }, "@smithy/types": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.3.0.tgz", - "integrity": "sha512-IxvBBCTFDHbVoK7zIxqA1ZOdc4QfM5HM7rGleCuHi7L1wnKv5Pn69xXJQ9hgxH60ZVygH9/JG0jRgtUncE3QUA==", + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-3.7.1.tgz", + "integrity": "sha512-XKLcLXZY7sUQgvvWyeaL/qwNPp6V3dWcUjqrQKjSb+tzYiCy340R/c64LV5j+Tnb2GhmunEX0eou+L+m2hJNYA==", "requires": { "tslib": "^2.6.2" } }, "@smithy/url-parser": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.3.tgz", - "integrity": "sha512-pw3VtZtX2rg+s6HMs6/+u9+hu6oY6U7IohGhVNnjbgKy86wcIsSZwgHrFR+t67Uyxvp4Xz3p3kGXXIpTNisq8A==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-3.0.10.tgz", + "integrity": "sha512-j90NUalTSBR2NaZTuruEgavSdh8MLirf58LoGSk4AtQfyIymogIhgnGUU2Mga2bkMkpSoC9gxb74xBXL5afKAQ==", "requires": { - "@smithy/querystring-parser": "^3.0.3", - "@smithy/types": "^3.3.0", + "@smithy/querystring-parser": "^3.0.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, @@ -16465,38 +16648,38 @@ } }, "@smithy/util-defaults-mode-browser": { - "version": "3.0.15", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.15.tgz", - "integrity": "sha512-FZ4Psa3vjp8kOXcd3HJOiDPBCWtiilLl57r0cnNtq/Ga9RSDrM5ERL6xt+tO43+2af6Pn5Yp92x2n5vPuduNfg==", + "version": "3.0.28", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-3.0.28.tgz", + "integrity": "sha512-6bzwAbZpHRFVJsOztmov5PGDmJYsbNSoIEfHSJJyFLzfBGCCChiO3od9k7E/TLgrCsIifdAbB9nqbVbyE7wRUw==", "requires": { - "@smithy/property-provider": "^3.1.3", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", + "@smithy/property-provider": "^3.1.10", + "@smithy/smithy-client": "^3.4.5", + "@smithy/types": "^3.7.1", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "@smithy/util-defaults-mode-node": { - "version": "3.0.15", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.15.tgz", - "integrity": "sha512-KSyAAx2q6d0t6f/S4XB2+3+6aQacm3aLMhs9aLMqn18uYGUepbdssfogW5JQZpc6lXNBnp0tEnR5e9CEKmEd7A==", - "requires": { - "@smithy/config-resolver": "^3.0.5", - "@smithy/credential-provider-imds": "^3.2.0", - "@smithy/node-config-provider": "^3.1.4", - "@smithy/property-provider": "^3.1.3", - "@smithy/smithy-client": "^3.2.0", - "@smithy/types": "^3.3.0", + "version": "3.0.28", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-3.0.28.tgz", + "integrity": "sha512-78ENJDorV1CjOQselGmm3+z7Yqjj5HWCbjzh0Ixuq736dh1oEnD9sAttSBNSLlpZsX8VQnmERqA2fEFlmqWn8w==", + "requires": { + "@smithy/config-resolver": "^3.0.12", + "@smithy/credential-provider-imds": "^3.2.7", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/property-provider": "^3.1.10", + "@smithy/smithy-client": "^3.4.5", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@smithy/util-endpoints": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.0.5.tgz", - "integrity": "sha512-ReQP0BWihIE68OAblC/WQmDD40Gx+QY1Ez8mTdFMXpmjfxSyz2fVQu3A4zXRfQU9sZXtewk3GmhfOHswvX+eNg==", + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-2.1.6.tgz", + "integrity": "sha512-mFV1t3ndBh0yZOJgWxO9J/4cHZVn5UG1D8DeCc6/echfNkeEJWu9LD7mgGH5fHrEdR7LDoWw7PQO6QiGpHXhgA==", "requires": { - "@smithy/node-config-provider": "^3.1.4", - "@smithy/types": "^3.3.0", + "@smithy/node-config-provider": "^3.1.11", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, @@ -16509,32 +16692,32 @@ } }, "@smithy/util-middleware": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.3.tgz", - "integrity": "sha512-l+StyYYK/eO3DlVPbU+4Bi06Jjal+PFLSMmlWM1BEwyLxZ3aKkf1ROnoIakfaA7mC6uw3ny7JBkau4Yc+5zfWw==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-3.0.10.tgz", + "integrity": "sha512-eJO+/+RsrG2RpmY68jZdwQtnfsxjmPxzMlQpnHKjFPwrYqvlcT+fHdT+ZVwcjlWSrByOhGr9Ff2GG17efc192A==", "requires": { - "@smithy/types": "^3.3.0", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@smithy/util-retry": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.3.tgz", - "integrity": "sha512-AFw+hjpbtVApzpNDhbjNG5NA3kyoMs7vx0gsgmlJF4s+yz1Zlepde7J58zpIRIsdjc+emhpAITxA88qLkPF26w==", + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-3.0.10.tgz", + "integrity": "sha512-1l4qatFp4PiU6j7UsbasUHL2VU023NRB/gfaa1M0rDqVrRN4g3mCArLRyH3OuktApA4ye+yjWQHjdziunw2eWA==", "requires": { - "@smithy/service-error-classification": "^3.0.3", - "@smithy/types": "^3.3.0", + "@smithy/service-error-classification": "^3.0.10", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, "@smithy/util-stream": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-3.1.3.tgz", - "integrity": "sha512-FIv/bRhIlAxC0U7xM1BCnF2aDRPq0UaelqBHkM2lsCp26mcBbgI0tCVTv+jGdsQLUmAMybua/bjDsSu8RQHbmw==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-3.3.1.tgz", + "integrity": "sha512-Ff68R5lJh2zj+AUTvbAU/4yx+6QPRzg7+pI7M1FbtQHcRIp7xvguxVsQBKyB3fwiOwhAKu0lnNyYBaQfSW6TNw==", "requires": { - "@smithy/fetch-http-handler": "^3.2.4", - "@smithy/node-http-handler": "^3.1.4", - "@smithy/types": "^3.3.0", + "@smithy/fetch-http-handler": "^4.1.1", + "@smithy/node-http-handler": "^3.3.1", + "@smithy/types": "^3.7.1", "@smithy/util-base64": "^3.0.0", "@smithy/util-buffer-from": "^3.0.0", "@smithy/util-hex-encoding": "^3.0.0", @@ -16560,12 +16743,12 @@ } }, "@smithy/util-waiter": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-3.1.2.tgz", - "integrity": "sha512-4pP0EV3iTsexDx+8PPGAKCQpd/6hsQBaQhqWzU4hqKPHN5epPsxKbvUTIiYIHTxaKt6/kEaqPBpu/ufvfbrRzw==", + "version": "3.1.9", + "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-3.1.9.tgz", + "integrity": "sha512-/aMXPANhMOlMPjfPtSrDfPeVP8l56SJlz93xeiLmhLe5xvlXA5T3abZ2ilEsDEPeY9T/wnN/vNGn9wa1SbufWA==", "requires": { - "@smithy/abort-controller": "^3.1.1", - "@smithy/types": "^3.3.0", + "@smithy/abort-controller": "^3.1.8", + "@smithy/types": "^3.7.1", "tslib": "^2.6.2" } }, @@ -16696,9 +16879,9 @@ } }, "@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==" + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==" }, "@types/express": { "version": "4.17.21", @@ -16761,9 +16944,9 @@ } }, "@types/jest": { - "version": "29.5.12", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.12.tgz", - "integrity": "sha512-eDC8bTvT/QhYdxJAulQikueigY5AsdBRH2yDKW3yveW7svY3+DzN84/2NUgkw10RTiJbWqZrTtoGVdYlvFJdLw==", + "version": "29.5.14", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.14.tgz", + "integrity": "sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==", "dev": true, "requires": { "expect": "^29.0.0", @@ -16815,9 +16998,9 @@ } }, "@types/node": { - "version": "20.16.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.1.tgz", - "integrity": "sha512-zJDo7wEadFtSyNz5QITDfRcrhqDvQI1xQNQ0VoizPjM/dVAODqqIUWbJPkvsxmTI0MYRGRikcdjMPhOssnPejQ==", + "version": "20.17.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.9.tgz", + "integrity": "sha512-0JOXkRyLanfGPE2QRCwgxhzlBAvaRdCNMcvbd7jFfpmD4eEXll7LRwy5ymJmyeZqk7Nh7eD2LeUyQ68BbndmXw==", "requires": { "undici-types": "~6.19.2" } @@ -17050,133 +17233,133 @@ "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==" }, "@webassemblyjs/ast": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", - "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.14.1.tgz", + "integrity": "sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==", "requires": { - "@webassemblyjs/helper-numbers": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + "@webassemblyjs/helper-numbers": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2" } }, "@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", - "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz", + "integrity": "sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==" }, "@webassemblyjs/helper-api-error": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", - "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz", + "integrity": "sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==" }, "@webassemblyjs/helper-buffer": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", - "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==" + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz", + "integrity": "sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==" }, "@webassemblyjs/helper-numbers": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", - "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz", + "integrity": "sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==", "requires": { - "@webassemblyjs/floating-point-hex-parser": "1.11.6", - "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/floating-point-hex-parser": "1.13.2", + "@webassemblyjs/helper-api-error": "1.13.2", "@xtuc/long": "4.2.2" } }, "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", - "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz", + "integrity": "sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==" }, "@webassemblyjs/helper-wasm-section": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", - "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz", + "integrity": "sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==", "requires": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/wasm-gen": "1.12.1" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/wasm-gen": "1.14.1" } }, "@webassemblyjs/ieee754": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", - "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz", + "integrity": "sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==", "requires": { "@xtuc/ieee754": "^1.2.0" } }, "@webassemblyjs/leb128": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", - "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.13.2.tgz", + "integrity": "sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==", "requires": { "@xtuc/long": "4.2.2" } }, "@webassemblyjs/utf8": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", - "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.13.2.tgz", + "integrity": "sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==" }, "@webassemblyjs/wasm-edit": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", - "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz", + "integrity": "sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==", "requires": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/helper-wasm-section": "1.12.1", - "@webassemblyjs/wasm-gen": "1.12.1", - "@webassemblyjs/wasm-opt": "1.12.1", - "@webassemblyjs/wasm-parser": "1.12.1", - "@webassemblyjs/wast-printer": "1.12.1" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/helper-wasm-section": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-opt": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1", + "@webassemblyjs/wast-printer": "1.14.1" } }, "@webassemblyjs/wasm-gen": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", - "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz", + "integrity": "sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==", "requires": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" } }, "@webassemblyjs/wasm-opt": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", - "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz", + "integrity": "sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==", "requires": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/wasm-gen": "1.12.1", - "@webassemblyjs/wasm-parser": "1.12.1" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1" } }, "@webassemblyjs/wasm-parser": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", - "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz", + "integrity": "sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==", "requires": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-api-error": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-api-error": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" } }, "@webassemblyjs/wast-printer": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", - "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz", + "integrity": "sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==", "requires": { - "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/ast": "1.14.1", "@xtuc/long": "4.2.2" } }, @@ -17208,15 +17391,9 @@ } }, "acorn": { - "version": "8.11.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz", - "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==" - }, - "acorn-import-attributes": { - "version": "1.9.5", - "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", - "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", - "requires": {} + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==" }, "acorn-jsx": { "version": "5.3.2", @@ -17326,12 +17503,12 @@ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" }, "array-buffer-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", - "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", "requires": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" } }, "array-flatten": { @@ -17340,15 +17517,16 @@ "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" }, "array-includes": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz", - "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==", + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", + "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", "dev": true, "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.4", "is-string": "^1.0.7" } }, @@ -17363,16 +17541,17 @@ "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" }, "array.prototype.findlastindex": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz", - "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", + "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", "dev": true, "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.2.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" } }, "array.prototype.flat": { @@ -17400,16 +17579,17 @@ } }, "arraybuffer.prototype.slice": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz", - "integrity": "sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", "requires": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "is-array-buffer": "^3.0.2", + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", "is-shared-array-buffer": "^1.0.2" } }, @@ -17438,9 +17618,12 @@ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" }, "available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==" + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "requires": { + "possible-typed-array-names": "^1.0.0" + } }, "axios": { "version": "1.7.4", @@ -17590,9 +17773,9 @@ } }, "body-parser": { - "version": "1.20.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", - "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "requires": { "bytes": "3.1.2", "content-type": "~1.0.5", @@ -17602,7 +17785,7 @@ "http-errors": "2.0.0", "iconv-lite": "0.4.24", "on-finished": "2.4.1", - "qs": "6.11.0", + "qs": "6.13.0", "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" @@ -17646,14 +17829,14 @@ } }, "browserslist": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", - "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", + "version": "4.24.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", + "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", "requires": { - "caniuse-lite": "^1.0.30001541", - "electron-to-chromium": "^1.4.535", - "node-releases": "^2.0.13", - "update-browserslist-db": "^1.0.13" + "caniuse-lite": "^1.0.30001669", + "electron-to-chromium": "^1.5.41", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.1" } }, "bs-logger": { @@ -17778,9 +17961,9 @@ "dev": true }, "caniuse-lite": { - "version": "1.0.30001565", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001565.tgz", - "integrity": "sha512-xrE//a3O7TP0vaJ8ikzkD2c2NgcVUvsEe2IvFTntV4Yd1Z9FVzh+gW+enX96L0psrbaFMcVcH2l90xNuGDWc8w==" + "version": "1.0.30001683", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001683.tgz", + "integrity": "sha512-iqmNnThZ0n70mNwvxpEC2nBJ037ZHZUoBI5Gorh1Mw6IlEAZujEoU1tXA628iZfzm7R9FvFzxbfdgml82a3k8Q==" }, "chalk": { "version": "4.1.2", @@ -18066,9 +18249,9 @@ "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==" }, "comment-json": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/comment-json/-/comment-json-4.2.3.tgz", - "integrity": "sha512-SsxdiOf064DWoZLH799Ata6u7iV658A11PlWtZATDlXPpKGJnbJZ5Z24ybixAi+LUUqJ/GKowAejtC5GFUG7Tw==", + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/comment-json/-/comment-json-4.2.5.tgz", + "integrity": "sha512-bKw/r35jR3HGt5PEPm1ljsQQGyCrR8sFGNiN5L+ykDHdpO8Smxkrkla9Yi6NkQyUrb8V54PGhfMs6NrIwtxtdw==", "requires": { "array-timsort": "^1.0.3", "core-util-is": "^1.0.3", @@ -18130,9 +18313,9 @@ "dev": true }, "cookie": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", - "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==" + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==" }, "cookie-signature": { "version": "1.0.6", @@ -18202,18 +18385,18 @@ "devOptional": true }, "cron": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/cron/-/cron-3.1.7.tgz", - "integrity": "sha512-tlBg7ARsAMQLzgwqVxy8AZl/qlTc5nibqYwtNGoCrd+cV+ugI+tvZC1oT/8dFH8W455YrywGykx/KMmAqOr7Jw==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/cron/-/cron-3.2.1.tgz", + "integrity": "sha512-w2n5l49GMmmkBFEsH9FIDhjZ1n1QgTMOCMGuQtOXs5veNiosZmso6bQGuqOJSYAXXrG84WQFVneNk+Yt0Ua9iw==", "requires": { "@types/luxon": "~3.4.0", - "luxon": "~3.4.0" + "luxon": "~3.5.0" } }, "cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "requires": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -18225,6 +18408,36 @@ "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.2.0.tgz", "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==" }, + "data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "requires": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + } + }, + "data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "requires": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + } + }, + "data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "requires": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + } + }, "dayjs": { "version": "1.11.13", "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz", @@ -18348,9 +18561,9 @@ } }, "dotenv": { - "version": "16.4.5", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", - "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==" + "version": "16.4.7", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz", + "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==" }, "dotenv-expand": { "version": "10.0.0", @@ -18385,9 +18598,9 @@ } }, "electron-to-chromium": { - "version": "1.4.596", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.596.tgz", - "integrity": "sha512-zW3zbZ40Icb2BCWjm47nxwcFGYlIgdXkAx85XDO7cyky9J4QQfq8t0W19/TLZqq3JPQXtlv8BPIGmfa9Jb4scg==" + "version": "1.5.63", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.63.tgz", + "integrity": "sha512-ddeXKuY9BHo/mw145axlyWjlJ1UBt4WK3AlvkT7W2AbqfRQoacVoRUCF6wL3uIx/8wT9oLKXzI+rFqHHscByaA==" }, "emittery": { "version": "0.13.1", @@ -18406,9 +18619,9 @@ "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==" }, "encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==" }, "enhanced-resolve": { "version": "5.17.1", @@ -18439,49 +18652,56 @@ } }, "es-abstract": { - "version": "1.22.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.3.tgz", - "integrity": "sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==", - "requires": { - "array-buffer-byte-length": "^1.0.0", - "arraybuffer.prototype.slice": "^1.0.2", - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.5", - "es-set-tostringtag": "^2.0.1", + "version": "1.23.5", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.5.tgz", + "integrity": "sha512-vlmniQ0WNPwXqA0BnmwV3Ng7HxiGlh6r5U6JcTMNx8OilcAGqVJBHJcPjqOMaczU9fRuRK5Px2BdVyPRnKMMVQ==", + "requires": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", "es-to-primitive": "^1.2.1", "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.2", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.4", "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", "has-symbols": "^1.0.3", - "hasown": "^2.0.0", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", + "is-shared-array-buffer": "^1.0.3", "is-string": "^1.0.7", - "is-typed-array": "^1.1.12", + "is-typed-array": "^1.1.13", "is-weakref": "^1.0.2", - "object-inspect": "^1.13.1", + "object-inspect": "^1.13.3", "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.1", - "safe-array-concat": "^1.0.1", - "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.8", - "string.prototype.trimend": "^1.0.7", - "string.prototype.trimstart": "^1.0.7", - "typed-array-buffer": "^1.0.0", - "typed-array-byte-length": "^1.0.0", - "typed-array-byte-offset": "^1.0.0", - "typed-array-length": "^1.0.4", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.3", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.13" + "which-typed-array": "^1.1.15" } }, "es-aggregate-error": { @@ -18517,14 +18737,22 @@ "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.4.1.tgz", "integrity": "sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==" }, + "es-object-atoms": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", + "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "requires": { + "es-errors": "^1.3.0" + } + }, "es-set-tostringtag": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz", - "integrity": "sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", "requires": { - "get-intrinsic": "^1.2.2", - "has-tostringtag": "^1.0.0", - "hasown": "^2.0.0" + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" } }, "es-shim-unscopables": { @@ -18547,9 +18775,9 @@ } }, "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==" }, "escape-html": { "version": "1.0.3", @@ -18711,9 +18939,9 @@ } }, "eslint-module-utils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", - "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz", + "integrity": "sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==", "dev": true, "requires": { "debug": "^3.2.7" @@ -18753,27 +18981,29 @@ } }, "eslint-plugin-import": { - "version": "2.29.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", - "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", + "version": "2.31.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz", + "integrity": "sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==", "dev": true, "requires": { - "array-includes": "^3.1.7", - "array.prototype.findlastindex": "^1.2.3", + "@rtsao/scc": "^1.1.0", + "array-includes": "^3.1.8", + "array.prototype.findlastindex": "^1.2.5", "array.prototype.flat": "^1.3.2", "array.prototype.flatmap": "^1.3.2", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.8.0", - "hasown": "^2.0.0", - "is-core-module": "^2.13.1", + "eslint-module-utils": "^2.12.0", + "hasown": "^2.0.2", + "is-core-module": "^2.15.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", - "object.fromentries": "^2.0.7", - "object.groupby": "^1.0.1", - "object.values": "^1.1.7", + "object.fromentries": "^2.0.8", + "object.groupby": "^1.0.3", + "object.values": "^1.2.0", "semver": "^6.3.1", + "string.prototype.trimend": "^1.0.8", "tsconfig-paths": "^3.15.0" }, "dependencies": { @@ -19037,36 +19267,36 @@ } }, "express": { - "version": "4.19.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", - "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "requires": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.2", + "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.6.0", + "cookie": "0.7.1", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "1.2.0", + "finalhandler": "1.3.1", "fresh": "0.5.2", "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", + "merge-descriptors": "1.0.3", "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", - "qs": "6.11.0", + "qs": "6.13.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", + "send": "0.19.0", + "serve-static": "1.16.2", "setprototypeof": "1.2.0", "statuses": "2.0.1", "type-is": "~1.6.18", @@ -19088,9 +19318,9 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==" } } }, @@ -19233,12 +19463,12 @@ } }, "finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", "requires": { "debug": "2.6.9", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "on-finished": "2.4.1", "parseurl": "~1.3.3", @@ -19469,12 +19699,13 @@ "dev": true }, "get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" } }, "get-tsconfig": { @@ -19522,11 +19753,12 @@ } }, "globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", "requires": { - "define-properties": "^1.1.3" + "define-properties": "^1.2.1", + "gopd": "^1.0.1" } }, "globby": { @@ -19584,9 +19816,9 @@ } }, "has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==" }, "has-symbols": { "version": "1.0.3", @@ -19594,17 +19826,17 @@ "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" }, "has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "requires": { - "has-symbols": "^1.0.2" + "has-symbols": "^1.0.3" } }, "hasown": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", - "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "requires": { "function-bind": "^1.1.2" } @@ -19754,11 +19986,11 @@ } }, "internal-slot": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.6.tgz", - "integrity": "sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", "requires": { - "get-intrinsic": "^1.2.2", + "es-errors": "^1.3.0", "hasown": "^2.0.0", "side-channel": "^1.0.4" } @@ -19769,13 +20001,12 @@ "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" }, "is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", "requires": { "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" + "get-intrinsic": "^1.2.1" } }, "is-arrayish": { @@ -19824,12 +20055,20 @@ "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==" }, "is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", "dev": true, "requires": { - "hasown": "^2.0.0" + "hasown": "^2.0.2" + } + }, + "is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "requires": { + "is-typed-array": "^1.1.13" } }, "is-date-object": { @@ -19875,9 +20114,9 @@ "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==" }, "is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==" + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==" }, "is-number": { "version": "7.0.0", @@ -19907,11 +20146,11 @@ } }, "is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", "requires": { - "call-bind": "^1.0.2" + "call-bind": "^1.0.7" } }, "is-stream": { @@ -19936,11 +20175,11 @@ } }, "is-typed-array": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", - "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", "requires": { - "which-typed-array": "^1.1.11" + "which-typed-array": "^1.1.14" } }, "is-unicode-supported": { @@ -20726,9 +20965,9 @@ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" }, "lint-staged": { - "version": "15.2.9", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.2.9.tgz", - "integrity": "sha512-BZAt8Lk3sEnxw7tfxM7jeZlPRuT4M68O0/CwZhhaw6eeWu0Lz5eERE3m386InivXB64fp/mDID452h48tvKlRQ==", + "version": "15.2.10", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.2.10.tgz", + "integrity": "sha512-5dY5t743e1byO19P9I4b3x8HJwalIznL5E1FWYnU6OWw33KxNBSLAc6Cy7F2PsFEO8FKnLwjwm5hx7aMF0jzZg==", "dev": true, "requires": { "chalk": "~5.3.0", @@ -20737,7 +20976,7 @@ "execa": "~8.0.1", "lilconfig": "~3.1.2", "listr2": "~8.2.4", - "micromatch": "~4.0.7", + "micromatch": "~4.0.8", "pidtree": "~0.6.0", "string-argv": "~0.3.2", "yaml": "~2.5.0" @@ -21104,9 +21343,9 @@ } }, "logform": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/logform/-/logform-2.6.0.tgz", - "integrity": "sha512-1ulHeNPp6k/LD8H91o7VYFBng5i1BDE7HoKxVbZiGFidS1Rj65qcywLxX+pVfAPoQJEjRdvKcusKwOupHCVOVQ==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/logform/-/logform-2.7.0.tgz", + "integrity": "sha512-TFYA4jnP7PVbmlBIfhlSe+WKxs9dklXMTEGcBCIvLhE/Tn3H6Gk1norupVW7m5Cnd4bLcr08AytbyV/xj7f/kQ==", "requires": { "@colors/colors": "1.6.0", "@types/triple-beam": "^1.3.2", @@ -21158,9 +21397,9 @@ } }, "luxon": { - "version": "3.4.4", - "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.4.4.tgz", - "integrity": "sha512-zobTr7akeGHnv7eBOXcRgMeCP6+uyYsczwmeRCauvpvaAltgNyTbLH/+VaEAPUeWBT+1GuNmz4wC/6jtQzbbVA==" + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.5.0.tgz", + "integrity": "sha512-rh+Zjr6DNfUYR3bPwJEnuwDdqMbxZW7LOQfUN4B54+Cl+0o5zaU9RJ6bcidfDtC1cWCZXQ+nvX8bf6bAji37QQ==" }, "magic-string": { "version": "0.30.8", @@ -21208,9 +21447,9 @@ } }, "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==" }, "merge-stream": { "version": "2.0.0", @@ -21380,9 +21619,9 @@ } }, "nestjs-cls": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/nestjs-cls/-/nestjs-cls-4.4.1.tgz", - "integrity": "sha512-4yhldwm/cJ02lQ8ZAdM8KQ7gMfjAc1z3fo5QAQgXNyN4N6X5So9BCwv+BTLRugDCkELUo3qtzQHnKhGYL/ftPg==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/nestjs-cls/-/nestjs-cls-4.5.0.tgz", + "integrity": "sha512-oi3GNCc5pnsnVI5WJKMDwmg4NP+JyEw+edlwgepyUba5+RGGtJzpbVaaxXGW1iPbDuQde3/fA8Jdjq9j88BVcQ==", "requires": {} }, "node-abort-controller": { @@ -21413,9 +21652,9 @@ "dev": true }, "node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==" + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==" }, "normalize-path": { "version": "3.0.0", @@ -21437,9 +21676,9 @@ "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" }, "object-inspect": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", - "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==" + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.3.tgz", + "integrity": "sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==" }, "object-keys": { "version": "1.1.1", @@ -21447,12 +21686,12 @@ "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" }, "object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", "has-symbols": "^1.0.3", "object-keys": "^1.1.1" } @@ -21469,37 +21708,37 @@ } }, "object.fromentries": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz", - "integrity": "sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==", + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", "dev": true, "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" } }, "object.groupby": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz", - "integrity": "sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", + "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", "dev": true, "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2" } }, "object.values": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz", - "integrity": "sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", + "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", "dev": true, "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" } }, "on-finished": { @@ -21601,9 +21840,9 @@ "dev": true }, "package-json-from-dist": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", - "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==" }, "packet-reader": { "version": "1.0.0", @@ -21711,9 +21950,9 @@ } }, "path-to-regexp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-3.2.0.tgz", - "integrity": "sha512-jczvQbCUS7XmS7o+y1aEO9OBVFeZBQ1MDSEqmO7xSoPgOPoowY/SxLpZ6Vh97/8qHZOteiCKb7gkG9gA2ZUxJA==" + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-3.3.0.tgz", + "integrity": "sha512-qyCH421YQPS2WFDxDjftfc1ZR5WKQzVzqsp4n9M2kQhVOo/ByahFoUNJfl58kOcEGfQ//7weFTDhm+ss8Ecxgw==" }, "path-type": { "version": "4.0.0", @@ -21804,9 +22043,9 @@ } }, "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" }, "picomatch": { "version": "2.3.1", @@ -21878,6 +22117,11 @@ "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==" }, + "possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==" + }, "postgres-array": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/postgres-array/-/postgres-array-2.0.0.tgz", @@ -21915,9 +22159,9 @@ "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==" }, "prettier": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz", - "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==", + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.4.2.tgz", + "integrity": "sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==", "dev": true }, "prettier-linter-helpers": { @@ -22014,11 +22258,11 @@ "dev": true }, "qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "requires": { - "side-channel": "^1.0.4" + "side-channel": "^1.0.6" } }, "queue-microtask": { @@ -22092,13 +22336,14 @@ "peer": true }, "regexp.prototype.flags": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz", - "integrity": "sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz", + "integrity": "sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==", "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "set-function-name": "^2.0.0" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.2" } }, "regexpp": { @@ -22256,12 +22501,12 @@ } }, "safe-array-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.1.tgz", - "integrity": "sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", "has-symbols": "^1.0.3", "isarray": "^2.0.5" }, @@ -22279,19 +22524,19 @@ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" }, "safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", "is-regex": "^1.1.4" } }, "safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==" + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz", + "integrity": "sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==" }, "safer-buffer": { "version": "2.1.2", @@ -22338,9 +22583,9 @@ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==" }, "send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", "requires": { "debug": "2.6.9", "depd": "2.0.0", @@ -22372,6 +22617,11 @@ } } }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" + }, "ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -22388,14 +22638,14 @@ } }, "serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", "requires": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" } }, "set-function-length": { @@ -22412,13 +22662,14 @@ } }, "set-function-name": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.1.tgz", - "integrity": "sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", "requires": { - "define-data-property": "^1.0.1", + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.0" + "has-property-descriptors": "^1.0.2" } }, "setprototypeof": { @@ -22449,13 +22700,14 @@ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" }, "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" } }, "signal-exit": { @@ -22701,33 +22953,34 @@ } }, "string.prototype.trim": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz", - "integrity": "sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==", + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" } }, "string.prototype.trimend": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz", - "integrity": "sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" } }, "string.prototype.trimstart": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz", - "integrity": "sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" } }, "strip-ansi": { @@ -23143,19 +23396,20 @@ } }, "tsconfig-paths-webpack-plugin": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths-webpack-plugin/-/tsconfig-paths-webpack-plugin-4.1.0.tgz", - "integrity": "sha512-xWFISjviPydmtmgeUAuXp4N1fky+VCtfhOkDUFIv5ea7p4wuTomI4QTrXvFBX2S4jZsmyTSrStQl+E+4w+RzxA==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths-webpack-plugin/-/tsconfig-paths-webpack-plugin-4.2.0.tgz", + "integrity": "sha512-zbem3rfRS8BgeNK50Zz5SIQgXzLafiHjOwUAvk/38/o1jHn/V5QAgVUcz884or7WYcPaH3N2CIfUc2u0ul7UcA==", "requires": { "chalk": "^4.1.0", "enhanced-resolve": "^5.7.0", + "tapable": "^2.2.1", "tsconfig-paths": "^4.1.2" } }, "tslib": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", - "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==" + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==" }, "tweetnacl": { "version": "0.14.5", @@ -23191,46 +23445,51 @@ } }, "typed-array-buffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz", - "integrity": "sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", - "is-typed-array": "^1.1.10" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" } }, "typed-array-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz", - "integrity": "sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", "requires": { - "call-bind": "^1.0.2", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" } }, "typed-array-byte-offset": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz", - "integrity": "sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", + "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" } }, "typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", + "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", "requires": { - "call-bind": "^1.0.2", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" } }, "typedarray": { @@ -23310,9 +23569,9 @@ } }, "typescript": { - "version": "5.5.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", - "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==" + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz", + "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==" }, "typescript-eslint": { "version": "7.18.0", @@ -23359,12 +23618,12 @@ "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==" }, "update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", + "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" + "escalade": "^3.2.0", + "picocolors": "^1.1.0" } }, "uri-js": { @@ -23449,20 +23708,19 @@ "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" }, "webpack": { - "version": "5.93.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.93.0.tgz", - "integrity": "sha512-Y0m5oEY1LRuwly578VqluorkXbvXKh7U3rLoQCEO04M97ScRr44afGVkI0FQFsXzysk5OgFAxjZAb9rsGQVihA==", - "requires": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.5", - "@webassemblyjs/ast": "^1.12.1", - "@webassemblyjs/wasm-edit": "^1.12.1", - "@webassemblyjs/wasm-parser": "^1.12.1", - "acorn": "^8.7.1", - "acorn-import-attributes": "^1.9.5", - "browserslist": "^4.21.10", + "version": "5.97.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.97.1.tgz", + "integrity": "sha512-EksG6gFY3L1eFMROS/7Wzgrii5mBAFe4rIr3r2BTfo7bcc+DWwFZ4OJ/miOuHJO/A85HwyI4eQ0F6IKXesO7Fg==", + "requires": { + "@types/eslint-scope": "^3.7.7", + "@types/estree": "^1.0.6", + "@webassemblyjs/ast": "^1.14.1", + "@webassemblyjs/wasm-edit": "^1.14.1", + "@webassemblyjs/wasm-parser": "^1.14.1", + "acorn": "^8.14.0", + "browserslist": "^4.24.0", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.17.0", + "enhanced-resolve": "^5.17.1", "es-module-lexer": "^1.2.1", "eslint-scope": "5.1.1", "events": "^3.2.0", @@ -23519,33 +23777,33 @@ } }, "which-typed-array": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz", - "integrity": "sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==", + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", + "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", "requires": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", "for-each": "^0.3.3", "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" + "has-tostringtag": "^1.0.2" } }, "winston": { - "version": "3.14.2", - "resolved": "https://registry.npmjs.org/winston/-/winston-3.14.2.tgz", - "integrity": "sha512-CO8cdpBB2yqzEf8v895L+GNKYJiEq8eKlHU38af3snQBQ+sdAIUepjMSguOIJC7ICbzm0ZI+Af2If4vIJrtmOg==", + "version": "3.17.0", + "resolved": "https://registry.npmjs.org/winston/-/winston-3.17.0.tgz", + "integrity": "sha512-DLiFIXYC5fMPxaRg832S6F5mJYvePtmO5G9v9IgUFPhXm9/GkXarH/TUrBAVzhTCzAj9anE/+GjrgXp/54nOgw==", "requires": { "@colors/colors": "^1.6.0", "@dabh/diagnostics": "^2.0.2", "async": "^3.2.3", "is-stream": "^2.0.0", - "logform": "^2.6.0", + "logform": "^2.7.0", "one-time": "^1.0.0", "readable-stream": "^3.4.0", "safe-stable-stringify": "^2.3.1", "stack-trace": "0.0.x", "triple-beam": "^1.3.0", - "winston-transport": "^4.7.0" + "winston-transport": "^4.9.0" }, "dependencies": { "@colors/colors": { @@ -23566,12 +23824,12 @@ } }, "winston-transport": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.7.0.tgz", - "integrity": "sha512-ajBj65K5I7denzer2IYW6+2bNIVqLGDHqDw3Ow8Ohh+vdW+rv4MZ6eiDvHoKhfJFZ2auyN8byXieDDJ96ViONg==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.9.0.tgz", + "integrity": "sha512-8drMJ4rkgaPo1Me4zD/3WLfI/zPdA9o2IipKODunnGDcuqbHwjsbB79ylv04LCGGzU0xQ6vTznOMpQGaLhhm6A==", "requires": { - "logform": "^2.3.2", - "readable-stream": "^3.6.0", + "logform": "^2.7.0", + "readable-stream": "^3.6.2", "triple-beam": "^1.3.0" }, "dependencies": { diff --git a/scheduler/package.json b/scheduler/package.json index aea908d0e..92e636dd3 100644 --- a/scheduler/package.json +++ b/scheduler/package.json @@ -42,21 +42,21 @@ "homepage": "https://github.com/bcgov/onroutebc#readme", "dependencies": { "@automapper/classes": "^8.8.1", - "@aws-sdk/client-s3": "^3.637.0", - "@aws-sdk/lib-storage": "^3.637.0", - "@aws-sdk/s3-request-presigner": "^3.637.0", - "@nestjs/axios": "^3.0.3", - "@nestjs/cache-manager": "^2.2.2", - "@nestjs/cli": "^10.4.4", - "@nestjs/common": "^10.4.1", - "@nestjs/config": "^3.2.3", - "@nestjs/core": "^10.4.1", + "@aws-sdk/client-s3": "^3.705.0", + "@aws-sdk/lib-storage": "^3.705.0", + "@aws-sdk/s3-request-presigner": "^3.705.0", + "@nestjs/axios": "^3.1.3", + "@nestjs/cache-manager": "^2.3.0", + "@nestjs/cli": "^10.4.9", + "@nestjs/common": "^10.4.15", + "@nestjs/config": "^3.3.0", + "@nestjs/core": "^10.4.15", "@nestjs/passport": "^10.0.3", - "@nestjs/platform-express": "^10.4.1", - "@nestjs/schedule": "^4.1.0", - "@nestjs/schematics": "^10.1.4", - "@nestjs/swagger": "^7.4.0", - "@nestjs/testing": "^10.4.1", + "@nestjs/platform-express": "^10.4.15", + "@nestjs/schedule": "^4.1.2", + "@nestjs/schematics": "^10.2.3", + "@nestjs/swagger": "^7.4.2", + "@nestjs/testing": "^10.4.15", "@nestjs/typeorm": "^10.0.2", "@types/crypto-js": "^4.2.2", "cache-manager": "^5.7.6", @@ -64,25 +64,25 @@ "class-validator": "^0.14.1", "crypto-js": "^4.2.0", "dayjs": "^1.11.13", - "dotenv": "^16.4.5", + "dotenv": "^16.4.7", "jwks-rsa": "^3.1.0", "mssql": "^10.0.4", "nest-winston": "^1.10.0", - "nestjs-cls": "^4.4.1", + "nestjs-cls": "^4.5.0", "rxjs": "^7.8.1", "ssh2-sftp-client": "^10.0.3", "swagger-ui-express": "^5.0.1", "typeorm": "^0.3.20", "typescript-eslint": "^7.18.0", "uuid": "^9.0.1", - "winston": "^3.14.2" + "winston": "^3.17.0" }, "devDependencies": { - "@golevelup/ts-jest": "^0.5.4", + "@golevelup/ts-jest": "^0.6.1", "@types/express": "^4.17.21", - "@types/jest": "^29.5.12", + "@types/jest": "^29.5.14", "@types/multer": "^1.4.12", - "@types/node": "^20.16.1", + "@types/node": "^20.17.9", "@types/passport-jwt": "^4.0.1", "@types/supertest": "^6.0.2", "@types/uuid": "^10.0.0", @@ -90,7 +90,7 @@ "eslint-config-airbnb-base": "^15.0.0", "eslint-config-prettier": "^9.1.0", "eslint-config-standard": "^17.1.0", - "eslint-plugin-import": "^2.29.1", + "eslint-plugin-import": "^2.31.0", "eslint-plugin-node": "^11.1.0", "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-promise": "^6.6.0", @@ -98,8 +98,8 @@ "jest": "^29.7.0", "jest-badges": "^0.1.3", "jest-sonar-reporter": "^2.0.0", - "lint-staged": "^15.2.9", - "prettier": "^3.3.3", + "lint-staged": "^15.2.10", + "prettier": "^3.4.2", "rimraf": "^5.0.10", "source-map-support": "^0.5.21", "supertest": "^7.0.0", @@ -107,7 +107,7 @@ "ts-loader": "^9.5.1", "ts-node": "^10.9.2", "tsconfig-paths": "^4.2.0", - "typescript": "^5.5.4" + "typescript": "^5.7.2" }, "jest": { "moduleFileExtensions": [ diff --git a/vehicles/package-lock.json b/vehicles/package-lock.json index 7e112c88a..e26b59eed 100644 --- a/vehicles/package-lock.json +++ b/vehicles/package-lock.json @@ -13,49 +13,49 @@ "@automapper/core": "^8.8.1", "@automapper/nestjs": "^8.8.1", "@automapper/types": "^6.3.1", - "@nestjs/axios": "^3.0.3", - "@nestjs/cache-manager": "^2.2.2", - "@nestjs/cli": "^10.4.4", - "@nestjs/common": "^10.4.1", - "@nestjs/config": "^3.2.3", - "@nestjs/core": "^10.4.1", + "@nestjs/axios": "^3.1.3", + "@nestjs/cache-manager": "^2.3.0", + "@nestjs/cli": "^10.4.9", + "@nestjs/common": "^10.4.15", + "@nestjs/config": "^3.3.0", + "@nestjs/core": "^10.4.15", "@nestjs/passport": "^10.0.3", - "@nestjs/platform-express": "^10.4.1", - "@nestjs/schematics": "^10.1.4", - "@nestjs/swagger": "^7.4.0", - "@nestjs/testing": "^10.4.1", + "@nestjs/platform-express": "^10.4.15", + "@nestjs/schematics": "^10.2.3", + "@nestjs/swagger": "^7.4.2", + "@nestjs/testing": "^10.4.15", "@nestjs/typeorm": "^10.0.2", "@types/response-time": "^2.3.8", "cache-manager": "^5.7.6", "class-transformer": "^0.5.1", "class-validator": "^0.14.1", "dayjs": "^1.11.13", - "dotenv": "^16.4.5", - "form-data": "^4.0.0", + "dotenv": "^16.4.7", + "form-data": "^4.0.1", "handlebars": "^4.7.8", - "helmet": "^7.1.0", + "helmet": "^7.2.0", "jwks-rsa": "^3.1.0", "mssql": "^10.0.4", "nest-winston": "^1.10.0", - "nestjs-cls": "^4.4.1", + "nestjs-cls": "^4.5.0", "nestjs-typeorm-paginate": "^4.0.4", "passport": "^0.7.0", "passport-jwt": "^4.0.1", - "response-time": "^2.3.2", + "response-time": "^2.3.3", "rxjs": "^7.8.1", "swagger-ui-express": "^5.0.1", "typeorm": "^0.3.20", "uuid": "^9.0.1", - "winston": "^3.14.2" + "winston": "^3.17.0" }, "devDependencies": { - "@golevelup/ts-jest": "^0.5.4", + "@golevelup/ts-jest": "^0.6.1", "@types/cache-manager": "^4.0.6", "@types/crypto-js": "^4.2.2", "@types/express": "^4.17.21", - "@types/jest": "^29.5.12", + "@types/jest": "^29.5.14", "@types/multer": "^1.4.12", - "@types/node": "^20.16.1", + "@types/node": "^20.17.9", "@types/passport-jwt": "^4.0.1", "@types/supertest": "^6.0.2", "@types/uuid": "^10.0.0", @@ -63,7 +63,7 @@ "eslint-config-airbnb-base": "^15.0.0", "eslint-config-prettier": "^9.1.0", "eslint-config-standard": "^17.1.0", - "eslint-plugin-import": "^2.29.1", + "eslint-plugin-import": "^2.31.0", "eslint-plugin-node": "^11.1.0", "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-promise": "^6.6.0", @@ -71,8 +71,8 @@ "jest": "^29.7.0", "jest-badges": "^0.1.3", "jest-sonar-reporter": "^2.0.0", - "lint-staged": "^15.2.9", - "prettier": "^3.3.3", + "lint-staged": "^15.2.10", + "prettier": "^3.4.2", "rimraf": "^5.0.10", "source-map-support": "^0.5.21", "supertest": "^7.0.0", @@ -80,7 +80,7 @@ "ts-loader": "^9.5.1", "ts-node": "^10.9.2", "tsconfig-paths": "^4.2.0", - "typescript": "^5.5.4", + "typescript": "^5.7.2", "typescript-eslint": "^7.18.0" } }, @@ -107,9 +107,9 @@ } }, "node_modules/@angular-devkit/core": { - "version": "17.3.8", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-17.3.8.tgz", - "integrity": "sha512-Q8q0voCGudbdCgJ7lXdnyaxKHbNQBARH68zPQV72WT8NWy+Gw/tys870i6L58NWbBaCJEUcIj/kb6KoakSRu+Q==", + "version": "17.3.11", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-17.3.11.tgz", + "integrity": "sha512-vTNDYNsLIWpYk2I969LMQFH29GTsLzxNk/0cLw5q56ARF0v5sIWfHYwGTS88jdDqIpuuettcSczbxeA7EuAmqQ==", "dependencies": { "ajv": "8.12.0", "ajv-formats": "2.1.1", @@ -144,11 +144,11 @@ } }, "node_modules/@angular-devkit/schematics": { - "version": "17.3.8", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-17.3.8.tgz", - "integrity": "sha512-QRVEYpIfgkprNHc916JlPuNbLzOgrm9DZalHasnLUz4P6g7pR21olb8YCyM2OTJjombNhya9ZpckcADU5Qyvlg==", + "version": "17.3.11", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-17.3.11.tgz", + "integrity": "sha512-I5wviiIqiFwar9Pdk30Lujk8FczEEc18i22A5c6Z9lbmhPQdTroDnEQdsfXjy404wPe8H62s0I15o4pmMGfTYQ==", "dependencies": { - "@angular-devkit/core": "17.3.8", + "@angular-devkit/core": "17.3.11", "jsonc-parser": "3.2.1", "magic-string": "0.30.8", "ora": "5.4.1", @@ -161,12 +161,12 @@ } }, "node_modules/@angular-devkit/schematics-cli": { - "version": "17.3.8", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics-cli/-/schematics-cli-17.3.8.tgz", - "integrity": "sha512-TjmiwWJarX7oqvNiRAroQ5/LeKUatxBOCNEuKXO/PV8e7pn/Hr/BqfFm+UcYrQoFdZplmtNAfqmbqgVziKvCpA==", + "version": "17.3.11", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics-cli/-/schematics-cli-17.3.11.tgz", + "integrity": "sha512-kcOMqp+PHAKkqRad7Zd7PbpqJ0LqLaNZdY1+k66lLWmkEBozgq8v4ASn/puPWf9Bo0HpCiK+EzLf0VHE8Z/y6Q==", "dependencies": { - "@angular-devkit/core": "17.3.8", - "@angular-devkit/schematics": "17.3.8", + "@angular-devkit/core": "17.3.11", + "@angular-devkit/schematics": "17.3.11", "ansi-colors": "4.1.3", "inquirer": "9.2.15", "symbol-observable": "4.0.0", @@ -1316,9 +1316,9 @@ } }, "node_modules/@golevelup/ts-jest": { - "version": "0.5.4", - "resolved": "https://registry.npmjs.org/@golevelup/ts-jest/-/ts-jest-0.5.4.tgz", - "integrity": "sha512-2djwElTE0dMyjK6uYk7YqGs5BoA++O+bqhzDVsWHXrUD9XlOj3Ig0JeyILC8P7eBvSbWPaA61xaJX4doDvi4oQ==", + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/@golevelup/ts-jest/-/ts-jest-0.6.1.tgz", + "integrity": "sha512-ubs2xao8q2BsFWD6g2GnkWLLIeVHsPQKYMihzk3v0ptegKJhlNRZvk8wodDx2U2MI7cyKh43mueafZ9xpYdwHQ==", "dev": true }, "node_modules/@humanwhocodes/config-array": { @@ -1937,9 +1937,9 @@ "integrity": "sha512-HZpPoABogPvjeJOdzCOSJsXeL/SMCBgBZMVC3X3d7YYp2gf31MfxhUoYUNwf1ERPJOnQc0wkFn9trqI6ZEdZuA==" }, "node_modules/@nestjs/axios": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@nestjs/axios/-/axios-3.0.3.tgz", - "integrity": "sha512-h6TCn3yJwD6OKqqqfmtRS5Zo4E46Ip2n+gK1sqwzNBC+qxQ9xpCu+ODVRFur6V3alHSCSBxb3nNtt73VEdluyA==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@nestjs/axios/-/axios-3.1.3.tgz", + "integrity": "sha512-RZ/63c1tMxGLqyG3iOCVt7A72oy4x1eM6QEhd4KzCYpaVWW0igq0WSREeRoEZhIxRcZfDfIIkvsOMiM7yfVGZQ==", "peerDependencies": { "@nestjs/common": "^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0", "axios": "^1.3.1", @@ -1947,9 +1947,9 @@ } }, "node_modules/@nestjs/cache-manager": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@nestjs/cache-manager/-/cache-manager-2.2.2.tgz", - "integrity": "sha512-+n7rpU1QABeW2WV17Dl1vZCG3vWjJU1MaamWgZvbGxYE9EeCM0lVLfw3z7acgDTNwOy+K68xuQPoIMxD0bhjlA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@nestjs/cache-manager/-/cache-manager-2.3.0.tgz", + "integrity": "sha512-pxeBp9w/s99HaW2+pezM1P3fLiWmUEnTUoUMLa9UYViCtjj0E0A19W/vaT5JFACCzFIeNrwH4/16jkpAhQ25Vw==", "peerDependencies": { "@nestjs/common": "^9.0.0 || ^10.0.0", "@nestjs/core": "^9.0.0 || ^10.0.0", @@ -1958,28 +1958,28 @@ } }, "node_modules/@nestjs/cli": { - "version": "10.4.4", - "resolved": "https://registry.npmjs.org/@nestjs/cli/-/cli-10.4.4.tgz", - "integrity": "sha512-WKERbSZJGof0+9XeeMmWnb/9FpNxogcB5eTJTHjc9no0ymdTw3jTzT+KZL9iC/hGqBpuomDLaNFCYbAOt29nBw==", + "version": "10.4.9", + "resolved": "https://registry.npmjs.org/@nestjs/cli/-/cli-10.4.9.tgz", + "integrity": "sha512-s8qYd97bggqeK7Op3iD49X2MpFtW4LVNLAwXFkfbRxKME6IYT7X0muNTJ2+QfI8hpbNx9isWkrLWIp+g5FOhiA==", "dependencies": { - "@angular-devkit/core": "17.3.8", - "@angular-devkit/schematics": "17.3.8", - "@angular-devkit/schematics-cli": "17.3.8", + "@angular-devkit/core": "17.3.11", + "@angular-devkit/schematics": "17.3.11", + "@angular-devkit/schematics-cli": "17.3.11", "@nestjs/schematics": "^10.0.1", "chalk": "4.1.2", "chokidar": "3.6.0", "cli-table3": "0.6.5", "commander": "4.1.1", "fork-ts-checker-webpack-plugin": "9.0.2", - "glob": "10.4.2", + "glob": "10.4.5", "inquirer": "8.2.6", "node-emoji": "1.11.0", "ora": "5.4.1", "tree-kill": "1.2.2", "tsconfig-paths": "4.2.0", - "tsconfig-paths-webpack-plugin": "4.1.0", - "typescript": "5.3.3", - "webpack": "5.93.0", + "tsconfig-paths-webpack-plugin": "4.2.0", + "typescript": "5.7.2", + "webpack": "5.97.1", "webpack-node-externals": "3.0.0" }, "bin": { @@ -1989,7 +1989,7 @@ "node": ">= 16.14" }, "peerDependencies": { - "@swc/cli": "^0.1.62 || ^0.3.0 || ^0.4.0", + "@swc/cli": "^0.1.62 || ^0.3.0 || ^0.4.0 || ^0.5.0", "@swc/core": "^1.3.62" }, "peerDependenciesMeta": { @@ -2001,25 +2001,13 @@ } } }, - "node_modules/@nestjs/cli/node_modules/typescript": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", - "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, "node_modules/@nestjs/common": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/common/-/common-10.4.1.tgz", - "integrity": "sha512-4CkrDx0s4XuWqFjX8WvOFV7Y6RGJd0P2OBblkhZS7nwoctoSuW5pyEa8SWak6YHNGrHRpFb6ymm5Ai4LncwRVA==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/common/-/common-10.4.15.tgz", + "integrity": "sha512-vaLg1ZgwhG29BuLDxPA9OAcIlgqzp9/N8iG0wGapyUNTf4IY4O6zAHgN6QalwLhFxq7nOI021vdRojR1oF3bqg==", "dependencies": { "iterare": "1.2.1", - "tslib": "2.6.3", + "tslib": "2.8.1", "uid": "2.0.2" }, "funding": { @@ -2042,9 +2030,9 @@ } }, "node_modules/@nestjs/config": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/@nestjs/config/-/config-3.2.3.tgz", - "integrity": "sha512-p6yv/CvoBewJ72mBq4NXgOAi2rSQNWx3a+IMJLVKS2uiwFCOQQuiIatGwq6MRjXV3Jr+B41iUO8FIf4xBrZ4/w==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@nestjs/config/-/config-3.3.0.tgz", + "integrity": "sha512-pdGTp8m9d0ZCrjTpjkUbZx6gyf2IKf+7zlkrPNMsJzYZ4bFRRTpXrnj+556/5uiI6AfL5mMrJc2u7dB6bvM+VA==", "dependencies": { "dotenv": "16.4.5", "dotenv-expand": "10.0.0", @@ -2055,17 +2043,28 @@ "rxjs": "^7.1.0" } }, + "node_modules/@nestjs/config/node_modules/dotenv": { + "version": "16.4.5", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", + "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, "node_modules/@nestjs/core": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/core/-/core-10.4.1.tgz", - "integrity": "sha512-9I1WdfOBCCHdUm+ClBJupOuZQS6UxzIWHIq6Vp1brAA5ZKl/Wq6BVwSsbnUJGBy3J3PM2XHmR0EQ4fwX3nR7lA==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/core/-/core-10.4.15.tgz", + "integrity": "sha512-UBejmdiYwaH6fTsz2QFBlC1cJHM+3UDeLZN+CiP9I1fRv2KlBZsmozGLbV5eS1JAVWJB4T5N5yQ0gjN8ZvcS2w==", "hasInstallScript": true, "dependencies": { "@nuxtjs/opencollective": "0.3.2", "fast-safe-stringify": "2.1.1", "iterare": "1.2.1", - "path-to-regexp": "3.2.0", - "tslib": "2.6.3", + "path-to-regexp": "3.3.0", + "tslib": "2.8.1", "uid": "2.0.2" }, "funding": { @@ -2121,15 +2120,15 @@ } }, "node_modules/@nestjs/platform-express": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/platform-express/-/platform-express-10.4.1.tgz", - "integrity": "sha512-ccfqIDAq/bg1ShLI5KGtaLaYGykuAdvCi57ohewH7eKJSIpWY1DQjbgKlFfXokALYUq1YOMGqjeZ244OWHfDQg==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/platform-express/-/platform-express-10.4.15.tgz", + "integrity": "sha512-63ZZPkXHjoDyO7ahGOVcybZCRa7/Scp6mObQKjcX/fTEq1YJeU75ELvMsuQgc8U2opMGOBD7GVuc4DV0oeDHoA==", "dependencies": { - "body-parser": "1.20.2", + "body-parser": "1.20.3", "cors": "2.8.5", - "express": "4.19.2", + "express": "4.21.2", "multer": "1.4.4-lts.1", - "tslib": "2.6.3" + "tslib": "2.8.1" }, "funding": { "type": "opencollective", @@ -2141,13 +2140,13 @@ } }, "node_modules/@nestjs/schematics": { - "version": "10.1.4", - "resolved": "https://registry.npmjs.org/@nestjs/schematics/-/schematics-10.1.4.tgz", - "integrity": "sha512-QpY8ez9cTvXXPr3/KBrtSgXQHMSV6BkOUYy2c2TTe6cBqriEdGnCYqGl8cnfrQl3632q3lveQPaZ/c127dHsEw==", + "version": "10.2.3", + "resolved": "https://registry.npmjs.org/@nestjs/schematics/-/schematics-10.2.3.tgz", + "integrity": "sha512-4e8gxaCk7DhBxVUly2PjYL4xC2ifDFexCqq1/u4TtivLGXotVk0wHdYuPYe1tHTHuR1lsOkRbfOCpkdTnigLVg==", "dependencies": { - "@angular-devkit/core": "17.3.8", - "@angular-devkit/schematics": "17.3.8", - "comment-json": "4.2.3", + "@angular-devkit/core": "17.3.11", + "@angular-devkit/schematics": "17.3.11", + "comment-json": "4.2.5", "jsonc-parser": "3.3.1", "pluralize": "8.0.0" }, @@ -2161,15 +2160,15 @@ "integrity": "sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==" }, "node_modules/@nestjs/swagger": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@nestjs/swagger/-/swagger-7.4.0.tgz", - "integrity": "sha512-dCiwKkRxcR7dZs5jtrGspBAe/nqJd1AYzOBTzw9iCdbq3BGrLpwokelk6lFZPe4twpTsPQqzNKBwKzVbI6AR/g==", + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/@nestjs/swagger/-/swagger-7.4.2.tgz", + "integrity": "sha512-Mu6TEn1M/owIvAx2B4DUQObQXqo2028R2s9rSZ/hJEgBK95+doTwS0DjmVA2wTeZTyVtXOoN7CsoM5pONBzvKQ==", "dependencies": { "@microsoft/tsdoc": "^0.15.0", "@nestjs/mapped-types": "2.0.5", "js-yaml": "4.1.0", "lodash": "4.17.21", - "path-to-regexp": "3.2.0", + "path-to-regexp": "3.3.0", "swagger-ui-dist": "5.17.14" }, "peerDependencies": { @@ -2193,11 +2192,11 @@ } }, "node_modules/@nestjs/testing": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/@nestjs/testing/-/testing-10.4.1.tgz", - "integrity": "sha512-pR+su5+YGqCLH0RhhVkPowQK7FCORU0/PWAywPK7LScAOtD67ZoviZ7hAU4vnGdwkg4HCB0D7W8Bkg19CGU8Xw==", + "version": "10.4.15", + "resolved": "https://registry.npmjs.org/@nestjs/testing/-/testing-10.4.15.tgz", + "integrity": "sha512-eGlWESkACMKti+iZk1hs6FUY/UqObmMaa8HAN9JLnaYkoLf1Jeh+EuHlGnfqo/Rq77oznNLIyaA3PFjrFDlNUg==", "dependencies": { - "tslib": "2.6.3" + "tslib": "2.8.1" }, "funding": { "type": "opencollective", @@ -2306,6 +2305,12 @@ "url": "https://opencollective.com/unts" } }, + "node_modules/@rtsao/scc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", + "dev": true + }, "node_modules/@sinclair/typebox": { "version": "0.27.8", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", @@ -2467,9 +2472,9 @@ } }, "node_modules/@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==" + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==" }, "node_modules/@types/express": { "version": "4.17.21", @@ -2532,9 +2537,9 @@ } }, "node_modules/@types/jest": { - "version": "29.5.12", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.12.tgz", - "integrity": "sha512-eDC8bTvT/QhYdxJAulQikueigY5AsdBRH2yDKW3yveW7svY3+DzN84/2NUgkw10RTiJbWqZrTtoGVdYlvFJdLw==", + "version": "29.5.14", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.14.tgz", + "integrity": "sha512-ZN+4sdnLUbo8EVvVc2ao0GFW6oVrQRPn4K2lglySj7APvSrgzxHiNNK99us4WDMi57xxA2yggblIAMNhXOotLQ==", "dev": true, "dependencies": { "expect": "^29.0.0", @@ -2581,9 +2586,9 @@ } }, "node_modules/@types/node": { - "version": "20.16.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.1.tgz", - "integrity": "sha512-zJDo7wEadFtSyNz5QITDfRcrhqDvQI1xQNQ0VoizPjM/dVAODqqIUWbJPkvsxmTI0MYRGRikcdjMPhOssnPejQ==", + "version": "20.17.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.9.tgz", + "integrity": "sha512-0JOXkRyLanfGPE2QRCwgxhzlBAvaRdCNMcvbd7jFfpmD4eEXll7LRwy5ymJmyeZqk7Nh7eD2LeUyQ68BbndmXw==", "dependencies": { "undici-types": "~6.19.2" } @@ -2930,133 +2935,133 @@ "dev": true }, "node_modules/@webassemblyjs/ast": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", - "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.14.1.tgz", + "integrity": "sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==", "dependencies": { - "@webassemblyjs/helper-numbers": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + "@webassemblyjs/helper-numbers": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2" } }, "node_modules/@webassemblyjs/floating-point-hex-parser": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", - "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz", + "integrity": "sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==" }, "node_modules/@webassemblyjs/helper-api-error": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", - "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz", + "integrity": "sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==" }, "node_modules/@webassemblyjs/helper-buffer": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", - "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==" + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz", + "integrity": "sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==" }, "node_modules/@webassemblyjs/helper-numbers": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", - "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz", + "integrity": "sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==", "dependencies": { - "@webassemblyjs/floating-point-hex-parser": "1.11.6", - "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/floating-point-hex-parser": "1.13.2", + "@webassemblyjs/helper-api-error": "1.13.2", "@xtuc/long": "4.2.2" } }, "node_modules/@webassemblyjs/helper-wasm-bytecode": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", - "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz", + "integrity": "sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==" }, "node_modules/@webassemblyjs/helper-wasm-section": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", - "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz", + "integrity": "sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/wasm-gen": "1.12.1" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/wasm-gen": "1.14.1" } }, "node_modules/@webassemblyjs/ieee754": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", - "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz", + "integrity": "sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==", "dependencies": { "@xtuc/ieee754": "^1.2.0" } }, "node_modules/@webassemblyjs/leb128": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", - "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.13.2.tgz", + "integrity": "sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==", "dependencies": { "@xtuc/long": "4.2.2" } }, "node_modules/@webassemblyjs/utf8": { - "version": "1.11.6", - "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", - "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==" + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.13.2.tgz", + "integrity": "sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==" }, "node_modules/@webassemblyjs/wasm-edit": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", - "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz", + "integrity": "sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/helper-wasm-section": "1.12.1", - "@webassemblyjs/wasm-gen": "1.12.1", - "@webassemblyjs/wasm-opt": "1.12.1", - "@webassemblyjs/wasm-parser": "1.12.1", - "@webassemblyjs/wast-printer": "1.12.1" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/helper-wasm-section": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-opt": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1", + "@webassemblyjs/wast-printer": "1.14.1" } }, "node_modules/@webassemblyjs/wasm-gen": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", - "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz", + "integrity": "sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" } }, "node_modules/@webassemblyjs/wasm-opt": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", - "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz", + "integrity": "sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-buffer": "1.12.1", - "@webassemblyjs/wasm-gen": "1.12.1", - "@webassemblyjs/wasm-parser": "1.12.1" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-buffer": "1.14.1", + "@webassemblyjs/wasm-gen": "1.14.1", + "@webassemblyjs/wasm-parser": "1.14.1" } }, "node_modules/@webassemblyjs/wasm-parser": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", - "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz", + "integrity": "sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", - "@webassemblyjs/helper-api-error": "1.11.6", - "@webassemblyjs/helper-wasm-bytecode": "1.11.6", - "@webassemblyjs/ieee754": "1.11.6", - "@webassemblyjs/leb128": "1.11.6", - "@webassemblyjs/utf8": "1.11.6" + "@webassemblyjs/ast": "1.14.1", + "@webassemblyjs/helper-api-error": "1.13.2", + "@webassemblyjs/helper-wasm-bytecode": "1.13.2", + "@webassemblyjs/ieee754": "1.13.2", + "@webassemblyjs/leb128": "1.13.2", + "@webassemblyjs/utf8": "1.13.2" } }, "node_modules/@webassemblyjs/wast-printer": { - "version": "1.12.1", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", - "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz", + "integrity": "sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==", "dependencies": { - "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/ast": "1.14.1", "@xtuc/long": "4.2.2" } }, @@ -3094,9 +3099,9 @@ } }, "node_modules/acorn": { - "version": "8.11.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz", - "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==", + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", "bin": { "acorn": "bin/acorn" }, @@ -3104,14 +3109,6 @@ "node": ">=0.4.0" } }, - "node_modules/acorn-import-attributes": { - "version": "1.9.5", - "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", - "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", - "peerDependencies": { - "acorn": "^8" - } - }, "node_modules/acorn-jsx": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", @@ -3269,12 +3266,15 @@ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" }, "node_modules/array-buffer-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", - "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", "dependencies": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -3286,15 +3286,16 @@ "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" }, "node_modules/array-includes": { - "version": "3.1.7", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz", - "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==", + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz", + "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0", + "get-intrinsic": "^1.2.4", "is-string": "^1.0.7" }, "engines": { @@ -3319,16 +3320,17 @@ } }, "node_modules/array.prototype.findlastindex": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz", - "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz", + "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.2.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-shim-unscopables": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -3374,16 +3376,17 @@ } }, "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz", - "integrity": "sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1", - "is-array-buffer": "^3.0.2", + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", "is-shared-array-buffer": "^1.0.2" }, "engines": { @@ -3410,9 +3413,12 @@ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" }, "node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, "engines": { "node": ">= 0.4" }, @@ -3603,9 +3609,9 @@ } }, "node_modules/body-parser": { - "version": "1.20.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", - "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", "dependencies": { "bytes": "3.1.2", "content-type": "~1.0.5", @@ -3615,7 +3621,7 @@ "http-errors": "2.0.0", "iconv-lite": "0.4.24", "on-finished": "2.4.1", - "qs": "6.11.0", + "qs": "6.13.0", "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" @@ -3660,9 +3666,9 @@ } }, "node_modules/browserslist": { - "version": "4.22.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.2.tgz", - "integrity": "sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A==", + "version": "4.24.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", + "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", "funding": [ { "type": "opencollective", @@ -3678,10 +3684,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001565", - "electron-to-chromium": "^1.4.601", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" + "caniuse-lite": "^1.0.30001669", + "electron-to-chromium": "^1.5.41", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.1" }, "bin": { "browserslist": "cli.js" @@ -3846,9 +3852,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001566", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001566.tgz", - "integrity": "sha512-ggIhCsTxmITBAMmK8yZjEhCO5/47jKXPu6Dha/wuCS4JePVL+3uiDEBuhu2aIoT+bqTOR8L76Ip1ARL9xYsEJA==", + "version": "1.0.30001683", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001683.tgz", + "integrity": "sha512-iqmNnThZ0n70mNwvxpEC2nBJ037ZHZUoBI5Gorh1Mw6IlEAZujEoU1tXA628iZfzm7R9FvFzxbfdgml82a3k8Q==", "funding": [ { "type": "opencollective", @@ -4276,9 +4282,9 @@ } }, "node_modules/comment-json": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/comment-json/-/comment-json-4.2.3.tgz", - "integrity": "sha512-SsxdiOf064DWoZLH799Ata6u7iV658A11PlWtZATDlXPpKGJnbJZ5Z24ybixAi+LUUqJ/GKowAejtC5GFUG7Tw==", + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/comment-json/-/comment-json-4.2.5.tgz", + "integrity": "sha512-bKw/r35jR3HGt5PEPm1ljsQQGyCrR8sFGNiN5L+ykDHdpO8Smxkrkla9Yi6NkQyUrb8V54PGhfMs6NrIwtxtdw==", "dependencies": { "array-timsort": "^1.0.3", "core-util-is": "^1.0.3", @@ -4355,9 +4361,9 @@ "dev": true }, "node_modules/cookie": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", - "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", "engines": { "node": ">= 0.6" } @@ -4443,9 +4449,9 @@ "devOptional": true }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -4455,6 +4461,54 @@ "node": ">= 8" } }, + "node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/dayjs": { "version": "1.11.13", "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz", @@ -4634,9 +4688,9 @@ } }, "node_modules/dotenv": { - "version": "16.4.5", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz", - "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==", + "version": "16.4.7", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz", + "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==", "engines": { "node": ">=12" }, @@ -4686,9 +4740,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.606", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.606.tgz", - "integrity": "sha512-Zdv0XuhfyWZUsQ5Uq59d43ZmZOdoGZNWjeN4WCxxlQaP8crAWdnWcTxfHKcaJl6PW2SWpHx6DsxSx7v6KcGCuw==" + "version": "1.5.63", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.63.tgz", + "integrity": "sha512-ddeXKuY9BHo/mw145axlyWjlJ1UBt4WK3AlvkT7W2AbqfRQoacVoRUCF6wL3uIx/8wT9oLKXzI+rFqHHscByaA==" }, "node_modules/emittery": { "version": "0.13.1", @@ -4713,9 +4767,9 @@ "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==" }, "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "engines": { "node": ">= 0.8" } @@ -4753,49 +4807,56 @@ } }, "node_modules/es-abstract": { - "version": "1.22.3", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.3.tgz", - "integrity": "sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==", - "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "arraybuffer.prototype.slice": "^1.0.2", - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.5", - "es-set-tostringtag": "^2.0.1", + "version": "1.23.5", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.5.tgz", + "integrity": "sha512-vlmniQ0WNPwXqA0BnmwV3Ng7HxiGlh6r5U6JcTMNx8OilcAGqVJBHJcPjqOMaczU9fRuRK5Px2BdVyPRnKMMVQ==", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", "es-to-primitive": "^1.2.1", "function.prototype.name": "^1.1.6", - "get-intrinsic": "^1.2.2", - "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.4", "gopd": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", "has-symbols": "^1.0.3", - "hasown": "^2.0.0", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", "is-callable": "^1.2.7", - "is-negative-zero": "^2.0.2", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", + "is-shared-array-buffer": "^1.0.3", "is-string": "^1.0.7", - "is-typed-array": "^1.1.12", + "is-typed-array": "^1.1.13", "is-weakref": "^1.0.2", - "object-inspect": "^1.13.1", + "object-inspect": "^1.13.3", "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.1", - "safe-array-concat": "^1.0.1", - "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.8", - "string.prototype.trimend": "^1.0.7", - "string.prototype.trimstart": "^1.0.7", - "typed-array-buffer": "^1.0.0", - "typed-array-byte-length": "^1.0.0", - "typed-array-byte-offset": "^1.0.0", - "typed-array-length": "^1.0.4", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.3", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.13" + "which-typed-array": "^1.1.15" }, "engines": { "node": ">= 0.4" @@ -4849,14 +4910,25 @@ "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.4.1.tgz", "integrity": "sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==" }, + "node_modules/es-object-atoms": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", + "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/es-set-tostringtag": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz", - "integrity": "sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", "dependencies": { - "get-intrinsic": "^1.2.2", - "has-tostringtag": "^1.0.0", - "hasown": "^2.0.0" + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" }, "engines": { "node": ">= 0.4" @@ -4888,9 +4960,9 @@ } }, "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "engines": { "node": ">=6" } @@ -5070,9 +5142,9 @@ } }, "node_modules/eslint-module-utils": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", - "integrity": "sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz", + "integrity": "sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==", "dev": true, "dependencies": { "debug": "^3.2.7" @@ -5136,34 +5208,36 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.29.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", - "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", + "version": "2.31.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz", + "integrity": "sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==", "dev": true, "dependencies": { - "array-includes": "^3.1.7", - "array.prototype.findlastindex": "^1.2.3", + "@rtsao/scc": "^1.1.0", + "array-includes": "^3.1.8", + "array.prototype.findlastindex": "^1.2.5", "array.prototype.flat": "^1.3.2", "array.prototype.flatmap": "^1.3.2", "debug": "^3.2.7", "doctrine": "^2.1.0", "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.8.0", - "hasown": "^2.0.0", - "is-core-module": "^2.13.1", + "eslint-module-utils": "^2.12.0", + "hasown": "^2.0.2", + "is-core-module": "^2.15.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", - "object.fromentries": "^2.0.7", - "object.groupby": "^1.0.1", - "object.values": "^1.1.7", + "object.fromentries": "^2.0.8", + "object.groupby": "^1.0.3", + "object.values": "^1.2.0", "semver": "^6.3.1", + "string.prototype.trimend": "^1.0.8", "tsconfig-paths": "^3.15.0" }, "engines": { "node": ">=4" }, "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" } }, "node_modules/eslint-plugin-import/node_modules/debug": { @@ -5608,36 +5682,36 @@ } }, "node_modules/express": { - "version": "4.19.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", - "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.2", + "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.6.0", + "cookie": "0.7.1", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "1.2.0", + "finalhandler": "1.3.1", "fresh": "0.5.2", "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", + "merge-descriptors": "1.0.3", "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", - "qs": "6.11.0", + "qs": "6.13.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", + "send": "0.19.0", + "serve-static": "1.16.2", "setprototypeof": "1.2.0", "statuses": "2.0.1", "type-is": "~1.6.18", @@ -5646,6 +5720,10 @@ }, "engines": { "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/express/node_modules/debug": { @@ -5662,9 +5740,9 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/express/node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==" }, "node_modules/external-editor": { "version": "3.1.0", @@ -5822,12 +5900,12 @@ } }, "node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", "dependencies": { "debug": "2.6.9", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "on-finished": "2.4.1", "parseurl": "~1.3.3", @@ -5998,9 +6076,9 @@ } }, "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz", + "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==", "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.8", @@ -6179,12 +6257,13 @@ } }, "node_modules/get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" }, "engines": { "node": ">= 0.4" @@ -6207,9 +6286,9 @@ } }, "node_modules/glob": { - "version": "10.4.2", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", - "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", @@ -6221,9 +6300,6 @@ "bin": { "glob": "dist/esm/bin.mjs" }, - "engines": { - "node": ">=16 || 14 >=14.18" - }, "funding": { "url": "https://github.com/sponsors/isaacs" } @@ -6282,11 +6358,12 @@ } }, "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", "dependencies": { - "define-properties": "^1.1.3" + "define-properties": "^1.2.1", + "gopd": "^1.0.1" }, "engines": { "node": ">= 0.4" @@ -6401,9 +6478,9 @@ } }, "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", "engines": { "node": ">= 0.4" }, @@ -6423,11 +6500,11 @@ } }, "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "dependencies": { - "has-symbols": "^1.0.2" + "has-symbols": "^1.0.3" }, "engines": { "node": ">= 0.4" @@ -6437,9 +6514,9 @@ } }, "node_modules/hasown": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", - "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", "dependencies": { "function-bind": "^1.1.2" }, @@ -6448,9 +6525,9 @@ } }, "node_modules/helmet": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/helmet/-/helmet-7.1.0.tgz", - "integrity": "sha512-g+HZqgfbpXdCkme/Cd/mZkV0aV3BZZZSugecH03kl38m/Kmdx8jKjBikpDj2cr+Iynv4KpYEviojNdTJActJAg==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/helmet/-/helmet-7.2.0.tgz", + "integrity": "sha512-ZRiwvN089JfMXokizgqEPXsl2Guk094yExfoDXR0cBYWxtBbaSww/w+vT4WEJsBW2iTUi1GgZ6swmoug3Oy4Xw==", "engines": { "node": ">=16.0.0" } @@ -6650,11 +6727,11 @@ } }, "node_modules/internal-slot": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.6.tgz", - "integrity": "sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", "dependencies": { - "get-intrinsic": "^1.2.2", + "es-errors": "^1.3.0", "hasown": "^2.0.0", "side-channel": "^1.0.4" }, @@ -6671,13 +6748,15 @@ } }, "node_modules/is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", "dependencies": { "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -6753,12 +6832,29 @@ } }, "node_modules/is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", "dev": true, "dependencies": { - "hasown": "^2.0.0" + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "dependencies": { + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -6827,9 +6923,9 @@ } }, "node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", "engines": { "node": ">= 0.4" }, @@ -6885,11 +6981,14 @@ } }, "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", "dependencies": { - "call-bind": "^1.0.2" + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -6935,11 +7034,11 @@ } }, "node_modules/is-typed-array": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", - "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", "dependencies": { - "which-typed-array": "^1.1.11" + "which-typed-array": "^1.1.14" }, "engines": { "node": ">= 0.4" @@ -7989,9 +8088,9 @@ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" }, "node_modules/lint-staged": { - "version": "15.2.9", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.2.9.tgz", - "integrity": "sha512-BZAt8Lk3sEnxw7tfxM7jeZlPRuT4M68O0/CwZhhaw6eeWu0Lz5eERE3m386InivXB64fp/mDID452h48tvKlRQ==", + "version": "15.2.10", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.2.10.tgz", + "integrity": "sha512-5dY5t743e1byO19P9I4b3x8HJwalIznL5E1FWYnU6OWw33KxNBSLAc6Cy7F2PsFEO8FKnLwjwm5hx7aMF0jzZg==", "dev": true, "dependencies": { "chalk": "~5.3.0", @@ -8000,7 +8099,7 @@ "execa": "~8.0.1", "lilconfig": "~3.1.2", "listr2": "~8.2.4", - "micromatch": "~4.0.7", + "micromatch": "~4.0.8", "pidtree": "~0.6.0", "string-argv": "~0.3.2", "yaml": "~2.5.0" @@ -8541,9 +8640,9 @@ } }, "node_modules/logform": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/logform/-/logform-2.6.0.tgz", - "integrity": "sha512-1ulHeNPp6k/LD8H91o7VYFBng5i1BDE7HoKxVbZiGFidS1Rj65qcywLxX+pVfAPoQJEjRdvKcusKwOupHCVOVQ==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/logform/-/logform-2.7.0.tgz", + "integrity": "sha512-TFYA4jnP7PVbmlBIfhlSe+WKxs9dklXMTEGcBCIvLhE/Tn3H6Gk1norupVW7m5Cnd4bLcr08AytbyV/xj7f/kQ==", "dependencies": { "@colors/colors": "1.6.0", "@types/triple-beam": "^1.3.2", @@ -8656,9 +8755,12 @@ } }, "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, "node_modules/merge-stream": { "version": "2.0.0", @@ -8882,9 +8984,9 @@ } }, "node_modules/nestjs-cls": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/nestjs-cls/-/nestjs-cls-4.4.1.tgz", - "integrity": "sha512-4yhldwm/cJ02lQ8ZAdM8KQ7gMfjAc1z3fo5QAQgXNyN4N6X5So9BCwv+BTLRugDCkELUo3qtzQHnKhGYL/ftPg==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/nestjs-cls/-/nestjs-cls-4.5.0.tgz", + "integrity": "sha512-oi3GNCc5pnsnVI5WJKMDwmg4NP+JyEw+edlwgepyUba5+RGGtJzpbVaaxXGW1iPbDuQde3/fA8Jdjq9j88BVcQ==", "engines": { "node": ">=16" }, @@ -8943,9 +9045,9 @@ "dev": true }, "node_modules/node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==" + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==" }, "node_modules/normalize-path": { "version": "3.0.0", @@ -8976,9 +9078,12 @@ } }, "node_modules/object-inspect": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", - "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.3.tgz", + "integrity": "sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==", + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -9023,14 +9128,15 @@ } }, "node_modules/object.fromentries": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz", - "integrity": "sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==", + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -9040,26 +9146,28 @@ } }, "node_modules/object.groupby": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz", - "integrity": "sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", + "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "get-intrinsic": "^1.2.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.2" + }, + "engines": { + "node": ">= 0.4" } }, "node_modules/object.values": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz", - "integrity": "sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz", + "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -9352,9 +9460,9 @@ } }, "node_modules/path-to-regexp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-3.2.0.tgz", - "integrity": "sha512-jczvQbCUS7XmS7o+y1aEO9OBVFeZBQ1MDSEqmO7xSoPgOPoowY/SxLpZ6Vh97/8qHZOteiCKb7gkG9gA2ZUxJA==" + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-3.3.0.tgz", + "integrity": "sha512-qyCH421YQPS2WFDxDjftfc1ZR5WKQzVzqsp4n9M2kQhVOo/ByahFoUNJfl58kOcEGfQ//7weFTDhm+ss8Ecxgw==" }, "node_modules/path-type": { "version": "4.0.0", @@ -9468,9 +9576,9 @@ } }, "node_modules/picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==" }, "node_modules/picomatch": { "version": "2.3.1", @@ -9576,6 +9684,14 @@ "node": ">=4" } }, + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/postgres-array": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/postgres-array/-/postgres-array-2.0.0.tgz", @@ -9629,9 +9745,9 @@ } }, "node_modules/prettier": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz", - "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==", + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.4.2.tgz", + "integrity": "sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" @@ -9763,11 +9879,11 @@ ] }, "node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dependencies": { - "side-channel": "^1.0.4" + "side-channel": "^1.0.6" }, "engines": { "node": ">=0.6" @@ -9869,13 +9985,14 @@ "peer": true }, "node_modules/regexp.prototype.flags": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz", - "integrity": "sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz", + "integrity": "sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "set-function-name": "^2.0.0" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.2" }, "engines": { "node": ">= 0.4" @@ -9986,25 +10103,17 @@ } }, "node_modules/response-time": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/response-time/-/response-time-2.3.2.tgz", - "integrity": "sha512-MUIDaDQf+CVqflfTdQ5yam+aYCkXj1PY8fjlPDQ6ppxJlmgZb864pHtA750mayywNg8tx4rS7qH9JXd/OF+3gw==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/response-time/-/response-time-2.3.3.tgz", + "integrity": "sha512-SsjjOPHl/FfrTQNgmc5oen8Hr1Jxpn6LlHNXxCIFdYMHuK1kMeYMobb9XN3mvxaGQm3dbegqYFMX4+GDORfbWg==", "dependencies": { - "depd": "~1.1.0", + "depd": "~2.0.0", "on-headers": "~1.0.1" }, "engines": { "node": ">= 0.8.0" } }, - "node_modules/response-time/node_modules/depd": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", - "engines": { - "node": ">= 0.6" - } - }, "node_modules/restore-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", @@ -10092,12 +10201,12 @@ } }, "node_modules/safe-array-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.1.tgz", - "integrity": "sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", "has-symbols": "^1.0.3", "isarray": "^2.0.5" }, @@ -10133,22 +10242,25 @@ ] }, "node_modules/safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", "is-regex": "^1.1.4" }, + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz", + "integrity": "sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==", "engines": { "node": ">=10" } @@ -10215,9 +10327,9 @@ } }, "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", "dependencies": { "debug": "2.6.9", "depd": "2.0.0", @@ -10250,6 +10362,14 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, "node_modules/send/node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -10264,14 +10384,14 @@ } }, "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", "dependencies": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" }, "engines": { "node": ">= 0.8.0" @@ -10294,13 +10414,14 @@ } }, "node_modules/set-function-name": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.1.tgz", - "integrity": "sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", "dependencies": { - "define-data-property": "^1.0.1", + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", "functions-have-names": "^1.2.3", - "has-property-descriptors": "^1.0.0" + "has-property-descriptors": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -10343,13 +10464,17 @@ } }, "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -10595,13 +10720,14 @@ } }, "node_modules/string.prototype.trim": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz", - "integrity": "sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==", + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -10611,26 +10737,29 @@ } }, "node_modules/string.prototype.trimend": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz", - "integrity": "sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/string.prototype.trimstart": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz", - "integrity": "sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1" + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -11261,12 +11390,13 @@ } }, "node_modules/tsconfig-paths-webpack-plugin": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/tsconfig-paths-webpack-plugin/-/tsconfig-paths-webpack-plugin-4.1.0.tgz", - "integrity": "sha512-xWFISjviPydmtmgeUAuXp4N1fky+VCtfhOkDUFIv5ea7p4wuTomI4QTrXvFBX2S4jZsmyTSrStQl+E+4w+RzxA==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths-webpack-plugin/-/tsconfig-paths-webpack-plugin-4.2.0.tgz", + "integrity": "sha512-zbem3rfRS8BgeNK50Zz5SIQgXzLafiHjOwUAvk/38/o1jHn/V5QAgVUcz884or7WYcPaH3N2CIfUc2u0ul7UcA==", "dependencies": { "chalk": "^4.1.0", "enhanced-resolve": "^5.7.0", + "tapable": "^2.2.1", "tsconfig-paths": "^4.1.2" }, "engines": { @@ -11282,9 +11412,9 @@ } }, "node_modules/tslib": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz", - "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==" + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==" }, "node_modules/type-check": { "version": "0.4.0", @@ -11332,27 +11462,28 @@ } }, "node_modules/typed-array-buffer": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.0.tgz", - "integrity": "sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.1", - "is-typed-array": "^1.1.10" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" }, "engines": { "node": ">= 0.4" } }, "node_modules/typed-array-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.0.tgz", - "integrity": "sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", "dependencies": { - "call-bind": "^1.0.2", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" }, "engines": { "node": ">= 0.4" @@ -11362,15 +11493,16 @@ } }, "node_modules/typed-array-byte-offset": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.0.tgz", - "integrity": "sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz", + "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==", "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "has-proto": "^1.0.1", - "is-typed-array": "^1.1.10" + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" }, "engines": { "node": ">= 0.4" @@ -11380,13 +11512,19 @@ } }, "node_modules/typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz", + "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==", "dependencies": { - "call-bind": "^1.0.2", + "call-bind": "^1.0.7", "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -11545,9 +11683,9 @@ "integrity": "sha512-i5lLI6iw9AU3Uu4szRNPPEkomnkjRTaVt9hy/bn5g/oSzekBSMeLZblcjP74AW0vBabqERLLIrz+gR8QYR54Tw==" }, "node_modules/typescript": { - "version": "5.5.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", - "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz", + "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -11641,9 +11779,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", + "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", "funding": [ { "type": "opencollective", @@ -11659,8 +11797,8 @@ } ], "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" + "escalade": "^3.2.0", + "picocolors": "^1.1.0" }, "bin": { "update-browserslist-db": "cli.js" @@ -11773,20 +11911,19 @@ "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" }, "node_modules/webpack": { - "version": "5.93.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.93.0.tgz", - "integrity": "sha512-Y0m5oEY1LRuwly578VqluorkXbvXKh7U3rLoQCEO04M97ScRr44afGVkI0FQFsXzysk5OgFAxjZAb9rsGQVihA==", - "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.5", - "@webassemblyjs/ast": "^1.12.1", - "@webassemblyjs/wasm-edit": "^1.12.1", - "@webassemblyjs/wasm-parser": "^1.12.1", - "acorn": "^8.7.1", - "acorn-import-attributes": "^1.9.5", - "browserslist": "^4.21.10", + "version": "5.97.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.97.1.tgz", + "integrity": "sha512-EksG6gFY3L1eFMROS/7Wzgrii5mBAFe4rIr3r2BTfo7bcc+DWwFZ4OJ/miOuHJO/A85HwyI4eQ0F6IKXesO7Fg==", + "dependencies": { + "@types/eslint-scope": "^3.7.7", + "@types/estree": "^1.0.6", + "@webassemblyjs/ast": "^1.14.1", + "@webassemblyjs/wasm-edit": "^1.14.1", + "@webassemblyjs/wasm-parser": "^1.14.1", + "acorn": "^8.14.0", + "browserslist": "^4.24.0", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.17.0", + "enhanced-resolve": "^5.17.1", "es-module-lexer": "^1.2.1", "eslint-scope": "5.1.1", "events": "^3.2.0", @@ -11873,15 +12010,15 @@ } }, "node_modules/which-typed-array": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz", - "integrity": "sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==", + "version": "1.1.15", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz", + "integrity": "sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==", "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", "for-each": "^0.3.3", "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" + "has-tostringtag": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -11891,33 +12028,33 @@ } }, "node_modules/winston": { - "version": "3.14.2", - "resolved": "https://registry.npmjs.org/winston/-/winston-3.14.2.tgz", - "integrity": "sha512-CO8cdpBB2yqzEf8v895L+GNKYJiEq8eKlHU38af3snQBQ+sdAIUepjMSguOIJC7ICbzm0ZI+Af2If4vIJrtmOg==", + "version": "3.17.0", + "resolved": "https://registry.npmjs.org/winston/-/winston-3.17.0.tgz", + "integrity": "sha512-DLiFIXYC5fMPxaRg832S6F5mJYvePtmO5G9v9IgUFPhXm9/GkXarH/TUrBAVzhTCzAj9anE/+GjrgXp/54nOgw==", "dependencies": { "@colors/colors": "^1.6.0", "@dabh/diagnostics": "^2.0.2", "async": "^3.2.3", "is-stream": "^2.0.0", - "logform": "^2.6.0", + "logform": "^2.7.0", "one-time": "^1.0.0", "readable-stream": "^3.4.0", "safe-stable-stringify": "^2.3.1", "stack-trace": "0.0.x", "triple-beam": "^1.3.0", - "winston-transport": "^4.7.0" + "winston-transport": "^4.9.0" }, "engines": { "node": ">= 12.0.0" } }, "node_modules/winston-transport": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.7.0.tgz", - "integrity": "sha512-ajBj65K5I7denzer2IYW6+2bNIVqLGDHqDw3Ow8Ohh+vdW+rv4MZ6eiDvHoKhfJFZ2auyN8byXieDDJ96ViONg==", + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.9.0.tgz", + "integrity": "sha512-8drMJ4rkgaPo1Me4zD/3WLfI/zPdA9o2IipKODunnGDcuqbHwjsbB79ylv04LCGGzU0xQ6vTznOMpQGaLhhm6A==", "dependencies": { - "logform": "^2.3.2", - "readable-stream": "^3.6.0", + "logform": "^2.7.0", + "readable-stream": "^3.6.2", "triple-beam": "^1.3.0" }, "engines": { diff --git a/vehicles/package.json b/vehicles/package.json index 2e9e7fa73..17542cb4c 100644 --- a/vehicles/package.json +++ b/vehicles/package.json @@ -45,49 +45,49 @@ "@automapper/core": "^8.8.1", "@automapper/nestjs": "^8.8.1", "@automapper/types": "^6.3.1", - "@nestjs/axios": "^3.0.3", - "@nestjs/cache-manager": "^2.2.2", - "@nestjs/cli": "^10.4.4", - "@nestjs/common": "^10.4.1", - "@nestjs/config": "^3.2.3", - "@nestjs/core": "^10.4.1", + "@nestjs/axios": "^3.1.3", + "@nestjs/cache-manager": "^2.3.0", + "@nestjs/cli": "^10.4.9", + "@nestjs/common": "^10.4.15", + "@nestjs/config": "^3.3.0", + "@nestjs/core": "^10.4.15", "@nestjs/passport": "^10.0.3", - "@nestjs/platform-express": "^10.4.1", - "@nestjs/schematics": "^10.1.4", - "@nestjs/swagger": "^7.4.0", - "@nestjs/testing": "^10.4.1", + "@nestjs/platform-express": "^10.4.15", + "@nestjs/schematics": "^10.2.3", + "@nestjs/swagger": "^7.4.2", + "@nestjs/testing": "^10.4.15", "@nestjs/typeorm": "^10.0.2", "@types/response-time": "^2.3.8", "cache-manager": "^5.7.6", "class-transformer": "^0.5.1", "class-validator": "^0.14.1", "dayjs": "^1.11.13", - "dotenv": "^16.4.5", - "form-data": "^4.0.0", + "dotenv": "^16.4.7", + "form-data": "^4.0.1", "handlebars": "^4.7.8", - "helmet": "^7.1.0", + "helmet": "^7.2.0", "jwks-rsa": "^3.1.0", "mssql": "^10.0.4", "nest-winston": "^1.10.0", - "nestjs-cls": "^4.4.1", + "nestjs-cls": "^4.5.0", "nestjs-typeorm-paginate": "^4.0.4", "passport": "^0.7.0", "passport-jwt": "^4.0.1", - "response-time": "^2.3.2", + "response-time": "^2.3.3", "rxjs": "^7.8.1", "swagger-ui-express": "^5.0.1", "typeorm": "^0.3.20", "uuid": "^9.0.1", - "winston": "^3.14.2" + "winston": "^3.17.0" }, "devDependencies": { - "@golevelup/ts-jest": "^0.5.4", + "@golevelup/ts-jest": "^0.6.1", "@types/cache-manager": "^4.0.6", "@types/crypto-js": "^4.2.2", "@types/express": "^4.17.21", - "@types/jest": "^29.5.12", + "@types/jest": "^29.5.14", "@types/multer": "^1.4.12", - "@types/node": "^20.16.1", + "@types/node": "^20.17.9", "@types/passport-jwt": "^4.0.1", "@types/supertest": "^6.0.2", "@types/uuid": "^10.0.0", @@ -95,7 +95,7 @@ "eslint-config-airbnb-base": "^15.0.0", "eslint-config-prettier": "^9.1.0", "eslint-config-standard": "^17.1.0", - "eslint-plugin-import": "^2.29.1", + "eslint-plugin-import": "^2.31.0", "eslint-plugin-node": "^11.1.0", "eslint-plugin-prettier": "^5.2.1", "eslint-plugin-promise": "^6.6.0", @@ -103,8 +103,8 @@ "jest": "^29.7.0", "jest-badges": "^0.1.3", "jest-sonar-reporter": "^2.0.0", - "lint-staged": "^15.2.9", - "prettier": "^3.3.3", + "lint-staged": "^15.2.10", + "prettier": "^3.4.2", "rimraf": "^5.0.10", "source-map-support": "^0.5.21", "supertest": "^7.0.0", @@ -112,7 +112,7 @@ "ts-loader": "^9.5.1", "ts-node": "^10.9.2", "tsconfig-paths": "^4.2.0", - "typescript": "^5.5.4", + "typescript": "^5.7.2", "typescript-eslint": "^7.18.0" }, "jest": { From f93c329813c7f8b1852737ab223eda2390fc09b0 Mon Sep 17 00:00:00 2001 From: cberg-aot <93226309+cberg-aot@users.noreply.github.com> Date: Mon, 9 Dec 2024 14:10:21 -0600 Subject: [PATCH 11/25] feat: e2e regression testing (#1701) --- .github/workflows/.tests.yml | 74 ------------------ .github/workflows/e2e-regression-tests.yml | 91 ++++++++++++++++++++++ .github/workflows/experiment.yml | 15 ---- .github/workflows/notifications.yml | 2 +- 4 files changed, 92 insertions(+), 90 deletions(-) delete mode 100644 .github/workflows/.tests.yml create mode 100644 .github/workflows/e2e-regression-tests.yml delete mode 100644 .github/workflows/experiment.yml diff --git a/.github/workflows/.tests.yml b/.github/workflows/.tests.yml deleted file mode 100644 index 03042531b..000000000 --- a/.github/workflows/.tests.yml +++ /dev/null @@ -1,74 +0,0 @@ -name: Test Workflow - -on: - workflow_call: - inputs: - ### Required - target: - description: 'PR number, test or prod.' - required: true - type: string - -jobs: - integration-tests: - name: Integration Tests - runs-on: ubuntu-22.04 - timeout-minutes: 1 - steps: - - uses: actions/checkout@v4 - - id: cache-npm - uses: actions/cache@v4 - with: - path: ~/.npm - key: ${{ runner.os }}-build-cache-node-modules-${{ hashFiles('**/package-lock.json') }} - restore-keys: | - ${{ runner.os }}-build-cache-node-modules- - ${{ runner.os }}-build- - ${{ runner.os }}- - - - name: Integration tests - env: - API_NAME: nest - BASE_URL: https://${{ github.event.repository.name }}-${{ inputs.target }}-frontend.apps.silver.devops.gov.bc.ca - run: | - cd integration-tests - npm ci - node src/main.js - - cypress-e2e: - name: E2E Tests - runs-on: ubuntu-22.04 - defaults: - run: - working-directory: frontend - strategy: - matrix: - browser: [chrome, firefox, edge] - timeout-minutes: 5 - steps: - - uses: actions/checkout@v4 - - id: cache-npm - uses: actions/cache@v4 - with: - path: ~/.npm - key: ${{ runner.os }}-build-cache-node-modules-${{ hashFiles('**/package-lock.json') }} - restore-keys: | - ${{ runner.os }}-build-cache-node-modules- - ${{ runner.os }}-build- - ${{ runner.os }}- - - - uses: cypress-io/github-action@v6 - name: Cypress run - env: - CYPRESS_baseUrl: https://${{ github.event.repository.name }}-${{ inputs.target }}-frontend.apps.silver.devops.gov.bc.ca/ - with: - config: pageLoadTimeout=10000 - working-directory: ./frontend - browser: ${{ matrix.browser }} - - - uses: actions/upload-artifact@v4 - if: failure() - with: - name: cypress-screenshots - path: ./cypress/screenshots - if-no-files-found: ignore # 'warn' or 'error' are also available, defaults to `warn` diff --git a/.github/workflows/e2e-regression-tests.yml b/.github/workflows/e2e-regression-tests.yml new file mode 100644 index 000000000..c72c6b8df --- /dev/null +++ b/.github/workflows/e2e-regression-tests.yml @@ -0,0 +1,91 @@ +name: E2E Regression Tests + +on: + workflow_run: + workflows: ['PR Opened'] + types: [completed] + workflow_dispatch: + inputs: + ### Required + target: + description: 'PR number, test, uat or prod.' + default: 'test' + required: true + type: string + +jobs: + vars: + name: Set Variables + outputs: + target: ${{ steps.env.outputs.target }} + environment: ${{ steps.env.outputs.environment }} + runs-on: ubuntu-22.04 + steps: + - name: env + id: env + run: | + pr="${{github.event.workflow_run.pull_requests[0].number}}" + if [[pr]]; then + target="$pr" + environment="dev" + else + target=${{inputs.target}} + environment=${{inputs.target}} + fi + echo target=$target | tee $GITHUB_OUTPUT + echo environment=$environment | tee $GITHUB_OUTPUT + + ${{matrix.test}}: + name: ${{matrix.test}} + needs: [vars] + environment: ${{needs.vars.outputs.environment}} + runs-on: ubuntu-22.04 + defaults: + run: + working-directory: tests/ + strategy: + matrix: + browser: + - chrome + - edge + - firefox + test: + - 'bceid-crud-power-units.cy.js' + - 'bceid-crud-trailers.cy.js' + - 'bceid-new-term-oversize.cy.js' + - 'bceid-new-term-overweight.cy.js' + - 'bceid-update-term-oversize.cy.js' + - 'idir-amend-term-oversize.cy.js' + - 'idir-void-term-oversize.cy.js' + + timeout-minutes: 10 + steps: + - uses: actions/checkout@v4 + + - uses: cypress-io/github-action@v6.7.7 + name: Cypress run + env: + CYPRESS_baseUrl: https://${{ github.event.repository.name }}-${{ needs.vars.outputs.target || 'test' }}-frontend.apps.silver.devops.gov.bc.ca/ + CYPRESS_bceid_username: ${{vars.BCEID_USERNAME}} + CYPRESS_bceid_password: ${{secrets.BCEID_PASSWORD}} + with: + browser: ${{ matrix.browser }} + config: pageLoadTimeout=10000,video=true + spec: cypress/e2e/${{matrix.test}} + working-directory: tests + + - uses: actions/upload-artifact@v4 + if: always() + with: + name: ${{matrix.test}} screenshot + path: tests/cypress/screenshots/ + if-no-files-found: ignore # 'warn' or 'error' are also available, defaults to `warn` + + - uses: actions/upload-artifact@v4 + if: always() + with: + name: ${{matrix.test}} video + path: tests/cypress/videos/ + overwrite: true + if-no-files-found: ignore # 'warn' or 'error' are also available, defaults to `warn` + diff --git a/.github/workflows/experiment.yml b/.github/workflows/experiment.yml deleted file mode 100644 index 23b964858..000000000 --- a/.github/workflows/experiment.yml +++ /dev/null @@ -1,15 +0,0 @@ -on: - workflow_run: - workflows: ['PR Opened'] - types: [completed, requested] - branches: ["fix/loadtests9"] - -jobs: - on-success: - runs-on: ubuntu-latest - steps: - - run: | - echo "${{toJSON(github.event.workflow_run)}}" - echo "${{toJSON(github.event.workflow_run.pull_requests)}}" - echo "${{toJSON(github.event.workflow_run.pull_requests[0])}}" - echo "${{github.event.workflow_run.pull_requests[0].number}}" diff --git a/.github/workflows/notifications.yml b/.github/workflows/notifications.yml index 116e5c09a..baf93aa6c 100644 --- a/.github/workflows/notifications.yml +++ b/.github/workflows/notifications.yml @@ -1,7 +1,7 @@ name: Notifications on: workflow_run: - workflows: [PR,Merge] + workflows: ['PR Opened',Merge] types: - completed jobs: From e55a56c7623d4073b696411bfb316b91bd5e65a6 Mon Sep 17 00:00:00 2001 From: cberg-aot <93226309+cberg-aot@users.noreply.github.com> Date: Mon, 9 Dec 2024 14:19:33 -0600 Subject: [PATCH 12/25] fix: changed name to e2e-tests (#1702) --- .github/workflows/e2e-regression-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-regression-tests.yml b/.github/workflows/e2e-regression-tests.yml index c72c6b8df..00182084c 100644 --- a/.github/workflows/e2e-regression-tests.yml +++ b/.github/workflows/e2e-regression-tests.yml @@ -35,7 +35,7 @@ jobs: echo target=$target | tee $GITHUB_OUTPUT echo environment=$environment | tee $GITHUB_OUTPUT - ${{matrix.test}}: + e2e-tests: name: ${{matrix.test}} needs: [vars] environment: ${{needs.vars.outputs.environment}} From e8922f8b5c63a00f2df3a42f28fd630918ddf10f Mon Sep 17 00:00:00 2001 From: cberg-aot <93226309+cberg-aot@users.noreply.github.com> Date: Mon, 9 Dec 2024 14:42:20 -0600 Subject: [PATCH 13/25] feat: e2e regression tests added to repo. (and some loadtests) (#1703) --- tests/cypress.config.js | 25 + .../cypress/e2e/bceid-crud-power-units.cy.js | 111 + tests/cypress/e2e/bceid-crud-trailers.cy.js | 115 + .../cypress/e2e/bceid-new-term-oversize.cy.js | 85 + .../e2e/bceid-new-term-overweight.cy.js | 85 + .../e2e/bceid-update-term-oversize.cy.js | 88 + .../e2e/idir-amend-term-oversize.cy.js | 57 + .../cypress/e2e/idir-void-term-oversize.cy.js | 194 ++ tests/cypress/fixtures/example.json | 5 + tests/cypress/support/commands.js | 25 + tests/cypress/support/e2e.js | 21 + .../dops/orbc_load_test_plan_dops.jmx | 678 ++++++ ...test_plan_frontend_amend_term_oversize.jmx | 458 ++++ .../orbc_load_test_plan_frontend_bceid.jmx | 394 ++++ ..._load_test_plan_frontend_crud_vehicles.jmx | 545 +++++ ...c_load_test_plan_frontend_edit_profile.jmx | 416 ++++ .../orbc_load_test_plan_frontend_idir.jmx | 482 ++++ ...load_test_plan_frontend_idir_scenarios.jmx | 528 +++++ ..._load_test_plan_frontend_term_oversize.jmx | 334 +++ ...oad_test_plan_frontend_term_overweight.jmx | 332 +++ ..._test_plan_frontend_void_term_oversize.jmx | 277 +++ .../frontend/results/amend_term_oversize.csv | 7 + tests/loadtests/frontend/results/frontend.csv | 1 + .../orbc_load_test_plan_vehicles_bceid.jmx | 549 +++++ .../orbc_load_test_plan_vehicles_idir.jmx | 893 ++++++++ tests/package-lock.json | 1937 +++++++++++++++++ tests/package.json | 8 + ...test_plan_frontend_amend_term_oversize.jmx | 420 ++++ 28 files changed, 9070 insertions(+) create mode 100644 tests/cypress.config.js create mode 100644 tests/cypress/e2e/bceid-crud-power-units.cy.js create mode 100644 tests/cypress/e2e/bceid-crud-trailers.cy.js create mode 100644 tests/cypress/e2e/bceid-new-term-oversize.cy.js create mode 100644 tests/cypress/e2e/bceid-new-term-overweight.cy.js create mode 100644 tests/cypress/e2e/bceid-update-term-oversize.cy.js create mode 100644 tests/cypress/e2e/idir-amend-term-oversize.cy.js create mode 100644 tests/cypress/e2e/idir-void-term-oversize.cy.js create mode 100644 tests/cypress/fixtures/example.json create mode 100644 tests/cypress/support/commands.js create mode 100644 tests/cypress/support/e2e.js create mode 100644 tests/loadtests/dops/orbc_load_test_plan_dops.jmx create mode 100644 tests/loadtests/frontend/orbc_load_test_plan_frontend_amend_term_oversize.jmx create mode 100644 tests/loadtests/frontend/orbc_load_test_plan_frontend_bceid.jmx create mode 100644 tests/loadtests/frontend/orbc_load_test_plan_frontend_crud_vehicles.jmx create mode 100644 tests/loadtests/frontend/orbc_load_test_plan_frontend_edit_profile.jmx create mode 100644 tests/loadtests/frontend/orbc_load_test_plan_frontend_idir.jmx create mode 100644 tests/loadtests/frontend/orbc_load_test_plan_frontend_idir_scenarios.jmx create mode 100644 tests/loadtests/frontend/orbc_load_test_plan_frontend_term_oversize.jmx create mode 100644 tests/loadtests/frontend/orbc_load_test_plan_frontend_term_overweight.jmx create mode 100644 tests/loadtests/frontend/orbc_load_test_plan_frontend_void_term_oversize.jmx create mode 100644 tests/loadtests/frontend/results/amend_term_oversize.csv create mode 100644 tests/loadtests/frontend/results/frontend.csv create mode 100644 tests/loadtests/vehicles/orbc_load_test_plan_vehicles_bceid.jmx create mode 100644 tests/loadtests/vehicles/orbc_load_test_plan_vehicles_idir.jmx create mode 100644 tests/package-lock.json create mode 100644 tests/package.json create mode 100644 tests/regression/orbc_load_test_plan_frontend_amend_term_oversize.jmx diff --git a/tests/cypress.config.js b/tests/cypress.config.js new file mode 100644 index 000000000..618008651 --- /dev/null +++ b/tests/cypress.config.js @@ -0,0 +1,25 @@ +const { defineConfig } = require("cypress"); + +module.exports = defineConfig({ + video: true, + e2e: { + setupNodeEvents(on, config) { + // implement node event listeners here + }, + baseUrl: 'https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca', + env: { + idir_username: '', + idir_password: '', + bceid_username: '', + bceid_password: '', + update_term_oversize_url: 'https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/applications/581', + new_tros_url: 'https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/create-application/TROS', + new_trow_url: 'https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/create-application/TROW', + new_power_unit_url: 'https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/manage-vehicles/add-powerunit', + update_power_unit_url: 'https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/manage-vehicles/power-units/106', + manage_vehicle_url: 'https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/manage-vehicles', + new_trailer_url: 'https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/manage-vehicles/add-trailer', + update_trailer_url: 'https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/manage-vehicles/trailers/106', + }, + }, +}); diff --git a/tests/cypress/e2e/bceid-crud-power-units.cy.js b/tests/cypress/e2e/bceid-crud-power-units.cy.js new file mode 100644 index 000000000..3595ff44b --- /dev/null +++ b/tests/cypress/e2e/bceid-crud-power-units.cy.js @@ -0,0 +1,111 @@ +describe('Crud for power unit', () => { + it('Should create, update or delete a power unit', () => { + // Retrieve the environment variables + const username = Cypress.env('bceid_username'); + const password = Cypress.env('bceid_password'); + const new_power_unit_url = '/manage-vehicles/add-powerunit'; + const update_power_unit_url = Cypress.env('update_power_unit_url'); + const manage_vehicle_url = '/manage-vehicles'; + + // Step 1: Visit the base URL + cy.visit('/'); + + // Step 2: Find and click the login button by its idir + cy.get('#login-bceid').click(); + cy.wait(5000); + + // Step 3: Enter credentials + cy.get('#user').type(username); + cy.get('#password').type(password); + cy.wait(5000); + + // Step 4: Submit the login form + cy.get('[name="btnSubmit"]').click(); + cy.wait(5000); + + cy.visit(new_power_unit_url); + cy.wait(5000); + + // create new power unit + // cy.get('[name="unitNumber"]').type('MCL37'); + // cy.wait(5000); + + cy.get('[name="make"]').type('Toyota'); + cy.wait(5000); + + cy.get('[name="year"]').type('2002'); + cy.wait(5000); + + cy.get('[name="vin"]').type('MCL37A'); + cy.wait(5000); + + cy.get('[name="plate"]').type('VB0007'); + cy.wait(5000); + + cy.get('[id="mui-component-select-powerUnitTypeCode"]').click({ force: true }); + cy.wait(5000); + + cy.get('[data-value="BUSCRUM"]').click(); + cy.wait(5000); + + cy.get('[id="mui-component-select-countryCode"]').scrollIntoView().click(); + cy.wait(5000); + + cy.get('[data-value="CA"]').click(); + cy.wait(5000); + + cy.get('[id="mui-component-select-provinceCode"]').click(); + cy.wait(5000); + + cy.get('[data-value="AB"]').click(); + cy.wait(5000); + + cy.get('[name="licensedGvw"]').type('2000'); + cy.wait(5000); + + cy.get('.css-xie432').click(); + cy.wait(5000); + + // update power unit + cy.visit(manage_vehicle_url); + cy.wait(5000); + + cy.get('.css-15mydm5').first().scrollIntoView().wait(3000).click({ force: true }); + cy.wait(5000); + + cy.xpath("//li[text()='Edit']").click(); + cy.wait(5000); + + cy.get('[name="make"]').clear().type('Toyota'); + cy.wait(5000); + + cy.get('[name="year"]').clear().type('2021'); + cy.wait(5000); + + cy.get('[name="licensedGvw"]').clear().type('3000'); + cy.wait(5000); + + cy.get('.css-xie432').click(); + cy.wait(5000); + + // delete power unit + cy.visit(manage_vehicle_url); + cy.wait(5000); + + cy.xpath("(//input[@type='checkbox'])[2]") + .then(($checkbox) => { + if (!$checkbox.prop('checked')) { // Check if it's not selected + cy.wrap($checkbox).click(); // Select it if not already checked + } + }); + cy.wait(5000); + + cy.get('.delete-btn--active').click(); + cy.wait(5000); + + cy.get('.css-1a53fri').click(); + cy.wait(5000); + + }); +}); + diff --git a/tests/cypress/e2e/bceid-crud-trailers.cy.js b/tests/cypress/e2e/bceid-crud-trailers.cy.js new file mode 100644 index 000000000..35d709633 --- /dev/null +++ b/tests/cypress/e2e/bceid-crud-trailers.cy.js @@ -0,0 +1,115 @@ +describe('Crud for trailer', () => { + it('Should create, update or delete a trailer', () => { + // Retrieve the environment variables + const username = Cypress.env('bceid_username'); + const password = Cypress.env('bceid_password'); + const new_trailer_url = '/manage-vehicles/add-trailer'; + const update_trailer_url = Cypress.env('update_trailer_url'); + const manage_vehicle_url = '/manage-vehicles'; + + // Step 1: Visit the base URL + cy.visit('/'); + + // Step 2: Find and click the login button by its idir + cy.get('#login-bceid').click(); + cy.wait(5000); + + // Step 3: Enter credentials + cy.get('#user').type(username); + cy.get('#password').type(password); + cy.wait(5000); + + // Step 4: Submit the login form + cy.get('[name="btnSubmit"]').click(); + cy.wait(5000); + + cy.visit(new_trailer_url); + cy.wait(5000); + + // create new trailer + // cy.get('[name="unitNumber"]').type('TCL37'); + // cy.wait(5000); + + cy.get('[name="make"]').type('NISSAN'); + cy.wait(5000); + + cy.get('[name="year"]').type('2005'); + cy.wait(5000); + + cy.get('[name="vin"]').type('TCL37A'); + cy.wait(5000); + + cy.get('[name="plate"]').type('VT0007'); + cy.wait(5000); + + cy.get('[id="mui-component-select-trailerTypeCode"]').click({ force: true }); + cy.wait(5000); + + cy.get('[data-value="BOOSTER"]').click(); + cy.wait(5000); + + cy.get('[id="mui-component-select-countryCode"]').scrollIntoView().click(); + cy.wait(5000); + + cy.get('[data-value="CA"]').click(); + cy.wait(5000); + + cy.get('[id="mui-component-select-provinceCode"]').click(); + cy.wait(5000); + + cy.get('[data-value="BC"]').click(); + cy.wait(5000); + + cy.get('.css-xie432').click(); + cy.wait(5000); + + // update power unit + cy.visit(manage_vehicle_url); + cy.wait(5000); + + cy.get('.tab__label').contains('Trailer').click(); + cy.wait(5000); + + cy.get('.css-15mydm5').first().scrollIntoView().wait(3000).click({ force: true }); + cy.wait(5000); + + cy.xpath("//li[text()='Edit']").click(); + cy.wait(5000); + + cy.get('[name="make"]').clear().type('BMW'); + cy.wait(5000); + + // cy.get('[name="unitNumber"]').clear().type('TCL37'); + // cy.wait(5000); + + cy.get('[name="year"]').clear().type('2021'); + cy.wait(5000); + + cy.get('.css-xie432').click(); + cy.wait(5000); + + + // delete trailer + cy.visit(manage_vehicle_url); + cy.wait(5000); + + cy.get('.tab__label').contains('Trailer').click(); + cy.wait(5000); + + cy.xpath("(//input[@type='checkbox'])[2]") + .then(($checkbox) => { + if (!$checkbox.prop('checked')) { // Check if it's not selected + cy.wrap($checkbox).click(); // Select it if not already checked + } + }); + cy.wait(5000); + + cy.get('.delete-btn--active').click(); + cy.wait(5000); + + cy.get('.css-1a53fri').click(); + cy.wait(5000); + + }); +}); + diff --git a/tests/cypress/e2e/bceid-new-term-oversize.cy.js b/tests/cypress/e2e/bceid-new-term-oversize.cy.js new file mode 100644 index 000000000..932a83b7c --- /dev/null +++ b/tests/cypress/e2e/bceid-new-term-oversize.cy.js @@ -0,0 +1,85 @@ +describe('Login Test for OnRouteBC', () => { + it('Should navigate to the login page, find the login button, and enter credentials', () => { + // Retrieve the environment variables + const username = Cypress.env('bceid_username'); + const password = Cypress.env('bceid_password'); + const new_tros_url = '/create-application/TROS'; + + // Step 1: Visit the base URL + cy.visit('/'); + + // Step 2: Find and click the login button by its idir + cy.get('#login-bceid').click(); + cy.wait(5000); + + // Step 3: Enter credentials + cy.get('#user').type(username); + cy.get('#password').type(password); + cy.wait(5000); + + // Step 4: Submit the login form + cy.get('[name="btnSubmit"]').click(); + cy.wait(5000); + + cy.visit(new_tros_url); + cy.wait(5000); + + // fill out the form + cy.get('#application-select-vehicle').type('MCL36'); + cy.wait(5000); + + cy.get('[name="permitData.vehicleDetails.vin"]').click({ force: true }).type('MCL36A'); + cy.wait(5000); + + cy.get('[name="permitData.vehicleDetails.plate"]').type('L4NDO'); + cy.wait(5000); + + cy.get('[name="permitData.vehicleDetails.make"]').type('BMW'); + cy.wait(5000); + + cy.get('[name="permitData.vehicleDetails.year"]').type('2020'); + cy.wait(5000); + + cy.get('[id="mui-component-select-permitData.vehicleDetails.countryCode"]').scrollIntoView().click(); + cy.wait(5000); + + cy.get('[data-value="CA"]').click(); + cy.wait(5000); + + cy.get('[id="mui-component-select-permitData.vehicleDetails.provinceCode"]').click(); + cy.wait(5000); + + cy.get('[data-value="BC"]').click(); + cy.wait(5000); + + cy.get('[id="mui-component-select-permitData.vehicleDetails.vehicleType"]').click(({ force: true })); + cy.wait(5000); + + cy.get('[data-value="powerUnit"]').click(); + cy.wait(5000); + + cy.get('[id="mui-component-select-permitData.vehicleDetails.vehicleSubType"]').click({ force: true }); + cy.wait(5000); + + cy.get('[data-value="REGTRCK"]').click(); + cy.wait(5000); + + cy.get('[data-testid="continue-application-button"]').click({ force: true }); + cy.wait(5000); + + cy.get('input[type="checkbox"]').each(($checkbox) => { + cy.wrap($checkbox).click({ force: true }); + }); + cy.wait(5000); + + cy.get('[data-testid="add-to-cart-btn"]').click({force: true}); + cy.wait(5000); + + cy.get('.shopping-cart-button').click({force: true}); + cy.wait(5000); + + cy.get('[data-testid="pay-now-btn"]').scrollIntoView().click({force: true}); + cy.wait(5000); + + }); +}); diff --git a/tests/cypress/e2e/bceid-new-term-overweight.cy.js b/tests/cypress/e2e/bceid-new-term-overweight.cy.js new file mode 100644 index 000000000..579d53622 --- /dev/null +++ b/tests/cypress/e2e/bceid-new-term-overweight.cy.js @@ -0,0 +1,85 @@ +describe('Login Test for OnRouteBC', () => { + it('Should navigate to the login page, find the login button, and enter credentials', () => { + // Retrieve the environment variables + const username = Cypress.env('bceid_username'); + const password = Cypress.env('bceid_password'); + const new_trow_url = '/create-application/TROW'; + + // Step 1: Visit the base URL + cy.visit('/'); + + // Step 2: Find and click the login button by its idir + cy.get('#login-bceid').click(); + cy.wait(5000); + + // Step 3: Enter credentials + cy.get('#user').type(username); + cy.get('#password').type(password); + cy.wait(5000); + + // Step 4: Submit the login form + cy.get('[name="btnSubmit"]').click(); + cy.wait(5000); + + cy.visit(new_trow_url); + cy.wait(5000); + + // fill out the form + cy.get('#application-select-vehicle').type('123'); + cy.wait(5000); + + cy.get('[name="permitData.vehicleDetails.vin"]').click({ force: true }).type('115588'); + cy.wait(5000); + + cy.get('[name="permitData.vehicleDetails.plate"]').type('1B25F'); + cy.wait(5000); + + cy.get('[name="permitData.vehicleDetails.make"]').type('PHIL'); + cy.wait(5000); + + cy.get('[name="permitData.vehicleDetails.year"]').type('1992'); + cy.wait(5000); + + cy.get('[id="mui-component-select-permitData.vehicleDetails.countryCode"]').scrollIntoView().click(); + cy.wait(5000); + + cy.get('[data-value="CA"]').click(); + cy.wait(5000); + + cy.get('[id="mui-component-select-permitData.vehicleDetails.provinceCode"]').click(); + cy.wait(5000); + + cy.get('[data-value="BC"]').click(); + cy.wait(5000); + + cy.get('[id="mui-component-select-permitData.vehicleDetails.vehicleType"]').click(({ force: true })); + cy.wait(5000); + + cy.get('[data-value="trailer"]').click(); + cy.wait(5000); + + cy.get('[id="mui-component-select-permitData.vehicleDetails.vehicleSubType"]').click({ force: true }); + cy.wait(5000); + + cy.get('[data-value="DOLLIES"]').click(); + cy.wait(5000); + + cy.get('[data-testid="continue-application-button"]').click({ force: true }); + cy.wait(5000); + + cy.get('input[type="checkbox"]').each(($checkbox) => { + cy.wrap($checkbox).click({ force: true }); + }); + cy.wait(5000); + + cy.get('[data-testid="add-to-cart-btn"]').click({force: true}); + cy.wait(5000); + + cy.get('.shopping-cart-button').click({force: true}); + cy.wait(5000); + + cy.get('[data-testid="pay-now-btn"]').scrollIntoView().click({force: true}); + cy.wait(5000); + + }); +}); diff --git a/tests/cypress/e2e/bceid-update-term-oversize.cy.js b/tests/cypress/e2e/bceid-update-term-oversize.cy.js new file mode 100644 index 000000000..8dc8816a4 --- /dev/null +++ b/tests/cypress/e2e/bceid-update-term-oversize.cy.js @@ -0,0 +1,88 @@ +describe('Login Test for OnRouteBC', () => { + it('Should navigate to the login page, find the login button, and enter credentials', () => { + // Retrieve the environment variables + const username = Cypress.env('bceid_username'); + const password = Cypress.env('bceid_password'); + // const update_term_oversize_url = Cypress.env('update_term_oversize_url'); + + // Step 1: Visit the base URL + cy.visit('/'); + + // Step 2: Find and click the login button by its idir + cy.get('#login-bceid').click(); + cy.wait(5000); + + // Step 3: Enter credentials + cy.get('#user').type(username); + cy.get('#password').type(password); + cy.wait(5000); + + // Step 4: Submit the login form + cy.get('[name="btnSubmit"]').click(); + cy.wait(5000); + + + + + // new a TROS application first + cy.visit('/create-application/TROS'); + cy.wait(5000); + + // fill out the form + cy.get('#application-select-vehicle').type('MCL36'); + cy.wait(5000); + + cy.get('[name="permitData.vehicleDetails.vin"]').click({ force: true }).type('MCL36A'); + cy.wait(5000); + + cy.get('[name="permitData.vehicleDetails.plate"]').type('L4NDO'); + cy.wait(5000); + + cy.get('[name="permitData.vehicleDetails.make"]').type('BMW'); + cy.wait(5000); + + cy.get('[name="permitData.vehicleDetails.year"]').type('2020'); + cy.wait(5000); + + cy.get('[id="mui-component-select-permitData.vehicleDetails.countryCode"]').scrollIntoView().click(); + cy.wait(5000); + + cy.get('[data-value="CA"]').click(); + cy.wait(5000); + + cy.get('[id="mui-component-select-permitData.vehicleDetails.provinceCode"]').click(); + cy.wait(5000); + + cy.get('[data-value="BC"]').click(); + cy.wait(5000); + + cy.get('[id="mui-component-select-permitData.vehicleDetails.vehicleType"]').click(({ force: true })); + cy.wait(5000); + + cy.get('[data-value="powerUnit"]').click(); + cy.wait(5000); + + cy.get('[id="mui-component-select-permitData.vehicleDetails.vehicleSubType"]').click({ force: true }); + cy.wait(5000); + + cy.get('[data-value="REGTRCK"]').click(); + cy.wait(5000); + + cy.get('[data-testid="continue-application-button"]').click({ force: true }); + cy.wait(5000); + + cy.visit('/applications'); + cy.wait(5000); + + cy.get('a.column-link--application-details').first().click(); + cy.wait(5000); + + // update phone ext + cy.get('[name="permitData.contactDetails.phone1Extension"]').clear().type('0003'); + cy.wait(5000); + + // save updates + cy.get('[data-testid="save-application-button"]').click(); + cy.wait(5000); + }); +}); diff --git a/tests/cypress/e2e/idir-amend-term-oversize.cy.js b/tests/cypress/e2e/idir-amend-term-oversize.cy.js new file mode 100644 index 000000000..134b96917 --- /dev/null +++ b/tests/cypress/e2e/idir-amend-term-oversize.cy.js @@ -0,0 +1,57 @@ +describe('Login Test for OnRouteBC', () => { + it('Should navigate to the login page, find the login button, and enter credentials', () => { + // Retrieve the environment variables + const username = Cypress.env('idir_username'); + const password = Cypress.env('idir_password'); + + // Step 1: Visit the base URL + cy.visit('/'); + + // Step 2: Find and click the login button by its idir + cy.get('#login-idir').click(); + cy.wait(5000); + + // Step 3: Enter credentials + cy.get('#user').type(username); + cy.get('#password').type(password); + cy.wait(5000); + + // Step 4: Submit the login form + cy.get('[name="btnSubmit"]').click(); + cy.wait(5000); + + // Step 5: Find the search button by its class name and click it + cy.get('.search-button').click(); + cy.wait(5000); + + // Step 6: Find the element with value="companies" and interact with it + cy.get('[value="companies"]').click(); + cy.wait(5000); + + // Step 7: Find elements to amend application + cy.get('.css-1pog434').type('t'); + cy.wait(5000); + cy.get('.search-by__search').click(); + cy.wait(5000); + cy.xpath("//button[text()='Test Transport Inc.']").click(); + cy.wait(5000); + cy.xpath("//div[@class='tab__label' and text()='Active Permits']").click(); + cy.wait(5000); + cy.get('.css-15mydm5').first().scrollIntoView().wait(3000).click({ force: true }); + cy.wait(5000); + cy.xpath("//li[text()='Amend']").click(); + cy.wait(5000); + cy.get('[name="permitData.vehicleDetails.year"').clear().type('2008'); + cy.wait(5000); + cy.get('[name="comment"').clear().type('Make year updated'); + cy.wait(5000); + cy.get('[data-testid="continue-application-button"]').click(); + cy.wait(5000); + cy.get('[type="checkbox"]').check(); + cy.wait(5000); + cy.xpath("//button[text()='Continue']").click(); + cy.wait(5000); + cy.xpath("//button[text()='Finish']").click(); + cy.wait(5000); + }); +}); \ No newline at end of file diff --git a/tests/cypress/e2e/idir-void-term-oversize.cy.js b/tests/cypress/e2e/idir-void-term-oversize.cy.js new file mode 100644 index 000000000..6f051f27c --- /dev/null +++ b/tests/cypress/e2e/idir-void-term-oversize.cy.js @@ -0,0 +1,194 @@ +describe('Login Test for OnRouteBC', () => { + it('Should navigate to the login page, find the login button, and enter credentials', () => { + // Retrieve the environment variables + const username = Cypress.env('idir_username'); + const password = Cypress.env('idir_password'); + const void_url = Cypress.env('void_url'); + const new_tros_url = '/create-application/TROS'; + + // Step 1: Visit the base URL + cy.visit('/'); + + // Step 2: Find and click the login button by its idir + cy.get('#login-idir').click(); + cy.wait(5000); + + // Step 3: Enter credentials + cy.get('#user').type(username); + cy.get('#password').type(password); + cy.wait(5000); + + // Step 4: Submit the login form + cy.get('[name="btnSubmit"]').click(); + cy.wait(5000); + + // Step 5: Find the search button by its class name and click it + cy.get('.search-button').click(); + cy.wait(5000); + + // Step 6: Find the element with value="companies" and interact with it + cy.get('[value="companies"]').click(); + cy.wait(5000); + + // Step 7: Find elements to amend application + cy.get('.css-1pog434').type('t'); + cy.wait(5000); + + cy.get('.search-by__search').click(); + cy.wait(5000); + + cy.xpath("//button[text()='Test Transport Inc.']").click(); + cy.wait(5000); + + cy.xpath("//div[@class='tab__label' and text()='Active Permits']").click(); + cy.wait(5000); + + // create a permit first + // click select + cy.get('[aria-label="Select"]').eq(1).click({ force: true }); + cy.wait(5000); + + // click term + cy.get('.css-1hdidwq').eq(0).click({force: true}); + cy.wait(5000); + + // click term oversize + cy.get('.css-1sucic7').eq(0).click({force: true}); + cy.wait(5000); + + cy.get('li.start-application-action__menu-item') + .contains('p.MuiTypography-root', 'Term').first() + .click({force: true}); + cy.wait(5000); + + cy.contains('li', 'Oversize').first().click(); + cy.wait(5000); + + cy.get('body').click({force: true}); + cy.wait(5000); + + // click "start application" + cy.get('.start-application-action__btn').first().click({force: true}); + cy.wait(5000); + + cy.get('.start-application-action__btn').eq(1).click({force: true}); + cy.wait(5000); + + // fill out the form + cy.get('[name="permitData.contactDetails.firstName"]').type('Load'); + cy.wait(5000); + + cy.get('[name="permitData.contactDetails.lastName"]').type('Test'); + cy.wait(5000); + + cy.get('[name="permitData.contactDetails.phone1"]').type('2501111234'); + cy.wait(5000); + + cy.get('#application-select-vehicle').type('MCL36'); + cy.wait(5000); + + cy.get('[name="permitData.vehicleDetails.vin"]').click({ force: true }).type('MCL36A'); + cy.wait(5000); + + cy.get('[name="permitData.vehicleDetails.plate"]').type('L4NDO'); + cy.wait(5000); + + cy.get('[name="permitData.vehicleDetails.make"]').type('BMW'); + cy.wait(5000); + + cy.get('[name="permitData.vehicleDetails.year"]').type('2020'); + cy.wait(5000); + + cy.get('[id="mui-component-select-permitData.vehicleDetails.countryCode"]').scrollIntoView().click(); + cy.wait(5000); + + cy.get('[data-value="CA"]').click(); + cy.wait(5000); + + cy.get('[id="mui-component-select-permitData.vehicleDetails.provinceCode"]').click(); + cy.wait(5000); + + cy.get('[data-value="BC"]').click(); + cy.wait(5000); + + cy.get('[id="mui-component-select-permitData.vehicleDetails.vehicleType"]').click(({ force: true })); + cy.wait(5000); + + cy.get('[data-value="powerUnit"]').click(); + cy.wait(5000); + + cy.get('[id="mui-component-select-permitData.vehicleDetails.vehicleSubType"]').click({ force: true }); + cy.wait(5000); + + cy.get('[data-value="REGTRCK"]').click(); + cy.wait(5000); + + cy.get('[data-testid="continue-application-button"]').click({ force: true }); + cy.wait(5000); + + cy.get('input[type="checkbox"]').each(($checkbox) => { + cy.wrap($checkbox).click({ force: true }); + }); + cy.wait(5000); + + cy.get('[data-testid="add-to-cart-btn"]').click({force: true}); + cy.wait(5000); + + cy.get('.shopping-cart-button').click({force: true}); + cy.wait(5000); + + // cy.get('div.MuiSelect-select[aria-controls=":r1g:"]').click(); + // cy.wait(5000); + cy.get('div[role="combobox"]') + .contains('Select') + .click(); + + cy.contains('li', 'Mastercard (Debit)').first().click(); + cy.wait(5000); + + cy.get('[name="additionalPaymentData.icepayTransactionId"]').type(1234); + cy.wait(5000); + + cy.get('button[data-testid="pay-now-btn"]').click({force: true}); + cy.wait(5000); + + cy.visit('/'); + cy.wait(5000); + + // Search to find the search button by its class name and click it + cy.get('.search-button').click(); + cy.wait(5000); + + // Find the element with value="companies" and interact with it + cy.get('[value="companies"]').click(); + cy.wait(5000); + + // Find elements to amend application + cy.get('.css-1pog434').type('t'); + cy.wait(5000); + + cy.get('.search-by__search').click(); + cy.wait(5000); + + cy.xpath("//button[text()='Test Transport Inc.']").click(); + cy.wait(5000); + + cy.xpath("//div[@class='tab__label' and text()='Active Permits']").click(); + cy.wait(5000); + + cy.get('[id="actions-button"]').first().scrollIntoView().wait(3000).click({ force: true }); + cy.wait(5000); + + cy.xpath("//li[text()='Void/Revoke']").click(); + cy.wait(5000); + + cy.get('[name="reason"]').type('void it for test'); + cy.wait(5000); + + cy.xpath("//button[text()='Continue']").click(); + cy.wait(5000); + + cy.xpath("//button[text()='Finish']").click(); + cy.wait(5000); + }); +}); \ No newline at end of file diff --git a/tests/cypress/fixtures/example.json b/tests/cypress/fixtures/example.json new file mode 100644 index 000000000..02e425437 --- /dev/null +++ b/tests/cypress/fixtures/example.json @@ -0,0 +1,5 @@ +{ + "name": "Using fixtures to represent data", + "email": "hello@cypress.io", + "body": "Fixtures are a great way to mock data for responses to routes" +} diff --git a/tests/cypress/support/commands.js b/tests/cypress/support/commands.js new file mode 100644 index 000000000..66ea16ef0 --- /dev/null +++ b/tests/cypress/support/commands.js @@ -0,0 +1,25 @@ +// *********************************************** +// This example commands.js shows you how to +// create various custom commands and overwrite +// existing commands. +// +// For more comprehensive examples of custom +// commands please read more here: +// https://on.cypress.io/custom-commands +// *********************************************** +// +// +// -- This is a parent command -- +// Cypress.Commands.add('login', (email, password) => { ... }) +// +// +// -- This is a child command -- +// Cypress.Commands.add('drag', { prevSubject: 'element'}, (subject, options) => { ... }) +// +// +// -- This is a dual command -- +// Cypress.Commands.add('dismiss', { prevSubject: 'optional'}, (subject, options) => { ... }) +// +// +// -- This will overwrite an existing command -- +// Cypress.Commands.overwrite('visit', (originalFn, url, options) => { ... }) \ No newline at end of file diff --git a/tests/cypress/support/e2e.js b/tests/cypress/support/e2e.js new file mode 100644 index 000000000..f16d3a3f1 --- /dev/null +++ b/tests/cypress/support/e2e.js @@ -0,0 +1,21 @@ +// *********************************************************** +// This example support/e2e.js is processed and +// loaded automatically before your test files. +// +// This is a great place to put global configuration and +// behavior that modifies Cypress. +// +// You can change the location of this file or turn off +// automatically serving support files with the +// 'supportFile' configuration option. +// +// You can read more here: +// https://on.cypress.io/configuration +// *********************************************************** + +// Import commands.js using ES2015 syntax: +import './commands' + +// Alternatively you can use CommonJS syntax: +// require('./commands') +require('cypress-xpath'); diff --git a/tests/loadtests/dops/orbc_load_test_plan_dops.jmx b/tests/loadtests/dops/orbc_load_test_plan_dops.jmx new file mode 100644 index 000000000..3097efb4f --- /dev/null +++ b/tests/loadtests/dops/orbc_load_test_plan_dops.jmx @@ -0,0 +1,678 @@ + + + + + + false + false + + + + Duration + 3180 + = + + + + + + + + true + false + false + + + + + true + false + + + + + + Accept-Language + en-us,en;q=0.5 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 + + + Keep-Alive + 115 + + + User-Agent + Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13 + + + Accept-Encoding + gzip,deflate + + + Accept-Charset + ISO-8859-1,utf-8;q=0.7,*;q=0.7 + + + X-BlazeMeter-Session + ${__P(blazemeter.session_id)} + + + + + + + + + + + + + + true + 2 + ^((?!google|facebook|youtube|pinterest|twimg|doubleclick).)*$ + 60000 + 120000 + + + + + + NUM_THREADS + 200 + = + + + FRONTEND_API_URL + onroutebc-test-frontend.apps.silver.devops.gov.bc.ca + = + + + VEHICLES_API_URL + onroutebc-test-vehicles.apps.silver.devops.gov.bc.ca + = + + + DOPS_API_URL + onroutebc-test-dops.apps.silver.devops.gov.bc.ca + = + + + RESULTS_DIR + ~/results + = + + + IDIR_BEARER_TOKEN + + = + + + + + + continue + + false + 1 + + ${NUM_THREADS} + ${__P(rampup,300)} + 1365261073000 + 1365261073000 + true + ${__P(duration,3000)} + + true + + + + + + Authorization + Bearer ${IDIR_BEARER_TOKEN} + + + Accept + */* + + + Content-Type + application/json + + + + + + + + + false + + = + true + + + + + + + + https://${VEHICLES_API_URL}/permits?searchColumn=permitNumber&searchString=1&page=1&take=10 + GET + true + false + true + false + + + + + + + + + Host + ${VEHICLES_API_URL} + + + Connection + keep-alive + + + sec-ch-ua + "Chromium";v="118", "Google Chrome";v="118", "Not=A?Brand";v="99" + + + Accept + application/json + + + sec-ch-ua-mobile + ?0 + + + Authorization + Bearer ${IDIR_BEARER_TOKEN} + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36 + + + sec-ch-ua-platform + "Windows" + + + Origin + https://${FRONTEND_API_URL} + + + Sec-Fetch-Site + same-site + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Dest + empty + + + Referer + https://${FRONTEND_API_URL}/ + + + Accept-Encoding + gzip, deflate, br + + + Accept-Language + en-US,en;q=0.9 + + + If-None-Match + W/"17b2-OQs45yY+9rxT8oaE549bg+d9IqA" + + + + + + + + Authorization + Bearer ${IDIR_BEARER_TOKEN} + + + Accept + application/json + + + + + + + + + + + + + + https://${DOPS_API_URL}/dms/1?download=url&companyId=74 + GET + true + false + true + false + + + + + + + + + Host + ${VEHICLES_API_URL} + + + Connection + keep-alive + + + sec-ch-ua + "Chromium";v="118", "Google Chrome";v="118", "Not=A?Brand";v="99" + + + Accept + application/json + + + sec-ch-ua-mobile + ?0 + + + Authorization + Bearer ${IDIR_BEARER_TOKEN} + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36 + + + sec-ch-ua-platform + "Windows" + + + Origin + https://${FRONTEND_API_URL} + + + Sec-Fetch-Site + same-site + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Dest + empty + + + Referer + https://${FRONTEND_API_URL}/ + + + Accept-Encoding + gzip, deflate, br + + + Accept-Language + en-US,en;q=0.9 + + + If-None-Match + W/"17b2-OQs45yY+9rxT8oaE549bg+d9IqA" + + + + + + + + Authorization + Bearer ${IDIR_BEARER_TOKEN} + + + Accept + */* + + + Content-Type + application/json + + + + + + + true + + + + false + { + "reportTemplate": "PAYMENT_AND_REFUND_DETAILED_REPORT", + "reportData": { + "issuedBy": "Self Issued and PPC", + "runDate": "Jul. 17, 2023, 09:00 PM, PDT", + "permitType": "All Permit Types", + "paymentMethod": "Cash, Cheque, Icepay - Mastercard, Icepay - Mastercard (Debit), Icepay - Visa, Icepay - Visa (Debit), Web - Mastercard (Debit), Web - Visa (Debit), PoS - Mastercard (Debit), PoS - Visa (Debit), PoS - Mastercard", + "timePeriod": "Jul. 17, 2023, 09:00 PM, PDT – Jul. 18, 2023, 09:00 PM, PDT", + "payments": [ + { + "issuedOn": "2023-11-11T23:26:51.170Z", + "providerTransactionId": "73582422238", + "orbcTransactionId": "OR-678904512857", + "paymentMethod": "Cash", + "receiptNo": "45098721098", + "permitNo": "P2-72106199-468", + "permitType": "STOS", + "users": "ANPETRIC", + "amount": "90.00" + } + ], + "refunds": [ + { + "issuedOn": "2023-11-11T23:26:51.170Z", + "providerTransactionId": "73582422238", + "orbcTransactionId": "OR-678904512857", + "paymentMethod": "Cheque", + "receiptNo": "51961102630", + "permitNo": "P2-15348742-610", + "permitType": "TROS", + "users": "KOPARKIN", + "amount": "10.00" + } + ], + "summaryPaymentsAndRefunds": [ + { + "paymentMethod": "Cash", + "payment": "90.00", + "refund": null, + "deposit": "90.00" + }, + { + "paymentMethod": "Cheque", + "payment": null, + "refund": "10.00", + "deposit": "90.00" + }, + { + "paymentMethod": "totalAmount", + "payment": "90.00", + "refund": "10.00", + "deposit": "80.00" + } + ], + "summaryPermits": [ + { + "permitType": "STOS", + "permitCount": "1" + }, + { + "permitType": "TROS", + "permitCount": "1" + }, + { + "permitType": "totalPermitCount", + "permitCount": "2" + } + ] + }, + "generatedDocumentFileName": "Financial-A-2-3-4-5" +} + = + + + + + + + + https://${DOPS_API_URL}/dgen/report/render + POST + true + false + true + false + + + + + + + true + + + + false + { + "templateName": "PERMIT", + "templateVersion": 1, + "templateData": { + "permitName": "Oversize: Term", + "permitNumber": "P9-00010001-354", + "permitType": "TROS", + "createdDateTime": "Jul. 7, 2023, 08:26 am", + "updatedDateTime": "Jul. 7, 2023, 08:26 am", + "companyName": "Parisian LLC Trucking", + "clientNumber": "B3-000005-722", + "revisions": [ + { + "timeStamp": "", + "description": "N/A" + } + ], + "permitData": { + "startDate": "Jun. 5, 2023", + "expiryDate": "Jul. 4, 2023", + "permitDuration": 30, + "feeSummary": "30", + "commodities": [ + { + "description": "General Permit Conditions", + "condition": "CVSE-1000", + "conditionLink": "https://www.th.gov.bc.ca/forms/getForm.aspx?formId=1251", + "checked": true + }, + { + "description": "Permit Scope and Limitation", + "condition": "CVSE-1070", + "conditionLink": "https://www.th.gov.bc.ca/forms/getForm.aspx?formId=1261", + "checked": true + }, + { + "description": "Log Permit Conditions", + "condition": "CVSE-1000L", + "conditionLink": "https://www.th.gov.bc.ca/forms/getForm.aspx?formId=1250", + "checked": true + } + ], + "contactDetails": { + "firstName": "Lewis", + "lastName": "Hamilton", + "phone1": "(778) 952-1234", + "email": "lewis@f1.com", + "additionalEmail": "lewis2@f1.com", + "phone1Extension": "1", + "phone2": null, + "phone2Extension": null, + "fax": null + }, + "mailingAddress": { + "addressLine1": "123 Short Street", + "addressLine2": null, + "city": "Victoria", + "provinceCode": "British Columbia", + "countryCode": "Canada", + "postalCode": "V8X2V5" + }, + "vehicleDetails": { + "vin": "781452", + "plate": "PRJZZP", + "make": "GMC", + "year": 2001, + "countryCode": "Canada", + "provinceCode": "British Columbia", + "vehicleType": "Power Unit", + "vehicleSubType": "Logging Trucks", + "saveVehicle": true + } + } + }, + "generatedDocumentFileName": "permit-A-2-3-4-5", + "documentsToMerge": [ + "CVSE-1000" + ] +} + = + + + + + + + + https://${DOPS_API_URL}/dgen/template/render?companyId=74 + POST + true + false + true + false + + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + ${RESULTS_DIR}/dops.csv + + + + + diff --git a/tests/loadtests/frontend/orbc_load_test_plan_frontend_amend_term_oversize.jmx b/tests/loadtests/frontend/orbc_load_test_plan_frontend_amend_term_oversize.jmx new file mode 100644 index 000000000..881c5b061 --- /dev/null +++ b/tests/loadtests/frontend/orbc_load_test_plan_frontend_amend_term_oversize.jmx @@ -0,0 +1,458 @@ + + + + + + false + false + + + + Duration + 3180 + = + + + + + + + + + + FRONTEND_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca + = + + + RESULTS_DIR + ~/results + = + + + USER + + = + + + PASSWORD + + = + + + AMEND_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/companies/1/permits/421/amend + = + + + + + + false + true + ${__P(CHROME_DRIVER_PATH)} + false + false + true + + + SYSTEM + + + 8080 + true + + 8080 + true + + 8080 + true + + 8080 + localhost + + + + + continue + + false + 1 + + 1 + 1 + false + + + true + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement +import org.openqa.selenium.devtools.DevTools; +import org.openqa.selenium.devtools.v129.network.Network; +import java.util.Optional; +import org.openqa.selenium.logging.LogType +import org.openqa.selenium.logging.LogEntries +import org.openqa.selenium.chrome.ChromeOptions +import org.openqa.selenium.logging.LoggingPreferences +import java.util.logging.Level +import java.util.function.Consumer + +WDS.sampleResult.sampleStart() + +WDS.log.info "Groovy version: ${GroovySystem.version}" + + +def frontendUrl = WDS.vars.get("FRONTEND_URL") +WDS.browser.get(frontendUrl) +Thread.sleep(5000) + +def loginButton = WDS.browser.findElement(By.id('login-idir')) +if (loginButton != null) { + loginButton.click() + WDS.log.info("Clicked on the login-idir button") + Thread.sleep(5000) + /* + try { + def user = WDS.browser.findElement(By.id('user')) + def password = WDS.browser.findElement(By.id('password')) + if (user != null) { + def userValue = WDS.vars.get("USER") + def passwordValue = WDS.vars.get("PASSWORD") + user.sendKeys(userValue) + password.sendKeys(passwordValue) + Thread.sleep(5000) + + def submitButton = WDS.browser.findElement(By.name('btnSubmit')) + if (submitButton != null) { + submitButton.click() + } else { + WDS.log.info('Submit button with name="btnSubmit" not found') + } + Thread.sleep(5000) + } + } catch (NoSuchElementException e) { + WDS.log.info('User element not found.') + } + */ +} else { + WDS.log.info("Button with id 'login-idir' not found") +} + +Thread.sleep(5000) + +def devTools = ((org.openqa.selenium.chrome.ChromeDriver) WDS.browser).getDevTools() +devTools.createSession() +devTools.send(Network.enable(Optional.empty(), Optional.empty(), Optional.empty())) +devTools.addListener(Network.requestWillBeSent(), { request -> + if (request.getRequest().getUrl().contains("https")) { + def headers = request.getRequest().getHeaders() + def authHeader = headers.get("Authorization") + if (authHeader != null && authHeader.startsWith("Bearer ")) { + def token = authHeader.replace("Bearer ", "") + WDS.log.info("Extracted Token: " + token) + WDS.vars.put("BEARER_TOKEN", token) + } + } + else { + WDS.log.info("bruce test no token: ") + } +} as Consumer) +Thread.sleep(5000) + +WDS.browser.get(frontendUrl) +Thread.sleep(5000) + +WDS.sampleResult.sampleEnd() + + + groovy + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement + +WDS.sampleResult.sampleStart() +def frontendUrl = WDS.vars.get("FRONTEND_URL") +WDS.browser.get(frontendUrl); +Thread.sleep(5000) +/* +def loginButton = WDS.browser.findElement(By.id('login-idir')) +if (loginButton != null) { + loginButton.click() + WDS.log.info("Clicked on the login-bceid button") +} else { + WDS.log.info("Button with id 'login-bceid' not found") +} +Thread.sleep(10000) + +def searchIcon = WDS.browser.findElement(By.className('search-button')) +searchIcon.click() +Thread.sleep(5000) + +def company = WDS.browser.findElement(By.cssSelector('[value="companies"]')) +company.click() +Thread.sleep(5000) + + +def searchInput = WDS.browser.findElement(By.className('css-1pog434')) +searchInput.sendKeys('p') +Thread.sleep(5000) + +def searchButton = WDS.browser.findElement(By.className('search-by__search')) +searchButton.click() +Thread.sleep(5000) + +def button = WDS.browser.findElement(By.xpath("//button[text()='Test Transport Inc.']")) +button.click() +Thread.sleep(5000) +def tab = WDS.browser.findElement(By.xpath("//div[@class='tab__label' and text()='Active Permits']")) +tab.click() +Thread.sleep(5000) + +def amendUrl = WDS.vars.get("AMEND_URL") +WDS.browser.get(amendUrl); +Thread.sleep(5000) + +def year = WDS.browser.findElement(By.cssSelector('[name="permitData.vehicleDetails.year"]')) +year.clear() +year.sendKeys("2008") +Thread.sleep(5000) + +def amendment = WDS.browser.findElement(By.cssSelector('[name="comment"]')) +amendment.clear() +amendment.sendKeys("Make year updated") +Thread.sleep(5000) + + +def continueButton = WDS.browser.findElement(By.cssSelector('[data-testid="continue-application-button"]')) +Thread.sleep(5000) + +if (continueButton != null) { + continueButton.click() + WDS.log.info('Clicked the button with data-testid="continue-application-button"') +} else { + WDS.log.info('Button with data-testid="continue-application-button" not found') +} + +Thread.sleep(10000) +def checkboxes = WDS.browser.findElements(By.cssSelector('input[type="checkbox"]')) +checkboxes.each { checkbox -> + WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", checkbox) + if (!checkbox.isSelected()) { + checkbox.click() + } +} +Thread.sleep(5000) + +def continueBtn = WDS.browser.findElement(By.xpath("//button[text()='Continue']")) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", continueBtn) +continueBtn.click() +Thread.sleep(5000) + +def finish = WDS.browser.findElement(By.xpath("//button[text()='Finish']")) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", finish) +finish.click() +Thread.sleep(5000) +*/ + +def searchIcon = WDS.browser.findElement(By.className('search-button')) +searchIcon.click() +Thread.sleep(5000) + +def company = WDS.browser.findElement(By.cssSelector('[value="companies"]')) +company.click() +Thread.sleep(5000) + + +def searchInput = WDS.browser.findElement(By.className('css-1pog434')) +searchInput.sendKeys('t') +Thread.sleep(5000) + +def searchButton = WDS.browser.findElement(By.className('search-by__search')) +searchButton.click() +Thread.sleep(5000) + +def button = WDS.browser.findElement(By.xpath("//button[text()='Test Transport Inc.']")) +button.click() +Thread.sleep(5000) +def tab = WDS.browser.findElement(By.xpath("//div[@class='tab__label' and text()='Active Permits']")) +tab.click() +Thread.sleep(5000) + +def firstDotButton = WDS.browser.findElement(By.className('css-15mydm5')) +firstDotButton.click() +Thread.sleep(5000) +def amendButton = WDS.browser.findElement(By.xpath("//li[text()='Amend']")) +amendButton.click() +Thread.sleep(5000) + +def year = WDS.browser.findElement(By.cssSelector('[name="permitData.vehicleDetails.year"]')) +year.clear() +year.sendKeys("2008") +Thread.sleep(5000) + +def amendment = WDS.browser.findElement(By.cssSelector('[name="comment"]')) +amendment.clear() +amendment.sendKeys("Make year updated") +Thread.sleep(5000) + + +def continueButton = WDS.browser.findElement(By.cssSelector('[data-testid="continue-application-button"]')) +Thread.sleep(5000) + +if (continueButton != null) { + continueButton.click() + WDS.log.info('Clicked the button with data-testid="continue-application-button"') +} else { + WDS.log.info('Button with data-testid="continue-application-button" not found') +} + +Thread.sleep(10000) +def checkboxes = WDS.browser.findElements(By.cssSelector('input[type="checkbox"]')) +checkboxes.each { checkbox -> + WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", checkbox) + if (!checkbox.isSelected()) { + checkbox.click() + } +} +Thread.sleep(5000) + +def continueBtn = WDS.browser.findElement(By.xpath("//button[text()='Continue']")) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", continueBtn) +continueBtn.click() +Thread.sleep(5000) + +def finish = WDS.browser.findElement(By.xpath("//button[text()='Finish']")) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", finish) +finish.click() +Thread.sleep(5000) + +WDS.sampleResult.sampleEnd() + + + groovy + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + ${RESULTS_DIR}/amend_term_oversize.csv + + + + + diff --git a/tests/loadtests/frontend/orbc_load_test_plan_frontend_bceid.jmx b/tests/loadtests/frontend/orbc_load_test_plan_frontend_bceid.jmx new file mode 100644 index 000000000..583ac958c --- /dev/null +++ b/tests/loadtests/frontend/orbc_load_test_plan_frontend_bceid.jmx @@ -0,0 +1,394 @@ + + + + + + false + false + + + + Duration + 3180 + = + + + + + + + + 8889 + + + true + 0 + false + + false + true + true + true + false + 0 + + + + false + false + + + + + + + + NUM_THREADS + 1 + = + + + FRONTEND_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca + = + + + RESULTS_DIR + ~/results + = + + + USER + + = + + + PASSWORD + + = + + + GET_POWERUNITS_URL + https://onroutebc-test-vehicles.apps.silver.devops.gov.bc.ca/companies/104/vehicles/powerUnits + = + + + GET_TRAILERS_URL + https://onroutebc-test-vehicles.apps.silver.devops.gov.bc.ca/companies/104/vehicles/trailers + = + + + BEARER_TOKEN + + = + + + + + + false + true + ${__P(CHROME_DRIVER_PATH)} + false + false + true + + + SYSTEM + + + 8080 + true + + 8080 + true + + 8080 + true + + 8080 + localhost + + + + + continue + + false + 1 + + 1 + 1 + false + + + true + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement +import org.openqa.selenium.devtools.DevTools; +import org.openqa.selenium.devtools.v129.network.Network; +import java.util.Optional; +import org.openqa.selenium.logging.LogType +import org.openqa.selenium.logging.LogEntries +import org.openqa.selenium.chrome.ChromeOptions +import org.openqa.selenium.logging.LoggingPreferences +import java.util.logging.Level +import java.util.function.Consumer + +WDS.sampleResult.sampleStart() + +WDS.log.info "Groovy version: ${GroovySystem.version}" + + +def frontendUrl = WDS.vars.get("FRONTEND_URL") +WDS.browser.get(frontendUrl) +Thread.sleep(5000) + +def loginButton = WDS.browser.findElement(By.id('login-bceid')) +if (loginButton != null) { + loginButton.click() + WDS.log.info("Clicked on the login-bceid button") +} else { + WDS.log.info("Button with id 'login-bceid' not found") +} + +Thread.sleep(10000) +def user = WDS.browser.findElement(By.id('user')) +def password = WDS.browser.findElement(By.id('password')) + +def userValue = WDS.vars.get("USER") +def passwordValue = WDS.vars.get("PASSWORD") +user.sendKeys(userValue) +password.sendKeys(passwordValue) +Thread.sleep(5000) + +def submitButton = WDS.browser.findElement(By.name('btnSubmit')) +if (submitButton != null) { + submitButton.click() +} else { + WDS.log.info('Submit button with name="btnSubmit" not found') +} +Thread.sleep(5000) + +def devTools = ((org.openqa.selenium.chrome.ChromeDriver) WDS.browser).getDevTools() +devTools.createSession() +devTools.send(Network.enable(Optional.empty(), Optional.empty(), Optional.empty())) +devTools.addListener(Network.requestWillBeSent(), { request -> + if (request.getRequest().getUrl().contains("https")) { + def headers = request.getRequest().getHeaders() + def authHeader = headers.get("Authorization") + if (authHeader != null && authHeader.startsWith("Bearer ")) { + def token = authHeader.replace("Bearer ", "") + WDS.log.info("Extracted Token: " + token) + WDS.vars.put("BEARER_TOKEN", token) + } + } + else { + WDS.log.info("bruce test no token: ") + } +} as Consumer) +Thread.sleep(5000) + +WDS.browser.get(frontendUrl) +Thread.sleep(5000) + +WDS.sampleResult.sampleEnd() + + + groovy + + + + + + + + + + + ${GET_POWERUNITS_URL} + GET + true + false + true + false + + + + + + + + + Authorization + Bearer ${BEARER_TOKEN} + + + Accept + application/json + + + Content-Type + application/json + + + + + + + + + + + + + + ${GET_TRAILERS_URL} + GET + true + false + true + false + + + + + + + + + Authorization + Bearer ${BEARER_TOKEN} + + + Accept + application/json + + + Content-Type + application/json + + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + ${RESULTS_DIR}/frontend.csv + + + + + diff --git a/tests/loadtests/frontend/orbc_load_test_plan_frontend_crud_vehicles.jmx b/tests/loadtests/frontend/orbc_load_test_plan_frontend_crud_vehicles.jmx new file mode 100644 index 000000000..827d974da --- /dev/null +++ b/tests/loadtests/frontend/orbc_load_test_plan_frontend_crud_vehicles.jmx @@ -0,0 +1,545 @@ + + + + + + false + false + + + + Duration + 3180 + = + + + + + + + + + + NUM_THREADS + 1 + = + + + FRONTEND_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca + = + + + RESULTS_DIR + ~/results + = + + + USER + + = + + + PASSWORD + + = + + + NEW_POWER_UNIT_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/manage-vehicles/add-powerunit + = + + + UPDATE_POWER_UNIT_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/manage-vehicles/power-units/106 + = + + + MANAGE_VEHICLES_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/manage-vehicles + = + + + NEW_TRAILER_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/manage-vehicles/add-trailer + = + + + UPDATE_TRAILER_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/manage-vehicles/trailers/106 + = + + + + + + false + true + ${__P(CHROME_DRIVER_PATH)} + false + false + true + + + SYSTEM + + + 8080 + true + + 8080 + true + + 8080 + true + + 8080 + localhost + + + + + continue + + false + 1 + + 1 + 1 + false + + + true + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement + +WDS.sampleResult.sampleStart() +def frontendUrl = WDS.vars.get("FRONTEND_URL") +WDS.browser.get(frontendUrl); +Thread.sleep(5000) + + +def loginButton = WDS.browser.findElement(By.id('login-bceid')) +if (loginButton != null) { + loginButton.click() + WDS.log.info("Clicked on the login-bceid button") +} else { + WDS.log.info("Button with id 'login-bceid' not found") +} + +Thread.sleep(10000) +def user = WDS.browser.findElement(By.id('user')) +def password = WDS.browser.findElement(By.id('password')) + +def userValue = WDS.vars.get("USER") +def passwordValue = WDS.vars.get("PASSWORD") +user.sendKeys(userValue) +password.sendKeys(passwordValue) +Thread.sleep(5000) + +def submitButton = WDS.browser.findElement(By.name('btnSubmit')) +if (submitButton != null) { + submitButton.click() +} else { + WDS.log.info('Submit button with name="btnSubmit" not found') +} +Thread.sleep(10000) + +WDS.sampleResult.sampleEnd() + + groovy + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement + +WDS.sampleResult.sampleStart() +Thread.sleep(50000) + +// create a new power unit +def newPowerUnitUrl = WDS.vars.get("NEW_POWER_UNIT_URL") +WDS.browser.get(newPowerUnitUrl); +Thread.sleep(5000) + +def unitNumber = WDS.browser.findElement(By.cssSelector('[name="unitNumber"]')) +unitNumber.sendKeys("MCL37") +Thread.sleep(5000) + +def make = WDS.browser.findElement(By.cssSelector('[name="make"]')) +make.sendKeys("Toyota") +Thread.sleep(5000) + +def year = WDS.browser.findElement(By.cssSelector('[name="year"]')) +year.sendKeys("2002") +Thread.sleep(5000) + +def vin = WDS.browser.findElement(By.cssSelector('[name="vin"]')) +vin.sendKeys("MCL37A") +Thread.sleep(5000) + +def plate = WDS.browser.findElement(By.cssSelector('[name="plate"]')) +plate.sendKeys("VB0007") +Thread.sleep(5000) + +def vehicleSubType = WDS.browser.findElement(By.id('mui-component-select-powerUnitTypeCode')) +vehicleSubType.click() +def bus = WDS.browser.findElement(By.cssSelector('[data-value="BUSCRUM"]')) +bus.click() +Thread.sleep(5000) + +def country = WDS.browser.findElement(By.id('mui-component-select-countryCode')) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", country) +country.click() +Thread.sleep(5000) +def ca = WDS.browser.findElement(By.cssSelector('[data-value="CA"]')) +ca.click() +Thread.sleep(5000) + +def province = WDS.browser.findElement(By.id('mui-component-select-provinceCode')) +province.click() +Thread.sleep(5000) +def ab = WDS.browser.findElement(By.cssSelector('[data-value="AB"]')) +ab.click() +Thread.sleep(5000) + +def licensedGvw = WDS.browser.findElement(By.cssSelector('[name="licensedGvw"]')) +licensedGvw.sendKeys("2000") +Thread.sleep(5000) + +def addToInventory = WDS.browser.findElement(By.className('css-xie432')) +addToInventory.click() +Thread.sleep(5000) + +WDS.sampleResult.sampleEnd() + + groovy + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement + +WDS.sampleResult.sampleStart() +Thread.sleep(5000) + +// update a power unit +def updatePowerUnitUrl = WDS.vars.get("UPDATE_POWER_UNIT_URL") +WDS.browser.get(updatePowerUnitUrl); +Thread.sleep(5000) + +def make = WDS.browser.findElement(By.cssSelector('[name="make"]')) +make.clear() +make.sendKeys("Toyota") +Thread.sleep(5000) + +def year = WDS.browser.findElement(By.cssSelector('[name="year"]')) +year.clear() +year.sendKeys("2021") +Thread.sleep(5000) + +def licensedGvw = WDS.browser.findElement(By.cssSelector('[name="licensedGvw"]')) +licensedGvw.clear() +licensedGvw.sendKeys("5000") +Thread.sleep(5000) + +def save = WDS.browser.findElement(By.className('css-xie432')) +save.click() +Thread.sleep(5000) + +WDS.sampleResult.sampleEnd() + + groovy + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement + +WDS.sampleResult.sampleStart() + +Thread.sleep(10000) + +// delete a power unit +def manageVehiclesUrl = WDS.vars.get("MANAGE_VEHICLES_URL") +WDS.browser.get(manageVehiclesUrl); +Thread.sleep(5000) + +def checkbox = WDS.browser.findElement(By.xpath("(//input[@type='checkbox'])[2]")) +if (!checkbox.isSelected()) { + checkbox.click() +} + +def delete = WDS.browser.findElement(By.className('delete-btn--active')) +delete.click() +Thread.sleep(5000) + +def deleteConfirm = WDS.browser.findElement(By.className('css-1a53fri')) +deleteConfirm.click() +Thread.sleep(5000) + +WDS.sampleResult.sampleEnd() + + groovy + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement + +WDS.sampleResult.sampleStart() +Thread.sleep(5000) + +// create a new trailer +def newTrailerUrl = WDS.vars.get("NEW_TRAILER_URL") +WDS.browser.get(newTrailerUrl); +Thread.sleep(5000) + +def unitNumber = WDS.browser.findElement(By.cssSelector('[name="unitNumber"]')) +unitNumber.sendKeys("TCL37") +Thread.sleep(5000) + +def make = WDS.browser.findElement(By.cssSelector('[name="make"]')) +make.sendKeys("Toyota") +Thread.sleep(5000) + +def year = WDS.browser.findElement(By.cssSelector('[name="year"]')) +year.sendKeys("2002") +Thread.sleep(5000) + +def vin = WDS.browser.findElement(By.cssSelector('[name="vin"]')) +vin.sendKeys("TCL37A") +Thread.sleep(5000) + +def plate = WDS.browser.findElement(By.cssSelector('[name="plate"]')) +plate.sendKeys("VT0007") +Thread.sleep(5000) + +def vehicleSubType = WDS.browser.findElement(By.id('mui-component-select-trailerTypeCode')) +vehicleSubType.click() +def bus = WDS.browser.findElement(By.cssSelector('[data-value="BOOSTER"]')) +bus.click() +Thread.sleep(5000) + +def country = WDS.browser.findElement(By.id('mui-component-select-countryCode')) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", country) +country.click() +Thread.sleep(5000) +def ca = WDS.browser.findElement(By.cssSelector('[data-value="CA"]')) +ca.click() +Thread.sleep(5000) + +def province = WDS.browser.findElement(By.id('mui-component-select-provinceCode')) +province.click() +Thread.sleep(5000) +def ab = WDS.browser.findElement(By.cssSelector('[data-value="AB"]')) +ab.click() +Thread.sleep(5000) + +def addToInventory = WDS.browser.findElement(By.className('css-xie432')) +addToInventory.click() +Thread.sleep(5000) + +WDS.sampleResult.sampleEnd() + + groovy + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement + +WDS.sampleResult.sampleStart() +Thread.sleep(5000) + +// update a trailer +def updateTrailerUrl = WDS.vars.get("UPDATE_TRAILER_URL") +WDS.browser.get(updateTrailerUrl); +Thread.sleep(5000) + +def unitNumber = WDS.browser.findElement(By.cssSelector('[name="unitNumber"]')) +unitNumber.clear() +unitNumber.sendKeys("TCL37") +Thread.sleep(5000) + +def year = WDS.browser.findElement(By.cssSelector('[name="year"]')) +year.clear() +year.sendKeys("2021") +Thread.sleep(5000) + +def save = WDS.browser.findElement(By.className('css-xie432')) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", save) +save.click() +Thread.sleep(5000) + +WDS.sampleResult.sampleEnd() + + groovy + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement + +WDS.sampleResult.sampleStart() +Thread.sleep(5000) + +// delete a trailer +def manageVehiclesUrl = WDS.vars.get("MANAGE_VEHICLES_URL") +WDS.browser.get(manageVehiclesUrl); +Thread.sleep(5000) + +def trailerTab = WDS.browser.findElement(By.id('layout-tab-1')) +trailerTab.click() +Thread.sleep(5000) + +def checkbox = WDS.browser.findElement(By.xpath("(//input[@type='checkbox'])[2]")) +if (!checkbox.isSelected()) { + checkbox.click() +} + +def delete = WDS.browser.findElement(By.className('delete-btn--active')) +delete.click() +Thread.sleep(5000) + +def deleteConfirm = WDS.browser.findElement(By.className('css-1a53fri')) +deleteConfirm.click() +Thread.sleep(5000) + +WDS.sampleResult.sampleEnd() + + groovy + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + ${RESULTS_DIR}/frontend.csv + + + + + diff --git a/tests/loadtests/frontend/orbc_load_test_plan_frontend_edit_profile.jmx b/tests/loadtests/frontend/orbc_load_test_plan_frontend_edit_profile.jmx new file mode 100644 index 000000000..bf7592368 --- /dev/null +++ b/tests/loadtests/frontend/orbc_load_test_plan_frontend_edit_profile.jmx @@ -0,0 +1,416 @@ + + + + + + false + false + + + + Duration + 3180 + = + + + + + + + + + + NUM_THREADS + 1 + = + + + FRONTEND_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca + = + + + RESULTS_DIR + ~/results + = + + + USER + + = + + + PASSWORD + + = + + + NEW_POWER_UNIT_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/manage-vehicles/add-powerunit + = + + + UPDATE_POWER_UNIT_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/manage-vehicles/power-units/106 + = + + + MANAGE_VEHICLES_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/manage-vehicles + = + + + NEW_TRAILER_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/manage-vehicles/add-trailer + = + + + UPDATE_TRAILER_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/manage-vehicles/trailers/106 + = + + + EDIT_CONTACT_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/manage-profiles + = + + + EDIT_USER_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/manage-profiles/edit-user/EB1CA523856F4E7C92F7322C0194CA3E + = + + + + + + false + true + ${__P(CHROME_DRIVER_PATH)} + false + false + true + + + SYSTEM + + + 8080 + true + + 8080 + true + + 8080 + true + + 8080 + localhost + + + + + continue + + false + 1 + + 1 + 1 + false + + + true + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement + +WDS.sampleResult.sampleStart() +def frontendUrl = WDS.vars.get("FRONTEND_URL") +WDS.browser.get(frontendUrl); +Thread.sleep(5000) + + +def loginButton = WDS.browser.findElement(By.id('login-bceid')) +if (loginButton != null) { + loginButton.click() + WDS.log.info("Clicked on the login-bceid button") +} else { + WDS.log.info("Button with id 'login-bceid' not found") +} + +Thread.sleep(10000) +def user = WDS.browser.findElement(By.id('user')) +def password = WDS.browser.findElement(By.id('password')) + +def userValue = WDS.vars.get("USER") +def passwordValue = WDS.vars.get("PASSWORD") +user.sendKeys(userValue) +password.sendKeys(passwordValue) +Thread.sleep(5000) + +def submitButton = WDS.browser.findElement(By.name('btnSubmit')) +if (submitButton != null) { + submitButton.click() +} else { + WDS.log.info('Submit button with name="btnSubmit" not found') +} +Thread.sleep(10000) + +WDS.sampleResult.sampleEnd() + + groovy + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement + +WDS.sampleResult.sampleStart() +Thread.sleep(5000) + +// edit contact details +def editContactUrl = WDS.vars.get("EDIT_CONTACT_URL") +WDS.browser.get(editContactUrl); +Thread.sleep(5000) + +def edit = WDS.browser.findElement(By.className('css-5k7mli')) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", edit) +edit.click() +Thread.sleep(5000) + +def phone = WDS.browser.findElement(By.cssSelector('[name="phone"]')) +phone.clear() +phone.sendKeys("(250) 205-0006") +Thread.sleep(5000) + +def extension = WDS.browser.findElement(By.cssSelector('[name="extension"]')) +extension.clear() +extension.sendKeys("0001") +Thread.sleep(5000) + +def fax = WDS.browser.findElement(By.cssSelector('[name="fax"]')) +fax.clear() +fax.sendKeys("(250) 205-0007") +Thread.sleep(5000) + + + +def save = WDS.browser.findElement(By.className('css-xie432')) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", save) +save.click() +Thread.sleep(5000) + +WDS.sampleResult.sampleEnd() + + groovy + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement + +WDS.sampleResult.sampleStart() +Thread.sleep(5000) + +// edit contact details +def editContactUrl = WDS.vars.get("EDIT_CONTACT_URL") +WDS.browser.get(editContactUrl); +Thread.sleep(5000) + +def tab = WDS.browser.findElement(By.xpath("//div[@class='tab__label' and text()='My Information']")) +tab.click() +Thread.sleep(5000) + +def edit = WDS.browser.findElement(By.className('css-17ifrgy')) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", edit) +edit.click() +Thread.sleep(5000) + + +def extension = WDS.browser.findElement(By.cssSelector('[name="phone1Extension"]')) +extension.clear() +extension.sendKeys("0001") +Thread.sleep(5000) + +def fax = WDS.browser.findElement(By.cssSelector('[name="fax"]')) +fax.clear() +fax.sendKeys("(250) 205-0007") +Thread.sleep(5000) + + + +def save = WDS.browser.findElement(By.className('css-xie432')) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", save) +save.click() +Thread.sleep(5000) + +WDS.sampleResult.sampleEnd() + + groovy + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement + +WDS.sampleResult.sampleStart() +Thread.sleep(5000) + +// edit contact details +def editUserUrl = WDS.vars.get("EDIT_USER_URL") +WDS.browser.get(editUserUrl); +Thread.sleep(5000) + + +def phone2 = WDS.browser.findElement(By.cssSelector('[name="phone2"]')) +phone2.clear() +phone2.sendKeys("(250) 205-0007") +Thread.sleep(5000) + + +def extension = WDS.browser.findElement(By.cssSelector('[name="phone2Extension"]')) +extension.clear() +extension.sendKeys("0002") +Thread.sleep(5000) + +def fax = WDS.browser.findElement(By.cssSelector('[name="fax"]')) +fax.clear() +fax.sendKeys("(250) 205-0009") +Thread.sleep(5000) + + +def save = WDS.browser.findElement(By.className('css-xie432')) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", save) +save.click() +Thread.sleep(5000) + +WDS.sampleResult.sampleEnd() + + groovy + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + ${RESULTS_DIR}/frontend.csv + + + + + diff --git a/tests/loadtests/frontend/orbc_load_test_plan_frontend_idir.jmx b/tests/loadtests/frontend/orbc_load_test_plan_frontend_idir.jmx new file mode 100644 index 000000000..b9501bf63 --- /dev/null +++ b/tests/loadtests/frontend/orbc_load_test_plan_frontend_idir.jmx @@ -0,0 +1,482 @@ + + + + + + false + false + + + + Duration + 3180 + = + + + + + + + + 8889 + + + true + 0 + false + + false + true + true + true + false + 0 + + + + false + false + + + + + + + + NUM_THREADS + 1 + = + + + FRONTEND_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca + = + + + RESULTS_DIR + ~/results + = + + + USER + + = + + + PASSWORD + + = + + + GET_POWERUNITS_URL + https://onroutebc-test-vehicles.apps.silver.devops.gov.bc.ca/companies/104/vehicles/powerUnits + = + + + GET_TRAILERS_URL + https://onroutebc-test-vehicles.apps.silver.devops.gov.bc.ca/companies/104/vehicles/trailers + = + + + BEARER_TOKEN + + = + + + VEHICLES_API_URL + https://onroutebc-test-vehicles.apps.silver.devops.gov.bc.ca + = + + + + + + false + true + ${__P(CHROME_DRIVER_PATH)} + false + false + true + + + SYSTEM + + + 8080 + true + + 8080 + true + + 8080 + true + + 8080 + localhost + + + + + continue + + false + 1 + + 1 + 1 + false + + + true + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement +import org.openqa.selenium.devtools.DevTools; +import org.openqa.selenium.devtools.v129.network.Network; +import java.util.Optional; +import org.openqa.selenium.logging.LogType +import org.openqa.selenium.logging.LogEntries +import org.openqa.selenium.chrome.ChromeOptions +import org.openqa.selenium.logging.LoggingPreferences +import java.util.logging.Level +import java.util.function.Consumer + +WDS.sampleResult.sampleStart() + +WDS.log.info "Groovy version: ${GroovySystem.version}" + + +def frontendUrl = WDS.vars.get("FRONTEND_URL") +WDS.browser.get(frontendUrl) +Thread.sleep(5000) + +def loginButton = WDS.browser.findElement(By.id('login-idir')) +if (loginButton != null) { + loginButton.click() + WDS.log.info("Clicked on the login-bceid button") +} else { + WDS.log.info("Button with id 'login-bceid' not found") +} + +Thread.sleep(5000) + +/* +try { + def user = WDS.browser.findElement(By.id('user')) + def password = WDS.browser.findElement(By.id('password')) + if (user != null) { + def userValue = WDS.vars.get("USER") + def passwordValue = WDS.vars.get("PASSWORD") + user.sendKeys(userValue) + password.sendKeys(passwordValue) + Thread.sleep(5000) + + def submitButton = WDS.browser.findElement(By.name('btnSubmit')) + if (submitButton != null) { + submitButton.click() + } else { + WDS.log.info('Submit button with name="btnSubmit" not found') + } + Thread.sleep(5000) + } +} catch (NoSuchElementException e) { + WDS.log.info('User element not found.') +} +*/ + + +def devTools = ((org.openqa.selenium.chrome.ChromeDriver) WDS.browser).getDevTools() +devTools.createSession() +devTools.send(Network.enable(Optional.empty(), Optional.empty(), Optional.empty())) +devTools.addListener(Network.requestWillBeSent(), { request -> + if (request.getRequest().getUrl().contains("https")) { + def headers = request.getRequest().getHeaders() + def authHeader = headers.get("Authorization") + if (authHeader != null && authHeader.startsWith("Bearer ")) { + def token = authHeader.replace("Bearer ", "") + WDS.log.info("Extracted Token: " + token) + WDS.vars.put("BEARER_TOKEN", token) + } + } + else { + WDS.log.info("bruce test no token: ") + } +} as Consumer) +Thread.sleep(5000) + +WDS.browser.get(frontendUrl) +Thread.sleep(5000) + +WDS.sampleResult.sampleEnd() + + + groovy + + + + + + + + + + + ${VEHICLES_API_URL}/permits?searchColumn=permitNumber&searchString=1&page=1&take=10 + GET + true + false + true + false + + + + + + + + + Authorization + Bearer ${BEARER_TOKEN} + + + Accept + application/json + + + Content-Type + application/json + + + + + + + + + + + + + + ${VEHICLES_API_URL}/users?userRole=PPCCLERK&permitIssuerPPCUser=true + GET + true + false + true + false + + + + + + + + + Authorization + Bearer ${BEARER_TOKEN} + + + Accept + application/json + + + Content-Type + application/json + + + + + + + + + + + + + + ${VEHICLES_API_URL}/users/claims?companyId=74 + GET + true + false + true + false + + + + + + + + + Authorization + Bearer ${BEARER_TOKEN} + + + Accept + application/json + + + Content-Type + application/json + + + + + + + + + + + + + + ${VEHICLES_API_URL}/users/user-context + POST + true + false + true + false + + + + + + + + + Authorization + Bearer ${BEARER_TOKEN} + + + Accept + application/json + + + Content-Type + application/json + + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + ${RESULTS_DIR}/frontend.csv + + + + + diff --git a/tests/loadtests/frontend/orbc_load_test_plan_frontend_idir_scenarios.jmx b/tests/loadtests/frontend/orbc_load_test_plan_frontend_idir_scenarios.jmx new file mode 100644 index 000000000..94410bb39 --- /dev/null +++ b/tests/loadtests/frontend/orbc_load_test_plan_frontend_idir_scenarios.jmx @@ -0,0 +1,528 @@ + + + + + + false + false + + + + Duration + 3180 + = + + + + + + + + + + NUM_THREADS + 1 + = + + + FRONTEND_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca + = + + + RESULTS_DIR + ~/results + = + + + USER + brwang + = + + + PASSWORD + Dslcfjzbjhmdys_11 + = + + + HOME_PAGE_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/idir/home + = + + + VEHICLES_API_URL + https://onroutebc-test-vehicles.apps.silver.devops.gov.bc.ca + = + + + BEARER_TOKEN + + = + + + SEARCH_PERMITE_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/idir/search-results?searchEntity=permits&searchByFilter=permitNumber&searchString=1 + = + + + RESEND_EMAIL + bruce.wang@gov.bc.ca + = + + + + + + false + true + ${__P(CHROME_DRIVER_PATH)} + false + false + true + + + SYSTEM + + + 8080 + true + + 8080 + true + + 8080 + true + + 8080 + localhost + + + + + continue + + false + 1 + + 1 + 1 + false + + + true + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement +import org.openqa.selenium.devtools.DevTools; +import org.openqa.selenium.devtools.v129.network.Network; +import java.util.Optional; +import org.openqa.selenium.logging.LogType +import org.openqa.selenium.logging.LogEntries +import org.openqa.selenium.chrome.ChromeOptions +import org.openqa.selenium.logging.LoggingPreferences +import java.util.logging.Level +import java.util.function.Consumer + +WDS.sampleResult.sampleStart() + +WDS.log.info "Groovy version: ${GroovySystem.version}" + + +def frontendUrl = WDS.vars.get("FRONTEND_URL") +WDS.browser.get(frontendUrl) +Thread.sleep(5000) + +def loginButton = WDS.browser.findElement(By.id('login-idir')) +if (loginButton != null) { + loginButton.click() + WDS.log.info("Clicked on the login-bceid button") +} else { + WDS.log.info("Button with id 'login-bceid' not found") +} + +Thread.sleep(5000) + +/* +try { + def user = WDS.browser.findElement(By.id('user')) + def password = WDS.browser.findElement(By.id('password')) + if (user != null) { + def userValue = WDS.vars.get("USER") + def passwordValue = WDS.vars.get("PASSWORD") + user.sendKeys(userValue) + password.sendKeys(passwordValue) + Thread.sleep(5000) + + def submitButton = WDS.browser.findElement(By.name('btnSubmit')) + if (submitButton != null) { + submitButton.click() + } else { + WDS.log.info('Submit button with name="btnSubmit" not found') + } + Thread.sleep(5000) + } +} catch (NoSuchElementException e) { + WDS.log.info('User element not found.') +} +*/ + + +def devTools = ((org.openqa.selenium.chrome.ChromeDriver) WDS.browser).getDevTools() +devTools.createSession() +devTools.send(Network.enable(Optional.empty(), Optional.empty(), Optional.empty())) +devTools.addListener(Network.requestWillBeSent(), { request -> + if (request.getRequest().getUrl().contains("https")) { + def headers = request.getRequest().getHeaders() + def authHeader = headers.get("Authorization") + if (authHeader != null && authHeader.startsWith("Bearer ")) { + def token = authHeader.replace("Bearer ", "") + WDS.log.info("Extracted Token: " + token) + WDS.vars.put("BEARER_TOKEN", token) + } + } + else { + WDS.log.info("no token: ") + } +} as Consumer) +Thread.sleep(5000) + +WDS.browser.get(frontendUrl) +Thread.sleep(5000) + +WDS.sampleResult.sampleEnd() + + + groovy + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement + +WDS.sampleResult.sampleStart() +Thread.sleep(5000) + +// edit contact details +def homePageUrl = WDS.vars.get("HOME_PAGE_URL") +WDS.browser.get(homePageUrl); +Thread.sleep(5000) + +// Check if the sidebar appears +try { + // WebElement sidebar = wait.until(ExpectedConditions.visibilityOfElementLocated(By.className("nav-icon-side-bar"))) + def sidebar = WDS.browser.findElement(By.className('nav-icon-side-bar'))// Adjust selector as needed + WDS.log.info("Sidebar is visible.") +} catch (Exception e) { + WDS.log.error("Sidebar is not visible.") +} + +// Check if the search button appears +try { + def searchButton = WDS.browser.findElement(By.className('search-button')) //WebElement searchButton = wait.until(ExpectedConditions.visibilityOfElementLocated(By.className("search-button"))) // Adjust selector as needed + + WDS.log.info("Search button is visible.") +} catch (Exception e) { + WDS.log.error("Search button is not visible.") +} + +// report button works +try { + def report = WDS.browser.findElement(By.className('nav-button--report')) + WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", report) + report.click() + WDS.log.info("Report button works.") + Thread.sleep(5000) + } catch (Exception e){ + WDS.log.info("Report button does not work.") + } + +// home button works +try { + def home = WDS.browser.findElement(By.className('nav-button--home')) + WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", home) + home.click() + WDS.log.info("Home button works.") + Thread.sleep(5000) + } catch (Exception e){ + WDS.log.info("Home button does not work.") + } + + + +WDS.sampleResult.sampleEnd() + + groovy + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement + +WDS.sampleResult.sampleStart() +Thread.sleep(5000) + +// edit contact details +def homePageUrl = WDS.vars.get("HOME_PAGE_URL") +WDS.browser.get(homePageUrl); +Thread.sleep(5000) + +// Check if the sidebar appears +try { + // WebElement sidebar = wait.until(ExpectedConditions.visibilityOfElementLocated(By.className("nav-icon-side-bar"))) + def sidebar = WDS.browser.findElement(By.className('nav-icon-side-bar'))// Adjust selector as needed + WDS.log.info("Sidebar is visible.") +} catch (Exception e) { + WDS.log.error("Sidebar is not visible.") +} + +// Check if the search button appears +try { + def searchButton = WDS.browser.findElement(By.className('search-button')) //WebElement searchButton = wait.until(ExpectedConditions.visibilityOfElementLocated(By.className("search-button"))) // Adjust selector as needed + + WDS.log.info("Search button is visible.") +} catch (Exception e) { + WDS.log.error("Search button is not visible.") +} + +// report button works +try { + def report = WDS.browser.findElement(By.className('nav-button--report')) + WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", report) + report.click() + WDS.log.info("Report button works.") + def viewReport = WDS.browser.findElement(By.className('css-xie432')) + viewReport.click() + Thread.sleep(5000) + + def paymentAndRefundDetails = WDS.browser.findElement(By.className('css-hyxlzm')) + paymentAndRefundDetails.click() + Thread.sleep(5000) + + viewReport.click() + + } catch (Exception e){ + WDS.log.info("Report button does not work.") + } + + +WDS.sampleResult.sampleEnd() + + groovy + + + + + + + + + + + ${VEHICLES_API_URL}/permits?searchColumn=permitNumber&searchString=1&page=1&take=10 + GET + true + false + true + false + + + + + + + + + Authorization + Bearer ${BEARER_TOKEN} + + + Accept + application/json + + + Content-Type + application/json + + + + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement + +WDS.sampleResult.sampleStart() +Thread.sleep(5000) + +// edit contact details +def searchPermitUrl = WDS.vars.get("SEARCH_PERMITE_URL") +WDS.browser.get(searchPermitUrl); +Thread.sleep(5000) + +def firstPermit = WDS.browser.findElement(By.className("css-mn35dv")) +firstPermit.click(); + + +def firstThreeDot = WDS.browser.findElement(By.className("css-15mydm5")) +firstThreeDot.click() +Thread.sleep(2000) + + +def viewReceipt = WDS.browser.findElement(By.cssSelector('[data-option-value="viewReceipt"]')) +viewReceipt.click() +Thread.sleep(2000) + +firstThreeDot.click() +Thread.sleep(2000) + +def resend = WDS.browser.findElement(By.cssSelector('[data-option-value="resend"]')) +resend.click() +Thread.sleep(2000) + +def email = WDS.browser.findElement(By.cssSelector('[data-testid="input-email"]')) +def resendEmail = WDS.vars.get("RESEND_EMAIL") +email.sendKeys(resendEmail) +Thread.sleep(2000) + +def checkboxes = WDS.browser.findElements(By.className('css-1nx7jar')) +checkboxes.each { checkbox -> + WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", checkbox) + if (!checkbox.isSelected()) { + checkbox.click() + } +} + +def resendButton = WDS.browser.findElement(By.className('css-xie432')) +resendButton.click() +Thread.sleep(2000) + +WDS.sampleResult.sampleEnd() + + groovy + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + ${RESULTS_DIR}/frontend.csv + + + + + diff --git a/tests/loadtests/frontend/orbc_load_test_plan_frontend_term_oversize.jmx b/tests/loadtests/frontend/orbc_load_test_plan_frontend_term_oversize.jmx new file mode 100644 index 000000000..d5db385bf --- /dev/null +++ b/tests/loadtests/frontend/orbc_load_test_plan_frontend_term_oversize.jmx @@ -0,0 +1,334 @@ + + + + + + false + false + + + + Duration + 3180 + = + + + + + + + + + + NUM_THREADS + 1 + = + + + FRONTEND_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca + = + + + RESULTS_DIR + ~/results + = + + + USER + + = + + + PASSWORD + + = + + + NEW_APPLICATION_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/create-application/TROS + = + + + + + + false + true + ${__P(CHROME_DRIVER_PATH)} + false + false + true + + + SYSTEM + + + 8080 + true + + 8080 + true + + 8080 + true + + 8080 + localhost + + + + + continue + + false + 1 + + 1 + 1 + false + + + true + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement + +WDS.sampleResult.sampleStart() +def frontendUrl = WDS.vars.get("FRONTEND_URL") +WDS.browser.get(frontendUrl); +Thread.sleep(5000) + + +def loginButton = WDS.browser.findElement(By.id('login-bceid')) +if (loginButton != null) { + loginButton.click() + WDS.log.info("Clicked on the login-bceid button") +} else { + WDS.log.info("Button with id 'login-bceid' not found") +} + +Thread.sleep(10000) +def user = WDS.browser.findElement(By.id('user')) +def password = WDS.browser.findElement(By.id('password')) + +def userValue = WDS.vars.get("USER") +def passwordValue = WDS.vars.get("PASSWORD") +user.sendKeys(userValue) +password.sendKeys(passwordValue) +Thread.sleep(5000) + +def submitButton = WDS.browser.findElement(By.name('btnSubmit')) +if (submitButton != null) { + submitButton.click() +} else { + WDS.log.info('Submit button with name="btnSubmit" not found') +} +Thread.sleep(10000) + +// start a new application +def newApplicationUrl = WDS.vars.get("NEW_APPLICATION_URL") +WDS.browser.get(newApplicationUrl); +Thread.sleep(5000) + +def selectedVehicle = WDS.browser.findElement(By.id('application-select-vehicle')) +selectedVehicle.sendKeys("MCL36") +Thread.sleep(5000) +def vin = WDS.browser.findElement(By.cssSelector('[name="permitData.vehicleDetails.vin"]')) +vin.sendKeys("MCL36A") +Thread.sleep(5000) +def plate = WDS.browser.findElement(By.cssSelector('[name="permitData.vehicleDetails.plate"]')) +plate.sendKeys("L4NDO") +Thread.sleep(5000) +def make = WDS.browser.findElement(By.cssSelector('[name="permitData.vehicleDetails.make"]')) +make.sendKeys("BMW") +Thread.sleep(5000) +def year = WDS.browser.findElement(By.cssSelector('[name="permitData.vehicleDetails.year"]')) +year.sendKeys("2020") +Thread.sleep(5000) +def country = WDS.browser.findElement(By.id('mui-component-select-permitData.vehicleDetails.countryCode')) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", country) +country.click() +Thread.sleep(5000) +def ca = WDS.browser.findElement(By.cssSelector('[data-value="CA"]')) +ca.click() +Thread.sleep(5000) +def province = WDS.browser.findElement(By.id('mui-component-select-permitData.vehicleDetails.provinceCode')) +province.click() +Thread.sleep(5000) +def bc = WDS.browser.findElement(By.cssSelector('[data-value="BC"]')) +bc.click() +Thread.sleep(5000) +def vehicleType = WDS.browser.findElement(By.id('mui-component-select-permitData.vehicleDetails.vehicleType')) +vehicleType.click() +def powerUnit = WDS.browser.findElement(By.cssSelector('[data-value="powerUnit"]')) +powerUnit.click() +Thread.sleep(5000) + + +Thread.sleep(5000) +def vehicleSubType = WDS.browser.findElement(By.id('mui-component-select-permitData.vehicleDetails.vehicleSubType')) +vehicleSubType.click() +def trucks = WDS.browser.findElement(By.cssSelector('[data-value="REGTRCK"]')) +trucks.click() +Thread.sleep(5000) + +def continueButton = WDS.browser.findElement(By.cssSelector('[data-testid="continue-application-button"]')) +Thread.sleep(5000) + +if (continueButton != null) { + continueButton.click() + WDS.log.info('Clicked the button with data-testid="continue-application-button"') +} else { + WDS.log.info('Button with data-testid="continue-application-button" not found') +} + +Thread.sleep(10000) +def checkboxes = WDS.browser.findElements(By.cssSelector('input[type="checkbox"]')) +checkboxes.each { checkbox -> + WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", checkbox) + if (!checkbox.isSelected()) { + checkbox.click() + } +} + +Thread.sleep(5000) +def addToCart = WDS.browser.findElement(By.cssSelector('[data-testid="add-to-cart-btn"]')) +addToCart.click() + +Thread.sleep(10000) +def shoppingCart = WDS.browser.findElement(By.className('shopping-cart-button')) +shoppingCart.click() + +Thread.sleep(5000) +def payNow = WDS.browser.findElement(By.cssSelector('[data-testid="pay-now-btn"]')) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", payNow) +payNow.click() + +Thread.sleep(5000) + +WDS.sampleResult.sampleEnd() + + + groovy + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + ${RESULTS_DIR}/frontend.csv + + + + + diff --git a/tests/loadtests/frontend/orbc_load_test_plan_frontend_term_overweight.jmx b/tests/loadtests/frontend/orbc_load_test_plan_frontend_term_overweight.jmx new file mode 100644 index 000000000..b5c46d79c --- /dev/null +++ b/tests/loadtests/frontend/orbc_load_test_plan_frontend_term_overweight.jmx @@ -0,0 +1,332 @@ + + + + + + false + false + + + + Duration + 3180 + = + + + + + + + + + + NUM_THREADS + 1 + = + + + FRONTEND_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca + = + + + RESULTS_DIR + ~/results + = + + + USER + + = + + + PASSWORD + + = + + + NEW_APPLICATION_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/create-application/TROW + = + + + + + + false + true + ${__P(CHROME_DRIVER_PATH)} + false + false + true + + + SYSTEM + + + 8080 + true + + 8080 + true + + 8080 + true + + 8080 + localhost + + + + + continue + + false + 1 + + 1 + 1 + false + + + true + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement + +WDS.sampleResult.sampleStart() +def frontendUrl = WDS.vars.get("FRONTEND_URL") +WDS.browser.get(frontendUrl); +Thread.sleep(5000) + + +def loginButton = WDS.browser.findElement(By.id('login-bceid')) +if (loginButton != null) { + loginButton.click() + WDS.log.info("Clicked on the login-bceid button") +} else { + WDS.log.info("Button with id 'login-bceid' not found") +} + +Thread.sleep(10000) +def user = WDS.browser.findElement(By.id('user')) +def password = WDS.browser.findElement(By.id('password')) + +def userValue = WDS.vars.get("USER") +def passwordValue = WDS.vars.get("PASSWORD") +user.sendKeys(userValue) +password.sendKeys(passwordValue) +Thread.sleep(5000) + +def submitButton = WDS.browser.findElement(By.name('btnSubmit')) +if (submitButton != null) { + submitButton.click() +} else { + WDS.log.info('Submit button with name="btnSubmit" not found') +} +Thread.sleep(10000) + +// start a new application +def newApplicationUrl = WDS.vars.get("NEW_APPLICATION_URL") +WDS.browser.get(newApplicationUrl); +Thread.sleep(5000) + +def selectedVehicle = WDS.browser.findElement(By.id('application-select-vehicle')) +selectedVehicle.sendKeys("123") +Thread.sleep(5000) +def vin = WDS.browser.findElement(By.cssSelector('[name="permitData.vehicleDetails.vin"]')) +vin.sendKeys("115588") +Thread.sleep(5000) +def plate = WDS.browser.findElement(By.cssSelector('[name="permitData.vehicleDetails.plate"]')) +plate.sendKeys("1B25F") +Thread.sleep(5000) +def make = WDS.browser.findElement(By.cssSelector('[name="permitData.vehicleDetails.make"]')) +make.sendKeys("PHIL") +Thread.sleep(5000) +def year = WDS.browser.findElement(By.cssSelector('[name="permitData.vehicleDetails.year"]')) +year.sendKeys("1992") +Thread.sleep(5000) +def country = WDS.browser.findElement(By.id('mui-component-select-permitData.vehicleDetails.countryCode')) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", country) +country.click() +Thread.sleep(5000) +def ca = WDS.browser.findElement(By.cssSelector('[data-value="CA"]')) +ca.click() +Thread.sleep(5000) +def province = WDS.browser.findElement(By.id('mui-component-select-permitData.vehicleDetails.provinceCode')) +province.click() +Thread.sleep(5000) +def bc = WDS.browser.findElement(By.cssSelector('[data-value="BC"]')) +bc.click() +Thread.sleep(5000) +def vehicleType = WDS.browser.findElement(By.id('mui-component-select-permitData.vehicleDetails.vehicleType')) +vehicleType.click() +def trailer = WDS.browser.findElement(By.cssSelector('[data-value="trailer"]')) +trailer.click() + +Thread.sleep(5000) +def vehicleSubType = WDS.browser.findElement(By.id('mui-component-select-permitData.vehicleDetails.vehicleSubType')) +vehicleSubType.click() +def dollies = WDS.browser.findElement(By.cssSelector('[data-value="DOLLIES"]')) +dollies.click() +Thread.sleep(5000) + +def continueButton = WDS.browser.findElement(By.cssSelector('[data-testid="continue-application-button"]')) +Thread.sleep(5000) + +if (continueButton != null) { + continueButton.click() + WDS.log.info('Clicked the button with data-testid="continue-application-button"') +} else { + WDS.log.info('Button with data-testid="continue-application-button" not found') +} + +Thread.sleep(10000) +def checkboxes = WDS.browser.findElements(By.cssSelector('input[type="checkbox"]')) +checkboxes.each { checkbox -> + WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", checkbox) + if (!checkbox.isSelected()) { + checkbox.click() + } +} + +Thread.sleep(5000) +def addToCart = WDS.browser.findElement(By.cssSelector('[data-testid="add-to-cart-btn"]')) +addToCart.click() + +Thread.sleep(10000) +def shoppingCart = WDS.browser.findElement(By.className('shopping-cart-button')) +shoppingCart.click() + +Thread.sleep(5000) +def payNow = WDS.browser.findElement(By.cssSelector('[data-testid="pay-now-btn"]')) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", payNow) +payNow.click() + +Thread.sleep(5000) + +WDS.sampleResult.sampleEnd() + + + groovy + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + ${RESULTS_DIR}/frontend.csv + + + + + diff --git a/tests/loadtests/frontend/orbc_load_test_plan_frontend_void_term_oversize.jmx b/tests/loadtests/frontend/orbc_load_test_plan_frontend_void_term_oversize.jmx new file mode 100644 index 000000000..596253c6d --- /dev/null +++ b/tests/loadtests/frontend/orbc_load_test_plan_frontend_void_term_oversize.jmx @@ -0,0 +1,277 @@ + + + + + + false + false + + + + Duration + 3180 + = + + + + + + + + + + NUM_THREADS + 200 + = + + + FRONTEND_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca + = + + + RESULTS_DIR + ~/results + = + + + USER + + = + + + PASSWORD + + = + + + VOID_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/companies/1/permits/457/void + = + + + + + + false + true + ${__P(CHROME_DRIVER_PATH)} + false + false + true + + + SYSTEM + + + 8080 + true + + 8080 + true + + 8080 + true + + 8080 + localhost + + + + + continue + + false + 1 + + 1 + 1 + false + + + true + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement + +WDS.sampleResult.sampleStart() +def frontendUrl = WDS.vars.get("FRONTEND_URL") +WDS.browser.get(frontendUrl); +Thread.sleep(5000) + +def loginButton = WDS.browser.findElement(By.id('login-idir')) +if (loginButton != null) { + loginButton.click() + WDS.log.info("Clicked on the login-bceid button") +} else { + WDS.log.info("Button with id 'login-bceid' not found") +} +Thread.sleep(10000) + +def searchIcon = WDS.browser.findElement(By.className('search-button')) +searchIcon.click() +Thread.sleep(5000) + +def company = WDS.browser.findElement(By.cssSelector('[value="companies"]')) +company.click() +Thread.sleep(5000) + + +def searchInput = WDS.browser.findElement(By.className('css-1pog434')) +searchInput.sendKeys('p') +Thread.sleep(5000) + +def searchButton = WDS.browser.findElement(By.className('search-by__search')) +searchButton.click() +Thread.sleep(5000) + +def button = WDS.browser.findElement(By.xpath("//button[text()='Test Transport Inc.']")) +button.click() +Thread.sleep(5000) +def tab = WDS.browser.findElement(By.xpath("//div[@class='tab__label' and text()='Active Permits']")) +tab.click() +Thread.sleep(5000) + +def voidUrl = WDS.vars.get("VOID_URL") +WDS.browser.get(voidUrl); +Thread.sleep(5000) + +def reason = WDS.browser.findElement(By.cssSelector('[name="reason"]')) +reason.sendKeys("test to void a appliation") +Thread.sleep(5000) + +def continueBtn = WDS.browser.findElement(By.xpath("//button[text()='Continue']")) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", continueBtn) +continueBtn.click() +Thread.sleep(5000) + +def finish = WDS.browser.findElement(By.xpath("//button[text()='Finish']")) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", finish) +finish.click() +Thread.sleep(5000) + +WDS.sampleResult.sampleEnd() + + + groovy + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + ${RESULTS_DIR}/frontend.csv + + + + + diff --git a/tests/loadtests/frontend/results/amend_term_oversize.csv b/tests/loadtests/frontend/results/amend_term_oversize.csv new file mode 100644 index 000000000..cb9f7dccf --- /dev/null +++ b/tests/loadtests/frontend/results/amend_term_oversize.csv @@ -0,0 +1,7 @@ +timeStamp,elapsed,label,responseCode,responseMessage,threadName,dataType,success,failureMessage,bytes,sentBytes,grpThreads,allThreads,URL,Latency,IdleTime,Connect +1731007898927,27140,login,200,OK,Thread Group 1-1,text,true,,19992,0,1,1,https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/idir/home,0,0,0 +1731007926113,90377,amendApplications,200,OK,Thread Group 1-1,text,true,,43812,0,1,1,https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/idir/search-results?searchEntity=permits&searchByFilter=permitNumber&searchString=P2-00010506,0,0,0 +1731008129597,27172,login,200,OK,Thread Group 1-1,text,true,,19992,0,1,1,https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/idir/home,0,0,0 +1731008156806,91452,amendApplications,200,OK,Thread Group 1-1,text,true,,41490,0,1,1,https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/idir/search-results?searchEntity=permits&searchByFilter=permitNumber&searchString=P2-00010514,0,0,0 +1731008607583,26278,login,200,OK,Thread Group 1-1,text,true,,19992,0,1,1,https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/idir/home,0,0,0 +1731008633889,91847,amendApplications,200,OK,Thread Group 1-1,text,true,,43820,0,1,1,https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca/idir/search-results?searchEntity=permits&searchByFilter=permitNumber&searchString=P2-00010511,0,0,0 diff --git a/tests/loadtests/frontend/results/frontend.csv b/tests/loadtests/frontend/results/frontend.csv new file mode 100644 index 000000000..d9ef28eda --- /dev/null +++ b/tests/loadtests/frontend/results/frontend.csv @@ -0,0 +1 @@ +timeStamp,elapsed,label,responseCode,responseMessage,threadName,dataType,success,failureMessage,bytes,sentBytes,grpThreads,allThreads,URL,Latency,IdleTime,Connect diff --git a/tests/loadtests/vehicles/orbc_load_test_plan_vehicles_bceid.jmx b/tests/loadtests/vehicles/orbc_load_test_plan_vehicles_bceid.jmx new file mode 100644 index 000000000..8093387ed --- /dev/null +++ b/tests/loadtests/vehicles/orbc_load_test_plan_vehicles_bceid.jmx @@ -0,0 +1,549 @@ + + + + + + false + true + false + + + + + + + + + + + + + + + + true + 2 + ^((?!google|facebook|youtube|pinterest|twimg|doubleclick).)*$ + 60000 + 120000 + + + + + + Accept-Language + en-us,en;q=0.5 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 + + + Keep-Alive + 115 + + + User-Agent + Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13 + + + Accept-Encoding + gzip,deflate + + + Accept-Charset + ISO-8859-1,utf-8;q=0.7,*;q=0.7 + + + X-BlazeMeter-Session + ${__P(blazemeter.session_id)} + + + + + + + true + false + + + + true + false + false + + + + + + USERS + 200 + = + + + VEHICLES_API_URL + https://onroutebc-test-vehicles.apps.silver.devops.gov.bc.ca + = + + + FRONTEND_API_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca + = + + + RESULTS_DIR + ~/results + = + + + BEARER_TOKEN_BCEID + + = + + + USER_GUID + + = + + + + + + continue + + false + 1 + + 1 + ${__P(rampup,300)} + 1365261073000 + 1365261073000 + true + ${__P(duration,3000)} + + true + + + + + + Authorization + Bearer ${BEARER_TOKEN_BCEID} + + + Accept + */* + + + Content-Type + application/json + + + + + + true + + + + false + { + "permitId": null, + "originalPermitId": null, + "applicationNumber": null, + "permitType": "TROS", + "permitStatus": "ISSUED", + "permitApprovalSource": "PPC", + "permitApplicationOrigin": "ONLINE", + "permitData": { + "startDate": "2023-06-05T19:12:22Z", + "expiryDate": "2023-07-04T19:12:22Z", + "permitDuration": 30, + "feeSummary": "30", + "commodities": [ + { + "description": "General Permit Conditions", + "condition": "CVSE-1000", + "conditionLink": "https://www.th.gov.bc.ca/forms/getForm.aspx?formId=1251", + "checked": true + }, + { + "description": "Permit Scope and Limitation", + "condition": "CVSE-1070", + "conditionLink": "https://www.th.gov.bc.ca/forms/getForm.aspx?formId=1261", + "checked": true + }, + { + "description": "Log Permit Conditions", + "condition": "CVSE-1000L", + "conditionLink": "https://www.th.gov.bc.ca/forms/getForm.aspx?formId=1250", + "checked": true + } + ], + "contactDetails": { + "firstName": "Lewis", + "lastName": "Hamilton", + "phone1": "(778) 952-1234", + "email": "lewis@f1.com", + "additionalEmail": "lewis2@f1.com", + "phone1Extension": "1", + "phone2": null, + "phone2Extension": null, + "fax": null + }, + "mailingAddress": { + "addressLine1": "123 Short Street", + "addressLine2": null, + "city": "Victoria", + "provinceCode": "BC", + "countryCode": "CA", + "postalCode": "V8X2V5" + }, + "vehicleDetails": { + "vin": "781452", + "plate": "PRJZZP", + "make": "GMC", + "year": 2001, + "countryCode": "CA", + "provinceCode": "BC", + "vehicleType": "powerUnit", + "vehicleSubType": "LOGGING", + "saveVehicle": true + } + }, + "comment": "This application was amended because of so-and-so reason." +} + = + + + + + + + + ${VEHICLES_API_URL}/companies/104/applications + POST + true + false + true + false + + + + + + + + continue + + false + 1 + + ${USERS} + ${__P(rampup,300)} + 1365261073000 + 1365261073000 + true + ${__P(duration,3000)} + + true + + + + + + Authorization + Bearer ${BEARER_TOKEN_BCEID} + + + Accept + application/json + + + Content-Type + application/json + + + + + + + + + false + + = + true + + + + + + + + ${VEHICLES_API_URL}/companies/104/applications/393 + GET + true + false + true + false + + + + + + + true + + + + false + { + "permitType": "TROS", + "permitData": {}, + "comment": "This application was amended because of so-and-so reason." +} + = + + + + + + + + ${VEHICLES_API_URL}/companies/104/applications/393 + PUT + true + false + true + false + + + + + + + + continue + + false + 1 + + ${USERS} + ${__P(rampup,300)} + 1365261073000 + 1365261073000 + true + ${__P(duration,3000)} + + true + + + + + + Authorization + Bearer ${BEARER_TOKEN_BCEID} + + + Accept + */* + + + + + + + + + false + + = + true + + + + + + + + ${VEHICLES_API_URL}/companies/104/vehicles/powerUnits + GET + true + false + true + false + + + + + + + + + Authorization + Bearer ${BEARER_TOKEN} + + + Accept + */* + + + + + + + + + + false + + = + true + + + + + + + + ${VEHICLES_API_URL}/companies/104/vehicles/trailers + GET + true + false + true + false + + + + + + + + + Authorization + Bearer ${BEARER_TOKEN} + + + Accept + */* + + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + ${RESULTS_DIR}/vehicles.csv + + + + + diff --git a/tests/loadtests/vehicles/orbc_load_test_plan_vehicles_idir.jmx b/tests/loadtests/vehicles/orbc_load_test_plan_vehicles_idir.jmx new file mode 100644 index 000000000..fccfc85fa --- /dev/null +++ b/tests/loadtests/vehicles/orbc_load_test_plan_vehicles_idir.jmx @@ -0,0 +1,893 @@ + + + + + + false + false + + + + Duration + 3180 + = + + + + + + + + true + false + false + + + + + true + false + + + + + + Accept-Language + en-us,en;q=0.5 + + + Accept + text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 + + + Keep-Alive + 115 + + + User-Agent + Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13 + + + Accept-Encoding + gzip,deflate + + + Accept-Charset + ISO-8859-1,utf-8;q=0.7,*;q=0.7 + + + X-BlazeMeter-Session + ${__P(blazemeter.session_id)} + + + + + + + + + + + + + + true + 2 + ^((?!google|facebook|youtube|pinterest|twimg|doubleclick).)*$ + 60000 + 120000 + + + + + + USERS + 200 + = + + + VEHICLES_API_URL + https://onroutebc-test-vehicles.apps.silver.devops.gov.bc.ca + = + + + FRONTEND_API_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca + = + + + RESULTS_DIR + ~/results + = + + + BEARER_TOKEN_IDIR + + = + + + USER_GUID + + = + + + + + + continue + + false + 1 + + 1 + ${__P(rampup,300)} + 1365261073000 + 1365261073000 + true + ${__P(duration,3000)} + 0 + false + + + + ${__P(Delay,10000)} + + + + + + Authorization + Bearer ${BEARER_TOKEN_IDIR} + + + Accept + */* + + + + + + true + ${numUsers} + + + + + + + false + + = + true + + + + + + + + ${VEHICLES_API_URL}/permits?searchColumn=permitNumber&searchString=1&page=1&take=10 + GET + true + false + true + false + + + + + + + + + Host + ${VEHICLES_API_URL} + + + Connection + keep-alive + + + sec-ch-ua + "Chromium";v="118", "Google Chrome";v="118", "Not=A?Brand";v="99" + + + Accept + application/json + + + sec-ch-ua-mobile + ?0 + + + Authorization + Bearer ${BEARER_TOKEN} + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36 + + + sec-ch-ua-platform + "Windows" + + + Origin + ${FRONTEND_API_URL} + + + Sec-Fetch-Site + same-site + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Dest + empty + + + Referer + ${FRONTEND_API_URL}/ + + + Accept-Encoding + gzip, deflate, br + + + Accept-Language + en-US,en;q=0.9 + + + If-None-Match + W/"17b2-OQs45yY+9rxT8oaE549bg+d9IqA" + + + + + + + + Authorization + Bearer ${BEARER_TOKEN} + + + Accept + application/json + + + + + + + + + + + + + + ${VEHICLES_API_URL}/users?userRole=PPCCLERK&permitIssuerPPCUser=true + GET + true + false + true + false + + + + + + + + + Host + ${VEHICLES_API_URL} + + + Connection + keep-alive + + + sec-ch-ua + "Chromium";v="118", "Google Chrome";v="118", "Not=A?Brand";v="99" + + + Accept + application/json + + + sec-ch-ua-mobile + ?0 + + + Authorization + Bearer ${BEARER_TOKEN} + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36 + + + sec-ch-ua-platform + "Windows" + + + Origin + ${FRONTEND_API_URL} + + + Sec-Fetch-Site + same-site + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Dest + empty + + + Referer + ${FRONTEND_API_URL}/ + + + Accept-Encoding + gzip, deflate, br + + + Accept-Language + en-US,en;q=0.9 + + + If-None-Match + W/"17b2-OQs45yY+9rxT8oaE549bg+d9IqA" + + + + + + + + Authorization + Bearer ${BEARER_TOKEN} + + + Accept + */* + + + + + + + + + + + + + + ${VEHICLES_API_URL}/users/claims?companyId=74 + GET + true + false + true + false + + + + + + + + + Host + ${VEHICLES_API_URL} + + + Connection + keep-alive + + + sec-ch-ua + "Chromium";v="118", "Google Chrome";v="118", "Not=A?Brand";v="99" + + + Accept + application/json + + + sec-ch-ua-mobile + ?0 + + + Authorization + Bearer ${BEARER_TOKEN} + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36 + + + sec-ch-ua-platform + "Windows" + + + Origin + ${FRONTEND_API_URL} + + + Sec-Fetch-Site + same-site + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Dest + empty + + + Referer + ${FRONTEND_API_URL}/ + + + Accept-Encoding + gzip, deflate, br + + + Accept-Language + en-US,en;q=0.9 + + + If-None-Match + W/"17b2-OQs45yY+9rxT8oaE549bg+d9IqA" + + + + + + + + Authorization + Bearer ${BEARER_TOKEN} + + + Accept + */* + + + + + + + + + + + + + + ${VEHICLES_API_URL}/users/user-context + POST + true + false + true + false + + + + + + + + + Host + ${VEHICLES_API_URL} + + + Connection + keep-alive + + + sec-ch-ua + "Chromium";v="118", "Google Chrome";v="118", "Not=A?Brand";v="99" + + + Accept + application/json + + + sec-ch-ua-mobile + ?0 + + + Authorization + Bearer ${BEARER_TOKEN} + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36 + + + sec-ch-ua-platform + "Windows" + + + Origin + ${FRONTEND_API_URL} + + + Sec-Fetch-Site + same-site + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Dest + empty + + + Referer + ${FRONTEND_API_URL}/ + + + Accept-Encoding + gzip, deflate, br + + + Accept-Language + en-US,en;q=0.9 + + + If-None-Match + W/"17b2-OQs45yY+9rxT8oaE549bg+d9IqA" + + + + + + + + Authorization + Bearer ${BEARER_TOKEN} + + + Accept + */* + + + + + + + + + + + + + + ${VEHICLES_API_URL}/users/${USER_GUID} + GET + true + false + true + false + + + + + + + + + Host + ${VEHICLES_API_URL} + + + Connection + keep-alive + + + sec-ch-ua + "Chromium";v="118", "Google Chrome";v="118", "Not=A?Brand";v="99" + + + Accept + application/json + + + sec-ch-ua-mobile + ?0 + + + Authorization + Bearer ${BEARER_TOKEN} + + + User-Agent + Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36 + + + sec-ch-ua-platform + "Windows" + + + Origin + ${FRONTEND_API_URL} + + + Sec-Fetch-Site + same-site + + + Sec-Fetch-Mode + cors + + + Sec-Fetch-Dest + empty + + + Referer + ${FRONTEND_API_URL}/ + + + Accept-Encoding + gzip, deflate, br + + + Accept-Language + en-US,en;q=0.9 + + + If-None-Match + W/"17b2-OQs45yY+9rxT8oaE549bg+d9IqA" + + + + + + + + Authorization + Bearer ${BEARER_TOKEN} + + + Accept + */* + + + + + + + + continue + + false + 1 + + ${USERS} + ${__P(rampup,300)} + 1365261073000 + 1365261073000 + true + ${__P(duration,3000)} + + true + + + + + + Authorization + Bearer ${BEARER_TOKEN_IDIR} + + + Accept + */* + + + + + + + + + false + + = + true + + + + + + + + ${VEHICLES_API_URL}/permits?searchColumn=permitNumber&searchString=1&page=1&take=10 + GET + true + false + true + false + + + + + + + + + + false + + = + true + + + + + + + + ${VEHICLES_API_URL}/companies/104/permits/14/document + GET + true + false + true + false + + + + + + + + + + false + + = + true + + + + + + + + ${VEHICLES_API_URL}/companies/104/permits/14/receipt + GET + true + false + true + false + + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + ${RESULTS_DIR}/vehicles.csv + + + + + diff --git a/tests/package-lock.json b/tests/package-lock.json new file mode 100644 index 000000000..ade2ecc39 --- /dev/null +++ b/tests/package-lock.json @@ -0,0 +1,1937 @@ +{ + "name": "tests", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "dependencies": { + "cypress": "^13.15.2" + }, + "devDependencies": { + "cypress-xpath": "^2.0.1" + } + }, + "node_modules/@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@cypress/request": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@cypress/request/-/request-3.0.6.tgz", + "integrity": "sha512-fi0eVdCOtKu5Ed6+E8mYxUF6ZTFJDZvHogCBelM0xVXmrDEkyM22gRArQzq1YcHPm1V47Vf/iAD+WgVdUlJCGg==", + "license": "Apache-2.0", + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~4.0.0", + "http-signature": "~1.4.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "performance-now": "^2.1.0", + "qs": "6.13.0", + "safe-buffer": "^5.1.2", + "tough-cookie": "^5.0.0", + "tunnel-agent": "^0.6.0", + "uuid": "^8.3.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@cypress/xvfb": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@cypress/xvfb/-/xvfb-1.2.4.tgz", + "integrity": "sha512-skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q==", + "license": "MIT", + "dependencies": { + "debug": "^3.1.0", + "lodash.once": "^4.1.1" + } + }, + "node_modules/@cypress/xvfb/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/@types/node": { + "version": "22.9.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.9.0.tgz", + "integrity": "sha512-vuyHg81vvWA1Z1ELfvLko2c8f34gyA0zaic0+Rllc5lbCnbSyuvb2Oxpm6TAUAC/2xZN3QGqxBNggD1nNR2AfQ==", + "license": "MIT", + "optional": true, + "dependencies": { + "undici-types": "~6.19.8" + } + }, + "node_modules/@types/sinonjs__fake-timers": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.1.tgz", + "integrity": "sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g==", + "license": "MIT" + }, + "node_modules/@types/sizzle": { + "version": "2.3.9", + "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.9.tgz", + "integrity": "sha512-xzLEyKB50yqCUPUJkIsrVvoWNfFUbIZI+RspLWt8u+tIW/BetMBZtgV2LY/2o+tYH8dRvQ+eoPf3NdhQCcLE2w==", + "license": "MIT" + }, + "node_modules/@types/yauzl": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz", + "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==", + "license": "MIT", + "optional": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "license": "MIT", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "license": "MIT", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/arch": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz", + "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/asn1": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz", + "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==", + "license": "MIT", + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==", + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "license": "MIT" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "license": "MIT" + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "license": "ISC", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==", + "license": "Apache-2.0", + "engines": { + "node": "*" + } + }, + "node_modules/aws4": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.13.2.tgz", + "integrity": "sha512-lHe62zvbTB5eEABUVi/AwVh0ZKY9rMMDhmm+eeyuuUQbQ3+J+fONVQOZyj+DdrvD4BY33uYniyRJ4UJIaSKAfw==", + "license": "MIT" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha512-qeFIXtP4MSoi6NLqO12WfqARWWuCKi2Rn/9hJLEmtB5yTNr9DqFWkJRCf2qShWzPeAMRnOgCrq0sg/KLv5ES9w==", + "license": "BSD-3-Clause", + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/blob-util": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/blob-util/-/blob-util-2.0.2.tgz", + "integrity": "sha512-T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ==", + "license": "Apache-2.0" + }, + "node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "license": "MIT" + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/cachedir": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/cachedir/-/cachedir-2.4.0.tgz", + "integrity": "sha512-9EtFOZR8g22CL7BWjJ9BUx1+A/djkofnyW3aOXZORNW2kxoUpx2h+uN2cOqwPmFhnpVmxg+KW2OjOSgChTEvsQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==", + "license": "Apache-2.0" + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chalk/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/check-more-types": { + "version": "2.24.0", + "resolved": "https://registry.npmjs.org/check-more-types/-/check-more-types-2.24.0.tgz", + "integrity": "sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA==", + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/ci-info": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.1.0.tgz", + "integrity": "sha512-HutrvTNsF48wnxkzERIXOe5/mlcfFcbfCmwcg6CJnizbSue78AbDt+1cgl26zwn61WFxhcPykPfZrbqjGmBb4A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "license": "MIT", + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-table3": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.5.tgz", + "integrity": "sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ==", + "license": "MIT", + "dependencies": { + "string-width": "^4.2.0" + }, + "engines": { + "node": "10.* || >= 12.*" + }, + "optionalDependencies": { + "@colors/colors": "1.5.0" + } + }, + "node_modules/cli-truncate": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz", + "integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "license": "MIT", + "dependencies": { + "slice-ansi": "^3.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "license": "MIT" + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", + "license": "MIT" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/common-tags": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz", + "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==", + "license": "MIT", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha512-3lqz5YjWTYnW6dlDa5TLaTCcShfar1e40rmcJVwCBJC6mWlFuj0eCHIElmG1g5kyuJ/GD+8Wn4FFCcz4gJPfaQ==", + "license": "MIT" + }, + "node_modules/cross-spawn": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.5.tgz", + "integrity": "sha512-ZVJrKKYunU38/76t0RMOulHOnUcbU9GbpWKAOZ0mhjr7CX6FVrH+4FrAapSOekrgFQ3f/8gwMEuIft0aKq6Hug==", + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cypress": { + "version": "13.15.2", + "resolved": "https://registry.npmjs.org/cypress/-/cypress-13.15.2.tgz", + "integrity": "sha512-ARbnUorjcCM3XiPwgHKuqsyr5W9Qn+pIIBPaoilnoBkLdSC2oLQjV1BUpnmc7KR+b7Avah3Ly2RMFnfxr96E/A==", + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "@cypress/request": "^3.0.6", + "@cypress/xvfb": "^1.2.4", + "@types/sinonjs__fake-timers": "8.1.1", + "@types/sizzle": "^2.3.2", + "arch": "^2.2.0", + "blob-util": "^2.0.2", + "bluebird": "^3.7.2", + "buffer": "^5.7.1", + "cachedir": "^2.3.0", + "chalk": "^4.1.0", + "check-more-types": "^2.24.0", + "ci-info": "^4.0.0", + "cli-cursor": "^3.1.0", + "cli-table3": "~0.6.1", + "commander": "^6.2.1", + "common-tags": "^1.8.0", + "dayjs": "^1.10.4", + "debug": "^4.3.4", + "enquirer": "^2.3.6", + "eventemitter2": "6.4.7", + "execa": "4.1.0", + "executable": "^4.1.1", + "extract-zip": "2.0.1", + "figures": "^3.2.0", + "fs-extra": "^9.1.0", + "getos": "^3.2.1", + "is-installed-globally": "~0.4.0", + "lazy-ass": "^1.6.0", + "listr2": "^3.8.3", + "lodash": "^4.17.21", + "log-symbols": "^4.0.0", + "minimist": "^1.2.8", + "ospath": "^1.2.2", + "pretty-bytes": "^5.6.0", + "process": "^0.11.10", + "proxy-from-env": "1.0.0", + "request-progress": "^3.0.0", + "semver": "^7.5.3", + "supports-color": "^8.1.1", + "tmp": "~0.2.3", + "tree-kill": "1.2.2", + "untildify": "^4.0.0", + "yauzl": "^2.10.0" + }, + "bin": { + "cypress": "bin/cypress" + }, + "engines": { + "node": "^16.0.0 || ^18.0.0 || >=20.0.0" + } + }, + "node_modules/cypress-xpath": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/cypress-xpath/-/cypress-xpath-2.0.1.tgz", + "integrity": "sha512-qMagjvinBppNJdMAkucWESP9aP4rDTs7c96m0vwMuZTVx3NqP2E3z/hkoRf8Ea9soL8yTvUuuyF1cg/Sb1Yhbg==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "dev": true, + "license": "MIT" + }, + "node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==", + "license": "MIT", + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/dayjs": { + "version": "1.11.13", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz", + "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==", + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha512-eh9O+hwRHNbG4BLTjEl3nw044CkGm5X6LoaCf7LPp7UU8Qrt47JYNi6nPX8xjW97TKGKm1ouctg0QSpZe9qrnw==", + "license": "MIT", + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "license": "MIT" + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "license": "MIT", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/enquirer": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", + "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", + "license": "MIT", + "dependencies": { + "ansi-colors": "^4.1.1", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/eventemitter2": { + "version": "6.4.7", + "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.7.tgz", + "integrity": "sha512-tYUSVOGeQPKt/eC1ABfhHy5Xd96N3oIijJvN3O9+TsC28T5V9yX9oEfEK5faP0EFSNVOG97qtAS68GBrQB2hDg==", + "license": "MIT" + }, + "node_modules/execa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", + "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.0", + "get-stream": "^5.0.0", + "human-signals": "^1.1.1", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.0", + "onetime": "^5.1.0", + "signal-exit": "^3.0.2", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/executable": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz", + "integrity": "sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==", + "license": "MIT", + "dependencies": { + "pify": "^2.2.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "license": "MIT" + }, + "node_modules/extract-zip": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz", + "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==", + "license": "BSD-2-Clause", + "dependencies": { + "debug": "^4.1.1", + "get-stream": "^5.1.0", + "yauzl": "^2.10.0" + }, + "bin": { + "extract-zip": "cli.js" + }, + "engines": { + "node": ">= 10.17.0" + }, + "optionalDependencies": { + "@types/yauzl": "^2.9.1" + } + }, + "node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==", + "engines": [ + "node >=0.6.0" + ], + "license": "MIT" + }, + "node_modules/fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", + "license": "MIT", + "dependencies": { + "pend": "~1.2.0" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==", + "license": "Apache-2.0", + "engines": { + "node": "*" + } + }, + "node_modules/form-data": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz", + "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==", + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "license": "MIT", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "license": "MIT", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/getos": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/getos/-/getos-3.2.1.tgz", + "integrity": "sha512-U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q==", + "license": "MIT", + "dependencies": { + "async": "^3.2.0" + } + }, + "node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==", + "license": "MIT", + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/global-dirs": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", + "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", + "license": "MIT", + "dependencies": { + "ini": "2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "license": "ISC" + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz", + "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/http-signature": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.4.0.tgz", + "integrity": "sha512-G5akfn7eKbpDN+8nPS/cb57YeA1jLTVxjpCj7tmm3QKPdyDy7T+qSC40e9ptydSWvkwjSXw1VbkpyEm39ukeAg==", + "license": "MIT", + "dependencies": { + "assert-plus": "^1.0.0", + "jsprim": "^2.0.2", + "sshpk": "^1.18.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/human-signals": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", + "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", + "license": "Apache-2.0", + "engines": { + "node": ">=8.12.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-installed-globally": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", + "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", + "license": "MIT", + "dependencies": { + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==", + "license": "MIT" + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "license": "ISC" + }, + "node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==", + "license": "MIT" + }, + "node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==", + "license": "MIT" + }, + "node_modules/json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==", + "license": "(AFL-2.1 OR BSD-3-Clause)" + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==", + "license": "ISC" + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsprim": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-2.0.2.tgz", + "integrity": "sha512-gqXddjPqQ6G40VdnI6T6yObEC+pDNvyP95wdQhkWkg7crHH3km5qP1FsOXEkzEQwnz6gz5qGTn1c2Y52wP3OyQ==", + "engines": [ + "node >=0.6.0" + ], + "license": "MIT", + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + } + }, + "node_modules/lazy-ass": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/lazy-ass/-/lazy-ass-1.6.0.tgz", + "integrity": "sha512-cc8oEVoctTvsFZ/Oje/kGnHbpWHYBe8IAJe4C0QNc3t8uM/0Y8+erSz/7Y1ALuXTEZTMvxXwO6YbX1ey3ujiZw==", + "license": "MIT", + "engines": { + "node": "> 0.8" + } + }, + "node_modules/listr2": { + "version": "3.14.0", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-3.14.0.tgz", + "integrity": "sha512-TyWI8G99GX9GjE54cJ+RrNMcIFBfwMPxc3XTFiAYGN4s10hWROGtOg7+O6u6LE3mNkyld7RSLE6nrKBvTfcs3g==", + "license": "MIT", + "dependencies": { + "cli-truncate": "^2.1.0", + "colorette": "^2.0.16", + "log-update": "^4.0.0", + "p-map": "^4.0.0", + "rfdc": "^1.3.0", + "rxjs": "^7.5.1", + "through": "^2.3.8", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "enquirer": ">= 2.3.0 < 3" + }, + "peerDependenciesMeta": { + "enquirer": { + "optional": true + } + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "license": "MIT" + }, + "node_modules/lodash.once": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", + "integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==", + "license": "MIT" + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "license": "MIT", + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-update": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-4.0.0.tgz", + "integrity": "sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "license": "MIT", + "dependencies": { + "ansi-escapes": "^4.3.0", + "cli-cursor": "^3.1.0", + "slice-ansi": "^4.0.0", + "wrap-ansi": "^6.2.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-update/node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/log-update/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "license": "MIT" + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "license": "MIT", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/object-inspect": { + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.3.tgz", + "integrity": "sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ospath": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/ospath/-/ospath-1.2.2.tgz", + "integrity": "sha512-o6E5qJV5zkAbIDNhGSIlyOhScKXgQrSRMilfph0clDfM0nEnBOlKlH4sWDmG95BW/CvwNz0vmm7dJVtU2KlMiA==", + "license": "MIT" + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "license": "MIT", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", + "license": "MIT" + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "license": "MIT" + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "license": "MIT", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/proxy-from-env": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.0.0.tgz", + "integrity": "sha512-F2JHgJQ1iqwnHDcQjVBsq3n/uoaFL+iPW/eAeL7kVxy/2RrWaN4WroKjjvbsoRtv0ftelNyC01bjRhn/bhcf4A==", + "license": "MIT" + }, + "node_modules/pump": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.2.tgz", + "integrity": "sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==", + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/qs": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", + "license": "BSD-3-Clause", + "dependencies": { + "side-channel": "^1.0.6" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/request-progress": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz", + "integrity": "sha512-MnWzEHHaxHO2iWiQuHrUPBi/1WeBf5PkxQqNyNvLl9VAYSdXkP8tQ3pBSeCPD+yw0v0Aq1zosWLz0BdeXpWwZg==", + "license": "MIT", + "dependencies": { + "throttleit": "^1.0.0" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "license": "MIT", + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/rfdc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", + "license": "MIT" + }, + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "license": "Apache-2.0", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "license": "MIT" + }, + "node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "license": "ISC" + }, + "node_modules/slice-ansi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz", + "integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/sshpk": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.18.0.tgz", + "integrity": "sha512-2p2KJZTSqQ/I3+HX42EpYOa2l3f8Erv8MWKsy2I9uf4wA7yFIkXRffYdsx86y6z4vHtV8u7g+pPlr8/4ouAxsQ==", + "license": "MIT", + "dependencies": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/throttleit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.1.tgz", + "integrity": "sha512-vDZpf9Chs9mAdfY046mcPt8fg5QSZr37hEH4TXYBnDF+izxgrbRGUAAaBvIk/fJm9aOFCGFd1EsNg5AZCbnQCQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "license": "MIT" + }, + "node_modules/tldts": { + "version": "6.1.60", + "resolved": "https://registry.npmjs.org/tldts/-/tldts-6.1.60.tgz", + "integrity": "sha512-TYVHm7G9NCnhgqOsFalbX6MG1Po5F4efF+tLfoeiOGQq48Oqgwcgz8upY2R1BHWa4aDrj28RYx0dkYJ63qCFMg==", + "license": "MIT", + "dependencies": { + "tldts-core": "^6.1.60" + }, + "bin": { + "tldts": "bin/cli.js" + } + }, + "node_modules/tldts-core": { + "version": "6.1.60", + "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.60.tgz", + "integrity": "sha512-XHjoxak8SFQnHnmYHb3PcnW5TZ+9ErLZemZei3azuIRhQLw4IExsVbL3VZJdHcLeNaXq6NqawgpDPpjBOg4B5g==", + "license": "MIT" + }, + "node_modules/tmp": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz", + "integrity": "sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==", + "license": "MIT", + "engines": { + "node": ">=14.14" + } + }, + "node_modules/tough-cookie": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-5.0.0.tgz", + "integrity": "sha512-FRKsF7cz96xIIeMZ82ehjC3xW2E+O2+v11udrDYewUbszngYhsGa8z6YUMMzO9QJZzzyd0nGGXnML/TReX6W8Q==", + "license": "BSD-3-Clause", + "dependencies": { + "tldts": "^6.1.32" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "license": "MIT", + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "license": "Apache-2.0", + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==", + "license": "Unlicense" + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/undici-types": { + "version": "6.19.8", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", + "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", + "license": "MIT", + "optional": true + }, + "node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/untildify": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", + "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "license": "MIT", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "engines": [ + "node >=0.6.0" + ], + "license": "MIT", + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "license": "ISC" + }, + "node_modules/yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", + "license": "MIT", + "dependencies": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } + } + } +} diff --git a/tests/package.json b/tests/package.json new file mode 100644 index 000000000..b6d6736b2 --- /dev/null +++ b/tests/package.json @@ -0,0 +1,8 @@ +{ + "dependencies": { + "cypress": "^13.15.2" + }, + "devDependencies": { + "cypress-xpath": "^2.0.1" + } +} diff --git a/tests/regression/orbc_load_test_plan_frontend_amend_term_oversize.jmx b/tests/regression/orbc_load_test_plan_frontend_amend_term_oversize.jmx new file mode 100644 index 000000000..be42e0d70 --- /dev/null +++ b/tests/regression/orbc_load_test_plan_frontend_amend_term_oversize.jmx @@ -0,0 +1,420 @@ + + + + + + false + false + + + + Duration + 3180 + = + + + + + + + + + + NUM_THREADS + 200 + = + + + FRONTEND_URL + https://onroutebc-test-frontend.apps.silver.devops.gov.bc.ca + = + + + USER + + = + + + PASSWORD + + = + + + + + + false + true + C:\Users\brwang\Software\chromedriver-win64\chromedriver-win64-129\chromedriver.exe + false + false + true + + + SYSTEM + + + 8080 + true + + 8080 + true + + 8080 + true + + 8080 + localhost + + + + + continue + + false + 1 + + 1 + 1 + false + + + true + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement +import org.openqa.selenium.devtools.DevTools; +import org.openqa.selenium.devtools.v129.network.Network; +import java.util.Optional; +import org.openqa.selenium.logging.LogType +import org.openqa.selenium.logging.LogEntries +import org.openqa.selenium.chrome.ChromeOptions +import org.openqa.selenium.logging.LoggingPreferences +import java.util.logging.Level +import java.util.function.Consumer + +WDS.sampleResult.sampleStart() + +WDS.log.info "Groovy version: ${GroovySystem.version}" + + +def frontendUrl = WDS.vars.get("FRONTEND_URL") +WDS.browser.get(frontendUrl) +Thread.sleep(5000) + +def loginButton = WDS.browser.findElement(By.id('login-idir')) +if (loginButton != null) { + loginButton.click() + WDS.log.info("Clicked on the login-idir button") + Thread.sleep(5000) + /* + try { + def user = WDS.browser.findElement(By.id('user')) + def password = WDS.browser.findElement(By.id('password')) + if (user != null) { + def userValue = WDS.vars.get("USER") + def passwordValue = WDS.vars.get("PASSWORD") + user.sendKeys(userValue) + password.sendKeys(passwordValue) + Thread.sleep(5000) + + def submitButton = WDS.browser.findElement(By.name('btnSubmit')) + if (submitButton != null) { + submitButton.click() + } else { + WDS.log.info('Submit button with name="btnSubmit" not found') + } + Thread.sleep(5000) + } + } catch (NoSuchElementException e) { + WDS.log.info('User element not found.') + } + */ +} else { + WDS.log.info("Button with id 'login-idir' not found") +} + +Thread.sleep(5000) + +def devTools = ((org.openqa.selenium.chrome.ChromeDriver) WDS.browser).getDevTools() +devTools.createSession() +devTools.send(Network.enable(Optional.empty(), Optional.empty(), Optional.empty())) +devTools.addListener(Network.requestWillBeSent(), { request -> + if (request.getRequest().getUrl().contains("https")) { + def headers = request.getRequest().getHeaders() + def authHeader = headers.get("Authorization") + if (authHeader != null && authHeader.startsWith("Bearer ")) { + def token = authHeader.replace("Bearer ", "") + WDS.log.info("Extracted Token: " + token) + WDS.vars.put("BEARER_TOKEN", token) + } + } + else { + WDS.log.info("bruce test no token: ") + } +} as Consumer) +Thread.sleep(5000) + +WDS.browser.get(frontendUrl) +Thread.sleep(5000) + +WDS.sampleResult.sampleEnd() + + + groovy + + + + import org.openqa.selenium.By +import org.openqa.selenium.support.ui.ExpectedConditions +import org.openqa.selenium.support.ui.WebDriverWait +import org.openqa.selenium.WebElement + +WDS.sampleResult.sampleStart() +def frontendUrl = WDS.vars.get("FRONTEND_URL") +WDS.browser.get(frontendUrl); +Thread.sleep(5000) +/* +def loginButton = WDS.browser.findElement(By.id('login-idir')) +if (loginButton != null) { + loginButton.click() + WDS.log.info("Clicked on the login-bceid button") +} else { + WDS.log.info("Button with id 'login-bceid' not found") +} +Thread.sleep(5000) + + +def searchIcon = WDS.browser.findElement(By.className('search-button')) +searchIcon.click() +Thread.sleep(5000) + +def company = WDS.browser.findElement(By.cssSelector('[value="companies"]')) +company.click() +Thread.sleep(5000) + + +def searchInput = WDS.browser.findElement(By.className('css-1pog434')) +searchInput.sendKeys('t') +Thread.sleep(5000) + +def searchButton = WDS.browser.findElement(By.className('search-by__search')) +searchButton.click() +Thread.sleep(5000) + +def button = WDS.browser.findElement(By.xpath("//button[text()='Test Transport Inc.']")) +button.click() +Thread.sleep(5000) +def tab = WDS.browser.findElement(By.xpath("//div[@class='tab__label' and text()='Active Permits']")) +tab.click() +Thread.sleep(5000) + +def firstDotButton = WDS.browser.findElement(By.className('css-15mydm5')) +firstDotButton.click() +Thread.sleep(5000) +def amendButton = WDS.browser.findElement(By.xpath("//li[text()='Amend']")) +amendButton.click() +Thread.sleep(5000) + +def year = WDS.browser.findElement(By.cssSelector('[name="permitData.vehicleDetails.year"]')) +year.clear() +year.sendKeys("2008") +Thread.sleep(5000) + +def amendment = WDS.browser.findElement(By.cssSelector('[name="comment"]')) +amendment.clear() +amendment.sendKeys("Make year updated") +Thread.sleep(5000) + + +def continueButton = WDS.browser.findElement(By.cssSelector('[data-testid="continue-application-button"]')) +Thread.sleep(5000) + +if (continueButton != null) { + continueButton.click() + WDS.log.info('Clicked the button with data-testid="continue-application-button"') +} else { + WDS.log.info('Button with data-testid="continue-application-button" not found') +} + +Thread.sleep(10000) +def checkboxes = WDS.browser.findElements(By.cssSelector('input[type="checkbox"]')) +checkboxes.each { checkbox -> + WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", checkbox) + if (!checkbox.isSelected()) { + checkbox.click() + } +} +Thread.sleep(5000) + +def continueBtn = WDS.browser.findElement(By.xpath("//button[text()='Continue']")) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", continueBtn) +continueBtn.click() +Thread.sleep(5000) + +def finish = WDS.browser.findElement(By.xpath("//button[text()='Finish']")) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", finish) +finish.click() +Thread.sleep(5000) +*/ + +def searchIcon = WDS.browser.findElement(By.className('search-button')) +searchIcon.click() +Thread.sleep(5000) + +def company = WDS.browser.findElement(By.cssSelector('[value="companies"]')) +company.click() +Thread.sleep(5000) + + +def searchInput = WDS.browser.findElement(By.className('css-1pog434')) +searchInput.sendKeys('t') +Thread.sleep(5000) + +def searchButton = WDS.browser.findElement(By.className('search-by__search')) +searchButton.click() +Thread.sleep(5000) + +def button = WDS.browser.findElement(By.xpath("//button[text()='Test Transport Inc.']")) +button.click() +Thread.sleep(5000) +def tab = WDS.browser.findElement(By.xpath("//div[@class='tab__label' and text()='Active Permits']")) +tab.click() +Thread.sleep(5000) + +def firstDotButton = WDS.browser.findElement(By.className('css-15mydm5')) +firstDotButton.click() +Thread.sleep(5000) +def amendButton = WDS.browser.findElement(By.xpath("//li[text()='Amend']")) +amendButton.click() +Thread.sleep(5000) + +def year = WDS.browser.findElement(By.cssSelector('[name="permitData.vehicleDetails.year"]')) +year.clear() +year.sendKeys("2008") +Thread.sleep(5000) + +def amendment = WDS.browser.findElement(By.cssSelector('[name="comment"]')) +amendment.clear() +amendment.sendKeys("Make year updated") +Thread.sleep(5000) + + +def continueButton = WDS.browser.findElement(By.cssSelector('[data-testid="continue-application-button"]')) +Thread.sleep(5000) + +if (continueButton != null) { + continueButton.click() + WDS.log.info('Clicked the button with data-testid="continue-application-button"') +} else { + WDS.log.info('Button with data-testid="continue-application-button" not found') +} + +Thread.sleep(10000) +def checkboxes = WDS.browser.findElements(By.cssSelector('input[type="checkbox"]')) +checkboxes.each { checkbox -> + WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", checkbox) + if (!checkbox.isSelected()) { + checkbox.click() + } +} +Thread.sleep(5000) + +def continueBtn = WDS.browser.findElement(By.xpath("//button[text()='Continue']")) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", continueBtn) +continueBtn.click() +Thread.sleep(5000) + +def finish = WDS.browser.findElement(By.xpath("//button[text()='Finish']")) +WDS.browser.executeScript("window.scrollTo(0, arguments[0].getBoundingClientRect().top + window.pageYOffset - 100);", finish) +finish.click() +Thread.sleep(5000) + +WDS.sampleResult.sampleEnd() + + + groovy + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + false + + saveConfig + + + true + true + true + + true + true + true + true + false + true + true + false + false + false + true + false + false + false + true + 0 + true + true + true + true + true + true + + + + + + + + From 81c0225a160dd956c7fe3579bd469fd0f2bea4a8 Mon Sep 17 00:00:00 2001 From: cberg-aot <93226309+cberg-aot@users.noreply.github.com> Date: Mon, 9 Dec 2024 14:49:25 -0600 Subject: [PATCH 14/25] Fix/e2e regression tests 2 (#1704) --- .github/workflows/e2e-regression-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-regression-tests.yml b/.github/workflows/e2e-regression-tests.yml index 00182084c..91ce54a8d 100644 --- a/.github/workflows/e2e-regression-tests.yml +++ b/.github/workflows/e2e-regression-tests.yml @@ -25,7 +25,7 @@ jobs: id: env run: | pr="${{github.event.workflow_run.pull_requests[0].number}}" - if [[pr]]; then + if [[ $pr ]]; then target="$pr" environment="dev" else From ec0271312a97f6e56069097127ae9d8a9b2d8a3a Mon Sep 17 00:00:00 2001 From: cberg-aot <93226309+cberg-aot@users.noreply.github.com> Date: Mon, 9 Dec 2024 15:33:59 -0600 Subject: [PATCH 15/25] Fix/e2e regression tests 3 (#1705) --- .github/workflows/e2e-regression-tests.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/e2e-regression-tests.yml b/.github/workflows/e2e-regression-tests.yml index 91ce54a8d..c202a2525 100644 --- a/.github/workflows/e2e-regression-tests.yml +++ b/.github/workflows/e2e-regression-tests.yml @@ -32,8 +32,8 @@ jobs: target=${{inputs.target}} environment=${{inputs.target}} fi - echo target=$target | tee $GITHUB_OUTPUT - echo environment=$environment | tee $GITHUB_OUTPUT + echo "target=$target" >> $GITHUB_OUTPUT + echo "environment=$environment" >> $GITHUB_OUTPUT e2e-tests: name: ${{matrix.test}} From 8772c4ac997dee7782da4bcb849aa85bb1e3d602 Mon Sep 17 00:00:00 2001 From: cberg-aot <93226309+cberg-aot@users.noreply.github.com> Date: Mon, 9 Dec 2024 15:50:58 -0600 Subject: [PATCH 16/25] Fix/e2e regression tests 4 (#1706) --- .github/workflows/e2e-regression-tests.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/e2e-regression-tests.yml b/.github/workflows/e2e-regression-tests.yml index c202a2525..df7c785d6 100644 --- a/.github/workflows/e2e-regression-tests.yml +++ b/.github/workflows/e2e-regression-tests.yml @@ -75,14 +75,14 @@ jobs: working-directory: tests - uses: actions/upload-artifact@v4 - if: always() + if: failure() with: name: ${{matrix.test}} screenshot path: tests/cypress/screenshots/ if-no-files-found: ignore # 'warn' or 'error' are also available, defaults to `warn` - uses: actions/upload-artifact@v4 - if: always() + if: failure() with: name: ${{matrix.test}} video path: tests/cypress/videos/ From 5cc977edba4e00a4f88daf8b9c70a325e1037461 Mon Sep 17 00:00:00 2001 From: glen-aot <160973940+glen-aot@users.noreply.github.com> Date: Mon, 9 Dec 2024 14:53:02 -0800 Subject: [PATCH 17/25] ORV2-3172 - PPC staff cannot process backdated permit applications (#1707) Co-authored-by: GlenAOT <160973940+GlenAOT@users.noreply.github.com> --- .../pages/Application/ApplicationForm.tsx | 218 +++++++++--------- 1 file changed, 113 insertions(+), 105 deletions(-) diff --git a/frontend/src/features/permits/pages/Application/ApplicationForm.tsx b/frontend/src/features/permits/pages/Application/ApplicationForm.tsx index 57f994343..823489d76 100644 --- a/frontend/src/features/permits/pages/Application/ApplicationForm.tsx +++ b/frontend/src/features/permits/pages/Application/ApplicationForm.tsx @@ -25,7 +25,10 @@ import { PAST_START_DATE_STATUSES } from "../../../../common/components/form/sub import { useFetchLOAs } from "../../../settings/hooks/LOA"; import { useFetchSpecialAuthorizations } from "../../../settings/hooks/specialAuthorizations"; import { ApplicationFormContext } from "../../context/ApplicationFormContext"; -import { filterLOAsForPermitType, filterNonExpiredLOAs } from "../../helpers/permitLOA"; +import { + filterLOAsForPermitType, + filterNonExpiredLOAs, +} from "../../helpers/permitLOA"; import { usePolicyEngine } from "../../../policy/hooks/usePolicyEngine"; import { Loading } from "../../../../common/pages/Loading"; import { serializePermitVehicleDetails } from "../../helpers/serialize/serializePermitVehicleDetails"; @@ -63,21 +66,19 @@ export const ApplicationForm = ({ // Context to hold all of the application data related to the application const applicationContext = useContext(ApplicationContext); - const { - userDetails, - idirUserDetails, - } = useContext(OnRouteBCContext); + const { userDetails, idirUserDetails } = useContext(OnRouteBCContext); const isStaffUser = Boolean(idirUserDetails?.userRole); const { data: companyInfo } = useCompanyInfoDetailsQuery(companyId); const { data: activeLOAs } = useFetchLOAs(companyId, false); - const companyLOAs = useMemo(() => getDefaultRequiredVal( - [], - activeLOAs, - ), [activeLOAs]); + const companyLOAs = useMemo( + () => getDefaultRequiredVal([], activeLOAs), + [activeLOAs], + ); - const { data: specialAuthorizations } = useFetchSpecialAuthorizations(companyId); + const { data: specialAuthorizations } = + useFetchSpecialAuthorizations(companyId); const isLcvDesignated = Boolean(specialAuthorizations?.isLcvAllowed); const { @@ -94,29 +95,23 @@ export const ApplicationForm = ({ // 2. Generate those default values and register them to the form // 3. Listens for changes to application context (which happens when application is fetched/submitted/updated) // 4. Updates form values (override existing ones) whenever the application context data changes - const { - initialFormData, - currentFormData, - formMethods, - } = useInitApplicationFormData({ - permitType, - isLcvDesignated, - companyLOAs, - inventoryVehicles: allVehiclesFromInventory, - companyInfo, - applicationData: applicationContext?.applicationData, - userDetails, - policyEngine, - }); + const { initialFormData, currentFormData, formMethods } = + useInitApplicationFormData({ + permitType, + isLcvDesignated, + companyLOAs, + inventoryVehicles: allVehiclesFromInventory, + companyInfo, + applicationData: applicationContext?.applicationData, + userDetails, + policyEngine, + }); // Applicable LOAs must be: // 1. Applicable for the current permit type // 2. Have expiry date that is on or after the start date for an application const applicableLOAs = filterNonExpiredLOAs( - filterLOAsForPermitType( - companyLOAs, - permitType, - ), + filterLOAsForPermitType(companyLOAs, permitType), currentFormData.permitData.startDate, ); @@ -141,13 +136,16 @@ export const ApplicationForm = ({ const navigate = useNavigate(); - const [policyViolations, setPolicyViolations] = useState>({}); + const [policyViolations, setPolicyViolations] = useState< + Record + >({}); const clearViolation = (fieldReference: string) => { if (fieldReference in policyViolations) { - const otherViolations = Object.entries(policyViolations) - .filter(([fieldRef]) => fieldRef !== fieldReference); - + const otherViolations = Object.entries(policyViolations).filter( + ([fieldRef]) => fieldRef !== fieldReference, + ); + setPolicyViolations(Object.fromEntries(otherViolations)); } }; @@ -163,14 +161,17 @@ export const ApplicationForm = ({ [], validationResults?.violations .filter(({ fieldReference }) => Boolean(fieldReference)) - .map(violation => ({ + .map((violation) => ({ fieldReference: violation.fieldReference as string, message: violation.message, })), ); const updatedViolations = Object.fromEntries( - violations.map(({ fieldReference, message }) => [fieldReference, message]), + violations.map(({ fieldReference, message }) => [ + fieldReference, + message, + ]), ); setPolicyViolations(updatedViolations); @@ -189,11 +190,14 @@ export const ApplicationForm = ({ // When "Continue" button is clicked const onContinue = async (data: ApplicationFormData) => { const updatedViolations = await triggerPolicyValidation(); - if (Object.keys(updatedViolations).length > 0) { + // prevent CV client continuing if there are policy engine validation errors + if (Object.keys(updatedViolations).length > 0 && !isStaffUser) { return; } - const vehicleData = serializePermitVehicleDetails(data.permitData.vehicleDetails); + const vehicleData = serializePermitVehicleDetails( + data.permitData.vehicleDetails, + ); const savedVehicleDetails = await handleSaveVehicle(vehicleData); // Save application before continuing @@ -239,28 +243,31 @@ export const ApplicationForm = ({ }, }; - await saveApplication({ - data: applicationToBeSaved, - companyId, - }, { - onSuccess: ({ data, status }) => { - const savedApplication = deserializeApplicationResponse(data); - const savedPermitId = onSaveSuccess(savedApplication, status); - additionalSuccessAction?.(savedPermitId); + await saveApplication( + { + data: applicationToBeSaved, + companyId, }, - onError: (e) => { - console.error(e); - if (isAxiosError(e)) { - navigate(ERROR_ROUTES.UNEXPECTED, { - state: { - correlationId: e?.response?.headers["x-correlation-id"], - }, - }); - } else { - navigate(ERROR_ROUTES.UNEXPECTED); - } + { + onSuccess: ({ data, status }) => { + const savedApplication = deserializeApplicationResponse(data); + const savedPermitId = onSaveSuccess(savedApplication, status); + additionalSuccessAction?.(savedPermitId); + }, + onError: (e) => { + console.error(e); + if (isAxiosError(e)) { + navigate(ERROR_ROUTES.UNEXPECTED, { + state: { + correlationId: e?.response?.headers["x-correlation-id"], + }, + }); + } else { + navigate(ERROR_ROUTES.UNEXPECTED); + } + }, }, - }); + ); }; const onSave = async () => { @@ -290,52 +297,55 @@ export const ApplicationForm = ({ const pastStartDateStatus = isStaffUser ? PAST_START_DATE_STATUSES.WARNING : PAST_START_DATE_STATUSES.FAIL; - - const applicationFormContextData = useMemo(() => ({ - initialFormData, - formData: currentFormData, - policyEngine, - durationOptions, - allVehiclesFromInventory, - powerUnitSubtypeNamesMap, - trailerSubtypeNamesMap, - isLcvDesignated, - feature: FEATURE, - companyInfo, - isAmendAction: false, - createdDateTime, - updatedDateTime, - pastStartDateStatus, - companyLOAs: applicableLOAs, - revisionHistory: [], - policyViolations, - clearViolation, - triggerPolicyValidation, - onLeave: handleLeaveApplication, - onSave, - onCancel: undefined, - onContinue: handleSubmit(onContinue), - }), [ - initialFormData, - currentFormData, - policyEngine, - durationOptions, - allVehiclesFromInventory, - powerUnitSubtypeNamesMap, - trailerSubtypeNamesMap, - isLcvDesignated, - companyInfo, - createdDateTime, - updatedDateTime, - pastStartDateStatus, - applicableLOAs, - policyViolations, - clearViolation, - triggerPolicyValidation, - handleLeaveApplication, - onSave, - onContinue, - ]); + + const applicationFormContextData = useMemo( + () => ({ + initialFormData, + formData: currentFormData, + policyEngine, + durationOptions, + allVehiclesFromInventory, + powerUnitSubtypeNamesMap, + trailerSubtypeNamesMap, + isLcvDesignated, + feature: FEATURE, + companyInfo, + isAmendAction: false, + createdDateTime, + updatedDateTime, + pastStartDateStatus, + companyLOAs: applicableLOAs, + revisionHistory: [], + policyViolations, + clearViolation, + triggerPolicyValidation, + onLeave: handleLeaveApplication, + onSave, + onCancel: undefined, + onContinue: handleSubmit(onContinue), + }), + [ + initialFormData, + currentFormData, + policyEngine, + durationOptions, + allVehiclesFromInventory, + powerUnitSubtypeNamesMap, + trailerSubtypeNamesMap, + isLcvDesignated, + companyInfo, + createdDateTime, + updatedDateTime, + pastStartDateStatus, + applicableLOAs, + policyViolations, + clearViolation, + triggerPolicyValidation, + handleLeaveApplication, + onSave, + onContinue, + ], + ); if (isUndefined(policyEngine)) return ; if (isNull(policyEngine)) return ; @@ -345,9 +355,7 @@ export const ApplicationForm = ({ - + From cfd855abbb062c6c9794232b2e3c838c26036e24 Mon Sep 17 00:00:00 2001 From: cberg-aot <93226309+cberg-aot@users.noreply.github.com> Date: Mon, 9 Dec 2024 18:03:18 -0600 Subject: [PATCH 18/25] fix: injected idir creds into pipe (#1708) --- .github/workflows/e2e-regression-tests.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/e2e-regression-tests.yml b/.github/workflows/e2e-regression-tests.yml index df7c785d6..dc909ddba 100644 --- a/.github/workflows/e2e-regression-tests.yml +++ b/.github/workflows/e2e-regression-tests.yml @@ -68,6 +68,8 @@ jobs: CYPRESS_baseUrl: https://${{ github.event.repository.name }}-${{ needs.vars.outputs.target || 'test' }}-frontend.apps.silver.devops.gov.bc.ca/ CYPRESS_bceid_username: ${{vars.BCEID_USERNAME}} CYPRESS_bceid_password: ${{secrets.BCEID_PASSWORD}} + CYPRESS_idir_username: ${{vars.IDIR_USERNAME}} + CYPRESS_idir_password: ${{secrets.IDIR_PASSWORD}} with: browser: ${{ matrix.browser }} config: pageLoadTimeout=10000,video=true From b7b593d07f181c564754a0aa36cfcbd5f7df48dc Mon Sep 17 00:00:00 2001 From: cberg-aot <93226309+cberg-aot@users.noreply.github.com> Date: Tue, 10 Dec 2024 10:22:06 -0600 Subject: [PATCH 19/25] fix: changed matrix stategy to not fail all jobs (#1709) --- .github/workflows/e2e-regression-tests.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/e2e-regression-tests.yml b/.github/workflows/e2e-regression-tests.yml index dc909ddba..6e1a08ae5 100644 --- a/.github/workflows/e2e-regression-tests.yml +++ b/.github/workflows/e2e-regression-tests.yml @@ -44,6 +44,7 @@ jobs: run: working-directory: tests/ strategy: + fail-fast: false matrix: browser: - chrome From 25f684e1d6baa9a33128a6830ec2a6bcf5f2490d Mon Sep 17 00:00:00 2001 From: cberg-aot <93226309+cberg-aot@users.noreply.github.com> Date: Tue, 10 Dec 2024 11:04:53 -0600 Subject: [PATCH 20/25] fix: changed the name of artifacts to be unique (#1710) --- .github/workflows/e2e-regression-tests.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/e2e-regression-tests.yml b/.github/workflows/e2e-regression-tests.yml index 6e1a08ae5..726915b0b 100644 --- a/.github/workflows/e2e-regression-tests.yml +++ b/.github/workflows/e2e-regression-tests.yml @@ -80,14 +80,14 @@ jobs: - uses: actions/upload-artifact@v4 if: failure() with: - name: ${{matrix.test}} screenshot + name: ${{matrix.test}}-${{matrix.browser}} screenshot path: tests/cypress/screenshots/ if-no-files-found: ignore # 'warn' or 'error' are also available, defaults to `warn` - uses: actions/upload-artifact@v4 if: failure() with: - name: ${{matrix.test}} video + name: ${{matrix.test}}-${{matrix.browser}} video path: tests/cypress/videos/ overwrite: true if-no-files-found: ignore # 'warn' or 'error' are also available, defaults to `warn` From 11d2066c4fe854b78dfd0dfaa686a41afbf7d67e Mon Sep 17 00:00:00 2001 From: cberg-aot <93226309+cberg-aot@users.noreply.github.com> Date: Thu, 12 Dec 2024 14:02:20 -0600 Subject: [PATCH 21/25] =?UTF-8?q?fix:=20removed=20support=20for=20firefox?= =?UTF-8?q?=20and=20edge=20to=20remove=20workflow=20parallel=E2=80=A6=20(#?= =?UTF-8?q?1713)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/e2e-regression-tests.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/e2e-regression-tests.yml b/.github/workflows/e2e-regression-tests.yml index 726915b0b..25d36373d 100644 --- a/.github/workflows/e2e-regression-tests.yml +++ b/.github/workflows/e2e-regression-tests.yml @@ -48,8 +48,8 @@ jobs: matrix: browser: - chrome - - edge - - firefox + #- edge + #- firefox test: - 'bceid-crud-power-units.cy.js' - 'bceid-crud-trailers.cy.js' From 2f55b2b944b73b8850cb7c0fc8d6141e7d05df81 Mon Sep 17 00:00:00 2001 From: John Fletcher <113134542+john-fletcher-aot@users.noreply.github.com> Date: Thu, 12 Dec 2024 15:14:12 -0800 Subject: [PATCH 22/25] Updates to support new Policy Engine version (#1714) --- .../dbo.ORBC_POLICY_CONFIGURATION.Table.sql | 46 +++++- .../scripts/utility/refresh-sample-data.sh | 18 +-- .../versions/revert/v_51_ddl_revert.sql | 97 ++++++++++++ database/mssql/scripts/versions/v_51_ddl.sql | 118 ++++++++++++++ database/mssql/test/versions/v_51_1_test.sql | 4 + database/mssql/test/versions/v_51_2_test.sql | 4 + database/mssql/test/versions/v_51_3_test.sql | 4 + database/mssql/test/versions/v_51_test.sh | 30 ++++ frontend/package-lock.json | 147 ++++++++++++++---- frontend/package.json | 2 +- 10 files changed, 424 insertions(+), 46 deletions(-) create mode 100644 database/mssql/scripts/versions/revert/v_51_ddl_revert.sql create mode 100644 database/mssql/scripts/versions/v_51_ddl.sql create mode 100644 database/mssql/test/versions/v_51_1_test.sql create mode 100644 database/mssql/test/versions/v_51_2_test.sql create mode 100644 database/mssql/test/versions/v_51_3_test.sql create mode 100644 database/mssql/test/versions/v_51_test.sh diff --git a/database/mssql/scripts/sampledata/dbo.ORBC_POLICY_CONFIGURATION.Table.sql b/database/mssql/scripts/sampledata/dbo.ORBC_POLICY_CONFIGURATION.Table.sql index 0c4c5bff1..241c2cedc 100644 --- a/database/mssql/scripts/sampledata/dbo.ORBC_POLICY_CONFIGURATION.Table.sql +++ b/database/mssql/scripts/sampledata/dbo.ORBC_POLICY_CONFIGURATION.Table.sql @@ -1,6 +1,48 @@ +SET ANSI_NULLS ON +GO +SET QUOTED_IDENTIFIER ON +GO SET NOCOUNT ON GO INSERT [dbo].[ORBC_POLICY_CONFIGURATION] (EFFECTIVE_DATE, IS_DRAFT, CHANGE_DESCRIPTION, POLICY_JSON) -VALUES (GETUTCDATE(), 'N', N'In-progress sample policy configuration', +VALUES (CAST('2024-11-01T00:00:00' AS DATETIME), 'N', N'In-progress sample policy configuration', N'{"version":"2024.03.18.001","geographicRegions":[{"id":"LMN","name":"Lower Mainland"},{"id":"KTN","name":"Kootenay"},{"id":"PCE","name":"Peace"}],"rangeMatrices":[{"id":"annualFeeCV","name":"Annual licensing fee for commercial vehicle","matrix":[{"min":0,"max":500,"value":42},{"min":501,"max":1000,"value":49},{"min":1001,"max":1500,"value":60},{"min":1501,"max":2000,"value":74},{"min":2001,"max":2500,"value":85},{"min":2501,"max":3000,"value":97},{"min":3001,"max":3500,"value":108},{"min":3501,"max":4000,"value":127},{"min":4001,"max":4500,"value":147},{"min":4501,"max":5000,"value":173},{"min":5001,"max":5500,"value":193},{"min":5501,"max":6000,"value":213},{"min":6001,"max":6500,"value":230},{"min":6501,"max":7000,"value":250},{"min":7001,"max":7500,"value":266},{"min":7501,"max":8000,"value":292},{"min":8001,"max":8500,"value":320},{"min":8501,"max":9000,"value":347},{"min":9001,"max":9500,"value":376},{"min":9501,"max":10000,"value":395},{"min":10001,"max":10500,"value":416},{"min":10501,"max":11000,"value":437},{"min":11001,"max":11500,"value":450},{"min":11501,"max":12000,"value":469},{"min":12001,"max":12500,"value":488},{"min":12501,"max":13000,"value":502},{"min":13001,"max":13500,"value":526},{"min":13501,"max":14000,"value":553},{"min":14001,"max":14500,"value":580},{"min":14501,"max":15000,"value":607},{"min":15001,"max":15500,"value":638},{"min":15501,"max":16000,"value":680},{"min":16001,"max":16500,"value":721},{"min":16501,"max":17000,"value":761},{"min":17001,"max":17500,"value":806},{"min":17501,"max":18000,"value":837},{"min":18001,"max":18500,"value":861},{"min":18501,"max":19000,"value":890},{"min":19001,"max":19500,"value":917},{"min":19501,"max":20000,"value":944},{"min":20001,"max":20500,"value":977},{"min":20501,"max":21000,"value":1003},{"min":21001,"max":21500,"value":1030},{"min":21501,"max":22000,"value":1057},{"min":22001,"max":22500,"value":1084},{"min":22501,"max":23000,"value":1111},{"min":23001,"max":23500,"value":1140},{"min":23501,"max":24000,"value":1170},{"min":24001,"max":24500,"value":1199},{"min":24501,"max":25000,"value":1239},{"min":25001,"max":25500,"value":1285},{"min":25501,"max":26000,"value":1326},{"min":26001,"max":26500,"value":1367},{"min":26501,"max":27000,"value":1395},{"min":27001,"max":27500,"value":1424},{"min":27501,"max":28000,"value":1450},{"min":28001,"max":28500,"value":1479},{"min":28501,"max":29000,"value":1505},{"min":29001,"max":29500,"value":1534},{"min":29501,"max":30000,"value":1565},{"min":30001,"max":31000,"value":1591},{"min":31001,"max":32000,"value":1644},{"min":32001,"max":33000,"value":1696},{"min":33001,"max":34000,"value":1751},{"min":34001,"max":35000,"value":1805},{"min":35001,"max":36000,"value":1890},{"min":36001,"max":37000,"value":2018},{"min":37001,"max":38000,"value":2088},{"min":38001,"max":39000,"value":2159},{"min":39001,"max":40000,"value":2229},{"min":40001,"max":41000,"value":2300},{"min":41001,"max":42000,"value":2373},{"min":42001,"max":43000,"value":2445},{"min":43001,"max":44000,"value":2514},{"min":44001,"max":45000,"value":2585},{"min":45001,"max":46000,"value":2690},{"min":46001,"max":47000,"value":2799},{"min":47001,"max":48000,"value":2871},{"min":48001,"max":49000,"value":2940},{"min":49001,"max":50000,"value":3012},{"min":50001,"max":51000,"value":3061},{"min":51001,"max":52000,"value":3127},{"min":52001,"max":53000,"value":3192},{"min":53001,"max":54000,"value":3257},{"min":54001,"max":55000,"value":3322},{"min":55001,"max":56000,"value":3387},{"min":56001,"max":57000,"value":3452},{"min":57001,"max":58000,"value":3516},{"min":58001,"max":59000,"value":3581},{"min":59001,"max":60000,"value":3647},{"min":60001,"max":61000,"value":3710},{"min":61001,"max":62000,"value":3775},{"min":62001,"max":63000,"value":3840},{"min":63001,"max":63500,"value":3905}]},{"id":"annualFeePassenger","name":"Annual licensing fee for commercial passenger vehicle","matrix":[{"min":0,"max":500,"value":40},{"min":501,"max":1000,"value":47},{"min":1001,"max":1500,"value":57},{"min":1501,"max":2000,"value":70},{"min":2001,"max":2500,"value":81},{"min":2501,"max":3000,"value":92},{"min":3001,"max":3500,"value":103},{"min":3501,"max":4000,"value":121},{"min":4001,"max":4500,"value":140},{"min":4501,"max":5000,"value":165},{"min":5001,"max":5500,"value":184},{"min":5501,"max":6000,"value":203},{"min":6001,"max":6500,"value":219},{"min":6501,"max":7000,"value":238},{"min":7001,"max":7500,"value":253},{"min":7501,"max":8000,"value":278},{"min":8001,"max":8500,"value":305},{"min":8501,"max":9000,"value":330},{"min":9001,"max":9500,"value":358},{"min":9501,"max":10000,"value":376},{"min":10001,"max":10500,"value":396},{"min":10501,"max":11000,"value":416},{"min":11001,"max":11500,"value":429},{"min":11501,"max":12000,"value":447},{"min":12001,"max":12500,"value":465},{"min":12501,"max":13000,"value":478},{"min":13001,"max":13500,"value":501},{"min":13501,"max":14000,"value":527},{"min":14001,"max":14500,"value":552},{"min":14501,"max":15000,"value":578},{"min":15001,"max":15500,"value":608},{"min":15501,"max":16000,"value":648},{"min":16001,"max":16500,"value":687},{"min":16501,"max":17000,"value":725},{"min":17001,"max":17500,"value":768},{"min":17501,"max":18000,"value":797},{"min":18001,"max":18500,"value":820},{"min":18501,"max":19000,"value":848},{"min":19001,"max":19500,"value":873},{"min":19501,"max":20000,"value":899},{"min":20001,"max":20500,"value":930},{"min":20501,"max":21000,"value":955},{"min":21001,"max":21500,"value":981},{"min":21501,"max":22000,"value":1007},{"min":22001,"max":22500,"value":1032},{"min":22501,"max":23000,"value":1058},{"min":23001,"max":23500,"value":1086},{"min":23501,"max":24000,"value":1114},{"min":24001,"max":24500,"value":1142},{"min":24501,"max":25000,"value":1180},{"min":25001,"max":25500,"value":1224},{"min":25501,"max":26000,"value":1263},{"min":26001,"max":26500,"value":1302},{"min":26501,"max":27000,"value":1329},{"min":27001,"max":27500,"value":1356},{"min":27501,"max":28000,"value":1381},{"min":28001,"max":28500,"value":1409},{"min":28501,"max":29000,"value":1433},{"min":29001,"max":29500,"value":1461},{"min":29501,"max":30000,"value":1490},{"min":30001,"max":31000,"value":1516},{"min":31001,"max":32000,"value":1569},{"min":32001,"max":33000,"value":1621},{"min":33001,"max":34000,"value":1676},{"min":34001,"max":35000,"value":1730},{"min":35001,"max":36000,"value":1815},{"min":36001,"max":37000,"value":1943},{"min":37001,"max":38000,"value":2013},{"min":38001,"max":39000,"value":2084},{"min":39001,"max":40000,"value":2154},{"min":40001,"max":41000,"value":2225},{"min":41001,"max":42000,"value":2298},{"min":42001,"max":43000,"value":2370},{"min":43001,"max":44000,"value":2439},{"min":44001,"max":45000,"value":2510},{"min":45001,"max":46000,"value":2615},{"min":46001,"max":47000,"value":2724},{"min":47001,"max":48000,"value":2796},{"min":48001,"max":49000,"value":2865},{"min":49001,"max":50000,"value":2937},{"min":50001,"max":51000,"value":2986},{"min":51001,"max":52000,"value":3052},{"min":52001,"max":53000,"value":3117},{"min":53001,"max":54000,"value":3182},{"min":54001,"max":55000,"value":3247},{"min":55001,"max":56000,"value":3312},{"min":56001,"max":57000,"value":3377},{"min":57001,"max":58000,"value":3441},{"min":58001,"max":59000,"value":3506},{"min":59001,"max":60000,"value":3572},{"min":60001,"max":61000,"value":3635},{"min":61001,"max":62000,"value":3700},{"min":62001,"max":63000,"value":3765},{"min":63001,"max":63500,"value":3830}]},{"id":"annualFeeIndustrial","name":"Annual licensing fee for an industrial machine","matrix":[{"min":0,"max":2000,"value":45},{"min":2001,"max":5000,"value":69},{"min":5001,"max":7000,"value":110},{"min":7001,"max":9000,"value":164},{"min":9001,"max":11000,"value":216},{"min":11001,"value":260}]},{"id":"annualFeeFarm","name":"Annual licensing fee for farm vehicle","matrix":[{"min":0,"max":500,"value":30},{"min":501,"max":1000,"value":40},{"min":1001,"max":1500,"value":47},{"min":1501,"max":2000,"value":55},{"min":2001,"max":2500,"value":77},{"min":2501,"max":3000,"value":101},{"min":3001,"max":3500,"value":142},{"min":3501,"max":4000,"value":181},{"min":4001,"max":4500,"value":207},{"min":4501,"max":5000,"value":243},{"min":5001,"max":5500,"value":278},{"min":5501,"max":6000,"value":322},{"min":6001,"max":6500,"value":355},{"min":6501,"max":7000,"value":396},{"min":7001,"max":7500,"value":427},{"min":7501,"max":8000,"value":473},{"min":8001,"max":8500,"value":524},{"min":8501,"max":9000,"value":558},{"min":9001,"max":9500,"value":596},{"min":9501,"max":10000,"value":633},{"min":10001,"max":10500,"value":669},{"min":10501,"max":11000,"value":711},{"min":11001,"max":11500,"value":744},{"min":11501,"max":12000,"value":784},{"min":12001,"max":12500,"value":824},{"min":12501,"max":13000,"value":863},{"min":13001,"max":13500,"value":883},{"min":13501,"max":14000,"value":899},{"min":14001,"max":14500,"value":919},{"min":14501,"max":15000,"value":940},{"min":15001,"max":15500,"value":960},{"min":15501,"max":16000,"value":979},{"min":16001,"max":16500,"value":997},{"min":16501,"max":17000,"value":1017},{"min":17001,"max":17500,"value":1036},{"min":17501,"max":18000,"value":1056},{"min":18001,"max":18500,"value":1076},{"min":18501,"max":19000,"value":1096},{"min":19001,"max":19500,"value":1114},{"min":19501,"max":20000,"value":1134},{"min":20001,"max":20500,"value":1154},{"min":20501,"max":21000,"value":1174},{"min":21001,"max":21500,"value":1192},{"min":21501,"max":22000,"value":1211},{"min":22001,"max":22500,"value":1231},{"min":22501,"max":23000,"value":1251},{"min":23001,"max":23500,"value":1270},{"min":23501,"max":24000,"value":1289},{"min":24001,"max":24400,"value":1309}]}],"commonRules":[{"conditions":{"not":{"fact":"permitData","operator":"stringMinimumLength","value":1,"path":"$.companyName"}},"event":{"type":"violation","params":{"message":"Company is required","code":"field-validation-error","fieldReference":"permitData.companyName"}}},{"conditions":{"not":{"fact":"permitData","operator":"stringMinimumLength","value":1,"path":"$.contactDetails.firstName"}},"event":{"type":"violation","params":{"message":"Contact first name is required","code":"field-validation-error","fieldReference":"permitData.contactDetails.firstName"}}},{"conditions":{"not":{"fact":"permitData","operator":"stringMinimumLength","value":1,"path":"$.contactDetails.lastName"}},"event":{"type":"violation","params":{"message":"Contact last name is required","code":"field-validation-error","fieldReference":"permitData.contactDetails.lastName"}}},{"conditions":{"not":{"fact":"permitData","operator":"stringMinimumLength","value":1,"path":"$.contactDetails.phone1"}},"event":{"type":"violation","params":{"message":"Contact phone number is required","code":"field-validation-error","fieldReference":"permitData.contactDetails.phone1"}}},{"conditions":{"not":{"fact":"permitData","operator":"stringMinimumLength","value":1,"path":"$.contactDetails.email"}},"event":{"type":"violation","params":{"message":"Company contact email is required","code":"field-validation-error","fieldReference":"permitData.contactDetails.email"}}},{"conditions":{"any":[{"fact":"permitData","operator":"dateLessThan","value":{"fact":"validationDate"},"path":"$.startDate"}]},"event":{"type":"violation","params":{"message":"Permit start date cannot be in the past","code":"field-validation-error","fieldReference":"permitData.startDate"}}},{"conditions":{"not":{"fact":"permitData","operator":"regex","value":"^[a-zA-Z0-9]{6}$","path":"$.vehicleDetails.vin"}},"event":{"type":"violation","params":{"message":"Vehicle Identification Number (vin) must be 6 alphanumeric characters","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.vin"}}},{"conditions":{"not":{"fact":"permitData","operator":"stringMinimumLength","value":1,"path":"$.vehicleDetails.plate"}},"event":{"type":"violation","params":{"message":"Vehicle plate is required","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.plate"}}},{"conditions":{"not":{"fact":"permitData","operator":"stringMinimumLength","value":1,"path":"$.vehicleDetails.make"}},"event":{"type":"violation","params":{"message":"Vehicle make is required","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.make"}}},{"conditions":{"not":{"fact":"permitData","operator":"greaterThan","value":1900,"path":"$.vehicleDetails.year"}},"event":{"type":"violation","params":{"message":"Vehicle year is required","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.year"}}},{"conditions":{"not":{"fact":"permitData","operator":"stringMinimumLength","value":1,"path":"$.vehicleDetails.countryCode"}},"event":{"type":"violation","params":{"message":"Vehicle country of registration is required","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.countryCode"}}}],"permitTypes":[{"id":"TROS","name":"Term Oversize","routingRequired":false,"weightDimensionRequired":false,"sizeDimensionRequired":false,"commodityRequired":false,"allowedVehicles":["BOOSTER","DOLLIES","EXPANDO","FEBGHSE","FECVYER","FEDRMMX","FEPNYTR","FESEMTR","FEWHELR","FLOATTR","FULLLTL","HIBOEXP","HIBOFLT","JEEPSRG","LOGDGLG","LOGFULL","LOGNTAC","LOGOWBK","LOGSMEM","LOGTNDM","LOGTRIX","ODTRLEX","OGOSFDT","PLATFRM","POLETRL","PONYTRL","REDIMIX","SEMITRL","STBTRAN","STCHIPS","STCRANE","STINGAT","STLOGNG","STNTSHC","STREEFR","STSDBDK","STSTNGR","STWHELR","STWIDWH","BUSTRLR","CONCRET","DDCKBUS","GRADERS","LOGGING","LOGOFFH","LWBTRCT","OGBEDTK","OGOILSW","PICKRTT","PLOWBLD","REGTRCK","STINGER","TOWVEHC","TRKTRAC"],"rules":[{"conditions":{"all":[{"not":{"fact":"permitData","operator":"in","value":[30,60,90,120,150,180,210,240,270,300,330],"path":"$.permitDuration"}},{"not":{"fact":"permitData","operator":"equal","value":{"fact":"daysInPermitYear"},"path":"$.permitDuration"}}]},"event":{"type":"violation","params":{"message":"Duration must be in 30 day increments or a full year","code":"field-validation-error","fieldReference":"permitData.permitDuration"}}},{"conditions":{"not":{"fact":"permitData","path":"$.vehicleDetails.vehicleSubType","operator":"in","value":{"fact":"allowedVehicles"}}},"event":{"type":"violation","params":{"message":"Vehicle type not permittable for this permit type","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.vehicleSubType"}}}],"costRules":[{"fact":"costPerMonth","params":{"cost":30}}]},{"id":"TROW","name":"Term Overweight","routingRequired":false,"weightDimensionRequired":false,"sizeDimensionRequired":false,"commodityRequired":false,"allowedVehicles":["DOLLIES","FEBGHSE","FECVYER","FEDRMMX","FEPNYTR","FESEMTR","FEWHELR","REDIMIX","CONCRET","CRAFTAT","CRAFTMB","GRADERS","MUNFITR","OGOILSW","OGSERVC","OGSRRAH","PICKRTT","TOWVEHC"],"rules":[{"conditions":{"all":[{"not":{"fact":"permitData","path":"$.permitDuration","operator":"in","value":[30,60,90,120,150,180,210,240,270,300,330]}},{"not":{"fact":"permitData","path":"$.permitDuration","operator":"equal","value":{"fact":"daysInPermitYear"}}}]},"event":{"type":"violation","params":{"message":"Duration must be in 30 day increments or a full year","code":"field-validation-error","fieldReference":"permitData.permitDuration"}}},{"conditions":{"not":{"fact":"permitData","path":"$.vehicleDetails.vehicleSubType","operator":"in","value":{"fact":"allowedVehicles"}}},"event":{"type":"violation","params":{"message":"Vehicle type not permittable for this permit type","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.vehicleSubType"}}}],"costRules":[{"fact":"costPerMonth","params":{"cost":100}}]},{"id":"STOS","name":"Single Trip Oversize","routingRequired":true,"weightDimensionRequired":false,"sizeDimensionRequired":true,"commodityRequired":true,"allowedCommodities":["EMPTYXX","BRGBEAM","AUTOCRR","BRSHCUT"],"allowedVehicles":["DOLLIES","FEBGHSE","FECVYER","FEDRMMX","FEPNYTR","FESEMTR","FEWHELR","REDIMIX","CONCRET","CRAFTAT","CRAFTMB","GRADERS","MUNFITR","OGOILSW","OGSERVC","OGSRRAH","PICKRTT","TOWVEHC"],"rules":[{"conditions":{"any":[{"not":{"fact":"permitData","operator":"lessThanInclusive","value":7,"path":"$.permitDuration"}},{"not":{"fact":"permitData","operator":"greaterThan","value":0,"path":"$.permitDuration"}}]},"event":{"type":"violation","params":{"message":"Duration must be 7 days or less","code":"field-validation-error","fieldReference":"permitData.permitDuration"}}},{"conditions":{"not":{"fact":"configurationIsValid","operator":"equal","value":true}},"event":{"type":"violation","params":{"message":"Vehicle configuration is not permittable for this commodity","code":"field-validation-error","fieldReference":"permitData.vehicleConfiguration.trailers"}}}],"costRules":[{"fact":"fixedCost","params":{"cost":15}}]}],"globalWeightDefaults":{"powerUnits":[],"trailers":[]},"vehicleCategories":{"trailerCategories":[{"id":"trailer","name":"Default trailer category"},{"id":"accessory","name":"Accessory trailer such as jeep or booster, to be used alongside other trailers. Not permittable on its own as a trailer in a combination."},{"id":"pseudo","name":"Placeholder for a trailer in a combination with no trailer (such as when a brushcutter is permitted with no trailer)."}],"powerUnitCategories":[{"id":"powerunit","name":"Default power unit category"}]},"vehicleTypes":{"powerUnitTypes":[{"id":"BUSCRUM","name":"Buses/Crummies","category":"powerunit"},{"id":"BUSTRLR","name":"Inter-City Bus (Pulling Pony Trailer)","category":"powerunit"},{"id":"CONCRET","name":"Concrete Pumper Trucks","category":"powerunit"},{"id":"CRAFTAT","name":"Cranes, Rubber-Tired Loaders, Firetrucks - All Terrain","category":"powerunit"},{"id":"CRAFTMB","name":"Cranes, Rubber-Tired Loaders, Firetrucks - Mobile","category":"powerunit"},{"id":"DDCKBUS","name":"Double Decker Buses","category":"powerunit"},{"id":"FARMVEH","name":"Farm Vehicles","category":"powerunit"},{"id":"GRADERS","name":"Fixed Equipment - Trucks/Graders etc.","category":"powerunit"},{"id":"LCVRMDB","name":"Long Combination Vehicles (LCV) - Rocky Mountain Doubles","category":"powerunit"},{"id":"LCVTPDB","name":"Long Combination Vehicles (LCV) - Turnpike Doubles","category":"powerunit"},{"id":"LOGGING","name":"Logging Trucks","category":"powerunit"},{"id":"LOGOFFH","name":"Logging Trucks - Off-Highway","category":"powerunit"},{"id":"LWBTRCT","name":"Long Wheelbase Truck Tractors Exceeding 6.2 m up to 7.25 m","category":"powerunit"},{"id":"MUNFITR","name":"Municipal Fire Trucks","category":"powerunit"},{"id":"OGBEDTK","name":"Oil and Gas - Bed Trucks","category":"powerunit"},{"id":"OGOILSW","name":"Oil and Gas - Oilfield Sows","category":"powerunit"},{"id":"OGSERVC","name":"Oil and Gas - Service Rigs","category":"powerunit"},{"id":"OGSRRAH","name":"Oil and Gas - Service Rigs and Rathole Augers Only Equipped with Heavy Front Projected Crane (must exceed 14,000 kg tare weight)","category":"powerunit"},{"id":"PICKRTT","name":"Picker Truck Tractors","category":"powerunit"},{"id":"PLOWBLD","name":"Trucks Equipped with Front or Underbody Plow Blades","category":"powerunit"},{"id":"PUTAXIS","name":"Taxis","category":"powerunit"},{"id":"REGTRCK","name":"Trucks","category":"powerunit"},{"id":"SCRAPER","name":"Scrapers","category":"powerunit"},{"id":"SPAUTHV","name":"Specially Authorized Vehicles","category":"powerunit"},{"id":"STINGER","name":"Truck Tractors - Stinger Steered","category":"powerunit"},{"id":"TOWVEHC","name":"Tow Vehicles","category":"powerunit"},{"id":"TRKTRAC","name":"Truck Tractors","category":"powerunit"}],"trailerTypes":[{"id":"BOOSTER","name":"Boosters","category":"accessory"},{"id":"DBTRBTR","name":"Tandem/Tridem Drive B-Train (Super B-Train)","category":"trailer"},{"id":"DOLLIES","name":"Dollies","category":"trailer"},{"id":"EXPANDO","name":"Expando Semi-Trailers","category":"trailer"},{"id":"FEBGHSE","name":"Fixed Equipment - Portable Asphalt Baghouses","category":"trailer"},{"id":"FECVYER","name":"Fixed Equipment - Conveyors (Semi-Trailers)","category":"trailer"},{"id":"FECVYPT","name":"Fixed Equipment - Conveyors (Pony Trailers)","category":"trailer"},{"id":"FEDRMMX","name":"Fixed Equipment - Counter Flow Asphalt Drum Mixers","category":"trailer"},{"id":"FEPNYTR","name":"Fixed Equipment - Pony Trailers","category":"trailer"},{"id":"FESEMTR","name":"Fixed Equipment - Semi-Trailers","category":"trailer"},{"id":"FEWHELR","name":"Fixed Equipment - Wheeler Semi-Trailers","category":"wheeler"},{"id":"FLOATTR","name":"Float Trailers","category":"wheeler"},{"id":"FULLLTL","name":"Full Trailers","category":"trailer"},{"id":"HIBOEXP","name":"Semi-Trailers - Hiboys/Expandos","category":"trailer"},{"id":"HIBOFLT","name":"Semi-Trailers - Hiboys/Flat Decks","category":"trailer"},{"id":"JEEPSRG","name":"Jeeps","category":"accessory"},{"id":"LOGDGLG","name":"Legacy Logging Trailer Combinations - Tandem Pole Trailers, Dogloggers","category":"trailer"},{"id":"LOGLGCY","name":"Legacy Logging Trailer Combinations","category":"trailer"},{"id":"LOGFULL","name":"Logging Trailer - Full Trailers, Tri Axle, Quad Axle","category":"trailer"},{"id":"LOGNTAC","name":"Legacy Logging Trailer Combinations - Non-TAC B-Trains","category":"trailer"},{"id":"LOGOWBK","name":"Logging Trailer - Overwidth Bunks","category":"trailer"},{"id":"LOGSMEM","name":"Logging Semi-Trailer - Empty, 3.2 m Bunks","category":"trailer"},{"id":"LOGTNDM","name":"Legacy Logging Trailer Combinations - Single Axle Jeeps, Tandem Axle Pole Trailers, Dogloggers","category":"trailer"},{"id":"LOGTRIX","name":"Legacy Logging Trailer Combinations - Single Axle Jeeps, Tri Axle Trailers","category":"trailer"},{"id":"MHMBSHG","name":"Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW) with Attached Axles","category":"trailer"},{"id":"MHMBSHL","name":"Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW) with Attached Axles","category":"trailer"},{"id":"ODTRLEX","name":"Overdimensional Trailers and Semi-Trailers (For Export)","category":"trailer"},{"id":"OGOSFDT","name":"Oil and Gas - Oversize Oilfield Flat Deck Semi-Trailers","category":"trailer"},{"id":"PLATFRM","name":"Platform Trailers","category":"trailer"},{"id":"PMHWAAX","name":"Park Model Homes with Attached Axles","category":"trailer"},{"id":"POLETRL","name":"Pole Trailers","category":"trailer"},{"id":"PONYTRL","name":"Pony Trailers","category":"trailer"},{"id":"REDIMIX","name":"Ready Mix Concrete Pump Semi-Trailers","category":"trailer"},{"id":"SEMITRL","name":"Semi-Trailers","category":"trailer"},{"id":"STACTRN","name":"Semi-Trailers - A-Trains and C-Trains","category":"trailer"},{"id":"STBTRAN","name":"Semi-Trailers - B-Trains","category":"trailer"},{"id":"STCHIPS","name":"Semi-Trailers - Walled B-Trains (Chip Trucks)","category":"trailer"},{"id":"STCRANE","name":"Semi-Trailers with Crane","category":"trailer"},{"id":"STINGAT","name":"Stinger Steered Automobile Transporters","category":"trailer"},{"id":"STLOGNG","name":"Semi-Trailers - Logging","category":"trailer"},{"id":"STNTSHC","name":"Semi-Trailers - Non-Tac Short Chassis","category":"trailer"},{"id":"STREEFR","name":"Semi-Trailers - Insulated Vans with Reefer/Refrigeration Units","category":"trailer"},{"id":"STROPRT","name":"Steering Trailers - Manned","category":"trailer"},{"id":"STRSELF","name":"Steering Trailers - Self/Remote","category":"trailer"},{"id":"STSDBDK","name":"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.","category":"trailer"},{"id":"STSTEER","name":"Semi-Trailers - Steering Trailers","category":"trailer"},{"id":"STSTNGR","name":"Semi-Trailers - Stinger Steered Automobile Transporters","category":"trailer"},{"id":"STWDTAN","name":"Semi-Trailers - Spread Tandems","category":"trailer"},{"id":"STWHELR","name":"Semi-Trailers - Wheelers","category":"trailer"},{"id":"STWIDWH","name":"Semi-Trailers - Wide Wheelers","category":"trailer"},{"id":"NONEXXX","name":"None","category":"pseudo"}]},"commodities":[{"id":"NONEXXX","name":"None","size":{"powerUnits":[{"type":"CONCRET","trailers":[{"type":"NONEXXX","jeep":false,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"l":15.5}]}]},{"type":"CRAFTAT","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":3.8,"h":4.3,"l":25}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":3.8,"h":4.3,"l":14,"regions":[{"region":"PCE","l":15}]}]}]},{"type":"CRAFTMB","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":3.8,"h":4.3,"l":25}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":3.8,"h":4.3,"l":14,"regions":[{"region":"PCE","l":15}]}]}]},{"type":"DDCKBUS","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"h":4.42,"regions":[{"region":"LMN","h":4.3},{"region":"KTN","h":4.3},{"region":"PCE","h":4.3}]}]}]},{"type":"GRADERS","trailers":[{"type":"FEPNYTR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":4,"w":3.2,"h":4.3,"l":31}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"w":3.5,"h":4.4,"l":12.5,"regions":[{"region":"LMN","h":4.3},{"region":"KTN","h":4.3},{"region":"PCE","h":5.33}]}]}]},{"type":"BUSTRLR","trailers":[{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{}]}]},{"type":"LOGOFFH","trailers":[{"type":"STLOGNG","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":4.4}]}]},{"type":"LCVRMDB","trailers":[{"type":"SEMITRL","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"l":32,"regions":[{"region":"PCE","l":31}]}]}]},{"type":"LCVTPDB","trailers":[{"type":"SEMITRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"l":41}]}]},{"type":"LWBTRCT","trailers":[{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"w":2.6,"h":4.15,"l":23}]}]},{"type":"PICKRTT","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"w":2.6,"h":4.15,"l":16}]},{"type":"STCRANE","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":25}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":5,"h":4.88,"l":40,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STRSELF","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":5,"h":4.88,"l":36,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"SCRAPER","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"l":12.5}]}]},{"type":"TRKTRAC","trailers":[{"type":"FECVYER","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":4,"rp":9.5,"w":3.8,"h":4.72,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEDRMMX","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.72,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEBGHSE","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":4.26,"h":4.72,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FESEMTR","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.72,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEWHELR","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":5,"h":4.88,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"ODTRLEX","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"w":3.65}]},{"type":"REDIMIX","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"h":4.3,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STREEFR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"h":4.3}]},{"type":"STNTSHC","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","l":32}]}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"h":4.15,"l":40}]},{"type":"STRSELF","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"l":36}]}]},{"type":"REGTRCK","trailers":[{"type":"FECVYPT","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":4,"rp":9.5,"w":3.2,"h":4.3,"l":31}]},{"type":"FEPNYTR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":4,"w":3.2,"h":4.3,"l":31}]},{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":6.5,"w":3.8,"h":4.3,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"MHMBSHL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.9,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]},{"type":"MHMBSHG","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.9,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":3.2,"h":4.3,"l":16,"regions":[{"region":"PCE","h":4.4}]}]},{"type":"ODTRLEX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":3.65}]},{"type":"PMHWAAX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.9,"w":4.4,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":6.5,"w":3.2,"h":4.3,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"PLOWBLD","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":3.2}]}]}]}},{"id":"DOGLOGG","name":"Doglogger/Sjostrum Trailers (decked)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":5,"l":13.5}]}]}]}},{"id":"GRTBBUK","name":"Grader, Tractor Blades, Buckets","size":{"powerUnits":[{"type":"GRADERS","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":4.4}]}]}]}},{"id":"HAYRACK","name":"Hayrack Semi-Trailer with a Folded Chassis/Empty Piggyback","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STLOGNG","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":5,"h":4.15}]}]}]}},{"id":"IMCONTN","name":"Intermodal Containers","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"h":4.4,"l":26}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"h":4.4,"l":27.5}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"h":4.4}]}]},{"type":"REGTRCK","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"h":4.4}]}]}]}},{"id":"IMCONWS","name":"Intermodal Containers without Sides","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":4.4,"h":4.72}]}]}]}},{"id":"LPBOOMS","name":"Logs, Poles And Boomsticks (Up To 20.1)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.9,"l":27.5}]},{"type":"LOGLGCY","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":5,"w":2.6,"l":25}]},{"type":"POLETRL","jeep":true,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.9,"l":27.5}]},{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.9,"l":26}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.9,"l":27.5}]},{"type":"HIBOFLT","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.9,"l":25}]},{"type":"STLOGNG","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.9,"l":25}]}]}]}},{"id":"LPBOOML","name":"Logs, Poles And Boomsticks (Over 20.1)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"LOGFULL","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":10,"rp":10,"l":40}]},{"type":"POLETRL","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":8,"rp":9,"l":40}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":10,"l":40}]},{"type":"STRSELF","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":10,"l":36}]}]}]}},{"id":"MFHOMES","name":"Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":7.5,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":7.5,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]}]},{"type":"REGTRCK","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":6.9,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]},{"type":"FLOATTR","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":6.9,"h":4.57,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":6.9,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]}]}]}},{"id":"MFHOMEL","name":"Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":7.5,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":7.5,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]}]},{"type":"REGTRCK","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":6.9,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]},{"type":"FLOATTR","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":6.9,"h":4.57,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":6.9,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]}]}]}},{"id":"PARKMHS","name":"Park Model Homes","size":{"powerUnits":[{"type":"REGTRCK","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.9,"w":4.4,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FLOATTR","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.9,"w":4.4,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.9,"w":4.4,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33}]}]}]}]}},{"id":"PIPESTL","name":"Pipe And Steel Products (Rebar, Pilings, Reinforcing Steel, Etc.)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":31}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5}]},{"type":"STSTEER","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":36}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":40}]}]}]}},{"id":"REDUCBL","name":"Reducible Loads","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STLOGNG","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":3.2,"h":4.15,"l":27.5}]},{"type":"PLATFRM","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":3.2,"h":4.3,"l":26,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSTEER","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWHELR","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWIDWH","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STCRANE","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"w":3.2,"h":4.3,"l":40,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STRSELF","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":3.2,"h":4.3,"l":36,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"PICKRTT","trailers":[{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"STINGER","trailers":[{"type":"SEMITRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1.2,"h":4.3,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSTNGR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1.2,"h":4.3,"l":25,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"REGTRCK","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":3.2,"h":4.3,"l":25,"regions":[{"region":"PCE","h":4.4}]}]},{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":3.2,"h":4.3,"l":25,"regions":[{"region":"PCE","h":4.4}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":3.2,"h":4.3,"l":16,"regions":[{"region":"PCE","h":4.4}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":3.2,"h":4.3,"l":25,"regions":[{"region":"PCE","h":4.4}]}]}]}]}},{"id":"SCRAPER","name":"Scraper on Dollies","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"DOLLIES","jeep":true,"booster":false,"selfIssue":false,"sizeDimensions":[{"w":3.2,"h":4.3,"l":25,"regions":[{"region":"PCE","h":4.4}]}]}]}]}},{"id":"OILFILD","name":"Oil Field Equipment","size":{"powerUnits":[{"type":"OGBEDTK","trailers":[{"type":"EXPANDO","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"h":4.3,"l":27.5}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":5,"w":3.3,"h":4.3,"l":14}]},{"type":"OGOSFDT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.3,"h":4.3,"l":23}]}]},{"type":"OGOILSW","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":5,"w":3.2,"h":4.3,"l":15}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":25}]}]},{"type":"OGSERVC","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":3.8,"h":4.3,"l":15}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":3.8,"h":4.3,"l":23}]}]},{"type":"OGSRRAH","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":2.9,"h":4.15,"l":15.5}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":2.9,"h":4.15,"l":23}]}]},{"type":"TRKTRAC","trailers":[{"type":"OGOSFDT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.3,"h":4.3,"l":23}]}]}]}},{"id":"JPTRLOG","name":"Tandem Jeep/Pole Trailer Loaded on Logging Truck","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":5,"w":2.9,"h":4.3}]}]},{"type":"REGTRCK","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":5,"w":2.9,"h":4.3}]}]}]}},{"id":"TOWDISB","name":"Tow Trucks And Disabled Vehicles","size":{"powerUnits":[{"type":"TOWVEHC","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"h":4.3,"l":27.5}]}]}]}},{"id":"TRQDLOG","name":"Tri-Axle or Quad Axle Full Trailer Loaded on Logging Truck","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":5,"h":4.3,"l":13.5}]}]},{"type":"REGTRCK","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":5,"h":4.3,"l":13.5}]}]}]}},{"id":"WOODCHP","name":"Wood Chips, Residuals","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"h":4.45,"l":27.5}]}]}]}},{"id":"EMPTYXX","name":"Empty","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"LOGOWBK","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":0,"rp":0,"w":3.2}]},{"type":"PLATFRM","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"w":3.2,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"l":31}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"l":27.5}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"l":31}]},{"type":"STWHELR","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"w":3.2,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWIDWH","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"w":3.2,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STCRANE","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":3.2,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"PICKRTT","trailers":[{"type":"OGOSFDT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":23}]},{"type":"PLATFRM","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"w":3.2,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"l":25,"regions":[{"region":"PCE","l":27.5}]}]},{"type":"STWHELR","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"w":3.2,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWIDWH","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"w":3.2,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STCRANE","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":3.2,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]}]}]}},{"id":"GRBBINS","name":"Garbage Bins","size":{"powerUnits":[{"type":"REGTRCK","trailers":[{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5}]}]}]}},{"id":"LAMBEAM","name":"Laminated Beams","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"POLETRL","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"l":40}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"l":31}]}]}]}},{"id":"HAYLREC","name":"Hay Bales Large Rectangular","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":3.05,"h":4.3,"l":26,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":3.05,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.05,"h":4.4,"regions":[{"region":"LMN","h":4.3},{"region":"KTN","h":4.3},{"region":"PCE","h":4.8}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.05,"h":4.3,"regions":[{"region":"PCE","h":4.8}]}]}]},{"type":"REGTRCK","trailers":[{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":4,"w":3.05,"h":4.3,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":3.05,"h":4.3,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":4,"w":3.05,"h":4.3,"regions":[{"region":"PCE","h":4.8}]}]}]}]}},{"id":"HAYROND","name":"Hay Bales Round","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":3.5,"h":4.3,"l":26,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":3.5,"h":4.3,"l":27.5,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.5,"h":4.3,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.5,"h":4.3,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]}]},{"type":"REGTRCK","trailers":[{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":4,"w":3.5,"h":4.3,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":3.5,"h":4.3,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":4,"w":3.5,"h":4.3,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]}]}]}},{"id":"HAYSREC","name":"Hay Bales Small Rectangular","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":3.05,"h":4.3,"l":26,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":3.05,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.05,"h":4.3,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.05,"h":4.3,"regions":[{"region":"PCE","h":4.8}]}]}]},{"type":"REGTRCK","trailers":[{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":4,"w":3.05,"h":4.3,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":3.05,"h":4.3,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":4,"w":3.05,"h":4.3,"regions":[{"region":"PCE","h":4.8}]}]}]}]}},{"id":"BRGBEAM","name":"Bridge Beams","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"POLETRL","jeep":true,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"l":31}]}]}]}},{"id":"NONREDU","name":"Non-Reducible Loads","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STLOGNG","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"w":3.8,"h":4.15,"l":27.5}]},{"type":"PLATFRM","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":5,"h":4.4,"l":26,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":5,"h":4.4,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":5,"h":4.4,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":5,"h":4.4,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSTEER","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWHELR","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWIDWH","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STCRANE","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":5,"h":4.88,"l":40,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STRSELF","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":5,"h":4.88,"l":36,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"PICKRTT","trailers":[{"type":"OGOSFDT","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.3,"h":4.3,"l":23}]},{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"w":5,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"w":5,"h":4.4,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"w":5,"h":4.4,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"w":5,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSTEER","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWHELR","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWIDWH","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STCRANE","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":5,"h":4.88,"l":40,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STRSELF","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"w":5,"h":4.88,"l":36,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"STINGER","trailers":[{"type":"SEMITRL","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":1.2,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSTNGR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1.2,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"REGTRCK","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":5,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":5,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":5,"h":4.88,"l":16,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":5,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]}]}]}},{"id":"AUTOCRR","name":"Auto Carrier, Campers And Boats (Stinger Steered Transporters Only)","size":{"powerUnits":[{"type":"STINGER","trailers":[{"type":"STSTNGR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1.2,"h":4.4,"l":25,"regions":[{"region":"LMN","h":4.3},{"region":"KTN","h":4.3},{"region":"PCE","h":4.88}]}]}]}]}},{"id":"HAYRNPR","name":"Hay Bales (Round) Peace River Only","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":3.5,"h":4.3,"l":26,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":3.5,"h":4.3,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.5,"h":4.3,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.5,"h":4.3,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]}]},{"type":"REGTRCK","trailers":[{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":4,"w":3.5,"h":4.3,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"w":3.5,"h":4.3,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":4,"w":3.5,"h":4.3,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]}]}]}},{"id":"BRSHCUT","name":"Brushcutters (Peace Only)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"SEMITRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"regions":[{"region":"PCE","w":4.57,"h":5.33}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"regions":[{"region":"PCE","w":4.57,"h":5.33}]}]}]},{"type":"REGTRCK","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"regions":[{"region":"PCE","w":4.57,"h":5.33}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"regions":[{"region":"PCE","w":3.8,"h":5.33}]}]}]}]}},{"id":"FIXEDEQ","name":"Fixed Equipment","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"FECVYER","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":4,"rp":9.5,"w":3.8,"h":4.72,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEDRMMX","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.72,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEBGHSE","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":4.26,"h":4.72,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FESEMTR","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.72,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEWHELR","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.72,"l":31,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"REGTRCK","trailers":[{"type":"FECVYPT","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":4,"rp":9.5,"w":3.2,"h":4.3,"l":31}]},{"type":"FEDRMMX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.72,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEPNYTR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"rp":4,"w":3.2,"h":4.3,"l":31}]},{"type":"FEBGHSE","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":4.26,"h":4.72,"l":31}]}]}]}}],"globalSizeDefaults":{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":31}}') -GO \ No newline at end of file +GO + +INSERT [dbo].[ORBC_POLICY_CONFIGURATION] ( + EFFECTIVE_DATE, + IS_DRAFT, + CHANGE_DESCRIPTION, + ORIGIN_ID, + POLICY_JSON) +VALUES ( + CAST('2024-12-01T00:00:00' AS DATETIME), + 'N', + N'Initial master policy configuration', + NULL, + N'{"minPEVersion":"1.0.0","geographicRegions":[{"id":"LMN","name":"Lower Mainland"},{"id":"KTN","name":"Kootenay"},{"id":"PCE","name":"Peace"}],"rangeMatrices":[{"id":"annualFeeCV","name":"Annual licensing fee for commercial vehicle","matrix":[{"min":0,"max":500,"value":42},{"min":501,"max":1000,"value":49},{"min":1001,"max":1500,"value":60},{"min":1501,"max":2000,"value":74},{"min":2001,"max":2500,"value":85},{"min":2501,"max":3000,"value":97},{"min":3001,"max":3500,"value":108},{"min":3501,"max":4000,"value":127},{"min":4001,"max":4500,"value":147},{"min":4501,"max":5000,"value":173},{"min":5001,"max":5500,"value":193},{"min":5501,"max":6000,"value":213},{"min":6001,"max":6500,"value":230},{"min":6501,"max":7000,"value":250},{"min":7001,"max":7500,"value":266},{"min":7501,"max":8000,"value":292},{"min":8001,"max":8500,"value":320},{"min":8501,"max":9000,"value":347},{"min":9001,"max":9500,"value":376},{"min":9501,"max":10000,"value":395},{"min":10001,"max":10500,"value":416},{"min":10501,"max":11000,"value":437},{"min":11001,"max":11500,"value":450},{"min":11501,"max":12000,"value":469},{"min":12001,"max":12500,"value":493},{"min":12501,"max":13000,"value":507},{"min":13001,"max":13500,"value":532},{"min":13501,"max":14000,"value":559},{"min":14001,"max":14500,"value":586},{"min":14501,"max":15000,"value":613},{"min":15001,"max":15500,"value":645},{"min":15501,"max":16000,"value":687},{"min":16001,"max":16500,"value":729},{"min":16501,"max":17000,"value":769},{"min":17001,"max":17500,"value":814},{"min":17501,"max":18000,"value":846},{"min":18001,"max":18500,"value":870},{"min":18501,"max":19000,"value":899},{"min":19001,"max":19500,"value":927},{"min":19501,"max":20000,"value":954},{"min":20001,"max":20500,"value":987},{"min":20501,"max":21000,"value":1014},{"min":21001,"max":21500,"value":1041},{"min":21501,"max":22000,"value":1068},{"min":22001,"max":22500,"value":1095},{"min":22501,"max":23000,"value":1123},{"min":23001,"max":23500,"value":1152},{"min":23501,"max":24000,"value":1182},{"min":24001,"max":24500,"value":1212},{"min":24501,"max":25000,"value":1252},{"min":25001,"max":25500,"value":1298},{"min":25501,"max":26000,"value":1340},{"min":26001,"max":26500,"value":1381},{"min":26501,"max":27000,"value":1410},{"min":27001,"max":27500,"value":1439},{"min":27501,"max":28000,"value":1465},{"min":28001,"max":28500,"value":1495},{"min":28501,"max":29000,"value":1521},{"min":29001,"max":29500,"value":1550},{"min":29501,"max":30000,"value":1581},{"min":30001,"max":31000,"value":1608},{"min":31001,"max":32000,"value":1661},{"min":32001,"max":33000,"value":1714},{"min":33001,"max":34000,"value":1769},{"min":34001,"max":35000,"value":1824},{"min":35001,"max":36000,"value":1910},{"min":36001,"max":37000,"value":2039},{"min":37001,"max":38000,"value":2110},{"min":38001,"max":39000,"value":2182},{"min":39001,"max":40000,"value":2252},{"min":40001,"max":41000,"value":2324},{"min":41001,"max":42000,"value":2398},{"min":42001,"max":43000,"value":2471},{"min":43001,"max":44000,"value":2540},{"min":44001,"max":45000,"value":2612},{"min":45001,"max":46000,"value":2718},{"min":46001,"max":47000,"value":2828},{"min":47001,"max":48000,"value":2901},{"min":48001,"max":49000,"value":2971},{"min":49001,"max":50000,"value":3044},{"min":50001,"max":51000,"value":3093},{"min":51001,"max":52000,"value":3160},{"min":52001,"max":53000,"value":3226},{"min":53001,"max":54000,"value":3291},{"min":54001,"max":55000,"value":3357},{"min":55001,"max":56000,"value":3423},{"min":56001,"max":57000,"value":3488},{"min":57001,"max":58000,"value":3553},{"min":58001,"max":59000,"value":3619},{"min":59001,"max":60000,"value":3685},{"min":60001,"max":61000,"value":3749},{"min":61001,"max":62000,"value":3815},{"min":62001,"max":63000,"value":3880},{"min":63001,"max":63500,"value":3946}]},{"id":"annualFeePassenger","name":"Annual licensing fee for commercial passenger vehicle","matrix":[{"min":0,"max":500,"value":40},{"min":501,"max":1000,"value":47},{"min":1001,"max":1500,"value":57},{"min":1501,"max":2000,"value":70},{"min":2001,"max":2500,"value":81},{"min":2501,"max":3000,"value":92},{"min":3001,"max":3500,"value":103},{"min":3501,"max":4000,"value":121},{"min":4001,"max":4500,"value":140},{"min":4501,"max":5000,"value":165},{"min":5001,"max":5500,"value":184},{"min":5501,"max":6000,"value":203},{"min":6001,"max":6500,"value":219},{"min":6501,"max":7000,"value":238},{"min":7001,"max":7500,"value":253},{"min":7501,"max":8000,"value":278},{"min":8001,"max":8500,"value":305},{"min":8501,"max":9000,"value":330},{"min":9001,"max":9500,"value":358},{"min":9501,"max":10000,"value":376},{"min":10001,"max":10500,"value":396},{"min":10501,"max":11000,"value":416},{"min":11001,"max":11500,"value":429},{"min":11501,"max":12000,"value":447},{"min":12001,"max":12500,"value":465},{"min":12501,"max":13000,"value":478},{"min":13001,"max":13500,"value":501},{"min":13501,"max":14000,"value":527},{"min":14001,"max":14500,"value":552},{"min":14501,"max":15000,"value":578},{"min":15001,"max":15500,"value":608},{"min":15501,"max":16000,"value":648},{"min":16001,"max":16500,"value":687},{"min":16501,"max":17000,"value":725},{"min":17001,"max":17500,"value":768},{"min":17501,"max":18000,"value":797},{"min":18001,"max":18500,"value":820},{"min":18501,"max":19000,"value":848},{"min":19001,"max":19500,"value":873},{"min":19501,"max":20000,"value":899},{"min":20001,"max":20500,"value":930},{"min":20501,"max":21000,"value":955},{"min":21001,"max":21500,"value":981},{"min":21501,"max":22000,"value":1007},{"min":22001,"max":22500,"value":1032},{"min":22501,"max":23000,"value":1058},{"min":23001,"max":23500,"value":1086},{"min":23501,"max":24000,"value":1114},{"min":24001,"max":24500,"value":1142},{"min":24501,"max":25000,"value":1180},{"min":25001,"max":25500,"value":1224},{"min":25501,"max":26000,"value":1263},{"min":26001,"max":26500,"value":1302},{"min":26501,"max":27000,"value":1329},{"min":27001,"max":27500,"value":1356},{"min":27501,"max":28000,"value":1381},{"min":28001,"max":28500,"value":1409},{"min":28501,"max":29000,"value":1433},{"min":29001,"max":29500,"value":1461},{"min":29501,"max":30000,"value":1490},{"min":30001,"max":31000,"value":1516},{"min":31001,"max":32000,"value":1569},{"min":32001,"max":33000,"value":1621},{"min":33001,"max":34000,"value":1676},{"min":34001,"max":35000,"value":1730},{"min":35001,"max":36000,"value":1815},{"min":36001,"max":37000,"value":1943},{"min":37001,"max":38000,"value":2013},{"min":38001,"max":39000,"value":2084},{"min":39001,"max":40000,"value":2154},{"min":40001,"max":41000,"value":2225},{"min":41001,"max":42000,"value":2298},{"min":42001,"max":43000,"value":2370},{"min":43001,"max":44000,"value":2439},{"min":44001,"max":45000,"value":2510},{"min":45001,"max":46000,"value":2615},{"min":46001,"max":47000,"value":2724},{"min":47001,"max":48000,"value":2796},{"min":48001,"max":49000,"value":2865},{"min":49001,"max":50000,"value":2937},{"min":50001,"max":51000,"value":2986},{"min":51001,"max":52000,"value":3052},{"min":52001,"max":53000,"value":3117},{"min":53001,"max":54000,"value":3182},{"min":54001,"max":55000,"value":3247},{"min":55001,"max":56000,"value":3312},{"min":56001,"max":57000,"value":3377},{"min":57001,"max":58000,"value":3441},{"min":58001,"max":59000,"value":3506},{"min":59001,"max":60000,"value":3572},{"min":60001,"max":61000,"value":3635},{"min":61001,"max":62000,"value":3700},{"min":62001,"max":63000,"value":3765},{"min":63001,"max":63500,"value":3830}]},{"id":"annualFeeIndustrial","name":"Annual licensing fee for an industrial machine","matrix":[{"min":0,"max":2000,"value":45},{"min":2001,"max":5000,"value":69},{"min":5001,"max":7000,"value":110},{"min":7001,"max":9000,"value":164},{"min":9001,"max":11000,"value":216},{"min":11001,"value":260}]},{"id":"annualFeeFarm","name":"Annual licensing fee for farm vehicle","matrix":[{"min":0,"max":500,"value":30},{"min":501,"max":1000,"value":40},{"min":1001,"max":1500,"value":47},{"min":1501,"max":2000,"value":55},{"min":2001,"max":2500,"value":77},{"min":2501,"max":3000,"value":101},{"min":3001,"max":3500,"value":142},{"min":3501,"max":4000,"value":181},{"min":4001,"max":4500,"value":207},{"min":4501,"max":5000,"value":243},{"min":5001,"max":5500,"value":278},{"min":5501,"max":6000,"value":322},{"min":6001,"max":6500,"value":355},{"min":6501,"max":7000,"value":396},{"min":7001,"max":7500,"value":427},{"min":7501,"max":8000,"value":473},{"min":8001,"max":8500,"value":524},{"min":8501,"max":9000,"value":558},{"min":9001,"max":9500,"value":596},{"min":9501,"max":10000,"value":633},{"min":10001,"max":10500,"value":669},{"min":10501,"max":11000,"value":711},{"min":11001,"max":11500,"value":744},{"min":11501,"max":12000,"value":784},{"min":12001,"max":12500,"value":824},{"min":12501,"max":13000,"value":863},{"min":13001,"max":13500,"value":883},{"min":13501,"max":14000,"value":899},{"min":14001,"max":14500,"value":919},{"min":14501,"max":15000,"value":940},{"min":15001,"max":15500,"value":960},{"min":15501,"max":16000,"value":979},{"min":16001,"max":16500,"value":997},{"min":16501,"max":17000,"value":1017},{"min":17001,"max":17500,"value":1036},{"min":17501,"max":18000,"value":1056},{"min":18001,"max":18500,"value":1076},{"min":18501,"max":19000,"value":1096},{"min":19001,"max":19500,"value":1114},{"min":19501,"max":20000,"value":1134},{"min":20001,"max":20500,"value":1154},{"min":20501,"max":21000,"value":1174},{"min":21001,"max":21500,"value":1192},{"min":21501,"max":22000,"value":1211},{"min":22001,"max":22500,"value":1231},{"min":22501,"max":23000,"value":1251},{"min":23001,"max":23500,"value":1270},{"min":23501,"max":24000,"value":1289},{"min":24001,"max":24400,"value":1309}]}],"bridgeCalculationConstants":{"minWeight":18000,"multiplier":30},"commonRules":[{"conditions":{"not":{"fact":"permitData","path":"companyName","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Company is required","code":"field-validation-error","fieldReference":"permitData.companyName"}}},{"conditions":{"not":{"fact":"permitData","path":"contactDetails.firstName","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Contact first name is required","code":"field-validation-error","fieldReference":"permitData.contactDetails.firstName"}}},{"conditions":{"not":{"fact":"permitData","path":"contactDetails.lastName","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Contact last name is required","code":"field-validation-error","fieldReference":"permitData.contactDetails.lastName"}}},{"conditions":{"not":{"fact":"permitData","path":"contactDetails.phone1","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Contact phone number is required","code":"field-validation-error","fieldReference":"permitData.contactDetails.phone1"}}},{"conditions":{"not":{"fact":"permitData","path":"contactDetails.email","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Company contact email is required","code":"field-validation-error","fieldReference":"permitData.contactDetails.email"}}},{"conditions":{"any":[{"fact":"permitData","path":"$.startDate","operator":"dateLessThan","value":{"fact":"validationDate"}}]},"event":{"type":"violation","params":{"message":"Permit start date cannot be in the past","code":"field-validation-error","fieldReference":"permitData.startDate"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.vin","operator":"regex","value":"^[a-zA-Z0-9]{6}$"}},"event":{"type":"violation","params":{"message":"Vehicle Identification Number (vin) must be 6 alphanumeric characters","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.vin"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.plate","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Vehicle plate is required","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.plate"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.make","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Vehicle make is required","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.make"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.year","operator":"greaterThan","value":1900}},"event":{"type":"violation","params":{"message":"Vehicle year is required","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.year"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.countryCode","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Vehicle country of registration is required","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.countryCode"}}}],"permitTypes":[{"id":"TROS","name":"Term Oversize","routingRequired":false,"weightDimensionRequired":false,"sizeDimensionRequired":false,"commodityRequired":false,"allowedVehicles":["BOOSTER","DOLLIES","EXPANDO","FEBGHSE","FECVYER","FEDRMMX","FEPNYTR","FESEMTR","FEWHELR","FLOATTR","FULLLTL","HIBOEXP","HIBOFLT","JEEPSRG","LOGDGLG","LOGFULL","LOGNTAC","LOGOWBK","LOGSMEM","LOGTNDM","LOGTRIX","ODTRLEX","OGOSFDT","PLATFRM","POLETRL","PONYTRL","REDIMIX","SEMITRL","STBTRAN","STCHIPS","STCRANE","STINGAT","STLOGNG","STNTSHC","STREEFR","STSDBDK","STSTNGR","STWHELR","STWIDWH","BUSTRLR","CONCRET","DDCKBUS","GRADERS","LOGGING","LOGOFFH","LWBTRCT","OGBEDTK","OGOILSW","PICKRTT","PLOWBLD","REGTRCK","STINGER","TOWVEHC","TRKTRAC"],"rules":[{"conditions":{"all":[{"not":{"fact":"permitData","path":"permitDuration","operator":"in","value":[30,60,90,120,150,180,210,240,270,300,330]}},{"not":{"fact":"permitData","path":"permitDuration","operator":"equal","value":{"fact":"daysInPermitYear"}}}]},"event":{"type":"violation","params":{"message":"Duration must be in 30 day increments or a full year","code":"field-validation-error","fieldReference":"permitData.permitDuration"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.vehicleSubType","operator":"in","value":{"fact":"allowedVehicles"}}},"event":{"type":"violation","params":{"message":"Vehicle type not permittable for this permit type","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.vehicleSubType"}}}],"costRules":[{"fact":"costPerMonth","params":{"cost":30}}]},{"id":"TROW","name":"Term Overweight","routingRequired":false,"weightDimensionRequired":false,"sizeDimensionRequired":false,"commodityRequired":false,"allowedVehicles":["DOLLIES","FEBGHSE","FECVYER","FEDRMMX","FEPNYTR","FESEMTR","FEWHELR","REDIMIX","CONCRET","CRAFTAT","CRAFTMB","GRADERS","MUNFITR","OGOILSW","OGSERVC","OGSRRAH","PICKRTT","TOWVEHC"],"rules":[{"conditions":{"all":[{"not":{"fact":"permitData","path":"permitDuration","operator":"in","value":[30,60,90,120,150,180,210,240,270,300,330]}},{"not":{"fact":"permitData","path":"permitDuration","operator":"equal","value":{"fact":"daysInPermitYear"}}}]},"event":{"type":"violation","params":{"message":"Duration must be in 30 day increments or a full year","code":"field-validation-error","fieldReference":"permitData.permitDuration"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.vehicleSubType","operator":"in","value":{"fact":"allowedVehicles"}}},"event":{"type":"violation","params":{"message":"Vehicle type not permittable for this permit type","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.vehicleSubType"}}}],"costRules":[{"fact":"costPerMonth","params":{"cost":100}}]},{"id":"STOS","name":"Single Trip Oversize","routingRequired":true,"weightDimensionRequired":false,"sizeDimensionRequired":true,"commodityRequired":true,"rules":[{"conditions":{"any":[{"not":{"fact":"permitData","path":"permitDuration","operator":"lessThanInclusive","value":7}},{"not":{"fact":"permitData","path":"permitDuration","operator":"greaterThan","value":0}}]},"event":{"type":"violation","params":{"message":"Duration must be 7 days or less","code":"field-validation-error","fieldReference":"permitData.permitDuration"}}},{"conditions":{"not":{"fact":"configurationIsValid","operator":"equal","value":true}},"event":{"type":"violation","params":{"message":"Vehicle configuration is not permittable for this commodity","code":"field-validation-error","fieldReference":"permitData.vehicleConfiguration.trailers"}}},{"conditions":{"not":{"fact":"permitData","path":"permittedCommodity.loadDescription","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Commodity load description is required","code":"field-validation-error","fieldReference":"permitData.permittedCommodity.loadDescription"}}}],"costRules":[{"fact":"fixedCost","params":{"cost":15}}]},{"id":"STFR","name":"Single Trip ICBC Basic Insurance (FR)","routingRequired":false,"weightDimensionRequired":false,"sizeDimensionRequired":false,"commodityRequired":false,"allowedVehicles":["BUSCRUM","BUSTRLR","CONCRET","CRAFTAT","CRAFTMB","DDCKBUS","FARMVEH","GRADERS","LCVRMDB","LCVTPDB","LOGGING","LOGOFFH","LWBTRCT","MUNFITR","OGBEDTK","OGOILSW","OGSERVC","OGSRRAH","PICKRTT","PLOWBLD","PUTAXIS","REGTRCK","SCRAPER","SPAUTHV","STINGER","TOWVEHC","TRKTRAC"],"rules":[{"conditions":{"any":[{"not":{"fact":"permitData","path":"permitDuration","operator":"lessThanInclusive","value":30}},{"not":{"fact":"permitData","path":"permitDuration","operator":"greaterThan","value":0}}]},"event":{"type":"violation","params":{"message":"Duration must be 30 days or less","code":"field-validation-error","fieldReference":"permitData.permitDuration"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.licensedGVW","operator":"greaterThan","value":0}},"event":{"type":"violation","params":{"message":"Licensed GVW must be greater than zero","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.licensedGVW"}}},{"conditions":{"all":[{"fact":"permitData","path":"vehicleDetails.licensedGVW","operator":"greaterThan","value":63500}]},"event":{"type":"violation","params":{"message":"Licensed GVW may not exceed 63,500 kg","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.licensedGVW"}}},{"conditions":{"all":[{"fact":"permitData","path":"vehicleDetails.countryCode","operator":"equal","value":"CA"},{"fact":"permitData","path":"vehicleDetails.provinceCode","operator":"equal","value":"BC"}]},"event":{"type":"violation","params":{"message":"BC plated vehicles do not require this permit","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.provinceCode"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.vehicleSubType","operator":"in","value":{"fact":"allowedVehicles"}}},"event":{"type":"violation","params":{"message":"Vehicle type not permittable for this permit type","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.vehicleSubType"}}},{"conditions":{"not":{"fact":"permitData","path":"thirdPartyLiability","operator":"in","value":["GENERAL_GOODS","DANGEROUS_GOODS"]}},"event":{"type":"violation","params":{"message":"Third party liability is invalid","code":"field-validation-error","fieldReference":"permitData.thirdPartyLiability"}}}],"costRules":[{"fact":"fixedCost","params":{"cost":84}},{"fact":"conditionalFixedCost","params":{"cost":5,"fact":"thirdPartyLiability","value":"DANGEROUS_GOODS"}}]},{"id":"QRFR","name":"Quarterly ICBC Basic Insurance (FR)","routingRequired":false,"weightDimensionRequired":false,"sizeDimensionRequired":false,"commodityRequired":false,"allowedVehicles":["BUSCRUM","BUSTRLR","CONCRET","CRAFTAT","CRAFTMB","DDCKBUS","FARMVEH","GRADERS","LCVRMDB","LCVTPDB","LOGGING","LOGOFFH","LWBTRCT","MUNFITR","OGBEDTK","OGOILSW","OGSERVC","OGSRRAH","PICKRTT","PLOWBLD","PUTAXIS","REGTRCK","SCRAPER","SPAUTHV","STINGER","TOWVEHC","TRKTRAC"],"rules":[{"conditions":{"not":{"fact":"permitData","path":"expiryDate","operator":"equal","value":{"fact":"endOfPermitQuarter"}}},"event":{"type":"violation","params":{"message":"Permit end date must be the end of the quarter in which the permit starts","code":"field-validation-error","fieldReference":"permitData.expiryDate"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.licensedGVW","operator":"greaterThan","value":0}},"event":{"type":"violation","params":{"message":"Licensed GVW must be greater than zero","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.licensedGVW"}}},{"conditions":{"all":[{"fact":"permitData","path":"vehicleDetails.licensedGVW","operator":"greaterThan","value":63500}]},"event":{"type":"violation","params":{"message":"Licensed GVW may not exceed 63,500 kg","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.licensedGVW"}}},{"conditions":{"all":[{"fact":"permitData","path":"vehicleDetails.countryCode","operator":"equal","value":"CA"},{"fact":"permitData","path":"vehicleDetails.provinceCode","operator":"equal","value":"BC"}]},"event":{"type":"violation","params":{"message":"BC plated vehicles do not require this permit","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.provinceCode"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.vehicleSubType","operator":"in","value":{"fact":"allowedVehicles"}}},"event":{"type":"violation","params":{"message":"Vehicle type not permittable for this permit type","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.vehicleSubType"}}},{"conditions":{"not":{"fact":"permitData","operator":"in","value":["GENERAL_GOODS","DANGEROUS_GOODS"],"path":"thirdPartyLiability"}},"event":{"type":"violation","params":{"message":"Third party liability is invalid","code":"field-validation-error","fieldReference":"permitData.thirdPartyLiability"}}}],"costRules":[{"fact":"fixedCost","params":{"cost":843}},{"fact":"conditionalFixedCost","params":{"cost":56,"fact":"thirdPartyLiability","value":"DANGEROUS_GOODS"}}]},{"id":"MFP","name":"Motive Fuel User Permit","routingRequired":true,"weightDimensionRequired":false,"sizeDimensionRequired":false,"commodityRequired":false,"allowedVehicles":["BUSCRUM","BUSTRLR","CONCRET","CRAFTAT","CRAFTMB","DDCKBUS","GRADERS","LCVRMDB","LCVTPDB","LOGGING","LOGOFFH","LWBTRCT","OGBEDTK","OGOILSW","OGSERVC","OGSRRAH","PICKRTT","PLOWBLD","REGTRCK","SCRAPER","SPAUTHV","STINGER","TOWVEHC","TRKTRAC"],"rules":[{"conditions":{"any":[{"not":{"fact":"permitData","path":"permitDuration","operator":"lessThanInclusive","value":7}},{"not":{"fact":"permitData","path":"permitDuration","operator":"greaterThan","value":0}}]},"event":{"type":"violation","params":{"message":"Duration must be 7 days or less","code":"field-validation-error","fieldReference":"permitData.permitDuration"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.licensedGVW","operator":"greaterThan","value":0}},"event":{"type":"violation","params":{"message":"Licensed GVW must be greater than zero","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.licensedGVW"}}},{"conditions":{"all":[{"fact":"permitData","path":"vehicleDetails.licensedGVW","operator":"greaterThan","value":63500}]},"event":{"type":"violation","params":{"message":"Licensed GVW may not exceed 63,500 kg","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.licensedGVW"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.vehicleSubType","operator":"in","value":{"fact":"allowedVehicles"}}},"event":{"type":"violation","params":{"message":"Vehicle type not permittable for this permit type","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.vehicleSubType"}}},{"conditions":{"not":{"fact":"permitData","path":"permittedRoute.manualRoute.origin","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Route origin is required","code":"field-validation-error","fieldReference":"permitData.permittedRoute.manualRoute.origin"}}},{"conditions":{"not":{"fact":"permitData","path":"permittedRoute.manualRoute.destination","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Route destination is required","code":"field-validation-error","fieldReference":"permitData.permittedRoute.manualRoute.origin"}}},{"conditions":{"not":{"fact":"permitData","path":"permittedRoute.manualRoute.totalDistance","operator":"greaterThan","value":0}},"event":{"type":"violation","params":{"message":"Trip distance must be greater than zero","code":"field-validation-error","fieldReference":"permitData.permittedRoute.manualRoute.totalDistance"}}}],"costRules":[{"fact":"costPerKilometre","params":{"cost":0.11,"minValue":20}}]},{"id":"NRSCV","name":"Non-Resident Single Trip","routingRequired":false,"weightDimensionRequired":false,"sizeDimensionRequired":false,"commodityRequired":false,"allowedVehicles":["BUSCRUM","BUSTRLR","CONCRET","CRAFTAT","CRAFTMB","DDCKBUS","FARMVEH","GRADERS","LCVRMDB","LCVTPDB","LOGGING","LOGOFFH","LWBTRCT","MUNFITR","OGBEDTK","OGOILSW","OGSERVC","OGSRRAH","PICKRTT","PLOWBLD","PUTAXIS","REGTRCK","SCRAPER","SPAUTHV","STINGER","TOWVEHC","TRKTRAC"],"rules":[{"conditions":{"any":[{"not":{"fact":"permitData","path":"permitDuration","operator":"lessThanInclusive","value":30}},{"not":{"fact":"permitData","path":"permitDuration","operator":"greaterThan","value":0}}]},"event":{"type":"violation","params":{"message":"Duration must be 30 days or less","code":"field-validation-error","fieldReference":"permitData.permitDuration"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleConfiguration.loadedGVW","operator":"greaterThan","value":0}},"event":{"type":"violation","params":{"message":"Loaded GVW must be greater than zero","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.licensedGVW"}}},{"conditions":{"any":[{"fact":"permitData","path":"vehicleConfiguration.loadedGVW","operator":"greaterThan","value":63500},{"all":[{"fact":"permitData","path":"vehicleConfiguration.loadedGVW","operator":"greaterThan","value":24400},{"fact":"permitData","path":"conditionalLicensingFee","operator":"equal","value":"farm"}]}]},"event":{"type":"violation","params":{"message":"Loaded GVW may not exceed 63,500 kg, or 24,400 for a farm vehicle","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.licensedGVW"}}},{"conditions":{"all":[{"fact":"permitData","path":"vehicleDetails.countryCode","operator":"equal","value":"CA"},{"fact":"permitData","path":"vehicleDetails.provinceCode","operator":"equal","value":"BC"}]},"event":{"type":"violation","params":{"message":"BC plated vehicles do not require this permit","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.provinceCode"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.vehicleSubType","operator":"in","value":{"fact":"allowedVehicles"}}},"event":{"type":"violation","params":{"message":"Vehicle type not permittable for this permit type","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.vehicleSubType"}}},{"conditions":{"not":{"fact":"permitData","path":"conditionalLicensingFee","operator":"in","value":["none","conditional","x-plated","farm"]}},"event":{"type":"violation","params":{"message":"Conditional licensing selection is invalid","code":"field-validation-error","fieldReference":"permitData.conditionalLicensingFee"}}}],"costRules":[{"fact":"conditionalFixedCost","params":{"cost":1,"fact":"conditionalLicensingFee","value":"conditional"}},{"fact":"rangeMatrixCostLookup","params":{"divisor":12,"matrixMap":[{"key":"none","value":"annualFeeCV"},{"key":"x-plated","value":"annualFeeIndustrial"},{"key":"farm","value":"annualFeeFarm"}],"rangeLookupKey":"conditionalLicensingFee","matrixFactValue":"vehicleConfiguration.loadedGVW"}}]},{"id":"NRQCV","name":"Non-Resident Quarterly","routingRequired":false,"weightDimensionRequired":false,"sizeDimensionRequired":false,"commodityRequired":false,"allowedVehicles":["BUSCRUM","BUSTRLR","CONCRET","CRAFTAT","CRAFTMB","DDCKBUS","FARMVEH","GRADERS","LCVRMDB","LCVTPDB","LOGGING","LOGOFFH","LWBTRCT","MUNFITR","OGBEDTK","OGOILSW","OGSERVC","OGSRRAH","PICKRTT","PLOWBLD","PUTAXIS","REGTRCK","SCRAPER","SPAUTHV","STINGER","TOWVEHC","TRKTRAC"],"rules":[{"conditions":{"not":{"fact":"permitData","path":"expiryDate","operator":"equal","value":{"fact":"endOfPermitQuarter"}}},"event":{"type":"violation","params":{"message":"Permit end date must be the end of the quarter in which the permit starts","code":"field-validation-error","fieldReference":"permitData.expiryDate"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleConfiguration.loadedGVW","operator":"greaterThan","value":0}},"event":{"type":"violation","params":{"message":"Loaded GVW must be greater than zero","code":"field-validation-error","fieldReference":"permitData.vehicleConfiguration.loadedGVW"}}},{"conditions":{"any":[{"fact":"permitData","path":"vehicleConfiguration.loadedGVW","operator":"greaterThan","value":63500},{"all":[{"fact":"permitData","path":"vehicleConfiguration.loadedGVW","operator":"greaterThan","value":24400},{"fact":"permitData","path":"conditionalLicensingFee","operator":"equal","value":"farm"}]}]},"event":{"type":"violation","params":{"message":"Loaded GVW may not exceed 63,500 kg, or 24,400 for a farm vehicle","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.licensedGVW"}}},{"conditions":{"all":[{"fact":"permitData","path":"vehicleDetails.countryCode","operator":"equal","value":"CA"},{"fact":"permitData","path":"vehicleDetails.provinceCode","operator":"equal","value":"BC"}]},"event":{"type":"violation","params":{"message":"BC plated vehicles do not require this permit","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.provinceCode"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.vehicleSubType","operator":"in","value":{"fact":"allowedVehicles"}}},"event":{"type":"violation","params":{"message":"Vehicle type not permittable for this permit type","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.vehicleSubType"}}},{"conditions":{"not":{"fact":"permitData","path":"conditionalLicensingFee","operator":"in","value":["none","conditional","x-plated","farm"]}},"event":{"type":"violation","params":{"message":"Conditional licensing fee is invalid","code":"field-validation-error","fieldReference":"permitData.conditionalLicensingFee"}}}],"costRules":[{"fact":"conditionalFixedCost","params":{"cost":3,"fact":"conditionalLicensingFee","value":"conditional"}},{"fact":"rangeMatrixCostLookup","params":{"divisor":4,"matrixMap":[{"key":"none","value":"annualFeeCV"},{"key":"x-plated","value":"annualFeeIndustrial"},{"key":"farm","value":"annualFeeFarm"}],"rangeLookupKey":"conditionalLicensingFee","matrixFactValue":"vehicleConfiguration.loadedGVW"}}]}],"globalWeightDefaults":{"powerUnits":[],"trailers":[]},"vehicleCategories":{"trailerCategories":[{"id":"trailer","name":"Default trailer category"},{"id":"accessory","name":"Accessory trailer such as jeep or booster, to be used alongside other trailers. Not permittable on its own as a trailer in a combination."},{"id":"pseudo","name":"Placeholder for a trailer in a combination with no trailer (such as when a brushcutter is permitted with no trailer)."}],"powerUnitCategories":[{"id":"powerunit","name":"Default power unit category"}]},"vehicleTypes":{"powerUnitTypes":[{"id":"BUSCRUM","name":"Buses/Crummies","category":"powerunit"},{"id":"BUSTRLR","name":"Inter-City Bus (Pulling Pony Trailer)","category":"powerunit"},{"id":"CONCRET","name":"Concrete Pumper Trucks","category":"powerunit"},{"id":"CRAFTAT","name":"Cranes, Rubber-Tired Loaders, Firetrucks - All Terrain","category":"powerunit"},{"id":"CRAFTMB","name":"Cranes, Rubber-Tired Loaders, Firetrucks - Mobile","category":"powerunit"},{"id":"DDCKBUS","name":"Double Decker Buses","category":"powerunit"},{"id":"FARMVEH","name":"Farm Vehicles","category":"powerunit"},{"id":"GRADERS","name":"Fixed Equipment - Trucks/Graders etc.","category":"powerunit"},{"id":"LCVRMDB","name":"Long Combination Vehicles (LCV) - Rocky Mountain Doubles","category":"powerunit"},{"id":"LCVTPDB","name":"Long Combination Vehicles (LCV) - Turnpike Doubles","category":"powerunit"},{"id":"LOGGING","name":"Logging Trucks","category":"powerunit"},{"id":"LOGOFFH","name":"Logging Trucks - Off-Highway","category":"powerunit"},{"id":"LWBTRCT","name":"Long Wheelbase Truck Tractors Exceeding 6.2 m up to 7.25 m","category":"powerunit"},{"id":"MUNFITR","name":"Municipal Fire Trucks","category":"powerunit"},{"id":"OGBEDTK","name":"Oil and Gas - Bed Trucks","category":"powerunit"},{"id":"OGOILSW","name":"Oil and Gas - Oilfield Sows","category":"powerunit"},{"id":"OGSERVC","name":"Oil and Gas - Service Rigs","category":"powerunit"},{"id":"OGSRRAH","name":"Oil and Gas - Service Rigs and Rathole Augers Only Equipped with Heavy Front Projected Crane (must exceed 14,000 kg tare weight)","category":"powerunit"},{"id":"PICKRTT","name":"Picker Truck Tractors","category":"powerunit"},{"id":"PLOWBLD","name":"Trucks Equipped with Front or Underbody Plow Blades","category":"powerunit"},{"id":"PUTAXIS","name":"Taxis","category":"powerunit"},{"id":"REGTRCK","name":"Trucks","category":"powerunit"},{"id":"SCRAPER","name":"Scrapers","category":"powerunit"},{"id":"SPAUTHV","name":"Specially Authorized Vehicles","category":"powerunit"},{"id":"STINGER","name":"Truck Tractors - Stinger Steered","category":"powerunit"},{"id":"TOWVEHC","name":"Tow Vehicles","category":"powerunit"},{"id":"TRKTRAC","name":"Truck Tractors","category":"powerunit"}],"trailerTypes":[{"id":"BOOSTER","name":"Boosters","category":"accessory"},{"id":"DBTRBTR","name":"Tandem/Tridem Drive B-Train (Super B-Train)","category":"trailer"},{"id":"DOLLIES","name":"Dollies","category":"trailer"},{"id":"EXPANDO","name":"Expando Semi-Trailers","category":"trailer"},{"id":"FEBGHSE","name":"Fixed Equipment - Portable Asphalt Baghouses","category":"trailer"},{"id":"FECVYER","name":"Fixed Equipment - Conveyors (Semi-Trailers)","category":"trailer"},{"id":"FECVYPT","name":"Fixed Equipment - Conveyors (Pony Trailers)","category":"trailer"},{"id":"FEDRMMX","name":"Fixed Equipment - Counter Flow Asphalt Drum Mixers","category":"trailer"},{"id":"FEPNYTR","name":"Fixed Equipment - Pony Trailers","category":"trailer"},{"id":"FESEMTR","name":"Fixed Equipment - Semi-Trailers","category":"trailer"},{"id":"FEWHELR","name":"Fixed Equipment - Wheeler Semi-Trailers","category":"wheeler"},{"id":"FLOATTR","name":"Float Trailers","category":"wheeler"},{"id":"FULLLTL","name":"Full Trailers","category":"trailer"},{"id":"HIBOEXP","name":"Semi-Trailers - Hiboys/Expandos","category":"trailer"},{"id":"HIBOFLT","name":"Semi-Trailers - Hiboys/Flat Decks","category":"trailer"},{"id":"JEEPSRG","name":"Jeeps","category":"accessory"},{"id":"LOGDGLG","name":"Legacy Logging Trailer Combinations - Tandem Pole Trailers, Dogloggers","category":"trailer"},{"id":"LOGLGCY","name":"Legacy Logging Trailer Combinations","category":"trailer"},{"id":"LOGFULL","name":"Logging Trailer - Full Trailers, Tri Axle, Quad Axle","category":"trailer"},{"id":"LOGNTAC","name":"Legacy Logging Trailer Combinations - Non-TAC B-Trains","category":"trailer"},{"id":"LOGOWBK","name":"Logging Trailer - Overwidth Bunks","category":"trailer"},{"id":"LOGSMEM","name":"Logging Semi-Trailer - Empty, 3.2 m Bunks","category":"trailer"},{"id":"LOGTNDM","name":"Legacy Logging Trailer Combinations - Single Axle Jeeps, Tandem Axle Pole Trailers, Dogloggers","category":"trailer"},{"id":"LOGTRIX","name":"Legacy Logging Trailer Combinations - Single Axle Jeeps, Tri Axle Trailers","category":"trailer"},{"id":"MHMBSHG","name":"Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW) with Attached Axles","category":"trailer"},{"id":"MHMBSHL","name":"Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW) with Attached Axles","category":"trailer"},{"id":"ODTRLEX","name":"Overdimensional Trailers and Semi-Trailers (For Export)","category":"trailer"},{"id":"OGOSFDT","name":"Oil and Gas - Oversize Oilfield Flat Deck Semi-Trailers","category":"trailer"},{"id":"PLATFRM","name":"Platform Trailers","category":"trailer"},{"id":"PMHWAAX","name":"Park Model Homes with Attached Axles","category":"trailer"},{"id":"POLETRL","name":"Pole Trailers","category":"trailer"},{"id":"PONYTRL","name":"Pony Trailers","category":"trailer"},{"id":"REDIMIX","name":"Ready Mix Concrete Pump Semi-Trailers","category":"trailer"},{"id":"SEMITRL","name":"Semi-Trailers","category":"trailer"},{"id":"STACTRN","name":"Semi-Trailers - A-Trains and C-Trains","category":"trailer"},{"id":"STBTRAN","name":"Semi-Trailers - B-Trains","category":"trailer"},{"id":"STCHIPS","name":"Semi-Trailers - Walled B-Trains (Chip Trucks)","category":"trailer"},{"id":"STCRANE","name":"Semi-Trailers with Crane","category":"trailer"},{"id":"STINGAT","name":"Stinger Steered Automobile Transporters","category":"trailer"},{"id":"STLOGNG","name":"Semi-Trailers - Logging","category":"trailer"},{"id":"STNTSHC","name":"Semi-Trailers - Non-Tac Short Chassis","category":"trailer"},{"id":"STREEFR","name":"Semi-Trailers - Insulated Vans with Reefer/Refrigeration Units","category":"trailer"},{"id":"STROPRT","name":"Steering Trailers - Manned","category":"trailer"},{"id":"STRSELF","name":"Steering Trailers - Self/Remote","category":"trailer"},{"id":"STSDBDK","name":"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.","category":"trailer"},{"id":"STSTEER","name":"Semi-Trailers - Steering Trailers","category":"trailer"},{"id":"STSTNGR","name":"Semi-Trailers - Stinger Steered Automobile Transporters","category":"trailer"},{"id":"STWDTAN","name":"Semi-Trailers - Spread Tandems","category":"trailer"},{"id":"STWHELR","name":"Semi-Trailers - Wheelers","category":"trailer"},{"id":"STWIDWH","name":"Semi-Trailers - Wide Wheelers","category":"trailer"},{"id":"NONEXXX","name":"None","category":"pseudo"}]},"commodities":[{"id":"NONEXXX","name":"None","size":{"powerUnits":[{"type":"CONCRET","trailers":[{"type":"NONEXXX","jeep":false,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":15.5}]}]},{"type":"CRAFTAT","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":3.8,"h":4.3,"l":25}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":3.8,"h":4.3,"l":14,"regions":[{"region":"PCE","l":15}]}]}]},{"type":"CRAFTMB","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":3.8,"h":4.3,"l":25}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":3.8,"h":4.3,"l":14,"regions":[{"region":"PCE","l":15}]}]}]},{"type":"DDCKBUS","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.42,"l":12.5,"regions":[{"region":"LMN","h":4.3},{"region":"KTN","h":4.3},{"region":"PCE","h":4.3}]}]}]},{"type":"GRADERS","trailers":[{"type":"FEPNYTR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.2,"h":4.3,"l":31}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":1,"w":3.5,"h":4.4,"l":12.5,"regions":[{"region":"LMN","h":4.3},{"region":"KTN","h":4.3},{"region":"PCE","h":5.33}]}]}]},{"type":"BUSTRLR","trailers":[{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.15,"l":20}]}]},{"type":"LOGOFFH","trailers":[{"type":"STLOGNG","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":4.4,"h":4.15,"l":23}]}]},{"type":"LCVRMDB","trailers":[{"type":"SEMITRL","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.15,"l":32,"regions":[{"region":"PCE","l":31}]}]}]},{"type":"LCVTPDB","trailers":[{"type":"SEMITRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.15,"l":41}]}]},{"type":"LWBTRCT","trailers":[{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.15,"l":23}]}]},{"type":"PICKRTT","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":1,"w":2.6,"h":4.15,"l":16}]},{"type":"STCRANE","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":25}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":40,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STRSELF","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":36,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"SCRAPER","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.15,"l":12.5}]}]},{"type":"TRKTRAC","trailers":[{"type":"FECVYER","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":4,"rp":9.5,"w":3.8,"h":4.72,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEDRMMX","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.72,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEBGHSE","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":4.26,"h":4.72,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FESEMTR","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.72,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEWHELR","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"ODTRLEX","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":1,"w":3.65,"h":4.15,"l":23}]},{"type":"REDIMIX","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":23}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.3,"l":31,"regions":[{"region":"LMN","l":23},{"region":"KTN","l":23},{"region":"PCE","h":5.33}]}]},{"type":"STREEFR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.3,"l":23}]},{"type":"STNTSHC","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":5,"rp":2.25,"w":2.6,"h":4.15,"l":20}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","l":32}]}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.15,"l":40}]},{"type":"STRSELF","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.15,"l":36}]}]},{"type":"REGTRCK","trailers":[{"type":"FECVYPT","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":4,"rp":9.5,"w":3.2,"h":4.3,"l":31}]},{"type":"FEPNYTR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.2,"h":4.3,"l":31}]},{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":3.8,"h":4.3,"l":23,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"MHMBSHL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.9,"w":5,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]},{"type":"MHMBSHG","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.9,"w":6,"h":4.88,"l":31.5,"regions":[{"region":"PCE","w":6.1,"h":5.33,"l":36}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":3.2,"h":4.3,"l":16,"regions":[{"region":"PCE","h":4.4}]}]},{"type":"ODTRLEX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.65,"h":4.15,"l":23}]},{"type":"PMHWAAX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.9,"w":4.4,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":3.2,"h":4.3,"l":23,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"PLOWBLD","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.2,"h":4.15,"l":12.5}]}]}]}},{"id":"DOGLOGG","name":"Doglogger/Sjostrum Trailers (decked)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":5,"w":2.6,"h":4.15,"l":13.5}]}]}]}},{"id":"GRTBBUK","name":"Grader, Tractor Blades, Buckets","size":{"powerUnits":[{"type":"GRADERS","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":0,"rp":0,"w":4.4,"h":4.15,"l":12.5}]}]}]}},{"id":"HAYRACK","name":"Hayrack Semi-Trailer with a Folded Chassis/Empty Piggyback","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STLOGNG","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":5,"w":2.6,"h":4.15,"l":23}]}]}]}},{"id":"IMCONTN","name":"Intermodal Containers","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.4,"l":26}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.4,"l":27.5}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.4,"l":23}]}]},{"type":"REGTRCK","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.4,"l":12.5}]}]}]}},{"id":"IMCONWS","name":"Intermodal Containers without Sides","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":4.4,"h":4.72,"l":23}]}]}]}},{"id":"LPBOOMS","name":"Logs, Poles And Boomsticks (Up To 20.1)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.9,"h":4.15,"l":27.5}]},{"type":"LOGLGCY","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":5,"w":2.6,"h":4.15,"l":25}]},{"type":"POLETRL","jeep":true,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.9,"h":4.15,"l":27.5}]},{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.9,"h":4.15,"l":26}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.9,"h":4.15,"l":27.5}]},{"type":"HIBOFLT","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.9,"h":4.15,"l":25}]},{"type":"STLOGNG","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.9,"h":4.15,"l":25}]}]}]}},{"id":"LPBOOML","name":"Logs, Poles And Boomsticks (Over 20.1)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"LOGFULL","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":10,"rp":10,"w":2.6,"h":4.15,"l":40}]},{"type":"POLETRL","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":8,"rp":9,"w":2.6,"h":4.15,"l":40}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":10,"w":2.6,"h":4.15,"l":40}]},{"type":"STRSELF","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":10,"w":2.6,"h":4.15,"l":36}]}]}]}},{"id":"MFHOMES","name":"Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":7.5,"w":5,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":7.5,"w":5,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]}]},{"type":"REGTRCK","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":6.9,"w":5,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]},{"type":"FLOATTR","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":6.9,"w":5,"h":4.57,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":6.9,"w":5,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]}]}]}},{"id":"MFHOMEL","name":"Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":7.5,"w":6,"h":4.88,"l":31.5,"regions":[{"region":"PCE","w":6.1,"h":5.33,"l":36}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":7.5,"w":6,"h":4.88,"l":31.5,"regions":[{"region":"PCE","w":6.1,"h":5.33,"l":36}]}]}]},{"type":"REGTRCK","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":6.9,"w":6,"h":4.88,"l":31.5,"regions":[{"region":"PCE","w":6.1,"h":5.33,"l":36}]}]},{"type":"FLOATTR","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":6.9,"w":6,"h":4.57,"l":31.5,"regions":[{"region":"PCE","w":6.1,"h":5.33,"l":36}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":6.9,"w":6,"h":4.88,"l":31.5,"regions":[{"region":"PCE","w":6.1,"h":5.33,"l":36}]}]}]}]}},{"id":"PARKMHS","name":"Park Model Homes","size":{"powerUnits":[{"type":"REGTRCK","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.9,"w":4.4,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FLOATTR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.9,"w":4.4,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.9,"w":4.4,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33}]}]}]}]}},{"id":"PIPESTL","name":"Pipe And Steel Products (Rebar, Pilings, Reinforcing Steel, Etc.)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":31}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5}]},{"type":"STSTEER","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":36}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":40}]}]}]}},{"id":"REDUCBL","name":"Reducible Loads","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STLOGNG","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.15,"l":27.5}]},{"type":"PLATFRM","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":26,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSTEER","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWHELR","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWIDWH","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STCRANE","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":40,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STRSELF","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":36,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"PICKRTT","trailers":[{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"STINGER","trailers":[{"type":"SEMITRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1.2,"w":2.6,"h":4.3,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSTNGR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1.2,"w":2.6,"h":4.3,"l":25,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"REGTRCK","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":3.2,"h":4.3,"l":25,"regions":[{"region":"PCE","h":4.4}]}]},{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":3.2,"h":4.3,"l":25,"regions":[{"region":"PCE","h":4.4}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":3.2,"h":4.3,"l":16,"regions":[{"region":"PCE","h":4.4}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":3.2,"h":4.3,"l":25,"regions":[{"region":"PCE","h":4.4}]}]}]}]}},{"id":"SCRAPER","name":"Scraper on Dollies","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"DOLLIES","jeep":true,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":1,"w":3.2,"h":4.3,"l":25,"regions":[{"region":"PCE","h":4.4}]}]}]}]}},{"id":"OILFILD","name":"Oil Field Equipment","size":{"powerUnits":[{"type":"OGBEDTK","trailers":[{"type":"EXPANDO","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.3,"l":27.5}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":5,"w":3.3,"h":4.3,"l":14}]},{"type":"OGOSFDT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.3,"h":4.3,"l":23}]}]},{"type":"OGOILSW","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":5,"w":3.2,"h":4.3,"l":15}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":25}]}]},{"type":"OGSERVC","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":3.8,"h":4.3,"l":15}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":3.8,"h":4.3,"l":23}]}]},{"type":"OGSRRAH","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":2.9,"h":4.15,"l":15.5}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":2.9,"h":4.15,"l":23}]}]},{"type":"TRKTRAC","trailers":[{"type":"OGOSFDT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.3,"h":4.3,"l":23}]}]}]}},{"id":"JPTRLOG","name":"Tandem Jeep/Pole Trailer Loaded on Logging Truck","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":5,"w":2.9,"h":4.3,"l":12.5}]}]},{"type":"REGTRCK","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":5,"w":2.9,"h":4.3,"l":12.5}]}]}]}},{"id":"TOWDISB","name":"Tow Trucks And Disabled Vehicles","size":{"powerUnits":[{"type":"TOWVEHC","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.3,"l":27.5}]}]}]}},{"id":"TRQDLOG","name":"Tri-Axle or Quad Axle Full Trailer Loaded on Logging Truck","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":5,"w":2.6,"h":4.3,"l":13.5}]}]},{"type":"REGTRCK","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":5,"w":2.6,"h":4.3,"l":13.5}]}]}]}},{"id":"WOODCHP","name":"Wood Chips, Residuals","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.45,"l":27.5}]}]}]}},{"id":"EMPTYXX","name":"Empty","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"LOGOWBK","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":0,"rp":0,"w":3.2,"h":4.15,"l":23}]},{"type":"PLATFRM","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.15,"l":27.5}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.4,"l":31,"regions":[{"region":"LMN","h":4.15},{"region":"PCE","h":5.33}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.4,"l":27.5,"regions":[{"region":"LMN","h":4.15},{"region":"PCE","h":5.33}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.4,"l":31,"regions":[{"region":"LMN","h":4.15},{"region":"PCE","h":5.33}]}]},{"type":"STWHELR","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.88,"l":27.5,"regions":[{"region":"LMN","h":4.15},{"region":"PCE","h":5.33}]}]},{"type":"STWIDWH","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.88,"l":27.5,"regions":[{"region":"LMN","h":4.15},{"region":"PCE","h":5.33}]}]}]},{"type":"PICKRTT","trailers":[{"type":"OGOSFDT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.15,"l":23}]},{"type":"PLATFRM","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.15,"l":27.5}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":25,"regions":[{"region":"PCE","l":27.5}]}]},{"type":"STWHELR","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.15,"l":27.5}]},{"type":"STWIDWH","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.15,"l":27.5}]}]}]}},{"id":"GRBBINS","name":"Garbage Bins","size":{"powerUnits":[{"type":"REGTRCK","trailers":[{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":23}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":12.5}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":23}]}]}]}},{"id":"LAMBEAM","name":"Laminated Beams","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"POLETRL","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":40}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":31}]}]}]}},{"id":"HAYLREC","name":"Hay Bales Large Rectangular","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.05,"h":4.3,"l":26,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.05,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.05,"h":4.4,"l":23,"regions":[{"region":"LMN","h":4.3},{"region":"KTN","h":4.3},{"region":"PCE","h":4.8}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.05,"h":4.3,"l":23,"regions":[{"region":"PCE","h":4.8}]}]}]},{"type":"REGTRCK","trailers":[{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.05,"h":4.3,"l":23,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.05,"h":4.3,"l":12.5,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.05,"h":4.3,"l":23,"regions":[{"region":"PCE","h":4.8}]}]}]}]}},{"id":"HAYROND","name":"Hay Bales Round","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.5,"h":4.3,"l":26,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.5,"h":4.3,"l":27.5,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.5,"h":4.3,"l":23,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.5,"h":4.3,"l":23,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]}]},{"type":"REGTRCK","trailers":[{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.5,"h":4.3,"l":23,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.5,"h":4.3,"l":12.5,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.5,"h":4.3,"l":23,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]}]}]}},{"id":"HAYSREC","name":"Hay Bales Small Rectangular","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.05,"h":4.3,"l":26,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.05,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.05,"h":4.3,"l":23,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.05,"h":4.3,"l":23,"regions":[{"region":"PCE","h":4.8}]}]}]},{"type":"REGTRCK","trailers":[{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.05,"h":4.3,"l":23,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.05,"h":4.3,"l":12.5,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.05,"h":4.3,"l":23,"regions":[{"region":"PCE","h":4.8}]}]}]}]}},{"id":"BRGBEAM","name":"Bridge Beams","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"POLETRL","jeep":true,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":31}]},{"type":"SEMITRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":31,"regions":[{"region":"PCE","h":5.33}]}]}]}]}},{"id":"NONREDU","name":"Non-Reducible Loads","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STLOGNG","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.15,"l":27.5}]},{"type":"PLATFRM","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.4,"l":26,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.4,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.4,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.4,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSTEER","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWHELR","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWIDWH","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STCRANE","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":40,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STRSELF","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":36,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"PICKRTT","trailers":[{"type":"OGOSFDT","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.3,"h":4.3,"l":23}]},{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.4,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.4,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSTEER","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWHELR","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWIDWH","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STCRANE","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":40,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STRSELF","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":36,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"STINGER","trailers":[{"type":"SEMITRL","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":1.2,"w":2.6,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSTNGR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1.2,"w":2.6,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"REGTRCK","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":5,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":5,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":5,"h":4.88,"l":16,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":5,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]}]}]}},{"id":"AUTOCRR","name":"Auto Carrier, Campers And Boats (Stinger Steered Transporters Only)","size":{"powerUnits":[{"type":"STINGER","trailers":[{"type":"STSTNGR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1.2,"w":2.6,"h":4.4,"l":25,"regions":[{"region":"LMN","h":4.3},{"region":"KTN","h":4.3},{"region":"PCE","h":4.88}]}]}]}]}},{"id":"HAYRNPR","name":"Hay Bales (Round) Peace River Only","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.5,"h":4.3,"l":26,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.5,"h":4.3,"l":27.5,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.5,"h":4.3,"l":23,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.5,"h":4.3,"l":23,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]}]},{"type":"REGTRCK","trailers":[{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.5,"h":4.3,"l":23,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.5,"h":4.3,"l":12.5,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.5,"h":4.3,"l":23,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]}]}]}},{"id":"BRSHCUT","name":"Brushcutters (Peace Only)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"SEMITRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":23,"regions":[{"region":"PCE","w":4.57,"h":5.33}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":23,"regions":[{"region":"PCE","w":4.57,"h":5.33}]}]}]},{"type":"REGTRCK","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.15,"l":12.5,"regions":[{"region":"PCE","w":4.57,"h":5.33}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.15,"l":23,"regions":[{"region":"PCE","w":3.8,"h":5.33}]}]}]}]}},{"id":"FIXEDEQ","name":"Fixed Equipment","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"FECVYER","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":4,"rp":9.5,"w":3.8,"h":4.72,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEDRMMX","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.72,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEBGHSE","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":4.26,"h":4.72,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FESEMTR","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.72,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEWHELR","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.72,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"REGTRCK","trailers":[{"type":"FECVYPT","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":4,"rp":9.5,"w":3.2,"h":4.3}]},{"type":"FEDRMMX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.72,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEPNYTR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.2,"h":4.3}]},{"type":"FEBGHSE","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":4.26,"h":4.72}]}]}]}}],"globalSizeDefaults":{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":31}}') +GO + +-- Clear out any primary draft flags that may already exist in the DB +UPDATE [dbo].[ORBC_POLICY_CONFIGURATION] SET IS_PRIMARY_DRAFT = NULL +GO + +-- Insert a sample primary draft configuration +INSERT [dbo].[ORBC_POLICY_CONFIGURATION] (EFFECTIVE_DATE, IS_DRAFT, CHANGE_DESCRIPTION, ORIGIN_ID, IS_PRIMARY_DRAFT, POLICY_JSON) +VALUES ( + NULL, + 'Y', + N'Primary draft (sample data)', + (SELECT TOP 1 POLICY_CONFIGURATION_ID FROM [dbo].[ORBC_POLICY_CONFIGURATION] WHERE IS_DRAFT='N' ORDER BY EFFECTIVE_DATE DESC), + 'Y', + (SELECT TOP 1 POLICY_JSON FROM [dbo].[ORBC_POLICY_CONFIGURATION] WHERE IS_DRAFT='N' ORDER BY EFFECTIVE_DATE DESC)) + +-- Insert a sample non-primary draft configuration +INSERT [dbo].[ORBC_POLICY_CONFIGURATION] (EFFECTIVE_DATE, IS_DRAFT, CHANGE_DESCRIPTION, ORIGIN_ID, IS_PRIMARY_DRAFT, POLICY_JSON) +VALUES ( + NULL, + 'Y', + N'Additional, non-primary draft (sample data)', + (SELECT TOP 1 POLICY_CONFIGURATION_ID FROM [dbo].[ORBC_POLICY_CONFIGURATION] WHERE IS_DRAFT='N' ORDER BY EFFECTIVE_DATE DESC), + NULL, + (SELECT TOP 1 POLICY_JSON FROM [dbo].[ORBC_POLICY_CONFIGURATION] WHERE IS_DRAFT='N' ORDER BY EFFECTIVE_DATE DESC)) diff --git a/database/mssql/scripts/utility/refresh-sample-data.sh b/database/mssql/scripts/utility/refresh-sample-data.sh index 712d22d86..d15c23e37 100644 --- a/database/mssql/scripts/utility/refresh-sample-data.sh +++ b/database/mssql/scripts/utility/refresh-sample-data.sh @@ -6,15 +6,15 @@ USAGE="-u ORBC_USER -p ORBC_PASS -s ORBC_SERVER -d ORBC_DATABASE" parse_options "${USAGE}" ${@} echo "Deleting existing sample data" -sqlcmd -C -U ${ORBC_USER} -P "${ORBC_PASS}" -S ${ORBC_SERVER} -d ${ORBC_DATABASE} -Q "SET NOCOUNT ON; DELETE FROM dbo.ORBC_FEATURE_FLAG" -sqlcmd -C -U ${ORBC_USER} -P "${ORBC_PASS}" -S ${ORBC_SERVER} -d ${ORBC_DATABASE} -Q "SET NOCOUNT ON; DELETE FROM dbo.ORBC_TRAILER" -sqlcmd -C -U ${ORBC_USER} -P "${ORBC_PASS}" -S ${ORBC_SERVER} -d ${ORBC_DATABASE} -Q "SET NOCOUNT ON; DELETE FROM dbo.ORBC_POWER_UNIT" -sqlcmd -C -U ${ORBC_USER} -P "${ORBC_PASS}" -S ${ORBC_SERVER} -d ${ORBC_DATABASE} -Q "SET NOCOUNT ON; DELETE FROM dbo.ORBC_COMPANY_USER" -sqlcmd -C -U ${ORBC_USER} -P "${ORBC_PASS}" -S ${ORBC_SERVER} -d ${ORBC_DATABASE} -Q "SET NOCOUNT ON; DELETE FROM dbo.ORBC_USER" -sqlcmd -C -U ${ORBC_USER} -P "${ORBC_PASS}" -S ${ORBC_SERVER} -d ${ORBC_DATABASE} -Q "SET NOCOUNT ON; DELETE FROM dbo.ORBC_COMPANY" -sqlcmd -C -U ${ORBC_USER} -P "${ORBC_PASS}" -S ${ORBC_SERVER} -d ${ORBC_DATABASE} -Q "SET NOCOUNT ON; DELETE FROM dbo.ORBC_CONTACT" -sqlcmd -C -U ${ORBC_USER} -P "${ORBC_PASS}" -S ${ORBC_SERVER} -d ${ORBC_DATABASE} -Q "SET NOCOUNT ON; DELETE FROM dbo.ORBC_ADDRESS" -sqlcmd -C -U ${ORBC_USER} -P "${ORBC_PASS}" -S ${ORBC_SERVER} -d ${ORBC_DATABASE} -Q "SET NOCOUNT ON; DELETE FROM dbo.ORBC_POLICY_CONFIGURATION" +sqlcmd -C -U ${ORBC_USER} -P "${ORBC_PASS}" -S ${ORBC_SERVER} -d ${ORBC_DATABASE} -Q "SET QUOTED_IDENTIFIER ON; SET NOCOUNT ON; DELETE FROM dbo.ORBC_FEATURE_FLAG" +sqlcmd -C -U ${ORBC_USER} -P "${ORBC_PASS}" -S ${ORBC_SERVER} -d ${ORBC_DATABASE} -Q "SET QUOTED_IDENTIFIER ON; SET NOCOUNT ON; DELETE FROM dbo.ORBC_TRAILER" +sqlcmd -C -U ${ORBC_USER} -P "${ORBC_PASS}" -S ${ORBC_SERVER} -d ${ORBC_DATABASE} -Q "SET QUOTED_IDENTIFIER ON; SET NOCOUNT ON; DELETE FROM dbo.ORBC_POWER_UNIT" +sqlcmd -C -U ${ORBC_USER} -P "${ORBC_PASS}" -S ${ORBC_SERVER} -d ${ORBC_DATABASE} -Q "SET QUOTED_IDENTIFIER ON; SET NOCOUNT ON; DELETE FROM dbo.ORBC_COMPANY_USER" +sqlcmd -C -U ${ORBC_USER} -P "${ORBC_PASS}" -S ${ORBC_SERVER} -d ${ORBC_DATABASE} -Q "SET QUOTED_IDENTIFIER ON; SET NOCOUNT ON; DELETE FROM dbo.ORBC_USER" +sqlcmd -C -U ${ORBC_USER} -P "${ORBC_PASS}" -S ${ORBC_SERVER} -d ${ORBC_DATABASE} -Q "SET QUOTED_IDENTIFIER ON; SET NOCOUNT ON; DELETE FROM dbo.ORBC_COMPANY" +sqlcmd -C -U ${ORBC_USER} -P "${ORBC_PASS}" -S ${ORBC_SERVER} -d ${ORBC_DATABASE} -Q "SET QUOTED_IDENTIFIER ON; SET NOCOUNT ON; DELETE FROM dbo.ORBC_CONTACT" +sqlcmd -C -U ${ORBC_USER} -P "${ORBC_PASS}" -S ${ORBC_SERVER} -d ${ORBC_DATABASE} -Q "SET QUOTED_IDENTIFIER ON; SET NOCOUNT ON; DELETE FROM dbo.ORBC_ADDRESS" +sqlcmd -C -U ${ORBC_USER} -P "${ORBC_PASS}" -S ${ORBC_SERVER} -d ${ORBC_DATABASE} -Q "SET QUOTED_IDENTIFIER ON; SET NOCOUNT ON; DELETE FROM dbo.ORBC_POLICY_CONFIGURATION" echo "Finished deleting existing sample data" echo "Loading sample data...please wait" diff --git a/database/mssql/scripts/versions/revert/v_51_ddl_revert.sql b/database/mssql/scripts/versions/revert/v_51_ddl_revert.sql new file mode 100644 index 000000000..d4329db90 --- /dev/null +++ b/database/mssql/scripts/versions/revert/v_51_ddl_revert.sql @@ -0,0 +1,97 @@ +SET ANSI_NULLS ON +GO +SET QUOTED_IDENTIFIER ON +GO +SET NOCOUNT ON +GO + +SET XACT_ABORT ON +GO +SET TRANSACTION ISOLATION LEVEL SERIALIZABLE +GO +BEGIN TRANSACTION +GO + +-- Remove the indexes on the new columns +IF EXISTS (SELECT * FROM sys.indexes WHERE name = 'IX_ORBC_POLICY_CONFIGURATION_UQ_IS_PRIMARY_DRAFT') + DROP INDEX IX_ORBC_POLICY_CONFIGURATION_UQ_IS_PRIMARY_DRAFT ON ORBC_POLICY_CONFIGURATION; +IF EXISTS (SELECT * FROM sys.indexes WHERE name = 'IX_FK_ORBC_POLICY_CONFIGURATION_ORIGIN_ID') + DROP INDEX IX_FK_ORBC_POLICY_CONFIGURATION_ORIGIN_ID ON ORBC_POLICY_CONFIGURATION; +IF EXISTS (SELECT * FROM sys.indexes WHERE name = 'IX_ORBC_POLICY_CONFIGURATION_IS_DRAFT') + DROP INDEX IX_ORBC_POLICY_CONFIGURATION_IS_DRAFT ON ORBC_POLICY_CONFIGURATION; +IF EXISTS (SELECT * FROM sys.indexes WHERE name = 'IX_ORBC_POLICY_CONFIGURATION_EFFECTIVE_DATE') + DROP INDEX IX_ORBC_POLICY_CONFIGURATION_EFFECTIVE_DATE ON ORBC_POLICY_CONFIGURATION; +GO + +IF @@ERROR <> 0 SET NOEXEC ON +GO + +-- Drop the columns from main and history tables +ALTER TABLE [dbo].[ORBC_POLICY_CONFIGURATION] +DROP CONSTRAINT FK_ORBC_POLICY_CONFIGURATION_ORIGIN_ID +ALTER TABLE [dbo].[ORBC_POLICY_CONFIGURATION] +DROP COLUMN ORIGIN_ID +ALTER TABLE [dbo].[ORBC_POLICY_CONFIGURATION] +DROP COLUMN IS_PRIMARY_DRAFT +GO + +IF @@ERROR <> 0 SET NOEXEC ON +GO + +-- Revert the trigger changes to remove the added columns +ALTER TRIGGER [dbo].[ORBC_POLCFG_A_S_IUD_TR] ON [dbo].[ORBC_POLICY_CONFIGURATION] FOR INSERT, UPDATE, DELETE AS +SET NOCOUNT ON +BEGIN TRY +DECLARE @curr_date datetime; +SET @curr_date = getutcdate(); + IF NOT EXISTS(SELECT * FROM inserted) AND NOT EXISTS(SELECT * FROM deleted) + RETURN; + + -- historical + IF EXISTS(SELECT * FROM deleted) + update [dbo].[ORBC_POLICY_CONFIGURATION_HIST] set END_DATE_HIST = @curr_date where POLICY_CONFIGURATION_ID in (select POLICY_CONFIGURATION_ID from deleted) and END_DATE_HIST is null; + + IF EXISTS(SELECT * FROM inserted) + insert into [dbo].[ORBC_POLICY_CONFIGURATION_HIST] ([POLICY_CONFIGURATION_ID], [EFFECTIVE_DATE], [IS_DRAFT], [CHANGE_DESCRIPTION], [APP_CREATE_TIMESTAMP], [APP_CREATE_USERID], [APP_CREATE_USER_GUID], [APP_CREATE_USER_DIRECTORY], [APP_LAST_UPDATE_TIMESTAMP], [APP_LAST_UPDATE_USER_GUID], [APP_LAST_UPDATE_USER_DIRECTORY], [CONCURRENCY_CONTROL_NUMBER], [DB_CREATE_USERID], [DB_CREATE_TIMESTAMP], [DB_LAST_UPDATE_USERID], [DB_LAST_UPDATE_TIMESTAMP], _POLICY_CONFIGURATION_HIST_ID, END_DATE_HIST, EFFECTIVE_DATE_HIST) + select [POLICY_CONFIGURATION_ID], [EFFECTIVE_DATE], [IS_DRAFT], [CHANGE_DESCRIPTION], [APP_CREATE_TIMESTAMP], [APP_CREATE_USERID], [APP_CREATE_USER_GUID], [APP_CREATE_USER_DIRECTORY], [APP_LAST_UPDATE_TIMESTAMP], [APP_LAST_UPDATE_USER_GUID], [APP_LAST_UPDATE_USER_DIRECTORY], [CONCURRENCY_CONTROL_NUMBER], [DB_CREATE_USERID], [DB_CREATE_TIMESTAMP], [DB_LAST_UPDATE_USERID], [DB_LAST_UPDATE_TIMESTAMP], (next value for [dbo].[ORBC_POLICY_CONFIGURATION_H_ID_SEQ]) as [_POLICY_CONFIGURATION_HIST_ID], null as [END_DATE_HIST], @curr_date as [EFFECTIVE_DATE_HIST] from inserted; + +END TRY +BEGIN CATCH + IF @@trancount > 0 ROLLBACK TRANSACTION + EXEC orbc_error_handling +END CATCH; +GO + +IF @@ERROR <> 0 SET NOEXEC ON +GO + +-- Remove the added policy configuration +DELETE FROM [dbo].[ORBC_POLICY_CONFIGURATION] +WHERE POLICY_CONFIGURATION_ID = (SELECT MAX(POLICY_CONFIGURATION_ID) FROM [dbo].[ORBC_POLICY_CONFIGURATION]) +GO + +IF @@ERROR <> 0 SET NOEXEC ON +GO + +DECLARE @VersionDescription VARCHAR(255) +SET @VersionDescription = 'Reverting updates to policy configuration table for config versioning' + +INSERT [dbo].[ORBC_SYS_VERSION] ([VERSION_ID], [DESCRIPTION], [RELEASE_DATE]) VALUES (50, @VersionDescription, getutcdate()) +GO + +IF @@ERROR <> 0 SET NOEXEC ON +GO + +COMMIT TRANSACTION +GO +IF @@ERROR <> 0 SET NOEXEC ON +GO +DECLARE @Success AS BIT +SET @Success = 1 +SET NOEXEC OFF +IF (@Success = 1) PRINT 'The database revert succeeded' +ELSE BEGIN + IF @@TRANCOUNT > 0 ROLLBACK TRANSACTION + PRINT 'The database revert failed' +END +GO \ No newline at end of file diff --git a/database/mssql/scripts/versions/v_51_ddl.sql b/database/mssql/scripts/versions/v_51_ddl.sql new file mode 100644 index 000000000..520a068da --- /dev/null +++ b/database/mssql/scripts/versions/v_51_ddl.sql @@ -0,0 +1,118 @@ +SET ANSI_NULLS ON +GO +SET QUOTED_IDENTIFIER ON +GO +SET NOCOUNT ON +GO + +SET XACT_ABORT ON +GO +SET TRANSACTION ISOLATION LEVEL SERIALIZABLE +GO +BEGIN TRANSACTION +GO + +-- Add ORIGIN_ID and IS_PRIMARY_DRAFT columns +ALTER TABLE [dbo].[ORBC_POLICY_CONFIGURATION] +ADD ORIGIN_ID INT NULL, IS_PRIMARY_DRAFT CHAR(1) NULL; +GO +ALTER TABLE [dbo].[ORBC_POLICY_CONFIGURATION_HIST] +ADD ORIGIN_ID INT NULL, IS_PRIMARY_DRAFT CHAR(1) NULL; +GO + +-- Create FK relationship from ORIGIN_ID back to POLICY_CONFIGURATION_ID +ALTER TABLE [dbo].[ORBC_POLICY_CONFIGURATION] WITH CHECK ADD CONSTRAINT [FK_ORBC_POLICY_CONFIGURATION_ORIGIN_ID] FOREIGN KEY([ORIGIN_ID]) +REFERENCES [dbo].[ORBC_POLICY_CONFIGURATION] ([POLICY_CONFIGURATION_ID]) +GO +ALTER TABLE [dbo].[ORBC_POLICY_CONFIGURATION] CHECK CONSTRAINT [FK_ORBC_POLICY_CONFIGURATION_ORIGIN_ID] +GO + +-- Unique IX to ensure only one record can be 'Y' for IS_PRIMARY_DRAFT +CREATE UNIQUE NONCLUSTERED INDEX [IX_ORBC_POLICY_CONFIGURATION_UQ_IS_PRIMARY_DRAFT] ON [dbo].[ORBC_POLICY_CONFIGURATION] +( + [IS_PRIMARY_DRAFT] ASC +) +WHERE ([IS_PRIMARY_DRAFT]='Y') +WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] +GO + +IF @@ERROR <> 0 SET NOEXEC ON +GO + +-- Create IX on the FK +CREATE NONCLUSTERED INDEX [IX_FK_ORBC_POLICY_CONFIGURATION_ORIGIN_ID] ON [dbo].[ORBC_POLICY_CONFIGURATION] +( + [ORIGIN_ID] ASC +)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] +GO + +IF @@ERROR <> 0 SET NOEXEC ON +GO + +-- Create IXs for queried columns +CREATE NONCLUSTERED INDEX [IX_ORBC_POLICY_CONFIGURATION_IS_DRAFT] ON [dbo].[ORBC_POLICY_CONFIGURATION] ([IS_DRAFT] ASC) +CREATE NONCLUSTERED INDEX [IX_ORBC_POLICY_CONFIGURATION_EFFECTIVE_DATE] ON [dbo].[ORBC_POLICY_CONFIGURATION] ([EFFECTIVE_DATE] ASC) +GO + +-- Update trigger to copy the new columns into the history table +ALTER TRIGGER [dbo].[ORBC_POLCFG_A_S_IUD_TR] ON [dbo].[ORBC_POLICY_CONFIGURATION] FOR INSERT, UPDATE, DELETE AS +SET NOCOUNT ON +BEGIN TRY +DECLARE @curr_date datetime; +SET @curr_date = getutcdate(); + IF NOT EXISTS(SELECT * FROM inserted) AND NOT EXISTS(SELECT * FROM deleted) + RETURN; + + -- historical + IF EXISTS(SELECT * FROM deleted) + update [dbo].[ORBC_POLICY_CONFIGURATION_HIST] set END_DATE_HIST = @curr_date where POLICY_CONFIGURATION_ID in (select POLICY_CONFIGURATION_ID from deleted) and END_DATE_HIST is null; + + IF EXISTS(SELECT * FROM inserted) + insert into [dbo].[ORBC_POLICY_CONFIGURATION_HIST] ([POLICY_CONFIGURATION_ID], [EFFECTIVE_DATE], [IS_DRAFT], [CHANGE_DESCRIPTION], [APP_CREATE_TIMESTAMP], [APP_CREATE_USERID], [APP_CREATE_USER_GUID], [APP_CREATE_USER_DIRECTORY], [APP_LAST_UPDATE_TIMESTAMP], [APP_LAST_UPDATE_USER_GUID], [APP_LAST_UPDATE_USER_DIRECTORY], [CONCURRENCY_CONTROL_NUMBER], [DB_CREATE_USERID], [DB_CREATE_TIMESTAMP], [DB_LAST_UPDATE_USERID], [DB_LAST_UPDATE_TIMESTAMP], [ORIGIN_ID], [IS_PRIMARY_DRAFT], _POLICY_CONFIGURATION_HIST_ID, END_DATE_HIST, EFFECTIVE_DATE_HIST) + select [POLICY_CONFIGURATION_ID], [EFFECTIVE_DATE], [IS_DRAFT], [CHANGE_DESCRIPTION], [APP_CREATE_TIMESTAMP], [APP_CREATE_USERID], [APP_CREATE_USER_GUID], [APP_CREATE_USER_DIRECTORY], [APP_LAST_UPDATE_TIMESTAMP], [APP_LAST_UPDATE_USER_GUID], [APP_LAST_UPDATE_USER_DIRECTORY], [CONCURRENCY_CONTROL_NUMBER], [DB_CREATE_USERID], [DB_CREATE_TIMESTAMP], [DB_LAST_UPDATE_USERID], [DB_LAST_UPDATE_TIMESTAMP], [ORIGIN_ID], [IS_PRIMARY_DRAFT], (next value for [dbo].[ORBC_POLICY_CONFIGURATION_H_ID_SEQ]) as [_POLICY_CONFIGURATION_HIST_ID], null as [END_DATE_HIST], @curr_date as [EFFECTIVE_DATE_HIST] from inserted; + +END TRY +BEGIN CATCH + IF @@trancount > 0 ROLLBACK TRANSACTION + EXEC orbc_error_handling +END CATCH; +GO + +IF @@ERROR <> 0 SET NOEXEC ON +GO + +-- Insert initial current configuration +INSERT [dbo].[ORBC_POLICY_CONFIGURATION] ( + EFFECTIVE_DATE, + IS_DRAFT, + CHANGE_DESCRIPTION, + ORIGIN_ID, + POLICY_JSON) +VALUES ( + CAST('2024-12-01T00:00:00' AS DATETIME), + 'N', + N'Initial master policy configuration', + NULL, + N'{"minPEVersion":"1.0.0","geographicRegions":[{"id":"LMN","name":"Lower Mainland"},{"id":"KTN","name":"Kootenay"},{"id":"PCE","name":"Peace"}],"rangeMatrices":[{"id":"annualFeeCV","name":"Annual licensing fee for commercial vehicle","matrix":[{"min":0,"max":500,"value":42},{"min":501,"max":1000,"value":49},{"min":1001,"max":1500,"value":60},{"min":1501,"max":2000,"value":74},{"min":2001,"max":2500,"value":85},{"min":2501,"max":3000,"value":97},{"min":3001,"max":3500,"value":108},{"min":3501,"max":4000,"value":127},{"min":4001,"max":4500,"value":147},{"min":4501,"max":5000,"value":173},{"min":5001,"max":5500,"value":193},{"min":5501,"max":6000,"value":213},{"min":6001,"max":6500,"value":230},{"min":6501,"max":7000,"value":250},{"min":7001,"max":7500,"value":266},{"min":7501,"max":8000,"value":292},{"min":8001,"max":8500,"value":320},{"min":8501,"max":9000,"value":347},{"min":9001,"max":9500,"value":376},{"min":9501,"max":10000,"value":395},{"min":10001,"max":10500,"value":416},{"min":10501,"max":11000,"value":437},{"min":11001,"max":11500,"value":450},{"min":11501,"max":12000,"value":469},{"min":12001,"max":12500,"value":493},{"min":12501,"max":13000,"value":507},{"min":13001,"max":13500,"value":532},{"min":13501,"max":14000,"value":559},{"min":14001,"max":14500,"value":586},{"min":14501,"max":15000,"value":613},{"min":15001,"max":15500,"value":645},{"min":15501,"max":16000,"value":687},{"min":16001,"max":16500,"value":729},{"min":16501,"max":17000,"value":769},{"min":17001,"max":17500,"value":814},{"min":17501,"max":18000,"value":846},{"min":18001,"max":18500,"value":870},{"min":18501,"max":19000,"value":899},{"min":19001,"max":19500,"value":927},{"min":19501,"max":20000,"value":954},{"min":20001,"max":20500,"value":987},{"min":20501,"max":21000,"value":1014},{"min":21001,"max":21500,"value":1041},{"min":21501,"max":22000,"value":1068},{"min":22001,"max":22500,"value":1095},{"min":22501,"max":23000,"value":1123},{"min":23001,"max":23500,"value":1152},{"min":23501,"max":24000,"value":1182},{"min":24001,"max":24500,"value":1212},{"min":24501,"max":25000,"value":1252},{"min":25001,"max":25500,"value":1298},{"min":25501,"max":26000,"value":1340},{"min":26001,"max":26500,"value":1381},{"min":26501,"max":27000,"value":1410},{"min":27001,"max":27500,"value":1439},{"min":27501,"max":28000,"value":1465},{"min":28001,"max":28500,"value":1495},{"min":28501,"max":29000,"value":1521},{"min":29001,"max":29500,"value":1550},{"min":29501,"max":30000,"value":1581},{"min":30001,"max":31000,"value":1608},{"min":31001,"max":32000,"value":1661},{"min":32001,"max":33000,"value":1714},{"min":33001,"max":34000,"value":1769},{"min":34001,"max":35000,"value":1824},{"min":35001,"max":36000,"value":1910},{"min":36001,"max":37000,"value":2039},{"min":37001,"max":38000,"value":2110},{"min":38001,"max":39000,"value":2182},{"min":39001,"max":40000,"value":2252},{"min":40001,"max":41000,"value":2324},{"min":41001,"max":42000,"value":2398},{"min":42001,"max":43000,"value":2471},{"min":43001,"max":44000,"value":2540},{"min":44001,"max":45000,"value":2612},{"min":45001,"max":46000,"value":2718},{"min":46001,"max":47000,"value":2828},{"min":47001,"max":48000,"value":2901},{"min":48001,"max":49000,"value":2971},{"min":49001,"max":50000,"value":3044},{"min":50001,"max":51000,"value":3093},{"min":51001,"max":52000,"value":3160},{"min":52001,"max":53000,"value":3226},{"min":53001,"max":54000,"value":3291},{"min":54001,"max":55000,"value":3357},{"min":55001,"max":56000,"value":3423},{"min":56001,"max":57000,"value":3488},{"min":57001,"max":58000,"value":3553},{"min":58001,"max":59000,"value":3619},{"min":59001,"max":60000,"value":3685},{"min":60001,"max":61000,"value":3749},{"min":61001,"max":62000,"value":3815},{"min":62001,"max":63000,"value":3880},{"min":63001,"max":63500,"value":3946}]},{"id":"annualFeePassenger","name":"Annual licensing fee for commercial passenger vehicle","matrix":[{"min":0,"max":500,"value":40},{"min":501,"max":1000,"value":47},{"min":1001,"max":1500,"value":57},{"min":1501,"max":2000,"value":70},{"min":2001,"max":2500,"value":81},{"min":2501,"max":3000,"value":92},{"min":3001,"max":3500,"value":103},{"min":3501,"max":4000,"value":121},{"min":4001,"max":4500,"value":140},{"min":4501,"max":5000,"value":165},{"min":5001,"max":5500,"value":184},{"min":5501,"max":6000,"value":203},{"min":6001,"max":6500,"value":219},{"min":6501,"max":7000,"value":238},{"min":7001,"max":7500,"value":253},{"min":7501,"max":8000,"value":278},{"min":8001,"max":8500,"value":305},{"min":8501,"max":9000,"value":330},{"min":9001,"max":9500,"value":358},{"min":9501,"max":10000,"value":376},{"min":10001,"max":10500,"value":396},{"min":10501,"max":11000,"value":416},{"min":11001,"max":11500,"value":429},{"min":11501,"max":12000,"value":447},{"min":12001,"max":12500,"value":465},{"min":12501,"max":13000,"value":478},{"min":13001,"max":13500,"value":501},{"min":13501,"max":14000,"value":527},{"min":14001,"max":14500,"value":552},{"min":14501,"max":15000,"value":578},{"min":15001,"max":15500,"value":608},{"min":15501,"max":16000,"value":648},{"min":16001,"max":16500,"value":687},{"min":16501,"max":17000,"value":725},{"min":17001,"max":17500,"value":768},{"min":17501,"max":18000,"value":797},{"min":18001,"max":18500,"value":820},{"min":18501,"max":19000,"value":848},{"min":19001,"max":19500,"value":873},{"min":19501,"max":20000,"value":899},{"min":20001,"max":20500,"value":930},{"min":20501,"max":21000,"value":955},{"min":21001,"max":21500,"value":981},{"min":21501,"max":22000,"value":1007},{"min":22001,"max":22500,"value":1032},{"min":22501,"max":23000,"value":1058},{"min":23001,"max":23500,"value":1086},{"min":23501,"max":24000,"value":1114},{"min":24001,"max":24500,"value":1142},{"min":24501,"max":25000,"value":1180},{"min":25001,"max":25500,"value":1224},{"min":25501,"max":26000,"value":1263},{"min":26001,"max":26500,"value":1302},{"min":26501,"max":27000,"value":1329},{"min":27001,"max":27500,"value":1356},{"min":27501,"max":28000,"value":1381},{"min":28001,"max":28500,"value":1409},{"min":28501,"max":29000,"value":1433},{"min":29001,"max":29500,"value":1461},{"min":29501,"max":30000,"value":1490},{"min":30001,"max":31000,"value":1516},{"min":31001,"max":32000,"value":1569},{"min":32001,"max":33000,"value":1621},{"min":33001,"max":34000,"value":1676},{"min":34001,"max":35000,"value":1730},{"min":35001,"max":36000,"value":1815},{"min":36001,"max":37000,"value":1943},{"min":37001,"max":38000,"value":2013},{"min":38001,"max":39000,"value":2084},{"min":39001,"max":40000,"value":2154},{"min":40001,"max":41000,"value":2225},{"min":41001,"max":42000,"value":2298},{"min":42001,"max":43000,"value":2370},{"min":43001,"max":44000,"value":2439},{"min":44001,"max":45000,"value":2510},{"min":45001,"max":46000,"value":2615},{"min":46001,"max":47000,"value":2724},{"min":47001,"max":48000,"value":2796},{"min":48001,"max":49000,"value":2865},{"min":49001,"max":50000,"value":2937},{"min":50001,"max":51000,"value":2986},{"min":51001,"max":52000,"value":3052},{"min":52001,"max":53000,"value":3117},{"min":53001,"max":54000,"value":3182},{"min":54001,"max":55000,"value":3247},{"min":55001,"max":56000,"value":3312},{"min":56001,"max":57000,"value":3377},{"min":57001,"max":58000,"value":3441},{"min":58001,"max":59000,"value":3506},{"min":59001,"max":60000,"value":3572},{"min":60001,"max":61000,"value":3635},{"min":61001,"max":62000,"value":3700},{"min":62001,"max":63000,"value":3765},{"min":63001,"max":63500,"value":3830}]},{"id":"annualFeeIndustrial","name":"Annual licensing fee for an industrial machine","matrix":[{"min":0,"max":2000,"value":45},{"min":2001,"max":5000,"value":69},{"min":5001,"max":7000,"value":110},{"min":7001,"max":9000,"value":164},{"min":9001,"max":11000,"value":216},{"min":11001,"value":260}]},{"id":"annualFeeFarm","name":"Annual licensing fee for farm vehicle","matrix":[{"min":0,"max":500,"value":30},{"min":501,"max":1000,"value":40},{"min":1001,"max":1500,"value":47},{"min":1501,"max":2000,"value":55},{"min":2001,"max":2500,"value":77},{"min":2501,"max":3000,"value":101},{"min":3001,"max":3500,"value":142},{"min":3501,"max":4000,"value":181},{"min":4001,"max":4500,"value":207},{"min":4501,"max":5000,"value":243},{"min":5001,"max":5500,"value":278},{"min":5501,"max":6000,"value":322},{"min":6001,"max":6500,"value":355},{"min":6501,"max":7000,"value":396},{"min":7001,"max":7500,"value":427},{"min":7501,"max":8000,"value":473},{"min":8001,"max":8500,"value":524},{"min":8501,"max":9000,"value":558},{"min":9001,"max":9500,"value":596},{"min":9501,"max":10000,"value":633},{"min":10001,"max":10500,"value":669},{"min":10501,"max":11000,"value":711},{"min":11001,"max":11500,"value":744},{"min":11501,"max":12000,"value":784},{"min":12001,"max":12500,"value":824},{"min":12501,"max":13000,"value":863},{"min":13001,"max":13500,"value":883},{"min":13501,"max":14000,"value":899},{"min":14001,"max":14500,"value":919},{"min":14501,"max":15000,"value":940},{"min":15001,"max":15500,"value":960},{"min":15501,"max":16000,"value":979},{"min":16001,"max":16500,"value":997},{"min":16501,"max":17000,"value":1017},{"min":17001,"max":17500,"value":1036},{"min":17501,"max":18000,"value":1056},{"min":18001,"max":18500,"value":1076},{"min":18501,"max":19000,"value":1096},{"min":19001,"max":19500,"value":1114},{"min":19501,"max":20000,"value":1134},{"min":20001,"max":20500,"value":1154},{"min":20501,"max":21000,"value":1174},{"min":21001,"max":21500,"value":1192},{"min":21501,"max":22000,"value":1211},{"min":22001,"max":22500,"value":1231},{"min":22501,"max":23000,"value":1251},{"min":23001,"max":23500,"value":1270},{"min":23501,"max":24000,"value":1289},{"min":24001,"max":24400,"value":1309}]}],"bridgeCalculationConstants":{"minWeight":18000,"multiplier":30},"commonRules":[{"conditions":{"not":{"fact":"permitData","path":"companyName","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Company is required","code":"field-validation-error","fieldReference":"permitData.companyName"}}},{"conditions":{"not":{"fact":"permitData","path":"contactDetails.firstName","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Contact first name is required","code":"field-validation-error","fieldReference":"permitData.contactDetails.firstName"}}},{"conditions":{"not":{"fact":"permitData","path":"contactDetails.lastName","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Contact last name is required","code":"field-validation-error","fieldReference":"permitData.contactDetails.lastName"}}},{"conditions":{"not":{"fact":"permitData","path":"contactDetails.phone1","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Contact phone number is required","code":"field-validation-error","fieldReference":"permitData.contactDetails.phone1"}}},{"conditions":{"not":{"fact":"permitData","path":"contactDetails.email","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Company contact email is required","code":"field-validation-error","fieldReference":"permitData.contactDetails.email"}}},{"conditions":{"any":[{"fact":"permitData","path":"$.startDate","operator":"dateLessThan","value":{"fact":"validationDate"}}]},"event":{"type":"violation","params":{"message":"Permit start date cannot be in the past","code":"field-validation-error","fieldReference":"permitData.startDate"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.vin","operator":"regex","value":"^[a-zA-Z0-9]{6}$"}},"event":{"type":"violation","params":{"message":"Vehicle Identification Number (vin) must be 6 alphanumeric characters","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.vin"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.plate","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Vehicle plate is required","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.plate"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.make","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Vehicle make is required","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.make"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.year","operator":"greaterThan","value":1900}},"event":{"type":"violation","params":{"message":"Vehicle year is required","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.year"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.countryCode","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Vehicle country of registration is required","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.countryCode"}}}],"permitTypes":[{"id":"TROS","name":"Term Oversize","routingRequired":false,"weightDimensionRequired":false,"sizeDimensionRequired":false,"commodityRequired":false,"allowedVehicles":["BOOSTER","DOLLIES","EXPANDO","FEBGHSE","FECVYER","FEDRMMX","FEPNYTR","FESEMTR","FEWHELR","FLOATTR","FULLLTL","HIBOEXP","HIBOFLT","JEEPSRG","LOGDGLG","LOGFULL","LOGNTAC","LOGOWBK","LOGSMEM","LOGTNDM","LOGTRIX","ODTRLEX","OGOSFDT","PLATFRM","POLETRL","PONYTRL","REDIMIX","SEMITRL","STBTRAN","STCHIPS","STCRANE","STINGAT","STLOGNG","STNTSHC","STREEFR","STSDBDK","STSTNGR","STWHELR","STWIDWH","BUSTRLR","CONCRET","DDCKBUS","GRADERS","LOGGING","LOGOFFH","LWBTRCT","OGBEDTK","OGOILSW","PICKRTT","PLOWBLD","REGTRCK","STINGER","TOWVEHC","TRKTRAC"],"rules":[{"conditions":{"all":[{"not":{"fact":"permitData","path":"permitDuration","operator":"in","value":[30,60,90,120,150,180,210,240,270,300,330]}},{"not":{"fact":"permitData","path":"permitDuration","operator":"equal","value":{"fact":"daysInPermitYear"}}}]},"event":{"type":"violation","params":{"message":"Duration must be in 30 day increments or a full year","code":"field-validation-error","fieldReference":"permitData.permitDuration"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.vehicleSubType","operator":"in","value":{"fact":"allowedVehicles"}}},"event":{"type":"violation","params":{"message":"Vehicle type not permittable for this permit type","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.vehicleSubType"}}}],"costRules":[{"fact":"costPerMonth","params":{"cost":30}}]},{"id":"TROW","name":"Term Overweight","routingRequired":false,"weightDimensionRequired":false,"sizeDimensionRequired":false,"commodityRequired":false,"allowedVehicles":["DOLLIES","FEBGHSE","FECVYER","FEDRMMX","FEPNYTR","FESEMTR","FEWHELR","REDIMIX","CONCRET","CRAFTAT","CRAFTMB","GRADERS","MUNFITR","OGOILSW","OGSERVC","OGSRRAH","PICKRTT","TOWVEHC"],"rules":[{"conditions":{"all":[{"not":{"fact":"permitData","path":"permitDuration","operator":"in","value":[30,60,90,120,150,180,210,240,270,300,330]}},{"not":{"fact":"permitData","path":"permitDuration","operator":"equal","value":{"fact":"daysInPermitYear"}}}]},"event":{"type":"violation","params":{"message":"Duration must be in 30 day increments or a full year","code":"field-validation-error","fieldReference":"permitData.permitDuration"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.vehicleSubType","operator":"in","value":{"fact":"allowedVehicles"}}},"event":{"type":"violation","params":{"message":"Vehicle type not permittable for this permit type","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.vehicleSubType"}}}],"costRules":[{"fact":"costPerMonth","params":{"cost":100}}]},{"id":"STOS","name":"Single Trip Oversize","routingRequired":true,"weightDimensionRequired":false,"sizeDimensionRequired":true,"commodityRequired":true,"rules":[{"conditions":{"any":[{"not":{"fact":"permitData","path":"permitDuration","operator":"lessThanInclusive","value":7}},{"not":{"fact":"permitData","path":"permitDuration","operator":"greaterThan","value":0}}]},"event":{"type":"violation","params":{"message":"Duration must be 7 days or less","code":"field-validation-error","fieldReference":"permitData.permitDuration"}}},{"conditions":{"not":{"fact":"configurationIsValid","operator":"equal","value":true}},"event":{"type":"violation","params":{"message":"Vehicle configuration is not permittable for this commodity","code":"field-validation-error","fieldReference":"permitData.vehicleConfiguration.trailers"}}},{"conditions":{"not":{"fact":"permitData","path":"permittedCommodity.loadDescription","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Commodity load description is required","code":"field-validation-error","fieldReference":"permitData.permittedCommodity.loadDescription"}}}],"costRules":[{"fact":"fixedCost","params":{"cost":15}}]},{"id":"STFR","name":"Single Trip ICBC Basic Insurance (FR)","routingRequired":false,"weightDimensionRequired":false,"sizeDimensionRequired":false,"commodityRequired":false,"allowedVehicles":["BUSCRUM","BUSTRLR","CONCRET","CRAFTAT","CRAFTMB","DDCKBUS","FARMVEH","GRADERS","LCVRMDB","LCVTPDB","LOGGING","LOGOFFH","LWBTRCT","MUNFITR","OGBEDTK","OGOILSW","OGSERVC","OGSRRAH","PICKRTT","PLOWBLD","PUTAXIS","REGTRCK","SCRAPER","SPAUTHV","STINGER","TOWVEHC","TRKTRAC"],"rules":[{"conditions":{"any":[{"not":{"fact":"permitData","path":"permitDuration","operator":"lessThanInclusive","value":30}},{"not":{"fact":"permitData","path":"permitDuration","operator":"greaterThan","value":0}}]},"event":{"type":"violation","params":{"message":"Duration must be 30 days or less","code":"field-validation-error","fieldReference":"permitData.permitDuration"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.licensedGVW","operator":"greaterThan","value":0}},"event":{"type":"violation","params":{"message":"Licensed GVW must be greater than zero","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.licensedGVW"}}},{"conditions":{"all":[{"fact":"permitData","path":"vehicleDetails.licensedGVW","operator":"greaterThan","value":63500}]},"event":{"type":"violation","params":{"message":"Licensed GVW may not exceed 63,500 kg","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.licensedGVW"}}},{"conditions":{"all":[{"fact":"permitData","path":"vehicleDetails.countryCode","operator":"equal","value":"CA"},{"fact":"permitData","path":"vehicleDetails.provinceCode","operator":"equal","value":"BC"}]},"event":{"type":"violation","params":{"message":"BC plated vehicles do not require this permit","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.provinceCode"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.vehicleSubType","operator":"in","value":{"fact":"allowedVehicles"}}},"event":{"type":"violation","params":{"message":"Vehicle type not permittable for this permit type","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.vehicleSubType"}}},{"conditions":{"not":{"fact":"permitData","path":"thirdPartyLiability","operator":"in","value":["GENERAL_GOODS","DANGEROUS_GOODS"]}},"event":{"type":"violation","params":{"message":"Third party liability is invalid","code":"field-validation-error","fieldReference":"permitData.thirdPartyLiability"}}}],"costRules":[{"fact":"fixedCost","params":{"cost":84}},{"fact":"conditionalFixedCost","params":{"cost":5,"fact":"thirdPartyLiability","value":"DANGEROUS_GOODS"}}]},{"id":"QRFR","name":"Quarterly ICBC Basic Insurance (FR)","routingRequired":false,"weightDimensionRequired":false,"sizeDimensionRequired":false,"commodityRequired":false,"allowedVehicles":["BUSCRUM","BUSTRLR","CONCRET","CRAFTAT","CRAFTMB","DDCKBUS","FARMVEH","GRADERS","LCVRMDB","LCVTPDB","LOGGING","LOGOFFH","LWBTRCT","MUNFITR","OGBEDTK","OGOILSW","OGSERVC","OGSRRAH","PICKRTT","PLOWBLD","PUTAXIS","REGTRCK","SCRAPER","SPAUTHV","STINGER","TOWVEHC","TRKTRAC"],"rules":[{"conditions":{"not":{"fact":"permitData","path":"expiryDate","operator":"equal","value":{"fact":"endOfPermitQuarter"}}},"event":{"type":"violation","params":{"message":"Permit end date must be the end of the quarter in which the permit starts","code":"field-validation-error","fieldReference":"permitData.expiryDate"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.licensedGVW","operator":"greaterThan","value":0}},"event":{"type":"violation","params":{"message":"Licensed GVW must be greater than zero","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.licensedGVW"}}},{"conditions":{"all":[{"fact":"permitData","path":"vehicleDetails.licensedGVW","operator":"greaterThan","value":63500}]},"event":{"type":"violation","params":{"message":"Licensed GVW may not exceed 63,500 kg","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.licensedGVW"}}},{"conditions":{"all":[{"fact":"permitData","path":"vehicleDetails.countryCode","operator":"equal","value":"CA"},{"fact":"permitData","path":"vehicleDetails.provinceCode","operator":"equal","value":"BC"}]},"event":{"type":"violation","params":{"message":"BC plated vehicles do not require this permit","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.provinceCode"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.vehicleSubType","operator":"in","value":{"fact":"allowedVehicles"}}},"event":{"type":"violation","params":{"message":"Vehicle type not permittable for this permit type","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.vehicleSubType"}}},{"conditions":{"not":{"fact":"permitData","operator":"in","value":["GENERAL_GOODS","DANGEROUS_GOODS"],"path":"thirdPartyLiability"}},"event":{"type":"violation","params":{"message":"Third party liability is invalid","code":"field-validation-error","fieldReference":"permitData.thirdPartyLiability"}}}],"costRules":[{"fact":"fixedCost","params":{"cost":843}},{"fact":"conditionalFixedCost","params":{"cost":56,"fact":"thirdPartyLiability","value":"DANGEROUS_GOODS"}}]},{"id":"MFP","name":"Motive Fuel User Permit","routingRequired":true,"weightDimensionRequired":false,"sizeDimensionRequired":false,"commodityRequired":false,"allowedVehicles":["BUSCRUM","BUSTRLR","CONCRET","CRAFTAT","CRAFTMB","DDCKBUS","GRADERS","LCVRMDB","LCVTPDB","LOGGING","LOGOFFH","LWBTRCT","OGBEDTK","OGOILSW","OGSERVC","OGSRRAH","PICKRTT","PLOWBLD","REGTRCK","SCRAPER","SPAUTHV","STINGER","TOWVEHC","TRKTRAC"],"rules":[{"conditions":{"any":[{"not":{"fact":"permitData","path":"permitDuration","operator":"lessThanInclusive","value":7}},{"not":{"fact":"permitData","path":"permitDuration","operator":"greaterThan","value":0}}]},"event":{"type":"violation","params":{"message":"Duration must be 7 days or less","code":"field-validation-error","fieldReference":"permitData.permitDuration"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.licensedGVW","operator":"greaterThan","value":0}},"event":{"type":"violation","params":{"message":"Licensed GVW must be greater than zero","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.licensedGVW"}}},{"conditions":{"all":[{"fact":"permitData","path":"vehicleDetails.licensedGVW","operator":"greaterThan","value":63500}]},"event":{"type":"violation","params":{"message":"Licensed GVW may not exceed 63,500 kg","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.licensedGVW"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.vehicleSubType","operator":"in","value":{"fact":"allowedVehicles"}}},"event":{"type":"violation","params":{"message":"Vehicle type not permittable for this permit type","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.vehicleSubType"}}},{"conditions":{"not":{"fact":"permitData","path":"permittedRoute.manualRoute.origin","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Route origin is required","code":"field-validation-error","fieldReference":"permitData.permittedRoute.manualRoute.origin"}}},{"conditions":{"not":{"fact":"permitData","path":"permittedRoute.manualRoute.destination","operator":"stringMinimumLength","value":1}},"event":{"type":"violation","params":{"message":"Route destination is required","code":"field-validation-error","fieldReference":"permitData.permittedRoute.manualRoute.origin"}}},{"conditions":{"not":{"fact":"permitData","path":"permittedRoute.manualRoute.totalDistance","operator":"greaterThan","value":0}},"event":{"type":"violation","params":{"message":"Trip distance must be greater than zero","code":"field-validation-error","fieldReference":"permitData.permittedRoute.manualRoute.totalDistance"}}}],"costRules":[{"fact":"costPerKilometre","params":{"cost":0.11,"minValue":20}}]},{"id":"NRSCV","name":"Non-Resident Single Trip","routingRequired":false,"weightDimensionRequired":false,"sizeDimensionRequired":false,"commodityRequired":false,"allowedVehicles":["BUSCRUM","BUSTRLR","CONCRET","CRAFTAT","CRAFTMB","DDCKBUS","FARMVEH","GRADERS","LCVRMDB","LCVTPDB","LOGGING","LOGOFFH","LWBTRCT","MUNFITR","OGBEDTK","OGOILSW","OGSERVC","OGSRRAH","PICKRTT","PLOWBLD","PUTAXIS","REGTRCK","SCRAPER","SPAUTHV","STINGER","TOWVEHC","TRKTRAC"],"rules":[{"conditions":{"any":[{"not":{"fact":"permitData","path":"permitDuration","operator":"lessThanInclusive","value":30}},{"not":{"fact":"permitData","path":"permitDuration","operator":"greaterThan","value":0}}]},"event":{"type":"violation","params":{"message":"Duration must be 30 days or less","code":"field-validation-error","fieldReference":"permitData.permitDuration"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleConfiguration.loadedGVW","operator":"greaterThan","value":0}},"event":{"type":"violation","params":{"message":"Loaded GVW must be greater than zero","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.licensedGVW"}}},{"conditions":{"any":[{"fact":"permitData","path":"vehicleConfiguration.loadedGVW","operator":"greaterThan","value":63500},{"all":[{"fact":"permitData","path":"vehicleConfiguration.loadedGVW","operator":"greaterThan","value":24400},{"fact":"permitData","path":"conditionalLicensingFee","operator":"equal","value":"farm"}]}]},"event":{"type":"violation","params":{"message":"Loaded GVW may not exceed 63,500 kg, or 24,400 for a farm vehicle","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.licensedGVW"}}},{"conditions":{"all":[{"fact":"permitData","path":"vehicleDetails.countryCode","operator":"equal","value":"CA"},{"fact":"permitData","path":"vehicleDetails.provinceCode","operator":"equal","value":"BC"}]},"event":{"type":"violation","params":{"message":"BC plated vehicles do not require this permit","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.provinceCode"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.vehicleSubType","operator":"in","value":{"fact":"allowedVehicles"}}},"event":{"type":"violation","params":{"message":"Vehicle type not permittable for this permit type","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.vehicleSubType"}}},{"conditions":{"not":{"fact":"permitData","path":"conditionalLicensingFee","operator":"in","value":["none","conditional","x-plated","farm"]}},"event":{"type":"violation","params":{"message":"Conditional licensing selection is invalid","code":"field-validation-error","fieldReference":"permitData.conditionalLicensingFee"}}}],"costRules":[{"fact":"conditionalFixedCost","params":{"cost":1,"fact":"conditionalLicensingFee","value":"conditional"}},{"fact":"rangeMatrixCostLookup","params":{"divisor":12,"matrixMap":[{"key":"none","value":"annualFeeCV"},{"key":"x-plated","value":"annualFeeIndustrial"},{"key":"farm","value":"annualFeeFarm"}],"rangeLookupKey":"conditionalLicensingFee","matrixFactValue":"vehicleConfiguration.loadedGVW"}}]},{"id":"NRQCV","name":"Non-Resident Quarterly","routingRequired":false,"weightDimensionRequired":false,"sizeDimensionRequired":false,"commodityRequired":false,"allowedVehicles":["BUSCRUM","BUSTRLR","CONCRET","CRAFTAT","CRAFTMB","DDCKBUS","FARMVEH","GRADERS","LCVRMDB","LCVTPDB","LOGGING","LOGOFFH","LWBTRCT","MUNFITR","OGBEDTK","OGOILSW","OGSERVC","OGSRRAH","PICKRTT","PLOWBLD","PUTAXIS","REGTRCK","SCRAPER","SPAUTHV","STINGER","TOWVEHC","TRKTRAC"],"rules":[{"conditions":{"not":{"fact":"permitData","path":"expiryDate","operator":"equal","value":{"fact":"endOfPermitQuarter"}}},"event":{"type":"violation","params":{"message":"Permit end date must be the end of the quarter in which the permit starts","code":"field-validation-error","fieldReference":"permitData.expiryDate"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleConfiguration.loadedGVW","operator":"greaterThan","value":0}},"event":{"type":"violation","params":{"message":"Loaded GVW must be greater than zero","code":"field-validation-error","fieldReference":"permitData.vehicleConfiguration.loadedGVW"}}},{"conditions":{"any":[{"fact":"permitData","path":"vehicleConfiguration.loadedGVW","operator":"greaterThan","value":63500},{"all":[{"fact":"permitData","path":"vehicleConfiguration.loadedGVW","operator":"greaterThan","value":24400},{"fact":"permitData","path":"conditionalLicensingFee","operator":"equal","value":"farm"}]}]},"event":{"type":"violation","params":{"message":"Loaded GVW may not exceed 63,500 kg, or 24,400 for a farm vehicle","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.licensedGVW"}}},{"conditions":{"all":[{"fact":"permitData","path":"vehicleDetails.countryCode","operator":"equal","value":"CA"},{"fact":"permitData","path":"vehicleDetails.provinceCode","operator":"equal","value":"BC"}]},"event":{"type":"violation","params":{"message":"BC plated vehicles do not require this permit","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.provinceCode"}}},{"conditions":{"not":{"fact":"permitData","path":"vehicleDetails.vehicleSubType","operator":"in","value":{"fact":"allowedVehicles"}}},"event":{"type":"violation","params":{"message":"Vehicle type not permittable for this permit type","code":"field-validation-error","fieldReference":"permitData.vehicleDetails.vehicleSubType"}}},{"conditions":{"not":{"fact":"permitData","path":"conditionalLicensingFee","operator":"in","value":["none","conditional","x-plated","farm"]}},"event":{"type":"violation","params":{"message":"Conditional licensing fee is invalid","code":"field-validation-error","fieldReference":"permitData.conditionalLicensingFee"}}}],"costRules":[{"fact":"conditionalFixedCost","params":{"cost":3,"fact":"conditionalLicensingFee","value":"conditional"}},{"fact":"rangeMatrixCostLookup","params":{"divisor":4,"matrixMap":[{"key":"none","value":"annualFeeCV"},{"key":"x-plated","value":"annualFeeIndustrial"},{"key":"farm","value":"annualFeeFarm"}],"rangeLookupKey":"conditionalLicensingFee","matrixFactValue":"vehicleConfiguration.loadedGVW"}}]}],"globalWeightDefaults":{"powerUnits":[],"trailers":[]},"vehicleCategories":{"trailerCategories":[{"id":"trailer","name":"Default trailer category"},{"id":"accessory","name":"Accessory trailer such as jeep or booster, to be used alongside other trailers. Not permittable on its own as a trailer in a combination."},{"id":"pseudo","name":"Placeholder for a trailer in a combination with no trailer (such as when a brushcutter is permitted with no trailer)."}],"powerUnitCategories":[{"id":"powerunit","name":"Default power unit category"}]},"vehicleTypes":{"powerUnitTypes":[{"id":"BUSCRUM","name":"Buses/Crummies","category":"powerunit"},{"id":"BUSTRLR","name":"Inter-City Bus (Pulling Pony Trailer)","category":"powerunit"},{"id":"CONCRET","name":"Concrete Pumper Trucks","category":"powerunit"},{"id":"CRAFTAT","name":"Cranes, Rubber-Tired Loaders, Firetrucks - All Terrain","category":"powerunit"},{"id":"CRAFTMB","name":"Cranes, Rubber-Tired Loaders, Firetrucks - Mobile","category":"powerunit"},{"id":"DDCKBUS","name":"Double Decker Buses","category":"powerunit"},{"id":"FARMVEH","name":"Farm Vehicles","category":"powerunit"},{"id":"GRADERS","name":"Fixed Equipment - Trucks/Graders etc.","category":"powerunit"},{"id":"LCVRMDB","name":"Long Combination Vehicles (LCV) - Rocky Mountain Doubles","category":"powerunit"},{"id":"LCVTPDB","name":"Long Combination Vehicles (LCV) - Turnpike Doubles","category":"powerunit"},{"id":"LOGGING","name":"Logging Trucks","category":"powerunit"},{"id":"LOGOFFH","name":"Logging Trucks - Off-Highway","category":"powerunit"},{"id":"LWBTRCT","name":"Long Wheelbase Truck Tractors Exceeding 6.2 m up to 7.25 m","category":"powerunit"},{"id":"MUNFITR","name":"Municipal Fire Trucks","category":"powerunit"},{"id":"OGBEDTK","name":"Oil and Gas - Bed Trucks","category":"powerunit"},{"id":"OGOILSW","name":"Oil and Gas - Oilfield Sows","category":"powerunit"},{"id":"OGSERVC","name":"Oil and Gas - Service Rigs","category":"powerunit"},{"id":"OGSRRAH","name":"Oil and Gas - Service Rigs and Rathole Augers Only Equipped with Heavy Front Projected Crane (must exceed 14,000 kg tare weight)","category":"powerunit"},{"id":"PICKRTT","name":"Picker Truck Tractors","category":"powerunit"},{"id":"PLOWBLD","name":"Trucks Equipped with Front or Underbody Plow Blades","category":"powerunit"},{"id":"PUTAXIS","name":"Taxis","category":"powerunit"},{"id":"REGTRCK","name":"Trucks","category":"powerunit"},{"id":"SCRAPER","name":"Scrapers","category":"powerunit"},{"id":"SPAUTHV","name":"Specially Authorized Vehicles","category":"powerunit"},{"id":"STINGER","name":"Truck Tractors - Stinger Steered","category":"powerunit"},{"id":"TOWVEHC","name":"Tow Vehicles","category":"powerunit"},{"id":"TRKTRAC","name":"Truck Tractors","category":"powerunit"}],"trailerTypes":[{"id":"BOOSTER","name":"Boosters","category":"accessory"},{"id":"DBTRBTR","name":"Tandem/Tridem Drive B-Train (Super B-Train)","category":"trailer"},{"id":"DOLLIES","name":"Dollies","category":"trailer"},{"id":"EXPANDO","name":"Expando Semi-Trailers","category":"trailer"},{"id":"FEBGHSE","name":"Fixed Equipment - Portable Asphalt Baghouses","category":"trailer"},{"id":"FECVYER","name":"Fixed Equipment - Conveyors (Semi-Trailers)","category":"trailer"},{"id":"FECVYPT","name":"Fixed Equipment - Conveyors (Pony Trailers)","category":"trailer"},{"id":"FEDRMMX","name":"Fixed Equipment - Counter Flow Asphalt Drum Mixers","category":"trailer"},{"id":"FEPNYTR","name":"Fixed Equipment - Pony Trailers","category":"trailer"},{"id":"FESEMTR","name":"Fixed Equipment - Semi-Trailers","category":"trailer"},{"id":"FEWHELR","name":"Fixed Equipment - Wheeler Semi-Trailers","category":"wheeler"},{"id":"FLOATTR","name":"Float Trailers","category":"wheeler"},{"id":"FULLLTL","name":"Full Trailers","category":"trailer"},{"id":"HIBOEXP","name":"Semi-Trailers - Hiboys/Expandos","category":"trailer"},{"id":"HIBOFLT","name":"Semi-Trailers - Hiboys/Flat Decks","category":"trailer"},{"id":"JEEPSRG","name":"Jeeps","category":"accessory"},{"id":"LOGDGLG","name":"Legacy Logging Trailer Combinations - Tandem Pole Trailers, Dogloggers","category":"trailer"},{"id":"LOGLGCY","name":"Legacy Logging Trailer Combinations","category":"trailer"},{"id":"LOGFULL","name":"Logging Trailer - Full Trailers, Tri Axle, Quad Axle","category":"trailer"},{"id":"LOGNTAC","name":"Legacy Logging Trailer Combinations - Non-TAC B-Trains","category":"trailer"},{"id":"LOGOWBK","name":"Logging Trailer - Overwidth Bunks","category":"trailer"},{"id":"LOGSMEM","name":"Logging Semi-Trailer - Empty, 3.2 m Bunks","category":"trailer"},{"id":"LOGTNDM","name":"Legacy Logging Trailer Combinations - Single Axle Jeeps, Tandem Axle Pole Trailers, Dogloggers","category":"trailer"},{"id":"LOGTRIX","name":"Legacy Logging Trailer Combinations - Single Axle Jeeps, Tri Axle Trailers","category":"trailer"},{"id":"MHMBSHG","name":"Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW) with Attached Axles","category":"trailer"},{"id":"MHMBSHL","name":"Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW) with Attached Axles","category":"trailer"},{"id":"ODTRLEX","name":"Overdimensional Trailers and Semi-Trailers (For Export)","category":"trailer"},{"id":"OGOSFDT","name":"Oil and Gas - Oversize Oilfield Flat Deck Semi-Trailers","category":"trailer"},{"id":"PLATFRM","name":"Platform Trailers","category":"trailer"},{"id":"PMHWAAX","name":"Park Model Homes with Attached Axles","category":"trailer"},{"id":"POLETRL","name":"Pole Trailers","category":"trailer"},{"id":"PONYTRL","name":"Pony Trailers","category":"trailer"},{"id":"REDIMIX","name":"Ready Mix Concrete Pump Semi-Trailers","category":"trailer"},{"id":"SEMITRL","name":"Semi-Trailers","category":"trailer"},{"id":"STACTRN","name":"Semi-Trailers - A-Trains and C-Trains","category":"trailer"},{"id":"STBTRAN","name":"Semi-Trailers - B-Trains","category":"trailer"},{"id":"STCHIPS","name":"Semi-Trailers - Walled B-Trains (Chip Trucks)","category":"trailer"},{"id":"STCRANE","name":"Semi-Trailers with Crane","category":"trailer"},{"id":"STINGAT","name":"Stinger Steered Automobile Transporters","category":"trailer"},{"id":"STLOGNG","name":"Semi-Trailers - Logging","category":"trailer"},{"id":"STNTSHC","name":"Semi-Trailers - Non-Tac Short Chassis","category":"trailer"},{"id":"STREEFR","name":"Semi-Trailers - Insulated Vans with Reefer/Refrigeration Units","category":"trailer"},{"id":"STROPRT","name":"Steering Trailers - Manned","category":"trailer"},{"id":"STRSELF","name":"Steering Trailers - Self/Remote","category":"trailer"},{"id":"STSDBDK","name":"Semi-Trailers - Single Drop, Double Drop, Step Decks, Lowbed, Expandos, etc.","category":"trailer"},{"id":"STSTEER","name":"Semi-Trailers - Steering Trailers","category":"trailer"},{"id":"STSTNGR","name":"Semi-Trailers - Stinger Steered Automobile Transporters","category":"trailer"},{"id":"STWDTAN","name":"Semi-Trailers - Spread Tandems","category":"trailer"},{"id":"STWHELR","name":"Semi-Trailers - Wheelers","category":"trailer"},{"id":"STWIDWH","name":"Semi-Trailers - Wide Wheelers","category":"trailer"},{"id":"NONEXXX","name":"None","category":"pseudo"}]},"commodities":[{"id":"NONEXXX","name":"None","size":{"powerUnits":[{"type":"CONCRET","trailers":[{"type":"NONEXXX","jeep":false,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":15.5}]}]},{"type":"CRAFTAT","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":3.8,"h":4.3,"l":25}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":3.8,"h":4.3,"l":14,"regions":[{"region":"PCE","l":15}]}]}]},{"type":"CRAFTMB","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":3.8,"h":4.3,"l":25}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":3.8,"h":4.3,"l":14,"regions":[{"region":"PCE","l":15}]}]}]},{"type":"DDCKBUS","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.42,"l":12.5,"regions":[{"region":"LMN","h":4.3},{"region":"KTN","h":4.3},{"region":"PCE","h":4.3}]}]}]},{"type":"GRADERS","trailers":[{"type":"FEPNYTR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.2,"h":4.3,"l":31}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":1,"w":3.5,"h":4.4,"l":12.5,"regions":[{"region":"LMN","h":4.3},{"region":"KTN","h":4.3},{"region":"PCE","h":5.33}]}]}]},{"type":"BUSTRLR","trailers":[{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.15,"l":20}]}]},{"type":"LOGOFFH","trailers":[{"type":"STLOGNG","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":4.4,"h":4.15,"l":23}]}]},{"type":"LCVRMDB","trailers":[{"type":"SEMITRL","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.15,"l":32,"regions":[{"region":"PCE","l":31}]}]}]},{"type":"LCVTPDB","trailers":[{"type":"SEMITRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.15,"l":41}]}]},{"type":"LWBTRCT","trailers":[{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.15,"l":23}]}]},{"type":"PICKRTT","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":1,"w":2.6,"h":4.15,"l":16}]},{"type":"STCRANE","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":25}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":40,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STRSELF","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":36,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"SCRAPER","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.15,"l":12.5}]}]},{"type":"TRKTRAC","trailers":[{"type":"FECVYER","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":4,"rp":9.5,"w":3.8,"h":4.72,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEDRMMX","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.72,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEBGHSE","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":4.26,"h":4.72,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FESEMTR","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.72,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEWHELR","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":31,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"ODTRLEX","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":1,"w":3.65,"h":4.15,"l":23}]},{"type":"REDIMIX","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":23}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.3,"l":31,"regions":[{"region":"LMN","l":23},{"region":"KTN","l":23},{"region":"PCE","h":5.33}]}]},{"type":"STREEFR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.3,"l":23}]},{"type":"STNTSHC","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":5,"rp":2.25,"w":2.6,"h":4.15,"l":20}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","l":32}]}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.15,"l":40}]},{"type":"STRSELF","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.15,"l":36}]}]},{"type":"REGTRCK","trailers":[{"type":"FECVYPT","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":4,"rp":9.5,"w":3.2,"h":4.3,"l":31}]},{"type":"FEPNYTR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.2,"h":4.3,"l":31}]},{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":3.8,"h":4.3,"l":23,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"MHMBSHL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.9,"w":5,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]},{"type":"MHMBSHG","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.9,"w":6,"h":4.88,"l":31.5,"regions":[{"region":"PCE","w":6.1,"h":5.33,"l":36}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":3.2,"h":4.3,"l":16,"regions":[{"region":"PCE","h":4.4}]}]},{"type":"ODTRLEX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.65,"h":4.15,"l":23}]},{"type":"PMHWAAX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.9,"w":4.4,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":3.2,"h":4.3,"l":23,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"PLOWBLD","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.2,"h":4.15,"l":12.5}]}]}]}},{"id":"DOGLOGG","name":"Doglogger/Sjostrum Trailers (decked)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":5,"w":2.6,"h":4.15,"l":13.5}]}]}]}},{"id":"GRTBBUK","name":"Grader, Tractor Blades, Buckets","size":{"powerUnits":[{"type":"GRADERS","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":0,"rp":0,"w":4.4,"h":4.15,"l":12.5}]}]}]}},{"id":"HAYRACK","name":"Hayrack Semi-Trailer with a Folded Chassis/Empty Piggyback","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STLOGNG","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":5,"w":2.6,"h":4.15,"l":23}]}]}]}},{"id":"IMCONTN","name":"Intermodal Containers","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.4,"l":26}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.4,"l":27.5}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.4,"l":23}]}]},{"type":"REGTRCK","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.4,"l":12.5}]}]}]}},{"id":"IMCONWS","name":"Intermodal Containers without Sides","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":4.4,"h":4.72,"l":23}]}]}]}},{"id":"LPBOOMS","name":"Logs, Poles And Boomsticks (Up To 20.1)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.9,"h":4.15,"l":27.5}]},{"type":"LOGLGCY","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":5,"w":2.6,"h":4.15,"l":25}]},{"type":"POLETRL","jeep":true,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.9,"h":4.15,"l":27.5}]},{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.9,"h":4.15,"l":26}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.9,"h":4.15,"l":27.5}]},{"type":"HIBOFLT","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.9,"h":4.15,"l":25}]},{"type":"STLOGNG","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.9,"h":4.15,"l":25}]}]}]}},{"id":"LPBOOML","name":"Logs, Poles And Boomsticks (Over 20.1)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"LOGFULL","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":10,"rp":10,"w":2.6,"h":4.15,"l":40}]},{"type":"POLETRL","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":8,"rp":9,"w":2.6,"h":4.15,"l":40}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":10,"w":2.6,"h":4.15,"l":40}]},{"type":"STRSELF","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":10,"w":2.6,"h":4.15,"l":36}]}]}]}},{"id":"MFHOMES","name":"Manufactured Homes, Modular Buildings, Structures and Houseboats (<= 5.0 m OAW)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":7.5,"w":5,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":7.5,"w":5,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]}]},{"type":"REGTRCK","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":6.9,"w":5,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]},{"type":"FLOATTR","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":6.9,"w":5,"h":4.57,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":6.9,"w":5,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33,"l":36}]}]}]}]}},{"id":"MFHOMEL","name":"Manufactured Homes, Modular Buildings, Structures and Houseboats (> 5.0 m OAW)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":7.5,"w":6,"h":4.88,"l":31.5,"regions":[{"region":"PCE","w":6.1,"h":5.33,"l":36}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":7.5,"w":6,"h":4.88,"l":31.5,"regions":[{"region":"PCE","w":6.1,"h":5.33,"l":36}]}]}]},{"type":"REGTRCK","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":6.9,"w":6,"h":4.88,"l":31.5,"regions":[{"region":"PCE","w":6.1,"h":5.33,"l":36}]}]},{"type":"FLOATTR","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":6.9,"w":6,"h":4.57,"l":31.5,"regions":[{"region":"PCE","w":6.1,"h":5.33,"l":36}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":6.9,"w":6,"h":4.88,"l":31.5,"regions":[{"region":"PCE","w":6.1,"h":5.33,"l":36}]}]}]}]}},{"id":"PARKMHS","name":"Park Model Homes","size":{"powerUnits":[{"type":"REGTRCK","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.9,"w":4.4,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FLOATTR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.9,"w":4.4,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.9,"w":4.4,"h":4.88,"l":31.5,"regions":[{"region":"PCE","h":5.33}]}]}]}]}},{"id":"PIPESTL","name":"Pipe And Steel Products (Rebar, Pilings, Reinforcing Steel, Etc.)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":31}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5}]},{"type":"STSTEER","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":36}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":40}]}]}]}},{"id":"REDUCBL","name":"Reducible Loads","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STLOGNG","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.15,"l":27.5}]},{"type":"PLATFRM","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":26,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSTEER","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWHELR","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWIDWH","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STCRANE","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":40,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STRSELF","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":36,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"PICKRTT","trailers":[{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"STINGER","trailers":[{"type":"SEMITRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1.2,"w":2.6,"h":4.3,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSTNGR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1.2,"w":2.6,"h":4.3,"l":25,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"REGTRCK","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":3.2,"h":4.3,"l":25,"regions":[{"region":"PCE","h":4.4}]}]},{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":3.2,"h":4.3,"l":25,"regions":[{"region":"PCE","h":4.4}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":3.2,"h":4.3,"l":16,"regions":[{"region":"PCE","h":4.4}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":3.2,"h":4.3,"l":25,"regions":[{"region":"PCE","h":4.4}]}]}]}]}},{"id":"SCRAPER","name":"Scraper on Dollies","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"DOLLIES","jeep":true,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":1,"w":3.2,"h":4.3,"l":25,"regions":[{"region":"PCE","h":4.4}]}]}]}]}},{"id":"OILFILD","name":"Oil Field Equipment","size":{"powerUnits":[{"type":"OGBEDTK","trailers":[{"type":"EXPANDO","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.3,"l":27.5}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":5,"w":3.3,"h":4.3,"l":14}]},{"type":"OGOSFDT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.3,"h":4.3,"l":23}]}]},{"type":"OGOILSW","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":5,"w":3.2,"h":4.3,"l":15}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":25}]}]},{"type":"OGSERVC","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":3.8,"h":4.3,"l":15}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":3.8,"h":4.3,"l":23}]}]},{"type":"OGSRRAH","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":2.9,"h":4.15,"l":15.5}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":10,"rp":6.5,"w":2.9,"h":4.15,"l":23}]}]},{"type":"TRKTRAC","trailers":[{"type":"OGOSFDT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.3,"h":4.3,"l":23}]}]}]}},{"id":"JPTRLOG","name":"Tandem Jeep/Pole Trailer Loaded on Logging Truck","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":5,"w":2.9,"h":4.3,"l":12.5}]}]},{"type":"REGTRCK","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":5,"w":2.9,"h":4.3,"l":12.5}]}]}]}},{"id":"TOWDISB","name":"Tow Trucks And Disabled Vehicles","size":{"powerUnits":[{"type":"TOWVEHC","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.3,"l":27.5}]}]}]}},{"id":"TRQDLOG","name":"Tri-Axle or Quad Axle Full Trailer Loaded on Logging Truck","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":5,"w":2.6,"h":4.3,"l":13.5}]}]},{"type":"REGTRCK","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":5,"w":2.6,"h":4.3,"l":13.5}]}]}]}},{"id":"WOODCHP","name":"Wood Chips, Residuals","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.45,"l":27.5}]}]}]}},{"id":"EMPTYXX","name":"Empty","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"LOGOWBK","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":0,"rp":0,"w":3.2,"h":4.15,"l":23}]},{"type":"PLATFRM","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.15,"l":27.5}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.4,"l":31,"regions":[{"region":"LMN","h":4.15},{"region":"PCE","h":5.33}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.4,"l":27.5,"regions":[{"region":"LMN","h":4.15},{"region":"PCE","h":5.33}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.4,"l":31,"regions":[{"region":"LMN","h":4.15},{"region":"PCE","h":5.33}]}]},{"type":"STWHELR","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.88,"l":27.5,"regions":[{"region":"LMN","h":4.15},{"region":"PCE","h":5.33}]}]},{"type":"STWIDWH","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.88,"l":27.5,"regions":[{"region":"LMN","h":4.15},{"region":"PCE","h":5.33}]}]}]},{"type":"PICKRTT","trailers":[{"type":"OGOSFDT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.15,"l":23}]},{"type":"PLATFRM","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.15,"l":27.5}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":25,"regions":[{"region":"PCE","l":27.5}]}]},{"type":"STWHELR","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.15,"l":27.5}]},{"type":"STWIDWH","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.15,"l":27.5}]}]}]}},{"id":"GRBBINS","name":"Garbage Bins","size":{"powerUnits":[{"type":"REGTRCK","trailers":[{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":23}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":12.5}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":23}]}]}]}},{"id":"LAMBEAM","name":"Laminated Beams","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"POLETRL","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":40}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":31}]}]}]}},{"id":"HAYLREC","name":"Hay Bales Large Rectangular","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.05,"h":4.3,"l":26,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.05,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.05,"h":4.4,"l":23,"regions":[{"region":"LMN","h":4.3},{"region":"KTN","h":4.3},{"region":"PCE","h":4.8}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.05,"h":4.3,"l":23,"regions":[{"region":"PCE","h":4.8}]}]}]},{"type":"REGTRCK","trailers":[{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.05,"h":4.3,"l":23,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.05,"h":4.3,"l":12.5,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.05,"h":4.3,"l":23,"regions":[{"region":"PCE","h":4.8}]}]}]}]}},{"id":"HAYROND","name":"Hay Bales Round","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.5,"h":4.3,"l":26,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.5,"h":4.3,"l":27.5,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.5,"h":4.3,"l":23,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.5,"h":4.3,"l":23,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]}]},{"type":"REGTRCK","trailers":[{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.5,"h":4.3,"l":23,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.5,"h":4.3,"l":12.5,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.5,"h":4.3,"l":23,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]}]}]}},{"id":"HAYSREC","name":"Hay Bales Small Rectangular","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.05,"h":4.3,"l":26,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.05,"h":4.3,"l":27.5,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.05,"h":4.3,"l":23,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.05,"h":4.3,"l":23,"regions":[{"region":"PCE","h":4.8}]}]}]},{"type":"REGTRCK","trailers":[{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.05,"h":4.3,"l":23,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.05,"h":4.3,"l":12.5,"regions":[{"region":"PCE","h":4.8}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.05,"h":4.3,"l":23,"regions":[{"region":"PCE","h":4.8}]}]}]}]}},{"id":"BRGBEAM","name":"Bridge Beams","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"POLETRL","jeep":true,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":31}]},{"type":"SEMITRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.2,"h":4.3,"l":31,"regions":[{"region":"PCE","h":5.33}]}]}]}]}},{"id":"NONREDU","name":"Non-Reducible Loads","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STLOGNG","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.15,"l":27.5}]},{"type":"PLATFRM","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.4,"l":26,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.4,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.4,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.4,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSTEER","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWHELR","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWIDWH","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STCRANE","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":40,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STRSELF","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":36,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"PICKRTT","trailers":[{"type":"OGOSFDT","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.3,"h":4.3,"l":23}]},{"type":"SEMITRL","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOEXP","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.4,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.4,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSTEER","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWHELR","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STWIDWH","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STCRANE","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":27.5,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STROPRT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":40,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STRSELF","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":5,"h":4.88,"l":36,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"STINGER","trailers":[{"type":"SEMITRL","jeep":false,"booster":false,"selfIssue":false,"sizeDimensions":[{"fp":1,"rp":1.2,"w":2.6,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"STSTNGR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1.2,"w":2.6,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"REGTRCK","trailers":[{"type":"DOLLIES","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":5,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":5,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":5,"h":4.88,"l":16,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":6.5,"w":5,"h":4.88,"l":25,"regions":[{"region":"PCE","h":5.33}]}]}]}]}},{"id":"AUTOCRR","name":"Auto Carrier, Campers And Boats (Stinger Steered Transporters Only)","size":{"powerUnits":[{"type":"STINGER","trailers":[{"type":"STSTNGR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1.2,"w":2.6,"h":4.4,"l":25,"regions":[{"region":"LMN","h":4.3},{"region":"KTN","h":4.3},{"region":"PCE","h":4.88}]}]}]}]}},{"id":"HAYRNPR","name":"Hay Bales (Round) Peace River Only","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"STACTRN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.5,"h":4.3,"l":26,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"STBTRAN","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.5,"h":4.3,"l":27.5,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"HIBOFLT","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.5,"h":4.3,"l":23,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.5,"h":4.3,"l":23,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]}]},{"type":"REGTRCK","trailers":[{"type":"FULLLTL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.5,"h":4.3,"l":23,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":3.5,"h":4.3,"l":12.5,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.5,"h":4.3,"l":23,"regions":[{"region":"PCE","w":3.84,"h":4.8}]}]}]}]}},{"id":"BRSHCUT","name":"Brushcutters (Peace Only)","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"SEMITRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":23,"regions":[{"region":"PCE","w":4.57,"h":5.33}]}]},{"type":"STSDBDK","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":23,"regions":[{"region":"PCE","w":4.57,"h":5.33}]}]}]},{"type":"REGTRCK","trailers":[{"type":"NONEXXX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.15,"l":12.5,"regions":[{"region":"PCE","w":4.57,"h":5.33}]}]},{"type":"PONYTRL","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":1,"w":2.6,"h":4.15,"l":23,"regions":[{"region":"PCE","w":3.8,"h":5.33}]}]}]}]}},{"id":"FIXEDEQ","name":"Fixed Equipment","size":{"powerUnits":[{"type":"TRKTRAC","trailers":[{"type":"FECVYER","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":4,"rp":9.5,"w":3.8,"h":4.72,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEDRMMX","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.72,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEBGHSE","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":4.26,"h":4.72,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FESEMTR","jeep":true,"booster":true,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.72,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEWHELR","jeep":true,"booster":true,"selfIssue":false,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.72,"regions":[{"region":"PCE","h":5.33}]}]}]},{"type":"REGTRCK","trailers":[{"type":"FECVYPT","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":4,"rp":9.5,"w":3.2,"h":4.3}]},{"type":"FEDRMMX","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":3.8,"h":4.72,"regions":[{"region":"PCE","h":5.33}]}]},{"type":"FEPNYTR","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":1,"rp":4,"w":3.2,"h":4.3}]},{"type":"FEBGHSE","jeep":false,"booster":false,"selfIssue":true,"sizeDimensions":[{"fp":3,"rp":6.5,"w":4.26,"h":4.72}]}]}]}}],"globalSizeDefaults":{"fp":3,"rp":6.5,"w":2.6,"h":4.15,"l":31}}') +GO + +DECLARE @VersionDescription VARCHAR(255) +SET @VersionDescription = 'Updates to policy configuration table for config versioning' + +INSERT [dbo].[ORBC_SYS_VERSION] ([VERSION_ID], [DESCRIPTION], [UPDATE_SCRIPT], [REVERT_SCRIPT], [RELEASE_DATE]) VALUES (51, @VersionDescription, '$(UPDATE_SCRIPT)', '$(REVERT_SCRIPT)', getutcdate()) +IF @@ERROR <> 0 SET NOEXEC ON +GO + +COMMIT TRANSACTION +GO +IF @@ERROR <> 0 SET NOEXEC ON +GO +DECLARE @Success AS BIT +SET @Success = 1 +SET NOEXEC OFF +IF (@Success = 1) PRINT 'The database update succeeded' +ELSE BEGIN + IF @@TRANCOUNT > 0 ROLLBACK TRANSACTION + PRINT 'The database update failed' +END +GO diff --git a/database/mssql/test/versions/v_51_1_test.sql b/database/mssql/test/versions/v_51_1_test.sql new file mode 100644 index 000000000..d2559e587 --- /dev/null +++ b/database/mssql/test/versions/v_51_1_test.sql @@ -0,0 +1,4 @@ +-- Test that the ORIGIN_ID column has been created successfully +SET NOCOUNT ON + +select COL_LENGTH('$(DB_NAME).[dbo].[ORBC_POLICY_CONFIGURATION]', 'ORIGIN_ID') diff --git a/database/mssql/test/versions/v_51_2_test.sql b/database/mssql/test/versions/v_51_2_test.sql new file mode 100644 index 000000000..7f4ea2de5 --- /dev/null +++ b/database/mssql/test/versions/v_51_2_test.sql @@ -0,0 +1,4 @@ +-- Test that the IS_PRIMARY_DRAFT column has been created +SET NOCOUNT ON + +select COL_LENGTH('$(DB_NAME).[dbo].[ORBC_POLICY_CONFIGURATION]', 'IS_PRIMARY_DRAFT') diff --git a/database/mssql/test/versions/v_51_3_test.sql b/database/mssql/test/versions/v_51_3_test.sql new file mode 100644 index 000000000..db0f9ffe0 --- /dev/null +++ b/database/mssql/test/versions/v_51_3_test.sql @@ -0,0 +1,4 @@ +-- Test that the initial policy configuration has been inserted correctly +SET NOCOUNT ON + +SELECT COUNT(*) FROM $(DB_NAME).[dbo].[ORBC_POLICY_CONFIGURATION] diff --git a/database/mssql/test/versions/v_51_test.sh b/database/mssql/test/versions/v_51_test.sh new file mode 100644 index 000000000..fdf200537 --- /dev/null +++ b/database/mssql/test/versions/v_51_test.sh @@ -0,0 +1,30 @@ +#!/bin/bash + +# Retrieve arguments +source ${SCRIPT_DIR}/utility/getopt.sh +USAGE="-u USER -p PASS -s SERVER -d DATABASE" +parse_options "${USAGE}" ${@} + +# All database tests for database version 51 are run from this shell script. +# TESTS_DIR variable set by the calling test-runner script. + +TEST_51_1_RESULT=$(/opt/mssql-tools/bin/sqlcmd -U ${USER} -P "${PASS}" -S ${SERVER} -v DB_NAME=${DATABASE} -h -1 -i ${TESTS_DIR}/v_51_1_test.sql | xargs) +if [[ $TEST_51_1_RESULT -eq 4 ]]; then + echo "Test 51.1 passed: ORIGIN_ID column created successfully." +else + echo "******** Test 51.1 failed: ORIGIN_ID column not created successfully." +fi + +TEST_51_2_RESULT=$(/opt/mssql-tools/bin/sqlcmd -U ${USER} -P "${PASS}" -S ${SERVER} -v DB_NAME=${DATABASE} -h -1 -i ${TESTS_DIR}/v_51_2_test.sql | xargs) +if [[ $TEST_51_2_RESULT -eq 1 ]]; then + echo "Test 51.2 passed: IS_PRIMARY_DRAFT column created successfully." +else + echo "******** Test 51.2 failed: IS_PRIMARY_DRAFT column not created successfully." +fi + +TEST_51_3_RESULT=$(/opt/mssql-tools/bin/sqlcmd -U ${USER} -P "${PASS}" -S ${SERVER} -v DB_NAME=${DATABASE} -h -1 -i ${TESTS_DIR}/v_51_3_test.sql | xargs) +if [[ $TEST_51_2_RESULT -eq 1 ]]; then + echo "Test 51.3 passed: Initial policy configuration inserted correctly." +else + echo "******** Test 51.3 failed: Initial policy configuration not inserted correctly." +fi diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 6d6b666a6..cdf4c9c20 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -26,7 +26,7 @@ "material-react-table": "^2.13.3", "mui-nested-menu": "^3.4.0", "oidc-client-ts": "^3.1.0", - "onroute-policy-engine": "^0.7.1", + "onroute-policy-engine": "^1.0.0", "react": "^18.3.1", "react-dom": "^18.3.1", "react-error-boundary": "^4.1.2", @@ -74,7 +74,7 @@ "vitest-canvas-mock": "^0.3.3" } }, - "../../../../../../latest": { + "../../../../latest": { "extraneous": true }, "node_modules/@aashutoshrathi/word-wrap": { @@ -1342,6 +1342,28 @@ "@jridgewell/sourcemap-codec": "^1.4.14" } }, + "node_modules/@jsep-plugin/assignment": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@jsep-plugin/assignment/-/assignment-1.3.0.tgz", + "integrity": "sha512-VVgV+CXrhbMI3aSusQyclHkenWSAm95WaiKrMxRFam3JSUiIaQjoMIw2sEs/OX4XifnqeQUN4DYbJjlA8EfktQ==", + "engines": { + "node": ">= 10.16.0" + }, + "peerDependencies": { + "jsep": "^0.4.0||^1.0.0" + } + }, + "node_modules/@jsep-plugin/regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@jsep-plugin/regex/-/regex-1.0.4.tgz", + "integrity": "sha512-q7qL4Mgjs1vByCaTnDFcBnV9HS7GVPJX5vyVoCgZHNSC9rjwIlmbXG5sUuorR5ndfHAIlJ8pVStxvjXHbNvtUg==", + "engines": { + "node": ">= 10.16.0" + }, + "peerDependencies": { + "jsep": "^0.4.0||^1.0.0" + } + }, "node_modules/@mswjs/data": { "version": "0.16.2", "resolved": "https://registry.npmjs.org/@mswjs/data/-/data-0.16.2.tgz", @@ -4278,7 +4300,6 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", - "license": "MIT", "engines": { "node": ">=0.8" } @@ -5424,8 +5445,7 @@ "node_modules/eventemitter2": { "version": "6.4.9", "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.9.tgz", - "integrity": "sha512-JEPTiaOt9f04oa6NOkc4aH+nVp5I3wEjpHbIPqfgCdD5v5bUzy7xQqwcVO2aDQgOWhI28da57HksMrzK9HlRxg==", - "license": "MIT" + "integrity": "sha512-JEPTiaOt9f04oa6NOkc4aH+nVp5I3wEjpHbIPqfgCdD5v5bUzy7xQqwcVO2aDQgOWhI28da57HksMrzK9HlRxg==" }, "node_modules/execa": { "version": "8.0.1", @@ -5972,8 +5992,7 @@ "node_modules/hash-it": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/hash-it/-/hash-it-6.0.0.tgz", - "integrity": "sha512-KHzmSFx1KwyMPw0kXeeUD752q/Kfbzhy6dAZrjXV9kAIXGqzGvv8vhkUqj+2MGZldTo0IBpw6v7iWE7uxsvH0w==", - "license": "MIT" + "integrity": "sha512-KHzmSFx1KwyMPw0kXeeUD752q/Kfbzhy6dAZrjXV9kAIXGqzGvv8vhkUqj+2MGZldTo0IBpw6v7iWE7uxsvH0w==" }, "node_modules/hasown": { "version": "2.0.2", @@ -6736,6 +6755,14 @@ "integrity": "sha512-TrEMa7JGdVm0UThDJSx7ddw5nVm3UJS9o9CCIZ72B1vSyEZoziDqBYP3XIoi/12lKrJR8rE3jeFHMok2F/Mnsg==", "dev": true }, + "node_modules/jsep": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/jsep/-/jsep-1.4.0.tgz", + "integrity": "sha512-B7qPcEVE3NVkmSJbaYxvv4cHkVW7DQsZz13pUMrfS8z8Q/BuShN+gcTXrUlPiGqM2/t/EEaI030bpxMqY8gMlw==", + "engines": { + "node": ">= 10.16.0" + } + }, "node_modules/jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", @@ -6754,15 +6781,17 @@ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" }, "node_modules/json-rules-engine": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/json-rules-engine/-/json-rules-engine-6.6.0.tgz", - "integrity": "sha512-jJ4eVCPnItetPiU3fTIzrrl3d2zeIXCcCy11dwWhN72YXBR2mByV1Vfbrvt6y2n+VFmxc6rtL/XhDqLKIwBx6g==", - "license": "ISC", + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/json-rules-engine/-/json-rules-engine-7.2.1.tgz", + "integrity": "sha512-WcAlEsFbUwnu2K++50QMpnujIn4icEBNZIMydqA6CbwE/0Dtjsq6BSEKiQlQlXirLaCXGqvXFQPCIkAWJhBZCg==", "dependencies": { "clone": "^2.1.2", "eventemitter2": "^6.4.4", "hash-it": "^6.0.0", - "jsonpath-plus": "^7.2.0" + "jsonpath-plus": "^10.2.0" + }, + "engines": { + "node": ">=18.0.0" } }, "node_modules/json-schema-traverse": { @@ -6796,12 +6825,20 @@ "dev": true }, "node_modules/jsonpath-plus": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-7.2.0.tgz", - "integrity": "sha512-zBfiUPM5nD0YZSBT/o/fbCUlCcepMIdP0CJZxM1+KgA4f2T206f6VAg9e7mX35+KlMaIc5qXW34f3BnwJ3w+RA==", - "license": "MIT", + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-10.2.0.tgz", + "integrity": "sha512-T9V+8iNYKFL2n2rF+w02LBOT2JjDnTjioaNFrxRy0Bv1y/hNsqR/EBK7Ojy2ythRHwmz2cRIls+9JitQGZC/sw==", + "dependencies": { + "@jsep-plugin/assignment": "^1.3.0", + "@jsep-plugin/regex": "^1.0.4", + "jsep": "^1.4.0" + }, + "bin": { + "jsonpath": "bin/jsonpath-cli.js", + "jsonpath-plus": "bin/jsonpath-cli.js" + }, "engines": { - "node": ">=12.0.0" + "node": ">=18.0.0" } }, "node_modules/jsx-ast-utils": { @@ -7624,12 +7661,24 @@ } }, "node_modules/onroute-policy-engine": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/onroute-policy-engine/-/onroute-policy-engine-0.7.1.tgz", - "integrity": "sha512-6kgEQp4/JKmU5DJzeh+Kplth4g15DuRR37/9c4yMqgCKs1Y0rEzfbsnm4z4odNia58c/9zCNQyupqIOuT9/9fQ==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/onroute-policy-engine/-/onroute-policy-engine-1.0.0.tgz", + "integrity": "sha512-YCGR0fQot7mpMOW/NyocAnwucSLs2DJgq6fS8IjiE4BhSWyFOrbdu+iaJ1xd0EZMMSainR+HCQnk67rZlRMntA==", "dependencies": { - "dayjs": "^1.11.10", - "json-rules-engine": "^6.5.0" + "dayjs": "^1.11.13", + "json-rules-engine": "^7.2.1", + "semver": "^7.6.3" + } + }, + "node_modules/onroute-policy-engine/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, "node_modules/optionator": { @@ -10658,6 +10707,18 @@ "@jridgewell/sourcemap-codec": "^1.4.14" } }, + "@jsep-plugin/assignment": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@jsep-plugin/assignment/-/assignment-1.3.0.tgz", + "integrity": "sha512-VVgV+CXrhbMI3aSusQyclHkenWSAm95WaiKrMxRFam3JSUiIaQjoMIw2sEs/OX4XifnqeQUN4DYbJjlA8EfktQ==", + "requires": {} + }, + "@jsep-plugin/regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@jsep-plugin/regex/-/regex-1.0.4.tgz", + "integrity": "sha512-q7qL4Mgjs1vByCaTnDFcBnV9HS7GVPJX5vyVoCgZHNSC9rjwIlmbXG5sUuorR5ndfHAIlJ8pVStxvjXHbNvtUg==", + "requires": {} + }, "@mswjs/data": { "version": "0.16.2", "resolved": "https://registry.npmjs.org/@mswjs/data/-/data-0.16.2.tgz", @@ -14202,6 +14263,11 @@ } } }, + "jsep": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/jsep/-/jsep-1.4.0.tgz", + "integrity": "sha512-B7qPcEVE3NVkmSJbaYxvv4cHkVW7DQsZz13pUMrfS8z8Q/BuShN+gcTXrUlPiGqM2/t/EEaI030bpxMqY8gMlw==" + }, "jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", @@ -14214,14 +14280,14 @@ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" }, "json-rules-engine": { - "version": "6.6.0", - "resolved": "https://registry.npmjs.org/json-rules-engine/-/json-rules-engine-6.6.0.tgz", - "integrity": "sha512-jJ4eVCPnItetPiU3fTIzrrl3d2zeIXCcCy11dwWhN72YXBR2mByV1Vfbrvt6y2n+VFmxc6rtL/XhDqLKIwBx6g==", + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/json-rules-engine/-/json-rules-engine-7.2.1.tgz", + "integrity": "sha512-WcAlEsFbUwnu2K++50QMpnujIn4icEBNZIMydqA6CbwE/0Dtjsq6BSEKiQlQlXirLaCXGqvXFQPCIkAWJhBZCg==", "requires": { "clone": "^2.1.2", "eventemitter2": "^6.4.4", "hash-it": "^6.0.0", - "jsonpath-plus": "^7.2.0" + "jsonpath-plus": "^10.2.0" } }, "json-schema-traverse": { @@ -14249,9 +14315,14 @@ "dev": true }, "jsonpath-plus": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-7.2.0.tgz", - "integrity": "sha512-zBfiUPM5nD0YZSBT/o/fbCUlCcepMIdP0CJZxM1+KgA4f2T206f6VAg9e7mX35+KlMaIc5qXW34f3BnwJ3w+RA==" + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-10.2.0.tgz", + "integrity": "sha512-T9V+8iNYKFL2n2rF+w02LBOT2JjDnTjioaNFrxRy0Bv1y/hNsqR/EBK7Ojy2ythRHwmz2cRIls+9JitQGZC/sw==", + "requires": { + "@jsep-plugin/assignment": "^1.3.0", + "@jsep-plugin/regex": "^1.0.4", + "jsep": "^1.4.0" + } }, "jsx-ast-utils": { "version": "3.3.5", @@ -14852,12 +14923,20 @@ } }, "onroute-policy-engine": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/onroute-policy-engine/-/onroute-policy-engine-0.7.1.tgz", - "integrity": "sha512-6kgEQp4/JKmU5DJzeh+Kplth4g15DuRR37/9c4yMqgCKs1Y0rEzfbsnm4z4odNia58c/9zCNQyupqIOuT9/9fQ==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/onroute-policy-engine/-/onroute-policy-engine-1.0.0.tgz", + "integrity": "sha512-YCGR0fQot7mpMOW/NyocAnwucSLs2DJgq6fS8IjiE4BhSWyFOrbdu+iaJ1xd0EZMMSainR+HCQnk67rZlRMntA==", "requires": { - "dayjs": "^1.11.10", - "json-rules-engine": "^6.5.0" + "dayjs": "^1.11.13", + "json-rules-engine": "^7.2.1", + "semver": "^7.6.3" + }, + "dependencies": { + "semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==" + } } }, "optionator": { diff --git a/frontend/package.json b/frontend/package.json index b74462188..41bf21a1e 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -21,7 +21,7 @@ "material-react-table": "^2.13.3", "mui-nested-menu": "^3.4.0", "oidc-client-ts": "^3.1.0", - "onroute-policy-engine": "^0.7.1", + "onroute-policy-engine": "^1.0.0", "react": "^18.3.1", "react-dom": "^18.3.1", "react-error-boundary": "^4.1.2", From d27027f0b41147da5af33cc7a58c935874cee695 Mon Sep 17 00:00:00 2001 From: gchauhan-aot <113390759+gchauhan-aot@users.noreply.github.com> Date: Mon, 16 Dec 2024 12:44:13 -0700 Subject: [PATCH 23/25] Add left join to select query for remove from cart (#1716) --- vehicles/src/modules/shopping-cart/shopping-cart.service.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/vehicles/src/modules/shopping-cart/shopping-cart.service.ts b/vehicles/src/modules/shopping-cart/shopping-cart.service.ts index d7ad5c683..316fab05e 100644 --- a/vehicles/src/modules/shopping-cart/shopping-cart.service.ts +++ b/vehicles/src/modules/shopping-cart/shopping-cart.service.ts @@ -323,7 +323,8 @@ export class ShoppingCartService { } else { const selectResult = await this.applicationRepository .createQueryBuilder('application') - .where('permitId IN (:...applicationIds)', { + .leftJoin('application.company', 'company') + .where('application.permitId IN (:...applicationIds)', { applicationIds, }) .andWhere('company.companyId = :companyId', { From 78adde152bec439c795591599d87f69fa8a1f437 Mon Sep 17 00:00:00 2001 From: glen-aot <160973940+glen-aot@users.noreply.github.com> Date: Mon, 16 Dec 2024 11:52:39 -0800 Subject: [PATCH 24/25] ORV2-3187 - Disallow non-numeric characters in transaction ID field on refund screen (#1712) Co-authored-by: GlenAOT <160973940+GlenAOT@users.noreply.github.com> --- .../common/constants/validation_messages.json | 7 +++++ .../src/common/helpers/validationMessages.ts | 6 +++++ .../permits/pages/Refund/RefundPage.tsx | 26 ++++++++++++++++++- 3 files changed, 38 insertions(+), 1 deletion(-) diff --git a/frontend/src/common/constants/validation_messages.json b/frontend/src/common/constants/validation_messages.json index c3843863a..b4fa19427 100644 --- a/frontend/src/common/constants/validation_messages.json +++ b/frontend/src/common/constants/validation_messages.json @@ -158,5 +158,12 @@ }, "powerUnit": { "required": "A Power Unit must be added." + }, + "transactionId": { + "defaultMessage": "Invalid transaction ID", + "length": { + "messageTemplate": "Transaction ID length must be no longer than :max characters", + "placeholders": [":max"] + } } } \ No newline at end of file diff --git a/frontend/src/common/helpers/validationMessages.ts b/frontend/src/common/helpers/validationMessages.ts index bd00e02ee..be1690ed5 100644 --- a/frontend/src/common/helpers/validationMessages.ts +++ b/frontend/src/common/helpers/validationMessages.ts @@ -122,6 +122,12 @@ export const invalidDBALength = (min: number, max: number) => { return replacePlaceholders(messageTemplate, placeholders, min, max); }; +export const invalidTranactionIdLength = (max: number) => { + const { messageTemplate, placeholders } = + validationMessages.transactionId.length; + return replacePlaceholders(messageTemplate, placeholders, max); +}; + export const uploadSizeExceeded = () => { return validationMessages.upload.fileSize.exceeded; }; diff --git a/frontend/src/features/permits/pages/Refund/RefundPage.tsx b/frontend/src/features/permits/pages/Refund/RefundPage.tsx index 6ab9f63cf..d741d7a2c 100644 --- a/frontend/src/features/permits/pages/Refund/RefundPage.tsx +++ b/frontend/src/features/permits/pages/Refund/RefundPage.tsx @@ -16,7 +16,10 @@ import { import "./RefundPage.scss"; import { getPermitTypeName, PermitType } from "../../types/PermitType"; import { RefundFormData } from "./types/RefundFormData"; -import { requiredMessage } from "../../../../common/helpers/validationMessages"; +import { + invalidTranactionIdLength, + requiredMessage, +} from "../../../../common/helpers/validationMessages"; import { getErrorMessage } from "../../../../common/components/form/CustomFormComponents"; import { PermitHistory } from "../../types/PermitHistory"; import { TransactionHistoryTable } from "./components/TransactionHistoryTable"; @@ -66,6 +69,9 @@ const transactionIdRules = { requiredMessage() ); }, + validateTransactionId: (value: Optional) => { + return (value && value.length <= 15) || invalidTranactionIdLength(15); + }, }, }; @@ -207,6 +213,23 @@ export const RefundPage = ({ clearErrors("transactionId"); }; + /** + * Function to prevent non-numeric input as the user types + */ + const filterNonNumericValue = (input?: string) => { + if (!input) return ""; + // only allows 0-9 inputs + return input.replace(/[^\d]/g, ""); + }; + + // Everytime the user types, update the format of the users input + const handleTransactionIdChange = ( + e: React.ChangeEvent, + ) => { + const formattedValue = filterNonNumericValue(e.target.value); + setValue("transactionId", formattedValue, { shouldValidate: true }); + }; + const handleFinish = () => { const formValues = getValues(); onFinish(formValues); @@ -348,6 +371,7 @@ export const RefundPage = ({ "transactionId", transactionIdRules, )} + onChange={handleTransactionIdChange} /> {invalid ? ( Date: Mon, 16 Dec 2024 12:07:43 -0800 Subject: [PATCH 25/25] ORV2-3201 - Allow Staff to use date picker to select start date in past (#1711) Co-authored-by: GlenAOT <160973940+GlenAOT@users.noreply.github.com> --- .../subFormComponents/CustomDatePicker.tsx | 66 +++++++++++-------- .../common/constants/validation_messages.json | 3 +- .../src/common/helpers/validationMessages.ts | 3 + .../dashboard/ApplicationStepPage.tsx | 39 ++++++----- .../components/form/PermitForm.tsx | 11 +--- 5 files changed, 67 insertions(+), 55 deletions(-) diff --git a/frontend/src/common/components/form/subFormComponents/CustomDatePicker.tsx b/frontend/src/common/components/form/subFormComponents/CustomDatePicker.tsx index d056234bd..d8ab93fd0 100644 --- a/frontend/src/common/components/form/subFormComponents/CustomDatePicker.tsx +++ b/frontend/src/common/components/form/subFormComponents/CustomDatePicker.tsx @@ -1,12 +1,9 @@ import { LocalizationProvider } from "@mui/x-date-pickers/LocalizationProvider"; import { AdapterDayjs } from "@mui/x-date-pickers/AdapterDayjs"; import { DatePicker, DateValidationError } from "@mui/x-date-pickers"; -import { Dayjs } from "dayjs"; +import dayjs, { Dayjs } from "dayjs"; import { Box, FormControl, FormHelperText, FormLabel } from "@mui/material"; -import { - useState, - useEffect, -} from "react"; +import { useState, useEffect } from "react"; import { FieldValues, @@ -18,13 +15,18 @@ import { } from "react-hook-form"; import "./CustomDatePicker.scss"; -import { Nullable, ORBC_FormTypes, RequiredOrNull } from "../../../types/common"; +import { + Nullable, + ORBC_FormTypes, + RequiredOrNull, +} from "../../../types/common"; import { getStartOfDate, now } from "../../../helpers/formatDate"; import { getErrorMessage } from "../CustomFormComponents"; import { invalidDate, invalidMaxStartDate, invalidPastStartDate, + warnPastStartDate, } from "../../../helpers/validationMessages"; export const PAST_START_DATE_STATUSES = { @@ -34,7 +36,7 @@ export const PAST_START_DATE_STATUSES = { } as const; export type PastStartDateStatus = - typeof PAST_START_DATE_STATUSES[keyof typeof PAST_START_DATE_STATUSES]; + (typeof PAST_START_DATE_STATUSES)[keyof typeof PAST_START_DATE_STATUSES]; // Properties of the onrouteBC customized Date Picker MUI component/ export interface CustomDatePickerProps { @@ -101,25 +103,28 @@ export const CustomDatePicker = ({ validate: { ...rules.validate, disablePast: (value: Nullable) => { - return pastStartDateStatus !== PAST_START_DATE_STATUSES.FAIL - || (dateError !== "disablePast" && dateError !== "minDate") - || !value - || (value.isAfter(getStartOfDate(now()))) - || (value.isSame(getStartOfDate(now()))) - || invalidPastStartDate(); + return ( + pastStartDateStatus !== PAST_START_DATE_STATUSES.FAIL || + (dateError !== "disablePast" && dateError !== "minDate") || + !value || + value.isAfter(getStartOfDate(now())) || + value.isSame(getStartOfDate(now())) || + invalidPastStartDate() + ); }, maxDate: (value: Nullable) => { - return !maxDaysInFuture - || (dateError !== "maxDate") - || !maxDate - || !value - || (value.isBefore(getStartOfDate(maxDate))) - || (value.isSame(getStartOfDate(maxDate))) - || invalidMaxStartDate(maxDaysInFuture); + return ( + !maxDaysInFuture || + dateError !== "maxDate" || + !maxDate || + !value || + value.isBefore(getStartOfDate(maxDate)) || + value.isSame(getStartOfDate(maxDate)) || + invalidMaxStartDate(maxDaysInFuture) + ); }, invalidDate: () => { - return (dateError !== "invalidDate") - || invalidDate(); + return dateError !== "invalidDate" || invalidDate(); }, }, }; @@ -137,12 +142,13 @@ export const CustomDatePicker = ({ // Revalidate whenever the date picker error is updated (new error or no errors) trigger(name); }, [dateError]); - + const rulesViolationMessage = getErrorMessage(errors, name); const startDateWarningMessage = - (dateError === "minDate" || dateError === "disablePast") - && (pastStartDateStatus === PAST_START_DATE_STATUSES.WARNING) - ? invalidPastStartDate() : null; + dayjs().isAfter(value, "day") && + pastStartDateStatus === PAST_START_DATE_STATUSES.WARNING + ? warnPastStartDate() + : null; return ( @@ -173,9 +179,13 @@ export const CustomDatePicker = ({ disabled={disabled} readOnly={readOnly} onChange={(value) => handleDateChange(value)} - disablePast={pastStartDateStatus !== PAST_START_DATE_STATUSES.ALLOWED} + disablePast={ + pastStartDateStatus === PAST_START_DATE_STATUSES.FAIL + } maxDate={maxDate} - onError={(dateValidationError) => setDateError(dateValidationError)} + onError={(dateValidationError) => + setDateError(dateValidationError) + } slotProps={{ textField: { inputProps: { diff --git a/frontend/src/common/constants/validation_messages.json b/frontend/src/common/constants/validation_messages.json index b4fa19427..96ea80bb9 100644 --- a/frontend/src/common/constants/validation_messages.json +++ b/frontend/src/common/constants/validation_messages.json @@ -36,7 +36,8 @@ "defaultMessage": "Your date is not valid", "start": { "past": { - "defaultMessage": "Start Date cannot be in the past." + "defaultMessage": "Start Date cannot be in the past.", + "warningMessage": "Start Date is in the past." }, "max": { "messageTemplate": "Start Date must be within :max days.", diff --git a/frontend/src/common/helpers/validationMessages.ts b/frontend/src/common/helpers/validationMessages.ts index be1690ed5..c0b5e4426 100644 --- a/frontend/src/common/helpers/validationMessages.ts +++ b/frontend/src/common/helpers/validationMessages.ts @@ -44,6 +44,9 @@ export const invalidDate = () => validationMessages.date.defaultMessage; export const invalidPastStartDate = () => validationMessages.date.start.past.defaultMessage; +export const warnPastStartDate = () => + validationMessages.date.start.past.warningMessage; + export const invalidMaxStartDate = (max: number) => { const { messageTemplate, placeholders } = validationMessages.date.start.max; return replacePlaceholders(messageTemplate, placeholders, max); diff --git a/frontend/src/features/permits/components/dashboard/ApplicationStepPage.tsx b/frontend/src/features/permits/components/dashboard/ApplicationStepPage.tsx index 2d1a59d8d..a813011e8 100644 --- a/frontend/src/features/permits/components/dashboard/ApplicationStepPage.tsx +++ b/frontend/src/features/permits/components/dashboard/ApplicationStepPage.tsx @@ -12,7 +12,10 @@ import { Loading } from "../../../../common/pages/Loading"; import { ApplicationInQueueReview } from "../../../queue/components/ApplicationInQueueReview"; import { useApplicationForStepsQuery } from "../../hooks/hooks"; import { PERMIT_STATUSES } from "../../types/PermitStatus"; -import { applyWhenNotNullable, getDefaultRequiredVal } from "../../../../common/helpers/util"; +import { + applyWhenNotNullable, + getDefaultRequiredVal, +} from "../../../../common/helpers/util"; import { useFeatureFlagsQuery } from "../../../../common/hooks/hooks"; import { DEFAULT_PERMIT_TYPE, @@ -54,8 +57,8 @@ export const ApplicationStepPage = ({ const companyId: number = getDefaultRequiredVal( 0, - applyWhenNotNullable(id => Number(id), companyIdParam), - applyWhenNotNullable(id => Number(id), getCompanyIdFromSession()), + applyWhenNotNullable((id) => Number(id), companyIdParam), + applyWhenNotNullable((id) => Number(id), getCompanyIdFromSession()), ); const { data: featureFlags } = useFeatureFlagsQuery(); @@ -98,14 +101,9 @@ export const ApplicationStepPage = ({ // Currently onRouteBC only handles TROS and TROW permits, and STOS only if feature flag is enabled const isPermitTypeAllowed = () => { - const allowedPermitTypes: string[] = enableSTOS ? [ - PERMIT_TYPES.TROS, - PERMIT_TYPES.TROW, - PERMIT_TYPES.STOS, - ] : [ - PERMIT_TYPES.TROS, - PERMIT_TYPES.TROW, - ]; + const allowedPermitTypes: string[] = enableSTOS + ? [PERMIT_TYPES.TROS, PERMIT_TYPES.TROW, PERMIT_TYPES.STOS] + : [PERMIT_TYPES.TROS, PERMIT_TYPES.TROW]; return allowedPermitTypes.includes(applicationPermitType); }; @@ -117,19 +115,18 @@ export const ApplicationStepPage = ({ !isInvalidApplication && (!applicationData?.permitStatus || applicationData?.permitStatus === PERMIT_STATUSES.IN_PROGRESS || - applicationData?.permitStatus === PERMIT_STATUSES.IN_QUEUE - ) + applicationData?.permitStatus === PERMIT_STATUSES.IN_QUEUE) ); }; const renderApplicationStep = () => { if (applicationStep === APPLICATION_STEPS.REVIEW) { return applicationStepContext === APPLICATION_STEP_CONTEXTS.QUEUE ? ( - - ) : ( - + ) : ( + ); } @@ -141,7 +138,13 @@ export const ApplicationStepPage = ({ ); }; - if (isInvalidApplication || !isValidApplicationStatus() || !companyId || !isPermitTypeAllowed()) { + if ( + isInvalidApplication || + !isValidApplicationStatus() || + !companyId || + !isPermitTypeAllowed() + ) { + console.error("The application cannot be displayed or edited"); return ; } diff --git a/frontend/src/features/permits/pages/Application/components/form/PermitForm.tsx b/frontend/src/features/permits/pages/Application/components/form/PermitForm.tsx index 2cbd6d20a..7eb88a20d 100644 --- a/frontend/src/features/permits/pages/Application/components/form/PermitForm.tsx +++ b/frontend/src/features/permits/pages/Application/components/form/PermitForm.tsx @@ -65,9 +65,7 @@ export const PermitForm = () => { { selectedCommodityType={commodityType} onChangeCommodityType={onChangeCommodityType} /> - + { onUpdateHighwaySequence={onUpdateHighwaySequence} /> - + {isAmendAction ? ( <>