diff --git a/README.md b/README.md index 9f70f6de..96e5d085 100644 --- a/README.md +++ b/README.md @@ -61,7 +61,7 @@ Angular domain libraries Other: -- domainTest - creates a project in a grouping folder for E2E tests related to that grouping folder. By default, E2E projects are created as applications. This generator moves the created E2E cypress project into the grouping folder. For example, if you run this generator in the shared/table domain grouping folder it will create a folder \_e2e. This will create a project called: e2e-shared-table which would have the default e2e tas and hold the cypress specifc config including test specs. +- domainTest - creates a project in a grouping folder for E2E tests related to that grouping folder. By default, E2E projects are created as applications. This generator moves the created E2E cypress project into the grouping folder. For example, if you run this generator in the shared/table domain grouping folder it will create a folder \.e2e. This will create a project called: e2e-shared-table which would have the default e2e tas and hold the cypress specifc config including test specs. - mockFile - the naive approach of using mock files in your tests involves exporting them in the index.ts. This will cause the mock files to be included in the build output. As mock files are only used in the tests, this makes the build output larger than neccessary. This generator creates a seperate tsconfig path for the mock files which allows them to be imported into other libraies and not be included in the build output ## tags diff --git a/e2e/domain/cypress/domain-test/jest.config.ts b/e2e/domain/cypress/domain-test/jest.config.ts index 5d5c448c..1cdf70f8 100644 --- a/e2e/domain/cypress/domain-test/jest.config.ts +++ b/e2e/domain/cypress/domain-test/jest.config.ts @@ -11,7 +11,6 @@ module.exports = { testEnvironment: 'node', moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx'], preset: '../../../../jest.preset.js', - testSequencer: './test-sequencer.js', setupFilesAfterEnv: ['./jest.setup.ts'], maxWorkers: 1, }; diff --git a/e2e/domain/cypress/domain-test/src/domain-test.spec.ts b/e2e/domain/cypress/domain-test/src/domain-test.spec.ts index 52b4c95d..364dffd8 100644 --- a/e2e/domain/cypress/domain-test/src/domain-test.spec.ts +++ b/e2e/domain/cypress/domain-test/src/domain-test.spec.ts @@ -8,25 +8,30 @@ describe('domainTest e2e', () => { createProject(); await runNxCommandAsync(`generate @srleecode/domain:ng-add`); await runNxCommandAsync( - `generate @srleecode/domain:appGroupingFolder --name test-app --applicationType ng` - ); + `generate @srleecode/domain:appGroupingFolder --name test-app --applicationType ng`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); + await runNxCommandAsync( - `generate @srleecode/domain:domainGroupingFolder --name test-domain --groupingFolder libs/ng-test-app` - ); + `generate @srleecode/domain:domainGroupingFolder --name test-domain --groupingFolder libs/ng-test-app`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); }, 240000); it('should create e2e project for domain', async () => { await runNxCommandAsync( - `generate @srleecode/domain:domainTest --groupingFolder ${groupingFolder}` - ); - checkFilesExist(`${groupingFolder}/_e2e/cypress.config.ts`); - checkFilesExist(`${groupingFolder}/_e2e/project.json`); + `generate @srleecode/domain:domainTest --groupingFolder ${groupingFolder}`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); + checkFilesExist(`${groupingFolder}/.e2e/cypress.config.ts`); + checkFilesExist(`${groupingFolder}/.e2e/project.json`); }); it('should create ct project for domain', async () => { await runNxCommandAsync( - `generate @srleecode/domain:domainTest --groupingFolder ${groupingFolder} --type ct` - ); - checkFilesExist(`${groupingFolder}/_ct/cypress.config.ts`); - checkFilesExist(`${groupingFolder}/_ct/project.json`); + `generate @srleecode/domain:domainTest --groupingFolder ${groupingFolder} --type ct`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); + checkFilesExist(`${groupingFolder}/.ct/cypress.config.ts`); + checkFilesExist(`${groupingFolder}/.ct/project.json`); }); }); diff --git a/e2e/domain/cypress/domain-test/test-sequencer.js b/e2e/domain/cypress/domain-test/test-sequencer.js deleted file mode 100644 index ba729cd9..00000000 --- a/e2e/domain/cypress/domain-test/test-sequencer.js +++ /dev/null @@ -1,18 +0,0 @@ -const Sequencer = require('@jest/test-sequencer').default; -const path = require('path'); - -class CustomSequencer extends Sequencer { - testsOrder = { - 'domain-test.spec.ts': 0 - }; - sort(tests) { - const orderedTests = []; - tests.forEach((test) => { - const fileName = path.basename(test.path); - orderedTests[this.testsOrder[fileName]] = test; - }); - return orderedTests; - } -} - -module.exports = CustomSequencer; \ No newline at end of file diff --git a/e2e/domain/front-end/angular/src/application-layer.spec.ts b/e2e/domain/front-end/angular/src/application-layer.spec.ts index ded13e9a..621c3a12 100644 --- a/e2e/domain/front-end/angular/src/application-layer.spec.ts +++ b/e2e/domain/front-end/angular/src/application-layer.spec.ts @@ -1,4 +1,3 @@ -import { logger } from '@nx/devkit'; import { createProject } from '../../../utils/util'; import { checkFilesExist, runNxCommandAsync } from '@nx/plugin/testing'; @@ -8,21 +7,20 @@ describe('application-layer', () => { createProject(); await runNxCommandAsync(`generate @srleecode/domain:ng-add`); await runNxCommandAsync( - `generate @srleecode/domain:appGroupingFolder --name test-app --applicationType ng` - ); + `generate @srleecode/domain:appGroupingFolder --name test-app --applicationType ng`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); await runNxCommandAsync( - `generate @srleecode/domain:domainGroupingFolder --name test-domain --groupingFolder libs/ng-test-app` - ); + `generate @srleecode/domain:domainGroupingFolder --name test-domain --groupingFolder libs/ng-test-app`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); }, 240000); it('should create application layer library', async () => { await runNxCommandAsync( - `generate @srleecode/domain:ngApplicationLayer --groupingFolder ${groupingFolder}` - ).catch((e) => { - logger.error(e.message); - logger.error(e.stack); - throw e; - }); + `generate @srleecode/domain:ngApplicationLayer --groupingFolder ${groupingFolder}`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); checkFilesExist(`${groupingFolder}/application/src/index.ts`); }); }); diff --git a/e2e/domain/front-end/angular/src/component.spec.ts b/e2e/domain/front-end/angular/src/component.spec.ts index f4375ca4..6ee3c696 100644 --- a/e2e/domain/front-end/angular/src/component.spec.ts +++ b/e2e/domain/front-end/angular/src/component.spec.ts @@ -14,8 +14,9 @@ describe('component', () => { it('should create ui component library', async () => { await runNxCommandAsync( - `generate @srleecode/domain:ngComponent --groupingFolder ${groupingFolder} --type ui --name test-example` - ); + `generate @srleecode/domain:ngComponent --groupingFolder ${groupingFolder} --type ui --name test-example`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); checkFilesExist( `${groupingFolder}/presentation/src/lib/ui/test-example/test-example.component.ts` ); diff --git a/e2e/domain/front-end/angular/src/data-access-layer.spec.ts b/e2e/domain/front-end/angular/src/data-access-layer.spec.ts index 2a7875dc..e2807f0e 100644 --- a/e2e/domain/front-end/angular/src/data-access-layer.spec.ts +++ b/e2e/domain/front-end/angular/src/data-access-layer.spec.ts @@ -5,8 +5,9 @@ describe('data-access-layer', () => { it('should create data access layer library', async () => { await runNxCommandAsync( - `generate @srleecode/domain:ngDataAccessLayer --groupingFolder ${groupingFolder}` - ); + `generate @srleecode/domain:ngDataAccessLayer --groupingFolder ${groupingFolder}`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); checkFilesExist(`${groupingFolder}/data-access/src/index.ts`); }); }); diff --git a/e2e/domain/front-end/angular/src/directive.spec.ts b/e2e/domain/front-end/angular/src/directive.spec.ts index 951d3cc4..fef269e0 100644 --- a/e2e/domain/front-end/angular/src/directive.spec.ts +++ b/e2e/domain/front-end/angular/src/directive.spec.ts @@ -5,8 +5,9 @@ describe('directive', () => { it('should create directive library', async () => { await runNxCommandAsync( - `generate @srleecode/domain:ngDirective --groupingFolder ${groupingFolder} --name test-example` - ); + `generate @srleecode/domain:ngDirective --groupingFolder ${groupingFolder} --name test-example`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); checkFilesExist( `${groupingFolder}/presentation/src/lib/directive/test-example/test-example.directive.ts` ); diff --git a/e2e/domain/front-end/angular/src/domain-layer.spec.ts b/e2e/domain/front-end/angular/src/domain-layer.spec.ts index 70f8d6e2..0a8cb6cb 100644 --- a/e2e/domain/front-end/angular/src/domain-layer.spec.ts +++ b/e2e/domain/front-end/angular/src/domain-layer.spec.ts @@ -5,8 +5,9 @@ describe('domain-layer', () => { it('should create domain layer library', async () => { await runNxCommandAsync( - `generate @srleecode/domain:ngDomainLayer --groupingFolder ${groupingFolder}` - ); + `generate @srleecode/domain:ngDomainLayer --groupingFolder ${groupingFolder}`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); checkFilesExist(`${groupingFolder}/domain/src/index.ts`); }); }); diff --git a/e2e/domain/front-end/angular/src/infrastructure-layer.spec.ts b/e2e/domain/front-end/angular/src/infrastructure-layer.spec.ts index 68a967d0..677402b8 100644 --- a/e2e/domain/front-end/angular/src/infrastructure-layer.spec.ts +++ b/e2e/domain/front-end/angular/src/infrastructure-layer.spec.ts @@ -5,8 +5,9 @@ describe('infrastructure-layer', () => { it('should create infrastructure layer library', async () => { await runNxCommandAsync( - `generate @srleecode/domain:ngInfrastructureLayer --groupingFolder ${groupingFolder}` - ); + `generate @srleecode/domain:ngInfrastructureLayer --groupingFolder ${groupingFolder}`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); checkFilesExist(`${groupingFolder}/infrastructure/src/index.ts`); }); }); diff --git a/e2e/domain/front-end/angular/src/remove-library.spec.ts b/e2e/domain/front-end/angular/src/remove-library.spec.ts index 5a44e2ca..0c659f0e 100644 --- a/e2e/domain/front-end/angular/src/remove-library.spec.ts +++ b/e2e/domain/front-end/angular/src/remove-library.spec.ts @@ -5,8 +5,9 @@ describe('remove-library', () => { it('should remove domain library', async () => { await runNxCommandAsync( - `generate @srleecode/domain:ngRemoveLibrary --libraryFolder ${libraryFolder}` - ); + `generate @srleecode/domain:ngRemoveLibrary --libraryFolder ${libraryFolder}`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); expect(fileExists(`${libraryFolder}/src/index.ts`)).toBe(false); }); }); diff --git a/e2e/domain/front-end/angular/src/util.spec.ts b/e2e/domain/front-end/angular/src/util.spec.ts index 6e518218..04a1e581 100644 --- a/e2e/domain/front-end/angular/src/util.spec.ts +++ b/e2e/domain/front-end/angular/src/util.spec.ts @@ -5,8 +5,9 @@ describe('util', () => { it('should create util library', async () => { await runNxCommandAsync( - `generate @srleecode/domain:ngUtilLayer --groupingFolder ${groupingFolder}` - ); + `generate @srleecode/domain:ngUtilLayer --groupingFolder ${groupingFolder}`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); checkFilesExist(`${groupingFolder}/util/src/index.ts`); }); }); diff --git a/e2e/domain/grouping-folder/src/app-grouping-folder.spec.ts b/e2e/domain/grouping-folder/src/app-grouping-folder.spec.ts index 143b6b1d..179c1df1 100644 --- a/e2e/domain/grouping-folder/src/app-grouping-folder.spec.ts +++ b/e2e/domain/grouping-folder/src/app-grouping-folder.spec.ts @@ -15,8 +15,9 @@ describe('app grouping folder', () => { it('should create directory with language prefixed to name', async () => { await runNxCommandAsync( - `generate @srleecode/domain:appGroupingFolder --name test-app --applicationType ng` - ); + `generate @srleecode/domain:appGroupingFolder --name test-app --applicationType ng`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); checkFilesExist('libs/ng-test-app'); }); }); diff --git a/e2e/domain/grouping-folder/src/domain-grouping-folder.spec.ts b/e2e/domain/grouping-folder/src/domain-grouping-folder.spec.ts index 2014f96a..273080dc 100644 --- a/e2e/domain/grouping-folder/src/domain-grouping-folder.spec.ts +++ b/e2e/domain/grouping-folder/src/domain-grouping-folder.spec.ts @@ -3,8 +3,9 @@ import { checkFilesExist, runNxCommandAsync } from '@nx/plugin/testing'; describe('domain grouping folder', () => { it('should create directory', async () => { await runNxCommandAsync( - `generate @srleecode/domain:domainGroupingFolder --name test-domain --groupingFolder libs/ng-test-app` - ); + `generate @srleecode/domain:domainGroupingFolder --name test-domain --groupingFolder libs/ng-test-app`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); checkFilesExist('libs/ng-test-app/test-domain'); }); }); diff --git a/e2e/domain/grouping-folder/src/move.spec.ts b/e2e/domain/grouping-folder/src/move.spec.ts index dc85feea..2238e465 100644 --- a/e2e/domain/grouping-folder/src/move.spec.ts +++ b/e2e/domain/grouping-folder/src/move.spec.ts @@ -13,11 +13,13 @@ describe('move', () => { `generate @srleecode/domain:ngUtilLayer --groupingFolder ${groupingFolder}` ); await runNxCommandAsync( - `generate @srleecode/domain:mockFile --projectName ng-test-app-test-domain-util --mockFileName test-example` - ); + `generate @srleecode/domain:mockFile --projectName ng-test-app-test-domain-util --mockFileName test-example`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); await runNxCommandAsync( - `generate @srleecode/domain:moveGroupingFolder --groupingFolder ${groupingFolder} --destination ${movedDomainGroupingFolder}` - ); + `generate @srleecode/domain:moveGroupingFolder --groupingFolder ${groupingFolder} --destination ${movedDomainGroupingFolder}`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); }, 240000); it('should move domain grouping folder', async () => { diff --git a/e2e/domain/grouping-folder/src/remove.spec.ts b/e2e/domain/grouping-folder/src/remove.spec.ts index 844913e1..fcbe458d 100644 --- a/e2e/domain/grouping-folder/src/remove.spec.ts +++ b/e2e/domain/grouping-folder/src/remove.spec.ts @@ -4,8 +4,9 @@ describe('remove', () => { const groupingFolder = 'libs/ng-test-app/new-domain'; beforeAll(async () => { await runNxCommandAsync( - `generate @srleecode/domain:removeGroupingFolder --groupingFolder ${groupingFolder}` - ); + `generate @srleecode/domain:removeGroupingFolder --groupingFolder ${groupingFolder}`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); }, 240000); it('should remove domain grouping folder', async () => { diff --git a/e2e/domain/mock-file/src/mock-file.spec.ts b/e2e/domain/mock-file/src/mock-file.spec.ts index c01033b8..c401b15d 100644 --- a/e2e/domain/mock-file/src/mock-file.spec.ts +++ b/e2e/domain/mock-file/src/mock-file.spec.ts @@ -7,20 +7,24 @@ describe('mockFile e2e', () => { createProject(); await runNxCommandAsync(`generate @srleecode/domain:ng-add`); await runNxCommandAsync( - `generate @srleecode/domain:appGroupingFolder --name test-app --applicationType ng` - ); + `generate @srleecode/domain:appGroupingFolder --name test-app --applicationType ng`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); await runNxCommandAsync( - `generate @srleecode/domain:domainGroupingFolder --name test-domain --groupingFolder libs/ng-test-app` - ); + `generate @srleecode/domain:domainGroupingFolder --name test-domain --groupingFolder libs/ng-test-app`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); await runNxCommandAsync( - `generate @srleecode/domain:ngUtilLayer --groupingFolder ${groupingFolder}` - ); + `generate @srleecode/domain:ngUtilLayer --groupingFolder ${groupingFolder}`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); }, 240000); it('should add mock file to domain library', async () => { await runNxCommandAsync( - `generate @srleecode/domain:mockFile --projectName ng-test-app-test-domain-util --mockFileName test-example` - ); + `generate @srleecode/domain:mockFile --projectName ng-test-app-test-domain-util --mockFileName test-example`, + { silenceError: true } + ).then((rsp) => console.log(rsp)); checkFilesExist(`${groupingFolder}/util/src/testing.ts`); }); }); diff --git a/migrations.json b/migrations.json index 24e99ebc..d53422dd 100644 --- a/migrations.json +++ b/migrations.json @@ -2,14 +2,19 @@ "migrations": [ { "cli": "nx", - "version": "16.7.0-beta.6", - "requires": { - "@angular/core": ">=16.2.0" - }, - "description": "Update the @angular/cli package version to ~16.2.0.", - "factory": "./src/migrations/update-16-7-0/update-angular-cli", - "package": "@nx/angular", - "name": "update-angular-cli-version-16-2-0" + "version": "16.9.0-beta.1", + "description": "Replace imports of Module Federation utils frm @nx/devkit to @nx/webpack", + "implementation": "./src/migrations/update-16-9-0/migrate-mf-util-usage", + "package": "@nx/devkit", + "name": "update-16-9-0-migrate-mf-usage-to-webpack" + }, + { + "cli": "nx", + "version": "16.8.2-beta.0", + "description": "Remove invalid options (strict, noInterop) for ES6 type modules.", + "factory": "./src/migrations/update-16-8-2/update-swcrc", + "package": "@nx/js", + "name": "16-8-2-update-swcrc" } ] } diff --git a/package-lock.json b/package-lock.json index 55735059..7423a363 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,16 +1,16 @@ { "name": "@srleecode/domain", - "version": "16.6.0", + "version": "16.10.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@srleecode/domain", - "version": "16.6.0", + "version": "16.10.0", "license": "MIT", "dependencies": { - "@angular/core": "16.2.1", - "@nx/devkit": "16.7.1", + "@angular/core": "16.2.9", + "@nx/devkit": "16.10.0", "@schematics/angular": "16.2.0", "@storybook/builder-webpack5": "7.0.18", "@storybook/core-server": "7.2.1", @@ -23,18 +23,18 @@ "@angular-devkit/schematics": "16.2.0", "@commitlint/cli": "^16.1.0", "@commitlint/config-angular": "^16.0.0", - "@nx/angular": "16.7.1", - "@nx/cypress": "16.7.1", - "@nx/eslint-plugin": "16.7.1", - "@nx/jest": "16.7.1", - "@nx/js": "16.7.1", - "@nx/linter": "16.7.1", - "@nx/node": "16.7.1", - "@nx/plugin": "16.7.1", - "@nx/storybook": "16.7.1", - "@nx/workspace": "16.7.1", - "@swc-node/register": "^1.4.2", - "@swc/core": "^1.2.173", + "@nx/angular": "16.10.0", + "@nx/cypress": "16.10.0", + "@nx/eslint-plugin": "16.10.0", + "@nx/jest": "16.10.0", + "@nx/js": "16.10.0", + "@nx/linter": "16.10.0", + "@nx/node": "16.10.0", + "@nx/plugin": "16.10.0", + "@nx/storybook": "16.10.0", + "@nx/workspace": "16.10.0", + "@swc-node/register": "1.6.8", + "@swc/core": "1.3.93", "@types/jest": "29.4.0", "@types/node": "18.7.18", "@typescript-eslint/eslint-plugin": "5.60.1", @@ -46,8 +46,8 @@ "husky": "^7.0.4", "jest": "29.5.0", "jest-environment-jsdom": "29.5.0", - "nx": "16.7.1", - "nx-cloud": "16.4.0-beta.1", + "nx": "16.10.0", + "nx-cloud": "16.5.2", "prettier": "2.6.2", "rimraf": "^3.0.2", "ts-jest": "29.1.0", @@ -90,13 +90,13 @@ } }, "node_modules/@angular-devkit/architect": { - "version": "0.1602.0", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1602.0.tgz", - "integrity": "sha512-ZRmUTBeD+uGr605eOHnsovEn6f1mOBI+kxP64DRvagNweX5TN04s3iyQ8jmLSAHQD9ush31LFxv3dVNxv3ceXQ==", + "version": "0.1602.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1602.6.tgz", + "integrity": "sha512-b1NNV3yNg6Rt86ms20bJIroWUI8ihaEwv5k+EoijEXLoMs4eNs5PhqL+QE8rTj+q9pa1gSrWf2blXor2JGwf1g==", "dev": true, "peer": true, "dependencies": { - "@angular-devkit/core": "16.2.0", + "@angular-devkit/core": "16.2.6", "rxjs": "7.8.1" }, "engines": { @@ -105,17 +105,45 @@ "yarn": ">= 1.13.0" } }, + "node_modules/@angular-devkit/architect/node_modules/@angular-devkit/core": { + "version": "16.2.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-16.2.6.tgz", + "integrity": "sha512-iez/8NYXQT6fqVQLlKmZUIRkFUEZ88ACKbTwD4lBmk0+hXW+bQBxI7JOnE3C4zkcM2YeuTXIYsC5SebTKYiR4Q==", + "dev": true, + "peer": true, + "dependencies": { + "ajv": "8.12.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.2.0", + "picomatch": "2.3.1", + "rxjs": "7.8.1", + "source-map": "0.7.4" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, "node_modules/@angular-devkit/build-angular": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-16.2.0.tgz", - "integrity": "sha512-miylwjOqvlKmYrzS84bjRaJrecZxOXH9xsPVvQE8VBe8UKePJjRAL6yyOqXUOGtzlch2YmT98RAnuni7y0FEAw==", + "version": "16.2.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-16.2.6.tgz", + "integrity": "sha512-QdU/q77K1P8CPEEZGxw1QqLcnA9ofboDWS7vcLRBmFmk2zydtLTApbK0P8GNDRbnmROOKkoaLo+xUTDJz9gvPA==", "dev": true, "peer": true, "dependencies": { "@ampproject/remapping": "2.2.1", - "@angular-devkit/architect": "0.1602.0", - "@angular-devkit/build-webpack": "0.1602.0", - "@angular-devkit/core": "16.2.0", + "@angular-devkit/architect": "0.1602.6", + "@angular-devkit/build-webpack": "0.1602.6", + "@angular-devkit/core": "16.2.6", "@babel/core": "7.22.9", "@babel/generator": "7.22.9", "@babel/helper-annotate-as-pure": "7.22.5", @@ -127,7 +155,7 @@ "@babel/runtime": "7.22.6", "@babel/template": "7.22.5", "@discoveryjs/json-ext": "0.5.7", - "@ngtools/webpack": "16.2.0", + "@ngtools/webpack": "16.2.6", "@vitejs/plugin-basic-ssl": "1.0.1", "ansi-colors": "4.1.3", "autoprefixer": "10.4.14", @@ -157,7 +185,7 @@ "parse5-html-rewriting-stream": "7.0.0", "picomatch": "2.3.1", "piscina": "4.0.0", - "postcss": "8.4.27", + "postcss": "8.4.31", "postcss-loader": "7.3.3", "resolve-url-loader": "5.0.0", "rxjs": "7.8.1", @@ -228,6 +256,34 @@ } } }, + "node_modules/@angular-devkit/build-angular/node_modules/@angular-devkit/core": { + "version": "16.2.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-16.2.6.tgz", + "integrity": "sha512-iez/8NYXQT6fqVQLlKmZUIRkFUEZ88ACKbTwD4lBmk0+hXW+bQBxI7JOnE3C4zkcM2YeuTXIYsC5SebTKYiR4Q==", + "dev": true, + "peer": true, + "dependencies": { + "ajv": "8.12.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.2.0", + "picomatch": "2.3.1", + "rxjs": "7.8.1", + "source-map": "0.7.4" + }, + "engines": { + "node": "^16.14.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, "node_modules/@angular-devkit/build-angular/node_modules/@babel/core": { "version": "7.22.9", "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.9.tgz", @@ -732,13 +788,13 @@ "peer": true }, "node_modules/@angular-devkit/build-webpack": { - "version": "0.1602.0", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1602.0.tgz", - "integrity": "sha512-KdSr6iAcO30i/LIGL8mYi+d1buVXuDCp2dptzEJ4vxReOMFJca90KLwb+tVHEqqnDb0WkNfWm8Ii2QYh2FrNyA==", + "version": "0.1602.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1602.6.tgz", + "integrity": "sha512-BJPR6xdq7gRJ6bVWnZ81xHyH75j7lyLbegCXbvUNaM8TWVBkwWsSdqr2NQ717dNLLn5umg58SFpU/pWMq6CxMQ==", "dev": true, "peer": true, "dependencies": { - "@angular-devkit/architect": "0.1602.0", + "@angular-devkit/architect": "0.1602.6", "rxjs": "7.8.1" }, "engines": { @@ -805,9 +861,9 @@ } }, "node_modules/@angular/compiler": { - "version": "16.2.1", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-16.2.1.tgz", - "integrity": "sha512-dPauu+ESn79d66U9nBvnunNuBk/UMqnm7iL9Q31J8OKYN/4vrKbsO57pmULOft/GRAYsE3FdLBH0NkocFZKIMQ==", + "version": "16.2.9", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-16.2.9.tgz", + "integrity": "sha512-lh799pnbdvzTVShJHOY1JC6c1pwBsZC4UIgB3Itklo9dskGybQma/gP+lE6RhqM4FblNfaaBXGlCMUuY8HkmEQ==", "dev": true, "peer": true, "dependencies": { @@ -817,7 +873,7 @@ "node": "^16.14.0 || >=18.10.0" }, "peerDependencies": { - "@angular/core": "16.2.1" + "@angular/core": "16.2.9" }, "peerDependenciesMeta": { "@angular/core": { @@ -826,9 +882,9 @@ } }, "node_modules/@angular/compiler-cli": { - "version": "16.2.1", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-16.2.1.tgz", - "integrity": "sha512-A5SyNZTZnXSCL5JVXHKbYj9p2dRYoeFnb6hGQFt2AuCcpUjVIIdwHtre3YzkKe5sFwepPctdoRe2fRXlTfTRjA==", + "version": "16.2.9", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-16.2.9.tgz", + "integrity": "sha512-ecH2oOlijJdDqioD9IfgdqJGoRRHI6hAx5rwBxIaYk01ywj13KzvXWPrXbCIupeWtV/XUZUlbwf47nlmL5gxZg==", "dev": true, "peer": true, "dependencies": { @@ -850,14 +906,14 @@ "node": "^16.14.0 || >=18.10.0" }, "peerDependencies": { - "@angular/compiler": "16.2.1", + "@angular/compiler": "16.2.9", "typescript": ">=4.9.3 <5.2" } }, "node_modules/@angular/core": { - "version": "16.2.1", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-16.2.1.tgz", - "integrity": "sha512-Y+0jssQnJPovxMv9cDKYlp6BBHeFBLOHd/+FPv5IIGD1c7NwBP/TImJxCaIV78a57xnO8L0SFacDg/kULzvKrg==", + "version": "16.2.9", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-16.2.9.tgz", + "integrity": "sha512-chvPX29ZBcMDuh7rLIgb0Cru6oJ/0FaqRzfOI3wT4W2F9W1HOlCtipovzmPYaUAmXBWfVP4EBO9TOWnpog0S0w==", "dependencies": { "tslib": "^2.3.0" }, @@ -888,11 +944,11 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.10.tgz", - "integrity": "sha512-/KKIMG4UEL35WmI9OlvMhurwtytjvXoFcGNrOvyG9zIzA8YmPjVtIZUf7b05+TPO7G7/GEmLHDaoCgACHl9hhA==", + "version": "7.22.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", + "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", "dependencies": { - "@babel/highlight": "^7.22.10", + "@babel/highlight": "^7.22.13", "chalk": "^2.4.2" }, "engines": { @@ -981,12 +1037,12 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.10.tgz", - "integrity": "sha512-JMSwHD4J7SLod0idLq5PKgI+6g/hLD/iuWBq08ZX49xE14VpVEojJ5rHWptpirV2j020MvypRLAXAO50igCJ5Q==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz", + "integrity": "sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==", "dependencies": { "@babel/compat-data": "^7.22.9", - "@babel/helper-validator-option": "^7.22.5", + "@babel/helper-validator-option": "^7.22.15", "browserslist": "^4.21.9", "lru-cache": "^5.1.1", "semver": "^6.3.1" @@ -1073,20 +1129,33 @@ } }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", - "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", + "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==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-function-name": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", - "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", + "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==", "dependencies": { - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.5" + "@babel/template": "^7.22.15", + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name/node_modules/@babel/template": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", + "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "dependencies": { + "@babel/code-frame": "^7.22.13", + "@babel/parser": "^7.22.15", + "@babel/types": "^7.22.15" }, "engines": { "node": ">=6.9.0" @@ -1115,26 +1184,26 @@ } }, "node_modules/@babel/helper-module-imports": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", - "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz", + "integrity": "sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==", "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.22.15" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz", - "integrity": "sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.0.tgz", + "integrity": "sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==", "dependencies": { - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-module-imports": "^7.22.5", + "@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.5" + "@babel/helper-validator-identifier": "^7.22.20" }, "engines": { "node": ">=6.9.0" @@ -1236,17 +1305,17 @@ } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", - "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", + "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==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-option": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", - "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz", + "integrity": "sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==", "engines": { "node": ">=6.9.0" } @@ -1265,24 +1334,37 @@ } }, "node_modules/@babel/helpers": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.10.tgz", - "integrity": "sha512-a41J4NW8HyZa1I1vAndrraTlPZ/eZoga2ZgS7fEr0tZJGVU4xqdE80CEm0CcNjha5EZ8fTBYLKHF0kqDUuAwQw==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.2.tgz", + "integrity": "sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ==", "dependencies": { - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.10", - "@babel/types": "^7.22.10" + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.23.2", + "@babel/types": "^7.23.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers/node_modules/@babel/template": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", + "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "dependencies": { + "@babel/code-frame": "^7.22.13", + "@babel/parser": "^7.22.15", + "@babel/types": "^7.22.15" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.10.tgz", - "integrity": "sha512-78aUtVcT7MUscr0K5mIEnkwxPE0MaxkR5RxRwuHaQ+JuU5AmTPhY+do2mdzVTnIJJpyBglql2pehuBIWHug+WQ==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", + "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", "dependencies": { - "@babel/helper-validator-identifier": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.20", "chalk": "^2.4.2", "js-tokens": "^4.0.0" }, @@ -1291,9 +1373,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.10.tgz", - "integrity": "sha512-lNbdGsQb9ekfsnjFGhEiF4hfFqGgfOP3H3d27re3n+CGhNuTSUEQdfWk556sTLNTloczcdM5TYF2LhzmDQKyvQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", + "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==", "bin": { "parser": "bin/babel-parser.js" }, @@ -1335,6 +1417,7 @@ "version": "7.20.7", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-async-generator-functions instead.", "dev": true, "peer": true, "dependencies": { @@ -2913,18 +2996,18 @@ } }, "node_modules/@babel/traverse": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.10.tgz", - "integrity": "sha512-Q/urqV4pRByiNNpb/f5OSv28ZlGJiFiiTh+GAHktbIrkPhPbl90+uW6SmpoLyZqutrg9AEaEf3Q/ZBRHBXgxig==", - "dependencies": { - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-function-name": "^7.22.5", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz", + "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==", + "dependencies": { + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.23.0", + "@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.22.10", - "@babel/types": "^7.22.10", + "@babel/parser": "^7.23.0", + "@babel/types": "^7.23.0", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -2933,11 +3016,11 @@ } }, "node_modules/@babel/traverse/node_modules/@babel/generator": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.10.tgz", - "integrity": "sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", + "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", "dependencies": { - "@babel/types": "^7.22.10", + "@babel/types": "^7.23.0", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -2947,12 +3030,12 @@ } }, "node_modules/@babel/types": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.10.tgz", - "integrity": "sha512-obaoigiLrlDZ7TUQln/8m4mSqIW2QFeOrCQc9r+xsaHGNoplVNYlRVpsfE8Vj35GEm2ZH4ZhrNYogs/3fj85kg==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", + "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==", "dependencies": { "@babel/helper-string-parser": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.20", "to-fast-properties": "^2.0.0" }, "engines": { @@ -3537,9 +3620,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz", - "integrity": "sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.5.tgz", + "integrity": "sha512-bhvbzWFF3CwMs5tbjf3ObfGqbl/17ict2/uwOSfr3wmxDE6VdS2GqY/FuzIPe0q0bdhj65zQsvqfArI9MY6+AA==", "cpu": [ "arm" ], @@ -3547,14 +3630,15 @@ "os": [ "android" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/android-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz", - "integrity": "sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.5.tgz", + "integrity": "sha512-5d1OkoJxnYQfmC+Zd8NBFjkhyCNYwM4n9ODrycTFY6Jk1IGiZ+tjVJDDSwDt77nK+tfpGP4T50iMtVi4dEGzhQ==", "cpu": [ "arm64" ], @@ -3562,14 +3646,15 @@ "os": [ "android" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/android-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.19.tgz", - "integrity": "sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.5.tgz", + "integrity": "sha512-9t+28jHGL7uBdkBjL90QFxe7DVA+KGqWlHCF8ChTKyaKO//VLuoBricQCgwhOjA1/qOczsw843Fy4cbs4H3DVA==", "cpu": [ "x64" ], @@ -3577,14 +3662,15 @@ "os": [ "android" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz", - "integrity": "sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.5.tgz", + "integrity": "sha512-mvXGcKqqIqyKoxq26qEDPHJuBYUA5KizJncKOAf9eJQez+L9O+KfvNFu6nl7SCZ/gFb2QPaRqqmG0doSWlgkqw==", "cpu": [ "arm64" ], @@ -3592,14 +3678,15 @@ "os": [ "darwin" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz", - "integrity": "sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.5.tgz", + "integrity": "sha512-Ly8cn6fGLNet19s0X4unjcniX24I0RqjPv+kurpXabZYSXGM4Pwpmf85WHJN3lAgB8GSth7s5A0r856S+4DyiA==", "cpu": [ "x64" ], @@ -3607,14 +3694,15 @@ "os": [ "darwin" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz", - "integrity": "sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.5.tgz", + "integrity": "sha512-GGDNnPWTmWE+DMchq1W8Sd0mUkL+APvJg3b11klSGUDvRXh70JqLAO56tubmq1s2cgpVCSKYywEiKBfju8JztQ==", "cpu": [ "arm64" ], @@ -3622,14 +3710,15 @@ "os": [ "freebsd" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz", - "integrity": "sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.5.tgz", + "integrity": "sha512-1CCwDHnSSoA0HNwdfoNY0jLfJpd7ygaLAp5EHFos3VWJCRX9DMwWODf96s9TSse39Br7oOTLryRVmBoFwXbuuQ==", "cpu": [ "x64" ], @@ -3637,14 +3726,15 @@ "os": [ "freebsd" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/linux-arm": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz", - "integrity": "sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.5.tgz", + "integrity": "sha512-lrWXLY/vJBzCPC51QN0HM71uWgIEpGSjSZZADQhq7DKhPcI6NH1IdzjfHkDQws2oNpJKpR13kv7/pFHBbDQDwQ==", "cpu": [ "arm" ], @@ -3652,14 +3742,15 @@ "os": [ "linux" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz", - "integrity": "sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.5.tgz", + "integrity": "sha512-o3vYippBmSrjjQUCEEiTZ2l+4yC0pVJD/Dl57WfPwwlvFkrxoSO7rmBZFii6kQB3Wrn/6GwJUPLU5t52eq2meA==", "cpu": [ "arm64" ], @@ -3667,14 +3758,15 @@ "os": [ "linux" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz", - "integrity": "sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.5.tgz", + "integrity": "sha512-MkjHXS03AXAkNp1KKkhSKPOCYztRtK+KXDNkBa6P78F8Bw0ynknCSClO/ztGszILZtyO/lVKpa7MolbBZ6oJtQ==", "cpu": [ "ia32" ], @@ -3682,14 +3774,15 @@ "os": [ "linux" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz", - "integrity": "sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.5.tgz", + "integrity": "sha512-42GwZMm5oYOD/JHqHska3Jg0r+XFb/fdZRX+WjADm3nLWLcIsN27YKtqxzQmGNJgu0AyXg4HtcSK9HuOk3v1Dw==", "cpu": [ "loong64" ], @@ -3697,14 +3790,15 @@ "os": [ "linux" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz", - "integrity": "sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.5.tgz", + "integrity": "sha512-kcjndCSMitUuPJobWCnwQ9lLjiLZUR3QLQmlgaBfMX23UEa7ZOrtufnRds+6WZtIS9HdTXqND4yH8NLoVVIkcg==", "cpu": [ "mips64el" ], @@ -3712,14 +3806,15 @@ "os": [ "linux" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz", - "integrity": "sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.5.tgz", + "integrity": "sha512-yJAxJfHVm0ZbsiljbtFFP1BQKLc8kUF6+17tjQ78QjqjAQDnhULWiTA6u0FCDmYT1oOKS9PzZ2z0aBI+Mcyj7Q==", "cpu": [ "ppc64" ], @@ -3727,14 +3822,15 @@ "os": [ "linux" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz", - "integrity": "sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.5.tgz", + "integrity": "sha512-5u8cIR/t3gaD6ad3wNt1MNRstAZO+aNyBxu2We8X31bA8XUNyamTVQwLDA1SLoPCUehNCymhBhK3Qim1433Zag==", "cpu": [ "riscv64" ], @@ -3742,14 +3838,15 @@ "os": [ "linux" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz", - "integrity": "sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.5.tgz", + "integrity": "sha512-Z6JrMyEw/EmZBD/OFEFpb+gao9xJ59ATsoTNlj39jVBbXqoZm4Xntu6wVmGPB/OATi1uk/DB+yeDPv2E8PqZGw==", "cpu": [ "s390x" ], @@ -3757,14 +3854,15 @@ "os": [ "linux" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/linux-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz", - "integrity": "sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.5.tgz", + "integrity": "sha512-psagl+2RlK1z8zWZOmVdImisMtrUxvwereIdyJTmtmHahJTKb64pAcqoPlx6CewPdvGvUKe2Jw+0Z/0qhSbG1A==", "cpu": [ "x64" ], @@ -3772,14 +3870,15 @@ "os": [ "linux" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz", - "integrity": "sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.5.tgz", + "integrity": "sha512-kL2l+xScnAy/E/3119OggX8SrWyBEcqAh8aOY1gr4gPvw76la2GlD4Ymf832UCVbmuWeTf2adkZDK+h0Z/fB4g==", "cpu": [ "x64" ], @@ -3787,14 +3886,15 @@ "os": [ "netbsd" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz", - "integrity": "sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.5.tgz", + "integrity": "sha512-sPOfhtzFufQfTBgRnE1DIJjzsXukKSvZxloZbkJDG383q0awVAq600pc1nfqBcl0ice/WN9p4qLc39WhBShRTA==", "cpu": [ "x64" ], @@ -3802,14 +3902,15 @@ "os": [ "openbsd" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz", - "integrity": "sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.5.tgz", + "integrity": "sha512-dGZkBXaafuKLpDSjKcB0ax0FL36YXCvJNnztjKV+6CO82tTYVDSH2lifitJ29jxRMoUhgkg9a+VA/B03WK5lcg==", "cpu": [ "x64" ], @@ -3817,14 +3918,15 @@ "os": [ "sunos" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz", - "integrity": "sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.5.tgz", + "integrity": "sha512-dWVjD9y03ilhdRQ6Xig1NWNgfLtf2o/STKTS+eZuF90fI2BhbwD6WlaiCGKptlqXlURVB5AUOxUj09LuwKGDTg==", "cpu": [ "arm64" ], @@ -3832,14 +3934,15 @@ "os": [ "win32" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz", - "integrity": "sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.5.tgz", + "integrity": "sha512-4liggWIA4oDgUxqpZwrDhmEfAH4d0iljanDOK7AnVU89T6CzHon/ony8C5LeOdfgx60x5cnQJFZwEydVlYx4iw==", "cpu": [ "ia32" ], @@ -3847,14 +3950,15 @@ "os": [ "win32" ], + "peer": true, "engines": { "node": ">=12" } }, "node_modules/@esbuild/win32-x64": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz", - "integrity": "sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.5.tgz", + "integrity": "sha512-czTrygUsB/jlM8qEW5MD8bgYU2Xg14lo6kBDXW6HdxKjh8M5PzETGiSHaz9MtbXBYDloHNUAUW2tMiKW4KM9Mw==", "cpu": [ "x64" ], @@ -3862,6 +3966,7 @@ "os": [ "win32" ], + "peer": true, "engines": { "node": ">=12" } @@ -4598,7 +4703,6 @@ "version": "29.6.0", "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.0.tgz", "integrity": "sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ==", - "dev": true, "dependencies": { "@sinclair/typebox": "^0.27.8" }, @@ -4908,9 +5012,9 @@ "dev": true }, "node_modules/@ngtools/webpack": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-16.2.0.tgz", - "integrity": "sha512-c9jv4r7GnLTpnPOeF+a9yAm/3/2wwl9lMBU32i9hlY+q/Hqde4PiL95bUOLnRRL1I64DV7BFTlSZqSPgDpFXZQ==", + "version": "16.2.6", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-16.2.6.tgz", + "integrity": "sha512-d8ZlZL6dOtWmHdjG9PTGBkdiJMcsXD2tp6WeFRVvTEuvCI3XvKsUXBvJDE+mZOhzn5pUEYt+1TR5DHjDZbME3w==", "dev": true, "peer": true, "engines": { @@ -4957,110 +5061,110 @@ } }, "node_modules/@nrwl/angular": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nrwl/angular/-/angular-16.7.1.tgz", - "integrity": "sha512-hb1UxE5Et3ldjxEW5KzlvLYf6fg3sKyjewgKg94ocVs+m8nyugBfotTJbeODR3djKhEkYe6K4hgDVj/VLvUgSA==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nrwl/angular/-/angular-16.10.0.tgz", + "integrity": "sha512-MT4gYcvsHxNXTIu40CZKVmO7PD42HeJKfQpVOKPZnfRl9Zf38tRtDnC99QxMpVk/4fo9y1hM8ifoDO97WFOBOQ==", "dev": true, "dependencies": { - "@nx/angular": "16.7.1", + "@nx/angular": "16.10.0", "tslib": "^2.3.0" } }, "node_modules/@nrwl/cypress": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nrwl/cypress/-/cypress-16.7.1.tgz", - "integrity": "sha512-BhRxtdZrnK6yYgajuv1Q8aSs6Z3AQ0Q26Z3uMiDOc0AzZ+ai4nMisuAR8bF/mvj7BZo0svhPBvCuDCuAszHgjg==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nrwl/cypress/-/cypress-16.10.0.tgz", + "integrity": "sha512-ns6VQrrF08XYwZE4OduLVK2rwpN6dNrkVArw4fzJccuZ1g3YxR5JSuxpdBQA3FjKWoo2DybivuQudpIlYGq3UQ==", "dev": true, "dependencies": { - "@nx/cypress": "16.7.1" + "@nx/cypress": "16.10.0" } }, "node_modules/@nrwl/devkit": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nrwl/devkit/-/devkit-16.7.1.tgz", - "integrity": "sha512-ysAgNju6o7QjG/ZHW0wIRJ8yWxjhErjqQ8GZ2Smqsb1myrr6UbYsuxaXjoOHI56fMmGyNPK04zzyNXXWQw/UAA==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nrwl/devkit/-/devkit-16.10.0.tgz", + "integrity": "sha512-fRloARtsDQoQgQ7HKEy0RJiusg/HSygnmg4gX/0n/Z+SUS+4KoZzvHjXc6T5ZdEiSjvLypJ+HBM8dQzIcVACPQ==", "dependencies": { - "@nx/devkit": "16.7.1" + "@nx/devkit": "16.10.0" } }, "node_modules/@nrwl/eslint-plugin-nx": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nrwl/eslint-plugin-nx/-/eslint-plugin-nx-16.7.1.tgz", - "integrity": "sha512-i0vH5kHLujX5gpn2D6HOf1OxHtXy5Jscyu8kOEy7oNCvJ3yPwEQ1ytKYhOZnfg/T5R9qI6vSJn+7Awdwee3beA==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nrwl/eslint-plugin-nx/-/eslint-plugin-nx-16.10.0.tgz", + "integrity": "sha512-w8fHXEatdPHQeP/Yompsdrgz4BJ2BSVaaaulcovzTNJ9KrCCtDyTGY7sihU7qLVcbZtUVq9xoAsSeuTQuOCTDw==", "dev": true, "dependencies": { - "@nx/eslint-plugin": "16.7.1" + "@nx/eslint-plugin": "16.10.0" } }, "node_modules/@nrwl/jest": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nrwl/jest/-/jest-16.7.1.tgz", - "integrity": "sha512-YzFuMei+ZeRtadXAQUdBvjnuiATrfl//2p6t+sVkMX2ywwO+V8KVnMQhYNlBq/aSGYAyU+L8ueVMioRNqh2S7g==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nrwl/jest/-/jest-16.10.0.tgz", + "integrity": "sha512-hZuIK3xXh4HaE6/Ny8hGidjkJ4aLZjnQtPDxKD/423gznQe2FdHx3avoSlbOEOx5Oc6sJ9QGGZLcvckKQ5uWww==", "dev": true, "dependencies": { - "@nx/jest": "16.7.1" + "@nx/jest": "16.10.0" } }, "node_modules/@nrwl/js": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nrwl/js/-/js-16.7.1.tgz", - "integrity": "sha512-LI/qlKQIBFTaFMTGXu+fUxRVmGiPHEw/9C3HTQS8a+bTYuN2aow+GL/Fg1RN/3qOVutOJbEcDi4XhzbB7VDnOQ==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nrwl/js/-/js-16.10.0.tgz", + "integrity": "sha512-asybPpyPrxLLDWWdYzFqbgubLmDKLEhoMz8x9MPOm3CH8v2vlIE6hD0JT19GdJArBPxRB33nhjtu8wmJGz5czw==", "dev": true, "dependencies": { - "@nx/js": "16.7.1" + "@nx/js": "16.10.0" } }, "node_modules/@nrwl/linter": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nrwl/linter/-/linter-16.7.1.tgz", - "integrity": "sha512-slUJjydlWXx+HH+maguORAV/GO0yohHBYR9YiopptYCHPpjPmgAXvmkXsxwUq4uYtoZECxFxduCCim5jDMVIRg==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nrwl/linter/-/linter-16.10.0.tgz", + "integrity": "sha512-XvMuTeIc2I3630iaqhlV4w3qgABQIo+kv8mT0DbT1HfjjZDm4ST8hrvkdWSf9mCl24vShNL8GDVQVNOX0bZY5A==", "dev": true, "dependencies": { - "@nx/linter": "16.7.1" + "@nx/linter": "16.10.0" } }, "node_modules/@nrwl/node": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nrwl/node/-/node-16.7.1.tgz", - "integrity": "sha512-TcwX1diGs1CXXK498rgzywN2FIi//Dbwu+A5BfXUQKq6q4ypzlFyZRstop8oW48VMVGao2DttPhSIJxpU7qrng==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nrwl/node/-/node-16.10.0.tgz", + "integrity": "sha512-UZ1s02f2IpFRXzVZIBuDLXXB+obyP280RFHV9smYruhOHrj8iA5wXNSXcJJGorwpKP3WCUS/+KS49oVSHOkLUA==", "dev": true, "dependencies": { - "@nx/node": "16.7.1" + "@nx/node": "16.10.0" } }, "node_modules/@nrwl/nx-cloud": { - "version": "16.4.0-beta.1", - "resolved": "https://registry.npmjs.org/@nrwl/nx-cloud/-/nx-cloud-16.4.0-beta.1.tgz", - "integrity": "sha512-XQFmpVtGJghvR+JJWgp2so0eeJSG7U1W0/WcyAskTnCSMt8M5FFotJmF4upFfRK1rexlECZ7xbcZzUXuIEqzsw==", + "version": "16.5.2", + "resolved": "https://registry.npmjs.org/@nrwl/nx-cloud/-/nx-cloud-16.5.2.tgz", + "integrity": "sha512-oHO5T1HRJsR9mbRd8eUqMBPCgqVZLSbAh3zJoPFmhEmjbM4YB9ePRpgYFT8dRNeZUOUd/8Yt7Pb6EVWOHvpD/w==", "dev": true, "dependencies": { - "nx-cloud": "16.4.0-beta.1" + "nx-cloud": "16.5.2" } }, "node_modules/@nrwl/nx-plugin": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nrwl/nx-plugin/-/nx-plugin-16.7.1.tgz", - "integrity": "sha512-o/NCmMOc7ZjtSFfUOHA5HTSUJ/Yh6A8N3aXe37gbWq6c9uSbNz1l41bBec5lUp0L5VE+GMjGpl+VfT1REK/Rfg==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nrwl/nx-plugin/-/nx-plugin-16.10.0.tgz", + "integrity": "sha512-AZiQ+amECFQGcWKhvs+KbqOzGU2dcQydGd0j4Wlz3xlfkEmYfCk80dj26ypSFB+3O+0p+q+HPpJhD0fka3shtw==", "dev": true, "dependencies": { - "@nx/plugin": "16.7.1" + "@nx/plugin": "16.10.0" } }, "node_modules/@nrwl/storybook": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nrwl/storybook/-/storybook-16.7.1.tgz", - "integrity": "sha512-Yu+wB4zklP6BdKotW7kkM40M3uj+NsIw5AbsOV57KTkSV3Wn3nBoxY33JJSrzUScbrDcT3LP+KpF7S9MXZznqg==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nrwl/storybook/-/storybook-16.10.0.tgz", + "integrity": "sha512-/S8usLsA/gEPG6LxPwciDSPCn0xGixhN0FxG39+whGkBttC1u7CDNhUstoGK3zmq0d/y8Q2v64uUCv9GPZlAWg==", "dev": true, "dependencies": { - "@nx/storybook": "16.7.1" + "@nx/storybook": "16.10.0" } }, "node_modules/@nrwl/tao": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nrwl/tao/-/tao-16.7.1.tgz", - "integrity": "sha512-oIjph3gm+FOB8mB2OTfCejQykpY+LGKdrGe5RpO3fBZzrkADHTdRWhaqaxktmGcRRt1AwMBofEv3mH4+VUOa/g==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nrwl/tao/-/tao-16.10.0.tgz", + "integrity": "sha512-QNAanpINbr+Pod6e1xNgFbzK1x5wmZl+jMocgiEFXZ67KHvmbD6MAQQr0MMz+GPhIu7EE4QCTLTyCEMlAG+K5Q==", "dependencies": { - "nx": "16.7.1", + "nx": "16.10.0", "tslib": "^2.3.0" }, "bin": { @@ -5068,37 +5172,37 @@ } }, "node_modules/@nrwl/webpack": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nrwl/webpack/-/webpack-16.7.1.tgz", - "integrity": "sha512-sj/MPtkc7WB/SKaMGNj2k7qUlwEO4k/xbBrQRshK9C9TPJPCs0qyg0RRyQPNHnh1TlDQkJrhTfB2aQbrRpcuDw==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nrwl/webpack/-/webpack-16.10.0.tgz", + "integrity": "sha512-oh/8jzytaU2YM6DOvEOt2CysKWpru+fc+M31JGj6gdq1c1wr4feSs1c/rmJ4jAfvYqejrJwyZK96XX1uRo+3RQ==", "dev": true, "dependencies": { - "@nx/webpack": "16.7.1" + "@nx/webpack": "16.10.0" } }, "node_modules/@nrwl/workspace": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nrwl/workspace/-/workspace-16.7.1.tgz", - "integrity": "sha512-nj01PoWvoYG3E02rkg2bO7glMQwKMdyECeFQ69Jrc/8epld56JLO9khe+JZeUOvwmvwU2aRgMxB76QjGX/G7/g==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nrwl/workspace/-/workspace-16.10.0.tgz", + "integrity": "sha512-fZeNxhFs/2cm326NebfJIgSI3W4KZN94WGS46wlIBrUUGP5/vwHYsi09Kx6sG1kRkAuZVtgJ33uU2F6xcAWzUA==", "dev": true, "dependencies": { - "@nx/workspace": "16.7.1" + "@nx/workspace": "16.10.0" } }, "node_modules/@nx/angular": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/angular/-/angular-16.7.1.tgz", - "integrity": "sha512-sB37nh0cYBNNsknp1Vvp5GOVmlxN81YrISV6j41QIQkdrpawwKzeWWc+4hGXtvg2Zn9gxff+Av+H1XpF+hCQaA==", - "dev": true, - "dependencies": { - "@nrwl/angular": "16.7.1", - "@nx/cypress": "16.7.1", - "@nx/devkit": "16.7.1", - "@nx/jest": "16.7.1", - "@nx/js": "16.7.1", - "@nx/linter": "16.7.1", - "@nx/webpack": "16.7.1", - "@nx/workspace": "16.7.1", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/angular/-/angular-16.10.0.tgz", + "integrity": "sha512-NkXe6N0vYrd8YexAjDUE9yLVOBtNrXuCnp2HW+QePd0sW5AiUeNeGwy07oStCJwH9xD5Rr5nl3JPrpBFEdNlVg==", + "dev": true, + "dependencies": { + "@nrwl/angular": "16.10.0", + "@nx/cypress": "16.10.0", + "@nx/devkit": "16.10.0", + "@nx/jest": "16.10.0", + "@nx/js": "16.10.0", + "@nx/linter": "16.10.0", + "@nx/webpack": "16.10.0", + "@nx/workspace": "16.10.0", "@phenomnomnominal/tsquery": "~5.0.1", "@typescript-eslint/type-utils": "^5.36.1", "chalk": "^4.1.0", @@ -5118,12 +5222,15 @@ "@angular-devkit/schematics": ">= 14.0.0 < 17.0.0", "@nguniversal/builders": ">= 14.0.0 < 17.0.0", "@schematics/angular": ">= 14.0.0 < 17.0.0", - "esbuild": "^0.17.5", + "esbuild": "^0.19.2", "rxjs": "^6.5.3 || ^7.5.0" }, "peerDependenciesMeta": { "@nguniversal/builders": { "optional": true + }, + "esbuild": { + "optional": true } } }, @@ -5198,23 +5305,22 @@ } }, "node_modules/@nx/cypress": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/cypress/-/cypress-16.7.1.tgz", - "integrity": "sha512-dclYmgWaOUDn6L1JtrjvnkwADvgi0bCUOvKjNfymmPcohv+7hVIXavlEwqTvD5V+xo76q/9QczNYMS5ekZZEHA==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/cypress/-/cypress-16.10.0.tgz", + "integrity": "sha512-suYc5jC6Os0D78Fn2pAIuGOkM6nhIWsSEb94PWwdZWE0XKQiWrgQJZBXDIu3x2zq6oZxYdx8OufUFli8vr4/Tw==", "dev": true, "dependencies": { - "@nrwl/cypress": "16.7.1", - "@nx/devkit": "16.7.1", - "@nx/js": "16.7.1", - "@nx/linter": "16.7.1", + "@nrwl/cypress": "16.10.0", + "@nx/devkit": "16.10.0", + "@nx/js": "16.10.0", + "@nx/linter": "16.10.0", "@phenomnomnominal/tsquery": "~5.0.1", "detect-port": "^1.5.1", - "dotenv": "~16.3.1", "semver": "7.5.3", "tslib": "^2.3.0" }, "peerDependencies": { - "cypress": ">= 3 < 13" + "cypress": ">= 3 < 14" }, "peerDependenciesMeta": { "cypress": { @@ -5222,24 +5328,12 @@ } } }, - "node_modules/@nx/cypress/node_modules/dotenv": { - "version": "16.3.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", - "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/motdotla/dotenv?sponsor=1" - } - }, "node_modules/@nx/devkit": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/devkit/-/devkit-16.7.1.tgz", - "integrity": "sha512-PASQGd1YhcAA/hpupCsSakP71Qh1pYle4dtF+wh3KDe2kdeM6BgccClapiGcXAI46JKLUGAbNYJ8pg7GEPY5Nw==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/devkit/-/devkit-16.10.0.tgz", + "integrity": "sha512-IvKQqRJFDDiaj33SPfGd3ckNHhHi6ceEoqCbAP4UuMXOPPVOX6H0KVk+9tknkPb48B7jWIw6/AgOeWkBxPRO5w==", "dependencies": { - "@nrwl/devkit": "16.7.1", + "@nrwl/devkit": "16.10.0", "ejs": "^3.1.7", "enquirer": "~2.3.6", "ignore": "^5.0.4", @@ -5263,14 +5357,14 @@ } }, "node_modules/@nx/eslint-plugin": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/eslint-plugin/-/eslint-plugin-16.7.1.tgz", - "integrity": "sha512-IyTKhwYGfkcBxapdX1iaeEtzeahjQqgR1ZgpVNZ9LupHYtfp1e2LxRlEeF0YuhFSEXBxNdzHkMXfzjYr+UQlzA==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/eslint-plugin/-/eslint-plugin-16.10.0.tgz", + "integrity": "sha512-fdOlCrSJK6HfCs+FVXUxzS5gobnGymTU85B3vXPYkVpJwKmq9voX7HBhx9euScRGgXdO9335DIixc/QV6zGpKA==", "dev": true, "dependencies": { - "@nrwl/eslint-plugin-nx": "16.7.1", - "@nx/devkit": "16.7.1", - "@nx/js": "16.7.1", + "@nrwl/eslint-plugin-nx": "16.10.0", + "@nx/devkit": "16.10.0", + "@nx/js": "16.10.0", "@typescript-eslint/type-utils": "^5.60.1", "@typescript-eslint/utils": "^5.60.1", "chalk": "^4.1.0", @@ -5360,19 +5454,18 @@ } }, "node_modules/@nx/jest": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/jest/-/jest-16.7.1.tgz", - "integrity": "sha512-iPcNlZPU9GqQztu/pakSB8QMbLM2i7G1wgozyHbIvIeO17ma0O0Ztl7rbA48rTzWr5+s8SmfXG/tKgcuq1RLBg==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/jest/-/jest-16.10.0.tgz", + "integrity": "sha512-QseeLjDrl4c9q9Dd/057SXYqd47JVLhD2VQlQDraYwjsHz3lWkzlGaaHy0ZrVu8LSzY7lUUhJMPyYO3qo8wT6A==", "dev": true, "dependencies": { "@jest/reporters": "^29.4.1", "@jest/test-result": "^29.4.1", - "@nrwl/jest": "16.7.1", - "@nx/devkit": "16.7.1", - "@nx/js": "16.7.1", + "@nrwl/jest": "16.10.0", + "@nx/devkit": "16.10.0", + "@nx/js": "16.10.0", "@phenomnomnominal/tsquery": "~5.0.1", "chalk": "^4.1.0", - "dotenv": "~16.3.1", "identity-obj-proxy": "3.0.0", "jest-config": "^29.4.1", "jest-resolve": "^29.4.1", @@ -5430,18 +5523,6 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/@nx/jest/node_modules/dotenv": { - "version": "16.3.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", - "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/motdotla/dotenv?sponsor=1" - } - }, "node_modules/@nx/jest/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -5464,9 +5545,9 @@ } }, "node_modules/@nx/js": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/js/-/js-16.7.1.tgz", - "integrity": "sha512-13BZz4TgxUu7zcr6ThU3KMq6SnvRfqhbdkPxM06j8hlSbA5KQfX19FUyLgFeYRBbH1eK5YisL/j/gGt4+KtYuA==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/js/-/js-16.10.0.tgz", + "integrity": "sha512-27AH0/+XTMzOxVS6oV8Zl7/Rr1UDMYsnCVqoCU9CXp087uxcD4VnBOEjsEUlJKh1RdwGE3K0hBkk7NC1LP+vYQ==", "dev": true, "dependencies": { "@babel/core": "^7.22.9", @@ -5476,20 +5557,24 @@ "@babel/preset-env": "^7.22.9", "@babel/preset-typescript": "^7.22.5", "@babel/runtime": "^7.22.6", - "@nrwl/js": "16.7.1", - "@nx/devkit": "16.7.1", - "@nx/workspace": "16.7.1", + "@nrwl/js": "16.10.0", + "@nx/devkit": "16.10.0", + "@nx/workspace": "16.10.0", "@phenomnomnominal/tsquery": "~5.0.1", "babel-plugin-const-enum": "^1.0.1", "babel-plugin-macros": "^2.8.0", "babel-plugin-transform-typescript-metadata": "^0.3.1", "chalk": "^4.1.0", + "columnify": "^1.6.0", "detect-port": "^1.5.1", "fast-glob": "3.2.7", "fs-extra": "^11.1.0", "ignore": "^5.0.4", "js-tokens": "^4.0.0", "minimatch": "3.0.5", + "npm-package-arg": "11.0.1", + "npm-run-path": "^4.0.1", + "ora": "5.3.0", "semver": "7.5.3", "source-map-support": "0.5.19", "ts-node": "10.9.1", @@ -5632,6 +5717,28 @@ "node": ">=8" } }, + "node_modules/@nx/js/node_modules/ora": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.3.0.tgz", + "integrity": "sha512-zAKMgGXUim0Jyd6CXK9lraBnD3H5yPGBPPOkC23a2BG6hsm4Zu6OQSjQuEtV0BHDf4aKHcUFvJiGRrFuW3MG8g==", + "dev": true, + "dependencies": { + "bl": "^4.0.3", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "log-symbols": "^4.0.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/@nx/js/node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -5664,17 +5771,18 @@ } }, "node_modules/@nx/linter": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/linter/-/linter-16.7.1.tgz", - "integrity": "sha512-vjhbLhioBtp286JYowV5VxjxaRGwLRgsElGzo2i0AbiFCG49bxnBb19YXThroT+uh6+dNENuTWsIcrrojYSmyg==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/linter/-/linter-16.10.0.tgz", + "integrity": "sha512-G6XBfuMHNHoJDc4n2Gip4fsa9KssT91V5PF2Rd4hILkg4YU8B8mlmHN71stpzwbEyUJtyhyJc5SGgVLrSpRQew==", "dev": true, "dependencies": { - "@nrwl/linter": "16.7.1", - "@nx/devkit": "16.7.1", - "@nx/js": "16.7.1", + "@nrwl/linter": "16.10.0", + "@nx/devkit": "16.10.0", + "@nx/js": "16.10.0", "@phenomnomnominal/tsquery": "~5.0.1", "tmp": "~0.2.1", - "tslib": "^2.3.0" + "tslib": "^2.3.0", + "typescript": "~5.1.3" }, "peerDependencies": { "eslint": "^8.0.0" @@ -5686,24 +5794,24 @@ } }, "node_modules/@nx/node": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/node/-/node-16.7.1.tgz", - "integrity": "sha512-jbnWg61FFBsGaOBv9yCAnBTp259lqVCNstbyaMcZJATzQnjoZM3jkp2BCirxYC7nViIWHkqYe2P1ZGHy5sgrZw==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/node/-/node-16.10.0.tgz", + "integrity": "sha512-mOGxsZzLNg9kMy/FDkCQfhb/ig3WsttHxzG9+ynCHBV5svKOIqA3F+EUp1gre6wgRyi/qrEUhk6GER5ZTX2ygw==", "dev": true, "dependencies": { - "@nrwl/node": "16.7.1", - "@nx/devkit": "16.7.1", - "@nx/jest": "16.7.1", - "@nx/js": "16.7.1", - "@nx/linter": "16.7.1", - "@nx/workspace": "16.7.1", + "@nrwl/node": "16.10.0", + "@nx/devkit": "16.10.0", + "@nx/jest": "16.10.0", + "@nx/js": "16.10.0", + "@nx/linter": "16.10.0", + "@nx/workspace": "16.10.0", "tslib": "^2.3.0" } }, "node_modules/@nx/nx-darwin-arm64": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/nx-darwin-arm64/-/nx-darwin-arm64-16.7.1.tgz", - "integrity": "sha512-g9N0eOYyirOnVZdpzsmby2VX2ovL/QBzjvT5OlLteKE4XmvksgSjQAhQeUUNY772AW6HoIK5MVxS2Jg3PECatQ==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/nx-darwin-arm64/-/nx-darwin-arm64-16.10.0.tgz", + "integrity": "sha512-YF+MIpeuwFkyvM5OwgY/rTNRpgVAI/YiR0yTYCZR+X3AAvP775IVlusNgQ3oedTBRUzyRnI4Tknj1WniENFsvQ==", "cpu": [ "arm64" ], @@ -5716,9 +5824,9 @@ } }, "node_modules/@nx/nx-darwin-x64": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/nx-darwin-x64/-/nx-darwin-x64-16.7.1.tgz", - "integrity": "sha512-ZoV4J4pR6z7YtBJoxrdNJTYJmjY653iA2M31PZL/WaS/3SHfzf4YYsnbLK5sF6GJI9n0XmOh3mPPHoJMYbQPIQ==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/nx-darwin-x64/-/nx-darwin-x64-16.10.0.tgz", + "integrity": "sha512-ypi6YxwXgb0kg2ixKXE3pwf5myVNUgWf1CsV5OzVccCM8NzheMO51KDXTDmEpXdzUsfT0AkO1sk5GZeCjhVONg==", "cpu": [ "x64" ], @@ -5731,9 +5839,9 @@ } }, "node_modules/@nx/nx-freebsd-x64": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/nx-freebsd-x64/-/nx-freebsd-x64-16.7.1.tgz", - "integrity": "sha512-vpAi4FHtNwcBIjkRf86Oa98r09oN5OirCXT7cInvwCZWRMVUxT5WHs6gEMY1lvMlnTWqAVdWPcec5VipI9EhQA==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/nx-freebsd-x64/-/nx-freebsd-x64-16.10.0.tgz", + "integrity": "sha512-UeEYFDmdbbDkTQamqvtU8ibgu5jQLgFF1ruNb/U4Ywvwutw2d4ruOMl2e0u9hiNja9NFFAnDbvzrDcMo7jYqYw==", "cpu": [ "x64" ], @@ -5746,9 +5854,9 @@ } }, "node_modules/@nx/nx-linux-arm-gnueabihf": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm-gnueabihf/-/nx-linux-arm-gnueabihf-16.7.1.tgz", - "integrity": "sha512-In9qaTpUPsle1jf20lBV/c0WrfSo4Qy64OleweZwIea3RW1TsQg4xxORoULtkU+6KB85XOb5Xd5G/zXpLRMykw==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm-gnueabihf/-/nx-linux-arm-gnueabihf-16.10.0.tgz", + "integrity": "sha512-WV3XUC2DB6/+bz1sx+d1Ai9q2Cdr+kTZRN50SOkfmZUQyEBaF6DRYpx/a4ahhxH3ktpNfyY8Maa9OEYxGCBkQA==", "cpu": [ "arm" ], @@ -5761,9 +5869,9 @@ } }, "node_modules/@nx/nx-linux-arm64-gnu": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-gnu/-/nx-linux-arm64-gnu-16.7.1.tgz", - "integrity": "sha512-+RXFQqGl5SLrcFl0zKAZOZ4pgA3yhXZnI2xYnuhlPOvuNT4Flc6cdPPz12uKhkWIg0nEBnbvsLDyD1PXDNxKJg==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-gnu/-/nx-linux-arm64-gnu-16.10.0.tgz", + "integrity": "sha512-aWIkOUw995V3ItfpAi5FuxQ+1e9EWLS1cjWM1jmeuo+5WtaKToJn5itgQOkvSlPz+HSLgM3VfXMvOFALNk125g==", "cpu": [ "arm64" ], @@ -5776,9 +5884,9 @@ } }, "node_modules/@nx/nx-linux-arm64-musl": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-musl/-/nx-linux-arm64-musl-16.7.1.tgz", - "integrity": "sha512-DiJ6Vpq9w2vaE9JgQs9M7K04QF75jAcqpuSlo25TYGU/GLiSZM6QpiAzsXhwZwFHfUjv0mL3iTmAcBmO1z9PBw==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-musl/-/nx-linux-arm64-musl-16.10.0.tgz", + "integrity": "sha512-uO6Gg+irqpVcCKMcEPIQcTFZ+tDI02AZkqkP7koQAjniLEappd8DnUBSQdcn53T086pHpdc264X/ZEpXFfrKWQ==", "cpu": [ "arm64" ], @@ -5791,9 +5899,9 @@ } }, "node_modules/@nx/nx-linux-x64-gnu": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-gnu/-/nx-linux-x64-gnu-16.7.1.tgz", - "integrity": "sha512-fc/2whXm4ao91LFQ5++2rgYeTIitQKXkfTrHLKLuMynou2Qd+jMUZVcVk+avaHVPKKu6ALbCUQ0YSTGdEfEx3Q==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-gnu/-/nx-linux-x64-gnu-16.10.0.tgz", + "integrity": "sha512-134PW/u/arNFAQKpqMJniC7irbChMPz+W+qtyKPAUXE0XFKPa7c1GtlI/wK2dvP9qJDZ6bKf0KtA0U/m2HMUOA==", "cpu": [ "x64" ], @@ -5806,9 +5914,9 @@ } }, "node_modules/@nx/nx-linux-x64-musl": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-musl/-/nx-linux-x64-musl-16.7.1.tgz", - "integrity": "sha512-3CzyUg5+/q83g/Pln71HPdkfjpU3dIBriiyuvJan8LwjKuhAdTFubAmu3CUp3ht1gZOdnwBQW1cdG1vx9EuBww==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-musl/-/nx-linux-x64-musl-16.10.0.tgz", + "integrity": "sha512-q8sINYLdIJxK/iUx9vRk5jWAWb/2O0PAbOJFwv4qkxBv4rLoN7y+otgCZ5v0xfx/zztFgk/oNY4lg5xYjIso2Q==", "cpu": [ "x64" ], @@ -5821,9 +5929,9 @@ } }, "node_modules/@nx/nx-win32-arm64-msvc": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/nx-win32-arm64-msvc/-/nx-win32-arm64-msvc-16.7.1.tgz", - "integrity": "sha512-1uhQGwWEa76jQyEVohcB4g4H5Wn4YNLx49eJe1SHLwMgbPZZZ5PgnSzwECu+I9E/ZCRaCJk2sHiuRGxDa29Dzg==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/nx-win32-arm64-msvc/-/nx-win32-arm64-msvc-16.10.0.tgz", + "integrity": "sha512-moJkL9kcqxUdJSRpG7dET3UeLIciwrfP08mzBQ12ewo8K8FzxU8ZUsTIVVdNrwt01CXOdXoweGfdQLjJ4qTURA==", "cpu": [ "arm64" ], @@ -5836,9 +5944,9 @@ } }, "node_modules/@nx/nx-win32-x64-msvc": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/nx-win32-x64-msvc/-/nx-win32-x64-msvc-16.7.1.tgz", - "integrity": "sha512-DLyME4yJKVhNTMgR3gDx7wVQ6ov6d9j2inGbTwoGoigMvzdaSqeoceMR5CSLOAeq9YBnH8FCbugTccg0iyZtvw==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/nx-win32-x64-msvc/-/nx-win32-x64-msvc-16.10.0.tgz", + "integrity": "sha512-5iV2NKZnzxJwZZ4DM5JVbRG/nkhAbzEskKaLBB82PmYGKzaDHuMHP1lcPoD/rtYMlowZgNA/RQndfKvPBPwmXA==", "cpu": [ "x64" ], @@ -5851,34 +5959,21 @@ } }, "node_modules/@nx/plugin": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/plugin/-/plugin-16.7.1.tgz", - "integrity": "sha512-GHoUlqGccPs6s1KnQ4jeixvgV0dcHcFxRSZ9ufoD4hrPrASWUXI3MHBgDYHJTuHUF8aESb1fJ4hlejo9iX66cg==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/plugin/-/plugin-16.10.0.tgz", + "integrity": "sha512-oTTl+yZBfj/EBvqp8vxzE/JhavT2lWaWNKBj1B8kNOYDG041Pf6jj7GazcQmPd+g1UM96Ut0HZit/rsoJOTdvQ==", "dev": true, "dependencies": { - "@nrwl/nx-plugin": "16.7.1", - "@nx/devkit": "16.7.1", - "@nx/jest": "16.7.1", - "@nx/js": "16.7.1", - "@nx/linter": "16.7.1", + "@nrwl/nx-plugin": "16.10.0", + "@nx/devkit": "16.10.0", + "@nx/jest": "16.10.0", + "@nx/js": "16.10.0", + "@nx/linter": "16.10.0", "@phenomnomnominal/tsquery": "~5.0.1", - "dotenv": "~16.3.1", "fs-extra": "^11.1.0", "tslib": "^2.3.0" } }, - "node_modules/@nx/plugin/node_modules/dotenv": { - "version": "16.3.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", - "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/motdotla/dotenv?sponsor=1" - } - }, "node_modules/@nx/plugin/node_modules/fs-extra": { "version": "11.1.1", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz", @@ -5894,56 +5989,40 @@ } }, "node_modules/@nx/storybook": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/storybook/-/storybook-16.7.1.tgz", - "integrity": "sha512-xr8a2MwiGzN42o+dAmT32259B+Hj42GBaiH1DNfjgjfxUsjgPMAIZjV1q1ekqUrn2qxMoCAGtpDiyzzJ0R7quA==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/storybook/-/storybook-16.10.0.tgz", + "integrity": "sha512-2Hpc9HTCIOHt4rcWhNSi9Fmd20rs+xHZ7icYTUTg1tx1tY6mKfUoF2gzpK8lG2vELVryCzxe0WWrqfUMcHWPrQ==", "dev": true, "dependencies": { - "@nrwl/storybook": "16.7.1", - "@nx/cypress": "16.7.1", - "@nx/devkit": "16.7.1", - "@nx/js": "16.7.1", - "@nx/linter": "16.7.1", - "@nx/workspace": "16.7.1", + "@nrwl/storybook": "16.10.0", + "@nx/cypress": "16.10.0", + "@nx/devkit": "16.10.0", + "@nx/js": "16.10.0", + "@nx/linter": "16.10.0", + "@nx/workspace": "16.10.0", "@phenomnomnominal/tsquery": "~5.0.1", - "dotenv": "~16.3.1", "semver": "7.5.3", "tslib": "^2.3.0" } }, - "node_modules/@nx/storybook/node_modules/dotenv": { - "version": "16.3.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", - "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/motdotla/dotenv?sponsor=1" - } - }, "node_modules/@nx/webpack": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/webpack/-/webpack-16.7.1.tgz", - "integrity": "sha512-aesR+2Jn63Ps5AUDhhy3UyOjtVJJPDMVUnfj/2g8EabOTgUJac5iRGoDXPcdSxO2v93UTudm81D5fWAzY7sA7A==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/webpack/-/webpack-16.10.0.tgz", + "integrity": "sha512-rKftYWh4kW6A7svMx73Zg3fJFDS3618cKTZsCkuQWeSE+RMQXjcefeCxYhwvHXc/ehoakCIIBx7jDCR+6NIlzQ==", "dev": true, "dependencies": { "@babel/core": "^7.22.9", - "@nrwl/webpack": "16.7.1", - "@nx/devkit": "16.7.1", - "@nx/js": "16.7.1", + "@nrwl/webpack": "16.10.0", + "@nx/devkit": "16.10.0", + "@nx/js": "16.10.0", "autoprefixer": "^10.4.9", "babel-loader": "^9.1.2", "browserslist": "^4.21.4", "chalk": "^4.1.0", - "chokidar": "^3.5.1", "copy-webpack-plugin": "^10.2.4", "css-loader": "^6.4.0", "css-minimizer-webpack-plugin": "^5.0.0", - "dotenv": "~16.3.1", "fork-ts-checker-webpack-plugin": "7.2.13", - "ignore": "^5.0.4", "less": "4.1.3", "less-loader": "11.1.0", "license-webpack-plugin": "^4.0.2", @@ -5971,25 +6050,25 @@ } }, "node_modules/@nx/webpack/node_modules/@babel/core": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.10.tgz", - "integrity": "sha512-fTmqbbUBAwCcre6zPzNngvsI0aNrPZe77AeqvDxWM9Nm+04RrJ3CAmGHA9f7lJQY6ZMhRztNemy4uslDxTX4Qw==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.2.tgz", + "integrity": "sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.10", - "@babel/generator": "^7.22.10", - "@babel/helper-compilation-targets": "^7.22.10", - "@babel/helper-module-transforms": "^7.22.9", - "@babel/helpers": "^7.22.10", - "@babel/parser": "^7.22.10", - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.10", - "@babel/types": "^7.22.10", - "convert-source-map": "^1.7.0", + "@babel/code-frame": "^7.22.13", + "@babel/generator": "^7.23.0", + "@babel/helper-compilation-targets": "^7.22.15", + "@babel/helper-module-transforms": "^7.23.0", + "@babel/helpers": "^7.23.2", + "@babel/parser": "^7.23.0", + "@babel/template": "^7.22.15", + "@babel/traverse": "^7.23.2", + "@babel/types": "^7.23.0", + "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", + "json5": "^2.2.3", "semver": "^6.3.1" }, "engines": { @@ -6010,12 +6089,12 @@ } }, "node_modules/@nx/webpack/node_modules/@babel/generator": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.10.tgz", - "integrity": "sha512-79KIf7YiWjjdZ81JnLujDRApWtl7BxTqWD88+FFdQEIOG8LJ0etDOM7CXuIgGJa55sGOwZVwuEsaLEm0PJ5/+A==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", + "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", "dev": true, "dependencies": { - "@babel/types": "^7.22.10", + "@babel/types": "^7.23.0", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -6024,9 +6103,23 @@ "node": ">=6.9.0" } }, - "node_modules/@nx/webpack/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "node_modules/@nx/webpack/node_modules/@babel/template": { + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", + "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.22.13", + "@babel/parser": "^7.22.15", + "@babel/types": "^7.22.15" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@nx/webpack/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": { @@ -6085,6 +6178,12 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, + "node_modules/@nx/webpack/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/@nx/webpack/node_modules/copy-webpack-plugin": { "version": "10.2.4", "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-10.2.4.tgz", @@ -6109,18 +6208,6 @@ "webpack": "^5.1.0" } }, - "node_modules/@nx/webpack/node_modules/dotenv": { - "version": "16.3.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", - "integrity": "sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/motdotla/dotenv?sponsor=1" - } - }, "node_modules/@nx/webpack/node_modules/glob-parent": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", @@ -6313,16 +6400,17 @@ } }, "node_modules/@nx/workspace": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/@nx/workspace/-/workspace-16.7.1.tgz", - "integrity": "sha512-lXApvxDtgQnnDrM0e067I4u1aC7F7vgGj7+RpUdU/MJ4B13BBdIllrC/jjHrpDeprvr8Pp/0Wq4qc3E9E46kiw==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/@nx/workspace/-/workspace-16.10.0.tgz", + "integrity": "sha512-95Eq36bzq2hb095Zvg+Ru8o9oIeOE62tNGGpohBkZPKoK2CUTYEq0AZtdj1suXS82ukCFCyyZ/c/fwxL62HRZA==", "dev": true, "dependencies": { - "@nrwl/workspace": "16.7.1", - "@nx/devkit": "16.7.1", + "@nrwl/workspace": "16.10.0", + "@nx/devkit": "16.10.0", "chalk": "^4.1.0", + "enquirer": "~2.3.6", "ignore": "^5.0.4", - "nx": "16.7.1", + "nx": "16.10.0", "rxjs": "^7.8.0", "tslib": "^2.3.0", "yargs-parser": "21.1.1" @@ -6377,6 +6465,18 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, + "node_modules/@nx/workspace/node_modules/enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "dependencies": { + "ansi-colors": "^4.1.1" + }, + "engines": { + "node": ">=8.6" + } + }, "node_modules/@nx/workspace/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -6454,8 +6554,7 @@ "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 + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==" }, "node_modules/@sinonjs/commons": { "version": "3.0.0", @@ -7621,52 +7720,382 @@ "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", "engines": { - "node": ">=0.10.0" + "node": ">=0.10.0" + } + }, + "node_modules/@storybook/core-client/node_modules/telejson": { + "version": "6.0.8", + "resolved": "https://registry.npmjs.org/telejson/-/telejson-6.0.8.tgz", + "integrity": "sha512-nerNXi+j8NK1QEfBHtZUN/aLdDcyupA//9kAboYLrtzZlPLpUfqbVGWb9zz91f/mIjRbAYhbgtnJHY8I1b5MBg==", + "dependencies": { + "@types/is-function": "^1.0.0", + "global": "^4.4.0", + "is-function": "^1.0.2", + "is-regex": "^1.1.2", + "is-symbol": "^1.0.3", + "isobject": "^4.0.0", + "lodash": "^4.17.21", + "memoizerific": "^1.11.3" + } + }, + "node_modules/@storybook/core-common": { + "version": "7.0.18", + "resolved": "https://registry.npmjs.org/@storybook/core-common/-/core-common-7.0.18.tgz", + "integrity": "sha512-HZAB1NIK/Yv0x9poyzqYcue2tx39+MAF1mbHgGy+JJZRerO2fRShgo8f8VPH9ChbFCoJ7isL5wNhgGdg9kp2kA==", + "dependencies": { + "@storybook/node-logger": "7.0.18", + "@storybook/types": "7.0.18", + "@types/node": "^16.0.0", + "@types/pretty-hrtime": "^1.0.0", + "chalk": "^4.1.0", + "esbuild": "^0.17.0", + "esbuild-register": "^3.4.0", + "file-system-cache": "^2.0.0", + "find-up": "^5.0.0", + "fs-extra": "^11.1.0", + "glob": "^8.1.0", + "glob-promise": "^6.0.2", + "handlebars": "^4.7.7", + "lazy-universal-dotenv": "^4.0.0", + "picomatch": "^2.3.0", + "pkg-dir": "^5.0.0", + "pretty-hrtime": "^1.0.3", + "resolve-from": "^5.0.0", + "ts-dedent": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/storybook" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/android-arm": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz", + "integrity": "sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/android-arm64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz", + "integrity": "sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/android-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.19.tgz", + "integrity": "sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/darwin-arm64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz", + "integrity": "sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/darwin-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz", + "integrity": "sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/freebsd-arm64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz", + "integrity": "sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/freebsd-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz", + "integrity": "sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/linux-arm": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz", + "integrity": "sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==", + "cpu": [ + "arm" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/linux-arm64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz", + "integrity": "sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/linux-ia32": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz", + "integrity": "sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/linux-loong64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz", + "integrity": "sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==", + "cpu": [ + "loong64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/linux-mips64el": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz", + "integrity": "sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==", + "cpu": [ + "mips64el" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/linux-ppc64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz", + "integrity": "sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==", + "cpu": [ + "ppc64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/linux-riscv64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz", + "integrity": "sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==", + "cpu": [ + "riscv64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/linux-s390x": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz", + "integrity": "sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==", + "cpu": [ + "s390x" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/linux-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz", + "integrity": "sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/netbsd-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz", + "integrity": "sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/openbsd-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz", + "integrity": "sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/sunos-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz", + "integrity": "sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@storybook/core-common/node_modules/@esbuild/win32-arm64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz", + "integrity": "sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==", + "cpu": [ + "arm64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" } }, - "node_modules/@storybook/core-client/node_modules/telejson": { - "version": "6.0.8", - "resolved": "https://registry.npmjs.org/telejson/-/telejson-6.0.8.tgz", - "integrity": "sha512-nerNXi+j8NK1QEfBHtZUN/aLdDcyupA//9kAboYLrtzZlPLpUfqbVGWb9zz91f/mIjRbAYhbgtnJHY8I1b5MBg==", - "dependencies": { - "@types/is-function": "^1.0.0", - "global": "^4.4.0", - "is-function": "^1.0.2", - "is-regex": "^1.1.2", - "is-symbol": "^1.0.3", - "isobject": "^4.0.0", - "lodash": "^4.17.21", - "memoizerific": "^1.11.3" + "node_modules/@storybook/core-common/node_modules/@esbuild/win32-ia32": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz", + "integrity": "sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==", + "cpu": [ + "ia32" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" } }, - "node_modules/@storybook/core-common": { - "version": "7.0.18", - "resolved": "https://registry.npmjs.org/@storybook/core-common/-/core-common-7.0.18.tgz", - "integrity": "sha512-HZAB1NIK/Yv0x9poyzqYcue2tx39+MAF1mbHgGy+JJZRerO2fRShgo8f8VPH9ChbFCoJ7isL5wNhgGdg9kp2kA==", - "dependencies": { - "@storybook/node-logger": "7.0.18", - "@storybook/types": "7.0.18", - "@types/node": "^16.0.0", - "@types/pretty-hrtime": "^1.0.0", - "chalk": "^4.1.0", - "esbuild": "^0.17.0", - "esbuild-register": "^3.4.0", - "file-system-cache": "^2.0.0", - "find-up": "^5.0.0", - "fs-extra": "^11.1.0", - "glob": "^8.1.0", - "glob-promise": "^6.0.2", - "handlebars": "^4.7.7", - "lazy-universal-dotenv": "^4.0.0", - "picomatch": "^2.3.0", - "pkg-dir": "^5.0.0", - "pretty-hrtime": "^1.0.3", - "resolve-from": "^5.0.0", - "ts-dedent": "^2.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/storybook" + "node_modules/@storybook/core-common/node_modules/@esbuild/win32-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz", + "integrity": "sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==", + "cpu": [ + "x64" + ], + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" } }, "node_modules/@storybook/core-common/node_modules/@types/node": { @@ -7727,6 +8156,42 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, + "node_modules/@storybook/core-common/node_modules/esbuild": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz", + "integrity": "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==", + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.17.19", + "@esbuild/android-arm64": "0.17.19", + "@esbuild/android-x64": "0.17.19", + "@esbuild/darwin-arm64": "0.17.19", + "@esbuild/darwin-x64": "0.17.19", + "@esbuild/freebsd-arm64": "0.17.19", + "@esbuild/freebsd-x64": "0.17.19", + "@esbuild/linux-arm": "0.17.19", + "@esbuild/linux-arm64": "0.17.19", + "@esbuild/linux-ia32": "0.17.19", + "@esbuild/linux-loong64": "0.17.19", + "@esbuild/linux-mips64el": "0.17.19", + "@esbuild/linux-ppc64": "0.17.19", + "@esbuild/linux-riscv64": "0.17.19", + "@esbuild/linux-s390x": "0.17.19", + "@esbuild/linux-x64": "0.17.19", + "@esbuild/netbsd-x64": "0.17.19", + "@esbuild/openbsd-x64": "0.17.19", + "@esbuild/sunos-x64": "0.17.19", + "@esbuild/win32-arm64": "0.17.19", + "@esbuild/win32-ia32": "0.17.19", + "@esbuild/win32-x64": "0.17.19" + } + }, "node_modules/@storybook/core-common/node_modules/fs-extra": { "version": "11.1.1", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz", @@ -11498,9 +11963,9 @@ } }, "node_modules/@swc-node/core": { - "version": "1.10.4", - "resolved": "https://registry.npmjs.org/@swc-node/core/-/core-1.10.4.tgz", - "integrity": "sha512-ixZCb4LsSUPflnOxj4a8T5yTPzKbgvP+tF0N59Rk2+68ikFRt9Qci2qy9xfuDIQbuiONzXersrNpd+p598uH0A==", + "version": "1.10.6", + "resolved": "https://registry.npmjs.org/@swc-node/core/-/core-1.10.6.tgz", + "integrity": "sha512-lDIi/rPosmKIknWzvs2/Fi9zWRtbkx8OJ9pQaevhsoGzJSal8Pd315k1W5AIrnknfdAB4HqRN12fk6AhqnrEEw==", "devOptional": true, "engines": { "node": ">= 10" @@ -11514,12 +11979,12 @@ } }, "node_modules/@swc-node/register": { - "version": "1.6.6", - "resolved": "https://registry.npmjs.org/@swc-node/register/-/register-1.6.6.tgz", - "integrity": "sha512-KgnQrWLgtJzEgPpxvhOPUDonv1xreVumGdzXDQlDVIqU3vH+spW8ZYxxyjJVMh3G/mQG8E3bFvUMHIS+E3FL2w==", + "version": "1.6.8", + "resolved": "https://registry.npmjs.org/@swc-node/register/-/register-1.6.8.tgz", + "integrity": "sha512-74ijy7J9CWr1Z88yO+ykXphV29giCrSpANQPQRooE0bObpkTO1g4RzQovIfbIaniBiGDDVsYwDoQ3FIrCE8HcQ==", "devOptional": true, "dependencies": { - "@swc-node/core": "^1.10.4", + "@swc-node/core": "^1.10.6", "@swc-node/sourcemap-support": "^0.3.0", "colorette": "^2.0.19", "debug": "^4.3.4", @@ -11546,11 +12011,15 @@ } }, "node_modules/@swc/core": { - "version": "1.3.74", - "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.74.tgz", - "integrity": "sha512-P+MIExOTdWlfq8Heb1/NhBAke6UTckd4cRDuJoFcFMGBRvgoCMNWhnfP3FRRXPLI7GGg27dRZS+xHiqYyQmSrA==", + "version": "1.3.93", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.3.93.tgz", + "integrity": "sha512-690GRr1wUGmGYZHk7fUduX/JUwViMF2o74mnZYIWEcJaCcd9MQfkhsxPBtjeg6tF+h266/Cf3RPYhsFBzzxXcA==", "devOptional": true, "hasInstallScript": true, + "dependencies": { + "@swc/counter": "^0.1.1", + "@swc/types": "^0.1.5" + }, "engines": { "node": ">=10" }, @@ -11559,16 +12028,16 @@ "url": "https://opencollective.com/swc" }, "optionalDependencies": { - "@swc/core-darwin-arm64": "1.3.74", - "@swc/core-darwin-x64": "1.3.74", - "@swc/core-linux-arm-gnueabihf": "1.3.74", - "@swc/core-linux-arm64-gnu": "1.3.74", - "@swc/core-linux-arm64-musl": "1.3.74", - "@swc/core-linux-x64-gnu": "1.3.74", - "@swc/core-linux-x64-musl": "1.3.74", - "@swc/core-win32-arm64-msvc": "1.3.74", - "@swc/core-win32-ia32-msvc": "1.3.74", - "@swc/core-win32-x64-msvc": "1.3.74" + "@swc/core-darwin-arm64": "1.3.93", + "@swc/core-darwin-x64": "1.3.93", + "@swc/core-linux-arm-gnueabihf": "1.3.93", + "@swc/core-linux-arm64-gnu": "1.3.93", + "@swc/core-linux-arm64-musl": "1.3.93", + "@swc/core-linux-x64-gnu": "1.3.93", + "@swc/core-linux-x64-musl": "1.3.93", + "@swc/core-win32-arm64-msvc": "1.3.93", + "@swc/core-win32-ia32-msvc": "1.3.93", + "@swc/core-win32-x64-msvc": "1.3.93" }, "peerDependencies": { "@swc/helpers": "^0.5.0" @@ -11580,9 +12049,9 @@ } }, "node_modules/@swc/core-darwin-arm64": { - "version": "1.3.74", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.74.tgz", - "integrity": "sha512-2rMV4QxM583jXcREfo0MhV3Oj5pgRSfSh/kVrB1twL2rQxOrbzkAPT/8flmygdVoL4f2F7o1EY5lKlYxEBiIKQ==", + "version": "1.3.93", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.3.93.tgz", + "integrity": "sha512-gEKgk7FVIgltnIfDO6GntyuQBBlAYg5imHpRgLxB1zSI27ijVVkksc6QwISzFZAhKYaBWIsFSVeL9AYSziAF7A==", "cpu": [ "arm64" ], @@ -11595,9 +12064,9 @@ } }, "node_modules/@swc/core-darwin-x64": { - "version": "1.3.74", - "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.74.tgz", - "integrity": "sha512-KKEGE1wXneYXe15fWDRM8/oekd/Q4yAuccA0vWY/7i6nOSPqWYcSDR0nRtR030ltDxWt0rk/eCTmNkrOWrKs3A==", + "version": "1.3.93", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.3.93.tgz", + "integrity": "sha512-ZQPxm/fXdDQtn3yrYSL/gFfA8OfZ5jTi33yFQq6vcg/Y8talpZ+MgdSlYM0FkLrZdMTYYTNFiuBQuuvkA+av+Q==", "cpu": [ "x64" ], @@ -11610,9 +12079,9 @@ } }, "node_modules/@swc/core-linux-arm-gnueabihf": { - "version": "1.3.74", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.74.tgz", - "integrity": "sha512-HehH5DR6r/5fIVu7tu8ZqgrHkhSCQNewf1ztFQJgcmaQWn+H4AJERBjwkjosqh4TvUJucZv8vyRTvrFeBXaCSA==", + "version": "1.3.93", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.3.93.tgz", + "integrity": "sha512-OYFMMI2yV+aNe3wMgYhODxHdqUB/jrK0SEMHHS44GZpk8MuBXEF+Mcz4qjkY5Q1EH7KVQqXb/gVWwdgTHpjM2A==", "cpu": [ "arm" ], @@ -11625,9 +12094,9 @@ } }, "node_modules/@swc/core-linux-arm64-gnu": { - "version": "1.3.74", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.74.tgz", - "integrity": "sha512-+xkbCRz/wczgdknoV4NwYxbRI2dD7x/qkIFcVM2buzLCq8oWLweuV8+aL4pRqu0qDh7ZSb1jcaVTUIsySCJznA==", + "version": "1.3.93", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.3.93.tgz", + "integrity": "sha512-BT4dT78odKnJMNiq5HdjBsv29CiIdcCcImAPxeFqAeFw1LL6gh9nzI8E96oWc+0lVT5lfhoesCk4Qm7J6bty8w==", "cpu": [ "arm64" ], @@ -11640,9 +12109,9 @@ } }, "node_modules/@swc/core-linux-arm64-musl": { - "version": "1.3.74", - "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.74.tgz", - "integrity": "sha512-maKFZSCD3tQznzPV7T3V+TtiWZFEFM8YrnSS5fQNNb+K9J65sL+170uTb3M7H4cFkG+9Sm5k5yCrCIutlvV48g==", + "version": "1.3.93", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.3.93.tgz", + "integrity": "sha512-yH5fWEl1bktouC0mhh0Chuxp7HEO4uCtS/ly1Vmf18gs6wZ8DOOkgAEVv2dNKIryy+Na++ljx4Ym7C8tSJTrLw==", "cpu": [ "arm64" ], @@ -11655,9 +12124,9 @@ } }, "node_modules/@swc/core-linux-x64-gnu": { - "version": "1.3.74", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.74.tgz", - "integrity": "sha512-LEXpcShF6DLTWJSiBhMSYZkLQ27UvaQ24fCFhoIV/R3dhYaUpHmIyLPPBNC82T03lB3ONUFVwrRw6fxDJ/f00A==", + "version": "1.3.93", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.3.93.tgz", + "integrity": "sha512-OFUdx64qvrGJhXKEyxosHxgoUVgba2ztYh7BnMiU5hP8lbI8G13W40J0SN3CmFQwPP30+3oEbW7LWzhKEaYjlg==", "cpu": [ "x64" ], @@ -11670,9 +12139,9 @@ } }, "node_modules/@swc/core-linux-x64-musl": { - "version": "1.3.74", - "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.74.tgz", - "integrity": "sha512-sxsFctbFMZEFmDE7CmYljG0dMumH8XBTwwtGr8s6z0fYAzXBGNq2AFPcmEh2np9rPWkt7pE1m0ByESD+dMkbxQ==", + "version": "1.3.93", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.3.93.tgz", + "integrity": "sha512-4B8lSRwEq1XYm6xhxHhvHmKAS7pUp1Q7E33NQ2TlmFhfKvCOh86qvThcjAOo57x8DRwmpvEVrqvpXtYagMN6Ig==", "cpu": [ "x64" ], @@ -11685,9 +12154,9 @@ } }, "node_modules/@swc/core-win32-arm64-msvc": { - "version": "1.3.74", - "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.74.tgz", - "integrity": "sha512-F7hY9/BjFCozA4YPFYFH5FGCyWwa44vIXHqG66F5cDwXDGFn8ZtBsYIsiPfUYcx0AeAo1ojnVWKPxokZhYNYqA==", + "version": "1.3.93", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.3.93.tgz", + "integrity": "sha512-BHShlxtkven8ZjjvZ5QR6sC5fZCJ9bMujEkiha6W4cBUTY7ce7qGFyHmQd+iPC85d9kD/0cCiX/Xez8u0BhO7w==", "cpu": [ "arm64" ], @@ -11700,9 +12169,9 @@ } }, "node_modules/@swc/core-win32-ia32-msvc": { - "version": "1.3.74", - "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.74.tgz", - "integrity": "sha512-qBAsiD1AlIdqED6wy3UNRHyAys9pWMUidX0LJ6mj24r/vfrzzTBAUrLJe5m7bzE+F1Rgi001avYJeEW1DLEJ+Q==", + "version": "1.3.93", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.3.93.tgz", + "integrity": "sha512-nEwNWnz4JzYAK6asVvb92yeylfxMYih7eMQOnT7ZVlZN5ba9WF29xJ6kcQKs9HRH6MvWhz9+wRgv3FcjlU6HYA==", "cpu": [ "ia32" ], @@ -11715,9 +12184,9 @@ } }, "node_modules/@swc/core-win32-x64-msvc": { - "version": "1.3.74", - "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.74.tgz", - "integrity": "sha512-S3YAvvLprTnPRwQuy9Dkwubb5SRLpVK3JJsqYDbGfgj8PGQyKHZcVJ5X3nfFsoWLy3j9B/3Os2nawprRSzeC5A==", + "version": "1.3.93", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.3.93.tgz", + "integrity": "sha512-jibQ0zUr4kwJaQVwgmH+svS04bYTPnPw/ZkNInzxS+wFAtzINBYcU8s2PMWbDb2NGYiRSEeoSGyAvS9H+24JFA==", "cpu": [ "x64" ], @@ -11729,14 +12198,17 @@ "node": ">=10" } }, - "node_modules/@swc/helpers": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.1.tgz", - "integrity": "sha512-sJ902EfIzn1Fa+qYmjdQqh8tPsoxyBz+8yBKC2HKUxyezKJFwPGOn7pv4WY6QuQW//ySQi5lJjA/ZT9sNWWNTg==", - "devOptional": true, - "dependencies": { - "tslib": "^2.4.0" - } + "node_modules/@swc/counter": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.2.tgz", + "integrity": "sha512-9F4ys4C74eSTEUNndnER3VJ15oru2NumfQxS8geE+f3eB5xvfxpWyqE5XlVnxb/R14uoXi6SLbBwwiDSkv+XEw==", + "devOptional": true + }, + "node_modules/@swc/types": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.5.tgz", + "integrity": "sha512-myfUej5naTBWnqOCc/MdVOLVjXUXtIA+NpDrDBKJtLLg2shUjBu3cZmB/85RyitKc55+lUUyl7oRfLOvkr2hsw==", + "devOptional": true }, "node_modules/@tootallnate/once": { "version": "2.0.0", @@ -13910,9 +14382,9 @@ } }, "node_modules/axios": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.4.0.tgz", - "integrity": "sha512-S4XCWMEmzvo64T9GfvQDOXgYRDJ/wsSZc7Jvdgx5u1sd0JwsuPLqb3SYmusag+edF6ziyMensPVqLTSc1PiSEA==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.5.0.tgz", + "integrity": "sha512-D4DdjDo5CY50Qms0qGQTTw6Q44jl7zRwY7bthds06pUGfChBCTcQs+N743eFWGEd6pRTMd6A+I87aWyFV5wiZQ==", "dependencies": { "follow-redirects": "^1.15.0", "form-data": "^4.0.0", @@ -14727,6 +15199,15 @@ "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==" }, + "node_modules/builtins": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/builtins/-/builtins-5.0.1.tgz", + "integrity": "sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==", + "dev": true, + "dependencies": { + "semver": "^7.0.0" + } + }, "node_modules/bytes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", @@ -15112,13 +15593,16 @@ } }, "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "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==", "dependencies": { "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", + "strip-ansi": "^6.0.1", "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" } }, "node_modules/clone": { @@ -15202,6 +15686,19 @@ "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==" }, + "node_modules/columnify": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/columnify/-/columnify-1.6.0.tgz", + "integrity": "sha512-lomjuFZKfM6MSAnV9aCZC9sc0qGbmZdfygNv+nCpqVkSKdCxCklLtd16O0EILGkImHw9ZpHkAnHaB+8Zxq5W6Q==", + "dev": true, + "dependencies": { + "strip-ansi": "^6.0.1", + "wcwidth": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, "node_modules/combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", @@ -16357,7 +16854,6 @@ "version": "29.4.3", "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.4.3.tgz", "integrity": "sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==", - "dev": true, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } @@ -16877,10 +17373,11 @@ "integrity": "sha512-Twf7I2v4/1tLoIXMT8HlqaBSS5H2wQTs2wx3MNYCI8K1R1/clXyCazrcVCPm/FuO9cyV8+leEaZOWD5C253NDg==" }, "node_modules/esbuild": { - "version": "0.17.19", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz", - "integrity": "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.5.tgz", + "integrity": "sha512-bUxalY7b1g8vNhQKdB24QDmHeY4V4tw/s6Ak5z+jJX9laP5MoQseTOMemAr0gxssjNcH0MCViG8ONI2kksvfFQ==", "hasInstallScript": true, + "peer": true, "bin": { "esbuild": "bin/esbuild" }, @@ -16888,28 +17385,28 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.17.19", - "@esbuild/android-arm64": "0.17.19", - "@esbuild/android-x64": "0.17.19", - "@esbuild/darwin-arm64": "0.17.19", - "@esbuild/darwin-x64": "0.17.19", - "@esbuild/freebsd-arm64": "0.17.19", - "@esbuild/freebsd-x64": "0.17.19", - "@esbuild/linux-arm": "0.17.19", - "@esbuild/linux-arm64": "0.17.19", - "@esbuild/linux-ia32": "0.17.19", - "@esbuild/linux-loong64": "0.17.19", - "@esbuild/linux-mips64el": "0.17.19", - "@esbuild/linux-ppc64": "0.17.19", - "@esbuild/linux-riscv64": "0.17.19", - "@esbuild/linux-s390x": "0.17.19", - "@esbuild/linux-x64": "0.17.19", - "@esbuild/netbsd-x64": "0.17.19", - "@esbuild/openbsd-x64": "0.17.19", - "@esbuild/sunos-x64": "0.17.19", - "@esbuild/win32-arm64": "0.17.19", - "@esbuild/win32-ia32": "0.17.19", - "@esbuild/win32-x64": "0.17.19" + "@esbuild/android-arm": "0.19.5", + "@esbuild/android-arm64": "0.19.5", + "@esbuild/android-x64": "0.19.5", + "@esbuild/darwin-arm64": "0.19.5", + "@esbuild/darwin-x64": "0.19.5", + "@esbuild/freebsd-arm64": "0.19.5", + "@esbuild/freebsd-x64": "0.19.5", + "@esbuild/linux-arm": "0.19.5", + "@esbuild/linux-arm64": "0.19.5", + "@esbuild/linux-ia32": "0.19.5", + "@esbuild/linux-loong64": "0.19.5", + "@esbuild/linux-mips64el": "0.19.5", + "@esbuild/linux-ppc64": "0.19.5", + "@esbuild/linux-riscv64": "0.19.5", + "@esbuild/linux-s390x": "0.19.5", + "@esbuild/linux-x64": "0.19.5", + "@esbuild/netbsd-x64": "0.19.5", + "@esbuild/openbsd-x64": "0.19.5", + "@esbuild/sunos-x64": "0.19.5", + "@esbuild/win32-arm64": "0.19.5", + "@esbuild/win32-ia32": "0.19.5", + "@esbuild/win32-x64": "0.19.5" } }, "node_modules/esbuild-plugin-alias": { @@ -20856,7 +21353,6 @@ "version": "29.6.2", "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.6.2.tgz", "integrity": "sha512-t+ST7CB9GX5F2xKwhwCf0TAR17uNDiaPTZnVymP9lw0lssa9vG+AFyDZoeIHStU3WowFFwT+ky+er0WVl2yGhA==", - "dev": true, "dependencies": { "chalk": "^4.0.0", "diff-sequences": "^29.4.3", @@ -20871,7 +21367,6 @@ "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" }, @@ -20886,7 +21381,6 @@ "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" @@ -20902,7 +21396,6 @@ "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" }, @@ -20913,14 +21406,12 @@ "node_modules/jest-diff/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 + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "node_modules/jest-diff/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" } @@ -20929,7 +21420,6 @@ "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" }, @@ -21083,7 +21573,6 @@ "version": "29.4.3", "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.4.3.tgz", "integrity": "sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg==", - "dev": true, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } @@ -22093,9 +22582,9 @@ } }, "node_modules/jiti": { - "version": "1.19.3", - "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.19.3.tgz", - "integrity": "sha512-5eEbBDQT/jF1xg6l36P+mWGGoH9Spuy0PCdSr2dtWRDGC6ph/w9ZCL4lmESW8f8F7MwT3XKescfP0wnZWAKL9w==", + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.20.0.tgz", + "integrity": "sha512-3TV69ZbrvV6U5DfQimop50jE9Dl6J8O1ja1dvBbMba/sZ3YBEQqJ2VZRoQPVnhlzjNtU1vaXRZVrVjU4qtm8yA==", "dev": true, "peer": true, "bin": { @@ -23645,6 +24134,42 @@ "node": ">=0.10.0" } }, + "node_modules/npm-package-arg": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.1.tgz", + "integrity": "sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ==", + "dev": true, + "dependencies": { + "hosted-git-info": "^7.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "validate-npm-package-name": "^5.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/npm-package-arg/node_modules/hosted-git-info": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", + "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", + "dev": true, + "dependencies": { + "lru-cache": "^10.0.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/npm-package-arg/node_modules/lru-cache": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } + }, "node_modules/npm-run-path": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", @@ -23685,12 +24210,12 @@ "dev": true }, "node_modules/nx": { - "version": "16.7.1", - "resolved": "https://registry.npmjs.org/nx/-/nx-16.7.1.tgz", - "integrity": "sha512-WdzUpoyPMjYyIwYyxiNqGc76HTked/5DiAdVPEjL9MbjNZVwtFE+aMmyf+qS6GV64yNBlUrQphABfP3GiCbuSQ==", + "version": "16.10.0", + "resolved": "https://registry.npmjs.org/nx/-/nx-16.10.0.tgz", + "integrity": "sha512-gZl4iCC0Hx0Qe1VWmO4Bkeul2nttuXdPpfnlcDKSACGu3ZIo+uySqwOF8yBAxSTIf8xe2JRhgzJN1aFkuezEBg==", "hasInstallScript": true, "dependencies": { - "@nrwl/tao": "16.7.1", + "@nrwl/tao": "16.10.0", "@parcel/watcher": "2.0.4", "@yarnpkg/lockfile": "^1.1.0", "@yarnpkg/parsers": "3.0.0-rc.46", @@ -23699,15 +24224,16 @@ "chalk": "^4.1.0", "cli-cursor": "3.1.0", "cli-spinners": "2.6.1", - "cliui": "^7.0.2", + "cliui": "^8.0.1", "dotenv": "~16.3.1", + "dotenv-expand": "~10.0.0", "enquirer": "~2.3.6", - "fast-glob": "3.2.7", "figures": "3.2.0", "flat": "^5.0.2", "fs-extra": "^11.1.0", "glob": "7.1.4", "ignore": "^5.0.4", + "jest-diff": "^29.4.1", "js-yaml": "4.1.0", "jsonc-parser": "3.2.0", "lines-and-columns": "~2.0.3", @@ -23730,20 +24256,20 @@ "nx": "bin/nx.js" }, "optionalDependencies": { - "@nx/nx-darwin-arm64": "16.7.1", - "@nx/nx-darwin-x64": "16.7.1", - "@nx/nx-freebsd-x64": "16.7.1", - "@nx/nx-linux-arm-gnueabihf": "16.7.1", - "@nx/nx-linux-arm64-gnu": "16.7.1", - "@nx/nx-linux-arm64-musl": "16.7.1", - "@nx/nx-linux-x64-gnu": "16.7.1", - "@nx/nx-linux-x64-musl": "16.7.1", - "@nx/nx-win32-arm64-msvc": "16.7.1", - "@nx/nx-win32-x64-msvc": "16.7.1" + "@nx/nx-darwin-arm64": "16.10.0", + "@nx/nx-darwin-x64": "16.10.0", + "@nx/nx-freebsd-x64": "16.10.0", + "@nx/nx-linux-arm-gnueabihf": "16.10.0", + "@nx/nx-linux-arm64-gnu": "16.10.0", + "@nx/nx-linux-arm64-musl": "16.10.0", + "@nx/nx-linux-x64-gnu": "16.10.0", + "@nx/nx-linux-x64-musl": "16.10.0", + "@nx/nx-win32-arm64-msvc": "16.10.0", + "@nx/nx-win32-x64-msvc": "16.10.0" }, "peerDependencies": { - "@swc-node/register": "^1.4.2", - "@swc/core": "^1.2.173" + "@swc-node/register": "^1.6.7", + "@swc/core": "^1.3.85" }, "peerDependenciesMeta": { "@swc-node/register": { @@ -23755,13 +24281,12 @@ } }, "node_modules/nx-cloud": { - "version": "16.4.0-beta.1", - "resolved": "https://registry.npmjs.org/nx-cloud/-/nx-cloud-16.4.0-beta.1.tgz", - "integrity": "sha512-I62IBQDjbA3h+P8JVFrannVllj8O9/3YYfyg8sPLVYxFKwnqqsgR6kG2zHxB9Q2k0hoSU7JZ02d9oPJsRzL5rg==", + "version": "16.5.2", + "resolved": "https://registry.npmjs.org/nx-cloud/-/nx-cloud-16.5.2.tgz", + "integrity": "sha512-1t1Ii9gojl8r/8hFGaZ/ZyYR0Cb0hzvXLCsaFuvg+EJEFdvua3P4cfNya/0bdRrm+7Eb/ITUOskbvYq4TSlyGg==", "dev": true, "dependencies": { - "@nrwl/nx-cloud": "16.4.0-beta.1", - "@swc/helpers": "0.5.1", + "@nrwl/nx-cloud": "16.5.2", "axios": "1.1.3", "chalk": "^4.1.0", "dotenv": "~10.0.0", @@ -23990,21 +24515,6 @@ "node": ">=8.6" } }, - "node_modules/nx/node_modules/fast-glob": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", - "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", - "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" - } - }, "node_modules/nx/node_modules/fs-extra": { "version": "11.1.1", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz", @@ -24906,9 +25416,9 @@ } }, "node_modules/postcss": { - "version": "8.4.27", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.27.tgz", - "integrity": "sha512-gY/ACJtJPSmUFPDCHtX78+01fHa64FaU4zaaWfuh1MhGJISufJAH4cun6k/8fwsHYeK4UQmENQK+tRLCFJE8JQ==", + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", "funding": [ { "type": "opencollective", @@ -25078,15 +25588,15 @@ "peer": true }, "node_modules/postcss-loader/node_modules/cosmiconfig": { - "version": "8.2.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz", - "integrity": "sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==", + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", + "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", "dev": true, "peer": true, "dependencies": { - "import-fresh": "^3.2.1", + "import-fresh": "^3.3.0", "js-yaml": "^4.1.0", - "parse-json": "^5.0.0", + "parse-json": "^5.2.0", "path-type": "^4.0.0" }, "engines": { @@ -25094,6 +25604,14 @@ }, "funding": { "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, "node_modules/postcss-loader/node_modules/js-yaml": { @@ -25540,7 +26058,6 @@ "version": "29.6.2", "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.2.tgz", "integrity": "sha512-1q0oC8eRveTg5nnBEWMXAU2qpv65Gnuf2eCQzSjxpWFkPaPARwqZZDGuNE0zPAZfTCHzIk3A8dIjwlQKKLphyg==", - "dev": true, "dependencies": { "@jest/schemas": "^29.6.0", "ansi-styles": "^5.0.0", @@ -25554,7 +26071,6 @@ "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" }, @@ -25570,6 +26086,15 @@ "node": ">= 0.8" } }, + "node_modules/proc-log": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz", + "integrity": "sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/process": { "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", @@ -25883,8 +26408,7 @@ "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 + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==" }, "node_modules/read-cache": { "version": "1.0.0", @@ -26483,9 +27007,9 @@ } }, "node_modules/rollup": { - "version": "3.28.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.28.0.tgz", - "integrity": "sha512-d7zhvo1OUY2SXSM6pfNjgD5+d0Nz87CUp4mt8l/GgVP3oBsPwzNvSzyu1me6BSG9JIgWNTVcafIXBIyM8yQ3yw==", + "version": "3.29.4", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz", + "integrity": "sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==", "dev": true, "peer": true, "bin": { @@ -28457,15 +28981,16 @@ } }, "node_modules/ts-loader": { - "version": "9.4.4", - "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.4.4.tgz", - "integrity": "sha512-MLukxDHBl8OJ5Dk3y69IsKVFRA/6MwzEqBgh+OXMPB/OD01KQuWPFd1WAQP8a5PeSCAxfnkhiuWqfmFJzJQt9w==", + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.0.tgz", + "integrity": "sha512-LLlB/pkB4q9mW2yLdFMnK3dEHbrBjeZTYguaaIfusyojBgAGf5kF+O6KcWqiGzWqHk0LBsoolrp4VftEURhybg==", "dev": true, "dependencies": { "chalk": "^4.1.0", "enhanced-resolve": "^5.0.0", "micromatch": "^4.0.0", - "semver": "^7.3.4" + "semver": "^7.3.4", + "source-map": "^0.7.4" }, "engines": { "node": ">=12.0.0" @@ -29197,6 +29722,18 @@ "spdx-expression-parse": "^3.0.0" } }, + "node_modules/validate-npm-package-name": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz", + "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==", + "dev": true, + "dependencies": { + "builtins": "^5.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", @@ -30657,19 +31194,6 @@ "node": ">=12" } }, - "node_modules/yargs/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==", - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/yarn": { "version": "1.22.19", "resolved": "https://registry.npmjs.org/yarn/-/yarn-1.22.19.tgz", @@ -30705,9 +31229,9 @@ } }, "node_modules/zone.js": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.13.1.tgz", - "integrity": "sha512-+bIeDAFEBYuXRuU3qGQvzdPap+N1zjM4KkBAiiQuVVCrHrhjDuY6VkUhNa5+U27+9w0q3fbKiMCbpJ0XzMmSWA==", + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.13.3.tgz", + "integrity": "sha512-MKPbmZie6fASC/ps4dkmIhaT5eonHkEt6eAy80K42tAm0G2W+AahLJjbfi6X9NPdciOE9GRFTTM8u2IiF6O3ww==", "peer": true, "dependencies": { "tslib": "^2.3.0" diff --git a/package.json b/package.json index 51493819..adcf1ee9 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@srleecode/domain", - "version": "16.7.1", + "version": "16.10.0", "private": true, "description": "Nrwl nx plugin to allow operations at the domain level", "homepage": "https://github.com/srleecode/domain", @@ -26,9 +26,9 @@ "workspace-generator": "nx workspace-generator" }, "dependencies": { - "@angular/core": "16.2.1", + "@angular/core": "16.2.9", "@schematics/angular": "16.2.0", - "@nx/devkit": "16.7.1", + "@nx/devkit": "16.10.0", "@storybook/builder-webpack5": "7.0.18", "@storybook/core-server": "7.2.1", "@storybook/manager-webpack5": "6.5.16", @@ -40,8 +40,8 @@ "@angular-devkit/schematics": "16.2.0", "@commitlint/cli": "^16.1.0", "@commitlint/config-angular": "^16.0.0", - "@swc-node/register": "^1.4.2", - "@swc/core": "^1.2.173", + "@swc-node/register": "1.6.8", + "@swc/core": "1.3.93", "@types/jest": "29.4.0", "@types/node": "18.7.18", "@typescript-eslint/eslint-plugin": "5.60.1", @@ -53,7 +53,7 @@ "husky": "^7.0.4", "jest": "29.5.0", "jest-environment-jsdom": "29.5.0", - "nx": "16.7.1", + "nx": "16.10.0", "prettier": "2.6.2", "rimraf": "^3.0.2", "ts-jest": "29.1.0", @@ -61,17 +61,17 @@ "tslib": "^2.3.1", "typescript": "5.1.6", "yarn": "^1.22.17", - "nx-cloud": "16.4.0-beta.1", - "@nx/workspace": "16.7.1", - "@nx/storybook": "16.7.1", - "@nx/linter": "16.7.1", - "@nx/js": "16.7.1", - "@nx/eslint-plugin": "16.7.1", - "@nx/cypress": "16.7.1", - "@nx/plugin": "16.7.1", - "@nx/node": "16.7.1", - "@nx/jest": "16.7.1", - "@nx/angular": "16.7.1" + "nx-cloud": "16.5.2", + "@nx/workspace": "16.10.0", + "@nx/storybook": "16.10.0", + "@nx/linter": "16.10.0", + "@nx/js": "16.10.0", + "@nx/eslint-plugin": "16.10.0", + "@nx/cypress": "16.10.0", + "@nx/plugin": "16.10.0", + "@nx/node": "16.10.0", + "@nx/jest": "16.10.0", + "@nx/angular": "16.10.0" }, "engines": { "node": ">=16.0.0", diff --git a/packages/domain/generators/cypress/domain-test/src/generator.spec.ts b/packages/domain/generators/cypress/domain-test/src/generator.spec.ts index 57fae92d..e3a1ef10 100644 --- a/packages/domain/generators/cypress/domain-test/src/generator.spec.ts +++ b/packages/domain/generators/cypress/domain-test/src/generator.spec.ts @@ -1,6 +1,7 @@ import { readProjectConfiguration, Tree } from '@nx/devkit'; import { createTreeWithEmptyWorkspace } from '@nx/devkit/testing'; import { setupDomainTestGenerator } from './generator'; +import createApplicationLayerGenerator from '@srleecode/domain/angular/application-layer'; describe('setupDomainTestGenerator', () => { let tree: Tree; @@ -9,6 +10,13 @@ describe('setupDomainTestGenerator', () => { beforeAll(async () => { tree = createTreeWithEmptyWorkspace(); tree.write(`libs/test-app/test-domain/shell/src.index.ts`, ''); + await createApplicationLayerGenerator(tree, { + groupingFolder: 'libs/test-app/test-domain', + buildable: true, + strict: false, + enableIvy: true, + publishable: false, + }); await setupDomainTestGenerator(tree, { groupingFolder: 'libs/test-app/test-domain', type: 'e2e', @@ -17,7 +25,7 @@ describe('setupDomainTestGenerator', () => { it('should move cypress directory from apps to libs', async () => { expect( - tree.exists(`libs/test-app/test-domain/_e2e/cypress.config.ts`) + tree.exists(`libs/test-app/test-domain/.e2e/cypress.config.ts`) ).toBe(true); }); @@ -39,20 +47,20 @@ describe('setupDomainTestGenerator', () => { it('should remove page object file', () => { expect( - tree.exists(`libs/test-app/test-domain/_e2e/src/support/app.po.ts`) + tree.exists(`libs/test-app/test-domain/.e2e/src/support/app.po.ts`) ).toBe(false); }); it('should remove custom commands file', () => { expect( - tree.exists(`libs/test-app/test-domain/_e2e/src/support/commands.ts`) + tree.exists(`libs/test-app/test-domain/.e2e/src/support/commands.ts`) ).toBe(false); }); it('should reset index.ts to an empty file', () => { expect( tree - .read(`libs/test-app/test-domain/_e2e/src/support/index.ts`) + .read(`libs/test-app/test-domain/.e2e/src/support/index.ts`) .toString() ).toBe(''); }); @@ -64,6 +72,7 @@ describe('setupDomainTestGenerator', () => { ); expect(projectConfig.implicitDependencies).toEqual([ 'test-app-test-domain-shell', + 'test-app-test-domain-application', ]); }); it('should add tags', () => { @@ -80,7 +89,7 @@ describe('setupDomainTestGenerator', () => { }); describe('ct', () => { - const cypressFile = 'libs/test-app/test-domain/_ct/cypress.config.ts'; + const cypressFile = 'libs/test-app/test-domain/.ct/cypress.config.ts'; beforeAll(async () => { tree = createTreeWithEmptyWorkspace(); tree.write(`libs/test-app/test-domain/shell/src.index.ts`, ''); diff --git a/packages/domain/generators/cypress/domain-test/src/generator.ts b/packages/domain/generators/cypress/domain-test/src/generator.ts index 540dba01..5dcdcc5e 100644 --- a/packages/domain/generators/cypress/domain-test/src/generator.ts +++ b/packages/domain/generators/cypress/domain-test/src/generator.ts @@ -1,22 +1,22 @@ -import { Tree, convertNxGenerator, formatFiles, logger } from '@nx/devkit'; -import { cypressProjectGenerator } from '@nx/cypress'; +import { + Tree, + addProjectConfiguration, + convertNxGenerator, + formatFiles, + logger, +} from '@nx/devkit'; +import { cypressE2EConfigurationGenerator } from '@nx/cypress'; import { removeUneededCypressProjectFiles } from './lib/remove-uneeded-cypress-project-files'; -import { removeDevServerTarget } from './lib/remove-dev-server-target'; -import { setProjectToLibraryType } from './lib/set-project-to-library-type'; -import { renameCypressProject } from './lib/rename-cypress-project'; -import { addImplicitDependencies } from './lib/add-implicit-dependencies'; +import { getImplicitDependencies } from './lib/get-implicit-dependencies'; import { SetupDomainTestGeneratorSchema } from './schema'; -import { moveProjectToDomain } from './lib/move-project-to-domain'; // eslint-disable-next-line @nx/enforce-module-boundaries import { - getDomainPath, - getWorkspaceLayout, getDasherizedFolderPath, - getNpmScope, validateGroupingFolder, } from '../../../shared/utils'; -import { addDomainTestEslintTags } from './lib/add-domain-test-eslint-tags'; +import { getTags } from './lib/get-domain-test-eslint-tags'; import { convertE2ETargetToCt } from './lib/convert-e2e-target-to-ct'; +import { ProjectType } from '@nx/workspace'; export async function setupDomainTestGenerator( tree: Tree, @@ -25,46 +25,38 @@ export async function setupDomainTestGenerator( const { groupingFolder, type } = options; validateGroupingFolder(tree, groupingFolder); const dasherisedFolderPath = getDasherizedFolderPath(tree, groupingFolder); - const { libsDir, standaloneAsDefault } = getWorkspaceLayout(tree); - const npmScope = getNpmScope(tree); - const domainPath = getDomainPath(tree, groupingFolder); - await cypressProjectGenerator(tree, { + const projectName = `${type}-${dasherisedFolderPath}`; + const directory = `${groupingFolder}/.${type}`; + addProjectConfiguration( + tree, + projectName, + { + name: projectName, + root: directory, + projectType: ProjectType.Library, + implicitDependencies: getImplicitDependencies( + tree, + groupingFolder, + dasherisedFolderPath + ), + targets: {}, + tags: getTags(tree, groupingFolder, type), + }, + true + ); + + await cypressE2EConfigurationGenerator(tree, { baseUrl: './', - name: `${type}-${dasherisedFolderPath}`, - directory: domainPath, - standaloneConfig: standaloneAsDefault, + project: projectName, }).catch((e: Error) => { logger.error(e.message); logger.error(e.stack); throw e; }); - const originalProjectName = `${dasherisedFolderPath}-${type}-${dasherisedFolderPath}`; - removeDevServerTarget(tree, originalProjectName); - setProjectToLibraryType(tree, originalProjectName); - addImplicitDependencies( - tree, - originalProjectName, - groupingFolder, - dasherisedFolderPath - ); - addDomainTestEslintTags(tree, originalProjectName, groupingFolder, type); if (type === 'ct') { - convertE2ETargetToCt(tree, originalProjectName); + convertE2ETargetToCt(tree, projectName); } - await moveProjectToDomain( - tree, - originalProjectName, - domainPath, - dasherisedFolderPath, - npmScope, - type - ).catch((e) => { - logger.error(e.message); - logger.error(e.stack); - throw e; - }); - renameCypressProject(tree, dasherisedFolderPath, standaloneAsDefault, type); - removeUneededCypressProjectFiles(tree, `${libsDir}/${domainPath}/_${type}`); + removeUneededCypressProjectFiles(tree, directory); await formatFiles(tree); } diff --git a/packages/domain/generators/cypress/domain-test/src/lib/add-ct-base-url.ts b/packages/domain/generators/cypress/domain-test/src/lib/add-ct-base-url.ts deleted file mode 100644 index 0a9fc880..00000000 --- a/packages/domain/generators/cypress/domain-test/src/lib/add-ct-base-url.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { Tree, updateJson } from '@nx/devkit'; - -export const addCtBaseUrl = (tree: Tree, projectPath: string): void => - updateJson(tree, `${projectPath}/cypress.json`, (json) => ({ - ...json, - baseUrl: 'http://localhost:4400', - })); diff --git a/packages/domain/generators/cypress/domain-test/src/lib/add-implicit-dependencies.ts b/packages/domain/generators/cypress/domain-test/src/lib/add-implicit-dependencies.ts deleted file mode 100644 index 1df0fa19..00000000 --- a/packages/domain/generators/cypress/domain-test/src/lib/add-implicit-dependencies.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { - readProjectConfiguration, - Tree, - updateProjectConfiguration, -} from '@nx/devkit'; - -export const addImplicitDependencies = ( - tree: Tree, - projectName: string, - groupingFolder: string, - dasherisedFolderPath: string -): void => { - const projectConfig = readProjectConfiguration(tree, projectName); - const implicitDependencies = tree - .children(groupingFolder) - .filter( - (folder) => - !tree.isFile(`${groupingFolder}/${folder}`) && - folder !== '_e2e' && - folder !== '_ct' - ) - .map((folder) => `${dasherisedFolderPath}-${folder}`); - projectConfig.implicitDependencies = implicitDependencies; - updateProjectConfiguration(tree, projectName, projectConfig); -}; diff --git a/packages/domain/generators/cypress/domain-test/src/lib/add-domain-test-eslint-tags.ts b/packages/domain/generators/cypress/domain-test/src/lib/get-domain-test-eslint-tags.ts similarity index 56% rename from packages/domain/generators/cypress/domain-test/src/lib/add-domain-test-eslint-tags.ts rename to packages/domain/generators/cypress/domain-test/src/lib/get-domain-test-eslint-tags.ts index 0786eabf..3887f1f2 100644 --- a/packages/domain/generators/cypress/domain-test/src/lib/add-domain-test-eslint-tags.ts +++ b/packages/domain/generators/cypress/domain-test/src/lib/get-domain-test-eslint-tags.ts @@ -1,27 +1,20 @@ -import { - readProjectConfiguration, - Tree, - updateProjectConfiguration, -} from '@nx/devkit'; +import { Tree } from '@nx/devkit'; // eslint-disable-next-line @nx/enforce-module-boundaries import { getDasherizedFolderPath, getDomainPath, } from '../../../../shared/utils'; -export const addDomainTestEslintTags = ( +export const getTags = ( tree: Tree, - projectName: string, groupingFolder: string, type: 'e2e' | 'ct' -): void => { - const projectConfig = readProjectConfiguration(tree, projectName); +): string[] => { const domain = `${getDasherizedFolderPath(tree, groupingFolder)}`; const domainPath = getDomainPath(tree, groupingFolder); - projectConfig.tags = [ + return [ `app:${domainPath.split('/')?.[0]}`, `scope:${domain}`, `type:${type}`, ]; - updateProjectConfiguration(tree, projectName, projectConfig); }; diff --git a/packages/domain/generators/cypress/domain-test/src/lib/get-implicit-dependencies.ts b/packages/domain/generators/cypress/domain-test/src/lib/get-implicit-dependencies.ts new file mode 100644 index 00000000..fe19d960 --- /dev/null +++ b/packages/domain/generators/cypress/domain-test/src/lib/get-implicit-dependencies.ts @@ -0,0 +1,16 @@ +import { Tree } from '@nx/devkit'; + +export const getImplicitDependencies = ( + tree: Tree, + groupingFolder: string, + dasherisedFolderPath: string +): string[] => + tree + .children(groupingFolder) + .filter( + (folder) => + !tree.isFile(`${groupingFolder}/${folder}`) && + folder !== '.e2e' && + folder !== '.ct' + ) + .map((folder) => `${dasherisedFolderPath}-${folder}`); diff --git a/packages/domain/generators/cypress/domain-test/src/lib/move-project-to-domain.ts b/packages/domain/generators/cypress/domain-test/src/lib/move-project-to-domain.ts deleted file mode 100644 index 552e6562..00000000 --- a/packages/domain/generators/cypress/domain-test/src/lib/move-project-to-domain.ts +++ /dev/null @@ -1,70 +0,0 @@ -import { logger, Tree, updateJson } from '@nx/devkit'; -import { moveGenerator } from '@nx/workspace'; -// eslint-disable-next-line @nx/enforce-module-boundaries -import { getWorkspaceLayout } from '../../../../shared/utils'; -import { DomainTest } from './model/domain-test.type'; - -export const moveProjectToDomain = async ( - tree: Tree, - projectName: string, - domainPath: string, - dasherisedFolderPath: string, - npmScope: string, - type: DomainTest -): Promise => { - const workspaceLayout = getWorkspaceLayout(tree); - const dummyPaths = [ - `${getImportPath( - npmScope, - domainPath.replace(/^\/|\\/, '') - )}/${type}-${dasherisedFolderPath}`.replace('@@', '@'), - `${getImportPath( - npmScope, - domainPath.slice(workspaceLayout.libsDir.length).replace(/^\/|\\/, '') - )}/${type}-${dasherisedFolderPath}`.replace('@@', '@'), - ]; - addDummyTsConfigPaths(tree, dummyPaths); - await moveGenerator(tree, { - projectName, - destination: `${domainPath}/_${type}`, - updateImportPath: true, - }).catch((e: Error) => { - logger.error(e.message); - logger.error(e.stack); - throw e; - }); - removeDummyTsConfigPaths(tree, dummyPaths); -}; - -const getImportPath = (npmScope: string, projectDirectory: string): string => - npmScope - ? `${npmScope === '@' ? '' : '@'}${npmScope}/${projectDirectory}` - : projectDirectory; - -// a cypress project doesn't have a tsconfig path, but one is required by the move generator -// this creates a dummy tsconfig path that will be removed after the move generator runs -const addDummyTsConfigPaths = (tree: Tree, dummyPaths: string[]) => { - updateJson(tree, 'tsconfig.base.json', (json) => { - if (!json.compilerOptions) { - json.compilerOptions = {}; - if (!json.compilerOptions.paths) { - json.compilerOptions.paths = {}; - } - } - dummyPaths.forEach((path) => { - json.compilerOptions.paths[path] = []; - }); - return json; - }); -}; - -const removeDummyTsConfigPaths = (tree: Tree, dummyPaths: string[]) => { - updateJson(tree, 'tsconfig.base.json', (json) => { - dummyPaths.forEach((path) => { - if (json.compilerOptions.paths[path]) { - delete json.compilerOptions.paths[path]; - } - }); - return json; - }); -}; diff --git a/packages/domain/generators/cypress/domain-test/src/lib/remove-dev-server-target.ts b/packages/domain/generators/cypress/domain-test/src/lib/remove-dev-server-target.ts deleted file mode 100644 index 43777ccf..00000000 --- a/packages/domain/generators/cypress/domain-test/src/lib/remove-dev-server-target.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { - readProjectConfiguration, - Tree, - updateProjectConfiguration, -} from '@nx/devkit'; - -export const removeDevServerTarget = ( - tree: Tree, - projectName: string -): void => { - const projectConfig = readProjectConfiguration(tree, projectName); - const e2eTarget = projectConfig.targets['e2e']; - delete e2eTarget.options.devServerTarget; - delete e2eTarget.configurations; - updateProjectConfiguration(tree, projectName, projectConfig); -}; diff --git a/packages/domain/generators/cypress/domain-test/src/lib/rename-cypress-project.ts b/packages/domain/generators/cypress/domain-test/src/lib/rename-cypress-project.ts deleted file mode 100644 index 08ba93f4..00000000 --- a/packages/domain/generators/cypress/domain-test/src/lib/rename-cypress-project.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { - addProjectConfiguration, - readProjectConfiguration, - removeProjectConfiguration, - Tree, -} from '@nx/devkit'; -import { DomainTest } from './model/domain-test.type'; - -// By default, the project name is set to the directory path, e.g. `test-app-test-domain-e2e` -// This updates the format to `e2e-test-app-test-domain` -export const renameCypressProject = ( - tree: Tree, - dasherisedFolderPath: string, - standaloneAsDefault: boolean, - type: DomainTest -): void => { - const projectName = `${dasherisedFolderPath}-_${type}`; - const movedProjectConfig = readProjectConfiguration(tree, projectName); - removeProjectConfiguration(tree, projectName); - const newProjectName = `${type}-${dasherisedFolderPath}`; - addProjectConfiguration( - tree, - newProjectName, - { ...movedProjectConfig, name: newProjectName }, - standaloneAsDefault - ); -}; diff --git a/packages/domain/generators/cypress/domain-test/src/lib/set-project-to-library-type.ts b/packages/domain/generators/cypress/domain-test/src/lib/set-project-to-library-type.ts deleted file mode 100644 index d02466da..00000000 --- a/packages/domain/generators/cypress/domain-test/src/lib/set-project-to-library-type.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { - readProjectConfiguration, - Tree, - updateProjectConfiguration, -} from '@nx/devkit'; - -export const setProjectToLibraryType = ( - tree: Tree, - projectName: string -): void => { - const projectConfig = readProjectConfiguration(tree, projectName); - projectConfig.projectType = 'library'; - updateProjectConfiguration(tree, projectName, projectConfig); -}; diff --git a/packages/domain/generators/front-end/shared/src/add-domain-library.spec.ts b/packages/domain/generators/front-end/shared/src/add-domain-library.spec.ts index 4be3193f..731683a5 100644 --- a/packages/domain/generators/front-end/shared/src/add-domain-library.spec.ts +++ b/packages/domain/generators/front-end/shared/src/add-domain-library.spec.ts @@ -85,7 +85,7 @@ describe('addDomainLibrary', () => { it('should add project to e2e projects implicitDependencies', async () => { const mockProjectConfiguration: ProjectConfiguration = { - root: `libs/test-app/test-domain/_e2e`, + root: `libs/test-app/test-domain/.e2e`, targets: {}, }; addProjectConfiguration( diff --git a/packages/domain/generators/grouping-folder/create-app/src/generator.ts b/packages/domain/generators/grouping-folder/create-app/src/generator.ts index 16e050fc..b8dc2501 100644 --- a/packages/domain/generators/grouping-folder/create-app/src/generator.ts +++ b/packages/domain/generators/grouping-folder/create-app/src/generator.ts @@ -21,7 +21,7 @@ export async function createAppGroupingFolderGenerator( : `${libsDir}/${name}`; await formatFiles(tree); return () => { - mkdirSync(directory); + mkdirSync(directory, { recursive: true }); }; } diff --git a/packages/domain/generators/grouping-folder/create-app/src/lib/angular/initialise-angular-workspace.ts b/packages/domain/generators/grouping-folder/create-app/src/lib/angular/initialise-angular-workspace.ts index a4fdc646..a1bfb4fc 100644 --- a/packages/domain/generators/grouping-folder/create-app/src/lib/angular/initialise-angular-workspace.ts +++ b/packages/domain/generators/grouping-folder/create-app/src/lib/angular/initialise-angular-workspace.ts @@ -1,28 +1,12 @@ -import { logger, readJson, Tree } from '@nx/devkit'; +import { Tree } from '@nx/devkit'; import { cypressInitGenerator } from '@nx/cypress'; import { angularInitGenerator } from '@nx/angular/generators'; export const initialiseAngularWorkspace = async (tree: Tree): Promise => { - const packageJson = readJson(tree, 'package.json'); - if (isPackageAdded('@nx/angular', packageJson)) { - await angularInitGenerator(tree, { - style: 'scss', - // eslint-disable-next-line @typescript-eslint/no-explicit-any - } as any); - } else { - logger.warn( - '@nx/angular is not installed. It is used by this library so should be installed' - ); - } - if (isPackageAdded('@nx/cypress', packageJson)) { - await cypressInitGenerator(tree, {}); - } else { - logger.warn( - '@nx/angular is not installed. It is used by this library so should be installed' - ); - } -}; + await angularInitGenerator(tree, { + style: 'scss', + // eslint-disable-next-line @typescript-eslint/no-explicit-any + } as any); -// eslint-disable-next-line @typescript-eslint/no-explicit-any -const isPackageAdded = (packageToCheck: string, packageJson: any): boolean => - packageJson?.devDependencies?.[packageToCheck]; + await cypressInitGenerator(tree, {}); +}; diff --git a/packages/domain/generators/grouping-folder/move/src/lib/move-domain-test-project.ts b/packages/domain/generators/grouping-folder/move/src/lib/move-domain-test-project.ts index 7af2a74a..65b94fc3 100644 --- a/packages/domain/generators/grouping-folder/move/src/lib/move-domain-test-project.ts +++ b/packages/domain/generators/grouping-folder/move/src/lib/move-domain-test-project.ts @@ -5,7 +5,6 @@ import { readProjectConfiguration, removeProjectConfiguration, addProjectConfiguration, - getProjects, } from '@nx/devkit'; import { moveGenerator } from '@nx/workspace'; // eslint-disable-next-line @nx/enforce-module-boundaries @@ -35,14 +34,12 @@ export const moveDomainTestProject = async ( }); removeDummyTsConfigPath(tree, tsConfigPath); renameToCommonFormat(tree, getDasherizedFolderPath(tree, destination)); - const x = getProjects(tree); - console.log(x); }; const renameToCommonFormat = (tree: Tree, projectName: string): void => { const projectConfig = readProjectConfiguration(tree, projectName); const splitProjectName = projectName.split('-'); - const type = splitProjectName[splitProjectName.length - 1].slice(1); + const type = splitProjectName[splitProjectName.length - 1]; const newProjectName = `${type}-${splitProjectName.slice(0, -1).join('-')}`; removeProjectConfiguration(tree, projectName); projectConfig.name = newProjectName; diff --git a/packages/domain/generators/grouping-folder/remove/src/generator.spec.ts b/packages/domain/generators/grouping-folder/remove/src/generator.spec.ts index 1e012655..0d4d4386 100644 --- a/packages/domain/generators/grouping-folder/remove/src/generator.spec.ts +++ b/packages/domain/generators/grouping-folder/remove/src/generator.spec.ts @@ -1,5 +1,5 @@ import { createTreeWithEmptyWorkspace } from '@nx/devkit/testing'; -import { getProjects, Tree } from '@nx/devkit'; +import { getProjects, readJson, Tree } from '@nx/devkit'; import { removeGenerator } from './generator'; import { CreateInfrastructureLayerGeneratorSchema } from '../../../front-end/angular/infrastructure-layer/src/schema'; import { createInfrastructureLayerGenerator } from '../../../front-end/angular/infrastructure-layer/src/generator'; @@ -32,4 +32,23 @@ describe('removeGenerator', () => { const projects = getProjects(appTree); expect(projects.size).toBe(0); }); + it('should remove project from tsconfig', async () => { + const schema: CreateInfrastructureLayerGeneratorSchema = { + groupingFolder: 'libs/test-app/test-domain', + buildable: true, + strict: false, + enableIvy: true, + publishable: false, + }; + await createInfrastructureLayerGenerator(appTree, { + ...schema, + addJestJunitReporter: true, + }); + await removeGenerator(appTree, { + groupingFolder: folderToDelete, + }); + const tsConfig = readJson(appTree, 'tsconfig.base.json'); + const tsConfigPaths = Object.keys(tsConfig.compilerOptions.paths); + expect(tsConfigPaths).toEqual([]); + }); }); diff --git a/packages/domain/generators/grouping-folder/remove/src/generator.ts b/packages/domain/generators/grouping-folder/remove/src/generator.ts index feae79fb..22578883 100644 --- a/packages/domain/generators/grouping-folder/remove/src/generator.ts +++ b/packages/domain/generators/grouping-folder/remove/src/generator.ts @@ -9,6 +9,8 @@ import { RemoveGeneratorSchema } from './schema'; // eslint-disable-next-line @nx/enforce-module-boundaries import { getDasherizedFolderPath, + getDomainPath, + getNpmScope, getProjectNames, isHavingDepContraint, isHavingMockFile, @@ -17,6 +19,7 @@ import { } from '../../../shared/utils'; import { removeGenerator as nrwlRemoveGenerator } from '@nx/workspace'; import { removeMockFileResolutionPath } from './lib/remove-mock-file-resolution-path'; +import { removeImportPath } from './lib/remove-import-path'; export async function removeGenerator( tree: Tree, @@ -30,10 +33,14 @@ export async function removeGenerator( if (isHavingMockFile(tree, project.root)) { removeMockFileResolutionPath(tree, project.root); } + const npmScope = getNpmScope(tree); + const importPath = `${npmScope}/${getDomainPath(tree, project.root)}`; + removeImportPath(tree, importPath); await nrwlRemoveGenerator(tree, { projectName, skipFormat: false, forceRemove: true, + importPath, }).catch((e: Error) => { logger.error(e.message); logger.error(e.stack); diff --git a/packages/domain/generators/grouping-folder/remove/src/lib/remove-import-path.ts b/packages/domain/generators/grouping-folder/remove/src/lib/remove-import-path.ts new file mode 100644 index 00000000..619d012b --- /dev/null +++ b/packages/domain/generators/grouping-folder/remove/src/lib/remove-import-path.ts @@ -0,0 +1,13 @@ +import { Tree, updateJson } from '@nx/devkit'; + +export const removeImportPath = (tree: Tree, importPath: string): void => { + const tsConfigPath = 'tsconfig.base.json'; + if (tree.exists(tsConfigPath)) { + updateJson(tree, tsConfigPath, (json) => { + if (!!json.compilerOptions && !!json.compilerOptions.paths) { + delete json.compilerOptions.paths[importPath]; + } + return json; + }); + } +}; diff --git a/packages/domain/generators/shared/utils/src/get-project-names.spec.ts b/packages/domain/generators/shared/utils/src/get-project-names.spec.ts index 2128e13a..2f5fe517 100644 --- a/packages/domain/generators/shared/utils/src/get-project-names.spec.ts +++ b/packages/domain/generators/shared/utils/src/get-project-names.spec.ts @@ -26,7 +26,7 @@ describe('getProjectNames', () => { it('should get e2e project under the domain folder', async () => { addProjectConfiguration(appTree, 'e2e-test-app-test-domain', { - root: `${groupingFolder}/_e2e`, + root: `${groupingFolder}/.e2e`, targets: {}, }); expect(getProjectNames(appTree, groupingFolder)).toEqual([ diff --git a/packages/domain/generators/shared/utils/src/update-dep-contraint.ts b/packages/domain/generators/shared/utils/src/update-dep-contraint.ts index fa8be307..f8a32874 100644 --- a/packages/domain/generators/shared/utils/src/update-dep-contraint.ts +++ b/packages/domain/generators/shared/utils/src/update-dep-contraint.ts @@ -32,13 +32,15 @@ export function updateDepConstraint( const boundariesRuleIndex = json.overrides.findIndex( (override) => !!override.rules[boundariesRule] ); - const depConstraints = - json.overrides[boundariesRuleIndex].rules[boundariesRule][1] - .depConstraints; - update(depConstraints); - json.overrides[boundariesRuleIndex].rules[ - boundariesRule - ][1].depConstraints = getDedupedDepConstraints(depConstraints); + if (json.overrides[boundariesRuleIndex]) { + const depConstraints = + json.overrides[boundariesRuleIndex].rules[boundariesRule][1] + .depConstraints; + update(depConstraints); + json.overrides[boundariesRuleIndex].rules[ + boundariesRule + ][1].depConstraints = getDedupedDepConstraints(depConstraints); + } } return json; }); diff --git a/packages/domain/package.json b/packages/domain/package.json index b2024c8f..49359a31 100644 --- a/packages/domain/package.json +++ b/packages/domain/package.json @@ -1,6 +1,6 @@ { "name": "@srleecode/domain", - "version": "16.7.1", + "version": "16.10.0", "main": "index.js", "executors": "./executors.json", "generators": "./generators.json",