From 1894aee68b02d76858b3102c2b3e49c5c5eaf036 Mon Sep 17 00:00:00 2001 From: Kauan Guesser Date: Mon, 13 Jan 2025 00:30:09 -0300 Subject: [PATCH] feat: add initial structure with product and stores module --- .gitignore | 37 + .husky/pre-commit | 4 + .yarnrc.yml | 1 + LICENSE.txt | 29 + README.md | 0 docker-compose.yml | 14 + package.json | 44 + packages/api/.env.example | 36 + packages/api/.eslintrc.js | 9 + packages/api/.gitignore | 7 + packages/api/.prettierrc.js | 3 + packages/api/README.md | 0 packages/api/nest-cli.json | 10 + packages/api/package.json | 120 + packages/api/src/app.acl.ts | 62 + packages/api/src/app.module.ts | 176 + packages/api/src/app.seeder.ts | 13 + ...password-updated-successfully.template.hbs | 3 + .../email/recover-login.template.hbs | 7 + .../email/recover-password.template.hbs | 15 + .../interfaces/server-config.interface.ts | 8 + .../src/common/schema/auth-config.schema.ts | 6 + .../common/schema/database-config.schema.ts | 12 + .../src/common/schema/sentry-config.schema.ts | 6 + .../src/common/utils/create-resources.util.ts | 3 + .../src/common/utils/env-validator.util.ts | 55 + .../src/common/utils/format-token-url.util.ts | 3 + .../api/src/config/auth-recovery.config.ts | 40 + packages/api/src/config/mailer.config.ts | 31 + packages/api/src/config/server.config.ts | 16 + packages/api/src/config/typeorm.config.ts | 49 + packages/api/src/entities/role.entity.ts | 9 + packages/api/src/entities/user-otp.entity.ts | 11 + packages/api/src/main.ts | 33 + .../src/migrations/1736734312484-Initial.ts | 69 + .../migrations/1736734870130-AddAdminUser.ts | 80 + packages/api/src/modules/me/me.controller.ts | 64 + packages/api/src/modules/me/me.module.ts | 7 + packages/api/src/modules/me/me.types.ts | 3 + .../modules/product/product-crud.service.ts | 14 + .../product/product-not-found.exception.ts | 14 + .../src/modules/product/product.constant.ts | 1 + .../src/modules/product/product.controller.ts | 81 + .../api/src/modules/product/product.entity.ts | 37 + .../src/modules/product/product.exception.ts | 12 + .../src/modules/product/product.factory.ts | 22 + .../api/src/modules/product/product.module.ts | 17 + .../src/modules/product/product.subscriber.ts | 50 + .../api/src/modules/product/product.types.ts | 4 + .../store/store-not-found.exception.ts | 14 + .../api/src/modules/store/store.builder.ts | 53 + .../api/src/modules/store/store.constants.ts | 1 + .../api/src/modules/store/store.entity.ts | 46 + .../api/src/modules/store/store.exception.ts | 12 + .../api/src/modules/store/store.factory.ts | 31 + .../api/src/modules/store/store.module.ts | 25 + .../api/src/modules/store/store.seeder.ts | 19 + .../api/src/modules/store/store.subscriber.ts | 46 + packages/api/src/modules/store/store.types.ts | 4 + .../user-profile-access-query.service.ts | 88 + .../user-profile/user-profile-crud.service.ts | 62 + .../user-profile-lookup.service.ts | 16 + .../user-profile-mutate.service.ts | 30 + .../user-profile/user-profile.constant.ts | 1 + .../user-profile/user-profile.controller.ts | 93 + .../user-profile/user-profile.entity.ts | 23 + .../user-profile/user-profile.exception.ts | 12 + .../user-profile/user-profile.factory.ts | 18 + .../user-profile/user-profile.module.ts | 26 + .../user-profile/user-profile.types.ts | 4 + .../modules/user-role/user-role.constants.ts | 2 + .../src/modules/user-role/user-role.entity.ts | 15 + .../modules/user-role/user-role.factory.ts | 10 + .../user/user-custom-lookup.service.ts | 30 + .../user/user-custom-mutate.service.ts | 20 + .../src/modules/user/user-custom.exception.ts | 12 + .../src/modules/user/user-custom.module.ts | 10 + packages/api/src/modules/user/user.entity.ts | 21 + packages/api/src/modules/user/user.factory.ts | 28 + packages/api/src/modules/user/user.seeder.ts | 42 + .../api/src/modules/user/user.subscriber.ts | 66 + packages/api/src/ormconfig.ts | 23 + packages/api/src/seeding.ts | 12 + packages/api/test/app.e2e-spec.ts | 24 + packages/api/test/jest-e2e.json | 9 + packages/api/tsconfig.build.json | 4 + packages/api/tsconfig.json | 21 + packages/common/.eslintrc.js | 8 + packages/common/.gitignore | 7 + packages/common/.prettierrc.js | 3 + packages/common/jest.config.json | 9 + packages/common/package.json | 43 + packages/common/src/index.ts | 34 + .../product/dtos/product-create.dto.ts | 12 + .../product/dtos/product-paginated.dto.ts | 20 + .../product/dtos/product-update.dto.ts | 18 + .../src/modules/product/dtos/product.dto.ts | 90 + .../interfaces/product-creatable.interface.ts | 5 + .../interfaces/product-updatable.interface.ts | 9 + .../product/interfaces/product.interface.ts | 18 + .../modules/store/dtos/store-create.dto.ts | 22 + .../modules/store/dtos/store-paginated.dto.ts | 20 + .../modules/store/dtos/store-update.dto.ts | 23 + .../src/modules/store/dtos/store.dto.ts | 128 + .../interfaces/store-creatable.interface.ts | 16 + .../interfaces/store-ownable.interface.ts | 7 + .../interfaces/store-updatable.interface.ts | 19 + .../store/interfaces/store.interface.ts | 23 + .../dtos/user-profile-create.dto.ts | 20 + .../dtos/user-profile-paginated.dto.ts | 20 + .../dtos/user-profile-update.dto.ts | 9 + .../user-profile/dtos/user-profile.dto.ts | 32 + .../user-profile-creatable.interface.ts | 9 + .../user-profile-ownable.interface.ts | 7 + .../user-profile-updatable.interface.ts | 4 + .../interfaces/user-profile.interface.ts | 13 + .../modules/user-role/dtos/user-role.dto.ts | 29 + .../interfaces/user-role.interface.ts | 8 + .../user/dtos/user-local-create.dto.ts | 13 + .../src/modules/user/dtos/user-local.dto.ts | 31 + .../user-local-creatable.interface.ts | 4 + .../user-local-ownable.interface.ts | 7 + .../user/interfaces/user-local.interface.ts | 8 + packages/common/tsconfig.build.json | 4 + packages/common/tsconfig.json | 23 + public.json | 11 + yarn.lock | 12465 ++++++++++++++++ 127 files changed, 15571 insertions(+) create mode 100644 .gitignore create mode 100755 .husky/pre-commit create mode 100644 .yarnrc.yml create mode 100644 LICENSE.txt create mode 100644 README.md create mode 100644 docker-compose.yml create mode 100644 package.json create mode 100644 packages/api/.env.example create mode 100644 packages/api/.eslintrc.js create mode 100644 packages/api/.gitignore create mode 100644 packages/api/.prettierrc.js create mode 100644 packages/api/README.md create mode 100644 packages/api/nest-cli.json create mode 100644 packages/api/package.json create mode 100644 packages/api/src/app.acl.ts create mode 100644 packages/api/src/app.module.ts create mode 100644 packages/api/src/app.seeder.ts create mode 100644 packages/api/src/assets/templates/email/password-updated-successfully.template.hbs create mode 100644 packages/api/src/assets/templates/email/recover-login.template.hbs create mode 100644 packages/api/src/assets/templates/email/recover-password.template.hbs create mode 100644 packages/api/src/common/interfaces/server-config.interface.ts create mode 100644 packages/api/src/common/schema/auth-config.schema.ts create mode 100644 packages/api/src/common/schema/database-config.schema.ts create mode 100644 packages/api/src/common/schema/sentry-config.schema.ts create mode 100644 packages/api/src/common/utils/create-resources.util.ts create mode 100644 packages/api/src/common/utils/env-validator.util.ts create mode 100644 packages/api/src/common/utils/format-token-url.util.ts create mode 100644 packages/api/src/config/auth-recovery.config.ts create mode 100644 packages/api/src/config/mailer.config.ts create mode 100644 packages/api/src/config/server.config.ts create mode 100644 packages/api/src/config/typeorm.config.ts create mode 100644 packages/api/src/entities/role.entity.ts create mode 100644 packages/api/src/entities/user-otp.entity.ts create mode 100644 packages/api/src/main.ts create mode 100644 packages/api/src/migrations/1736734312484-Initial.ts create mode 100644 packages/api/src/migrations/1736734870130-AddAdminUser.ts create mode 100644 packages/api/src/modules/me/me.controller.ts create mode 100644 packages/api/src/modules/me/me.module.ts create mode 100644 packages/api/src/modules/me/me.types.ts create mode 100644 packages/api/src/modules/product/product-crud.service.ts create mode 100644 packages/api/src/modules/product/product-not-found.exception.ts create mode 100644 packages/api/src/modules/product/product.constant.ts create mode 100644 packages/api/src/modules/product/product.controller.ts create mode 100644 packages/api/src/modules/product/product.entity.ts create mode 100644 packages/api/src/modules/product/product.exception.ts create mode 100644 packages/api/src/modules/product/product.factory.ts create mode 100644 packages/api/src/modules/product/product.module.ts create mode 100644 packages/api/src/modules/product/product.subscriber.ts create mode 100644 packages/api/src/modules/product/product.types.ts create mode 100644 packages/api/src/modules/store/store-not-found.exception.ts create mode 100644 packages/api/src/modules/store/store.builder.ts create mode 100644 packages/api/src/modules/store/store.constants.ts create mode 100644 packages/api/src/modules/store/store.entity.ts create mode 100644 packages/api/src/modules/store/store.exception.ts create mode 100644 packages/api/src/modules/store/store.factory.ts create mode 100644 packages/api/src/modules/store/store.module.ts create mode 100644 packages/api/src/modules/store/store.seeder.ts create mode 100644 packages/api/src/modules/store/store.subscriber.ts create mode 100644 packages/api/src/modules/store/store.types.ts create mode 100644 packages/api/src/modules/user-profile/user-profile-access-query.service.ts create mode 100644 packages/api/src/modules/user-profile/user-profile-crud.service.ts create mode 100644 packages/api/src/modules/user-profile/user-profile-lookup.service.ts create mode 100644 packages/api/src/modules/user-profile/user-profile-mutate.service.ts create mode 100644 packages/api/src/modules/user-profile/user-profile.constant.ts create mode 100644 packages/api/src/modules/user-profile/user-profile.controller.ts create mode 100644 packages/api/src/modules/user-profile/user-profile.entity.ts create mode 100644 packages/api/src/modules/user-profile/user-profile.exception.ts create mode 100644 packages/api/src/modules/user-profile/user-profile.factory.ts create mode 100644 packages/api/src/modules/user-profile/user-profile.module.ts create mode 100644 packages/api/src/modules/user-profile/user-profile.types.ts create mode 100644 packages/api/src/modules/user-role/user-role.constants.ts create mode 100644 packages/api/src/modules/user-role/user-role.entity.ts create mode 100644 packages/api/src/modules/user-role/user-role.factory.ts create mode 100644 packages/api/src/modules/user/user-custom-lookup.service.ts create mode 100644 packages/api/src/modules/user/user-custom-mutate.service.ts create mode 100644 packages/api/src/modules/user/user-custom.exception.ts create mode 100644 packages/api/src/modules/user/user-custom.module.ts create mode 100644 packages/api/src/modules/user/user.entity.ts create mode 100644 packages/api/src/modules/user/user.factory.ts create mode 100644 packages/api/src/modules/user/user.seeder.ts create mode 100644 packages/api/src/modules/user/user.subscriber.ts create mode 100644 packages/api/src/ormconfig.ts create mode 100644 packages/api/src/seeding.ts create mode 100644 packages/api/test/app.e2e-spec.ts create mode 100644 packages/api/test/jest-e2e.json create mode 100644 packages/api/tsconfig.build.json create mode 100644 packages/api/tsconfig.json create mode 100644 packages/common/.eslintrc.js create mode 100644 packages/common/.gitignore create mode 100644 packages/common/.prettierrc.js create mode 100644 packages/common/jest.config.json create mode 100644 packages/common/package.json create mode 100644 packages/common/src/index.ts create mode 100644 packages/common/src/modules/product/dtos/product-create.dto.ts create mode 100644 packages/common/src/modules/product/dtos/product-paginated.dto.ts create mode 100644 packages/common/src/modules/product/dtos/product-update.dto.ts create mode 100644 packages/common/src/modules/product/dtos/product.dto.ts create mode 100644 packages/common/src/modules/product/interfaces/product-creatable.interface.ts create mode 100644 packages/common/src/modules/product/interfaces/product-updatable.interface.ts create mode 100644 packages/common/src/modules/product/interfaces/product.interface.ts create mode 100644 packages/common/src/modules/store/dtos/store-create.dto.ts create mode 100644 packages/common/src/modules/store/dtos/store-paginated.dto.ts create mode 100644 packages/common/src/modules/store/dtos/store-update.dto.ts create mode 100644 packages/common/src/modules/store/dtos/store.dto.ts create mode 100644 packages/common/src/modules/store/interfaces/store-creatable.interface.ts create mode 100644 packages/common/src/modules/store/interfaces/store-ownable.interface.ts create mode 100644 packages/common/src/modules/store/interfaces/store-updatable.interface.ts create mode 100644 packages/common/src/modules/store/interfaces/store.interface.ts create mode 100644 packages/common/src/modules/user-profile/dtos/user-profile-create.dto.ts create mode 100644 packages/common/src/modules/user-profile/dtos/user-profile-paginated.dto.ts create mode 100644 packages/common/src/modules/user-profile/dtos/user-profile-update.dto.ts create mode 100644 packages/common/src/modules/user-profile/dtos/user-profile.dto.ts create mode 100644 packages/common/src/modules/user-profile/interfaces/user-profile-creatable.interface.ts create mode 100644 packages/common/src/modules/user-profile/interfaces/user-profile-ownable.interface.ts create mode 100644 packages/common/src/modules/user-profile/interfaces/user-profile-updatable.interface.ts create mode 100644 packages/common/src/modules/user-profile/interfaces/user-profile.interface.ts create mode 100644 packages/common/src/modules/user-role/dtos/user-role.dto.ts create mode 100644 packages/common/src/modules/user-role/interfaces/user-role.interface.ts create mode 100644 packages/common/src/modules/user/dtos/user-local-create.dto.ts create mode 100644 packages/common/src/modules/user/dtos/user-local.dto.ts create mode 100644 packages/common/src/modules/user/interfaces/user-local-creatable.interface.ts create mode 100644 packages/common/src/modules/user/interfaces/user-local-ownable.interface.ts create mode 100644 packages/common/src/modules/user/interfaces/user-local.interface.ts create mode 100644 packages/common/tsconfig.build.json create mode 100644 packages/common/tsconfig.json create mode 100644 public.json create mode 100644 yarn.lock diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..fac9df3 --- /dev/null +++ b/.gitignore @@ -0,0 +1,37 @@ +.env +.yarn + +# compiled output +/dist +/node_modules + +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +lerna-debug.log* + +# OS +.DS_Store + +# Tests +/coverage +/.nyc_output + +# IDEs and editors +/.idea +.project +.classpath +.c9/ +*.launch +.settings/ +*.sublime-workspace + +# IDE - VSCode +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json \ No newline at end of file diff --git a/.husky/pre-commit b/.husky/pre-commit new file mode 100755 index 0000000..a18a1d9 --- /dev/null +++ b/.husky/pre-commit @@ -0,0 +1,4 @@ +#!/usr/bin/env sh +. "$(dirname -- "$0")/_/husky.sh" + +yarn lint \ No newline at end of file diff --git a/.yarnrc.yml b/.yarnrc.yml new file mode 100644 index 0000000..3186f3f --- /dev/null +++ b/.yarnrc.yml @@ -0,0 +1 @@ +nodeLinker: node-modules diff --git a/LICENSE.txt b/LICENSE.txt new file mode 100644 index 0000000..8e83a1c --- /dev/null +++ b/LICENSE.txt @@ -0,0 +1,29 @@ +BSD 3-Clause License + +Copyright (c) 2020 Concepta Technologies, LLC +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..e69de29 diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..54cfc82 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,14 @@ +version: "3.4" + +volumes: + rockets: + +services: + rockets-playground-postgres: + image: postgres + ports: + - 5432:5432 + environment: + POSTGRES_DB: rockets-playground + POSTGRES_USER: postgres + POSTGRES_PASSWORD: postgres diff --git a/package.json b/package.json new file mode 100644 index 0000000..55e5d4f --- /dev/null +++ b/package.json @@ -0,0 +1,44 @@ +{ + "name": "rockets-playground", + "license": "proprietary", + "private": true, + "workspaces": { + "packages": [ + "packages/*" + ] + }, + "scripts": { + "start": "yarn start:api", + "start:dev": "yarn start:api:dev", + "start:debug": "yarn start:api:debug", + "start:api": "yarn workspace rockets-playground-api start", + "start:api:dev": "yarn workspace rockets-playground-api start:dev", + "start:api:debug": "yarn workspace rockets-playground-api start:debug", + "dev:web": "yarn workspace web dev --force", + "build": "yarn build:common && yarn build:api && yarn build:web", + "build:common": "yarn workspace rockets-playground-common build", + "build:api": "yarn workspace rockets-playground-api build", + "build:web": "yarn workspace web build", + "test": "yarn test:common && yarn test:api", + "test:common": "yarn workspace rockets-playground-common test", + "test:api": "yarn workspace rockets-playground-api test", + "lint": "yarn lint:common && yarn lint:api", + "lint:fix": "yarn lint:common:fix && yarn lint:api:fix", + "lint:common": "yarn workspace rockets-playground-common lint", + "lint:common:fix": "yarn workspace rockets-playground-common lint:fix", + "lint:api": "yarn workspace rockets-playground-api lint", + "lint:api:fix": "yarn workspace rockets-playground-api lint:fix", + "prepare": "husky" + }, + "dependencies": { + "class-transformer": "^0.5.1", + "class-validator": "^0.14.1", + "pg": "^8.12.0", + "rxjs": "^7.8.1", + "typeorm": "^0.3.20" + }, + "devDependencies": { + "husky": "^9.0.11" + }, + "packageManager": "yarn@4.4.0" +} diff --git a/packages/api/.env.example b/packages/api/.env.example new file mode 100644 index 0000000..aaac739 --- /dev/null +++ b/packages/api/.env.example @@ -0,0 +1,36 @@ +# DATABASE +DATABASE_URL=postgresql://postgres:postgres@localhost:5432/rockets-starter +DATABASE_SSL= +DATABASE_MIGRATIONS_RUN= + +# SENTRY +SENTRY_LOG_LEVEL="log,error" +SENTRY_DSN= + +# SWAGGER +SWAGGER_ENABLED= + +# JWT +JWT_MODULE_ACCESS_SECRET= +JWT_MODULE_REFRESH_SECRET= +JWT_MODULE_ACCESS_EXPIRES_IN= +JWT_MODULE_REFRESH_EXPIRES_IN= + +# MAILGUN +MAILGUN_DOMAIN= +MAILGUN_API_KEY= +MAILGUN_SMTP_SERVER= +MAILGUN_SMTP_PORT=587 +MAILGUN_SMTP_LOGIN= +MAILGUN_SMTP_PASSWORD= + +# MAIL +NODEMAILER_FROM_EMAIL= +NODEMAILER_TEMPLATE_PATH= + +# AUTH RESET URL +AUTH_URL_RESET_PASSWORD= + +# SERVER +PORT= +CORS_ORIGIN= \ No newline at end of file diff --git a/packages/api/.eslintrc.js b/packages/api/.eslintrc.js new file mode 100644 index 0000000..30a0340 --- /dev/null +++ b/packages/api/.eslintrc.js @@ -0,0 +1,9 @@ +module.exports = { + extends: ['@concepta/eslint-config/nest'], + parserOptions: { + tsconfigRootDir: __dirname, + }, + rules: { + "@darraghor/nestjs-typed/param-decorator-name-matches-route-param": "off" + } +}; diff --git a/packages/api/.gitignore b/packages/api/.gitignore new file mode 100644 index 0000000..1be4e4b --- /dev/null +++ b/packages/api/.gitignore @@ -0,0 +1,7 @@ +# compiled output +/dist +/node_modules + +# Tests +/coverage +/.nyc_output \ No newline at end of file diff --git a/packages/api/.prettierrc.js b/packages/api/.prettierrc.js new file mode 100644 index 0000000..c0c2319 --- /dev/null +++ b/packages/api/.prettierrc.js @@ -0,0 +1,3 @@ +module.exports = { + ...require('@concepta/prettier-config/node'), +}; \ No newline at end of file diff --git a/packages/api/README.md b/packages/api/README.md new file mode 100644 index 0000000..e69de29 diff --git a/packages/api/nest-cli.json b/packages/api/nest-cli.json new file mode 100644 index 0000000..7f24c8f --- /dev/null +++ b/packages/api/nest-cli.json @@ -0,0 +1,10 @@ +{ + "$schema": "https://json.schemastore.org/nest-cli", + "collection": "@nestjs/schematics", + "sourceRoot": "src", + "compilerOptions": { + "assets": ["/assets/**/*"], + "watchAssets": true, + "deleteOutDir": true + } +} diff --git a/packages/api/package.json b/packages/api/package.json new file mode 100644 index 0000000..75b4acb --- /dev/null +++ b/packages/api/package.json @@ -0,0 +1,120 @@ +{ + "name": "rockets-playground-api", + "version": "0.0.1", + "description": "Rockets Playground API", + "author": "Concepta Team", + "license": "BSD-3-Clause", + "private": true, + "scripts": { + "prebuild": "rimraf dist", + "build": "nest build", + "format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"", + "start": "nest start", + "start:dev": "nest start --watch", + "start:debug": "nest start --debug --watch", + "start:prod": "node dist/main", + "lint": "eslint \"src/**/*.ts\"", + "lint:fix": "yarn lint --fix", + "test": "jest", + "test:watch": "jest --watch", + "test:cov": "jest --coverage", + "test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand", + "test:e2e": "jest --config ./test/jest-e2e.json", + "typeorm": "typeorm -d ./dist/ormconfig.js", + "schema:drop": "yarn typeorm schema:drop", + "schema:sync": "yarn typeorm schema:sync", + "schema:rebuild": "yarn schema:drop && yarn schema:sync", + "migration:create": "yarn typeorm migration:create", + "migration:generate": "yarn typeorm migration:generate", + "migration:show": "yarn typeorm migration:show", + "migration:run": "yarn typeorm migration:run", + "migration:revert": "yarn typeorm migration:revert", + "migration:rebuild": "yarn schema:drop && yarn migration:run", + "seed:config": "typeorm-seeding config -r ./dist -c seeding.js", + "seed:run": "typeorm-seeding seed -r ./dist -c seeding.js", + "seed:rebuild": "yarn migration:rebuild && yarn seed:run", + "sandbox:init": "yarn migration:run && yarn seed:run", + "sandbox:rebuild": "yarn seed:rebuild" + }, + "dependencies": { + "@concepta/nestjs-access-control": "^v6.0.0-alpha.0", + "@concepta/nestjs-auth-jwt": "^v6.0.0-alpha.0", + "@concepta/nestjs-auth-local": "^v6.0.0-alpha.0", + "@concepta/nestjs-auth-recovery": "^v6.0.0-alpha.0", + "@concepta/nestjs-auth-refresh": "^v6.0.0-alpha.0", + "@concepta/nestjs-authentication": "^v6.0.0-alpha.0", + "@concepta/nestjs-common": "v6.0.0-alpha.0", + "@concepta/nestjs-crud": "^v6.0.0-alpha.0", + "@concepta/nestjs-email": "v6.0.0-alpha.0", + "@concepta/nestjs-exception": "^v6.0.0-alpha.0", + "@concepta/nestjs-jwt": "^v6.0.0-alpha.0", + "@concepta/nestjs-logger": "v6.0.0-alpha.0", + "@concepta/nestjs-logger-sentry": "v6.0.0-alpha.0", + "@concepta/nestjs-otp": "^v6.0.0-alpha.0", + "@concepta/nestjs-password": "^v6.0.0-alpha.0", + "@concepta/nestjs-role": "^v6.0.0-alpha.0", + "@concepta/nestjs-swagger-ui": "^v6.0.0-alpha.0", + "@concepta/nestjs-typeorm-ext": "^v6.0.0-alpha.0", + "@concepta/nestjs-user": "^v6.0.0-alpha.0", + "@concepta/typeorm-common": "^v6.0.0-alpha.0", + "@concepta/typeorm-seeding": "^4.0.0-beta.1", + "@nestjs-modules/mailer": "^2.0.2", + "@nestjs/axios": "^3.1.0", + "@nestjs/common": "^10.4.1", + "@nestjs/config": "^3.2.3", + "@nestjs/core": "^10.4.1", + "@nestjs/platform-express": "^10.4.1", + "accesscontrol": "^2.2.1", + "axios": "^1.7.7", + "reflect-metadata": "^0.2.0", + "rockets-playground-common": "*", + "typeorm": "*" + }, + "devDependencies": { + "@concepta/eslint-config": "1.1.4", + "@concepta/prettier-config": "^1.1.5", + "@darraghor/eslint-plugin-nestjs-typed": "^5.0.18", + "@faker-js/faker": "^8.4.1", + "@nestjs/cli": "^10.4.1", + "@nestjs/schematics": "^10.1.4", + "@nestjs/testing": "^10.4.1", + "@types/express": "^4.17.17", + "@types/jest": "^29.5.2", + "@types/node": "^20.3.1", + "@types/supertest": "^6.0.0", + "@typescript-eslint/parser": "^7.0.0", + "eslint": "^8.56.0", + "jest": "27.0.6", + "prettier": "^2.3.2", + "source-map-support": "^0.5.21", + "supertest": "^7.0.0", + "ts-jest": "^27.0.3", + "ts-loader": "^9.4.3", + "ts-node": "^10.9.1", + "tsconfig-paths": "^4.2.0", + "typescript": "^4.9.4" + }, + "peerDependencies": { + "class-transformer": "^0.5.1", + "class-validator": "^0.14.1", + "pg": "^8.12.0", + "rxjs": "^7.8.1" + }, + "jest": { + "moduleFileExtensions": [ + "js", + "json", + "ts" + ], + "rootDir": "src", + "testRegex": ".*\\.spec\\.ts$", + "transform": { + "^.+\\.(t|j)s$": "ts-jest" + }, + "collectCoverageFrom": [ + "**/*.(t|j)s" + ], + "coverageDirectory": "../coverage", + "testEnvironment": "node" + } +} diff --git a/packages/api/src/app.acl.ts b/packages/api/src/app.acl.ts new file mode 100644 index 0000000..c9f3800 --- /dev/null +++ b/packages/api/src/app.acl.ts @@ -0,0 +1,62 @@ +import { AccessControl } from 'accesscontrol'; +import { UserResource } from '@concepta/nestjs-user'; +import { RoleAssignmentResource, RoleResource } from '@concepta/nestjs-role'; +import { createResources } from './common/utils/create-resources.util'; +import { UserProfileResource } from './modules/user-profile/user-profile.types'; +import { StoreResource } from './modules/store/store.types'; +import { MeResource } from './modules/me/me.types'; +import { ProductResource } from './modules/product/product.types'; + +export enum AppRole { + SuperAdmin = 'SuperAdmin', + User = 'User', +} + +const allResources = createResources( + UserResource, + RoleAssignmentResource, + RoleResource, + UserProfileResource, + StoreResource, + ProductResource, + MeResource, +); + +const userResources = createResources(MeResource); + +export const acRules: AccessControl = new AccessControl(); + +acRules + .grant(AppRole.SuperAdmin) + .resource(allResources) + .createOwn() + .createAny() + .readOwn() + .readAny() + .updateOwn() + .updateAny() + .deleteOwn() + .deleteAny(); + +const allRoles = Object.values(AppRole); + +acRules + .grant(AppRole.User) + .resource(userResources) + .readOwn() + .resource([UserResource.One, UserProfileResource.One]) + .updateOwn() + .resource([ + StoreResource.One, + StoreResource.Many, + ProductResource.One, + ProductResource.Many, + ]) + .readAny(); + +acRules + .grant(allRoles) + .resource([UserProfileResource.One, MeResource.One]) + .readOwn(); + +acRules.deny(allRoles).resource(UserResource.One).deleteOwn(); diff --git a/packages/api/src/app.module.ts b/packages/api/src/app.module.ts new file mode 100644 index 0000000..b0dc166 --- /dev/null +++ b/packages/api/src/app.module.ts @@ -0,0 +1,176 @@ +import { Module } from '@nestjs/common'; +import { ConfigModule, ConfigType } from '@nestjs/config'; +import { AuthJwtModule } from '@concepta/nestjs-auth-jwt'; +import { AuthLocalModule } from '@concepta/nestjs-auth-local'; +import { AuthRefreshModule } from '@concepta/nestjs-auth-refresh'; +import { AuthenticationModule } from '@concepta/nestjs-authentication'; +import { AccessControlModule } from '@concepta/nestjs-access-control'; +import { CrudModule } from '@concepta/nestjs-crud'; +import { JwtModule } from '@concepta/nestjs-jwt'; +import { PasswordModule } from '@concepta/nestjs-password'; +import { SwaggerUiModule } from '@concepta/nestjs-swagger-ui'; +import { + TypeOrmExtModule, + TypeOrmExtOptions, +} from '@concepta/nestjs-typeorm-ext'; +import { + UserAccessQueryService, + UserLookupService, + UserModule, + UserMutateService, +} from '@concepta/nestjs-user'; +import { RoleModule } from '@concepta/nestjs-role'; +import { AuthRecoveryModule } from '@concepta/nestjs-auth-recovery'; +import { OtpModule, OtpService } from '@concepta/nestjs-otp'; +import { EmailModule, EmailService } from '@concepta/nestjs-email'; +import { + LoggerSentryModule, + LoggerSentryTransport, +} from '@concepta/nestjs-logger-sentry'; +import { LoggerModule } from '@concepta/nestjs-logger'; +import { MailerModule, MailerService } from '@nestjs-modules/mailer'; + +import { serverConfig } from './config/server.config'; +import { ormConfig } from './config/typeorm.config'; +import { RoleEntity } from './entities/role.entity'; +import { UserOtpEntity } from './entities/user-otp.entity'; +import { UserEntity } from './modules/user/user.entity'; +import { UserRoleEntity } from './modules/user-role/user-role.entity'; +import { UserProfileModule } from './modules/user-profile/user-profile.module'; +import { acRules } from './app.acl'; +import { UserCustomLookupService } from './modules/user/user-custom-lookup.service'; +import { UserCustomModule } from './modules/user/user-custom.module'; +import { StoreModule } from './modules/store/store.module'; +import { mailerConfig } from './config/mailer.config'; +import { + USER_ROLE_ASSIGNMENT_KEY, + USER_ROLE_ENTITY_KEY, +} from './modules/user-role/user-role.constants'; +import { UserProfileAccessQueryService } from './modules/user-profile/user-profile-access-query.service'; +import { MeModule } from './modules/me/me.module'; +import { envValidator } from './common/utils/env-validator.util'; +import { DatabaseConfigSchema } from './common/schema/database-config.schema'; +import { AuthConfigSchema } from './common/schema/auth-config.schema'; +import { SentryConfigSchema } from './common/schema/sentry-config.schema'; +import { authRecoveryConfig } from './config/auth-recovery.config'; +import { ProductModule } from './modules/product/product.module'; + +@Module({ + imports: [ + ConfigModule.forRoot({ + isGlobal: true, + load: [serverConfig, ormConfig, mailerConfig, authRecoveryConfig], + validate: envValidator( + DatabaseConfigSchema, + SentryConfigSchema, + AuthConfigSchema, + ), + }), + SwaggerUiModule.register({}), + TypeOrmExtModule.forRootAsync({ + inject: [ormConfig.KEY], + useFactory: (config: TypeOrmExtOptions) => config, + }), + JwtModule.forRoot({}), + AuthenticationModule.forRoot({}), + AuthLocalModule.registerAsync({ ...createUserOpts() }), + AuthJwtModule.forRootAsync({ ...createUserOpts() }), + AuthRefreshModule.registerAsync({ ...createUserOpts() }), + PasswordModule.forRoot({ + settings: { + requireCurrentToUpdate: true, + }, + }), + CrudModule.forRoot({}), + RoleModule.forRoot({ + settings: { + assignments: { + [USER_ROLE_ASSIGNMENT_KEY]: { entityKey: USER_ROLE_ENTITY_KEY }, + }, + }, + entities: { + role: { + entity: RoleEntity, + }, + userRole: { + entity: UserRoleEntity, + }, + }, + }), + MailerModule.forRootAsync({ + inject: [mailerConfig.KEY], + useFactory: async (config: ConfigType) => config, + }), + EmailModule.forRootAsync({ + inject: [MailerService], + useFactory: (mailerService: MailerService) => ({ mailerService }), + }), + OtpModule.forRoot({ + entities: { + userOtp: { + entity: UserOtpEntity, + }, + }, + }), + AuthRecoveryModule.registerAsync({ + inject: [ + UserLookupService, + UserMutateService, + OtpService, + EmailService, + authRecoveryConfig.KEY, + ], + useFactory: ( + userLookupService, + userMutateService, + otpService, + emailService, + settings: ConfigType, + ) => ({ + settings, + userLookupService, + userMutateService, + otpService, + emailService, + }), + }), + UserModule.forRootAsync({ + imports: [UserCustomModule], + inject: [UserCustomLookupService], + useFactory: (userLookupService: UserCustomLookupService) => ({ + userLookupService, + }), + entities: { + user: { entity: UserEntity }, + }, + }), + AccessControlModule.forRoot({ + settings: { rules: acRules }, + imports: [UserProfileModule], + queryServices: [UserAccessQueryService, UserProfileAccessQueryService], + }), + LoggerSentryModule.forRoot({}), + LoggerModule.forRootAsync({ + inject: [LoggerSentryTransport], + useFactory: (loggerSentryTransport: LoggerSentryTransport) => { + return { + transports: [loggerSentryTransport], + }; + }, + }), + UserProfileModule, + StoreModule, + ProductModule, + MeModule, + ], +}) +export class AppModule {} + +function createUserOpts() { + return { + inject: [UserLookupService], + useFactory: (userLookupService: UserLookupService) => ({ + userLookupService, + }), + }; +} diff --git a/packages/api/src/app.seeder.ts b/packages/api/src/app.seeder.ts new file mode 100644 index 0000000..f1d6055 --- /dev/null +++ b/packages/api/src/app.seeder.ts @@ -0,0 +1,13 @@ +import { Seeder } from '@concepta/typeorm-seeding'; +import { StoreProductSeeder } from './modules/store/store.seeder'; +import { StoreFactory } from './modules/store/store.factory'; + +export class AppSeeder extends Seeder { + async run() { + const storeProductSeeder = new StoreProductSeeder({ + factories: [new StoreFactory()], + }); + + await this.call([storeProductSeeder]); + } +} diff --git a/packages/api/src/assets/templates/email/password-updated-successfully.template.hbs b/packages/api/src/assets/templates/email/password-updated-successfully.template.hbs new file mode 100644 index 0000000..a02fd9f --- /dev/null +++ b/packages/api/src/assets/templates/email/password-updated-successfully.template.hbs @@ -0,0 +1,3 @@ +

+ Congratulations you were successfully joined app. +

diff --git a/packages/api/src/assets/templates/email/recover-login.template.hbs b/packages/api/src/assets/templates/email/recover-login.template.hbs new file mode 100644 index 0000000..ccbffd8 --- /dev/null +++ b/packages/api/src/assets/templates/email/recover-login.template.hbs @@ -0,0 +1,7 @@ +

+You have requested to recover your login. If you did not make this request, please ignore this message. +

+ +

+This is your login {{login}} +

diff --git a/packages/api/src/assets/templates/email/recover-password.template.hbs b/packages/api/src/assets/templates/email/recover-password.template.hbs new file mode 100644 index 0000000..52784c7 --- /dev/null +++ b/packages/api/src/assets/templates/email/recover-password.template.hbs @@ -0,0 +1,15 @@ +

+ You have requested to reset your password. If you did not make this request, please ignore this message. +

+ +

+ Please click on the link below to choose a new password. +

+ +

+ Click Here +

+ +

+ This link will expire at {{tokenExp}} +

\ No newline at end of file diff --git a/packages/api/src/common/interfaces/server-config.interface.ts b/packages/api/src/common/interfaces/server-config.interface.ts new file mode 100644 index 0000000..ecb49d0 --- /dev/null +++ b/packages/api/src/common/interfaces/server-config.interface.ts @@ -0,0 +1,8 @@ +import { CorsOptions } from '@nestjs/common/interfaces/external/cors-options.interface'; + +export interface ServerConfigInterface { + environment: string; + port: number; + cors?: CorsOptions; + isSwaggerEnabled: boolean; +} diff --git a/packages/api/src/common/schema/auth-config.schema.ts b/packages/api/src/common/schema/auth-config.schema.ts new file mode 100644 index 0000000..828ba14 --- /dev/null +++ b/packages/api/src/common/schema/auth-config.schema.ts @@ -0,0 +1,6 @@ +import { IsString } from 'class-validator'; + +export class AuthConfigSchema { + @IsString() + AUTH_URL_RESET_PASSWORD: string; +} diff --git a/packages/api/src/common/schema/database-config.schema.ts b/packages/api/src/common/schema/database-config.schema.ts new file mode 100644 index 0000000..96bcc0c --- /dev/null +++ b/packages/api/src/common/schema/database-config.schema.ts @@ -0,0 +1,12 @@ +import { IsIn, IsOptional, IsString } from 'class-validator'; + +export class DatabaseConfigSchema { + @IsString() + DATABASE_URL: string; + + @IsOptional() + @IsIn(['true', 'false'], { + message: 'DATABASE_SSL must be either "true" or "false"', + }) + DATABASE_SSL: string; +} diff --git a/packages/api/src/common/schema/sentry-config.schema.ts b/packages/api/src/common/schema/sentry-config.schema.ts new file mode 100644 index 0000000..ab9764d --- /dev/null +++ b/packages/api/src/common/schema/sentry-config.schema.ts @@ -0,0 +1,6 @@ +import { IsUrl } from 'class-validator'; + +export class SentryConfigSchema { + @IsUrl() + SENTRY_DSN: string; +} diff --git a/packages/api/src/common/utils/create-resources.util.ts b/packages/api/src/common/utils/create-resources.util.ts new file mode 100644 index 0000000..d2485b2 --- /dev/null +++ b/packages/api/src/common/utils/create-resources.util.ts @@ -0,0 +1,3 @@ +export function createResources(...enums: Record[]): string[] { + return enums.flatMap((enumObj) => Object.values(enumObj)); +} diff --git a/packages/api/src/common/utils/env-validator.util.ts b/packages/api/src/common/utils/env-validator.util.ts new file mode 100644 index 0000000..080d527 --- /dev/null +++ b/packages/api/src/common/utils/env-validator.util.ts @@ -0,0 +1,55 @@ +import { plainToInstance } from 'class-transformer'; +import { validateSync, ValidationError } from 'class-validator'; + +function validateConfig( + configClass: new () => T, + config: Record, +): { instance: T; errors: ValidationError[] } { + const instance = plainToInstance(configClass, config, { + enableImplicitConversion: true, + }); + + const errors = validateSync(instance, { + skipMissingProperties: false, + }); + + return { instance, errors }; +} + +function formatErrorMessages(errors: ValidationError[]): string { + return errors + .map((error) => { + const constraints = Object.values(error.constraints || {}).join(', '); + return `\n${constraints}`; + }) + .join(''); +} + +export function envValidator( + ...configClasses: Array object> +) { + return (config: Record) => { + const { instances, errors } = configClasses.reduce( + (acc, configClass) => { + const { instance, errors } = validateConfig(configClass, config); + + return { + instances: acc.instances.concat(instance), + errors: acc.errors.concat(errors), + }; + }, + { instances: [], errors: [] }, + ); + + if (errors.length > 0) { + throw new Error(formatErrorMessages(errors)); + } + + const mergedConfig = instances.reduce( + (acc, curr) => Object.assign(acc, curr), + {}, + ); + + return mergedConfig; + }; +} diff --git a/packages/api/src/common/utils/format-token-url.util.ts b/packages/api/src/common/utils/format-token-url.util.ts new file mode 100644 index 0000000..7da5700 --- /dev/null +++ b/packages/api/src/common/utils/format-token-url.util.ts @@ -0,0 +1,3 @@ +export function formatTokenUrl(baseUrl: string, passcode: string) { + return `${baseUrl}${passcode}`; +} diff --git a/packages/api/src/config/auth-recovery.config.ts b/packages/api/src/config/auth-recovery.config.ts new file mode 100644 index 0000000..911d1da --- /dev/null +++ b/packages/api/src/config/auth-recovery.config.ts @@ -0,0 +1,40 @@ +import { AuthRecoverySettingsInterface } from '@concepta/nestjs-auth-recovery/dist/interfaces/auth-recovery-settings.interface'; +import { registerAs } from '@nestjs/config'; +import { formatTokenUrl } from '../common/utils/format-token-url.util'; + +export const authRecoveryConfig = registerAs( + 'AUTH_RECOVERY_CONFIG', + (): AuthRecoverySettingsInterface => ({ + email: { + from: process.env?.NODEMAILER_FROM_EMAIL ?? 'no-reply@conceptatech.com', + baseUrl: process.env?.AUTH_URL_RESET_PASSWORD ?? '', + tokenUrlFormatter: formatTokenUrl, + templates: { + recoverLogin: { + fileName: `${__dirname}/../${ + process.env?.NODEMAILER_TEMPLATE_PATH ?? 'assets/templates/email' + }/recover-login.template.hbs`, + subject: 'Login Recovery', + }, + recoverPassword: { + fileName: `${__dirname}/../${ + process.env?.NODEMAILER_TEMPLATE_PATH ?? 'assets/templates/email' + }/recover-password.template.hbs`, + subject: 'Password Recovery', + }, + passwordUpdated: { + fileName: `${__dirname}/../${ + process.env?.NODEMAILER_TEMPLATE_PATH ?? 'assets/templates/email' + }/password-updated-successfully.template.hbs`, + subject: 'Password Updated Successfully', + }, + }, + }, + otp: { + assignment: 'userOtp', + category: 'auth-recovery', + type: 'uuid', + expiresIn: '1h', + }, + }), +); diff --git a/packages/api/src/config/mailer.config.ts b/packages/api/src/config/mailer.config.ts new file mode 100644 index 0000000..a215da9 --- /dev/null +++ b/packages/api/src/config/mailer.config.ts @@ -0,0 +1,31 @@ +import { MailerOptions } from '@nestjs-modules/mailer'; +import { HandlebarsAdapter } from '@nestjs-modules/mailer/dist/adapters/handlebars.adapter'; +import { registerAs } from '@nestjs/config'; + +export const mailerConfig = registerAs( + 'MAILER_CONFIG', + (): MailerOptions => ({ + transport: { + host: process.env?.MAILGUN_SMTP_SERVER ?? 'smtp.mailgun.org', + port: process.env?.MAILGUN_SMTP_PORT + ? Number(process.env?.MAILGUN_SMTP_PORT) + : 587, + auth: { + user: process.env?.MAILGUN_SMTP_LOGIN ?? '', + pass: process.env?.MAILGUN_SMTP_PASSWORD ?? '', + }, + }, + defaults: { + from: process.env?.NODEMAILER_FROM_EMAIL ?? 'no-reply@conceptatech.com', + }, + template: { + dir: `${__dirname}/../${ + process.env?.NODEMAILER_TEMPLATE_PATH ?? 'assets/templates/email' + }`, + adapter: new HandlebarsAdapter(), + options: { + strict: true, + }, + }, + }), +); diff --git a/packages/api/src/config/server.config.ts b/packages/api/src/config/server.config.ts new file mode 100644 index 0000000..a51e22d --- /dev/null +++ b/packages/api/src/config/server.config.ts @@ -0,0 +1,16 @@ +import { registerAs } from '@nestjs/config'; +import { ServerConfigInterface } from '../common/interfaces/server-config.interface'; + +export const serverConfig = registerAs( + 'SERVER_CONFIG', + (): ServerConfigInterface => ({ + environment: process.env?.NODE_ENV ?? 'development', + port: Number(process.env.PORT ?? 3001), + cors: { + origin: process.env.CORS_ORIGIN + ? process.env.CORS_ORIGIN.split(',') + : 'http://localhost:3000', + }, + isSwaggerEnabled: process.env.SWAGGER_ENABLED === 'true', + }), +); diff --git a/packages/api/src/config/typeorm.config.ts b/packages/api/src/config/typeorm.config.ts new file mode 100644 index 0000000..db11aef --- /dev/null +++ b/packages/api/src/config/typeorm.config.ts @@ -0,0 +1,49 @@ +/** + * !!!!! You MUST run build for changes in this !!!!!! + * !!!!! file to take effect for all CLI commands !!!!!! + */ + +import { registerAs } from '@nestjs/config'; +import { UserEntity } from '../modules/user/user.entity'; +import { RoleEntity } from '../entities/role.entity'; +import { UserRoleEntity } from '../modules/user-role/user-role.entity'; +import { UserOtpEntity } from '../entities/user-otp.entity'; +import { DataSourceOptions } from 'typeorm'; +import { UserProfileEntity } from '../modules/user-profile/user-profile.entity'; +import { StoreEntity } from '../modules/store/store.entity'; +import { ProductEntity } from '../modules/product/product.entity'; + +export const ormConfigFactory = (): DataSourceOptions => { + return { + type: 'postgres', + url: + process.env.DATABASE_URL ?? + 'postgresql://postgres:postgres@rockets-starter-postgres:5432/rockets-starter', + migrationsRun: + 'string' === typeof process.env.DATABASE_MIGRATIONS_RUN + ? process.env.DATABASE_MIGRATIONS_RUN === 'true' + : false, + synchronize: false, + entities: [ + UserEntity, + RoleEntity, + UserRoleEntity, + UserOtpEntity, + UserProfileEntity, + StoreEntity, + ProductEntity, + ], + subscribers: [__dirname + '/../**/*.subscriber.js'], + migrations: [__dirname + '/../migrations/*.js'], + extra: { + ssl: + process.env?.DATABASE_SSL === 'true' + ? { + rejectUnauthorized: false, + } + : false, + }, + }; +}; + +export const ormConfig = registerAs('TYPEORM_MODULE_CONFIG', ormConfigFactory); diff --git a/packages/api/src/entities/role.entity.ts b/packages/api/src/entities/role.entity.ts new file mode 100644 index 0000000..4dd4ea9 --- /dev/null +++ b/packages/api/src/entities/role.entity.ts @@ -0,0 +1,9 @@ +import { Entity, OneToMany } from 'typeorm'; +import { RolePostgresEntity } from '@concepta/nestjs-role'; +import { UserRoleEntity } from '../modules/user-role/user-role.entity'; + +@Entity('role') +export class RoleEntity extends RolePostgresEntity { + @OneToMany(() => UserRoleEntity, (userRole) => userRole.role) + userRoles?: UserRoleEntity[]; +} diff --git a/packages/api/src/entities/user-otp.entity.ts b/packages/api/src/entities/user-otp.entity.ts new file mode 100644 index 0000000..fbf5eb0 --- /dev/null +++ b/packages/api/src/entities/user-otp.entity.ts @@ -0,0 +1,11 @@ +import { Entity, ManyToOne } from 'typeorm'; +import { ReferenceIdInterface } from '@concepta/nestjs-common'; +import { OtpPostgresEntity } from '@concepta/nestjs-otp'; + +import { UserEntity } from '../modules/user/user.entity'; + +@Entity('user_otp') +export class UserOtpEntity extends OtpPostgresEntity { + @ManyToOne(() => UserEntity, (user) => user.userOtps, { nullable: false }) + assignee!: ReferenceIdInterface; +} diff --git a/packages/api/src/main.ts b/packages/api/src/main.ts new file mode 100644 index 0000000..2ed6ad2 --- /dev/null +++ b/packages/api/src/main.ts @@ -0,0 +1,33 @@ +import { ExceptionsFilter } from '@concepta/nestjs-exception'; +import { SwaggerUiService } from '@concepta/nestjs-swagger-ui'; +import { HttpAdapterHost, NestFactory } from '@nestjs/core'; +import { ConfigService } from '@nestjs/config'; +import { AppModule } from './app.module'; +import { ServerConfigInterface } from './common/interfaces/server-config.interface'; + +async function bootstrap() { + const app = await NestFactory.create(AppModule); + + const exceptionsFilter = app.get(HttpAdapterHost); + + app.useGlobalFilters(new ExceptionsFilter(exceptionsFilter)); + + const configService = app.get(ConfigService); + + const { cors, port, isSwaggerEnabled } = + configService.get('SERVER_CONFIG'); + + if (isSwaggerEnabled) { + const swaggerUiService = app.get(SwaggerUiService); + + swaggerUiService.builder().addBearerAuth(); + + swaggerUiService.setup(app); + } + + app.enableCors(cors); + + await app.listen(port); +} + +bootstrap(); diff --git a/packages/api/src/migrations/1736734312484-Initial.ts b/packages/api/src/migrations/1736734312484-Initial.ts new file mode 100644 index 0000000..9442ef5 --- /dev/null +++ b/packages/api/src/migrations/1736734312484-Initial.ts @@ -0,0 +1,69 @@ +import { MigrationInterface, QueryRunner } from 'typeorm'; + +export class Initial1736734312484 implements MigrationInterface { + name = 'Initial1736734312484'; + + public async up(queryRunner: QueryRunner): Promise { + await queryRunner.query( + `CREATE TABLE "user_otp" ("dateCreated" TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT now(), "dateUpdated" TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT now(), "dateDeleted" TIMESTAMP WITH TIME ZONE, "version" integer NOT NULL, "id" uuid NOT NULL DEFAULT uuid_generate_v4(), "category" character varying NOT NULL, "type" character varying, "passcode" character varying NOT NULL, "expirationDate" TIMESTAMP WITH TIME ZONE NOT NULL, "assigneeId" uuid NOT NULL, CONSTRAINT "PK_494c022ed33e6ee19a2bbb11b22" PRIMARY KEY ("id"))`, + ); + await queryRunner.query( + `CREATE TABLE "user_profile" ("dateCreated" TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT now(), "dateUpdated" TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT now(), "dateDeleted" TIMESTAMP WITH TIME ZONE, "version" integer NOT NULL, "id" uuid NOT NULL DEFAULT uuid_generate_v4(), "fullName" character varying NOT NULL, "userId" uuid NOT NULL, CONSTRAINT "REL_51cb79b5555effaf7d69ba1cff" UNIQUE ("userId"), CONSTRAINT "PK_f44d0cd18cfd80b0fed7806c3b7" PRIMARY KEY ("id"))`, + ); + await queryRunner.query( + `CREATE TABLE "role" ("dateCreated" TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT now(), "dateUpdated" TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT now(), "dateDeleted" TIMESTAMP WITH TIME ZONE, "version" integer NOT NULL, "id" uuid NOT NULL DEFAULT uuid_generate_v4(), "name" character varying NOT NULL, "description" character varying NOT NULL, CONSTRAINT "PK_b36bcfe02fc8de3c57a8b2391c2" PRIMARY KEY ("id"))`, + ); + await queryRunner.query( + `CREATE TABLE "user_role" ("dateCreated" TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT now(), "dateUpdated" TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT now(), "dateDeleted" TIMESTAMP WITH TIME ZONE, "version" integer NOT NULL, "id" uuid NOT NULL DEFAULT uuid_generate_v4(), "roleId" uuid NOT NULL, "assigneeId" uuid NOT NULL, CONSTRAINT "UQ_0aba75700a541379ebff645c8da" UNIQUE ("roleId", "assigneeId"), CONSTRAINT "PK_fb2e442d14add3cefbdf33c4561" PRIMARY KEY ("id"))`, + ); + await queryRunner.query( + `CREATE TABLE "user" ("dateCreated" TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT now(), "dateUpdated" TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT now(), "dateDeleted" TIMESTAMP WITH TIME ZONE, "version" integer NOT NULL, "id" uuid NOT NULL DEFAULT uuid_generate_v4(), "email" character varying NOT NULL, "username" character varying NOT NULL, "active" boolean NOT NULL DEFAULT true, "passwordHash" text, "passwordSalt" text, CONSTRAINT "UQ_e12875dfb3b1d92d7d7c5377e22" UNIQUE ("email"), CONSTRAINT "UQ_78a916df40e02a9deb1c4b75edb" UNIQUE ("username"), CONSTRAINT "PK_cace4a159ff9f2512dd42373760" PRIMARY KEY ("id"))`, + ); + await queryRunner.query( + `CREATE TABLE "product" ("dateCreated" TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT now(), "dateUpdated" TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT now(), "dateDeleted" TIMESTAMP WITH TIME ZONE, "version" integer NOT NULL, "id" uuid NOT NULL DEFAULT uuid_generate_v4(), "name" character varying NOT NULL, "description" character varying, "imageUrl" character varying, "active" boolean NOT NULL DEFAULT true, "price" numeric NOT NULL, "stock" integer NOT NULL, "storeId" uuid NOT NULL, CONSTRAINT "PK_bebc9158e480b949565b4dc7a82" PRIMARY KEY ("id"))`, + ); + await queryRunner.query( + `CREATE TABLE "store" ("dateCreated" TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT now(), "dateUpdated" TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT now(), "dateDeleted" TIMESTAMP WITH TIME ZONE, "version" integer NOT NULL, "id" uuid NOT NULL DEFAULT uuid_generate_v4(), "name" character varying NOT NULL, "email" character varying NOT NULL, "phoneNumber" character varying NOT NULL, "address" character varying NOT NULL, "description" character varying, "city" character varying, "state" character varying, "zipCode" character varying, "openingTime" TIME, "closingTime" TIME, "active" boolean, CONSTRAINT "PK_f3172007d4de5ae8e7692759d79" PRIMARY KEY ("id"))`, + ); + await queryRunner.query( + `ALTER TABLE "user_otp" ADD CONSTRAINT "FK_beffb5a47aeba564f383d642ea9" FOREIGN KEY ("assigneeId") REFERENCES "user"("id") ON DELETE NO ACTION ON UPDATE NO ACTION`, + ); + await queryRunner.query( + `ALTER TABLE "user_profile" ADD CONSTRAINT "FK_51cb79b5555effaf7d69ba1cff9" FOREIGN KEY ("userId") REFERENCES "user"("id") ON DELETE NO ACTION ON UPDATE NO ACTION`, + ); + await queryRunner.query( + `ALTER TABLE "user_role" ADD CONSTRAINT "FK_dba55ed826ef26b5b22bd39409b" FOREIGN KEY ("roleId") REFERENCES "role"("id") ON DELETE NO ACTION ON UPDATE NO ACTION`, + ); + await queryRunner.query( + `ALTER TABLE "user_role" ADD CONSTRAINT "FK_5de24d2b69d7e7cc8cbb731f053" FOREIGN KEY ("assigneeId") REFERENCES "user"("id") ON DELETE NO ACTION ON UPDATE NO ACTION`, + ); + await queryRunner.query( + `ALTER TABLE "product" ADD CONSTRAINT "FK_32eaa54ad96b26459158464379a" FOREIGN KEY ("storeId") REFERENCES "store"("id") ON DELETE NO ACTION ON UPDATE NO ACTION`, + ); + } + + public async down(queryRunner: QueryRunner): Promise { + await queryRunner.query( + `ALTER TABLE "product" DROP CONSTRAINT "FK_32eaa54ad96b26459158464379a"`, + ); + await queryRunner.query( + `ALTER TABLE "user_role" DROP CONSTRAINT "FK_5de24d2b69d7e7cc8cbb731f053"`, + ); + await queryRunner.query( + `ALTER TABLE "user_role" DROP CONSTRAINT "FK_dba55ed826ef26b5b22bd39409b"`, + ); + await queryRunner.query( + `ALTER TABLE "user_profile" DROP CONSTRAINT "FK_51cb79b5555effaf7d69ba1cff9"`, + ); + await queryRunner.query( + `ALTER TABLE "user_otp" DROP CONSTRAINT "FK_beffb5a47aeba564f383d642ea9"`, + ); + await queryRunner.query(`DROP TABLE "store"`); + await queryRunner.query(`DROP TABLE "product"`); + await queryRunner.query(`DROP TABLE "user"`); + await queryRunner.query(`DROP TABLE "user_role"`); + await queryRunner.query(`DROP TABLE "role"`); + await queryRunner.query(`DROP TABLE "user_profile"`); + await queryRunner.query(`DROP TABLE "user_otp"`); + } +} diff --git a/packages/api/src/migrations/1736734870130-AddAdminUser.ts b/packages/api/src/migrations/1736734870130-AddAdminUser.ts new file mode 100644 index 0000000..824292b --- /dev/null +++ b/packages/api/src/migrations/1736734870130-AddAdminUser.ts @@ -0,0 +1,80 @@ +import { MigrationInterface, QueryRunner } from 'typeorm'; +import { PasswordStorageService } from '@concepta/nestjs-password'; +import { UserEntityInterface } from '@concepta/nestjs-user'; +import { PasswordPlainInterface } from '@concepta/nestjs-common'; + +export class AddUserAdminContributorRole1736734870130 + implements MigrationInterface +{ + name = 'AddUserAdminContributorRole1736734870130'; + + passwordStorageService = new PasswordStorageService(); + + public async up(queryRunner: QueryRunner): Promise { + await queryRunner.query( + `INSERT INTO "role" ("name", "description", "version") VALUES + ($1, $2, 1), + ($3, $4, 1)`, + [ + 'User', + 'User role', + 'SuperAdmin', + 'A super admin role with all permissions', + ], + ); + + const superAdminUserObject: Partial & + PasswordPlainInterface = { + email: 'admin@conceptatech.com', + password: 'Test1234', + username: 'admin@conceptatech.com', + }; + + // Use password storage service to hash and delete password property + const superAdminUserHashed = await this.passwordStorageService.hashObject( + superAdminUserObject, + ); + + // Create super admin user + const [superAdminUser] = await queryRunner.query( + `INSERT INTO "user" ("email", "passwordHash", "passwordSalt", "username", "version") VALUES ($1, $2, $3, $4, 1) RETURNING "id"`, + [ + superAdminUserHashed.email, + superAdminUserHashed.passwordHash, + superAdminUserHashed.passwordSalt, + superAdminUserHashed.email, + ], + ); + + const [superAdminRole] = await queryRunner.query( + `SELECT id FROM "role" WHERE name = 'SuperAdmin'`, + ); + + // Create admin role assignment + await queryRunner.query( + `INSERT INTO "user_role" ("roleId", "assigneeId", "version") VALUES ($1, $2, 1)`, + [superAdminRole.id, superAdminUser.id], + ); + + // Create super admin user profile + await queryRunner.query( + `INSERT INTO "user_profile" ("id", "fullName", "userId", "dateCreated", "dateUpdated", "version") VALUES ($1, $2, $3, now(), now(), 1)`, + [superAdminUser.id, 'Super Admin', superAdminUser.id], + ); + } + + public async down(queryRunner: QueryRunner): Promise { + await queryRunner.query( + `DELETE FROM "user_profile" WHERE "userId" = (SELECT "id" FROM "user" WHERE "email" = 'admin@conceptatech.com')`, + ); + await queryRunner.query( + `DELETE FROM "user_role" WHERE "assigneeId" = (SELECT "id" FROM "user" WHERE "email" = 'admin@conceptatech.com')`, + ); + await queryRunner.query( + `DELETE FROM "user" WHERE "email" = 'admin@conceptatech.com'`, + ); + await queryRunner.query( + `DELETE FROM "role" WHERE name IN ('Contributor', 'SuperAdmin')`, + ); + } +} diff --git a/packages/api/src/modules/me/me.controller.ts b/packages/api/src/modules/me/me.controller.ts new file mode 100644 index 0000000..c229a7a --- /dev/null +++ b/packages/api/src/modules/me/me.controller.ts @@ -0,0 +1,64 @@ +/* eslint-disable @darraghor/nestjs-typed/api-method-should-specify-api-response */ +import { + CrudAction, + CrudController, + CrudJoin, + CrudRequest, + CrudRequestInterface, + CrudSerialize, + CrudValidate, +} from '@concepta/nestjs-crud'; +import { CrudApiResponse } from '@concepta/nestjs-crud/dist/decorators/openapi/crud-api-response.decorator'; +import { UserCrudService } from '@concepta/nestjs-user'; +import { + AccessControlGuard, + AccessControlReadOne, +} from '@concepta/nestjs-access-control'; +import { ApiTags, ApiBearerAuth } from '@nestjs/swagger'; +import { Get, UseGuards } from '@nestjs/common'; +import { JwtAuthGuard } from '@concepta/nestjs-auth-jwt'; +import { AuthUser } from '@concepta/nestjs-authentication'; +import { CrudActions } from '@concepta/nestjs-crud/dist/crud.enums'; +import { UserLocalDto, UserLocalInterface } from 'rockets-playground-common'; +import { MeResource } from './me.types'; + +@ApiBearerAuth() +@ApiTags(MeResource.One) +@CrudController({ + path: MeResource.One, + model: { + type: UserLocalDto, + }, +}) +@UseGuards(JwtAuthGuard, AccessControlGuard) +export class MeController { + constructor(private userCrudService: UserCrudService) {} + + @Get() + @CrudAction(CrudActions.ReadOne) + @CrudJoin({ + userRoles: { + eager: true, + alias: 'userRoles', + }, + 'userProfile.role': { + eager: true, + alias: 'role', + }, + userProfile: { + eager: true, + }, + }) + @CrudValidate() + @CrudSerialize() + @CrudApiResponse(CrudActions.ReadOne) + @AccessControlReadOne(MeResource.One) + async getOne( + @CrudRequest() crudRequest: CrudRequestInterface, + @AuthUser() user: UserLocalInterface, + ) { + return this.userCrudService.getOne(crudRequest, { + filter: { id: user.id }, + }); + } +} diff --git a/packages/api/src/modules/me/me.module.ts b/packages/api/src/modules/me/me.module.ts new file mode 100644 index 0000000..2e559d2 --- /dev/null +++ b/packages/api/src/modules/me/me.module.ts @@ -0,0 +1,7 @@ +import { Module } from '@nestjs/common'; +import { MeController } from './me.controller'; + +@Module({ + controllers: [MeController], +}) +export class MeModule {} diff --git a/packages/api/src/modules/me/me.types.ts b/packages/api/src/modules/me/me.types.ts new file mode 100644 index 0000000..e60db16 --- /dev/null +++ b/packages/api/src/modules/me/me.types.ts @@ -0,0 +1,3 @@ +export enum MeResource { + One = 'me', +} diff --git a/packages/api/src/modules/product/product-crud.service.ts b/packages/api/src/modules/product/product-crud.service.ts new file mode 100644 index 0000000..ac25ed9 --- /dev/null +++ b/packages/api/src/modules/product/product-crud.service.ts @@ -0,0 +1,14 @@ +import { Repository } from 'typeorm'; +import { TypeOrmCrudService } from '@concepta/nestjs-crud'; +import { InjectDynamicRepository } from '@concepta/nestjs-typeorm-ext'; +import { ProductEntity } from './product.entity'; +import { PRODUCT_ENTITY_KEY } from './product.constant'; + +export class ProductCrudService extends TypeOrmCrudService { + constructor( + @InjectDynamicRepository(PRODUCT_ENTITY_KEY) + public repo: Repository, + ) { + super(repo); + } +} diff --git a/packages/api/src/modules/product/product-not-found.exception.ts b/packages/api/src/modules/product/product-not-found.exception.ts new file mode 100644 index 0000000..897d689 --- /dev/null +++ b/packages/api/src/modules/product/product-not-found.exception.ts @@ -0,0 +1,14 @@ +import { HttpStatus } from '@nestjs/common'; +import { RuntimeException } from '@concepta/nestjs-exception'; + +export class ProductNotFoundException extends RuntimeException { + constructor(message = 'The product was not found.', originalError?: unknown) { + super({ + message, + originalError, + httpStatus: HttpStatus.NOT_FOUND, + }); + + this.errorCode = 'PRODUCT_NOT_FOUND_ERROR'; + } +} diff --git a/packages/api/src/modules/product/product.constant.ts b/packages/api/src/modules/product/product.constant.ts new file mode 100644 index 0000000..f28c0ec --- /dev/null +++ b/packages/api/src/modules/product/product.constant.ts @@ -0,0 +1 @@ +export const PRODUCT_ENTITY_KEY = 'product'; diff --git a/packages/api/src/modules/product/product.controller.ts b/packages/api/src/modules/product/product.controller.ts new file mode 100644 index 0000000..c6780e8 --- /dev/null +++ b/packages/api/src/modules/product/product.controller.ts @@ -0,0 +1,81 @@ +import { ApiTags, ApiBearerAuth } from '@nestjs/swagger'; +import { + AccessControlCreateOne, + AccessControlReadMany, + AccessControlReadOne, + AccessControlUpdateOne, +} from '@concepta/nestjs-access-control'; +import { + CrudController, + CrudJoin, + CrudReadMany, + CrudRequest, + CrudRequestInterface, + CrudReadOne, + CrudCreateOne, + CrudBody, + CrudUpdateOne, +} from '@concepta/nestjs-crud'; +import { + ProductCreateDto, + ProductDto, + ProductPaginatedDto, + ProductUpdateDto, +} from 'rockets-playground-common'; +import { ProductCrudService } from './product-crud.service'; +import { ProductResource } from './product.types'; + +@ApiBearerAuth() +@ApiTags(ProductResource.One) +@CrudController({ + path: ProductResource.One, + model: { + type: ProductDto, + paginatedType: ProductPaginatedDto, + }, +}) +export class ProductController { + constructor(private readonly productCrudService: ProductCrudService) {} + + @CrudJoin({ + store: { + eager: true, + }, + }) + @CrudReadMany() + @AccessControlReadMany(ProductResource.Many) + async getMany(@CrudRequest() crudRequest: CrudRequestInterface) { + return this.productCrudService.getMany(crudRequest); + } + + @CrudJoin({ + store: { + eager: true, + }, + }) + @CrudReadOne() + @AccessControlReadOne(ProductResource.One) + async getOne(@CrudRequest() crudRequest: CrudRequestInterface) { + return this.productCrudService.getOne(crudRequest); + } + + @CrudCreateOne() + @AccessControlCreateOne(ProductResource.One) + async createOne( + @CrudRequest() crudRequest: CrudRequestInterface, + @CrudBody() + productCreateDto: ProductCreateDto, + ) { + return this.productCrudService.createOne(crudRequest, productCreateDto); + } + + @CrudUpdateOne() + @AccessControlUpdateOne(ProductResource.One) + async updateOne( + @CrudRequest() crudRequest: CrudRequestInterface, + @CrudBody() + productUpdateDto: ProductUpdateDto, + ) { + return this.productCrudService.updateOne(crudRequest, productUpdateDto); + } +} diff --git a/packages/api/src/modules/product/product.entity.ts b/packages/api/src/modules/product/product.entity.ts new file mode 100644 index 0000000..43daa21 --- /dev/null +++ b/packages/api/src/modules/product/product.entity.ts @@ -0,0 +1,37 @@ +import { CommonPostgresEntity } from '@concepta/typeorm-common'; +import { ProductInterface, StoreInterface } from 'rockets-playground-common'; +import { Column, Entity, JoinColumn, ManyToOne } from 'typeorm'; +import { StoreEntity } from '../store/store.entity'; + +@Entity('product') +export class ProductEntity + extends CommonPostgresEntity + implements ProductInterface +{ + @Column({ nullable: false }) + name: string; + + @Column({ nullable: true }) + description: string; + + @Column({ nullable: true }) + imageUrl: string; + + @Column({ default: true }) + active: boolean; + + @Column({ type: 'numeric', nullable: false }) + price: number; + + @Column({ type: 'int', nullable: false }) + stock: number; + + @Column({ nullable: false }) + storeId: string; + + @ManyToOne(() => StoreEntity, (store) => store.products, { + nullable: false, + }) + @JoinColumn({ name: 'storeId' }) + store?: StoreInterface; +} diff --git a/packages/api/src/modules/product/product.exception.ts b/packages/api/src/modules/product/product.exception.ts new file mode 100644 index 0000000..f5663ad --- /dev/null +++ b/packages/api/src/modules/product/product.exception.ts @@ -0,0 +1,12 @@ +import { + RuntimeException, + RuntimeExceptionOptions, +} from '@concepta/nestjs-exception'; + +export class ProductException extends RuntimeException { + constructor(options: RuntimeExceptionOptions) { + super(options); + + this.errorCode = 'PRODUCT_ERROR'; + } +} diff --git a/packages/api/src/modules/product/product.factory.ts b/packages/api/src/modules/product/product.factory.ts new file mode 100644 index 0000000..4f1e8b6 --- /dev/null +++ b/packages/api/src/modules/product/product.factory.ts @@ -0,0 +1,22 @@ +import { Factory } from '@concepta/typeorm-seeding'; +import { faker } from '@faker-js/faker'; +import { ProductEntity } from './product.entity'; + +export class ProductFactory extends Factory { + protected async entity( + product: ProductEntity = new ProductEntity(), + ): Promise { + product.name = faker.commerce.productName(); + product.description = faker.commerce.productDescription(); + product.imageUrl = faker.image.urlLoremFlickr({ + width: 640, + height: 480, + category: 'product', + }); + product.active = faker.datatype.boolean(); + product.price = Number(faker.commerce.price({ min: 1, max: 2000 })); + product.stock = faker.number.int({ min: 0, max: 100 }); + + return product; + } +} diff --git a/packages/api/src/modules/product/product.module.ts b/packages/api/src/modules/product/product.module.ts new file mode 100644 index 0000000..516a662 --- /dev/null +++ b/packages/api/src/modules/product/product.module.ts @@ -0,0 +1,17 @@ +import { Module } from '@nestjs/common'; +import { TypeOrmExtModule } from '@concepta/nestjs-typeorm-ext'; +import { ProductCrudService } from './product-crud.service'; +import { PRODUCT_ENTITY_KEY } from './product.constant'; +import { ProductController } from './product.controller'; +import { ProductEntity } from './product.entity'; + +@Module({ + imports: [ + TypeOrmExtModule.forFeature({ + [PRODUCT_ENTITY_KEY]: { entity: ProductEntity }, + }), + ], + controllers: [ProductController], + providers: [ProductCrudService], +}) +export class ProductModule {} diff --git a/packages/api/src/modules/product/product.subscriber.ts b/packages/api/src/modules/product/product.subscriber.ts new file mode 100644 index 0000000..12e9e68 --- /dev/null +++ b/packages/api/src/modules/product/product.subscriber.ts @@ -0,0 +1,50 @@ +import { + EventSubscriber, + EntitySubscriberInterface, + InsertEvent, + UpdateEvent, +} from 'typeorm'; +import { HttpStatus } from '@nestjs/common'; +import { ProductEntity } from './product.entity'; +import { ProductException } from './product.exception'; + +@EventSubscriber() +export class ProductSubscriber + implements EntitySubscriberInterface +{ + listenTo() { + return ProductEntity; + } + + async beforeInsert(event: InsertEvent): Promise { + await this.checkUniqueness(event); + } + + async beforeUpdate(event: UpdateEvent): Promise { + await this.checkUniqueness(event); + } + + private async checkUniqueness( + event: InsertEvent | UpdateEvent, + ): Promise { + const entity = event.entity; + + if (!entity?.name || !entity?.price || !entity?.storeId) return; + + const existingProduct = await event.manager.findOne(ProductEntity, { + where: { + name: entity.name, + price: entity.price, + storeId: entity.storeId, + }, + }); + + if (existingProduct && existingProduct.id !== entity.id) { + throw new ProductException({ + httpStatus: HttpStatus.BAD_REQUEST, + message: + 'A product with the same name and price already exists in this store.', + }); + } + } +} diff --git a/packages/api/src/modules/product/product.types.ts b/packages/api/src/modules/product/product.types.ts new file mode 100644 index 0000000..19334e7 --- /dev/null +++ b/packages/api/src/modules/product/product.types.ts @@ -0,0 +1,4 @@ +export enum ProductResource { + One = 'product', + Many = 'product-list', +} diff --git a/packages/api/src/modules/store/store-not-found.exception.ts b/packages/api/src/modules/store/store-not-found.exception.ts new file mode 100644 index 0000000..74716dc --- /dev/null +++ b/packages/api/src/modules/store/store-not-found.exception.ts @@ -0,0 +1,14 @@ +import { HttpStatus } from '@nestjs/common'; +import { RuntimeException } from '@concepta/nestjs-exception'; + +export class StoreNotFoundException extends RuntimeException { + constructor(message = 'Store not found.', originalError?: unknown) { + super({ + message, + originalError, + httpStatus: HttpStatus.NOT_FOUND, + }); + + this.errorCode = 'STORE_NOT_FOUND_ERROR'; + } +} diff --git a/packages/api/src/modules/store/store.builder.ts b/packages/api/src/modules/store/store.builder.ts new file mode 100644 index 0000000..c1f026d --- /dev/null +++ b/packages/api/src/modules/store/store.builder.ts @@ -0,0 +1,53 @@ +import { ConfigurableCrudBuilder, CrudSoftDelete } from '@concepta/nestjs-crud'; +import { ApiTags, ApiBearerAuth } from '@nestjs/swagger'; +import { + StoreInterface, + StoreCreatableInterface, + StoreUpdatableInterface, + StoreDto, + StorePaginatedDto, + StoreCreateDto, + StoreUpdateDto, +} from 'rockets-playground-common'; +import { STORE_ENTITY_KEY } from './store.constants'; +import { StoreResource } from './store.types'; + +export const STORE_CRUD_SERVICE_TOKEN = Symbol('__STORE_CRUD_SERVICE_TOKEN__'); + +const crudBuilder = new ConfigurableCrudBuilder< + StoreInterface, + StoreCreatableInterface, + StoreUpdatableInterface +>(); + +export const { + ConfigurableControllerClass, + ConfigurableServiceClass: StoreCrudService, +} = crudBuilder.build({ + service: { + entityKey: STORE_ENTITY_KEY, + injectionToken: STORE_CRUD_SERVICE_TOKEN, + }, + controller: { + path: StoreResource.One, + model: { + type: StoreDto, + paginatedType: StorePaginatedDto, + }, + extraDecorators: [ApiTags(StoreResource.One), ApiBearerAuth()], + }, + getMany: {}, + getOne: {}, + createMany: {}, + createOne: { + dto: StoreCreateDto, + }, + updateOne: { + dto: StoreUpdateDto, + }, + deleteOne: { + extraDecorators: [CrudSoftDelete(true)], + }, +}); + +export class StoreController extends ConfigurableControllerClass {} diff --git a/packages/api/src/modules/store/store.constants.ts b/packages/api/src/modules/store/store.constants.ts new file mode 100644 index 0000000..7b24897 --- /dev/null +++ b/packages/api/src/modules/store/store.constants.ts @@ -0,0 +1 @@ +export const STORE_ENTITY_KEY = 'store'; diff --git a/packages/api/src/modules/store/store.entity.ts b/packages/api/src/modules/store/store.entity.ts new file mode 100644 index 0000000..b8a4faa --- /dev/null +++ b/packages/api/src/modules/store/store.entity.ts @@ -0,0 +1,46 @@ +import { CommonPostgresEntity } from '@concepta/typeorm-common'; +import { Column, Entity, OneToMany } from 'typeorm'; +import { ProductInterface, StoreInterface } from 'rockets-playground-common'; +import { ProductEntity } from '../product/product.entity'; + +@Entity('store') +export class StoreEntity + extends CommonPostgresEntity + implements StoreInterface +{ + @Column({ nullable: false }) + name: string; + + @Column({ nullable: false }) + email: string; + + @Column({ nullable: false }) + phoneNumber: string; + + @Column({ nullable: false }) + address: string; + + @Column({ nullable: true }) + description: string; + + @Column({ nullable: true }) + city: string; + + @Column({ nullable: true }) + state: string; + + @Column({ nullable: true }) + zipCode: string; + + @Column({ type: 'time', nullable: true }) + openingTime: string; + + @Column({ type: 'time', nullable: true }) + closingTime: string; + + @Column({ nullable: true }) + active: boolean; + + @OneToMany(() => ProductEntity, (product) => product.store) + products: ProductInterface[]; +} diff --git a/packages/api/src/modules/store/store.exception.ts b/packages/api/src/modules/store/store.exception.ts new file mode 100644 index 0000000..6665bcd --- /dev/null +++ b/packages/api/src/modules/store/store.exception.ts @@ -0,0 +1,12 @@ +import { + RuntimeException, + RuntimeExceptionOptions, +} from '@concepta/nestjs-exception'; + +export class StoreException extends RuntimeException { + constructor(options: RuntimeExceptionOptions) { + super(options); + + this.errorCode = 'STORE_ERROR'; + } +} diff --git a/packages/api/src/modules/store/store.factory.ts b/packages/api/src/modules/store/store.factory.ts new file mode 100644 index 0000000..356dbb0 --- /dev/null +++ b/packages/api/src/modules/store/store.factory.ts @@ -0,0 +1,31 @@ +import { Factory } from '@concepta/typeorm-seeding'; +import { faker } from '@faker-js/faker'; +import { StoreEntity } from './store.entity'; + +export class StoreFactory extends Factory { + protected async entity( + store: StoreEntity = new StoreEntity(), + ): Promise { + store.name = faker.company.name(); + store.email = faker.internet.email(); + store.phoneNumber = faker.phone.number(); + store.address = faker.location.streetAddress(); + store.description = faker.lorem.sentence(); + store.city = faker.location.city(); + store.state = faker.location.state(); + store.zipCode = faker.location.zipCode(); + store.openingTime = faker.helpers.arrayElement([ + '08:00:00', + '09:00:00', + '10:00:00', + ]); + store.closingTime = faker.helpers.arrayElement([ + '18:00:00', + '19:00:00', + '20:00:00', + ]); + store.active = faker.datatype.boolean(); + + return store; + } +} diff --git a/packages/api/src/modules/store/store.module.ts b/packages/api/src/modules/store/store.module.ts new file mode 100644 index 0000000..2d185d3 --- /dev/null +++ b/packages/api/src/modules/store/store.module.ts @@ -0,0 +1,25 @@ +import { Module } from '@nestjs/common'; +import { TypeOrmExtModule } from '@concepta/nestjs-typeorm-ext'; +import { StoreEntity } from './store.entity'; +import { + STORE_CRUD_SERVICE_TOKEN, + StoreController, + StoreCrudService, +} from './store.builder'; +import { STORE_ENTITY_KEY } from './store.constants'; + +@Module({ + imports: [ + TypeOrmExtModule.forFeature({ + [STORE_ENTITY_KEY]: { entity: StoreEntity }, + }), + ], + controllers: [StoreController], + providers: [ + { + provide: STORE_CRUD_SERVICE_TOKEN, + useClass: StoreCrudService, + }, + ], +}) +export class StoreModule {} diff --git a/packages/api/src/modules/store/store.seeder.ts b/packages/api/src/modules/store/store.seeder.ts new file mode 100644 index 0000000..d69dcbb --- /dev/null +++ b/packages/api/src/modules/store/store.seeder.ts @@ -0,0 +1,19 @@ +import { Seeder } from '@concepta/typeorm-seeding'; +import { faker } from '@faker-js/faker'; +import { StoreFactory } from '../store/store.factory'; +import { ProductFactory } from '../product/product.factory'; + +export class StoreProductSeeder extends Seeder { + async run() { + const storeFactory = this.factory(StoreFactory); + const productFactory = this.factory(ProductFactory); + + const stores = await storeFactory.createMany(10); + + for (const store of stores) { + const productCount = faker.number.int({ min: 5, max: 15 }); + + await productFactory.createMany(productCount, { store }); + } + } +} diff --git a/packages/api/src/modules/store/store.subscriber.ts b/packages/api/src/modules/store/store.subscriber.ts new file mode 100644 index 0000000..a65803f --- /dev/null +++ b/packages/api/src/modules/store/store.subscriber.ts @@ -0,0 +1,46 @@ +import { + EventSubscriber, + EntitySubscriberInterface, + InsertEvent, + UpdateEvent, +} from 'typeorm'; +import { HttpStatus } from '@nestjs/common'; +import { StoreEntity } from './store.entity'; +import { StoreException } from './store.exception'; + +@EventSubscriber() +export class StoreSubscriber implements EntitySubscriberInterface { + listenTo() { + return StoreEntity; + } + + async beforeInsert(event: InsertEvent): Promise { + await this.checkUniqueness(event); + } + + async beforeUpdate(event: UpdateEvent): Promise { + await this.checkUniqueness(event); + } + + private async checkUniqueness( + event: InsertEvent | UpdateEvent, + ): Promise { + const entity = event.entity; + + if (!entity?.name || !entity?.address) return; + + const existingStore = await event.manager.findOne(StoreEntity, { + where: { + name: entity.name, + address: entity.address, + }, + }); + + if (existingStore && existingStore.id !== entity.id) { + throw new StoreException({ + httpStatus: HttpStatus.BAD_REQUEST, + message: 'A Store with the same name and address already exists.', + }); + } + } +} diff --git a/packages/api/src/modules/store/store.types.ts b/packages/api/src/modules/store/store.types.ts new file mode 100644 index 0000000..dac3789 --- /dev/null +++ b/packages/api/src/modules/store/store.types.ts @@ -0,0 +1,4 @@ +export enum StoreResource { + One = 'store', + Many = 'store-list', +} diff --git a/packages/api/src/modules/user-profile/user-profile-access-query.service.ts b/packages/api/src/modules/user-profile/user-profile-access-query.service.ts new file mode 100644 index 0000000..1230a79 --- /dev/null +++ b/packages/api/src/modules/user-profile/user-profile-access-query.service.ts @@ -0,0 +1,88 @@ +import { + CanAccess, + AccessControlContext, + ActionEnum, +} from '@concepta/nestjs-access-control'; +import { Injectable } from '@nestjs/common'; +import { RoleLookupService, RoleService } from '@concepta/nestjs-role'; +import { plainToInstance } from 'class-transformer'; +import { UserLocalDto, UserProfileDto } from 'rockets-playground-common'; +import { UserProfileResource } from './user-profile.types'; +import { UserProfileException } from './user-profile.exception'; +import { AppRole } from '../../app.acl'; +import { USER_ROLE_ASSIGNMENT_KEY } from '../user-role/user-role.constants'; + +@Injectable() +export class UserProfileAccessQueryService implements CanAccess { + constructor( + private readonly roleLookupService: RoleLookupService, + private roleService: RoleService, + ) {} + + private get actionResourceHandlers() { + return { + [UserProfileResource.One]: { + [ActionEnum.READ]: (context: AccessControlContext) => + this.canRead(context), + [ActionEnum.UPDATE]: (context: AccessControlContext) => + this.canUpdate(context), + }, + }; + } + + async canAccess(context: AccessControlContext): Promise { + const { resource, action } = context.getQuery(); + + const handler = this.actionResourceHandlers[resource]?.[action]; + + if (!handler) { + return true; + } + + return handler(context); + } + + private async canRead(context: AccessControlContext): Promise { + const userAuthorizedDto = plainToInstance(UserLocalDto, context.getUser()); + + const params = context.getRequest('params'); + + const userProfileParamDto = plainToInstance(UserProfileDto, params); + + if (userAuthorizedDto.userProfile.id === userProfileParamDto.id) { + return true; + } + + const role = await this.roleLookupService.findOne({ + where: { name: AppRole.SuperAdmin }, + }); + + if (!role) { + throw new UserProfileException({ + message: 'Error while trying to lookup a Role reference', + }); + } + + const adminCanAccess = await this.roleService.isAssignedRole( + USER_ROLE_ASSIGNMENT_KEY, + role, + userAuthorizedDto, + ); + + return adminCanAccess; + } + + private async canUpdate(context: AccessControlContext): Promise { + const userAuthorizedDto = plainToInstance(UserLocalDto, context.getUser()); + + const params = context.getRequest('params'); + + const userProfileParamDto = plainToInstance(UserProfileDto, params); + + if (userAuthorizedDto.userProfile.id === userProfileParamDto.id) { + return true; + } + + return false; + } +} diff --git a/packages/api/src/modules/user-profile/user-profile-crud.service.ts b/packages/api/src/modules/user-profile/user-profile-crud.service.ts new file mode 100644 index 0000000..da407f6 --- /dev/null +++ b/packages/api/src/modules/user-profile/user-profile-crud.service.ts @@ -0,0 +1,62 @@ +import { DeepPartial, Repository } from 'typeorm'; +import { TypeOrmCrudService } from '@concepta/nestjs-crud'; +import { InjectDynamicRepository } from '@concepta/nestjs-typeorm-ext'; +import { CrudQueryOptionsInterface } from '@concepta/nestjs-crud/dist/interfaces/crud-query-options.interface'; +import { CrudRequest } from '@nestjsx/crud'; +import { HttpStatus } from '@nestjs/common'; +import { RoleService, RoleLookupService } from '@concepta/nestjs-role'; +import { UserMutateService } from '@concepta/nestjs-user'; +import { UserProfileCreatableInterface } from 'rockets-playground-common'; +import { UserProfileEntity } from './user-profile.entity'; +import { USER_ROLE_ASSIGNMENT_KEY } from '../user-role/user-role.constants'; +import { UserProfileException } from './user-profile.exception'; +import { USER_PROFILE_ENTITY_KEY } from './user-profile.constant'; + +export class UserProfileCrudService extends TypeOrmCrudService { + constructor( + @InjectDynamicRepository(USER_PROFILE_ENTITY_KEY) + public repo: Repository, + private readonly roleService: RoleService, + private readonly userMutateService: UserMutateService, + private readonly roleLookupService: RoleLookupService, + ) { + super(repo); + } + + override createOne( + req: CrudRequest, + dto: DeepPartial, + queryOptions?: CrudQueryOptionsInterface, + ): Promise { + return this.transaction().commit(async (_transaction) => { + const { email, roleId, ...userProfileDto } = dto; + + const role = await this.roleLookupService.byId(roleId); + + if (!role) { + throw new UserProfileException({ + httpStatus: HttpStatus.BAD_REQUEST, + message: 'Role not found.', + }); + } + + const user = await this.userMutateService.create({ + email, + username: email, + }); + + await this.roleService.assignRole(USER_ROLE_ASSIGNMENT_KEY, role, user); + + const userProfile = await super.createOne( + req, + { + ...userProfileDto, + userId: user.id, + }, + queryOptions, + ); + + return userProfile; + }); + } +} diff --git a/packages/api/src/modules/user-profile/user-profile-lookup.service.ts b/packages/api/src/modules/user-profile/user-profile-lookup.service.ts new file mode 100644 index 0000000..daf07c9 --- /dev/null +++ b/packages/api/src/modules/user-profile/user-profile-lookup.service.ts @@ -0,0 +1,16 @@ +import { Repository } from 'typeorm'; +import { Injectable } from '@nestjs/common'; +import { LookupService } from '@concepta/typeorm-common'; +import { InjectDynamicRepository } from '@concepta/nestjs-typeorm-ext'; +import { UserProfileInterface } from 'rockets-playground-common'; +import { USER_PROFILE_ENTITY_KEY } from './user-profile.constant'; + +@Injectable() +export class UserProfileLookupService extends LookupService { + constructor( + @InjectDynamicRepository(USER_PROFILE_ENTITY_KEY) + repo: Repository, + ) { + super(repo); + } +} diff --git a/packages/api/src/modules/user-profile/user-profile-mutate.service.ts b/packages/api/src/modules/user-profile/user-profile-mutate.service.ts new file mode 100644 index 0000000..b3ddadf --- /dev/null +++ b/packages/api/src/modules/user-profile/user-profile-mutate.service.ts @@ -0,0 +1,30 @@ +import { MutateService } from '@concepta/typeorm-common'; +import { Injectable } from '@nestjs/common'; +import { InjectDynamicRepository } from '@concepta/nestjs-typeorm-ext'; +import { + UserProfileInterface, + UserProfileCreatableInterface, + UserProfileUpdatableInterface, + UserProfileCreateDto, + UserProfileUpdateDto, +} from 'rockets-playground-common'; +import { Repository } from 'typeorm'; +import { UserProfileEntity } from './user-profile.entity'; +import { USER_PROFILE_ENTITY_KEY } from './user-profile.constant'; + +@Injectable() +export class UserProfileMutateService extends MutateService< + UserProfileInterface, + UserProfileCreatableInterface, + UserProfileUpdatableInterface +> { + protected createDto = UserProfileCreateDto; + protected updateDto = UserProfileUpdateDto; + + constructor( + @InjectDynamicRepository(USER_PROFILE_ENTITY_KEY) + repo: Repository, + ) { + super(repo); + } +} diff --git a/packages/api/src/modules/user-profile/user-profile.constant.ts b/packages/api/src/modules/user-profile/user-profile.constant.ts new file mode 100644 index 0000000..d68d5a7 --- /dev/null +++ b/packages/api/src/modules/user-profile/user-profile.constant.ts @@ -0,0 +1 @@ +export const USER_PROFILE_ENTITY_KEY = 'user-profile'; diff --git a/packages/api/src/modules/user-profile/user-profile.controller.ts b/packages/api/src/modules/user-profile/user-profile.controller.ts new file mode 100644 index 0000000..6c06ff8 --- /dev/null +++ b/packages/api/src/modules/user-profile/user-profile.controller.ts @@ -0,0 +1,93 @@ +import { ApiTags, ApiBearerAuth } from '@nestjs/swagger'; +import { + AccessControlCreateOne, + AccessControlQuery, + AccessControlReadMany, + AccessControlReadOne, + AccessControlUpdateOne, +} from '@concepta/nestjs-access-control'; +import { + CrudBody, + CrudController, + CrudCreateOne, + CrudReadMany, + CrudReadOne, + CrudRequest, + CrudRequestInterface, + CrudUpdateOne, +} from '@concepta/nestjs-crud'; +import { + UserProfileCreateDto, + UserProfileDto, + UserProfilePaginatedDto, + UserProfileUpdateDto, +} from 'rockets-playground-common'; +import { UserProfileResource } from './user-profile.types'; +import { UserProfileCrudService } from './user-profile-crud.service'; +import { UserProfileAccessQueryService } from './user-profile-access-query.service'; + +@ApiBearerAuth() +@ApiTags(UserProfileResource.One) +@CrudController({ + path: UserProfileResource.One, + model: { + type: UserProfileDto, + paginatedType: UserProfilePaginatedDto, + }, + join: { + user: { + eager: true, + alias: 'user', + }, + 'user.userRoles': { + eager: true, + alias: 'userRoles', + }, + 'user.userRoles.role': { + eager: true, + alias: 'role', + }, + }, +}) +@AccessControlQuery({ service: UserProfileAccessQueryService }) +export class UserProfileController { + constructor( + private readonly userProfileCrudService: UserProfileCrudService, + ) {} + + @CrudReadMany() + @AccessControlReadMany(UserProfileResource.Many) + async getMany(@CrudRequest() crudRequest: CrudRequestInterface) { + return this.userProfileCrudService.getMany(crudRequest); + } + + @CrudReadOne() + @AccessControlReadOne(UserProfileResource.One) + async getOne(@CrudRequest() crudRequest: CrudRequestInterface) { + return this.userProfileCrudService.getOne(crudRequest); + } + + @CrudCreateOne() + @AccessControlCreateOne(UserProfileResource.One) + async createOne( + @CrudRequest() crudRequest: CrudRequestInterface, + @CrudBody() userProfileCreateDto: UserProfileCreateDto, + ) { + return this.userProfileCrudService.createOne( + crudRequest, + userProfileCreateDto, + ); + } + + @CrudUpdateOne() + @AccessControlUpdateOne(UserProfileResource.One) + async updateOne( + @CrudRequest() crudRequest: CrudRequestInterface, + @CrudBody() userProfileUpdateDto: UserProfileUpdateDto, + ) { + return this.userProfileCrudService.updateOne( + crudRequest, + userProfileUpdateDto, + ); + } +} diff --git a/packages/api/src/modules/user-profile/user-profile.entity.ts b/packages/api/src/modules/user-profile/user-profile.entity.ts new file mode 100644 index 0000000..234790e --- /dev/null +++ b/packages/api/src/modules/user-profile/user-profile.entity.ts @@ -0,0 +1,23 @@ +import { CommonPostgresEntity } from '@concepta/typeorm-common'; +import { Column, Entity, JoinColumn, OneToOne } from 'typeorm'; +import { + UserLocalInterface, + UserProfileInterface, +} from 'rockets-playground-common'; +import { UserEntity } from '../user/user.entity'; + +@Entity('user_profile') +export class UserProfileEntity + extends CommonPostgresEntity + implements UserProfileInterface +{ + @Column() + fullName: string; + + @Column({ nullable: false }) + userId: string; + + @OneToOne(() => UserEntity, (user) => user.userProfile, { nullable: false }) + @JoinColumn({ name: 'userId' }) + user: UserLocalInterface; +} diff --git a/packages/api/src/modules/user-profile/user-profile.exception.ts b/packages/api/src/modules/user-profile/user-profile.exception.ts new file mode 100644 index 0000000..80c6c16 --- /dev/null +++ b/packages/api/src/modules/user-profile/user-profile.exception.ts @@ -0,0 +1,12 @@ +import { + RuntimeException, + RuntimeExceptionOptions, +} from '@concepta/nestjs-exception'; + +export class UserProfileException extends RuntimeException { + constructor(options: RuntimeExceptionOptions) { + super(options); + + this.errorCode = 'USER_PROFILE_ERROR'; + } +} diff --git a/packages/api/src/modules/user-profile/user-profile.factory.ts b/packages/api/src/modules/user-profile/user-profile.factory.ts new file mode 100644 index 0000000..4036f94 --- /dev/null +++ b/packages/api/src/modules/user-profile/user-profile.factory.ts @@ -0,0 +1,18 @@ +import { Factory } from '@concepta/typeorm-seeding'; +import { faker } from '@faker-js/faker'; +import { UserProfileEntity } from '../user-profile/user-profile.entity'; +import { UserFactory } from '../user/user.factory'; + +export class UserProfileFactory extends Factory { + protected async entity( + userProfile: UserProfileEntity = new UserProfileEntity(), + ): Promise { + userProfile.fullName = faker.person.fullName(); + + const user = await this.factory(UserFactory).create(); + + userProfile.user = user; + + return userProfile; + } +} diff --git a/packages/api/src/modules/user-profile/user-profile.module.ts b/packages/api/src/modules/user-profile/user-profile.module.ts new file mode 100644 index 0000000..2f673c0 --- /dev/null +++ b/packages/api/src/modules/user-profile/user-profile.module.ts @@ -0,0 +1,26 @@ +import { Module } from '@nestjs/common'; +import { TypeOrmExtModule } from '@concepta/nestjs-typeorm-ext'; +import { UserProfileEntity } from './user-profile.entity'; +import { UserProfileController } from './user-profile.controller'; +import { UserProfileCrudService } from './user-profile-crud.service'; +import { UserProfileLookupService } from './user-profile-lookup.service'; +import { UserProfileAccessQueryService } from './user-profile-access-query.service'; +import { USER_PROFILE_ENTITY_KEY } from './user-profile.constant'; +import { UserProfileMutateService } from './user-profile-mutate.service'; + +@Module({ + imports: [ + TypeOrmExtModule.forFeature({ + [USER_PROFILE_ENTITY_KEY]: { entity: UserProfileEntity }, + }), + ], + controllers: [UserProfileController], + providers: [ + UserProfileCrudService, + UserProfileAccessQueryService, + UserProfileLookupService, + UserProfileMutateService, + ], + exports: [UserProfileLookupService, UserProfileMutateService], +}) +export class UserProfileModule {} diff --git a/packages/api/src/modules/user-profile/user-profile.types.ts b/packages/api/src/modules/user-profile/user-profile.types.ts new file mode 100644 index 0000000..43fd3a7 --- /dev/null +++ b/packages/api/src/modules/user-profile/user-profile.types.ts @@ -0,0 +1,4 @@ +export enum UserProfileResource { + One = 'user-profile', + Many = 'user-profile-list', +} diff --git a/packages/api/src/modules/user-role/user-role.constants.ts b/packages/api/src/modules/user-role/user-role.constants.ts new file mode 100644 index 0000000..69c469f --- /dev/null +++ b/packages/api/src/modules/user-role/user-role.constants.ts @@ -0,0 +1,2 @@ +export const USER_ROLE_ASSIGNMENT_KEY = 'user'; +export const USER_ROLE_ENTITY_KEY = 'userRole'; diff --git a/packages/api/src/modules/user-role/user-role.entity.ts b/packages/api/src/modules/user-role/user-role.entity.ts new file mode 100644 index 0000000..e2469ea --- /dev/null +++ b/packages/api/src/modules/user-role/user-role.entity.ts @@ -0,0 +1,15 @@ +import { Entity, ManyToOne } from 'typeorm'; +import { ReferenceIdInterface } from '@concepta/nestjs-common'; +import { RoleInterface } from '@concepta/nestjs-common'; +import { RoleAssignmentPostgresEntity } from '@concepta/nestjs-role'; +import { RoleEntity } from '../../entities/role.entity'; +import { UserEntity } from '../user/user.entity'; + +@Entity('user_role') +export class UserRoleEntity extends RoleAssignmentPostgresEntity { + @ManyToOne(() => RoleEntity, (role) => role.assignees, { nullable: false }) + role!: RoleInterface; + + @ManyToOne(() => UserEntity, (user) => user.userRoles, { nullable: false }) + assignee!: ReferenceIdInterface; +} diff --git a/packages/api/src/modules/user-role/user-role.factory.ts b/packages/api/src/modules/user-role/user-role.factory.ts new file mode 100644 index 0000000..1b6b3e6 --- /dev/null +++ b/packages/api/src/modules/user-role/user-role.factory.ts @@ -0,0 +1,10 @@ +import { Factory } from '@concepta/typeorm-seeding'; +import { UserRoleEntity } from './user-role.entity'; + +export class UserRoleFactory extends Factory { + protected async entity(): Promise { + const userRole = new UserRoleEntity(); + + return userRole; + } +} diff --git a/packages/api/src/modules/user/user-custom-lookup.service.ts b/packages/api/src/modules/user/user-custom-lookup.service.ts new file mode 100644 index 0000000..34f661f --- /dev/null +++ b/packages/api/src/modules/user/user-custom-lookup.service.ts @@ -0,0 +1,30 @@ +import { UserEntityInterface, UserLookupService } from '@concepta/nestjs-user'; +import { ReferenceSubject } from '@concepta/nestjs-common'; +import { QueryOptionsInterface } from '@concepta/typeorm-common'; +import { HttpStatus, Injectable } from '@nestjs/common'; +import { UserCustomException } from './user-custom.exception'; + +@Injectable() +export class UserCustomLookupService extends UserLookupService { + async bySubject( + subject: ReferenceSubject, + queryOptions?: QueryOptionsInterface, + ): Promise { + const user = await this.findOne( + { + where: { id: subject }, + relations: ['userRoles', 'userRoles.role', 'userProfile'], + }, + queryOptions, + ); + + if (!user) { + throw new UserCustomException({ + message: 'User not found', + httpStatus: HttpStatus.NOT_FOUND, + }); + } + + return user; + } +} diff --git a/packages/api/src/modules/user/user-custom-mutate.service.ts b/packages/api/src/modules/user/user-custom-mutate.service.ts new file mode 100644 index 0000000..216aa5f --- /dev/null +++ b/packages/api/src/modules/user/user-custom-mutate.service.ts @@ -0,0 +1,20 @@ +import { + UserEntityInterface, + UserMutateService, + UserPasswordService, +} from '@concepta/nestjs-user'; +import { Repository } from 'typeorm'; +import { Injectable } from '@nestjs/common'; +import { InjectDynamicRepository } from '@concepta/nestjs-typeorm-ext'; +import { USER_MODULE_USER_ENTITY_KEY } from '@concepta/nestjs-user/dist/user.constants'; + +@Injectable() +export class UserCustomMutateService extends UserMutateService { + constructor( + @InjectDynamicRepository(USER_MODULE_USER_ENTITY_KEY) + repo: Repository, + protected readonly userPasswordService: UserPasswordService, + ) { + super(repo, userPasswordService); + } +} diff --git a/packages/api/src/modules/user/user-custom.exception.ts b/packages/api/src/modules/user/user-custom.exception.ts new file mode 100644 index 0000000..363633a --- /dev/null +++ b/packages/api/src/modules/user/user-custom.exception.ts @@ -0,0 +1,12 @@ +import { + RuntimeException, + RuntimeExceptionOptions, +} from '@concepta/nestjs-exception'; + +export class UserCustomException extends RuntimeException { + constructor(options: RuntimeExceptionOptions) { + super(options); + + this.errorCode = 'USER_CUSTOM_ERROR'; + } +} diff --git a/packages/api/src/modules/user/user-custom.module.ts b/packages/api/src/modules/user/user-custom.module.ts new file mode 100644 index 0000000..9d217d5 --- /dev/null +++ b/packages/api/src/modules/user/user-custom.module.ts @@ -0,0 +1,10 @@ +import { Global, Module } from '@nestjs/common'; +import { UserCustomLookupService } from './user-custom-lookup.service'; +import { UserCustomMutateService } from './user-custom-mutate.service'; + +@Global() +@Module({ + providers: [UserCustomLookupService, UserCustomMutateService], + exports: [UserCustomLookupService, UserCustomMutateService], +}) +export class UserCustomModule {} diff --git a/packages/api/src/modules/user/user.entity.ts b/packages/api/src/modules/user/user.entity.ts new file mode 100644 index 0000000..cb61c97 --- /dev/null +++ b/packages/api/src/modules/user/user.entity.ts @@ -0,0 +1,21 @@ +import { Entity, OneToMany, OneToOne } from 'typeorm'; +import { UserPostgresEntity } from '@concepta/nestjs-user'; +import { UserLocalInterface } from 'rockets-playground-common'; +import { UserOtpEntity } from '../../entities/user-otp.entity'; +import { UserProfileEntity } from '../user-profile/user-profile.entity'; +import { UserRoleEntity } from '../user-role/user-role.entity'; + +@Entity('user') +export class UserEntity + extends UserPostgresEntity + implements UserLocalInterface +{ + @OneToMany(() => UserRoleEntity, (userRole) => userRole.assignee) + userRoles!: UserRoleEntity[]; + + @OneToMany(() => UserOtpEntity, (userOtp) => userOtp.assignee) + userOtps?: UserOtpEntity[]; + + @OneToOne(() => UserProfileEntity, (userProfile) => userProfile.user) + userProfile!: UserProfileEntity; +} diff --git a/packages/api/src/modules/user/user.factory.ts b/packages/api/src/modules/user/user.factory.ts new file mode 100644 index 0000000..be66eae --- /dev/null +++ b/packages/api/src/modules/user/user.factory.ts @@ -0,0 +1,28 @@ +import { faker } from '@faker-js/faker'; +import { UserFactory as _UserFactory } from '@concepta/nestjs-user/dist/user.factory'; +import { PasswordStorageService } from '@concepta/nestjs-password'; +import { UserEntity } from './user.entity'; + +export class UserFactory extends _UserFactory { + passwordStorageService = new PasswordStorageService(); + + protected options = { + entity: UserEntity, + override: _UserFactory, + }; + + protected async entity(user: UserEntity): Promise { + const email = faker.internet.email(); + + user.username = email; + user.email = email; + + const { passwordHash, passwordSalt } = + await this.passwordStorageService.hashObject({ password: 'Test1234' }); + + user.passwordHash = passwordHash; + user.passwordSalt = passwordSalt; + + return user; + } +} diff --git a/packages/api/src/modules/user/user.seeder.ts b/packages/api/src/modules/user/user.seeder.ts new file mode 100644 index 0000000..f8b07f3 --- /dev/null +++ b/packages/api/src/modules/user/user.seeder.ts @@ -0,0 +1,42 @@ +import { Seeder } from '@concepta/typeorm-seeding'; +import { UserInterface, RoleInterface } from '@concepta/nestjs-common'; +import { UserFactory } from './user.factory'; +import { UserEntity } from './user.entity'; +import { RoleEntity } from '../../entities/role.entity'; +import { AppRole } from '../../app.acl'; +import { UserRoleFactory } from '../user-role/user-role.factory'; + +export class UserSeeder extends Seeder { + async run() { + const userFactory = this.factory(UserFactory); + + const superAdminUsers = await userFactory.createMany(5); + const contributorUsers = await userFactory.createMany(10); + + const [superAdminRole, contributorRole] = await Promise.all([ + this.getRoleByName(AppRole.SuperAdmin), + this.getRoleByName(AppRole.User), + ]); + + for (const adminUser of superAdminUsers) { + await this.assignUsersRole(adminUser, superAdminRole); + } + + for (const contributorUser of contributorUsers) { + await this.assignUsersRole(contributorUser, contributorRole); + } + } + + private getRoleByName(roleName: AppRole): Promise { + return this.repository(UserEntity).manager.findOne(RoleEntity, { + where: { name: roleName }, + }); + } + + private assignUsersRole(user: UserInterface, role: RoleInterface) { + return this.factory(UserRoleFactory).create({ + assignee: user, + role, + }); + } +} diff --git a/packages/api/src/modules/user/user.subscriber.ts b/packages/api/src/modules/user/user.subscriber.ts new file mode 100644 index 0000000..2653edb --- /dev/null +++ b/packages/api/src/modules/user/user.subscriber.ts @@ -0,0 +1,66 @@ +import { + EventSubscriber, + EntitySubscriberInterface, + InsertEvent, + UpdateEvent, +} from 'typeorm'; +import { HttpStatus } from '@nestjs/common'; +import { UserEntity } from './user.entity'; +import { UserCustomException } from './user-custom.exception'; + +@EventSubscriber() +export class UserSubscriber implements EntitySubscriberInterface { + listenTo() { + return UserEntity; + } + + async beforeInsert(event: InsertEvent): Promise { + this.transformEmailAndUsernameToLowerCase(event); + this.setUsernameFromEmail(event); + await this.checkUniqueness(event); + } + + async beforeUpdate(event: UpdateEvent): Promise { + this.setUsernameFromEmail(event); + this.transformEmailAndUsernameToLowerCase(event); + await this.checkUniqueness(event); + } + + private async checkUniqueness( + event: InsertEvent | UpdateEvent, + ): Promise { + if (!event.entity?.email) return; + + const existingUser = await event.manager.findOne(UserEntity, { + where: { email: event.entity.email }, + }); + + if (existingUser && existingUser.id !== event.entity.id) { + throw new UserCustomException({ + httpStatus: HttpStatus.BAD_REQUEST, + message: + 'This email is already in use. Please contact support if this is an error.', + }); + } + } + + private transformEmailAndUsernameToLowerCase( + event: InsertEvent | UpdateEvent, + ): void { + if (event.entity?.email) { + event.entity.email = event.entity.email.toLowerCase(); + } + + if (event.entity?.username) { + event.entity.username = event.entity.username.toLowerCase(); + } + } + + private setUsernameFromEmail( + event: InsertEvent | UpdateEvent, + ): void { + if (event.entity?.email) { + event.entity.username = event.entity.email; + } + } +} diff --git a/packages/api/src/ormconfig.ts b/packages/api/src/ormconfig.ts new file mode 100644 index 0000000..d917540 --- /dev/null +++ b/packages/api/src/ormconfig.ts @@ -0,0 +1,23 @@ +/** + * !!!!! You MUST run build for changes in this !!!!!! + * !!!!! file to take effect for all CLI commands !!!!!! + */ + +import { config } from 'dotenv'; +import { DataSource } from 'typeorm'; +import { ormConfigFactory } from './config/typeorm.config'; + +// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +// !!! This config() call is for CLI ONLY !!! +// !!! DO NOT MOVE THIS TO THE ormConfigFactory() !!! +// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +config(); + +const options = { + ...ormConfigFactory(), + cli: { + migrationsDir: './dist/migrations', + }, +}; + +export default new DataSource(options); diff --git a/packages/api/src/seeding.ts b/packages/api/src/seeding.ts new file mode 100644 index 0000000..401a545 --- /dev/null +++ b/packages/api/src/seeding.ts @@ -0,0 +1,12 @@ +import { config } from 'dotenv'; +import { SeedingSource } from '@concepta/typeorm-seeding'; +import { AppSeeder } from './app.seeder'; +import { default as dataSource } from './ormconfig'; + +config(); + +export default new SeedingSource({ + dataSource, + seeders: [AppSeeder], + defaultSeeders: [AppSeeder], +}); diff --git a/packages/api/test/app.e2e-spec.ts b/packages/api/test/app.e2e-spec.ts new file mode 100644 index 0000000..50cda62 --- /dev/null +++ b/packages/api/test/app.e2e-spec.ts @@ -0,0 +1,24 @@ +import { Test, TestingModule } from '@nestjs/testing'; +import { INestApplication } from '@nestjs/common'; +import * as request from 'supertest'; +import { AppModule } from './../src/app.module'; + +describe('AppController (e2e)', () => { + let app: INestApplication; + + beforeEach(async () => { + const moduleFixture: TestingModule = await Test.createTestingModule({ + imports: [AppModule], + }).compile(); + + app = moduleFixture.createNestApplication(); + await app.init(); + }); + + it('/ (GET)', () => { + return request(app.getHttpServer()) + .get('/') + .expect(200) + .expect('Hello World!'); + }); +}); diff --git a/packages/api/test/jest-e2e.json b/packages/api/test/jest-e2e.json new file mode 100644 index 0000000..e9d912f --- /dev/null +++ b/packages/api/test/jest-e2e.json @@ -0,0 +1,9 @@ +{ + "moduleFileExtensions": ["js", "json", "ts"], + "rootDir": ".", + "testEnvironment": "node", + "testRegex": ".e2e-spec.ts$", + "transform": { + "^.+\\.(t|j)s$": "ts-jest" + } +} diff --git a/packages/api/tsconfig.build.json b/packages/api/tsconfig.build.json new file mode 100644 index 0000000..64f86c6 --- /dev/null +++ b/packages/api/tsconfig.build.json @@ -0,0 +1,4 @@ +{ + "extends": "./tsconfig.json", + "exclude": ["node_modules", "test", "dist", "**/*spec.ts"] +} diff --git a/packages/api/tsconfig.json b/packages/api/tsconfig.json new file mode 100644 index 0000000..000fbb1 --- /dev/null +++ b/packages/api/tsconfig.json @@ -0,0 +1,21 @@ +{ + "compilerOptions": { + "module": "commonjs", + "declaration": true, + "removeComments": true, + "emitDecoratorMetadata": true, + "experimentalDecorators": true, + "allowSyntheticDefaultImports": true, + "target": "ES2021", + "sourceMap": true, + "outDir": "./dist", + "baseUrl": "./", + "incremental": true, + "skipLibCheck": true, + "strictNullChecks": false, + "noImplicitAny": false, + "strictBindCallApply": false, + "forceConsistentCasingInFileNames": false, + "noFallthroughCasesInSwitch": false + } +} \ No newline at end of file diff --git a/packages/common/.eslintrc.js b/packages/common/.eslintrc.js new file mode 100644 index 0000000..f5531b7 --- /dev/null +++ b/packages/common/.eslintrc.js @@ -0,0 +1,8 @@ +module.exports = { + extends: ['@concepta/eslint-config/nest'], + parserOptions: { + project: 'tsconfig.json', + tsconfigRootDir: __dirname, + sourceType: 'module', + }, +}; diff --git a/packages/common/.gitignore b/packages/common/.gitignore new file mode 100644 index 0000000..1be4e4b --- /dev/null +++ b/packages/common/.gitignore @@ -0,0 +1,7 @@ +# compiled output +/dist +/node_modules + +# Tests +/coverage +/.nyc_output \ No newline at end of file diff --git a/packages/common/.prettierrc.js b/packages/common/.prettierrc.js new file mode 100644 index 0000000..50c8880 --- /dev/null +++ b/packages/common/.prettierrc.js @@ -0,0 +1,3 @@ +module.exports = { + ...require('@concepta/prettier-config/node'), +}; \ No newline at end of file diff --git a/packages/common/jest.config.json b/packages/common/jest.config.json new file mode 100644 index 0000000..1047062 --- /dev/null +++ b/packages/common/jest.config.json @@ -0,0 +1,9 @@ +{ + "moduleFileExtensions": ["js", "json", "ts"], + "testRegex": ".*\\.spec\\.ts$", + "testPathIgnorePatterns": ["/node_modules/", "/dist/"], + "transform": { + "^.+\\.ts$": ["ts-jest", {"tsconfig": "tsconfig.json"}] + }, + "testEnvironment": "node" +} \ No newline at end of file diff --git a/packages/common/package.json b/packages/common/package.json new file mode 100644 index 0000000..5292d37 --- /dev/null +++ b/packages/common/package.json @@ -0,0 +1,43 @@ +{ + "name": "rockets-playground-common", + "version": "0.0.1", + "description": "rockets-playground Common", + "main": "dist/index.js", + "types": "dist/index.d.ts", + "author": "Concepta Team", + "license": "proprietary", + "private": true, + "files": [ + "dist/**/*.js" + ], + "scripts": { + "prebuild": "rimraf dist tsconfig.buildinfo", + "build": "tsc", + "format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"", + "lint": "eslint \"src/**/*.ts\"", + "lint:fix": "yarn lint --fix", + "test": "jest" + }, + "dependencies": { + "@concepta/nestjs-common": "v6.0.0-alpha.0", + "rimraf": "^3.0.2" + }, + "devDependencies": { + "@concepta/eslint-config": "^1.0.0", + "@concepta/nestjs-report": "v6.0.0-alpha.0", + "@concepta/prettier-config": "^1.0.0", + "@darraghor/eslint-plugin-nestjs-typed": "^3.20.5", + "@faker-js/faker": "^8.4.1", + "@types/jest": "^29.5.12", + "@types/node": "^16.0.0", + "eslint": "^8.32.0", + "jest": "27.0.6", + "prettier": "^2.3.2", + "ts-jest": "^27.0.3", + "typescript": "^4.9.4" + }, + "peerDependencies": { + "class-transformer": "^0.5.1", + "class-validator": "^0.14.1" + } +} diff --git a/packages/common/src/index.ts b/packages/common/src/index.ts new file mode 100644 index 0000000..c0836fc --- /dev/null +++ b/packages/common/src/index.ts @@ -0,0 +1,34 @@ +// User Local +export * from './modules/user/interfaces/user-local.interface'; +export * from './modules/user/dtos/user-local.dto'; + +// User Role +export * from './modules/user-role/interfaces/user-role.interface'; +export * from './modules/user-role/dtos/user-role.dto'; + +// User Profile +export * from './modules/user-profile/interfaces/user-profile.interface'; +export * from './modules/user-profile/interfaces/user-profile-creatable.interface'; +export * from './modules/user-profile/interfaces/user-profile-updatable.interface'; +export * from './modules/user-profile/dtos/user-profile.dto'; +export * from './modules/user-profile/dtos/user-profile-create.dto'; +export * from './modules/user-profile/dtos/user-profile-update.dto'; +export * from './modules/user-profile/dtos/user-profile-paginated.dto'; + +// Store +export * from './modules/store/interfaces/store.interface'; +export * from './modules/store/interfaces/store-creatable.interface'; +export * from './modules/store/interfaces/store-updatable.interface'; +export * from './modules/store/dtos/store.dto'; +export * from './modules/store/dtos/store-create.dto'; +export * from './modules/store/dtos/store-update.dto'; +export * from './modules/store/dtos/store-paginated.dto'; + +// Product +export * from './modules/product/interfaces/product.interface'; +export * from './modules/product/interfaces/product-creatable.interface'; +export * from './modules/product/interfaces/product-updatable.interface'; +export * from './modules/product/dtos/product.dto'; +export * from './modules/product/dtos/product-create.dto'; +export * from './modules/product/dtos/product-update.dto'; +export * from './modules/product/dtos/product-paginated.dto'; diff --git a/packages/common/src/modules/product/dtos/product-create.dto.ts b/packages/common/src/modules/product/dtos/product-create.dto.ts new file mode 100644 index 0000000..0ca8c13 --- /dev/null +++ b/packages/common/src/modules/product/dtos/product-create.dto.ts @@ -0,0 +1,12 @@ +import { PartialType, PickType, IntersectionType } from '@nestjs/swagger'; +import { Exclude } from 'class-transformer'; +import { ProductCreatableInterface } from '../interfaces/product-creatable.interface'; +import { ProductDto } from './product.dto'; + +@Exclude() +export class ProductCreateDto + extends IntersectionType( + PickType(ProductDto, ['name', 'price', 'stock'] as const), + PartialType(PickType(ProductDto, ['description', 'imageUrl', 'active'])), + ) + implements ProductCreatableInterface {} diff --git a/packages/common/src/modules/product/dtos/product-paginated.dto.ts b/packages/common/src/modules/product/dtos/product-paginated.dto.ts new file mode 100644 index 0000000..24f390d --- /dev/null +++ b/packages/common/src/modules/product/dtos/product-paginated.dto.ts @@ -0,0 +1,20 @@ +import { Exclude, Expose, Type } from 'class-transformer'; +import { ApiProperty } from '@nestjs/swagger'; +import { CrudResponsePaginatedDto } from '@concepta/nestjs-crud'; +import { ProductDto } from './product.dto'; +import { ProductInterface } from '../interfaces/product.interface'; + +/** + * Product paginated DTO + */ +@Exclude() +export class ProductPaginatedDto extends CrudResponsePaginatedDto { + @Expose() + @ApiProperty({ + type: ProductDto, + isArray: true, + description: 'Array of Products', + }) + @Type(() => ProductDto) + data: ProductInterface[] = []; +} diff --git a/packages/common/src/modules/product/dtos/product-update.dto.ts b/packages/common/src/modules/product/dtos/product-update.dto.ts new file mode 100644 index 0000000..a4be05c --- /dev/null +++ b/packages/common/src/modules/product/dtos/product-update.dto.ts @@ -0,0 +1,18 @@ +import { PickType, PartialType } from '@nestjs/swagger'; +import { Exclude } from 'class-transformer'; +import { ProductUpdatableInterface } from '../interfaces/product-updatable.interface'; +import { ProductDto } from './product.dto'; + +@Exclude() +export class ProductUpdateDto + extends PartialType( + PickType(ProductDto, [ + 'name', + 'price', + 'stock', + 'active', + 'imageUrl', + 'description', + ] as const), + ) + implements ProductUpdatableInterface {} diff --git a/packages/common/src/modules/product/dtos/product.dto.ts b/packages/common/src/modules/product/dtos/product.dto.ts new file mode 100644 index 0000000..8b922ae --- /dev/null +++ b/packages/common/src/modules/product/dtos/product.dto.ts @@ -0,0 +1,90 @@ +import { Exclude, Expose, Type } from 'class-transformer'; +import { + IsBoolean, + IsInt, + IsNotEmpty, + IsNumber, + IsOptional, + IsPositive, + IsString, + IsUrl, + IsUUID, + Min, +} from 'class-validator'; +import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger'; +import { CommonEntityDto } from '@concepta/nestjs-common'; +import { ProductInterface } from '../interfaces/product.interface'; +import { StoreInterface } from '../../store/interfaces/store.interface'; +import { StoreDto } from '../../store/dtos/store.dto'; + +@Exclude() +export class ProductDto extends CommonEntityDto implements ProductInterface { + @Expose() + @ApiProperty({ + title: 'Product name', + type: 'string', + }) + @IsNotEmpty() + @IsString() + name: string; + + @Expose() + @ApiProperty({ + title: 'Product name', + type: 'string', + }) + @IsPositive() + @IsNumber() + price: number; + + @Expose() + @ApiProperty({ + title: 'Stock', + type: 'string', + }) + @Min(0) + @IsInt() + stock: number; + + @Expose() + @ApiPropertyOptional({ + title: 'Description', + type: 'string', + }) + @IsString() + @IsOptional() + description?: string; + + @Expose() + @ApiPropertyOptional({ + title: 'Image URL', + type: 'string', + }) + @IsUrl() + @IsOptional() + imageUrl?: string; + + @Expose() + @ApiPropertyOptional({ + title: 'Active', + type: 'boolean', + }) + @IsBoolean() + @IsOptional() + active?: boolean; + + // Relations + @Expose() + @ApiProperty({ type: 'string', description: 'Store ID' }) + @IsUUID() + storeId: string; + + @Expose() + @ApiPropertyOptional({ + type: () => StoreDto, + title: 'Store', + }) + @Type(() => StoreDto) + @IsOptional() + store?: StoreInterface; +} diff --git a/packages/common/src/modules/product/interfaces/product-creatable.interface.ts b/packages/common/src/modules/product/interfaces/product-creatable.interface.ts new file mode 100644 index 0000000..2ce7419 --- /dev/null +++ b/packages/common/src/modules/product/interfaces/product-creatable.interface.ts @@ -0,0 +1,5 @@ +import { ProductInterface } from './product.interface'; + +export interface ProductCreatableInterface + extends Pick, + Partial> {} diff --git a/packages/common/src/modules/product/interfaces/product-updatable.interface.ts b/packages/common/src/modules/product/interfaces/product-updatable.interface.ts new file mode 100644 index 0000000..dc7b763 --- /dev/null +++ b/packages/common/src/modules/product/interfaces/product-updatable.interface.ts @@ -0,0 +1,9 @@ +import { ProductInterface } from './product.interface'; + +export interface ProductUpdatableInterface + extends Partial< + Pick< + ProductInterface, + 'name' | 'price' | 'stock' | 'active' | 'imageUrl' | 'description' + > + > {} diff --git a/packages/common/src/modules/product/interfaces/product.interface.ts b/packages/common/src/modules/product/interfaces/product.interface.ts new file mode 100644 index 0000000..aa563b0 --- /dev/null +++ b/packages/common/src/modules/product/interfaces/product.interface.ts @@ -0,0 +1,18 @@ +import { + AuditInterface, + ReferenceIdInterface, + ReferenceId, +} from '@concepta/nestjs-common'; +import { StoreOwnableInterface } from '../../store/interfaces/store-ownable.interface'; + +export interface ProductInterface + extends ReferenceIdInterface, + AuditInterface, + StoreOwnableInterface { + name: string; + price: number; + stock: number; + description?: string; + imageUrl?: string; + active?: boolean; +} diff --git a/packages/common/src/modules/store/dtos/store-create.dto.ts b/packages/common/src/modules/store/dtos/store-create.dto.ts new file mode 100644 index 0000000..80769ca --- /dev/null +++ b/packages/common/src/modules/store/dtos/store-create.dto.ts @@ -0,0 +1,22 @@ +import { PickType, IntersectionType, PartialType } from '@nestjs/swagger'; +import { Exclude } from 'class-transformer'; +import { StoreDto } from './store.dto'; +import { StoreCreatableInterface } from '../interfaces/store-creatable.interface'; + +@Exclude() +export class StoreCreateDto + extends IntersectionType( + PickType(StoreDto, ['name', 'address', 'email', 'phoneNumber'] as const), + PartialType( + PickType(StoreDto, [ + 'description', + 'city', + 'state', + 'zipCode', + 'openingTime', + 'closingTime', + 'active', + ]), + ), + ) + implements StoreCreatableInterface {} diff --git a/packages/common/src/modules/store/dtos/store-paginated.dto.ts b/packages/common/src/modules/store/dtos/store-paginated.dto.ts new file mode 100644 index 0000000..9a40029 --- /dev/null +++ b/packages/common/src/modules/store/dtos/store-paginated.dto.ts @@ -0,0 +1,20 @@ +import { Exclude, Expose, Type } from 'class-transformer'; +import { ApiProperty } from '@nestjs/swagger'; +import { CrudResponsePaginatedDto } from '@concepta/nestjs-crud'; +import { StoreInterface } from '../interfaces/store.interface'; +import { StoreDto } from './store.dto'; + +/** + * Store paginated DTO + */ +@Exclude() +export class StorePaginatedDto extends CrudResponsePaginatedDto { + @Expose() + @ApiProperty({ + type: StoreDto, + isArray: true, + description: 'Array of Stores', + }) + @Type(() => StoreDto) + data: StoreInterface[] = []; +} diff --git a/packages/common/src/modules/store/dtos/store-update.dto.ts b/packages/common/src/modules/store/dtos/store-update.dto.ts new file mode 100644 index 0000000..b8ac96e --- /dev/null +++ b/packages/common/src/modules/store/dtos/store-update.dto.ts @@ -0,0 +1,23 @@ +import { PickType, PartialType } from '@nestjs/swagger'; +import { Exclude } from 'class-transformer'; +import { StoreDto } from './store.dto'; +import { StoreUpdatableInterface } from '../interfaces/store-updatable.interface'; + +@Exclude() +export class StoreUpdateDto + extends PartialType( + PickType(StoreDto, [ + 'name', + 'address', + 'email', + 'phoneNumber', + 'description', + 'city', + 'state', + 'zipCode', + 'openingTime', + 'closingTime', + 'active', + ] as const), + ) + implements StoreUpdatableInterface {} diff --git a/packages/common/src/modules/store/dtos/store.dto.ts b/packages/common/src/modules/store/dtos/store.dto.ts new file mode 100644 index 0000000..411420d --- /dev/null +++ b/packages/common/src/modules/store/dtos/store.dto.ts @@ -0,0 +1,128 @@ +import { Exclude, Expose, Type } from 'class-transformer'; +import { + IsBoolean, + IsNotEmpty, + IsOptional, + IsPhoneNumber, + IsString, + Matches, +} from 'class-validator'; +import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger'; +import { CommonEntityDto } from '@concepta/nestjs-common'; +import { StoreInterface } from '../interfaces/store.interface'; +import { ProductDto } from '../../product/dtos/product.dto'; +import { ProductInterface } from '../../product/interfaces/product.interface'; + +@Exclude() +export class StoreDto extends CommonEntityDto implements StoreInterface { + @Expose() + @ApiProperty({ + title: 'Store name', + type: 'string', + }) + @IsNotEmpty() + @IsString() + name: string; + + @Expose() + @ApiProperty({ + title: 'Store email', + type: 'string', + }) + @IsNotEmpty() + @IsString() + email: string; + + @Expose() + @ApiProperty({ + title: 'Store Phone Number', + type: 'string', + }) + @IsPhoneNumber() + phoneNumber: string; + + @Expose() + @ApiProperty({ + title: 'Address', + type: 'string', + }) + @IsString() + address: string; + + @Expose() + @ApiPropertyOptional({ + title: 'description', + type: 'string', + }) + @IsString() + @IsOptional() + description?: string; + + @Expose() + @ApiPropertyOptional({ + title: 'city', + type: 'string', + }) + @IsString() + @IsOptional() + city?: string; + + @Expose() + @ApiPropertyOptional({ + title: 'state', + type: 'string', + }) + @IsString() + @IsOptional() + state?: string; + + @Expose() + @ApiPropertyOptional({ + title: 'state', + type: 'string', + }) + @IsString() + @IsOptional() + zipCode?: string; + + @ApiPropertyOptional({ + title: 'openingTime', + type: 'string', + }) + @IsOptional() + @IsString() + @Matches(/^([01]\d|2[0-3]):([0-5]\d):([0-5]\d)$/, { + message: 'Invalid time format (HH:MM:SS)', + }) + openingTime?: string; + + @ApiPropertyOptional({ + title: 'closingTime', + type: 'string', + }) + @IsOptional() + @IsString() + @Matches(/^([01]\d|2[0-3]):([0-5]\d):([0-5]\d)$/, { + message: 'Invalid time format (HH:MM:SS)', + }) + closingTime?: string; + + @Expose() + @ApiPropertyOptional({ + title: 'active', + type: 'string', + }) + @IsBoolean() + @IsOptional() + active?: boolean; + + @Expose() + @ApiPropertyOptional({ + type: () => ProductDto, + title: 'Molecule Calculations', + isArray: true, + }) + @Type(() => ProductDto) + @IsOptional() + products?: ProductInterface[]; +} diff --git a/packages/common/src/modules/store/interfaces/store-creatable.interface.ts b/packages/common/src/modules/store/interfaces/store-creatable.interface.ts new file mode 100644 index 0000000..4ce0a46 --- /dev/null +++ b/packages/common/src/modules/store/interfaces/store-creatable.interface.ts @@ -0,0 +1,16 @@ +import { StoreInterface } from './store.interface'; + +export interface StoreCreatableInterface + extends Pick, + Partial< + Pick< + StoreInterface, + | 'description' + | 'city' + | 'state' + | 'zipCode' + | 'openingTime' + | 'closingTime' + | 'active' + > + > {} diff --git a/packages/common/src/modules/store/interfaces/store-ownable.interface.ts b/packages/common/src/modules/store/interfaces/store-ownable.interface.ts new file mode 100644 index 0000000..377f2be --- /dev/null +++ b/packages/common/src/modules/store/interfaces/store-ownable.interface.ts @@ -0,0 +1,7 @@ +import { ReferenceId } from '@concepta/nestjs-common'; +import { StoreInterface } from './store.interface'; + +export interface StoreOwnableInterface { + storeId: ReferenceId; + store?: StoreInterface; +} diff --git a/packages/common/src/modules/store/interfaces/store-updatable.interface.ts b/packages/common/src/modules/store/interfaces/store-updatable.interface.ts new file mode 100644 index 0000000..f8f5553 --- /dev/null +++ b/packages/common/src/modules/store/interfaces/store-updatable.interface.ts @@ -0,0 +1,19 @@ +import { StoreInterface } from './store.interface'; + +export interface StoreUpdatableInterface + extends Partial< + Pick< + StoreInterface, + | 'name' + | 'address' + | 'email' + | 'phoneNumber' + | 'description' + | 'city' + | 'state' + | 'zipCode' + | 'openingTime' + | 'closingTime' + | 'active' + > + > {} diff --git a/packages/common/src/modules/store/interfaces/store.interface.ts b/packages/common/src/modules/store/interfaces/store.interface.ts new file mode 100644 index 0000000..079790f --- /dev/null +++ b/packages/common/src/modules/store/interfaces/store.interface.ts @@ -0,0 +1,23 @@ +import { + AuditInterface, + ReferenceIdInterface, + ReferenceId, +} from '@concepta/nestjs-common'; +import { ProductInterface } from '../../product/interfaces/product.interface'; + +export interface StoreInterface + extends ReferenceIdInterface, + AuditInterface { + name: string; + email: string; + phoneNumber: string; + address: string; + description?: string; + city?: string; + state?: string; + zipCode?: string; + openingTime?: string; + closingTime?: string; + active?: boolean; + products?: ProductInterface[]; +} diff --git a/packages/common/src/modules/user-profile/dtos/user-profile-create.dto.ts b/packages/common/src/modules/user-profile/dtos/user-profile-create.dto.ts new file mode 100644 index 0000000..7d10a5d --- /dev/null +++ b/packages/common/src/modules/user-profile/dtos/user-profile-create.dto.ts @@ -0,0 +1,20 @@ +import { IntersectionType, PickType, ApiProperty } from '@nestjs/swagger'; +import { IsUUID } from 'class-validator'; +import { Exclude, Expose } from 'class-transformer'; +import { UserProfileDto } from './user-profile.dto'; +import { UserProfileCreatableInterface } from '../interfaces/user-profile-creatable.interface'; +import { UserLocalCreateDto } from '../../user/dtos/user-local-create.dto'; + +@Exclude() +export class UserProfileCreateDto + extends IntersectionType( + PickType(UserProfileDto, ['fullName', 'userId'] as const), + UserLocalCreateDto, + ) + implements UserProfileCreatableInterface +{ + @Expose() + @ApiProperty({ type: 'string', format: 'uuid', description: 'Role ID' }) + @IsUUID() + roleId: string; +} diff --git a/packages/common/src/modules/user-profile/dtos/user-profile-paginated.dto.ts b/packages/common/src/modules/user-profile/dtos/user-profile-paginated.dto.ts new file mode 100644 index 0000000..02a9c6e --- /dev/null +++ b/packages/common/src/modules/user-profile/dtos/user-profile-paginated.dto.ts @@ -0,0 +1,20 @@ +import { Exclude, Expose, Type } from 'class-transformer'; +import { ApiProperty } from '@nestjs/swagger'; +import { CrudResponsePaginatedDto } from '@concepta/nestjs-crud'; +import { UserProfileInterface } from '../interfaces/user-profile.interface'; +import { UserProfileDto } from './user-profile.dto'; + +/** + * User Profile paginated DTO + */ +@Exclude() +export class UserProfilePaginatedDto extends CrudResponsePaginatedDto { + @Expose() + @ApiProperty({ + type: UserProfileDto, + isArray: true, + description: 'Array of User Profile', + }) + @Type(() => UserProfileDto) + data: UserProfileInterface[] = []; +} diff --git a/packages/common/src/modules/user-profile/dtos/user-profile-update.dto.ts b/packages/common/src/modules/user-profile/dtos/user-profile-update.dto.ts new file mode 100644 index 0000000..ee96011 --- /dev/null +++ b/packages/common/src/modules/user-profile/dtos/user-profile-update.dto.ts @@ -0,0 +1,9 @@ +import { PickType, PartialType } from '@nestjs/swagger'; +import { Exclude } from 'class-transformer'; +import { UserProfileDto } from './user-profile.dto'; +import { UserProfileUpdatableInterface } from '../interfaces/user-profile-updatable.interface'; + +@Exclude() +export class UserProfileUpdateDto + extends PartialType(PickType(UserProfileDto, ['fullName'] as const)) + implements UserProfileUpdatableInterface {} diff --git a/packages/common/src/modules/user-profile/dtos/user-profile.dto.ts b/packages/common/src/modules/user-profile/dtos/user-profile.dto.ts new file mode 100644 index 0000000..b2c131f --- /dev/null +++ b/packages/common/src/modules/user-profile/dtos/user-profile.dto.ts @@ -0,0 +1,32 @@ +import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger'; +import { CommonEntityDto } from '@concepta/nestjs-common'; +import { IsOptional, IsString, IsUUID } from 'class-validator'; +import { Exclude, Expose, Type } from 'class-transformer'; +import { UserProfileInterface } from '../interfaces/user-profile.interface'; +import { UserLocalDto } from '../../user/dtos/user-local.dto'; +import { UserLocalInterface } from '../../user/interfaces/user-local.interface'; + +@Exclude() +export class UserProfileDto + extends CommonEntityDto + implements UserProfileInterface +{ + @Expose() + @ApiProperty({ type: 'string', description: 'Full name' }) + @IsString() + fullName: string; + + @Expose() + @ApiProperty({ type: 'string', description: 'User ID' }) + @IsUUID() + userId: string; + + @Expose() + @ApiPropertyOptional({ + type: () => UserLocalDto, + title: 'User Local Entity', + }) + @Type(() => UserLocalDto) + @IsOptional() + user?: UserLocalInterface; +} diff --git a/packages/common/src/modules/user-profile/interfaces/user-profile-creatable.interface.ts b/packages/common/src/modules/user-profile/interfaces/user-profile-creatable.interface.ts new file mode 100644 index 0000000..c958262 --- /dev/null +++ b/packages/common/src/modules/user-profile/interfaces/user-profile-creatable.interface.ts @@ -0,0 +1,9 @@ +import { ReferenceId } from '@concepta/nestjs-common'; +import { UserProfileInterface } from './user-profile.interface'; +import { UserLocalCreatableInterface } from '../../user/interfaces/user-local-creatable.interface'; + +export interface UserProfileCreatableInterface + extends Pick, + UserLocalCreatableInterface { + roleId: ReferenceId; +} diff --git a/packages/common/src/modules/user-profile/interfaces/user-profile-ownable.interface.ts b/packages/common/src/modules/user-profile/interfaces/user-profile-ownable.interface.ts new file mode 100644 index 0000000..c99c43e --- /dev/null +++ b/packages/common/src/modules/user-profile/interfaces/user-profile-ownable.interface.ts @@ -0,0 +1,7 @@ +import { ReferenceId } from '@concepta/nestjs-common'; +import { UserProfileInterface } from './user-profile.interface'; + +export interface UserProfileOwnableInterface { + userProfileId: ReferenceId; + userProfile?: UserProfileInterface; +} diff --git a/packages/common/src/modules/user-profile/interfaces/user-profile-updatable.interface.ts b/packages/common/src/modules/user-profile/interfaces/user-profile-updatable.interface.ts new file mode 100644 index 0000000..de76966 --- /dev/null +++ b/packages/common/src/modules/user-profile/interfaces/user-profile-updatable.interface.ts @@ -0,0 +1,4 @@ +import { UserProfileInterface } from './user-profile.interface'; + +export interface UserProfileUpdatableInterface + extends Partial> {} diff --git a/packages/common/src/modules/user-profile/interfaces/user-profile.interface.ts b/packages/common/src/modules/user-profile/interfaces/user-profile.interface.ts new file mode 100644 index 0000000..dd4f818 --- /dev/null +++ b/packages/common/src/modules/user-profile/interfaces/user-profile.interface.ts @@ -0,0 +1,13 @@ +import { + AuditInterface, + ReferenceIdInterface, + ReferenceId, +} from '@concepta/nestjs-common'; +import { UserLocalOwnableInterface } from '../../user/interfaces/user-local-ownable.interface'; + +export interface UserProfileInterface + extends ReferenceIdInterface, + AuditInterface, + UserLocalOwnableInterface { + fullName: string; +} diff --git a/packages/common/src/modules/user-role/dtos/user-role.dto.ts b/packages/common/src/modules/user-role/dtos/user-role.dto.ts new file mode 100644 index 0000000..049eea1 --- /dev/null +++ b/packages/common/src/modules/user-role/dtos/user-role.dto.ts @@ -0,0 +1,29 @@ +import { ApiProperty } from '@nestjs/swagger'; +import { CommonEntityDto } from '@concepta/nestjs-common'; +import { RoleDto } from '@concepta/nestjs-role'; +import { UserDto } from '@concepta/nestjs-user'; +import { RoleInterface, UserInterface } from '@concepta/nestjs-common'; +import { Exclude, Expose, Type } from 'class-transformer'; +import { ValidateNested } from 'class-validator'; +import { UserRoleInterface } from '../interfaces/user-role.interface'; + +@Exclude() +export class UserRoleDto extends CommonEntityDto implements UserRoleInterface { + @ApiProperty({ + type: () => RoleDto, + title: 'Role Entity', + }) + @Type(() => RoleDto) + @ValidateNested() + @Expose() + role: RoleInterface; + + @ApiProperty({ + type: () => UserDto, + title: 'User Associated', + }) + @Type(() => UserDto) + @Expose() + @ValidateNested() + assignee: UserInterface; +} diff --git a/packages/common/src/modules/user-role/interfaces/user-role.interface.ts b/packages/common/src/modules/user-role/interfaces/user-role.interface.ts new file mode 100644 index 0000000..bb8ff70 --- /dev/null +++ b/packages/common/src/modules/user-role/interfaces/user-role.interface.ts @@ -0,0 +1,8 @@ +import { + RoleAssignmentInterface, + RoleInterface, +} from '@concepta/nestjs-common'; + +export interface UserRoleInterface extends RoleAssignmentInterface { + role: RoleInterface; +} diff --git a/packages/common/src/modules/user/dtos/user-local-create.dto.ts b/packages/common/src/modules/user/dtos/user-local-create.dto.ts new file mode 100644 index 0000000..8be6ca5 --- /dev/null +++ b/packages/common/src/modules/user/dtos/user-local-create.dto.ts @@ -0,0 +1,13 @@ +import { Exclude } from 'class-transformer'; +import { IntersectionType, PickType } from '@nestjs/swagger'; +import { UserPasswordDto } from '@concepta/nestjs-user'; +import { UserLocalDto } from './user-local.dto'; +import { UserLocalCreatableInterface } from '../interfaces/user-local-creatable.interface'; + +@Exclude() +export class UserLocalCreateDto + extends IntersectionType( + PickType(UserLocalDto, ['email'] as const), + UserPasswordDto, + ) + implements UserLocalCreatableInterface {} diff --git a/packages/common/src/modules/user/dtos/user-local.dto.ts b/packages/common/src/modules/user/dtos/user-local.dto.ts new file mode 100644 index 0000000..1cdb8d8 --- /dev/null +++ b/packages/common/src/modules/user/dtos/user-local.dto.ts @@ -0,0 +1,31 @@ +import { UserDto } from '@concepta/nestjs-user'; +import { ApiPropertyOptional } from '@nestjs/swagger'; +import { IsOptional } from 'class-validator'; +import { Exclude, Expose, Type } from 'class-transformer'; +import { UserLocalInterface } from '../interfaces/user-local.interface'; +import { UserRoleDto } from '../../user-role/dtos/user-role.dto'; +import { UserRoleInterface } from '../../user-role/interfaces/user-role.interface'; +import { UserProfileDto } from '../../user-profile/dtos/user-profile.dto'; +import { UserProfileInterface } from '../../user-profile/interfaces/user-profile.interface'; + +@Exclude() +export class UserLocalDto extends UserDto implements UserLocalInterface { + @ApiPropertyOptional({ + type: () => [UserRoleDto], + isArray: true, + title: 'User Roles', + }) + @Type(() => UserRoleDto) + @Expose() + @IsOptional() + userRoles?: UserRoleInterface[]; + + @ApiPropertyOptional({ + type: () => UserProfileDto, + title: 'User Profile', + }) + @Type(() => UserProfileDto) + @Expose() + @IsOptional() + userProfile?: UserProfileInterface; +} diff --git a/packages/common/src/modules/user/interfaces/user-local-creatable.interface.ts b/packages/common/src/modules/user/interfaces/user-local-creatable.interface.ts new file mode 100644 index 0000000..161918d --- /dev/null +++ b/packages/common/src/modules/user/interfaces/user-local-creatable.interface.ts @@ -0,0 +1,4 @@ +import { UserCreatableInterface } from '@concepta/nestjs-common'; + +export interface UserLocalCreatableInterface + extends Pick {} diff --git a/packages/common/src/modules/user/interfaces/user-local-ownable.interface.ts b/packages/common/src/modules/user/interfaces/user-local-ownable.interface.ts new file mode 100644 index 0000000..1a1d39f --- /dev/null +++ b/packages/common/src/modules/user/interfaces/user-local-ownable.interface.ts @@ -0,0 +1,7 @@ +import { ReferenceId } from '@concepta/nestjs-common'; +import { UserLocalInterface } from './user-local.interface'; + +export interface UserLocalOwnableInterface { + userId: ReferenceId; + user?: UserLocalInterface; +} diff --git a/packages/common/src/modules/user/interfaces/user-local.interface.ts b/packages/common/src/modules/user/interfaces/user-local.interface.ts new file mode 100644 index 0000000..674045b --- /dev/null +++ b/packages/common/src/modules/user/interfaces/user-local.interface.ts @@ -0,0 +1,8 @@ +import { UserInterface } from '@concepta/nestjs-common'; +import { UserRoleInterface } from '../../user-role/interfaces/user-role.interface'; +import { UserProfileInterface } from '../../user-profile/interfaces/user-profile.interface'; + +export interface UserLocalInterface extends UserInterface { + userRoles?: UserRoleInterface[]; + userProfile?: UserProfileInterface; +} diff --git a/packages/common/tsconfig.build.json b/packages/common/tsconfig.build.json new file mode 100644 index 0000000..64f86c6 --- /dev/null +++ b/packages/common/tsconfig.build.json @@ -0,0 +1,4 @@ +{ + "extends": "./tsconfig.json", + "exclude": ["node_modules", "test", "dist", "**/*spec.ts"] +} diff --git a/packages/common/tsconfig.json b/packages/common/tsconfig.json new file mode 100644 index 0000000..1db3100 --- /dev/null +++ b/packages/common/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "declaration": true, + "removeComments": true, + "emitDecoratorMetadata": true, + "experimentalDecorators": true, + "allowSyntheticDefaultImports": true, + "target": "ES2021", + "sourceMap": true, + "outDir": "./dist", + "baseUrl": "./", + "skipLibCheck": true, + "typeRoots": [ + "./node_modules/@types", + "../../node_modules/@types" + ], + "rootDir": "./src" + }, + "include": [ + "src/**/*.ts" + ] +} \ No newline at end of file diff --git a/public.json b/public.json new file mode 100644 index 0000000..2849eb6 --- /dev/null +++ b/public.json @@ -0,0 +1,11 @@ +{ + "Version": "2012-10-17", + "Statement": [ + { + "Effect": "Allow", + "Principal": "*", + "Action": "s3:GetObject", + "Resource": "arn:aws:s3:::bucketeer-7f05b748-e29e-417e-9458-3de839fb7f21/public/*" + } + ] +} \ No newline at end of file diff --git a/yarn.lock b/yarn.lock new file mode 100644 index 0000000..e693360 --- /dev/null +++ b/yarn.lock @@ -0,0 +1,12465 @@ +# This file is generated by running "yarn install" inside your project. +# Manual changes might be lost - proceed with caution! + +__metadata: + version: 8 + cacheKey: 10c0 + +"@ampproject/remapping@npm:^2.2.0": + version: 2.3.0 + resolution: "@ampproject/remapping@npm:2.3.0" + dependencies: + "@jridgewell/gen-mapping": "npm:^0.3.5" + "@jridgewell/trace-mapping": "npm:^0.3.24" + checksum: 10c0/81d63cca5443e0f0c72ae18b544cc28c7c0ec2cea46e7cb888bb0e0f411a1191d0d6b7af798d54e30777d8d1488b2ec0732aac2be342d3d7d3ffd271c6f489ed + languageName: node + linkType: hard + +"@angular-devkit/core@npm:17.3.11": + version: 17.3.11 + resolution: "@angular-devkit/core@npm:17.3.11" + dependencies: + ajv: "npm:8.12.0" + ajv-formats: "npm:2.1.1" + jsonc-parser: "npm:3.2.1" + picomatch: "npm:4.0.1" + rxjs: "npm:7.8.1" + source-map: "npm:0.7.4" + peerDependencies: + chokidar: ^3.5.2 + peerDependenciesMeta: + chokidar: + optional: true + checksum: 10c0/c6d3ed77e98568d3f2126e5682631ceec32cdc6bb1c642bf0c8bcbd5a71ee521941e6ff981ec104703e668cfb886043e0bd239442645bef6151d265799128521 + languageName: node + linkType: hard + +"@angular-devkit/schematics-cli@npm:17.3.11": + version: 17.3.11 + resolution: "@angular-devkit/schematics-cli@npm:17.3.11" + dependencies: + "@angular-devkit/core": "npm:17.3.11" + "@angular-devkit/schematics": "npm:17.3.11" + ansi-colors: "npm:4.1.3" + inquirer: "npm:9.2.15" + symbol-observable: "npm:4.0.0" + yargs-parser: "npm:21.1.1" + bin: + schematics: bin/schematics.js + checksum: 10c0/042c8a740f20ff4e5675a49d74551e936311b82a6f22d9d3eaefe032dc4ac61ad679004524bf4a69fbf394c9d1eb562d20cc5abd5571131cd6e8bbbe3f3bb768 + languageName: node + linkType: hard + +"@angular-devkit/schematics@npm:17.3.11": + version: 17.3.11 + resolution: "@angular-devkit/schematics@npm:17.3.11" + dependencies: + "@angular-devkit/core": "npm:17.3.11" + jsonc-parser: "npm:3.2.1" + magic-string: "npm:0.30.8" + ora: "npm:5.4.1" + rxjs: "npm:7.8.1" + checksum: 10c0/981c674e724408294faa271492e49719c5854aeadfab454c0bdbe761d2ffb1e611881a236f520f6c712fe11bac7283d1edb267d8bdc2ff1b1ddc57dcd99bfaf4 + languageName: node + linkType: hard + +"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.16.7, @babel/code-frame@npm:^7.25.9, @babel/code-frame@npm:^7.26.0, @babel/code-frame@npm:^7.26.2": + version: 7.26.2 + resolution: "@babel/code-frame@npm:7.26.2" + dependencies: + "@babel/helper-validator-identifier": "npm:^7.25.9" + js-tokens: "npm:^4.0.0" + picocolors: "npm:^1.0.0" + checksum: 10c0/7d79621a6849183c415486af99b1a20b84737e8c11cd55b6544f688c51ce1fd710e6d869c3dd21232023da272a79b91efb3e83b5bc2dc65c1187c5fcd1b72ea8 + languageName: node + linkType: hard + +"@babel/compat-data@npm:^7.25.9": + version: 7.26.3 + resolution: "@babel/compat-data@npm:7.26.3" + checksum: 10c0/d63e71845c34dfad8d7ff8c15b562e620dbf60e68e3abfa35681d24d612594e8e5ec9790d831a287ecd79ce00f48e7ffddc85c5ce94af7242d45917b9c1a5f90 + languageName: node + linkType: hard + +"@babel/core@npm:^7.1.0, @babel/core@npm:^7.12.3, @babel/core@npm:^7.7.2, @babel/core@npm:^7.8.0": + version: 7.26.0 + resolution: "@babel/core@npm:7.26.0" + dependencies: + "@ampproject/remapping": "npm:^2.2.0" + "@babel/code-frame": "npm:^7.26.0" + "@babel/generator": "npm:^7.26.0" + "@babel/helper-compilation-targets": "npm:^7.25.9" + "@babel/helper-module-transforms": "npm:^7.26.0" + "@babel/helpers": "npm:^7.26.0" + "@babel/parser": "npm:^7.26.0" + "@babel/template": "npm:^7.25.9" + "@babel/traverse": "npm:^7.25.9" + "@babel/types": "npm:^7.26.0" + convert-source-map: "npm:^2.0.0" + debug: "npm:^4.1.0" + gensync: "npm:^1.0.0-beta.2" + json5: "npm:^2.2.3" + semver: "npm:^6.3.1" + checksum: 10c0/91de73a7ff5c4049fbc747930aa039300e4d2670c2a91f5aa622f1b4868600fc89b01b6278385fbcd46f9574186fa3d9b376a9e7538e50f8d118ec13cfbcb63e + languageName: node + linkType: hard + +"@babel/generator@npm:^7.26.0, @babel/generator@npm:^7.26.3, @babel/generator@npm:^7.7.2": + version: 7.26.3 + resolution: "@babel/generator@npm:7.26.3" + dependencies: + "@babel/parser": "npm:^7.26.3" + "@babel/types": "npm:^7.26.3" + "@jridgewell/gen-mapping": "npm:^0.3.5" + "@jridgewell/trace-mapping": "npm:^0.3.25" + jsesc: "npm:^3.0.2" + checksum: 10c0/54f260558e3e4ec8942da3cde607c35349bb983c3a7c5121243f96893fba3e8cd62e1f1773b2051f936f8c8a10987b758d5c7d76dbf2784e95bb63ab4843fa00 + languageName: node + linkType: hard + +"@babel/helper-compilation-targets@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-compilation-targets@npm:7.25.9" + dependencies: + "@babel/compat-data": "npm:^7.25.9" + "@babel/helper-validator-option": "npm:^7.25.9" + browserslist: "npm:^4.24.0" + lru-cache: "npm:^5.1.1" + semver: "npm:^6.3.1" + checksum: 10c0/a6b26a1e4222e69ef8e62ee19374308f060b007828bc11c65025ecc9e814aba21ff2175d6d3f8bf53c863edd728ee8f94ba7870f8f90a37d39552ad9933a8aaa + languageName: node + linkType: hard + +"@babel/helper-module-imports@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-module-imports@npm:7.25.9" + dependencies: + "@babel/traverse": "npm:^7.25.9" + "@babel/types": "npm:^7.25.9" + checksum: 10c0/078d3c2b45d1f97ffe6bb47f61961be4785d2342a4156d8b42c92ee4e1b7b9e365655dd6cb25329e8fe1a675c91eeac7e3d04f0c518b67e417e29d6e27b6aa70 + languageName: node + linkType: hard + +"@babel/helper-module-transforms@npm:^7.26.0": + version: 7.26.0 + resolution: "@babel/helper-module-transforms@npm:7.26.0" + dependencies: + "@babel/helper-module-imports": "npm:^7.25.9" + "@babel/helper-validator-identifier": "npm:^7.25.9" + "@babel/traverse": "npm:^7.25.9" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 10c0/ee111b68a5933481d76633dad9cdab30c41df4479f0e5e1cc4756dc9447c1afd2c9473b5ba006362e35b17f4ebddd5fca090233bef8dfc84dca9d9127e56ec3a + languageName: node + linkType: hard + +"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.25.9, @babel/helper-plugin-utils@npm:^7.8.0": + version: 7.25.9 + resolution: "@babel/helper-plugin-utils@npm:7.25.9" + checksum: 10c0/483066a1ba36ff16c0116cd24f93de05de746a603a777cd695ac7a1b034928a65a4ecb35f255761ca56626435d7abdb73219eba196f9aa83b6c3c3169325599d + languageName: node + linkType: hard + +"@babel/helper-string-parser@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-string-parser@npm:7.25.9" + checksum: 10c0/7244b45d8e65f6b4338a6a68a8556f2cb161b782343e97281a5f2b9b93e420cad0d9f5773a59d79f61d0c448913d06f6a2358a87f2e203cf112e3c5b53522ee6 + languageName: node + linkType: hard + +"@babel/helper-validator-identifier@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-validator-identifier@npm:7.25.9" + checksum: 10c0/4fc6f830177b7b7e887ad3277ddb3b91d81e6c4a24151540d9d1023e8dc6b1c0505f0f0628ae653601eb4388a8db45c1c14b2c07a9173837aef7e4116456259d + languageName: node + linkType: hard + +"@babel/helper-validator-option@npm:^7.25.9": + version: 7.25.9 + resolution: "@babel/helper-validator-option@npm:7.25.9" + checksum: 10c0/27fb195d14c7dcb07f14e58fe77c44eea19a6a40a74472ec05c441478fa0bb49fa1c32b2d64be7a38870ee48ef6601bdebe98d512f0253aea0b39756c4014f3e + languageName: node + linkType: hard + +"@babel/helpers@npm:^7.26.0": + version: 7.26.0 + resolution: "@babel/helpers@npm:7.26.0" + dependencies: + "@babel/template": "npm:^7.25.9" + "@babel/types": "npm:^7.26.0" + checksum: 10c0/343333cced6946fe46617690a1d0789346960910225ce359021a88a60a65bc0d791f0c5d240c0ed46cf8cc63b5fd7df52734ff14e43b9c32feae2b61b1647097 + languageName: node + linkType: hard + +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.25.9, @babel/parser@npm:^7.26.0, @babel/parser@npm:^7.26.3, @babel/parser@npm:^7.6.0, @babel/parser@npm:^7.9.6": + version: 7.26.3 + resolution: "@babel/parser@npm:7.26.3" + dependencies: + "@babel/types": "npm:^7.26.3" + bin: + parser: ./bin/babel-parser.js + checksum: 10c0/48f736374e61cfd10ddbf7b80678514ae1f16d0e88bc793d2b505d73d9b987ea786fc8c2f7ee8f8b8c467df062030eb07fd0eb2168f0f541ca1f542775852cad + languageName: node + linkType: hard + +"@babel/plugin-syntax-async-generators@npm:^7.8.4": + version: 7.8.4 + resolution: "@babel/plugin-syntax-async-generators@npm:7.8.4" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/d13efb282838481348c71073b6be6245b35d4f2f964a8f71e4174f235009f929ef7613df25f8d2338e2d3e44bc4265a9f8638c6aaa136d7a61fe95985f9725c8 + languageName: node + linkType: hard + +"@babel/plugin-syntax-bigint@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-bigint@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/686891b81af2bc74c39013655da368a480f17dd237bf9fbc32048e5865cb706d5a8f65438030da535b332b1d6b22feba336da8fa931f663b6b34e13147d12dde + languageName: node + linkType: hard + +"@babel/plugin-syntax-class-properties@npm:^7.12.13": + version: 7.12.13 + resolution: "@babel/plugin-syntax-class-properties@npm:7.12.13" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.12.13" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/95168fa186416195280b1264fb18afcdcdcea780b3515537b766cb90de6ce042d42dd6a204a39002f794ae5845b02afb0fd4861a3308a861204a55e68310a120 + languageName: node + linkType: hard + +"@babel/plugin-syntax-class-static-block@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-class-static-block@npm:7.14.5" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.14.5" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/4464bf9115f4a2d02ce1454411baf9cfb665af1da53709c5c56953e5e2913745b0fcce82982a00463d6facbdd93445c691024e310b91431a1e2f024b158f6371 + languageName: node + linkType: hard + +"@babel/plugin-syntax-import-attributes@npm:^7.24.7": + version: 7.26.0 + resolution: "@babel/plugin-syntax-import-attributes@npm:7.26.0" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.25.9" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/e594c185b12bfe0bbe7ca78dfeebe870e6d569a12128cac86f3164a075fe0ff70e25ddbd97fd0782906b91f65560c9dc6957716b7b4a68aba2516c9b7455e352 + languageName: node + linkType: hard + +"@babel/plugin-syntax-import-meta@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-syntax-import-meta@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.10.4" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/0b08b5e4c3128523d8e346f8cfc86824f0da2697b1be12d71af50a31aff7a56ceb873ed28779121051475010c28d6146a6bfea8518b150b71eeb4e46190172ee + languageName: node + linkType: hard + +"@babel/plugin-syntax-json-strings@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-json-strings@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/e98f31b2ec406c57757d115aac81d0336e8434101c224edd9a5c93cefa53faf63eacc69f3138960c8b25401315af03df37f68d316c151c4b933136716ed6906e + languageName: node + linkType: hard + +"@babel/plugin-syntax-logical-assignment-operators@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-syntax-logical-assignment-operators@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.10.4" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/2594cfbe29411ad5bc2ad4058de7b2f6a8c5b86eda525a993959438615479e59c012c14aec979e538d60a584a1a799b60d1b8942c3b18468cb9d99b8fd34cd0b + languageName: node + linkType: hard + +"@babel/plugin-syntax-nullish-coalescing-operator@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-nullish-coalescing-operator@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/2024fbb1162899094cfc81152449b12bd0cc7053c6d4bda8ac2852545c87d0a851b1b72ed9560673cbf3ef6248257262c3c04aabf73117215c1b9cc7dd2542ce + languageName: node + linkType: hard + +"@babel/plugin-syntax-numeric-separator@npm:^7.10.4": + version: 7.10.4 + resolution: "@babel/plugin-syntax-numeric-separator@npm:7.10.4" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.10.4" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/c55a82b3113480942c6aa2fcbe976ff9caa74b7b1109ff4369641dfbc88d1da348aceb3c31b6ed311c84d1e7c479440b961906c735d0ab494f688bf2fd5b9bb9 + languageName: node + linkType: hard + +"@babel/plugin-syntax-object-rest-spread@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-object-rest-spread@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/ee1eab52ea6437e3101a0a7018b0da698545230015fc8ab129d292980ec6dff94d265e9e90070e8ae5fed42f08f1622c14c94552c77bcac784b37f503a82ff26 + languageName: node + linkType: hard + +"@babel/plugin-syntax-optional-catch-binding@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-optional-catch-binding@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/27e2493ab67a8ea6d693af1287f7e9acec206d1213ff107a928e85e173741e1d594196f99fec50e9dde404b09164f39dec5864c767212154ffe1caa6af0bc5af + languageName: node + linkType: hard + +"@babel/plugin-syntax-optional-chaining@npm:^7.8.3": + version: 7.8.3 + resolution: "@babel/plugin-syntax-optional-chaining@npm:7.8.3" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.8.0" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/46edddf2faa6ebf94147b8e8540dfc60a5ab718e2de4d01b2c0bdf250a4d642c2bd47cbcbb739febcb2bf75514dbcefad3c52208787994b8d0f8822490f55e81 + languageName: node + linkType: hard + +"@babel/plugin-syntax-private-property-in-object@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-private-property-in-object@npm:7.14.5" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.14.5" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/69822772561706c87f0a65bc92d0772cea74d6bc0911537904a676d5ff496a6d3ac4e05a166d8125fce4a16605bace141afc3611074e170a994e66e5397787f3 + languageName: node + linkType: hard + +"@babel/plugin-syntax-top-level-await@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-top-level-await@npm:7.14.5" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.14.5" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/14bf6e65d5bc1231ffa9def5f0ef30b19b51c218fcecaa78cd1bdf7939dfdf23f90336080b7f5196916368e399934ce5d581492d8292b46a2fb569d8b2da106f + languageName: node + linkType: hard + +"@babel/plugin-syntax-typescript@npm:^7.7.2": + version: 7.25.9 + resolution: "@babel/plugin-syntax-typescript@npm:7.25.9" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.25.9" + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 10c0/5192ebe11bd46aea68b7a60fd9555465c59af7e279e71126788e59121b86e00b505816685ab4782abe159232b0f73854e804b54449820b0d950b397ee158caa2 + languageName: node + linkType: hard + +"@babel/runtime@npm:^7.23.9": + version: 7.26.0 + resolution: "@babel/runtime@npm:7.26.0" + dependencies: + regenerator-runtime: "npm:^0.14.0" + checksum: 10c0/12c01357e0345f89f4f7e8c0e81921f2a3e3e101f06e8eaa18a382b517376520cd2fa8c237726eb094dab25532855df28a7baaf1c26342b52782f6936b07c287 + languageName: node + linkType: hard + +"@babel/template@npm:^7.25.9, @babel/template@npm:^7.3.3": + version: 7.25.9 + resolution: "@babel/template@npm:7.25.9" + dependencies: + "@babel/code-frame": "npm:^7.25.9" + "@babel/parser": "npm:^7.25.9" + "@babel/types": "npm:^7.25.9" + checksum: 10c0/ebe677273f96a36c92cc15b7aa7b11cc8bc8a3bb7a01d55b2125baca8f19cae94ff3ce15f1b1880fb8437f3a690d9f89d4e91f16fc1dc4d3eb66226d128983ab + languageName: node + linkType: hard + +"@babel/traverse@npm:^7.25.9, @babel/traverse@npm:^7.7.2": + version: 7.26.4 + resolution: "@babel/traverse@npm:7.26.4" + dependencies: + "@babel/code-frame": "npm:^7.26.2" + "@babel/generator": "npm:^7.26.3" + "@babel/parser": "npm:^7.26.3" + "@babel/template": "npm:^7.25.9" + "@babel/types": "npm:^7.26.3" + debug: "npm:^4.3.1" + globals: "npm:^11.1.0" + checksum: 10c0/cf25d0eda9505daa0f0832ad786b9e28c9d967e823aaf7fbe425250ab198c656085495aa6bed678b27929e095c84eea9fd778b851a31803da94c9bc4bf4eaef7 + languageName: node + linkType: hard + +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.25.9, @babel/types@npm:^7.26.0, @babel/types@npm:^7.26.3, @babel/types@npm:^7.3.3, @babel/types@npm:^7.6.1, @babel/types@npm:^7.9.6": + version: 7.26.3 + resolution: "@babel/types@npm:7.26.3" + dependencies: + "@babel/helper-string-parser": "npm:^7.25.9" + "@babel/helper-validator-identifier": "npm:^7.25.9" + checksum: 10c0/966c5242c5e55c8704bf7a7418e7be2703a0afa4d19a8480999d5a4ef13d095dd60686615fe5983cb7593b4b06ba3a7de8d6ca501c1d78bdd233a10d90be787b + languageName: node + linkType: hard + +"@bcoe/v8-coverage@npm:^0.2.3": + version: 0.2.3 + resolution: "@bcoe/v8-coverage@npm:0.2.3" + checksum: 10c0/6b80ae4cb3db53f486da2dc63b6e190a74c8c3cca16bb2733f234a0b6a9382b09b146488ae08e2b22cf00f6c83e20f3e040a2f7894f05c045c946d6a090b1d52 + languageName: node + linkType: hard + +"@colors/colors@npm:1.5.0": + version: 1.5.0 + resolution: "@colors/colors@npm:1.5.0" + checksum: 10c0/eb42729851adca56d19a08e48d5a1e95efd2a32c55ae0323de8119052be0510d4b7a1611f2abcbf28c044a6c11e6b7d38f99fccdad7429300c37a8ea5fb95b44 + languageName: node + linkType: hard + +"@concepta/eslint-config@npm:1.1.4": + version: 1.1.4 + resolution: "@concepta/eslint-config@npm:1.1.4" + dependencies: + "@typescript-eslint/eslint-plugin": "npm:^6.7.4" + "@typescript-eslint/parser": "npm:^5.49.0" + eslint-config-prettier: "npm:^8.3.0" + eslint-plugin-prettier: "npm:^4.2.1" + peerDependencies: + "@darraghor/eslint-plugin-nestjs-typed": ^3.20.5 + eslint: ^8.32.0 + peerDependenciesMeta: + "@darraghor/eslint-plugin-nestjs-typed": + optional: true + checksum: 10c0/0a7598e966cfa2b18e42ea3c392689a2f1e43a703c810f29327e7c6acf6a1f477107ec79b03b700d7935aa5ad61d57bbc6e92843d639184364c44151a0f946eb + languageName: node + linkType: hard + +"@concepta/eslint-config@npm:^1.0.0": + version: 1.1.5 + resolution: "@concepta/eslint-config@npm:1.1.5" + dependencies: + "@typescript-eslint/eslint-plugin": "npm:7.17.0" + "@typescript-eslint/parser": "npm:^7.18.0" + eslint-config-prettier: "npm:^8.3.0" + eslint-plugin-prettier: "npm:^4.2.1" + peerDependencies: + "@darraghor/eslint-plugin-nestjs-typed": ^3.20.5 + eslint: ^8.32.0 + peerDependenciesMeta: + "@darraghor/eslint-plugin-nestjs-typed": + optional: true + checksum: 10c0/2de1f987c0ae266eb17d6bb24725ba751ca17c2daa9c59db5d0b1cc8642bd5624ba24cfce5a7a0fb2b83a074f421b5122935aed472ff990b885c3d681c9764e6 + languageName: node + linkType: hard + +"@concepta/nestjs-access-control@npm:^6.0.0-alpha.0, @concepta/nestjs-access-control@npm:^v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-access-control@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + "@nestjs/core": "npm:^10.4.1" + accesscontrol: "npm:^2.2.1" + rxjs: "npm:^7.8.1" + checksum: 10c0/8f1d3d1ffa7249f8972dfe927a1acba54483435377fc2ae29edf17b25cc121329d33def41636499841833c1422411e6e858c7b89ab22256059bf9c7645de3a33 + languageName: node + linkType: hard + +"@concepta/nestjs-auth-jwt@npm:^v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-auth-jwt@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-authentication": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-exception": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-jwt": "npm:^6.0.0-alpha.0" + "@concepta/typeorm-common": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + "@nestjs/core": "npm:^10.4.1" + peerDependencies: + class-validator: "*" + rxjs: ^7.1.0 + typeorm: ^0.3.0 + checksum: 10c0/d70c4a4f591c42aea905b561b4d43c3e46abe13b34735a3c3ef5ac2b415aade680b8906dbaf3f1158c7b270d9de177a08bb09d4cf1603a1c95765c829af588bb + languageName: node + linkType: hard + +"@concepta/nestjs-auth-local@npm:^v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-auth-local@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-authentication": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-exception": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-password": "npm:^6.0.0-alpha.0" + "@concepta/typeorm-common": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + "@nestjs/core": "npm:^10.4.1" + "@nestjs/swagger": "npm:^7.4.0" + passport-local: "npm:^1.0.0" + peerDependencies: + class-transformer: "*" + class-validator: "*" + rxjs: ^7.1.0 + checksum: 10c0/01caa306032ef804a52240d31002f4fe8b4cacc7303d16c2d7e0bf3e9a521b8cd8b5b7530e5d8de9f17681e7f5eeff9bed2dfcadfcbeb21ea03afb860e343664 + languageName: node + linkType: hard + +"@concepta/nestjs-auth-recovery@npm:^v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-auth-recovery@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-exception": "npm:^6.0.0-alpha.0" + "@concepta/typeorm-common": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + "@nestjs/core": "npm:^10.4.1" + "@nestjs/swagger": "npm:^7.4.0" + peerDependencies: + class-transformer: "*" + class-validator: "*" + rxjs: ^7.1.0 + typeorm: ^0.3.0 + checksum: 10c0/70a050081b3b079e5a63a0e2c10b9efd23079dbbcc361e6801ae510df0964706ae7ce8a4b20efa5dd53454536fdaa0692732a1adeaaf12451a1e5651078c1cc1 + languageName: node + linkType: hard + +"@concepta/nestjs-auth-refresh@npm:^v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-auth-refresh@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-authentication": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-exception": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-jwt": "npm:^6.0.0-alpha.0" + "@concepta/typeorm-common": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + "@nestjs/core": "npm:^10.4.1" + "@nestjs/swagger": "npm:^7.4.0" + peerDependencies: + class-transformer: "*" + class-validator: "*" + rxjs: ^7.1.0 + checksum: 10c0/59a27000c744845b8f12c0a45ae84340a21a8492255916b9cd200721da47f97927e2584a23ea090310c20b2f92cd0c8cc3bfd857879e3de10ce1c91690b1735e + languageName: node + linkType: hard + +"@concepta/nestjs-authentication@npm:^6.0.0-alpha.0, @concepta/nestjs-authentication@npm:^v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-authentication@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-exception": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-jwt": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + "@nestjs/core": "npm:^10.4.1" + "@nestjs/passport": "npm:^10.0.3" + "@nestjs/swagger": "npm:^7.4.0" + passport: "npm:^0.7.0" + passport-strategy: "npm:^1.0.0" + peerDependencies: + class-transformer: "*" + class-validator: "*" + checksum: 10c0/5eb78114e8042b0d3c270a980595ccc15eb7fa90ef2c8d8c8883e693a2945a5a0bf3f9094be09ea0b7b8ca956deb35a3825a0405b18f83868651c1bb3f498773 + languageName: node + linkType: hard + +"@concepta/nestjs-common@npm:^6.0.0-alpha.0, @concepta/nestjs-common@npm:v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-common@npm:6.0.0-alpha.0" + dependencies: + "@nestjs/common": "npm:^10.4.1" + "@nestjs/swagger": "npm:^7.4.0" + peerDependencies: + class-transformer: "*" + class-validator: "*" + checksum: 10c0/1a9f4f96fee1a9574733fda7e9d658156bd6179594ac6dbc5558800f6e5e382ffa5ed49ca3c496291f01e4aa4923082199047d2f319530c24c22305d03200030 + languageName: node + linkType: hard + +"@concepta/nestjs-crud@npm:^6.0.0-alpha.0, @concepta/nestjs-crud@npm:^v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-crud@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-exception": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-typeorm-ext": "npm:^6.0.0-alpha.0" + "@concepta/typeorm-common": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + "@nestjs/core": "npm:^10.4.1" + "@nestjs/swagger": "npm:^7.4.0" + "@nestjsx/crud": "npm:^5.0.0-alpha.3" + "@nestjsx/crud-request": "npm:^5.0.0-alpha.3" + "@nestjsx/crud-typeorm": "npm:^5.0.0-alpha.3" + peerDependencies: + class-transformer: "*" + class-validator: "*" + rxjs: ^7.1.0 + typeorm: ^0.3.0 + checksum: 10c0/a153f55f6d9620239eff9064a346e5ec0cee1f20af1ff6388c939ee997a137ca7d0dbc641a294756082571da21c7ee3d9a107c8004d1dd4a9dd8acba8af69f8d + languageName: node + linkType: hard + +"@concepta/nestjs-email@npm:v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-email@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-exception": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + "@nestjs/core": "npm:^10.4.1" + checksum: 10c0/2592c59fcd6fb80fd392be0e3e7589b4be1d10ed5a78b7987df77d1fc10318b1e4b1391e49342f0bdc712f972f879d97f36d98a7632fe2e458fe6f8bf619cf8e + languageName: node + linkType: hard + +"@concepta/nestjs-event@npm:^6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-event@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-exception": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + "@nestjs/core": "npm:^10.4.1" + eventemitter2: "npm:^6.4.9" + checksum: 10c0/8f7bc305d103100995eded27a240ba13d4689b98d96562ced1d5d26274925836fcac76ac44d4d85b234efd726d231b16405aa0a2cebf84c0cf7a41af9a69fb7e + languageName: node + linkType: hard + +"@concepta/nestjs-exception@npm:^6.0.0-alpha.0, @concepta/nestjs-exception@npm:^v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-exception@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/swagger": "npm:^7.4.0" + checksum: 10c0/5db10f71718b2a9225b60b27c7e4d0f6841277e26206c23d33dad465757068918b58c2c373edc118abd97ceeeb1eed61bf23513384f04f8688039f825e14ac4a + languageName: node + linkType: hard + +"@concepta/nestjs-file@npm:^6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-file@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-exception": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-typeorm-ext": "npm:^6.0.0-alpha.0" + "@concepta/typeorm-common": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + "@nestjs/swagger": "npm:^7.4.0" + peerDependencies: + class-transformer: "*" + class-validator: "*" + rxjs: ^7.1.0 + typeorm: ^0.3.0 + checksum: 10c0/74ceb2377f5815722a8a23a954fcb568a52cd64234740a9954385674a5d52b56ac2f2f5409d899a0d38289ff58827462a73e8ce8e367be902a0f418d8ad2d8ca + languageName: node + linkType: hard + +"@concepta/nestjs-jwt@npm:^6.0.0-alpha.0, @concepta/nestjs-jwt@npm:^v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-jwt@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-exception": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + "@nestjs/jwt": "npm:^10.2.0" + jsonwebtoken: "npm:^9.0.2" + passport-jwt: "npm:^4.0.1" + passport-strategy: "npm:^1.0.0" + checksum: 10c0/e3047fd10d63f4d7d384e2e0b63d5191b4bbcd361787682eac1a9d9dd9e69b346d0a6e2c8053d51ecd4bb1c883a0bcef3d6ed99fc8c0f09d0005d0c6eb84583c + languageName: node + linkType: hard + +"@concepta/nestjs-logger-sentry@npm:v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-logger-sentry@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-exception": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-logger": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + "@nestjs/core": "npm:^10.4.1" + "@sentry/node": "npm:^8.26.0" + peerDependencies: + class-validator: "*" + rxjs: ^7.1.0 + checksum: 10c0/5bb73f04a4770b76a50e4151e7b62c6956db79c158b2f6fb55c9a624629186959ab4bfcc2e177b6e1f8a6f7759825080e44af7c5c5449bd3cc73c41756adc72d + languageName: node + linkType: hard + +"@concepta/nestjs-logger@npm:^6.0.0-alpha.0, @concepta/nestjs-logger@npm:v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-logger@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + "@nestjs/core": "npm:^10.4.1" + fastify: "npm:^3.29.5" + peerDependencies: + class-validator: "*" + rxjs: ^7.1.0 + checksum: 10c0/ffa4b3a77fa349853acc456953323c3b95eb75d4a743378252077f7c4c1e43332e1c64c41a9c96128a44f64059cc7f243fa0298fa0361b52ef6b22a4cb10b3af + languageName: node + linkType: hard + +"@concepta/nestjs-otp@npm:^v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-otp@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-exception": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-typeorm-ext": "npm:^6.0.0-alpha.0" + "@concepta/typeorm-common": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + ms: "npm:^2.1.3" + peerDependencies: + class-transformer: "*" + class-validator: "*" + typeorm: ^0.3.0 + checksum: 10c0/d32d7dd88496e86c09c1b504d7774115ab3b1ded1a6cbe6461fb8fe0d03543ae42cdf6f2f09c31234085c1b068363ddb7330300e7b3a23b221d7c29ed36cb244 + languageName: node + linkType: hard + +"@concepta/nestjs-password@npm:^6.0.0-alpha.0, @concepta/nestjs-password@npm:^v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-password@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-exception": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + "@nestjs/core": "npm:^10.4.1" + "@types/zxcvbn": "npm:^4.4.4" + bcrypt: "npm:^5.1.1" + zxcvbn: "npm:^4.4.2" + checksum: 10c0/2587bfad6d19a1cf0bdb2f44e096a4201a17378e9a0c963ee1b7668df523a419cc0a1c13de3a226eb3239097e83bf6e7c2c8226a0d0c48225f9633eb7492296a + languageName: node + linkType: hard + +"@concepta/nestjs-report@npm:v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-report@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-exception": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-file": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-typeorm-ext": "npm:^6.0.0-alpha.0" + "@concepta/typeorm-common": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + "@nestjs/swagger": "npm:^7.4.0" + peerDependencies: + class-transformer: "*" + class-validator: "*" + rxjs: ^7.1.0 + typeorm: ^0.3.0 + checksum: 10c0/df2ce51ffad6733e352be7b80227b729703613ae8f38ffda0b034d51ec6f030c94a7a378e3cbb51142d29b3bf5514b0ae782483231128a22b0b352336e2f4805 + languageName: node + linkType: hard + +"@concepta/nestjs-role@npm:^v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-role@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-access-control": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-crud": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-exception": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-typeorm-ext": "npm:^6.0.0-alpha.0" + "@concepta/typeorm-common": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + "@nestjs/swagger": "npm:^7.4.0" + peerDependencies: + class-transformer: "*" + class-validator: "*" + typeorm: ^0.3.0 + checksum: 10c0/a9afb00403da6ec1cf0629959eb4e5aa2bbe39f4d147a7203dae2b135f43bfd95f32bc010ca03869eeb6661b1379f6d9798b0732162bdfe8b510c829dcfbabf1 + languageName: node + linkType: hard + +"@concepta/nestjs-swagger-ui@npm:^v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-swagger-ui@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + "@nestjs/swagger": "npm:^7.4.0" + checksum: 10c0/3e99704390ec027a55567054e343378019d30420cb25488e80b92d49e60f697bb0036db62353868eb11aeef3ecefad7116f3ba60fd84dc86654bc95fc18c5620 + languageName: node + linkType: hard + +"@concepta/nestjs-typeorm-ext@npm:^6.0.0-alpha.0, @concepta/nestjs-typeorm-ext@npm:^v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-typeorm-ext@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/typeorm": "npm:^10.0.2" + peerDependencies: + class-transformer: "*" + class-validator: "*" + typeorm: ^0.3.0 + checksum: 10c0/a53f6e4cac59436bda4684f5ffaeb45253a88c984223869738d0607b952a919f0bde958bedff419281cf0d48331648da584a8b6914114c4137bb8ab8568c19ec + languageName: node + linkType: hard + +"@concepta/nestjs-user@npm:^v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/nestjs-user@npm:6.0.0-alpha.0" + dependencies: + "@concepta/nestjs-access-control": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-common": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-crud": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-event": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-exception": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-password": "npm:^6.0.0-alpha.0" + "@concepta/nestjs-typeorm-ext": "npm:^6.0.0-alpha.0" + "@concepta/typeorm-common": "npm:^6.0.0-alpha.0" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + "@nestjs/core": "npm:^10.4.1" + "@nestjs/swagger": "npm:^7.4.0" + peerDependencies: + class-transformer: "*" + class-validator: "*" + typeorm: ^0.3.0 + checksum: 10c0/f926ef5c11183ff9dbca9b200dfc23460a249e99f81b0010b0fca460a9b0fd9aa18b0262e1f2b5253cb9bc0dfe7bd64cacdaec4c01008431dbd8c3fd68e99c66 + languageName: node + linkType: hard + +"@concepta/prettier-config@npm:^1.0.0, @concepta/prettier-config@npm:^1.1.5": + version: 1.1.5 + resolution: "@concepta/prettier-config@npm:1.1.5" + peerDependencies: + prettier: ^2.3.2 + checksum: 10c0/d75d3f34b99d7f198ac15bf0b629085c75a17c7632d1ae072daa268505db6827366caceaf62d080e81802c786c5c718b35465665a947291964279ee0efa0a786 + languageName: node + linkType: hard + +"@concepta/typeorm-common@npm:^6.0.0-alpha.0, @concepta/typeorm-common@npm:^v6.0.0-alpha.0": + version: 6.0.0-alpha.0 + resolution: "@concepta/typeorm-common@npm:6.0.0-alpha.0" + dependencies: + "@faker-js/faker": "npm:^8.4.1" + "@nestjs/common": "npm:^10.4.1" + peerDependencies: + "@nestjs/testing": ^10.4.1 + class-transformer: "*" + class-validator: "*" + typeorm: ^0.3.0 + checksum: 10c0/fc02250d1b6642558e7f21cb7fe4930a16a61185e50abafd05aea53047ea3cf3ad72f6c5068a24c77fbbe529ee7deb79a72d9584570574c9f34583dac18e2fb9 + languageName: node + linkType: hard + +"@concepta/typeorm-seeding@npm:^4.0.0-beta.1": + version: 4.0.0 + resolution: "@concepta/typeorm-seeding@npm:4.0.0" + dependencies: + chalk: "npm:^4" + glob: "npm:^7.2.0" + ora: "npm:^5" + reflect-metadata: "npm:^0.1.13" + yargs: "npm:^17.3.0" + peerDependencies: + typeorm: ^0.3.0 + bin: + typeorm-seeding: dist/cli.js + checksum: 10c0/a75175e176dbf1a313719378ff70dd19a76c0c2f9c9f183031cf846a6211b8524c8574a75b7576649f1cf3e855a318f37a405e53e2fc399f17c75228bab683d7 + languageName: node + linkType: hard + +"@cspotcode/source-map-support@npm:^0.8.0": + version: 0.8.1 + resolution: "@cspotcode/source-map-support@npm:0.8.1" + dependencies: + "@jridgewell/trace-mapping": "npm:0.3.9" + checksum: 10c0/05c5368c13b662ee4c122c7bfbe5dc0b613416672a829f3e78bc49a357a197e0218d6e74e7c66cfcd04e15a179acab080bd3c69658c9fbefd0e1ccd950a07fc6 + languageName: node + linkType: hard + +"@css-inline/css-inline-android-arm-eabi@npm:0.14.1": + version: 0.14.1 + resolution: "@css-inline/css-inline-android-arm-eabi@npm:0.14.1" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@css-inline/css-inline-android-arm64@npm:0.14.1": + version: 0.14.1 + resolution: "@css-inline/css-inline-android-arm64@npm:0.14.1" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@css-inline/css-inline-darwin-arm64@npm:0.14.1": + version: 0.14.1 + resolution: "@css-inline/css-inline-darwin-arm64@npm:0.14.1" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@css-inline/css-inline-darwin-x64@npm:0.14.1": + version: 0.14.1 + resolution: "@css-inline/css-inline-darwin-x64@npm:0.14.1" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@css-inline/css-inline-linux-arm-gnueabihf@npm:0.14.1": + version: 0.14.1 + resolution: "@css-inline/css-inline-linux-arm-gnueabihf@npm:0.14.1" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@css-inline/css-inline-linux-arm64-gnu@npm:0.14.1": + version: 0.14.1 + resolution: "@css-inline/css-inline-linux-arm64-gnu@npm:0.14.1" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@css-inline/css-inline-linux-arm64-musl@npm:0.14.1": + version: 0.14.1 + resolution: "@css-inline/css-inline-linux-arm64-musl@npm:0.14.1" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@css-inline/css-inline-linux-x64-gnu@npm:0.14.1": + version: 0.14.1 + resolution: "@css-inline/css-inline-linux-x64-gnu@npm:0.14.1" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@css-inline/css-inline-linux-x64-musl@npm:0.14.1": + version: 0.14.1 + resolution: "@css-inline/css-inline-linux-x64-musl@npm:0.14.1" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@css-inline/css-inline-win32-x64-msvc@npm:0.14.1": + version: 0.14.1 + resolution: "@css-inline/css-inline-win32-x64-msvc@npm:0.14.1" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"@css-inline/css-inline@npm:0.14.1": + version: 0.14.1 + resolution: "@css-inline/css-inline@npm:0.14.1" + dependencies: + "@css-inline/css-inline-android-arm-eabi": "npm:0.14.1" + "@css-inline/css-inline-android-arm64": "npm:0.14.1" + "@css-inline/css-inline-darwin-arm64": "npm:0.14.1" + "@css-inline/css-inline-darwin-x64": "npm:0.14.1" + "@css-inline/css-inline-linux-arm-gnueabihf": "npm:0.14.1" + "@css-inline/css-inline-linux-arm64-gnu": "npm:0.14.1" + "@css-inline/css-inline-linux-arm64-musl": "npm:0.14.1" + "@css-inline/css-inline-linux-x64-gnu": "npm:0.14.1" + "@css-inline/css-inline-linux-x64-musl": "npm:0.14.1" + "@css-inline/css-inline-win32-x64-msvc": "npm:0.14.1" + dependenciesMeta: + "@css-inline/css-inline-android-arm-eabi": + optional: true + "@css-inline/css-inline-android-arm64": + optional: true + "@css-inline/css-inline-darwin-arm64": + optional: true + "@css-inline/css-inline-darwin-x64": + optional: true + "@css-inline/css-inline-linux-arm-gnueabihf": + optional: true + "@css-inline/css-inline-linux-arm64-gnu": + optional: true + "@css-inline/css-inline-linux-arm64-musl": + optional: true + "@css-inline/css-inline-linux-x64-gnu": + optional: true + "@css-inline/css-inline-linux-x64-musl": + optional: true + "@css-inline/css-inline-win32-x64-msvc": + optional: true + checksum: 10c0/8c1b7a94651f90232c2022a2a78ab0c8522e5c968830506dce807181ba893365d931fa5d28b5072cb0bc7fdf814cfbf778d183bae3dec1c6efcc4a83bbec25e1 + languageName: node + linkType: hard + +"@darraghor/eslint-plugin-nestjs-typed@npm:^3.20.5": + version: 3.22.6 + resolution: "@darraghor/eslint-plugin-nestjs-typed@npm:3.22.6" + dependencies: + "@typescript-eslint/scope-manager": "npm:^5.59.8" + "@typescript-eslint/utils": "npm:^5.59.8" + eslint-module-utils: "npm:2.8.0" + reflect-metadata: "npm:0.1.13" + peerDependencies: + "@typescript-eslint/parser": ^5.0.0 + class-validator: "*" + eslint: ^8.0.0 + checksum: 10c0/efe21e4c9e8682fae7d9fef820b9036bd13d74d888884b965f1bcbf0cdf0ecb222be96b3dbff4abcb08df330bf815df7ae05818a4a82c0f4d41d88489a9aefa3 + languageName: node + linkType: hard + +"@darraghor/eslint-plugin-nestjs-typed@npm:^5.0.18": + version: 5.0.31 + resolution: "@darraghor/eslint-plugin-nestjs-typed@npm:5.0.31" + dependencies: + "@typescript-eslint/scope-manager": "npm:8.19.0" + "@typescript-eslint/utils": "npm:8.19.0" + eslint-module-utils: "npm:2.12.0" + reflect-metadata: "npm:0.2.2" + peerDependencies: + "@typescript-eslint/parser": ^7.0.0 || ^8.0.0 + class-validator: "*" + eslint: ^8.56.0 + checksum: 10c0/4ab3e817293c6677a0b3c9d878a8322b79f8d34d567c16ce6400ade6b75fb1d18a5b914d51e824e13e99eb93fd4d53ced273740293a40032038dbf22c826d2f5 + languageName: node + linkType: hard + +"@eslint-community/eslint-utils@npm:^4.2.0, @eslint-community/eslint-utils@npm:^4.4.0": + version: 4.4.1 + resolution: "@eslint-community/eslint-utils@npm:4.4.1" + dependencies: + eslint-visitor-keys: "npm:^3.4.3" + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + checksum: 10c0/2aa0ac2fc50ff3f234408b10900ed4f1a0b19352f21346ad4cc3d83a1271481bdda11097baa45d484dd564c895e0762a27a8240be7a256b3ad47129e96528252 + languageName: node + linkType: hard + +"@eslint-community/regexpp@npm:^4.10.0, @eslint-community/regexpp@npm:^4.5.1, @eslint-community/regexpp@npm:^4.6.1": + version: 4.12.1 + resolution: "@eslint-community/regexpp@npm:4.12.1" + checksum: 10c0/a03d98c246bcb9109aec2c08e4d10c8d010256538dcb3f56610191607214523d4fb1b00aa81df830b6dffb74c5fa0be03642513a289c567949d3e550ca11cdf6 + languageName: node + linkType: hard + +"@eslint/eslintrc@npm:^2.1.4": + version: 2.1.4 + resolution: "@eslint/eslintrc@npm:2.1.4" + dependencies: + ajv: "npm:^6.12.4" + debug: "npm:^4.3.2" + espree: "npm:^9.6.0" + globals: "npm:^13.19.0" + ignore: "npm:^5.2.0" + import-fresh: "npm:^3.2.1" + js-yaml: "npm:^4.1.0" + minimatch: "npm:^3.1.2" + strip-json-comments: "npm:^3.1.1" + checksum: 10c0/32f67052b81768ae876c84569ffd562491ec5a5091b0c1e1ca1e0f3c24fb42f804952fdd0a137873bc64303ba368a71ba079a6f691cee25beee9722d94cc8573 + languageName: node + linkType: hard + +"@eslint/js@npm:8.57.1": + version: 8.57.1 + resolution: "@eslint/js@npm:8.57.1" + checksum: 10c0/b489c474a3b5b54381c62e82b3f7f65f4b8a5eaaed126546520bf2fede5532a8ed53212919fed1e9048dcf7f37167c8561d58d0ba4492a4244004e7793805223 + languageName: node + linkType: hard + +"@faker-js/faker@npm:^8.4.1": + version: 8.4.1 + resolution: "@faker-js/faker@npm:8.4.1" + checksum: 10c0/4f2aecddcfdc2cc8b50b2d15d1e37302a7c7a5bbd184ae910a9d271bc11248533ca74dcdd4a9ccbe20410553e7af0f6a4d334c5b955635e09a32ddf4a64942d4 + languageName: node + linkType: hard + +"@fastify/ajv-compiler@npm:^1.0.0": + version: 1.1.0 + resolution: "@fastify/ajv-compiler@npm:1.1.0" + dependencies: + ajv: "npm:^6.12.6" + checksum: 10c0/e8c4c468f74db2d5d14ce3e765e8317e302413960f63474e6ef18039b1d711e2712e87808035f3e075b9fdf8f47af1b481979eb1ca8d82e0773ff6a9fd49d903 + languageName: node + linkType: hard + +"@fastify/error@npm:^2.0.0": + version: 2.0.0 + resolution: "@fastify/error@npm:2.0.0" + checksum: 10c0/32b98cb663e462e3d60a31a46306481f7b84657cfdd301dcd7fa9f77389f180e51c641dc4c6900d423daa264e70172bf23493fae031b6af4844b6cc7f17fe77d + languageName: node + linkType: hard + +"@humanwhocodes/config-array@npm:^0.13.0": + version: 0.13.0 + resolution: "@humanwhocodes/config-array@npm:0.13.0" + dependencies: + "@humanwhocodes/object-schema": "npm:^2.0.3" + debug: "npm:^4.3.1" + minimatch: "npm:^3.0.5" + checksum: 10c0/205c99e756b759f92e1f44a3dc6292b37db199beacba8f26c2165d4051fe73a4ae52fdcfd08ffa93e7e5cb63da7c88648f0e84e197d154bbbbe137b2e0dd332e + languageName: node + linkType: hard + +"@humanwhocodes/module-importer@npm:^1.0.1": + version: 1.0.1 + resolution: "@humanwhocodes/module-importer@npm:1.0.1" + checksum: 10c0/909b69c3b86d482c26b3359db16e46a32e0fb30bd306a3c176b8313b9e7313dba0f37f519de6aa8b0a1921349e505f259d19475e123182416a506d7f87e7f529 + languageName: node + linkType: hard + +"@humanwhocodes/object-schema@npm:^2.0.3": + version: 2.0.3 + resolution: "@humanwhocodes/object-schema@npm:2.0.3" + checksum: 10c0/80520eabbfc2d32fe195a93557cef50dfe8c8905de447f022675aaf66abc33ae54098f5ea78548d925aa671cd4ab7c7daa5ad704fe42358c9b5e7db60f80696c + languageName: node + linkType: hard + +"@isaacs/cliui@npm:^8.0.2": + version: 8.0.2 + resolution: "@isaacs/cliui@npm:8.0.2" + dependencies: + string-width: "npm:^5.1.2" + string-width-cjs: "npm:string-width@^4.2.0" + strip-ansi: "npm:^7.0.1" + strip-ansi-cjs: "npm:strip-ansi@^6.0.1" + wrap-ansi: "npm:^8.1.0" + wrap-ansi-cjs: "npm:wrap-ansi@^7.0.0" + checksum: 10c0/b1bf42535d49f11dc137f18d5e4e63a28c5569de438a221c369483731e9dac9fb797af554e8bf02b6192d1e5eba6e6402cf93900c3d0ac86391d00d04876789e + languageName: node + linkType: hard + +"@isaacs/fs-minipass@npm:^4.0.0": + version: 4.0.1 + resolution: "@isaacs/fs-minipass@npm:4.0.1" + dependencies: + minipass: "npm:^7.0.4" + checksum: 10c0/c25b6dc1598790d5b55c0947a9b7d111cfa92594db5296c3b907e2f533c033666f692a3939eadac17b1c7c40d362d0b0635dc874cbfe3e70db7c2b07cc97a5d2 + languageName: node + linkType: hard + +"@istanbuljs/load-nyc-config@npm:^1.0.0": + version: 1.1.0 + resolution: "@istanbuljs/load-nyc-config@npm:1.1.0" + dependencies: + camelcase: "npm:^5.3.1" + find-up: "npm:^4.1.0" + get-package-type: "npm:^0.1.0" + js-yaml: "npm:^3.13.1" + resolve-from: "npm:^5.0.0" + checksum: 10c0/dd2a8b094887da5a1a2339543a4933d06db2e63cbbc2e288eb6431bd832065df0c099d091b6a67436e71b7d6bf85f01ce7c15f9253b4cbebcc3b9a496165ba42 + languageName: node + linkType: hard + +"@istanbuljs/schema@npm:^0.1.2": + version: 0.1.3 + resolution: "@istanbuljs/schema@npm:0.1.3" + checksum: 10c0/61c5286771676c9ca3eb2bd8a7310a9c063fb6e0e9712225c8471c582d157392c88f5353581c8c9adbe0dff98892317d2fdfc56c3499aa42e0194405206a963a + languageName: node + linkType: hard + +"@jest/console@npm:^27.5.1": + version: 27.5.1 + resolution: "@jest/console@npm:27.5.1" + dependencies: + "@jest/types": "npm:^27.5.1" + "@types/node": "npm:*" + chalk: "npm:^4.0.0" + jest-message-util: "npm:^27.5.1" + jest-util: "npm:^27.5.1" + slash: "npm:^3.0.0" + checksum: 10c0/6cb46d721698aaeb0d57ace967f7a36bbefc20719d420ea8bf8ec8adf9994cb1ec11a93bbd9b1514c12a19b5dd99dcbbd1d3e22fd8bea8e41e845055b03ac18d + languageName: node + linkType: hard + +"@jest/core@npm:^27.0.6, @jest/core@npm:^27.5.1": + version: 27.5.1 + resolution: "@jest/core@npm:27.5.1" + dependencies: + "@jest/console": "npm:^27.5.1" + "@jest/reporters": "npm:^27.5.1" + "@jest/test-result": "npm:^27.5.1" + "@jest/transform": "npm:^27.5.1" + "@jest/types": "npm:^27.5.1" + "@types/node": "npm:*" + ansi-escapes: "npm:^4.2.1" + chalk: "npm:^4.0.0" + emittery: "npm:^0.8.1" + exit: "npm:^0.1.2" + graceful-fs: "npm:^4.2.9" + jest-changed-files: "npm:^27.5.1" + jest-config: "npm:^27.5.1" + jest-haste-map: "npm:^27.5.1" + jest-message-util: "npm:^27.5.1" + jest-regex-util: "npm:^27.5.1" + jest-resolve: "npm:^27.5.1" + jest-resolve-dependencies: "npm:^27.5.1" + jest-runner: "npm:^27.5.1" + jest-runtime: "npm:^27.5.1" + jest-snapshot: "npm:^27.5.1" + jest-util: "npm:^27.5.1" + jest-validate: "npm:^27.5.1" + jest-watcher: "npm:^27.5.1" + micromatch: "npm:^4.0.4" + rimraf: "npm:^3.0.0" + slash: "npm:^3.0.0" + strip-ansi: "npm:^6.0.0" + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + checksum: 10c0/8c858fe99cec9eabde8c894d4313171b923e1d4b8f66884b1fa1b7a0123db9f94b797f77d888a2b57d4832e7e46cd67aa1e2f227f1544643478de021c4b84db2 + languageName: node + linkType: hard + +"@jest/environment@npm:^27.5.1": + version: 27.5.1 + resolution: "@jest/environment@npm:27.5.1" + dependencies: + "@jest/fake-timers": "npm:^27.5.1" + "@jest/types": "npm:^27.5.1" + "@types/node": "npm:*" + jest-mock: "npm:^27.5.1" + checksum: 10c0/50e40b4f0a351a83f21af03c5cffd9f061729aee8f73131dbb32b39838c575a89d313e946ded91c08e16cf58ff470d74d6b3a48f664cec5c70a946aff45310b3 + languageName: node + linkType: hard + +"@jest/expect-utils@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/expect-utils@npm:29.7.0" + dependencies: + jest-get-type: "npm:^29.6.3" + checksum: 10c0/60b79d23a5358dc50d9510d726443316253ecda3a7fb8072e1526b3e0d3b14f066ee112db95699b7a43ad3f0b61b750c72e28a5a1cac361d7a2bb34747fa938a + languageName: node + linkType: hard + +"@jest/fake-timers@npm:^27.5.1": + version: 27.5.1 + resolution: "@jest/fake-timers@npm:27.5.1" + dependencies: + "@jest/types": "npm:^27.5.1" + "@sinonjs/fake-timers": "npm:^8.0.1" + "@types/node": "npm:*" + jest-message-util: "npm:^27.5.1" + jest-mock: "npm:^27.5.1" + jest-util: "npm:^27.5.1" + checksum: 10c0/df6113d11f572219ac61d3946b6cc1aaa8632e3afed9ff959bdb46e122e7cc5b5a16451a88d5fca7cc8daa66333adde3cf70d96c936f3d8406276f6e6e2cbacd + languageName: node + linkType: hard + +"@jest/globals@npm:^27.5.1": + version: 27.5.1 + resolution: "@jest/globals@npm:27.5.1" + dependencies: + "@jest/environment": "npm:^27.5.1" + "@jest/types": "npm:^27.5.1" + expect: "npm:^27.5.1" + checksum: 10c0/b7309297f13b02bf748782772ab2054bbd11f10eb13e9b4660b33acb8c2c4bc7ee07aa1175045feb27ce3a6916b2d3982a3c5350ea1f9c2c3852334942077471 + languageName: node + linkType: hard + +"@jest/reporters@npm:^27.5.1": + version: 27.5.1 + resolution: "@jest/reporters@npm:27.5.1" + dependencies: + "@bcoe/v8-coverage": "npm:^0.2.3" + "@jest/console": "npm:^27.5.1" + "@jest/test-result": "npm:^27.5.1" + "@jest/transform": "npm:^27.5.1" + "@jest/types": "npm:^27.5.1" + "@types/node": "npm:*" + chalk: "npm:^4.0.0" + collect-v8-coverage: "npm:^1.0.0" + exit: "npm:^0.1.2" + glob: "npm:^7.1.2" + graceful-fs: "npm:^4.2.9" + istanbul-lib-coverage: "npm:^3.0.0" + istanbul-lib-instrument: "npm:^5.1.0" + istanbul-lib-report: "npm:^3.0.0" + istanbul-lib-source-maps: "npm:^4.0.0" + istanbul-reports: "npm:^3.1.3" + jest-haste-map: "npm:^27.5.1" + jest-resolve: "npm:^27.5.1" + jest-util: "npm:^27.5.1" + jest-worker: "npm:^27.5.1" + slash: "npm:^3.0.0" + source-map: "npm:^0.6.0" + string-length: "npm:^4.0.1" + terminal-link: "npm:^2.0.0" + v8-to-istanbul: "npm:^8.1.0" + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + checksum: 10c0/fd66b17ca8af0464759d12525cfd84ae87403132da61f18ee76a2f07ecd64427797f7ad6e56d338ffa9f956cce153444edf1e5775093e9be2903aaf4d0e049bc + languageName: node + linkType: hard + +"@jest/schemas@npm:^29.6.3": + version: 29.6.3 + resolution: "@jest/schemas@npm:29.6.3" + dependencies: + "@sinclair/typebox": "npm:^0.27.8" + checksum: 10c0/b329e89cd5f20b9278ae1233df74016ebf7b385e0d14b9f4c1ad18d096c4c19d1e687aa113a9c976b16ec07f021ae53dea811fb8c1248a50ac34fbe009fdf6be + languageName: node + linkType: hard + +"@jest/source-map@npm:^27.5.1": + version: 27.5.1 + resolution: "@jest/source-map@npm:27.5.1" + dependencies: + callsites: "npm:^3.0.0" + graceful-fs: "npm:^4.2.9" + source-map: "npm:^0.6.0" + checksum: 10c0/7d9937675ba4cb2f27635b13be0f86588d18cf3b2d5442e818e702ea87afa5048c5f8892c749857fd7dd884fd6e14f799851ec9af61940813a690c6d5a70979e + languageName: node + linkType: hard + +"@jest/test-result@npm:^27.5.1": + version: 27.5.1 + resolution: "@jest/test-result@npm:27.5.1" + dependencies: + "@jest/console": "npm:^27.5.1" + "@jest/types": "npm:^27.5.1" + "@types/istanbul-lib-coverage": "npm:^2.0.0" + collect-v8-coverage: "npm:^1.0.0" + checksum: 10c0/4fb8cbefda8f645c57e2fc0d0df169b0bf5f6cb456b42dc09f5138595b736e800d8d83e3fd36a47fd801a2359988c841792d7fc46784bec908c88b39b6581749 + languageName: node + linkType: hard + +"@jest/test-sequencer@npm:^27.5.1": + version: 27.5.1 + resolution: "@jest/test-sequencer@npm:27.5.1" + dependencies: + "@jest/test-result": "npm:^27.5.1" + graceful-fs: "npm:^4.2.9" + jest-haste-map: "npm:^27.5.1" + jest-runtime: "npm:^27.5.1" + checksum: 10c0/f43ecfc5b4c736c7f6e8521c13ef7b447ad29f96732675776be69b2631eb76019793a02ad58e69baf7ffbce1cc8d5b62ca30294091c4ad3acbdce6c12b73d049 + languageName: node + linkType: hard + +"@jest/transform@npm:^27.5.1": + version: 27.5.1 + resolution: "@jest/transform@npm:27.5.1" + dependencies: + "@babel/core": "npm:^7.1.0" + "@jest/types": "npm:^27.5.1" + babel-plugin-istanbul: "npm:^6.1.1" + chalk: "npm:^4.0.0" + convert-source-map: "npm:^1.4.0" + fast-json-stable-stringify: "npm:^2.0.0" + graceful-fs: "npm:^4.2.9" + jest-haste-map: "npm:^27.5.1" + jest-regex-util: "npm:^27.5.1" + jest-util: "npm:^27.5.1" + micromatch: "npm:^4.0.4" + pirates: "npm:^4.0.4" + slash: "npm:^3.0.0" + source-map: "npm:^0.6.1" + write-file-atomic: "npm:^3.0.0" + checksum: 10c0/2d1819dad9621a562a1ff6eceefeb5ae0900063c50e982b9f08e48d7328a0c343520ba27ce291cb72c113d4f441ef4a95285b9d4ef6604cffd53740e951c99b6 + languageName: node + linkType: hard + +"@jest/types@npm:^27.5.1": + version: 27.5.1 + resolution: "@jest/types@npm:27.5.1" + dependencies: + "@types/istanbul-lib-coverage": "npm:^2.0.0" + "@types/istanbul-reports": "npm:^3.0.0" + "@types/node": "npm:*" + "@types/yargs": "npm:^16.0.0" + chalk: "npm:^4.0.0" + checksum: 10c0/4598b302398db0eb77168b75a6c58148ea02cc9b9f21c5d1bbe985c1c9257110a5653cf7b901c3cab87fba231e3fed83633687f1c0903b4bc6939ab2a8452504 + languageName: node + linkType: hard + +"@jest/types@npm:^29.6.3": + version: 29.6.3 + resolution: "@jest/types@npm:29.6.3" + dependencies: + "@jest/schemas": "npm:^29.6.3" + "@types/istanbul-lib-coverage": "npm:^2.0.0" + "@types/istanbul-reports": "npm:^3.0.0" + "@types/node": "npm:*" + "@types/yargs": "npm:^17.0.8" + chalk: "npm:^4.0.0" + checksum: 10c0/ea4e493dd3fb47933b8ccab201ae573dcc451f951dc44ed2a86123cd8541b82aa9d2b1031caf9b1080d6673c517e2dcc25a44b2dc4f3fbc37bfc965d444888c0 + languageName: node + linkType: hard + +"@jridgewell/gen-mapping@npm:^0.3.5": + version: 0.3.8 + resolution: "@jridgewell/gen-mapping@npm:0.3.8" + dependencies: + "@jridgewell/set-array": "npm:^1.2.1" + "@jridgewell/sourcemap-codec": "npm:^1.4.10" + "@jridgewell/trace-mapping": "npm:^0.3.24" + checksum: 10c0/c668feaf86c501d7c804904a61c23c67447b2137b813b9ce03eca82cb9d65ac7006d766c218685d76e3d72828279b6ee26c347aa1119dab23fbaf36aed51585a + languageName: node + linkType: hard + +"@jridgewell/resolve-uri@npm:^3.0.3, @jridgewell/resolve-uri@npm:^3.1.0": + version: 3.1.2 + resolution: "@jridgewell/resolve-uri@npm:3.1.2" + checksum: 10c0/d502e6fb516b35032331406d4e962c21fe77cdf1cbdb49c6142bcbd9e30507094b18972778a6e27cbad756209cfe34b1a27729e6fa08a2eb92b33943f680cf1e + languageName: node + linkType: hard + +"@jridgewell/set-array@npm:^1.2.1": + version: 1.2.1 + resolution: "@jridgewell/set-array@npm:1.2.1" + checksum: 10c0/2a5aa7b4b5c3464c895c802d8ae3f3d2b92fcbe84ad12f8d0bfbb1f5ad006717e7577ee1fd2eac00c088abe486c7adb27976f45d2941ff6b0b92b2c3302c60f4 + languageName: node + linkType: hard + +"@jridgewell/source-map@npm:^0.3.3": + version: 0.3.6 + resolution: "@jridgewell/source-map@npm:0.3.6" + dependencies: + "@jridgewell/gen-mapping": "npm:^0.3.5" + "@jridgewell/trace-mapping": "npm:^0.3.25" + checksum: 10c0/6a4ecc713ed246ff8e5bdcc1ef7c49aaa93f7463d948ba5054dda18b02dcc6a055e2828c577bcceee058f302ce1fc95595713d44f5c45e43d459f88d267f2f04 + languageName: node + linkType: hard + +"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.4.15": + version: 1.5.0 + resolution: "@jridgewell/sourcemap-codec@npm:1.5.0" + checksum: 10c0/2eb864f276eb1096c3c11da3e9bb518f6d9fc0023c78344cdc037abadc725172c70314bdb360f2d4b7bffec7f5d657ce006816bc5d4ecb35e61b66132db00c18 + languageName: node + linkType: hard + +"@jridgewell/trace-mapping@npm:0.3.9": + version: 0.3.9 + resolution: "@jridgewell/trace-mapping@npm:0.3.9" + dependencies: + "@jridgewell/resolve-uri": "npm:^3.0.3" + "@jridgewell/sourcemap-codec": "npm:^1.4.10" + checksum: 10c0/fa425b606d7c7ee5bfa6a31a7b050dd5814b4082f318e0e4190f991902181b4330f43f4805db1dd4f2433fd0ed9cc7a7b9c2683f1deeab1df1b0a98b1e24055b + languageName: node + linkType: hard + +"@jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": + version: 0.3.25 + resolution: "@jridgewell/trace-mapping@npm:0.3.25" + dependencies: + "@jridgewell/resolve-uri": "npm:^3.1.0" + "@jridgewell/sourcemap-codec": "npm:^1.4.14" + checksum: 10c0/3d1ce6ebc69df9682a5a8896b414c6537e428a1d68b02fcc8363b04284a8ca0df04d0ee3013132252ab14f2527bc13bea6526a912ecb5658f0e39fd2860b4df4 + languageName: node + linkType: hard + +"@ljharb/through@npm:^2.3.12": + version: 2.3.13 + resolution: "@ljharb/through@npm:2.3.13" + dependencies: + call-bind: "npm:^1.0.7" + checksum: 10c0/fb60b2fb2c674a674d8ebdb8972ccf52f8a62a9c1f5a2ac42557bc0273231c65d642aa2d7627cbb300766a25ae4642acd0f95fba2f8a1ff891086f0cb15807c3 + languageName: node + linkType: hard + +"@lukeed/csprng@npm:^1.0.0": + version: 1.1.0 + resolution: "@lukeed/csprng@npm:1.1.0" + checksum: 10c0/5d6dcf478af732972083ab2889c294b57f1028fa13c2c240d7a4aaa079c2c75df7ef0dcbdda5419147fc6704b4adf96b2de92f1a9a72ac21c6350c4014fffe6c + languageName: node + linkType: hard + +"@mapbox/node-pre-gyp@npm:^1.0.11": + version: 1.0.11 + resolution: "@mapbox/node-pre-gyp@npm:1.0.11" + dependencies: + detect-libc: "npm:^2.0.0" + https-proxy-agent: "npm:^5.0.0" + make-dir: "npm:^3.1.0" + node-fetch: "npm:^2.6.7" + nopt: "npm:^5.0.0" + npmlog: "npm:^5.0.1" + rimraf: "npm:^3.0.2" + semver: "npm:^7.3.5" + tar: "npm:^6.1.11" + bin: + node-pre-gyp: bin/node-pre-gyp + checksum: 10c0/2b24b93c31beca1c91336fa3b3769fda98e202fb7f9771f0f4062588d36dcc30fcf8118c36aa747fa7f7610d8cf601872bdaaf62ce7822bb08b545d1bbe086cc + languageName: node + linkType: hard + +"@microsoft/tsdoc@npm:^0.15.0": + version: 0.15.1 + resolution: "@microsoft/tsdoc@npm:0.15.1" + checksum: 10c0/09948691fac56c45a0d1920de478d66a30371a325bd81addc92eea5654d95106ce173c440fea1a1bd5bb95b3a544b6d4def7bb0b5a846c05d043575d8369a20c + languageName: node + linkType: hard + +"@nestjs-modules/mailer@npm:^2.0.2": + version: 2.0.2 + resolution: "@nestjs-modules/mailer@npm:2.0.2" + dependencies: + "@css-inline/css-inline": "npm:0.14.1" + "@types/ejs": "npm:^3.1.5" + "@types/mjml": "npm:^4.7.4" + "@types/pug": "npm:^2.0.10" + ejs: "npm:^3.1.10" + glob: "npm:10.3.12" + handlebars: "npm:^4.7.8" + liquidjs: "npm:^10.11.1" + mjml: "npm:^4.15.3" + preview-email: "npm:^3.0.19" + pug: "npm:^3.0.2" + peerDependencies: + "@nestjs/common": ">=7.0.9" + "@nestjs/core": ">=7.0.9" + "@types/ejs": ">=3.0.3" + "@types/mjml": ">=4.7.4" + "@types/pug": ">=2.0.6" + ejs: ">=3.1.2" + handlebars: ">=4.7.6" + liquidjs: ">=10.8.2" + mjml: ">=4.15.3" + nodemailer: ">=6.4.6" + preview-email: ">=3.0.19" + pug: ">=3.0.1" + dependenciesMeta: + "@types/ejs": + optional: true + "@types/mjml": + optional: true + "@types/pug": + optional: true + ejs: + optional: true + handlebars: + optional: true + liquidjs: + optional: true + mjml: + optional: true + preview-email: + optional: true + pug: + optional: true + checksum: 10c0/f77abecabfc44cbf2108411b04b52373666b4444b5d4f0766561a7d028fa376d1675177304b1738bb35262a11f2a460dcf65407f3d2c3d05db3400b976b47b00 + languageName: node + linkType: hard + +"@nestjs/axios@npm:^3.1.0": + version: 3.1.3 + resolution: "@nestjs/axios@npm:3.1.3" + peerDependencies: + "@nestjs/common": ^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0 + axios: ^1.3.1 + rxjs: ^6.0.0 || ^7.0.0 + checksum: 10c0/3b3f5ecc9a17317daafbf6ffe0cb792c5bd44d9fe7c6e2bda5d87163b9c2ed05a71a49d4e2d810c455eaa94f25e85e63673da21d674917bd9c16dfb937771109 + languageName: node + linkType: hard + +"@nestjs/cli@npm:^10.4.1": + version: 10.4.9 + resolution: "@nestjs/cli@npm:10.4.9" + dependencies: + "@angular-devkit/core": "npm:17.3.11" + "@angular-devkit/schematics": "npm:17.3.11" + "@angular-devkit/schematics-cli": "npm:17.3.11" + "@nestjs/schematics": "npm:^10.0.1" + chalk: "npm:4.1.2" + chokidar: "npm:3.6.0" + cli-table3: "npm:0.6.5" + commander: "npm:4.1.1" + fork-ts-checker-webpack-plugin: "npm:9.0.2" + glob: "npm:10.4.5" + inquirer: "npm:8.2.6" + node-emoji: "npm:1.11.0" + ora: "npm:5.4.1" + tree-kill: "npm:1.2.2" + tsconfig-paths: "npm:4.2.0" + tsconfig-paths-webpack-plugin: "npm:4.2.0" + typescript: "npm:5.7.2" + webpack: "npm:5.97.1" + webpack-node-externals: "npm:3.0.0" + peerDependencies: + "@swc/cli": ^0.1.62 || ^0.3.0 || ^0.4.0 || ^0.5.0 + "@swc/core": ^1.3.62 + peerDependenciesMeta: + "@swc/cli": + optional: true + "@swc/core": + optional: true + bin: + nest: bin/nest.js + checksum: 10c0/82f4ba6c6be2fa5f6a78fb561f1c32b392279a358a05ca052224f88e128c09b4994cfbf7a946cf0b0e39f56da707c9221542b933c1001fd012d0f4ae7bedd565 + languageName: node + linkType: hard + +"@nestjs/common@npm:^10.4.1": + version: 10.4.15 + resolution: "@nestjs/common@npm:10.4.15" + dependencies: + iterare: "npm:1.2.1" + tslib: "npm:2.8.1" + uid: "npm:2.0.2" + peerDependencies: + class-transformer: "*" + class-validator: "*" + reflect-metadata: ^0.1.12 || ^0.2.0 + rxjs: ^7.1.0 + peerDependenciesMeta: + class-transformer: + optional: true + class-validator: + optional: true + checksum: 10c0/9566993fd3f805df2be632f5a16ca90d81b0deeb50e1e7cde4a49d4948c0d8d7db58b42ded70f35061e95e91a40d2adcd9e19cb2771090114eb737f62d2ea4c6 + languageName: node + linkType: hard + +"@nestjs/config@npm:^3.2.3": + version: 3.3.0 + resolution: "@nestjs/config@npm:3.3.0" + dependencies: + dotenv: "npm:16.4.5" + dotenv-expand: "npm:10.0.0" + lodash: "npm:4.17.21" + peerDependencies: + "@nestjs/common": ^8.0.0 || ^9.0.0 || ^10.0.0 + rxjs: ^7.1.0 + checksum: 10c0/9eb1634b1a0cf4a6892e1b4449344df296d25e886fcc534853b3e3d7cf462eddb8c6cb7dd1339e29b1a6f7451d08a27a98fcbeecc95d906035bbdb81dbc623f9 + languageName: node + linkType: hard + +"@nestjs/core@npm:^10.4.1": + version: 10.4.15 + resolution: "@nestjs/core@npm:10.4.15" + dependencies: + "@nuxtjs/opencollective": "npm:0.3.2" + fast-safe-stringify: "npm:2.1.1" + iterare: "npm:1.2.1" + path-to-regexp: "npm:3.3.0" + tslib: "npm:2.8.1" + uid: "npm:2.0.2" + peerDependencies: + "@nestjs/common": ^10.0.0 + "@nestjs/microservices": ^10.0.0 + "@nestjs/platform-express": ^10.0.0 + "@nestjs/websockets": ^10.0.0 + reflect-metadata: ^0.1.12 || ^0.2.0 + rxjs: ^7.1.0 + peerDependenciesMeta: + "@nestjs/microservices": + optional: true + "@nestjs/platform-express": + optional: true + "@nestjs/websockets": + optional: true + checksum: 10c0/68958efca25b28ea38bcfc810751c626a913a848d9ec86aab0a6021e708632b95585f0da5d5c2b0513bb64cacfc97d391b45ec002b718a8e90fdda1b4354bed1 + languageName: node + linkType: hard + +"@nestjs/jwt@npm:^10.2.0": + version: 10.2.0 + resolution: "@nestjs/jwt@npm:10.2.0" + dependencies: + "@types/jsonwebtoken": "npm:9.0.5" + jsonwebtoken: "npm:9.0.2" + peerDependencies: + "@nestjs/common": ^8.0.0 || ^9.0.0 || ^10.0.0 + checksum: 10c0/81c5cbcb459122b175ad6b50dad83aab7d5dc3beb6122a56c7f985cc1c7838cd1c5eae9d630e95550b95a03e183502a183029e36ba51879c638bd0bad086c056 + languageName: node + linkType: hard + +"@nestjs/mapped-types@npm:2.0.5": + version: 2.0.5 + resolution: "@nestjs/mapped-types@npm:2.0.5" + peerDependencies: + "@nestjs/common": ^8.0.0 || ^9.0.0 || ^10.0.0 + class-transformer: ^0.4.0 || ^0.5.0 + class-validator: ^0.13.0 || ^0.14.0 + reflect-metadata: ^0.1.12 || ^0.2.0 + peerDependenciesMeta: + class-transformer: + optional: true + class-validator: + optional: true + checksum: 10c0/f92743cb4c0fe3b1eecdf0c7c6a40f0e7478574a9e1a25ebdbd29db29a7319c2ae608c08d07f7b9525bea01a5e20dbd73222100204d3a13500db4f56676446a1 + languageName: node + linkType: hard + +"@nestjs/passport@npm:^10.0.3": + version: 10.0.3 + resolution: "@nestjs/passport@npm:10.0.3" + peerDependencies: + "@nestjs/common": ^8.0.0 || ^9.0.0 || ^10.0.0 + passport: ^0.4.0 || ^0.5.0 || ^0.6.0 || ^0.7.0 + checksum: 10c0/9e8a6103407852951625e75d0abd82a0f9786d4f27fc7036731ccbac39cbdb4e597a7313e53a266bb1fe1ec36c5193365abeb3264f5d285ba0aaeb23ee8e3f1b + languageName: node + linkType: hard + +"@nestjs/platform-express@npm:^10.4.1": + version: 10.4.15 + resolution: "@nestjs/platform-express@npm:10.4.15" + dependencies: + body-parser: "npm:1.20.3" + cors: "npm:2.8.5" + express: "npm:4.21.2" + multer: "npm:1.4.4-lts.1" + tslib: "npm:2.8.1" + peerDependencies: + "@nestjs/common": ^10.0.0 + "@nestjs/core": ^10.0.0 + checksum: 10c0/95df4c0580718dc78571827cbe074f8db24ecceb8d0305e9984b645ff806514dd8ddaacc8786f0bf7b78091032c77d8a244ba780007e58463ccdf6255ca7f039 + languageName: node + linkType: hard + +"@nestjs/schematics@npm:^10.0.1, @nestjs/schematics@npm:^10.1.4": + version: 10.2.3 + resolution: "@nestjs/schematics@npm:10.2.3" + dependencies: + "@angular-devkit/core": "npm:17.3.11" + "@angular-devkit/schematics": "npm:17.3.11" + comment-json: "npm:4.2.5" + jsonc-parser: "npm:3.3.1" + pluralize: "npm:8.0.0" + peerDependencies: + typescript: ">=4.8.2" + checksum: 10c0/c883c10605c20f6a774f7439d2a296a13e2dd0d33b8628cf33a31fe8779e29ec27138509501b08f6b5c42fa4701ea970155d84cc85b99aae25c3039c7cce1b2d + languageName: node + linkType: hard + +"@nestjs/swagger@npm:^7.4.0": + version: 7.4.2 + resolution: "@nestjs/swagger@npm:7.4.2" + dependencies: + "@microsoft/tsdoc": "npm:^0.15.0" + "@nestjs/mapped-types": "npm:2.0.5" + js-yaml: "npm:4.1.0" + lodash: "npm:4.17.21" + path-to-regexp: "npm:3.3.0" + swagger-ui-dist: "npm:5.17.14" + peerDependencies: + "@fastify/static": ^6.0.0 || ^7.0.0 + "@nestjs/common": ^9.0.0 || ^10.0.0 + "@nestjs/core": ^9.0.0 || ^10.0.0 + class-transformer: "*" + class-validator: "*" + reflect-metadata: ^0.1.12 || ^0.2.0 + peerDependenciesMeta: + "@fastify/static": + optional: true + class-transformer: + optional: true + class-validator: + optional: true + checksum: 10c0/fda99b154933bb23d3b818fddf0338f74389a2bea42089de419c03203f18450faaa3840f1601b1994b312879903395ed34a98772e2decb0aab20c09910c2910c + languageName: node + linkType: hard + +"@nestjs/testing@npm:^10.4.1": + version: 10.4.15 + resolution: "@nestjs/testing@npm:10.4.15" + dependencies: + tslib: "npm:2.8.1" + peerDependencies: + "@nestjs/common": ^10.0.0 + "@nestjs/core": ^10.0.0 + "@nestjs/microservices": ^10.0.0 + "@nestjs/platform-express": ^10.0.0 + peerDependenciesMeta: + "@nestjs/microservices": + optional: true + "@nestjs/platform-express": + optional: true + checksum: 10c0/6d6b76791677bf6b0ae6c82f2a4b43fda489169fde7858037dd3483cc17b8885d353e9b7c51f5736cad86526afc2c2ebd0b6a1e88f5daa0be87a1546f4a6e511 + languageName: node + linkType: hard + +"@nestjs/typeorm@npm:^10.0.2": + version: 10.0.2 + resolution: "@nestjs/typeorm@npm:10.0.2" + dependencies: + uuid: "npm:9.0.1" + peerDependencies: + "@nestjs/common": ^8.0.0 || ^9.0.0 || ^10.0.0 + "@nestjs/core": ^8.0.0 || ^9.0.0 || ^10.0.0 + reflect-metadata: ^0.1.13 || ^0.2.0 + rxjs: ^7.2.0 + typeorm: ^0.3.0 + checksum: 10c0/0c5a59273cab43c5b7e4da189e6b9792b64309b32a09c7dbd4bcd6bf2e6ac58faeb3ae40067d3fe987ca857841031bf91c90416ae6824e3525e3e990eb5cf852 + languageName: node + linkType: hard + +"@nestjsx/crud-request@npm:^5.0.0-alpha.3": + version: 5.0.0-alpha.3 + resolution: "@nestjsx/crud-request@npm:5.0.0-alpha.3" + dependencies: + "@nestjsx/util": "npm:^5.0.0-alpha.3" + qs: "npm:^6.8.0" + checksum: 10c0/e0ce56fe0fe319f365e4e2f9484087951f4d236197513188ead2a815f94f3918594404c716f9c5d0def538bd148ba3e620492f4a798ef78368a7607271dd2112 + languageName: node + linkType: hard + +"@nestjsx/crud-typeorm@npm:^5.0.0-alpha.3": + version: 5.0.0-alpha.3 + resolution: "@nestjsx/crud-typeorm@npm:5.0.0-alpha.3" + dependencies: + "@zmotivat0r/o0": "npm:^1.0.2" + checksum: 10c0/aa2039e7ffaf1fd9e3aa744b85546f70cc3dbef23b6e315c8cc7fdf090df811e2d804ecdf9497c560ddc6b39e96d91434f10e2601b8442902a9dd1264189728a + languageName: node + linkType: hard + +"@nestjsx/crud@npm:^5.0.0-alpha.3": + version: 5.0.0-alpha.3 + resolution: "@nestjsx/crud@npm:5.0.0-alpha.3" + dependencies: + "@nestjsx/crud-request": "npm:^5.0.0-alpha.3" + "@nestjsx/util": "npm:^5.0.0-alpha.3" + deepmerge: "npm:^3.2.0" + pluralize: "npm:^8.0.0" + peerDependencies: + class-transformer: "*" + class-validator: "*" + checksum: 10c0/5e681b0af25c557e7fbf674aed2a14c87dd21e66d428d55c9977b141cdfa458aa864139e64f49a0c4528a71ca042e427765faa1f9a8a9165fc20caae9b98bdc7 + languageName: node + linkType: hard + +"@nestjsx/util@npm:^5.0.0-alpha.3": + version: 5.0.0-alpha.3 + resolution: "@nestjsx/util@npm:5.0.0-alpha.3" + checksum: 10c0/a795d07ec7b293ca30181de67060d3760fd40dfe1bff8437647450e9d405fd2b79b19cd066df28deba8e004093c92653281afc4b13a258c2039331686f6436f8 + languageName: node + linkType: hard + +"@nodelib/fs.scandir@npm:2.1.5": + version: 2.1.5 + resolution: "@nodelib/fs.scandir@npm:2.1.5" + dependencies: + "@nodelib/fs.stat": "npm:2.0.5" + run-parallel: "npm:^1.1.9" + checksum: 10c0/732c3b6d1b1e967440e65f284bd06e5821fedf10a1bea9ed2bb75956ea1f30e08c44d3def9d6a230666574edbaf136f8cfd319c14fd1f87c66e6a44449afb2eb + languageName: node + linkType: hard + +"@nodelib/fs.stat@npm:2.0.5, @nodelib/fs.stat@npm:^2.0.2": + version: 2.0.5 + resolution: "@nodelib/fs.stat@npm:2.0.5" + checksum: 10c0/88dafe5e3e29a388b07264680dc996c17f4bda48d163a9d4f5c1112979f0ce8ec72aa7116122c350b4e7976bc5566dc3ddb579be1ceaacc727872eb4ed93926d + languageName: node + linkType: hard + +"@nodelib/fs.walk@npm:^1.2.3, @nodelib/fs.walk@npm:^1.2.8": + version: 1.2.8 + resolution: "@nodelib/fs.walk@npm:1.2.8" + dependencies: + "@nodelib/fs.scandir": "npm:2.1.5" + fastq: "npm:^1.6.0" + checksum: 10c0/db9de047c3bb9b51f9335a7bb46f4fcfb6829fb628318c12115fbaf7d369bfce71c15b103d1fc3b464812d936220ee9bc1c8f762d032c9f6be9acc99249095b1 + languageName: node + linkType: hard + +"@npmcli/agent@npm:^3.0.0": + version: 3.0.0 + resolution: "@npmcli/agent@npm:3.0.0" + dependencies: + agent-base: "npm:^7.1.0" + http-proxy-agent: "npm:^7.0.0" + https-proxy-agent: "npm:^7.0.1" + lru-cache: "npm:^10.0.1" + socks-proxy-agent: "npm:^8.0.3" + checksum: 10c0/efe37b982f30740ee77696a80c196912c274ecd2cb243bc6ae7053a50c733ce0f6c09fda085145f33ecf453be19654acca74b69e81eaad4c90f00ccffe2f9271 + languageName: node + linkType: hard + +"@npmcli/fs@npm:^4.0.0": + version: 4.0.0 + resolution: "@npmcli/fs@npm:4.0.0" + dependencies: + semver: "npm:^7.3.5" + checksum: 10c0/c90935d5ce670c87b6b14fab04a965a3b8137e585f8b2a6257263bd7f97756dd736cb165bb470e5156a9e718ecd99413dccc54b1138c1a46d6ec7cf325982fe5 + languageName: node + linkType: hard + +"@nuxtjs/opencollective@npm:0.3.2": + version: 0.3.2 + resolution: "@nuxtjs/opencollective@npm:0.3.2" + dependencies: + chalk: "npm:^4.1.0" + consola: "npm:^2.15.0" + node-fetch: "npm:^2.6.1" + bin: + opencollective: bin/opencollective.js + checksum: 10c0/540268687af3289ff107585484d42201b404cdbb98b3a512487c12a6b180a8f0e1df0d701df47d3d9e0d5c0f6eb3252d80535562aedca9edf52cf7fd17ae4601 + languageName: node + linkType: hard + +"@one-ini/wasm@npm:0.1.1": + version: 0.1.1 + resolution: "@one-ini/wasm@npm:0.1.1" + checksum: 10c0/54700e055037f1a63bfcc86d24822203b25759598c2c3e295d1435130a449108aebc119c9c2e467744767dbe0b6ab47a182c61aa1071ba7368f5e20ab197ba65 + languageName: node + linkType: hard + +"@opentelemetry/api-logs@npm:0.53.0": + version: 0.53.0 + resolution: "@opentelemetry/api-logs@npm:0.53.0" + dependencies: + "@opentelemetry/api": "npm:^1.0.0" + checksum: 10c0/969ad3bbb74e3de6fdfe8eb9b3ab86d3dc284ca7bffd0ca67eef64efd08c97a4305696afe0b7b03e5d356f15d0a1a67ac517e5fa7d1ddee6fdc249eef2209fcb + languageName: node + linkType: hard + +"@opentelemetry/api-logs@npm:0.56.0": + version: 0.56.0 + resolution: "@opentelemetry/api-logs@npm:0.56.0" + dependencies: + "@opentelemetry/api": "npm:^1.3.0" + checksum: 10c0/af78b5534fd8f93edc23811349c88acf9e7cc2c7d94f58a2b58f70016f97aaa80878096c46283fdb53fb7375df83f1a048ac8d5f52b3dc1c98a2184c3a5d50ff + languageName: node + linkType: hard + +"@opentelemetry/api@npm:^1.0.0, @opentelemetry/api@npm:^1.3.0, @opentelemetry/api@npm:^1.8, @opentelemetry/api@npm:^1.9.0": + version: 1.9.0 + resolution: "@opentelemetry/api@npm:1.9.0" + checksum: 10c0/9aae2fe6e8a3a3eeb6c1fdef78e1939cf05a0f37f8a4fae4d6bf2e09eb1e06f966ece85805626e01ba5fab48072b94f19b835449e58b6d26720ee19a58298add + languageName: node + linkType: hard + +"@opentelemetry/context-async-hooks@npm:^1.29.0": + version: 1.30.0 + resolution: "@opentelemetry/context-async-hooks@npm:1.30.0" + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.10.0" + checksum: 10c0/46fef8f3af37227c16cf4e3d9264bfc7cfbe7357cb4266fa10ef32aa3256da6782110bea997d7a6b6815afb540da0a937fb5ecbaaed248c0234f8872bf25e8df + languageName: node + linkType: hard + +"@opentelemetry/core@npm:1.29.0": + version: 1.29.0 + resolution: "@opentelemetry/core@npm:1.29.0" + dependencies: + "@opentelemetry/semantic-conventions": "npm:1.28.0" + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.10.0" + checksum: 10c0/393fa276262ecc0e7bd7db5f507a2118df0725afab0cea1cb071b8d0ec879c08d9d163a83bb13f77a6bd0ad0cb66094856eb19caf225da32d3b1767156105d26 + languageName: node + linkType: hard + +"@opentelemetry/core@npm:1.30.0, @opentelemetry/core@npm:^1.1.0, @opentelemetry/core@npm:^1.26.0, @opentelemetry/core@npm:^1.29.0, @opentelemetry/core@npm:^1.8.0": + version: 1.30.0 + resolution: "@opentelemetry/core@npm:1.30.0" + dependencies: + "@opentelemetry/semantic-conventions": "npm:1.28.0" + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.10.0" + checksum: 10c0/52d17b5ddb06ab4241b977ff89b81f69f140edb5c2a78b2188d95fa7bdfdd1aa2dcafb1e2830ab77d557876682ab8f08727ba8f165ea3c39fbb6bf3b86ef33c8 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-amqplib@npm:^0.45.0": + version: 0.45.0 + resolution: "@opentelemetry/instrumentation-amqplib@npm:0.45.0" + dependencies: + "@opentelemetry/core": "npm:^1.8.0" + "@opentelemetry/instrumentation": "npm:^0.56.0" + "@opentelemetry/semantic-conventions": "npm:^1.27.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/8fc07b56a374c921f951cbe4cbbbeef1128e6e0d56ad18f170be34fb17a6ce712d5603899352511107df151cf54718b6300e2e2c5a69bbfcf5f667dda8c57ae3 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-connect@npm:0.42.0": + version: 0.42.0 + resolution: "@opentelemetry/instrumentation-connect@npm:0.42.0" + dependencies: + "@opentelemetry/core": "npm:^1.8.0" + "@opentelemetry/instrumentation": "npm:^0.56.0" + "@opentelemetry/semantic-conventions": "npm:^1.27.0" + "@types/connect": "npm:3.4.36" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/11e9b8132fd90035bc66096df1515b90e122a2a37d92727b2e78e45ee33835a7bc35e5557bc6a632e9909f522b95b2f385e6c2120363cef7f9223a65f293c9f0 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-dataloader@npm:0.15.0": + version: 0.15.0 + resolution: "@opentelemetry/instrumentation-dataloader@npm:0.15.0" + dependencies: + "@opentelemetry/instrumentation": "npm:^0.56.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/98cf400a6eec02e238048b558430d346e19238ac0ba4d4d6299b287cd9f10a9efef8888e0b4f76e2e4fc31c2cbfca13db8e3df6d152ffd4d61d1c72fe497398b + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-express@npm:0.46.0": + version: 0.46.0 + resolution: "@opentelemetry/instrumentation-express@npm:0.46.0" + dependencies: + "@opentelemetry/core": "npm:^1.8.0" + "@opentelemetry/instrumentation": "npm:^0.56.0" + "@opentelemetry/semantic-conventions": "npm:^1.27.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/a43820542a8bc6042e70e229f3658f85fdb2a9f9c207542b232380908065979b5eb6e67a3b7a32e962ac6b70a4a622f1d675d6fc3b88f59a66083ff995141c75 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-fastify@npm:0.43.0": + version: 0.43.0 + resolution: "@opentelemetry/instrumentation-fastify@npm:0.43.0" + dependencies: + "@opentelemetry/core": "npm:^1.8.0" + "@opentelemetry/instrumentation": "npm:^0.56.0" + "@opentelemetry/semantic-conventions": "npm:^1.27.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/cbe2dc023fe86cecb380145c4f2ac43baa7aa80b23da1601edc52ebbc1bf738268c2bed04b1e0dc1ead1464c9ae1b1f4fd05c9d303367d54c96e582ff9aa8ac0 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-fs@npm:0.18.0": + version: 0.18.0 + resolution: "@opentelemetry/instrumentation-fs@npm:0.18.0" + dependencies: + "@opentelemetry/core": "npm:^1.8.0" + "@opentelemetry/instrumentation": "npm:^0.56.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/7ce75e3ddbc91086d0d1755962980096e7e5bdf31bd7350d9cc641494b1b5af04b9471873fbde6d426812267cd6d9a769f1d9af7615dc8a5b6b5ef2d1f05abeb + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-generic-pool@npm:0.42.0": + version: 0.42.0 + resolution: "@opentelemetry/instrumentation-generic-pool@npm:0.42.0" + dependencies: + "@opentelemetry/instrumentation": "npm:^0.56.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/ff9ceba14acd80fb4a09269e10703e8a09109c2025d6eabf72d472fd72bbd17d2c5e96517c1afb2dd6caeb36451fb04d3b8622c9e5d1e9098462c31a1d2649cf + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-graphql@npm:0.46.0": + version: 0.46.0 + resolution: "@opentelemetry/instrumentation-graphql@npm:0.46.0" + dependencies: + "@opentelemetry/instrumentation": "npm:^0.56.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/d5b00b258a883bb0386905a298c8af6bfb3e67a24d53c1c994b396427e82cb075a86a25291477d08fca1a8ebc39d49bf85df3b4dbfc46b88c0fadf15d5de3794 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-hapi@npm:0.44.0": + version: 0.44.0 + resolution: "@opentelemetry/instrumentation-hapi@npm:0.44.0" + dependencies: + "@opentelemetry/core": "npm:^1.8.0" + "@opentelemetry/instrumentation": "npm:^0.56.0" + "@opentelemetry/semantic-conventions": "npm:^1.27.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/1832ce7c9a70e4a3119d476180d302e773f4e342ea54d14efd9ff8b5135d226b303ce219c8c58328b244cd4655e9ef7ffa26ca090ff947b93535605c11bf30b9 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-http@npm:0.56.0": + version: 0.56.0 + resolution: "@opentelemetry/instrumentation-http@npm:0.56.0" + dependencies: + "@opentelemetry/core": "npm:1.29.0" + "@opentelemetry/instrumentation": "npm:0.56.0" + "@opentelemetry/semantic-conventions": "npm:1.28.0" + forwarded-parse: "npm:2.1.2" + semver: "npm:^7.5.2" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/b225252476ad049f888b45e03c4b2ce3ccb68e0b226049090eefa4e20b3859abfb84daede4562f75d2c3820a1351400ee996cf89e2665a91209e920d711f2e49 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-ioredis@npm:0.46.0": + version: 0.46.0 + resolution: "@opentelemetry/instrumentation-ioredis@npm:0.46.0" + dependencies: + "@opentelemetry/instrumentation": "npm:^0.56.0" + "@opentelemetry/redis-common": "npm:^0.36.2" + "@opentelemetry/semantic-conventions": "npm:^1.27.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/fef7fa8cf3ea50306fbc2fcfa5fc8a3091889ee23c11c2e693bc84c27981c03bbc143e67ef30ac3b3458024a75720fa6814f71b96b72f1564300244670bf6ab1 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-kafkajs@npm:0.6.0": + version: 0.6.0 + resolution: "@opentelemetry/instrumentation-kafkajs@npm:0.6.0" + dependencies: + "@opentelemetry/instrumentation": "npm:^0.56.0" + "@opentelemetry/semantic-conventions": "npm:^1.27.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/618fe24dbde123870872de6d6101ec4da946876eb0b9a821d9436aad6b7e3ef4c5f2c50ab17d30314da259653cedb58f3a42f354a9b9b53662d31695296d974e + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-knex@npm:0.43.0": + version: 0.43.0 + resolution: "@opentelemetry/instrumentation-knex@npm:0.43.0" + dependencies: + "@opentelemetry/instrumentation": "npm:^0.56.0" + "@opentelemetry/semantic-conventions": "npm:^1.27.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/a17170976827ca4c38150c36a5c2d668a143f67475527ea194dd38271867b0966f7f4a32f498e8266fc00396a6cf2a2fda91046d0c7f697a120cb43614c6177b + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-koa@npm:0.46.0": + version: 0.46.0 + resolution: "@opentelemetry/instrumentation-koa@npm:0.46.0" + dependencies: + "@opentelemetry/core": "npm:^1.8.0" + "@opentelemetry/instrumentation": "npm:^0.56.0" + "@opentelemetry/semantic-conventions": "npm:^1.27.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/7024c737d89ca1c601c500b4d2848a63127428b065ca565886542f9e197f5737091464c4edb590dcb7e0f019c9763847bf2233259fcd99970e3da917dfedb913 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-lru-memoizer@npm:0.43.0": + version: 0.43.0 + resolution: "@opentelemetry/instrumentation-lru-memoizer@npm:0.43.0" + dependencies: + "@opentelemetry/instrumentation": "npm:^0.56.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/296cefb85c6969189bfd72b046db416ea1aac552732ea37f3833611785d8bfd066319fd8a2dada16a34338bc69c9aa2375bc174d0924a0fbb2d6e0de67ab71bb + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-mongodb@npm:0.50.0": + version: 0.50.0 + resolution: "@opentelemetry/instrumentation-mongodb@npm:0.50.0" + dependencies: + "@opentelemetry/instrumentation": "npm:^0.56.0" + "@opentelemetry/semantic-conventions": "npm:^1.27.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/68983bae9d428b5d34af46b4ed4e83d8864bae176ed528ab1a5d830bcb6267503dd6f00fd0ec88cd3e0d1023cb35b368cac3a3c51b36601fb1e9b419086b4918 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-mongoose@npm:0.45.0": + version: 0.45.0 + resolution: "@opentelemetry/instrumentation-mongoose@npm:0.45.0" + dependencies: + "@opentelemetry/core": "npm:^1.8.0" + "@opentelemetry/instrumentation": "npm:^0.56.0" + "@opentelemetry/semantic-conventions": "npm:^1.27.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/1f53b27c0a4cbecfd3d4f7e1d68e9e9bdfdbee4bddaca6a02766ce9aa558f13a4816f13dec01a49d46405fd513e0aaac105eb7d858248ebc76daace8ea5e5320 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-mysql2@npm:0.44.0": + version: 0.44.0 + resolution: "@opentelemetry/instrumentation-mysql2@npm:0.44.0" + dependencies: + "@opentelemetry/instrumentation": "npm:^0.56.0" + "@opentelemetry/semantic-conventions": "npm:^1.27.0" + "@opentelemetry/sql-common": "npm:^0.40.1" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/5a9685f0dc6143528d76e8e6aa8abf2be0bef334c098f9eed8c08df9a78e20c3a2faf97b274f4869f92932e96899c870e9aaf220eb1671a4ee19707f74d5ae0b + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-mysql@npm:0.44.0": + version: 0.44.0 + resolution: "@opentelemetry/instrumentation-mysql@npm:0.44.0" + dependencies: + "@opentelemetry/instrumentation": "npm:^0.56.0" + "@opentelemetry/semantic-conventions": "npm:^1.27.0" + "@types/mysql": "npm:2.15.26" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/2186a62b5e70e7d607024a72e1aa1235de9b2a53be9d85d7d1374a35f861a6eb3abc7c6be724763827045e3b38e302e1937e746df18e5e19e6bdb0c0ca392707 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-nestjs-core@npm:0.43.0": + version: 0.43.0 + resolution: "@opentelemetry/instrumentation-nestjs-core@npm:0.43.0" + dependencies: + "@opentelemetry/instrumentation": "npm:^0.56.0" + "@opentelemetry/semantic-conventions": "npm:^1.27.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/b10c58ed76e43a1b115b18bec262e10638b1177b229fd0f8043533d1927b21ab3ffce5c1bafe59ec381ee8c4f8607c1199f835014e625423b9102231ea6580a1 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-pg@npm:0.49.0": + version: 0.49.0 + resolution: "@opentelemetry/instrumentation-pg@npm:0.49.0" + dependencies: + "@opentelemetry/core": "npm:^1.26.0" + "@opentelemetry/instrumentation": "npm:^0.56.0" + "@opentelemetry/semantic-conventions": "npm:1.27.0" + "@opentelemetry/sql-common": "npm:^0.40.1" + "@types/pg": "npm:8.6.1" + "@types/pg-pool": "npm:2.0.6" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/bc5c5ce44dc41f913cafef29e6d334182ef60a9ef8791fa2460f3c42c12dd269b3f2bf5ea0003f5153a4a87802751fcdda3e55f27ffb762a09f69af039206784 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-redis-4@npm:0.45.0": + version: 0.45.0 + resolution: "@opentelemetry/instrumentation-redis-4@npm:0.45.0" + dependencies: + "@opentelemetry/instrumentation": "npm:^0.56.0" + "@opentelemetry/redis-common": "npm:^0.36.2" + "@opentelemetry/semantic-conventions": "npm:^1.27.0" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/7c16002b57c479526f5c4285a3d523f32e1085dbdbdc6af15acc04460f4bdf477536846f907291c55b65e1089e2d3a35b38b1ff71ce0644dbc89d12dc9b9aecd + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-tedious@npm:0.17.0": + version: 0.17.0 + resolution: "@opentelemetry/instrumentation-tedious@npm:0.17.0" + dependencies: + "@opentelemetry/instrumentation": "npm:^0.56.0" + "@opentelemetry/semantic-conventions": "npm:^1.27.0" + "@types/tedious": "npm:^4.0.14" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/8aedd18fbc28b4917239f84fb69bdec7548cd875f73fa269d255bfc31a2e7f546d5468953e0b47112843eb5ceff95503a6c158de2a6b060c7242a6f5765f91cf + languageName: node + linkType: hard + +"@opentelemetry/instrumentation-undici@npm:0.9.0": + version: 0.9.0 + resolution: "@opentelemetry/instrumentation-undici@npm:0.9.0" + dependencies: + "@opentelemetry/core": "npm:^1.8.0" + "@opentelemetry/instrumentation": "npm:^0.56.0" + peerDependencies: + "@opentelemetry/api": ^1.7.0 + checksum: 10c0/0c378e68e167b81ec34fa43dd5b10285a41c3c61cf6bb42102df483a09d386646eb2c3e5c6ea6b199a8bf2be6d16b1cb8b54854643e446c423afb795af1806cd + languageName: node + linkType: hard + +"@opentelemetry/instrumentation@npm:0.56.0, @opentelemetry/instrumentation@npm:^0.56.0": + version: 0.56.0 + resolution: "@opentelemetry/instrumentation@npm:0.56.0" + dependencies: + "@opentelemetry/api-logs": "npm:0.56.0" + "@types/shimmer": "npm:^1.2.0" + import-in-the-middle: "npm:^1.8.1" + require-in-the-middle: "npm:^7.1.1" + semver: "npm:^7.5.2" + shimmer: "npm:^1.2.1" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/31c79f2cfe832c42dd7892b248d474dc6fac134f3ff58faea746abf1b25a5127c4a8608296792bf8ed9c838a1eb0384bf2f51a5123f6569033e346733476e7c9 + languageName: node + linkType: hard + +"@opentelemetry/instrumentation@npm:^0.49 || ^0.50 || ^0.51 || ^0.52.0 || ^0.53.0": + version: 0.53.0 + resolution: "@opentelemetry/instrumentation@npm:0.53.0" + dependencies: + "@opentelemetry/api-logs": "npm:0.53.0" + "@types/shimmer": "npm:^1.2.0" + import-in-the-middle: "npm:^1.8.1" + require-in-the-middle: "npm:^7.1.1" + semver: "npm:^7.5.2" + shimmer: "npm:^1.2.1" + peerDependencies: + "@opentelemetry/api": ^1.3.0 + checksum: 10c0/943e289926812272cb77cda5e0a6b662bc6a92812b66420ceeca1c764f2e3a13364f6bbed7c9e84a17ad677474101ea3c598ef6a6cca982c35bfd24be6f6a25e + languageName: node + linkType: hard + +"@opentelemetry/redis-common@npm:^0.36.2": + version: 0.36.2 + resolution: "@opentelemetry/redis-common@npm:0.36.2" + checksum: 10c0/4cb831628551b9f13dca8d65897e300ff7be0e256b77f455a26fb053bbdfc7997b27d066ab1402ca929e7ac77598e0d593f91762d8af9f798c19ba1524e9d078 + languageName: node + linkType: hard + +"@opentelemetry/resources@npm:1.30.0, @opentelemetry/resources@npm:^1.29.0": + version: 1.30.0 + resolution: "@opentelemetry/resources@npm:1.30.0" + dependencies: + "@opentelemetry/core": "npm:1.30.0" + "@opentelemetry/semantic-conventions": "npm:1.28.0" + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.10.0" + checksum: 10c0/2b298193de85f8d7d05f9d71e5ea63189668f99248486246a4cfdc8667a5face205d650ef1ee6204a9f9c16d0b0e7704bb89a5d47537279c8e3378231ed35d1d + languageName: node + linkType: hard + +"@opentelemetry/sdk-trace-base@npm:^1.22, @opentelemetry/sdk-trace-base@npm:^1.29.0": + version: 1.30.0 + resolution: "@opentelemetry/sdk-trace-base@npm:1.30.0" + dependencies: + "@opentelemetry/core": "npm:1.30.0" + "@opentelemetry/resources": "npm:1.30.0" + "@opentelemetry/semantic-conventions": "npm:1.28.0" + peerDependencies: + "@opentelemetry/api": ">=1.0.0 <1.10.0" + checksum: 10c0/3d8dcb0ec4e70405593421ea4df8b9a5e7faceea16cb900f30747eaeaa1f96059d40312ff2171208bb627deab6a6f32024681128cfba45af2671c6cfba528af1 + languageName: node + linkType: hard + +"@opentelemetry/semantic-conventions@npm:1.27.0": + version: 1.27.0 + resolution: "@opentelemetry/semantic-conventions@npm:1.27.0" + checksum: 10c0/b859773ba06b7e53dd9c6b45a171bf3000e405733adbf462ae91004ed011bc80edb5beecb817fb344a085adfd06045ab5b729c9bd0f1479650ad377134fb798c + languageName: node + linkType: hard + +"@opentelemetry/semantic-conventions@npm:1.28.0, @opentelemetry/semantic-conventions@npm:^1.27.0, @opentelemetry/semantic-conventions@npm:^1.28.0": + version: 1.28.0 + resolution: "@opentelemetry/semantic-conventions@npm:1.28.0" + checksum: 10c0/deb8a0f744198071e70fea27143cf7c9f7ecb7e4d7b619488c917834ea09b31543c1c2bcea4ec5f3cf68797f0ef3549609c14e859013d9376400ac1499c2b9cb + languageName: node + linkType: hard + +"@opentelemetry/sql-common@npm:^0.40.1": + version: 0.40.1 + resolution: "@opentelemetry/sql-common@npm:0.40.1" + dependencies: + "@opentelemetry/core": "npm:^1.1.0" + peerDependencies: + "@opentelemetry/api": ^1.1.0 + checksum: 10c0/60a70358f0c94f610e2995333e96b406626d67d03d38ed03b15a3461ad0f8d64afbf6275cca7cb58fe955ecdce832f3ffc9b73f9d88503bba5d2a620bbd6d351 + languageName: node + linkType: hard + +"@pkgjs/parseargs@npm:^0.11.0": + version: 0.11.0 + resolution: "@pkgjs/parseargs@npm:0.11.0" + checksum: 10c0/5bd7576bb1b38a47a7fc7b51ac9f38748e772beebc56200450c4a817d712232b8f1d3ef70532c80840243c657d491cf6a6be1e3a214cff907645819fdc34aadd + languageName: node + linkType: hard + +"@prisma/instrumentation@npm:5.22.0": + version: 5.22.0 + resolution: "@prisma/instrumentation@npm:5.22.0" + dependencies: + "@opentelemetry/api": "npm:^1.8" + "@opentelemetry/instrumentation": "npm:^0.49 || ^0.50 || ^0.51 || ^0.52.0 || ^0.53.0" + "@opentelemetry/sdk-trace-base": "npm:^1.22" + checksum: 10c0/2f8fafd996f6f774affd0f48c9112cba045bb7214b79e9108e355d854005a90587bdb5983bcdeea7f7886b29426a42ee1597012a5eb15fac8f7e437c5c430445 + languageName: node + linkType: hard + +"@selderee/plugin-htmlparser2@npm:^0.11.0": + version: 0.11.0 + resolution: "@selderee/plugin-htmlparser2@npm:0.11.0" + dependencies: + domhandler: "npm:^5.0.3" + selderee: "npm:^0.11.0" + checksum: 10c0/e938ba9aeb31a9cf30dcb2977ef41685c598bf744bedc88c57aa9e8b7e71b51781695cf99c08aac50773fd7714eba670bd2a079e46db0788abe40c6d220084eb + languageName: node + linkType: hard + +"@sentry/core@npm:8.48.0": + version: 8.48.0 + resolution: "@sentry/core@npm:8.48.0" + checksum: 10c0/c25fd9be19944ab13d3f7bd0330b047cfd76f60e7c443b275f338f1fd2b1e2cf848378e9a2aef529f7fcecaf86976d01194920a467fd0c8fe2a14e89430838e2 + languageName: node + linkType: hard + +"@sentry/node@npm:^8.26.0": + version: 8.48.0 + resolution: "@sentry/node@npm:8.48.0" + dependencies: + "@opentelemetry/api": "npm:^1.9.0" + "@opentelemetry/context-async-hooks": "npm:^1.29.0" + "@opentelemetry/core": "npm:^1.29.0" + "@opentelemetry/instrumentation": "npm:^0.56.0" + "@opentelemetry/instrumentation-amqplib": "npm:^0.45.0" + "@opentelemetry/instrumentation-connect": "npm:0.42.0" + "@opentelemetry/instrumentation-dataloader": "npm:0.15.0" + "@opentelemetry/instrumentation-express": "npm:0.46.0" + "@opentelemetry/instrumentation-fastify": "npm:0.43.0" + "@opentelemetry/instrumentation-fs": "npm:0.18.0" + "@opentelemetry/instrumentation-generic-pool": "npm:0.42.0" + "@opentelemetry/instrumentation-graphql": "npm:0.46.0" + "@opentelemetry/instrumentation-hapi": "npm:0.44.0" + "@opentelemetry/instrumentation-http": "npm:0.56.0" + "@opentelemetry/instrumentation-ioredis": "npm:0.46.0" + "@opentelemetry/instrumentation-kafkajs": "npm:0.6.0" + "@opentelemetry/instrumentation-knex": "npm:0.43.0" + "@opentelemetry/instrumentation-koa": "npm:0.46.0" + "@opentelemetry/instrumentation-lru-memoizer": "npm:0.43.0" + "@opentelemetry/instrumentation-mongodb": "npm:0.50.0" + "@opentelemetry/instrumentation-mongoose": "npm:0.45.0" + "@opentelemetry/instrumentation-mysql": "npm:0.44.0" + "@opentelemetry/instrumentation-mysql2": "npm:0.44.0" + "@opentelemetry/instrumentation-nestjs-core": "npm:0.43.0" + "@opentelemetry/instrumentation-pg": "npm:0.49.0" + "@opentelemetry/instrumentation-redis-4": "npm:0.45.0" + "@opentelemetry/instrumentation-tedious": "npm:0.17.0" + "@opentelemetry/instrumentation-undici": "npm:0.9.0" + "@opentelemetry/resources": "npm:^1.29.0" + "@opentelemetry/sdk-trace-base": "npm:^1.29.0" + "@opentelemetry/semantic-conventions": "npm:^1.28.0" + "@prisma/instrumentation": "npm:5.22.0" + "@sentry/core": "npm:8.48.0" + "@sentry/opentelemetry": "npm:8.48.0" + import-in-the-middle: "npm:^1.11.2" + checksum: 10c0/178a4a9ce1b581d0831f452afe9d7d19b9decbc671065cfc80d0f441ca9ca897c227ce1b7e76900b02d5ebd8e09b0a633d122c07fc606fe63db48d60ee2660eb + languageName: node + linkType: hard + +"@sentry/opentelemetry@npm:8.48.0": + version: 8.48.0 + resolution: "@sentry/opentelemetry@npm:8.48.0" + dependencies: + "@sentry/core": "npm:8.48.0" + peerDependencies: + "@opentelemetry/api": ^1.9.0 + "@opentelemetry/core": ^1.29.0 + "@opentelemetry/instrumentation": ^0.56.0 + "@opentelemetry/sdk-trace-base": ^1.29.0 + "@opentelemetry/semantic-conventions": ^1.28.0 + checksum: 10c0/f09c066e9ddeaaf33e25ab26b5688c144f3b5a71e70cbcd7fe6e56acce6326ebc0c090baa790ebefab747371819c8b5a786505dcbe66117f12c5feebf618fe72 + languageName: node + linkType: hard + +"@sinclair/typebox@npm:^0.27.8": + version: 0.27.8 + resolution: "@sinclair/typebox@npm:0.27.8" + checksum: 10c0/ef6351ae073c45c2ac89494dbb3e1f87cc60a93ce4cde797b782812b6f97da0d620ae81973f104b43c9b7eaa789ad20ba4f6a1359f1cc62f63729a55a7d22d4e + languageName: node + linkType: hard + +"@sinonjs/commons@npm:^1.7.0": + version: 1.8.6 + resolution: "@sinonjs/commons@npm:1.8.6" + dependencies: + type-detect: "npm:4.0.8" + checksum: 10c0/93b4d4e27e93652b83467869c2fe09cbd8f37cd5582327f0e081fbf9b93899e2d267db7b668c96810c63dc229867614ced825e5512b47db96ca6f87cb3ec0f61 + languageName: node + linkType: hard + +"@sinonjs/fake-timers@npm:^8.0.1": + version: 8.1.0 + resolution: "@sinonjs/fake-timers@npm:8.1.0" + dependencies: + "@sinonjs/commons": "npm:^1.7.0" + checksum: 10c0/d6b795f9ddaf044daf184c151555ca557ccd23636f2ee3d2f76a9d128329f81fc1aac412f6f67239ab92cb9390aad9955b71df93cf4bd442c68b1f341e381ab6 + languageName: node + linkType: hard + +"@sqltools/formatter@npm:^1.2.5": + version: 1.2.5 + resolution: "@sqltools/formatter@npm:1.2.5" + checksum: 10c0/4b4fa62b8cd4880784b71cc5edd4a13da04fda0a915c14282765a8ec1a900a495e69b322704413e2052d221b5646d9fb0e20e87911f9a8f438f33180eecb11a4 + languageName: node + linkType: hard + +"@tootallnate/once@npm:1": + version: 1.1.2 + resolution: "@tootallnate/once@npm:1.1.2" + checksum: 10c0/8fe4d006e90422883a4fa9339dd05a83ff626806262e1710cee5758d493e8cbddf2db81c0e4690636dc840b02c9fda62877866ea774ebd07c1777ed5fafbdec6 + languageName: node + linkType: hard + +"@tsconfig/node10@npm:^1.0.7": + version: 1.0.11 + resolution: "@tsconfig/node10@npm:1.0.11" + checksum: 10c0/28a0710e5d039e0de484bdf85fee883bfd3f6a8980601f4d44066b0a6bcd821d31c4e231d1117731c4e24268bd4cf2a788a6787c12fc7f8d11014c07d582783c + languageName: node + linkType: hard + +"@tsconfig/node12@npm:^1.0.7": + version: 1.0.11 + resolution: "@tsconfig/node12@npm:1.0.11" + checksum: 10c0/dddca2b553e2bee1308a056705103fc8304e42bb2d2cbd797b84403a223b25c78f2c683ec3e24a095e82cd435387c877239bffcb15a590ba817cd3f6b9a99fd9 + languageName: node + linkType: hard + +"@tsconfig/node14@npm:^1.0.0": + version: 1.0.3 + resolution: "@tsconfig/node14@npm:1.0.3" + checksum: 10c0/67c1316d065fdaa32525bc9449ff82c197c4c19092b9663b23213c8cbbf8d88b6ed6a17898e0cbc2711950fbfaf40388938c1c748a2ee89f7234fc9e7fe2bf44 + languageName: node + linkType: hard + +"@tsconfig/node16@npm:^1.0.2": + version: 1.0.4 + resolution: "@tsconfig/node16@npm:1.0.4" + checksum: 10c0/05f8f2734e266fb1839eb1d57290df1664fe2aa3b0fdd685a9035806daa635f7519bf6d5d9b33f6e69dd545b8c46bd6e2b5c79acb2b1f146e885f7f11a42a5bb + languageName: node + linkType: hard + +"@types/babel__core@npm:^7.0.0, @types/babel__core@npm:^7.1.14": + version: 7.20.5 + resolution: "@types/babel__core@npm:7.20.5" + dependencies: + "@babel/parser": "npm:^7.20.7" + "@babel/types": "npm:^7.20.7" + "@types/babel__generator": "npm:*" + "@types/babel__template": "npm:*" + "@types/babel__traverse": "npm:*" + checksum: 10c0/bdee3bb69951e833a4b811b8ee9356b69a61ed5b7a23e1a081ec9249769117fa83aaaf023bb06562a038eb5845155ff663e2d5c75dd95c1d5ccc91db012868ff + languageName: node + linkType: hard + +"@types/babel__generator@npm:*": + version: 7.6.8 + resolution: "@types/babel__generator@npm:7.6.8" + dependencies: + "@babel/types": "npm:^7.0.0" + checksum: 10c0/f0ba105e7d2296bf367d6e055bb22996886c114261e2cb70bf9359556d0076c7a57239d019dee42bb063f565bade5ccb46009bce2044b2952d964bf9a454d6d2 + languageName: node + linkType: hard + +"@types/babel__template@npm:*": + version: 7.4.4 + resolution: "@types/babel__template@npm:7.4.4" + dependencies: + "@babel/parser": "npm:^7.1.0" + "@babel/types": "npm:^7.0.0" + checksum: 10c0/cc84f6c6ab1eab1427e90dd2b76ccee65ce940b778a9a67be2c8c39e1994e6f5bbc8efa309f6cea8dc6754994524cd4d2896558df76d92e7a1f46ecffee7112b + languageName: node + linkType: hard + +"@types/babel__traverse@npm:*, @types/babel__traverse@npm:^7.0.4, @types/babel__traverse@npm:^7.0.6": + version: 7.20.6 + resolution: "@types/babel__traverse@npm:7.20.6" + dependencies: + "@babel/types": "npm:^7.20.7" + checksum: 10c0/7ba7db61a53e28cac955aa99af280d2600f15a8c056619c05b6fc911cbe02c61aa4f2823299221b23ce0cce00b294c0e5f618ec772aa3f247523c2e48cf7b888 + languageName: node + linkType: hard + +"@types/body-parser@npm:*": + version: 1.19.5 + resolution: "@types/body-parser@npm:1.19.5" + dependencies: + "@types/connect": "npm:*" + "@types/node": "npm:*" + checksum: 10c0/aebeb200f25e8818d8cf39cd0209026750d77c9b85381cdd8deeb50913e4d18a1ebe4b74ca9b0b4d21952511eeaba5e9fbbf739b52731a2061e206ec60d568df + languageName: node + linkType: hard + +"@types/connect@npm:*": + version: 3.4.38 + resolution: "@types/connect@npm:3.4.38" + dependencies: + "@types/node": "npm:*" + checksum: 10c0/2e1cdba2c410f25649e77856505cd60223250fa12dff7a503e492208dbfdd25f62859918f28aba95315251fd1f5e1ffbfca1e25e73037189ab85dd3f8d0a148c + languageName: node + linkType: hard + +"@types/connect@npm:3.4.36": + version: 3.4.36 + resolution: "@types/connect@npm:3.4.36" + dependencies: + "@types/node": "npm:*" + checksum: 10c0/0dd8fcf576e178e69cbc00d47be69d3198dca4d86734a00fc55de0df147982e0a5f34592117571c5979e92ce8f3e0596e31aa454496db8a43ab90c5ab1068f40 + languageName: node + linkType: hard + +"@types/cookiejar@npm:^2.1.5": + version: 2.1.5 + resolution: "@types/cookiejar@npm:2.1.5" + checksum: 10c0/af38c3d84aebb3ccc6e46fb6afeeaac80fb26e63a487dd4db5a8b87e6ad3d4b845ba1116b2ae90d6f886290a36200fa433d8b1f6fe19c47da6b81872ce9a2764 + languageName: node + linkType: hard + +"@types/ejs@npm:^3.1.5": + version: 3.1.5 + resolution: "@types/ejs@npm:3.1.5" + checksum: 10c0/13d994cf0323d7e0ad33b9384914ccd3b4cd8bf282eced3649b1621b66ee7c784ac2d120a9d7b1f43d6f873518248fb8c3221b06a649b847860b9c2389a0b0ed + languageName: node + linkType: hard + +"@types/eslint-scope@npm:^3.7.7": + version: 3.7.7 + resolution: "@types/eslint-scope@npm:3.7.7" + dependencies: + "@types/eslint": "npm:*" + "@types/estree": "npm:*" + checksum: 10c0/a0ecbdf2f03912679440550817ff77ef39a30fa8bfdacaf6372b88b1f931828aec392f52283240f0d648cf3055c5ddc564544a626bcf245f3d09fcb099ebe3cc + languageName: node + linkType: hard + +"@types/eslint@npm:*": + version: 9.6.1 + resolution: "@types/eslint@npm:9.6.1" + dependencies: + "@types/estree": "npm:*" + "@types/json-schema": "npm:*" + checksum: 10c0/69ba24fee600d1e4c5abe0df086c1a4d798abf13792d8cfab912d76817fe1a894359a1518557d21237fbaf6eda93c5ab9309143dee4c59ef54336d1b3570420e + languageName: node + linkType: hard + +"@types/estree@npm:*, @types/estree@npm:^1.0.6": + version: 1.0.6 + resolution: "@types/estree@npm:1.0.6" + checksum: 10c0/cdfd751f6f9065442cd40957c07fd80361c962869aa853c1c2fd03e101af8b9389d8ff4955a43a6fcfa223dd387a089937f95be0f3eec21ca527039fd2d9859a + languageName: node + linkType: hard + +"@types/express-serve-static-core@npm:^4.17.33": + version: 4.19.6 + resolution: "@types/express-serve-static-core@npm:4.19.6" + dependencies: + "@types/node": "npm:*" + "@types/qs": "npm:*" + "@types/range-parser": "npm:*" + "@types/send": "npm:*" + checksum: 10c0/4281f4ead71723f376b3ddf64868ae26244d434d9906c101cf8d436d4b5c779d01bd046e4ea0ed1a394d3e402216fabfa22b1fa4dba501061cd7c81c54045983 + languageName: node + linkType: hard + +"@types/express@npm:^4.17.17": + version: 4.17.21 + resolution: "@types/express@npm:4.17.21" + dependencies: + "@types/body-parser": "npm:*" + "@types/express-serve-static-core": "npm:^4.17.33" + "@types/qs": "npm:*" + "@types/serve-static": "npm:*" + checksum: 10c0/12e562c4571da50c7d239e117e688dc434db1bac8be55613294762f84fd77fbd0658ccd553c7d3ab02408f385bc93980992369dd30e2ecd2c68c358e6af8fabf + languageName: node + linkType: hard + +"@types/graceful-fs@npm:^4.1.2": + version: 4.1.9 + resolution: "@types/graceful-fs@npm:4.1.9" + dependencies: + "@types/node": "npm:*" + checksum: 10c0/235d2fc69741448e853333b7c3d1180a966dd2b8972c8cbcd6b2a0c6cd7f8d582ab2b8e58219dbc62cce8f1b40aa317ff78ea2201cdd8249da5025adebed6f0b + languageName: node + linkType: hard + +"@types/http-errors@npm:*": + version: 2.0.4 + resolution: "@types/http-errors@npm:2.0.4" + checksum: 10c0/494670a57ad4062fee6c575047ad5782506dd35a6b9ed3894cea65830a94367bd84ba302eb3dde331871f6d70ca287bfedb1b2cf658e6132cd2cbd427ab56836 + languageName: node + linkType: hard + +"@types/istanbul-lib-coverage@npm:*, @types/istanbul-lib-coverage@npm:^2.0.0, @types/istanbul-lib-coverage@npm:^2.0.1": + version: 2.0.6 + resolution: "@types/istanbul-lib-coverage@npm:2.0.6" + checksum: 10c0/3948088654f3eeb45363f1db158354fb013b362dba2a5c2c18c559484d5eb9f6fd85b23d66c0a7c2fcfab7308d0a585b14dadaca6cc8bf89ebfdc7f8f5102fb7 + languageName: node + linkType: hard + +"@types/istanbul-lib-report@npm:*": + version: 3.0.3 + resolution: "@types/istanbul-lib-report@npm:3.0.3" + dependencies: + "@types/istanbul-lib-coverage": "npm:*" + checksum: 10c0/247e477bbc1a77248f3c6de5dadaae85ff86ac2d76c5fc6ab1776f54512a745ff2a5f791d22b942e3990ddbd40f3ef5289317c4fca5741bedfaa4f01df89051c + languageName: node + linkType: hard + +"@types/istanbul-reports@npm:^3.0.0": + version: 3.0.4 + resolution: "@types/istanbul-reports@npm:3.0.4" + dependencies: + "@types/istanbul-lib-report": "npm:*" + checksum: 10c0/1647fd402aced5b6edac87274af14ebd6b3a85447ef9ad11853a70fd92a98d35f81a5d3ea9fcb5dbb5834e800c6e35b64475e33fcae6bfa9acc70d61497c54ee + languageName: node + linkType: hard + +"@types/jest@npm:^29.5.12, @types/jest@npm:^29.5.2": + version: 29.5.14 + resolution: "@types/jest@npm:29.5.14" + dependencies: + expect: "npm:^29.0.0" + pretty-format: "npm:^29.0.0" + checksum: 10c0/18e0712d818890db8a8dab3d91e9ea9f7f19e3f83c2e50b312f557017dc81466207a71f3ed79cf4428e813ba939954fa26ffa0a9a7f153181ba174581b1c2aed + languageName: node + linkType: hard + +"@types/json-schema@npm:*, @types/json-schema@npm:^7.0.12, @types/json-schema@npm:^7.0.8, @types/json-schema@npm:^7.0.9": + version: 7.0.15 + resolution: "@types/json-schema@npm:7.0.15" + checksum: 10c0/a996a745e6c5d60292f36731dd41341339d4eeed8180bb09226e5c8d23759067692b1d88e5d91d72ee83dfc00d3aca8e7bd43ea120516c17922cbcb7c3e252db + languageName: node + linkType: hard + +"@types/jsonwebtoken@npm:9.0.5": + version: 9.0.5 + resolution: "@types/jsonwebtoken@npm:9.0.5" + dependencies: + "@types/node": "npm:*" + checksum: 10c0/c582b8420586f3b9550f7e34992cb32be300bc953636f3b087ed9c180ce7ea5c2e4b35090be2d57f0d3168cc3ca1074932907caa2afe09f4e9c84cf5c0daefa8 + languageName: node + linkType: hard + +"@types/methods@npm:^1.1.4": + version: 1.1.4 + resolution: "@types/methods@npm:1.1.4" + checksum: 10c0/a78534d79c300718298bfff92facd07bf38429c66191f640c1db4c9cff1e36f819304298a96f7536b6512bfc398e5c3e6b831405e138cd774b88ad7be78d682a + languageName: node + linkType: hard + +"@types/mime@npm:^1": + version: 1.3.5 + resolution: "@types/mime@npm:1.3.5" + checksum: 10c0/c2ee31cd9b993804df33a694d5aa3fa536511a49f2e06eeab0b484fef59b4483777dbb9e42a4198a0809ffbf698081fdbca1e5c2218b82b91603dfab10a10fbc + languageName: node + linkType: hard + +"@types/mjml-core@npm:*": + version: 4.15.1 + resolution: "@types/mjml-core@npm:4.15.1" + checksum: 10c0/d63ab08363e83dbb333700ff76a213d8926df7cbe42a9e41a31ee5ff5e042993dcb2bc57c14350621e6e000f6856d1c97f5d37c20467a90572c79bf0d40282f7 + languageName: node + linkType: hard + +"@types/mjml@npm:^4.7.4": + version: 4.7.4 + resolution: "@types/mjml@npm:4.7.4" + dependencies: + "@types/mjml-core": "npm:*" + checksum: 10c0/6f4bbdf709e1f6c9b26be67146b1e4c759142fb4ddfa4c079b600835701bb2039c60cd530d016f1d2f1aef4256580e30cdc942c3acd6935e2fe56b5a665795ae + languageName: node + linkType: hard + +"@types/mysql@npm:2.15.26": + version: 2.15.26 + resolution: "@types/mysql@npm:2.15.26" + dependencies: + "@types/node": "npm:*" + checksum: 10c0/3cf279e7db05d56c0544532a4380b9079f579092379a04c8138bd5cf88dda5b31208ac2d23ce7dbf4e3a3f43aaeed44e72f9f19f726518f308efe95a7435619a + languageName: node + linkType: hard + +"@types/node@npm:*": + version: 22.10.5 + resolution: "@types/node@npm:22.10.5" + dependencies: + undici-types: "npm:~6.20.0" + checksum: 10c0/6a0e7d1fe6a86ef6ee19c3c6af4c15542e61aea2f4cee655b6252efb356795f1f228bc8299921e82924e80ff8eca29b74d9dd0dd5cc1a90983f892f740b480df + languageName: node + linkType: hard + +"@types/node@npm:^16.0.0": + version: 16.18.123 + resolution: "@types/node@npm:16.18.123" + checksum: 10c0/d80147811f213e5c1d65b3bfa031d37f8f4d87984e70357d4db824661e4aa7477c0637c8194944c1fcfef0b1fbe65da3c4437f53340cab3205ad8bd23ace11b8 + languageName: node + linkType: hard + +"@types/node@npm:^20.3.1": + version: 20.17.12 + resolution: "@types/node@npm:20.17.12" + dependencies: + undici-types: "npm:~6.19.2" + checksum: 10c0/340b65a11e4486e597163991532a08e525beee40f082cf73dc830c060426fa9ea8690a4e3931d91375e946816a884d6140d96e99ac048b51f280f21cc70d22ed + languageName: node + linkType: hard + +"@types/pg-pool@npm:2.0.6": + version: 2.0.6 + resolution: "@types/pg-pool@npm:2.0.6" + dependencies: + "@types/pg": "npm:*" + checksum: 10c0/41965d4d0b677c54ce45d36add760e496d356b78019cb062d124af40287cf6b0fd4d86e3b0085f443856c185983a60c8b0795ff76d15683e2a93c62f5ac0125f + languageName: node + linkType: hard + +"@types/pg@npm:*": + version: 8.11.10 + resolution: "@types/pg@npm:8.11.10" + dependencies: + "@types/node": "npm:*" + pg-protocol: "npm:*" + pg-types: "npm:^4.0.1" + checksum: 10c0/c8800d0ab2c6424308e6c6b40c73f19583ee1aed758462bd07694844b0a551b5841442205a4ee05207b80109ba502f33f20241b1bd9b4902e713611fb9e08f6c + languageName: node + linkType: hard + +"@types/pg@npm:8.6.1": + version: 8.6.1 + resolution: "@types/pg@npm:8.6.1" + dependencies: + "@types/node": "npm:*" + pg-protocol: "npm:*" + pg-types: "npm:^2.2.0" + checksum: 10c0/8d16660c9a4f050d6d5e391c59f9a62e9d377a2a6a7eb5865f8828082dbdfeab700fd707e585f42d67b29e796b32863aea5bd6d5cbb8ceda2d598da5d0c61693 + languageName: node + linkType: hard + +"@types/prettier@npm:^2.1.5": + version: 2.7.3 + resolution: "@types/prettier@npm:2.7.3" + checksum: 10c0/0960b5c1115bb25e979009d0b44c42cf3d792accf24085e4bfce15aef5794ea042e04e70c2139a2c3387f781f18c89b5706f000ddb089e9a4a2ccb7536a2c5f0 + languageName: node + linkType: hard + +"@types/pug@npm:^2.0.10": + version: 2.0.10 + resolution: "@types/pug@npm:2.0.10" + checksum: 10c0/6fac37fd84ad4bcf755061caad274db70591699739070bc30c5c1b5f0aecf98646dc29ec8da11cfca82a2b7cc57d949a3ae50aba2f88bf098751ebdd25d9aaea + languageName: node + linkType: hard + +"@types/qs@npm:*": + version: 6.9.17 + resolution: "@types/qs@npm:6.9.17" + checksum: 10c0/a183fa0b3464267f8f421e2d66d960815080e8aab12b9aadab60479ba84183b1cdba8f4eff3c06f76675a8e42fe6a3b1313ea76c74f2885c3e25d32499c17d1b + languageName: node + linkType: hard + +"@types/range-parser@npm:*": + version: 1.2.7 + resolution: "@types/range-parser@npm:1.2.7" + checksum: 10c0/361bb3e964ec5133fa40644a0b942279ed5df1949f21321d77de79f48b728d39253e5ce0408c9c17e4e0fd95ca7899da36841686393b9f7a1e209916e9381a3c + languageName: node + linkType: hard + +"@types/semver@npm:^7.3.12, @types/semver@npm:^7.5.0": + version: 7.5.8 + resolution: "@types/semver@npm:7.5.8" + checksum: 10c0/8663ff927234d1c5fcc04b33062cb2b9fcfbe0f5f351ed26c4d1e1581657deebd506b41ff7fdf89e787e3d33ce05854bc01686379b89e9c49b564c4cfa988efa + languageName: node + linkType: hard + +"@types/send@npm:*": + version: 0.17.4 + resolution: "@types/send@npm:0.17.4" + dependencies: + "@types/mime": "npm:^1" + "@types/node": "npm:*" + checksum: 10c0/7f17fa696cb83be0a104b04b424fdedc7eaba1c9a34b06027239aba513b398a0e2b7279778af521f516a397ced417c96960e5f50fcfce40c4bc4509fb1a5883c + languageName: node + linkType: hard + +"@types/serve-static@npm:*": + version: 1.15.7 + resolution: "@types/serve-static@npm:1.15.7" + dependencies: + "@types/http-errors": "npm:*" + "@types/node": "npm:*" + "@types/send": "npm:*" + checksum: 10c0/26ec864d3a626ea627f8b09c122b623499d2221bbf2f470127f4c9ebfe92bd8a6bb5157001372d4c4bd0dd37a1691620217d9dc4df5aa8f779f3fd996b1c60ae + languageName: node + linkType: hard + +"@types/shimmer@npm:^1.2.0": + version: 1.2.0 + resolution: "@types/shimmer@npm:1.2.0" + checksum: 10c0/6f7bfe1b55601cfc3ae713fc74a03341f3834253b8b91cb2add926d5949e4a63f7e666f59c2a6e40a883a5f9e2f3e3af10f9d3aed9b60fced0bda87659e58d8d + languageName: node + linkType: hard + +"@types/stack-utils@npm:^2.0.0": + version: 2.0.3 + resolution: "@types/stack-utils@npm:2.0.3" + checksum: 10c0/1f4658385ae936330581bcb8aa3a066df03867d90281cdf89cc356d404bd6579be0f11902304e1f775d92df22c6dd761d4451c804b0a4fba973e06211e9bd77c + languageName: node + linkType: hard + +"@types/superagent@npm:^8.1.0": + version: 8.1.9 + resolution: "@types/superagent@npm:8.1.9" + dependencies: + "@types/cookiejar": "npm:^2.1.5" + "@types/methods": "npm:^1.1.4" + "@types/node": "npm:*" + form-data: "npm:^4.0.0" + checksum: 10c0/12631f1d8b3a62e1f435bc885f6d64d1a2d1ae82b80f0c6d63d4d6372c40b6f1fee6b3da59ac18bb86250b1eb73583bf2d4b1f7882048c32468791c560c69b7c + languageName: node + linkType: hard + +"@types/supertest@npm:^6.0.0": + version: 6.0.2 + resolution: "@types/supertest@npm:6.0.2" + dependencies: + "@types/methods": "npm:^1.1.4" + "@types/superagent": "npm:^8.1.0" + checksum: 10c0/44a28f9b35b65800f4c7bcc23748e71c925098aa74ea504d14c98385c36d00de2a4f5aca15d7dc4514bc80533e0af21f985a4ab9f5f317c7266e9e75836aef39 + languageName: node + linkType: hard + +"@types/tedious@npm:^4.0.14": + version: 4.0.14 + resolution: "@types/tedious@npm:4.0.14" + dependencies: + "@types/node": "npm:*" + checksum: 10c0/d2914f8e9b5b998e4275ec5f0130cba1c2fb47e75616b5c125a65ef6c1db2f1dc3f978c7900693856a15d72bbb4f4e94f805537a4ecb6dc126c64415d31c0590 + languageName: node + linkType: hard + +"@types/validator@npm:^13.11.8": + version: 13.12.2 + resolution: "@types/validator@npm:13.12.2" + checksum: 10c0/64f1326c768947d756ab5bcd73f3f11a6f07dc76292aea83890d0390a9b9acb374f8df6b24af2c783271f276d3d613b78fc79491fe87edee62108d54be2e3c31 + languageName: node + linkType: hard + +"@types/yargs-parser@npm:*": + version: 21.0.3 + resolution: "@types/yargs-parser@npm:21.0.3" + checksum: 10c0/e71c3bd9d0b73ca82e10bee2064c384ab70f61034bbfb78e74f5206283fc16a6d85267b606b5c22cb2a3338373586786fed595b2009825d6a9115afba36560a0 + languageName: node + linkType: hard + +"@types/yargs@npm:^16.0.0": + version: 16.0.9 + resolution: "@types/yargs@npm:16.0.9" + dependencies: + "@types/yargs-parser": "npm:*" + checksum: 10c0/be24bd9a56c97ddb2964c1c18f5b9fe8271a50e100dc6945989901aae58f7ce6fb8f3a591c749a518401b6301358dbd1997e83c36138a297094feae7f9ac8211 + languageName: node + linkType: hard + +"@types/yargs@npm:^17.0.8": + version: 17.0.33 + resolution: "@types/yargs@npm:17.0.33" + dependencies: + "@types/yargs-parser": "npm:*" + checksum: 10c0/d16937d7ac30dff697801c3d6f235be2166df42e4a88bf730fa6dc09201de3727c0a9500c59a672122313341de5f24e45ee0ff579c08ce91928e519090b7906b + languageName: node + linkType: hard + +"@types/zxcvbn@npm:^4.4.4": + version: 4.4.5 + resolution: "@types/zxcvbn@npm:4.4.5" + checksum: 10c0/b0f2f8a310de61860d66ee24964e9746cadcc166f3b44df384147ebddab186555bef701dcba0a47d04bc80dfa47d5de15f2a08e0abd713fe3a77304342ae68a8 + languageName: node + linkType: hard + +"@typescript-eslint/eslint-plugin@npm:7.17.0": + version: 7.17.0 + resolution: "@typescript-eslint/eslint-plugin@npm:7.17.0" + dependencies: + "@eslint-community/regexpp": "npm:^4.10.0" + "@typescript-eslint/scope-manager": "npm:7.17.0" + "@typescript-eslint/type-utils": "npm:7.17.0" + "@typescript-eslint/utils": "npm:7.17.0" + "@typescript-eslint/visitor-keys": "npm:7.17.0" + graphemer: "npm:^1.4.0" + ignore: "npm:^5.3.1" + natural-compare: "npm:^1.4.0" + ts-api-utils: "npm:^1.3.0" + peerDependencies: + "@typescript-eslint/parser": ^7.0.0 + eslint: ^8.56.0 + peerDependenciesMeta: + typescript: + optional: true + checksum: 10c0/654d589531ae45b8ca8f3969e785926b2544100a985968d86c828e2a1ff50331250e19c8b4af83a4ba17847a0047479662eb317e4ad94f6279cac03acd5cda5a + languageName: node + linkType: hard + +"@typescript-eslint/eslint-plugin@npm:^6.7.4": + version: 6.21.0 + resolution: "@typescript-eslint/eslint-plugin@npm:6.21.0" + dependencies: + "@eslint-community/regexpp": "npm:^4.5.1" + "@typescript-eslint/scope-manager": "npm:6.21.0" + "@typescript-eslint/type-utils": "npm:6.21.0" + "@typescript-eslint/utils": "npm:6.21.0" + "@typescript-eslint/visitor-keys": "npm:6.21.0" + debug: "npm:^4.3.4" + graphemer: "npm:^1.4.0" + ignore: "npm:^5.2.4" + natural-compare: "npm:^1.4.0" + semver: "npm:^7.5.4" + ts-api-utils: "npm:^1.0.1" + peerDependencies: + "@typescript-eslint/parser": ^6.0.0 || ^6.0.0-alpha + eslint: ^7.0.0 || ^8.0.0 + peerDependenciesMeta: + typescript: + optional: true + checksum: 10c0/f911a79ee64d642f814a3b6cdb0d324b5f45d9ef955c5033e78903f626b7239b4aa773e464a38c3e667519066169d983538f2bf8e5d00228af587c9d438fb344 + languageName: node + linkType: hard + +"@typescript-eslint/parser@npm:^5.49.0": + version: 5.62.0 + resolution: "@typescript-eslint/parser@npm:5.62.0" + dependencies: + "@typescript-eslint/scope-manager": "npm:5.62.0" + "@typescript-eslint/types": "npm:5.62.0" + "@typescript-eslint/typescript-estree": "npm:5.62.0" + debug: "npm:^4.3.4" + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + peerDependenciesMeta: + typescript: + optional: true + checksum: 10c0/315194b3bf39beb9bd16c190956c46beec64b8371e18d6bb72002108b250983eb1e186a01d34b77eb4045f4941acbb243b16155fbb46881105f65e37dc9e24d4 + languageName: node + linkType: hard + +"@typescript-eslint/parser@npm:^7.0.0, @typescript-eslint/parser@npm:^7.18.0": + version: 7.18.0 + resolution: "@typescript-eslint/parser@npm:7.18.0" + dependencies: + "@typescript-eslint/scope-manager": "npm:7.18.0" + "@typescript-eslint/types": "npm:7.18.0" + "@typescript-eslint/typescript-estree": "npm:7.18.0" + "@typescript-eslint/visitor-keys": "npm:7.18.0" + debug: "npm:^4.3.4" + peerDependencies: + eslint: ^8.56.0 + peerDependenciesMeta: + typescript: + optional: true + checksum: 10c0/370e73fca4278091bc1b657f85e7d74cd52b24257ea20c927a8e17546107ce04fbf313fec99aed0cc2a145ddbae1d3b12e9cc2c1320117636dc1281bcfd08059 + languageName: node + linkType: hard + +"@typescript-eslint/scope-manager@npm:5.62.0, @typescript-eslint/scope-manager@npm:^5.59.8": + version: 5.62.0 + resolution: "@typescript-eslint/scope-manager@npm:5.62.0" + dependencies: + "@typescript-eslint/types": "npm:5.62.0" + "@typescript-eslint/visitor-keys": "npm:5.62.0" + checksum: 10c0/861253235576c1c5c1772d23cdce1418c2da2618a479a7de4f6114a12a7ca853011a1e530525d0931c355a8fd237b9cd828fac560f85f9623e24054fd024726f + languageName: node + linkType: hard + +"@typescript-eslint/scope-manager@npm:6.21.0": + version: 6.21.0 + resolution: "@typescript-eslint/scope-manager@npm:6.21.0" + dependencies: + "@typescript-eslint/types": "npm:6.21.0" + "@typescript-eslint/visitor-keys": "npm:6.21.0" + checksum: 10c0/eaf868938d811cbbea33e97e44ba7050d2b6892202cea6a9622c486b85ab1cf801979edf78036179a8ba4ac26f1dfdf7fcc83a68c1ff66be0b3a8e9a9989b526 + languageName: node + linkType: hard + +"@typescript-eslint/scope-manager@npm:7.17.0": + version: 7.17.0 + resolution: "@typescript-eslint/scope-manager@npm:7.17.0" + dependencies: + "@typescript-eslint/types": "npm:7.17.0" + "@typescript-eslint/visitor-keys": "npm:7.17.0" + checksum: 10c0/e1a693e19dc855fe6d04b46c6c205019bfc937eda5f8b255393f8267ebddd282165568336e37b04aab544b155a807784b9c4a92129dfc7c1eef5a9e9fe052685 + languageName: node + linkType: hard + +"@typescript-eslint/scope-manager@npm:7.18.0": + version: 7.18.0 + resolution: "@typescript-eslint/scope-manager@npm:7.18.0" + dependencies: + "@typescript-eslint/types": "npm:7.18.0" + "@typescript-eslint/visitor-keys": "npm:7.18.0" + checksum: 10c0/038cd58c2271de146b3a594afe2c99290034033326d57ff1f902976022c8b0138ffd3cb893ae439ae41003b5e4bcc00cabf6b244ce40e8668f9412cc96d97b8e + languageName: node + linkType: hard + +"@typescript-eslint/scope-manager@npm:8.19.0": + version: 8.19.0 + resolution: "@typescript-eslint/scope-manager@npm:8.19.0" + dependencies: + "@typescript-eslint/types": "npm:8.19.0" + "@typescript-eslint/visitor-keys": "npm:8.19.0" + checksum: 10c0/5052863d00db7ae939de27e91dc6c92df3c37a877e1ff44015ae9aa754d419b44d97d98b25fbb30a80dc58cf92606dad599e27f32b86d20c13b77ac12b4f2abc + languageName: node + linkType: hard + +"@typescript-eslint/type-utils@npm:6.21.0": + version: 6.21.0 + resolution: "@typescript-eslint/type-utils@npm:6.21.0" + dependencies: + "@typescript-eslint/typescript-estree": "npm:6.21.0" + "@typescript-eslint/utils": "npm:6.21.0" + debug: "npm:^4.3.4" + ts-api-utils: "npm:^1.0.1" + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + peerDependenciesMeta: + typescript: + optional: true + checksum: 10c0/7409c97d1c4a4386b488962739c4f1b5b04dc60cf51f8cd88e6b12541f84d84c6b8b67e491a147a2c95f9ec486539bf4519fb9d418411aef6537b9c156468117 + languageName: node + linkType: hard + +"@typescript-eslint/type-utils@npm:7.17.0": + version: 7.17.0 + resolution: "@typescript-eslint/type-utils@npm:7.17.0" + dependencies: + "@typescript-eslint/typescript-estree": "npm:7.17.0" + "@typescript-eslint/utils": "npm:7.17.0" + debug: "npm:^4.3.4" + ts-api-utils: "npm:^1.3.0" + peerDependencies: + eslint: ^8.56.0 + peerDependenciesMeta: + typescript: + optional: true + checksum: 10c0/b415cf37c0922cded78735c5049cb5a5b0065e1c0ce4a81ca2a26422763ccacca8945efa45480f40530f2ec414a14d35a88a6798258aa889f7a9cf4ca4a240cd + languageName: node + linkType: hard + +"@typescript-eslint/types@npm:5.62.0": + version: 5.62.0 + resolution: "@typescript-eslint/types@npm:5.62.0" + checksum: 10c0/7febd3a7f0701c0b927e094f02e82d8ee2cada2b186fcb938bc2b94ff6fbad88237afc304cbaf33e82797078bbbb1baf91475f6400912f8b64c89be79bfa4ddf + languageName: node + linkType: hard + +"@typescript-eslint/types@npm:6.21.0": + version: 6.21.0 + resolution: "@typescript-eslint/types@npm:6.21.0" + checksum: 10c0/020631d3223bbcff8a0da3efbdf058220a8f48a3de221563996ad1dcc30d6c08dadc3f7608cc08830d21c0d565efd2db19b557b9528921c78aabb605eef2d74d + languageName: node + linkType: hard + +"@typescript-eslint/types@npm:7.17.0": + version: 7.17.0 + resolution: "@typescript-eslint/types@npm:7.17.0" + checksum: 10c0/8f734294d432b37c534f17eb2befdfe43b76874d09118d6adf7e308e5a586e9e11b7021abe4f6692a6e6226de58a15b3cfe1300939556ce1c908d9af627b7400 + languageName: node + linkType: hard + +"@typescript-eslint/types@npm:7.18.0": + version: 7.18.0 + resolution: "@typescript-eslint/types@npm:7.18.0" + checksum: 10c0/eb7371ac55ca77db8e59ba0310b41a74523f17e06f485a0ef819491bc3dd8909bb930120ff7d30aaf54e888167e0005aa1337011f3663dc90fb19203ce478054 + languageName: node + linkType: hard + +"@typescript-eslint/types@npm:8.19.0": + version: 8.19.0 + resolution: "@typescript-eslint/types@npm:8.19.0" + checksum: 10c0/0062e7dce5f374e293c97f1f50fe450187f6b0eaf4971c818e18ef2f6baf4e9aa4e8605fba8d8fc464a504ee1130527b71ecb39d31687c31825942b9f569d902 + languageName: node + linkType: hard + +"@typescript-eslint/typescript-estree@npm:5.62.0": + version: 5.62.0 + resolution: "@typescript-eslint/typescript-estree@npm:5.62.0" + dependencies: + "@typescript-eslint/types": "npm:5.62.0" + "@typescript-eslint/visitor-keys": "npm:5.62.0" + debug: "npm:^4.3.4" + globby: "npm:^11.1.0" + is-glob: "npm:^4.0.3" + semver: "npm:^7.3.7" + tsutils: "npm:^3.21.0" + peerDependenciesMeta: + typescript: + optional: true + checksum: 10c0/d7984a3e9d56897b2481940ec803cb8e7ead03df8d9cfd9797350be82ff765dfcf3cfec04e7355e1779e948da8f02bc5e11719d07a596eb1cb995c48a95e38cf + languageName: node + linkType: hard + +"@typescript-eslint/typescript-estree@npm:6.21.0": + version: 6.21.0 + resolution: "@typescript-eslint/typescript-estree@npm:6.21.0" + dependencies: + "@typescript-eslint/types": "npm:6.21.0" + "@typescript-eslint/visitor-keys": "npm:6.21.0" + debug: "npm:^4.3.4" + globby: "npm:^11.1.0" + is-glob: "npm:^4.0.3" + minimatch: "npm:9.0.3" + semver: "npm:^7.5.4" + ts-api-utils: "npm:^1.0.1" + peerDependenciesMeta: + typescript: + optional: true + checksum: 10c0/af1438c60f080045ebb330155a8c9bb90db345d5069cdd5d01b67de502abb7449d6c75500519df829f913a6b3f490ade3e8215279b6bdc63d0fb0ae61034df5f + languageName: node + linkType: hard + +"@typescript-eslint/typescript-estree@npm:7.17.0": + version: 7.17.0 + resolution: "@typescript-eslint/typescript-estree@npm:7.17.0" + dependencies: + "@typescript-eslint/types": "npm:7.17.0" + "@typescript-eslint/visitor-keys": "npm:7.17.0" + debug: "npm:^4.3.4" + globby: "npm:^11.1.0" + is-glob: "npm:^4.0.3" + minimatch: "npm:^9.0.4" + semver: "npm:^7.6.0" + ts-api-utils: "npm:^1.3.0" + peerDependenciesMeta: + typescript: + optional: true + checksum: 10c0/10967823ce00c9f8cd4a8b56bed3524c098e38cc0e27aaa49ffd8fad4e671c00226bf0330ba858948750b88dc55527ebeb62c74be8a30bac18a106d6c033ab59 + languageName: node + linkType: hard + +"@typescript-eslint/typescript-estree@npm:7.18.0": + version: 7.18.0 + resolution: "@typescript-eslint/typescript-estree@npm:7.18.0" + dependencies: + "@typescript-eslint/types": "npm:7.18.0" + "@typescript-eslint/visitor-keys": "npm:7.18.0" + debug: "npm:^4.3.4" + globby: "npm:^11.1.0" + is-glob: "npm:^4.0.3" + minimatch: "npm:^9.0.4" + semver: "npm:^7.6.0" + ts-api-utils: "npm:^1.3.0" + peerDependenciesMeta: + typescript: + optional: true + checksum: 10c0/0c7f109a2e460ec8a1524339479cf78ff17814d23c83aa5112c77fb345e87b3642616291908dcddea1e671da63686403dfb712e4a4435104f92abdfddf9aba81 + languageName: node + linkType: hard + +"@typescript-eslint/typescript-estree@npm:8.19.0": + version: 8.19.0 + resolution: "@typescript-eslint/typescript-estree@npm:8.19.0" + dependencies: + "@typescript-eslint/types": "npm:8.19.0" + "@typescript-eslint/visitor-keys": "npm:8.19.0" + debug: "npm:^4.3.4" + fast-glob: "npm:^3.3.2" + is-glob: "npm:^4.0.3" + minimatch: "npm:^9.0.4" + semver: "npm:^7.6.0" + ts-api-utils: "npm:^1.3.0" + peerDependencies: + typescript: ">=4.8.4 <5.8.0" + checksum: 10c0/ff47004588e8ff585af740b3e0bda07dc52310dbfeb2317eb4a723935740cf0c1953fc9ba57f14cf192bcfe373c46be833ba29d3303df8b501181bb852c7b822 + languageName: node + linkType: hard + +"@typescript-eslint/utils@npm:6.21.0": + version: 6.21.0 + resolution: "@typescript-eslint/utils@npm:6.21.0" + dependencies: + "@eslint-community/eslint-utils": "npm:^4.4.0" + "@types/json-schema": "npm:^7.0.12" + "@types/semver": "npm:^7.5.0" + "@typescript-eslint/scope-manager": "npm:6.21.0" + "@typescript-eslint/types": "npm:6.21.0" + "@typescript-eslint/typescript-estree": "npm:6.21.0" + semver: "npm:^7.5.4" + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + checksum: 10c0/ab2df3833b2582d4e5467a484d08942b4f2f7208f8e09d67de510008eb8001a9b7460f2f9ba11c12086fd3cdcac0c626761c7995c2c6b5657d5fa6b82030a32d + languageName: node + linkType: hard + +"@typescript-eslint/utils@npm:7.17.0": + version: 7.17.0 + resolution: "@typescript-eslint/utils@npm:7.17.0" + dependencies: + "@eslint-community/eslint-utils": "npm:^4.4.0" + "@typescript-eslint/scope-manager": "npm:7.17.0" + "@typescript-eslint/types": "npm:7.17.0" + "@typescript-eslint/typescript-estree": "npm:7.17.0" + peerDependencies: + eslint: ^8.56.0 + checksum: 10c0/1f3e22820b3ab3e47809c45e576614ad4a965f5c8634856eca5c70981386b9351a77fb172ba32345e7c5667479cf9526c673699dd38dccd0616ad6db21704e72 + languageName: node + linkType: hard + +"@typescript-eslint/utils@npm:8.19.0": + version: 8.19.0 + resolution: "@typescript-eslint/utils@npm:8.19.0" + dependencies: + "@eslint-community/eslint-utils": "npm:^4.4.0" + "@typescript-eslint/scope-manager": "npm:8.19.0" + "@typescript-eslint/types": "npm:8.19.0" + "@typescript-eslint/typescript-estree": "npm:8.19.0" + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: ">=4.8.4 <5.8.0" + checksum: 10c0/7731f7fb66d54491769ca68fd04728138ceb6b785778ad491f8e9b2147802fa0ff480e520f6ea5fb73c8484d13a2ed3e35d44635f5bf4cfbdb04c313154097a9 + languageName: node + linkType: hard + +"@typescript-eslint/utils@npm:^5.59.8": + version: 5.62.0 + resolution: "@typescript-eslint/utils@npm:5.62.0" + dependencies: + "@eslint-community/eslint-utils": "npm:^4.2.0" + "@types/json-schema": "npm:^7.0.9" + "@types/semver": "npm:^7.3.12" + "@typescript-eslint/scope-manager": "npm:5.62.0" + "@typescript-eslint/types": "npm:5.62.0" + "@typescript-eslint/typescript-estree": "npm:5.62.0" + eslint-scope: "npm:^5.1.1" + semver: "npm:^7.3.7" + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + checksum: 10c0/f09b7d9952e4a205eb1ced31d7684dd55cee40bf8c2d78e923aa8a255318d97279825733902742c09d8690f37a50243f4c4d383ab16bd7aefaf9c4b438f785e1 + languageName: node + linkType: hard + +"@typescript-eslint/visitor-keys@npm:5.62.0": + version: 5.62.0 + resolution: "@typescript-eslint/visitor-keys@npm:5.62.0" + dependencies: + "@typescript-eslint/types": "npm:5.62.0" + eslint-visitor-keys: "npm:^3.3.0" + checksum: 10c0/7c3b8e4148e9b94d9b7162a596a1260d7a3efc4e65199693b8025c71c4652b8042501c0bc9f57654c1e2943c26da98c0f77884a746c6ae81389fcb0b513d995d + languageName: node + linkType: hard + +"@typescript-eslint/visitor-keys@npm:6.21.0": + version: 6.21.0 + resolution: "@typescript-eslint/visitor-keys@npm:6.21.0" + dependencies: + "@typescript-eslint/types": "npm:6.21.0" + eslint-visitor-keys: "npm:^3.4.1" + checksum: 10c0/7395f69739cfa1cb83c1fb2fad30afa2a814756367302fb4facd5893eff66abc807e8d8f63eba94ed3b0fe0c1c996ac9a1680bcbf0f83717acedc3f2bb724fbf + languageName: node + linkType: hard + +"@typescript-eslint/visitor-keys@npm:7.17.0": + version: 7.17.0 + resolution: "@typescript-eslint/visitor-keys@npm:7.17.0" + dependencies: + "@typescript-eslint/types": "npm:7.17.0" + eslint-visitor-keys: "npm:^3.4.3" + checksum: 10c0/fa6b339d51fc3710288bb2ffaa46d639551d77965cc42c36f96c4f43aed663ff12972e8a28652a280f6ce20b7a92dc2aea14b2b4049012799be2fc2d3cbb2c60 + languageName: node + linkType: hard + +"@typescript-eslint/visitor-keys@npm:7.18.0": + version: 7.18.0 + resolution: "@typescript-eslint/visitor-keys@npm:7.18.0" + dependencies: + "@typescript-eslint/types": "npm:7.18.0" + eslint-visitor-keys: "npm:^3.4.3" + checksum: 10c0/538b645f8ff1d9debf264865c69a317074eaff0255e63d7407046176b0f6a6beba34a6c51d511f12444bae12a98c69891eb6f403c9f54c6c2e2849d1c1cb73c0 + languageName: node + linkType: hard + +"@typescript-eslint/visitor-keys@npm:8.19.0": + version: 8.19.0 + resolution: "@typescript-eslint/visitor-keys@npm:8.19.0" + dependencies: + "@typescript-eslint/types": "npm:8.19.0" + eslint-visitor-keys: "npm:^4.2.0" + checksum: 10c0/a293def05018bb2259506e23cd8f14349f4386d0e51231893fbddf96ef73c219d5f9fe17b82e3c104f5c23956dbd9b87af3cff5e84b887af243139a3b4bbbe0d + languageName: node + linkType: hard + +"@ungap/structured-clone@npm:^1.2.0": + version: 1.2.1 + resolution: "@ungap/structured-clone@npm:1.2.1" + checksum: 10c0/127afbcc75ff1532f7b1eb85ee992f9faa70e8d5bb2558da05355d423b966fc279d0a485bf19da2883280e7c299ae4170809a72e78eab086da71c6bcdda5d1e2 + languageName: node + linkType: hard + +"@webassemblyjs/ast@npm:1.14.1, @webassemblyjs/ast@npm:^1.14.1": + version: 1.14.1 + resolution: "@webassemblyjs/ast@npm:1.14.1" + dependencies: + "@webassemblyjs/helper-numbers": "npm:1.13.2" + "@webassemblyjs/helper-wasm-bytecode": "npm:1.13.2" + checksum: 10c0/67a59be8ed50ddd33fbb2e09daa5193ac215bf7f40a9371be9a0d9797a114d0d1196316d2f3943efdb923a3d809175e1563a3cb80c814fb8edccd1e77494972b + languageName: node + linkType: hard + +"@webassemblyjs/floating-point-hex-parser@npm:1.13.2": + version: 1.13.2 + resolution: "@webassemblyjs/floating-point-hex-parser@npm:1.13.2" + checksum: 10c0/0e88bdb8b50507d9938be64df0867f00396b55eba9df7d3546eb5dc0ca64d62e06f8d881ec4a6153f2127d0f4c11d102b6e7d17aec2f26bb5ff95a5e60652412 + languageName: node + linkType: hard + +"@webassemblyjs/helper-api-error@npm:1.13.2": + version: 1.13.2 + resolution: "@webassemblyjs/helper-api-error@npm:1.13.2" + checksum: 10c0/31be497f996ed30aae4c08cac3cce50c8dcd5b29660383c0155fce1753804fc55d47fcba74e10141c7dd2899033164e117b3bcfcda23a6b043e4ded4f1003dfb + languageName: node + linkType: hard + +"@webassemblyjs/helper-buffer@npm:1.14.1": + version: 1.14.1 + resolution: "@webassemblyjs/helper-buffer@npm:1.14.1" + checksum: 10c0/0d54105dc373c0fe6287f1091e41e3a02e36cdc05e8cf8533cdc16c59ff05a646355415893449d3768cda588af451c274f13263300a251dc11a575bc4c9bd210 + languageName: node + linkType: hard + +"@webassemblyjs/helper-numbers@npm:1.13.2": + version: 1.13.2 + resolution: "@webassemblyjs/helper-numbers@npm:1.13.2" + dependencies: + "@webassemblyjs/floating-point-hex-parser": "npm:1.13.2" + "@webassemblyjs/helper-api-error": "npm:1.13.2" + "@xtuc/long": "npm:4.2.2" + checksum: 10c0/9c46852f31b234a8fb5a5a9d3f027bc542392a0d4de32f1a9c0075d5e8684aa073cb5929b56df565500b3f9cc0a2ab983b650314295b9bf208d1a1651bfc825a + languageName: node + linkType: hard + +"@webassemblyjs/helper-wasm-bytecode@npm:1.13.2": + version: 1.13.2 + resolution: "@webassemblyjs/helper-wasm-bytecode@npm:1.13.2" + checksum: 10c0/c4355d14f369b30cf3cbdd3acfafc7d0488e086be6d578e3c9780bd1b512932352246be96e034e2a7fcfba4f540ec813352f312bfcbbfe5bcfbf694f82ccc682 + languageName: node + linkType: hard + +"@webassemblyjs/helper-wasm-section@npm:1.14.1": + version: 1.14.1 + resolution: "@webassemblyjs/helper-wasm-section@npm:1.14.1" + dependencies: + "@webassemblyjs/ast": "npm:1.14.1" + "@webassemblyjs/helper-buffer": "npm:1.14.1" + "@webassemblyjs/helper-wasm-bytecode": "npm:1.13.2" + "@webassemblyjs/wasm-gen": "npm:1.14.1" + checksum: 10c0/1f9b33731c3c6dbac3a9c483269562fa00d1b6a4e7133217f40e83e975e636fd0f8736e53abd9a47b06b66082ecc976c7384391ab0a68e12d509ea4e4b948d64 + languageName: node + linkType: hard + +"@webassemblyjs/ieee754@npm:1.13.2": + version: 1.13.2 + resolution: "@webassemblyjs/ieee754@npm:1.13.2" + dependencies: + "@xtuc/ieee754": "npm:^1.2.0" + checksum: 10c0/2e732ca78c6fbae3c9b112f4915d85caecdab285c0b337954b180460290ccd0fb00d2b1dc4bb69df3504abead5191e0d28d0d17dfd6c9d2f30acac8c4961c8a7 + languageName: node + linkType: hard + +"@webassemblyjs/leb128@npm:1.13.2": + version: 1.13.2 + resolution: "@webassemblyjs/leb128@npm:1.13.2" + dependencies: + "@xtuc/long": "npm:4.2.2" + checksum: 10c0/dad5ef9e383c8ab523ce432dfd80098384bf01c45f70eb179d594f85ce5db2f80fa8c9cba03adafd85684e6d6310f0d3969a882538975989919329ac4c984659 + languageName: node + linkType: hard + +"@webassemblyjs/utf8@npm:1.13.2": + version: 1.13.2 + resolution: "@webassemblyjs/utf8@npm:1.13.2" + checksum: 10c0/d3fac9130b0e3e5a1a7f2886124a278e9323827c87a2b971e6d0da22a2ba1278ac9f66a4f2e363ecd9fac8da42e6941b22df061a119e5c0335f81006de9ee799 + languageName: node + linkType: hard + +"@webassemblyjs/wasm-edit@npm:^1.14.1": + version: 1.14.1 + resolution: "@webassemblyjs/wasm-edit@npm:1.14.1" + dependencies: + "@webassemblyjs/ast": "npm:1.14.1" + "@webassemblyjs/helper-buffer": "npm:1.14.1" + "@webassemblyjs/helper-wasm-bytecode": "npm:1.13.2" + "@webassemblyjs/helper-wasm-section": "npm:1.14.1" + "@webassemblyjs/wasm-gen": "npm:1.14.1" + "@webassemblyjs/wasm-opt": "npm:1.14.1" + "@webassemblyjs/wasm-parser": "npm:1.14.1" + "@webassemblyjs/wast-printer": "npm:1.14.1" + checksum: 10c0/5ac4781086a2ca4b320bdbfd965a209655fe8a208ca38d89197148f8597e587c9a2c94fb6bd6f1a7dbd4527c49c6844fcdc2af981f8d793a97bf63a016aa86d2 + languageName: node + linkType: hard + +"@webassemblyjs/wasm-gen@npm:1.14.1": + version: 1.14.1 + resolution: "@webassemblyjs/wasm-gen@npm:1.14.1" + dependencies: + "@webassemblyjs/ast": "npm:1.14.1" + "@webassemblyjs/helper-wasm-bytecode": "npm:1.13.2" + "@webassemblyjs/ieee754": "npm:1.13.2" + "@webassemblyjs/leb128": "npm:1.13.2" + "@webassemblyjs/utf8": "npm:1.13.2" + checksum: 10c0/d678810d7f3f8fecb2e2bdadfb9afad2ec1d2bc79f59e4711ab49c81cec578371e22732d4966f59067abe5fba8e9c54923b57060a729d28d408e608beef67b10 + languageName: node + linkType: hard + +"@webassemblyjs/wasm-opt@npm:1.14.1": + version: 1.14.1 + resolution: "@webassemblyjs/wasm-opt@npm:1.14.1" + dependencies: + "@webassemblyjs/ast": "npm:1.14.1" + "@webassemblyjs/helper-buffer": "npm:1.14.1" + "@webassemblyjs/wasm-gen": "npm:1.14.1" + "@webassemblyjs/wasm-parser": "npm:1.14.1" + checksum: 10c0/515bfb15277ee99ba6b11d2232ddbf22aed32aad6d0956fe8a0a0a004a1b5a3a277a71d9a3a38365d0538ac40d1b7b7243b1a244ad6cd6dece1c1bb2eb5de7ee + languageName: node + linkType: hard + +"@webassemblyjs/wasm-parser@npm:1.14.1, @webassemblyjs/wasm-parser@npm:^1.14.1": + version: 1.14.1 + resolution: "@webassemblyjs/wasm-parser@npm:1.14.1" + dependencies: + "@webassemblyjs/ast": "npm:1.14.1" + "@webassemblyjs/helper-api-error": "npm:1.13.2" + "@webassemblyjs/helper-wasm-bytecode": "npm:1.13.2" + "@webassemblyjs/ieee754": "npm:1.13.2" + "@webassemblyjs/leb128": "npm:1.13.2" + "@webassemblyjs/utf8": "npm:1.13.2" + checksum: 10c0/95427b9e5addbd0f647939bd28e3e06b8deefdbdadcf892385b5edc70091bf9b92fa5faac3fce8333554437c5d85835afef8c8a7d9d27ab6ba01ffab954db8c6 + languageName: node + linkType: hard + +"@webassemblyjs/wast-printer@npm:1.14.1": + version: 1.14.1 + resolution: "@webassemblyjs/wast-printer@npm:1.14.1" + dependencies: + "@webassemblyjs/ast": "npm:1.14.1" + "@xtuc/long": "npm:4.2.2" + checksum: 10c0/8d7768608996a052545251e896eac079c98e0401842af8dd4de78fba8d90bd505efb6c537e909cd6dae96e09db3fa2e765a6f26492553a675da56e2db51f9d24 + languageName: node + linkType: hard + +"@xtuc/ieee754@npm:^1.2.0": + version: 1.2.0 + resolution: "@xtuc/ieee754@npm:1.2.0" + checksum: 10c0/a8565d29d135039bd99ae4b2220d3e167d22cf53f867e491ed479b3f84f895742d0097f935b19aab90265a23d5d46711e4204f14c479ae3637fbf06c4666882f + languageName: node + linkType: hard + +"@xtuc/long@npm:4.2.2": + version: 4.2.2 + resolution: "@xtuc/long@npm:4.2.2" + checksum: 10c0/8582cbc69c79ad2d31568c412129bf23d2b1210a1dfb60c82d5a1df93334da4ee51f3057051658569e2c196d8dc33bc05ae6b974a711d0d16e801e1d0647ccd1 + languageName: node + linkType: hard + +"@zmotivat0r/o0@npm:^1.0.2": + version: 1.0.2 + resolution: "@zmotivat0r/o0@npm:1.0.2" + checksum: 10c0/9f3f5e632798b598c7abc841ece5f7ea94aafc9fd83a279ac7c19b418002ef13bbf92df80833ff5c9d971e74f21ca4c3e9c6eaa51f82d74f716c89543b2cc980 + languageName: node + linkType: hard + +"abab@npm:^2.0.3, abab@npm:^2.0.5": + version: 2.0.6 + resolution: "abab@npm:2.0.6" + checksum: 10c0/0b245c3c3ea2598fe0025abf7cc7bb507b06949d51e8edae5d12c1b847a0a0c09639abcb94788332b4e2044ac4491c1e8f571b51c7826fd4b0bda1685ad4a278 + languageName: node + linkType: hard + +"abbrev@npm:1": + version: 1.1.1 + resolution: "abbrev@npm:1.1.1" + checksum: 10c0/3f762677702acb24f65e813070e306c61fafe25d4b2583f9dfc935131f774863f3addd5741572ed576bd69cabe473c5af18e1e108b829cb7b6b4747884f726e6 + languageName: node + linkType: hard + +"abbrev@npm:^2.0.0": + version: 2.0.0 + resolution: "abbrev@npm:2.0.0" + checksum: 10c0/f742a5a107473946f426c691c08daba61a1d15942616f300b5d32fd735be88fef5cba24201757b6c407fd564555fb48c751cfa33519b2605c8a7aadd22baf372 + languageName: node + linkType: hard + +"abstract-logging@npm:^2.0.0": + version: 2.0.1 + resolution: "abstract-logging@npm:2.0.1" + checksum: 10c0/304879d9babcf6772260e5ddde632e6428e1f42f7a7a116d4689e97ad813a20e0ec2dd1e0a122f3617557f40091b9ca85735de4b48c17a2041268cb47b3f8ef1 + languageName: node + linkType: hard + +"accepts@npm:~1.3.8": + version: 1.3.8 + resolution: "accepts@npm:1.3.8" + dependencies: + mime-types: "npm:~2.1.34" + negotiator: "npm:0.6.3" + checksum: 10c0/3a35c5f5586cfb9a21163ca47a5f77ac34fa8ceb5d17d2fa2c0d81f41cbd7f8c6fa52c77e2c039acc0f4d09e71abdc51144246900f6bef5e3c4b333f77d89362 + languageName: node + linkType: hard + +"accesscontrol@npm:^2.2.1": + version: 2.2.1 + resolution: "accesscontrol@npm:2.2.1" + dependencies: + notation: "npm:^1.3.6" + checksum: 10c0/0b271db23dd393a419476aae7c361a6ae7fe1cd9791c9e6ada55843bfc06e5b012408155ac35e9d5f14fc620db782c6bbdacf8286c6f00f0ed4eb0abd562697e + languageName: node + linkType: hard + +"acorn-globals@npm:^6.0.0": + version: 6.0.0 + resolution: "acorn-globals@npm:6.0.0" + dependencies: + acorn: "npm:^7.1.1" + acorn-walk: "npm:^7.1.1" + checksum: 10c0/5f92390a3fd7e5a4f84fe976d4650e2a33ecf27135aa9efc5406e3406df7f00a1bbb00648ee0c8058846f55ad0924ff574e6c73395705690e754589380a41801 + languageName: node + linkType: hard + +"acorn-import-attributes@npm:^1.9.5": + version: 1.9.5 + resolution: "acorn-import-attributes@npm:1.9.5" + peerDependencies: + acorn: ^8 + checksum: 10c0/5926eaaead2326d5a86f322ff1b617b0f698aa61dc719a5baa0e9d955c9885cc71febac3fb5bacff71bbf2c4f9c12db2056883c68c53eb962c048b952e1e013d + languageName: node + linkType: hard + +"acorn-jsx@npm:^5.3.2": + version: 5.3.2 + resolution: "acorn-jsx@npm:5.3.2" + peerDependencies: + acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 + checksum: 10c0/4c54868fbef3b8d58927d5e33f0a4de35f59012fe7b12cf9dfbb345fb8f46607709e1c4431be869a23fb63c151033d84c4198fa9f79385cec34fcb1dd53974c1 + languageName: node + linkType: hard + +"acorn-walk@npm:^7.1.1": + version: 7.2.0 + resolution: "acorn-walk@npm:7.2.0" + checksum: 10c0/ff99f3406ed8826f7d6ef6ac76b7608f099d45a1ff53229fa267125da1924188dbacf02e7903dfcfd2ae4af46f7be8847dc7d564c73c4e230dfb69c8ea8e6b4c + languageName: node + linkType: hard + +"acorn-walk@npm:^8.1.1": + version: 8.3.4 + resolution: "acorn-walk@npm:8.3.4" + dependencies: + acorn: "npm:^8.11.0" + checksum: 10c0/76537ac5fb2c37a64560feaf3342023dadc086c46da57da363e64c6148dc21b57d49ace26f949e225063acb6fb441eabffd89f7a3066de5ad37ab3e328927c62 + languageName: node + linkType: hard + +"acorn@npm:^7.1.1": + version: 7.4.1 + resolution: "acorn@npm:7.4.1" + bin: + acorn: bin/acorn + checksum: 10c0/bd0b2c2b0f334bbee48828ff897c12bd2eb5898d03bf556dcc8942022cec795ac5bb5b6b585e2de687db6231faf07e096b59a361231dd8c9344d5df5f7f0e526 + languageName: node + linkType: hard + +"acorn@npm:^8.11.0, acorn@npm:^8.14.0, acorn@npm:^8.2.4, acorn@npm:^8.4.1, acorn@npm:^8.8.2, acorn@npm:^8.9.0": + version: 8.14.0 + resolution: "acorn@npm:8.14.0" + bin: + acorn: bin/acorn + checksum: 10c0/6d4ee461a7734b2f48836ee0fbb752903606e576cc100eb49340295129ca0b452f3ba91ddd4424a1d4406a98adfb2ebb6bd0ff4c49d7a0930c10e462719bbfd7 + languageName: node + linkType: hard + +"agent-base@npm:6": + version: 6.0.2 + resolution: "agent-base@npm:6.0.2" + dependencies: + debug: "npm:4" + checksum: 10c0/dc4f757e40b5f3e3d674bc9beb4f1048f4ee83af189bae39be99f57bf1f48dde166a8b0a5342a84b5944ee8e6ed1e5a9d801858f4ad44764e84957122fe46261 + languageName: node + linkType: hard + +"agent-base@npm:^7.1.0, agent-base@npm:^7.1.2": + version: 7.1.3 + resolution: "agent-base@npm:7.1.3" + checksum: 10c0/6192b580c5b1d8fb399b9c62bf8343d76654c2dd62afcb9a52b2cf44a8b6ace1e3b704d3fe3547d91555c857d3df02603341ff2cb961b9cfe2b12f9f3c38ee11 + languageName: node + linkType: hard + +"ajv-formats@npm:2.1.1, ajv-formats@npm:^2.1.1": + version: 2.1.1 + resolution: "ajv-formats@npm:2.1.1" + dependencies: + ajv: "npm:^8.0.0" + peerDependencies: + ajv: ^8.0.0 + peerDependenciesMeta: + ajv: + optional: true + checksum: 10c0/e43ba22e91b6a48d96224b83d260d3a3a561b42d391f8d3c6d2c1559f9aa5b253bfb306bc94bbeca1d967c014e15a6efe9a207309e95b3eaae07fcbcdc2af662 + languageName: node + linkType: hard + +"ajv-keywords@npm:^3.5.2": + version: 3.5.2 + resolution: "ajv-keywords@npm:3.5.2" + peerDependencies: + ajv: ^6.9.1 + checksum: 10c0/0c57a47cbd656e8cdfd99d7c2264de5868918ffa207c8d7a72a7f63379d4333254b2ba03d69e3c035e996a3fd3eb6d5725d7a1597cca10694296e32510546360 + languageName: node + linkType: hard + +"ajv-keywords@npm:^5.1.0": + version: 5.1.0 + resolution: "ajv-keywords@npm:5.1.0" + dependencies: + fast-deep-equal: "npm:^3.1.3" + peerDependencies: + ajv: ^8.8.2 + checksum: 10c0/18bec51f0171b83123ba1d8883c126e60c6f420cef885250898bf77a8d3e65e3bfb9e8564f497e30bdbe762a83e0d144a36931328616a973ee669dc74d4a9590 + languageName: node + linkType: hard + +"ajv@npm:8.12.0": + version: 8.12.0 + resolution: "ajv@npm:8.12.0" + dependencies: + fast-deep-equal: "npm:^3.1.1" + json-schema-traverse: "npm:^1.0.0" + require-from-string: "npm:^2.0.2" + uri-js: "npm:^4.2.2" + checksum: 10c0/ac4f72adf727ee425e049bc9d8b31d4a57e1c90da8d28bcd23d60781b12fcd6fc3d68db5df16994c57b78b94eed7988f5a6b482fd376dc5b084125e20a0a622e + languageName: node + linkType: hard + +"ajv@npm:^6.11.0, ajv@npm:^6.12.4, ajv@npm:^6.12.5, ajv@npm:^6.12.6": + version: 6.12.6 + resolution: "ajv@npm:6.12.6" + dependencies: + fast-deep-equal: "npm:^3.1.1" + fast-json-stable-stringify: "npm:^2.0.0" + json-schema-traverse: "npm:^0.4.1" + uri-js: "npm:^4.2.2" + checksum: 10c0/41e23642cbe545889245b9d2a45854ebba51cda6c778ebced9649420d9205f2efb39cb43dbc41e358409223b1ea43303ae4839db682c848b891e4811da1a5a71 + languageName: node + linkType: hard + +"ajv@npm:^8.0.0, ajv@npm:^8.1.0, ajv@npm:^8.9.0": + version: 8.17.1 + resolution: "ajv@npm:8.17.1" + dependencies: + fast-deep-equal: "npm:^3.1.3" + fast-uri: "npm:^3.0.1" + json-schema-traverse: "npm:^1.0.0" + require-from-string: "npm:^2.0.2" + checksum: 10c0/ec3ba10a573c6b60f94639ffc53526275917a2df6810e4ab5a6b959d87459f9ef3f00d5e7865b82677cb7d21590355b34da14d1d0b9c32d75f95a187e76fff35 + languageName: node + linkType: hard + +"alce@npm:1.2.0": + version: 1.2.0 + resolution: "alce@npm:1.2.0" + dependencies: + esprima: "npm:^1.2.0" + estraverse: "npm:^1.5.0" + checksum: 10c0/ece85d4cceb25a6c182a6f94c6f67e50205a55f48c30ff9cf3088c35d452dc275f6586d9f8c6f66471ad970700dc08093e25d6fce5578b001444af8014251275 + languageName: node + linkType: hard + +"ansi-colors@npm:4.1.3, ansi-colors@npm:^4.1.1": + version: 4.1.3 + resolution: "ansi-colors@npm:4.1.3" + checksum: 10c0/ec87a2f59902f74e61eada7f6e6fe20094a628dab765cfdbd03c3477599368768cffccdb5d3bb19a1b6c99126783a143b1fee31aab729b31ffe5836c7e5e28b9 + languageName: node + linkType: hard + +"ansi-escapes@npm:^4.2.1, ansi-escapes@npm:^4.3.2": + version: 4.3.2 + resolution: "ansi-escapes@npm:4.3.2" + dependencies: + type-fest: "npm:^0.21.3" + checksum: 10c0/da917be01871525a3dfcf925ae2977bc59e8c513d4423368645634bf5d4ceba5401574eb705c1e92b79f7292af5a656f78c5725a4b0e1cec97c4b413705c1d50 + languageName: node + linkType: hard + +"ansi-regex@npm:^5.0.1": + version: 5.0.1 + resolution: "ansi-regex@npm:5.0.1" + checksum: 10c0/9a64bb8627b434ba9327b60c027742e5d17ac69277960d041898596271d992d4d52ba7267a63ca10232e29f6107fc8a835f6ce8d719b88c5f8493f8254813737 + languageName: node + linkType: hard + +"ansi-regex@npm:^6.0.1": + version: 6.1.0 + resolution: "ansi-regex@npm:6.1.0" + checksum: 10c0/a91daeddd54746338478eef88af3439a7edf30f8e23196e2d6ed182da9add559c601266dbef01c2efa46a958ad6f1f8b176799657616c702b5b02e799e7fd8dc + languageName: node + linkType: hard + +"ansi-styles@npm:^4.0.0, ansi-styles@npm:^4.1.0": + version: 4.3.0 + resolution: "ansi-styles@npm:4.3.0" + dependencies: + color-convert: "npm:^2.0.1" + checksum: 10c0/895a23929da416f2bd3de7e9cb4eabd340949328ab85ddd6e484a637d8f6820d485f53933446f5291c3b760cbc488beb8e88573dd0f9c7daf83dccc8fe81b041 + languageName: node + linkType: hard + +"ansi-styles@npm:^5.0.0": + version: 5.2.0 + resolution: "ansi-styles@npm:5.2.0" + checksum: 10c0/9c4ca80eb3c2fb7b33841c210d2f20807f40865d27008d7c3f707b7f95cab7d67462a565e2388ac3285b71cb3d9bb2173de8da37c57692a362885ec34d6e27df + languageName: node + linkType: hard + +"ansi-styles@npm:^6.1.0": + version: 6.2.1 + resolution: "ansi-styles@npm:6.2.1" + checksum: 10c0/5d1ec38c123984bcedd996eac680d548f31828bd679a66db2bdf11844634dde55fec3efa9c6bb1d89056a5e79c1ac540c4c784d592ea1d25028a92227d2f2d5c + languageName: node + linkType: hard + +"any-promise@npm:^1.0.0": + version: 1.3.0 + resolution: "any-promise@npm:1.3.0" + checksum: 10c0/60f0298ed34c74fef50daab88e8dab786036ed5a7fad02e012ab57e376e0a0b4b29e83b95ea9b5e7d89df762f5f25119b83e00706ecaccb22cfbacee98d74889 + languageName: node + linkType: hard + +"anymatch@npm:^3.0.3, anymatch@npm:~3.1.2": + version: 3.1.3 + resolution: "anymatch@npm:3.1.3" + dependencies: + normalize-path: "npm:^3.0.0" + picomatch: "npm:^2.0.4" + checksum: 10c0/57b06ae984bc32a0d22592c87384cd88fe4511b1dd7581497831c56d41939c8a001b28e7b853e1450f2bf61992dfcaa8ae2d0d161a0a90c4fb631ef07098fbac + languageName: node + linkType: hard + +"app-root-path@npm:^3.1.0": + version: 3.1.0 + resolution: "app-root-path@npm:3.1.0" + checksum: 10c0/4a0fd976de1bffcdb18a5e1f8050091f15d0780e0582bca99aaa9d52de71f0e08e5185355fcffc781180bfb898499e787a2f5ed79b9c448b942b31dc947acaa9 + languageName: node + linkType: hard + +"append-field@npm:^1.0.0": + version: 1.0.0 + resolution: "append-field@npm:1.0.0" + checksum: 10c0/1b5abcc227e5179936a9e4f7e2af4769fa1f00eda85bbaed907f7964b0fd1f7d61f0f332b35337f391389ff13dd5310c2546ba670f8e5a743b23ec85185c73ef + languageName: node + linkType: hard + +"aproba@npm:^1.0.3 || ^2.0.0": + version: 2.0.0 + resolution: "aproba@npm:2.0.0" + checksum: 10c0/d06e26384a8f6245d8c8896e138c0388824e259a329e0c9f196b4fa533c82502a6fd449586e3604950a0c42921832a458bb3aa0aa9f0ba449cfd4f50fd0d09b5 + languageName: node + linkType: hard + +"archy@npm:^1.0.0": + version: 1.0.0 + resolution: "archy@npm:1.0.0" + checksum: 10c0/200c849dd1c304ea9914827b0555e7e1e90982302d574153e28637db1a663c53de62bad96df42d50e8ce7fc18d05e3437d9aa8c4b383803763755f0956c7d308 + languageName: node + linkType: hard + +"are-we-there-yet@npm:^2.0.0": + version: 2.0.0 + resolution: "are-we-there-yet@npm:2.0.0" + dependencies: + delegates: "npm:^1.0.0" + readable-stream: "npm:^3.6.0" + checksum: 10c0/375f753c10329153c8d66dc95e8f8b6c7cc2aa66e05cb0960bd69092b10dae22900cacc7d653ad11d26b3ecbdbfe1e8bfb6ccf0265ba8077a7d979970f16b99c + languageName: node + linkType: hard + +"arg@npm:^4.1.0": + version: 4.1.3 + resolution: "arg@npm:4.1.3" + checksum: 10c0/070ff801a9d236a6caa647507bdcc7034530604844d64408149a26b9e87c2f97650055c0f049abd1efc024b334635c01f29e0b632b371ac3f26130f4cf65997a + languageName: node + linkType: hard + +"argparse@npm:^1.0.7": + version: 1.0.10 + resolution: "argparse@npm:1.0.10" + dependencies: + sprintf-js: "npm:~1.0.2" + checksum: 10c0/b2972c5c23c63df66bca144dbc65d180efa74f25f8fd9b7d9a0a6c88ae839db32df3d54770dcb6460cf840d232b60695d1a6b1053f599d84e73f7437087712de + languageName: node + linkType: hard + +"argparse@npm:^2.0.1": + version: 2.0.1 + resolution: "argparse@npm:2.0.1" + checksum: 10c0/c5640c2d89045371c7cedd6a70212a04e360fd34d6edeae32f6952c63949e3525ea77dbec0289d8213a99bbaeab5abfa860b5c12cf88a2e6cf8106e90dd27a7e + languageName: node + linkType: hard + +"array-flatten@npm:1.1.1": + version: 1.1.1 + resolution: "array-flatten@npm:1.1.1" + checksum: 10c0/806966c8abb2f858b08f5324d9d18d7737480610f3bd5d3498aaae6eb5efdc501a884ba019c9b4a8f02ff67002058749d05548fd42fa8643f02c9c7f22198b91 + languageName: node + linkType: hard + +"array-timsort@npm:^1.0.3": + version: 1.0.3 + resolution: "array-timsort@npm:1.0.3" + checksum: 10c0/bd3a1707b621947265c89867e67c9102b9b9f4c50f5b3974220112290d8b60d26ce60595edec5deed3325207b759d70b758bed3cd310b5ddadb835657ffb6d12 + languageName: node + linkType: hard + +"array-union@npm:^2.1.0": + version: 2.1.0 + resolution: "array-union@npm:2.1.0" + checksum: 10c0/429897e68110374f39b771ec47a7161fc6a8fc33e196857c0a396dc75df0b5f65e4d046674db764330b6bb66b39ef48dd7c53b6a2ee75cfb0681e0c1a7033962 + languageName: node + linkType: hard + +"asap@npm:^2.0.0, asap@npm:~2.0.3": + version: 2.0.6 + resolution: "asap@npm:2.0.6" + checksum: 10c0/c6d5e39fe1f15e4b87677460bd66b66050cd14c772269cee6688824c1410a08ab20254bb6784f9afb75af9144a9f9a7692d49547f4d19d715aeb7c0318f3136d + languageName: node + linkType: hard + +"assert-never@npm:^1.2.1": + version: 1.4.0 + resolution: "assert-never@npm:1.4.0" + checksum: 10c0/494db08b89fb43d6231c9b4c48da22824f1912d88992bf0268e43b3dad0f64bd56d380addbb997d2dea7d859421d5e2904e8bd01243794f2bb5bfbc8d32d1fc6 + languageName: node + linkType: hard + +"async@npm:^3.2.3": + version: 3.2.6 + resolution: "async@npm:3.2.6" + checksum: 10c0/36484bb15ceddf07078688d95e27076379cc2f87b10c03b6dd8a83e89475a3c8df5848859dd06a4c95af1e4c16fc973de0171a77f18ea00be899aca2a4f85e70 + languageName: node + linkType: hard + +"asynckit@npm:^0.4.0": + version: 0.4.0 + resolution: "asynckit@npm:0.4.0" + checksum: 10c0/d73e2ddf20c4eb9337e1b3df1a0f6159481050a5de457c55b14ea2e5cb6d90bb69e004c9af54737a5ee0917fcf2c9e25de67777bbe58261847846066ba75bc9d + languageName: node + linkType: hard + +"atomic-sleep@npm:^1.0.0": + version: 1.0.0 + resolution: "atomic-sleep@npm:1.0.0" + checksum: 10c0/e329a6665512736a9bbb073e1761b4ec102f7926cce35037753146a9db9c8104f5044c1662e4a863576ce544fb8be27cd2be6bc8c1a40147d03f31eb1cfb6e8a + languageName: node + linkType: hard + +"avvio@npm:^7.1.2": + version: 7.2.5 + resolution: "avvio@npm:7.2.5" + dependencies: + archy: "npm:^1.0.0" + debug: "npm:^4.0.0" + fastq: "npm:^1.6.1" + queue-microtask: "npm:^1.1.2" + checksum: 10c0/20ca0bf216647ff09ebaa9f206cd55dbe768a72b915ad41e517223ed4595ab7ec72eeff99a5da88d47a7ecc53002424d2b4c68b09559e3ab918c296ced5100d8 + languageName: node + linkType: hard + +"axios@npm:^1.7.7": + version: 1.7.9 + resolution: "axios@npm:1.7.9" + dependencies: + follow-redirects: "npm:^1.15.6" + form-data: "npm:^4.0.0" + proxy-from-env: "npm:^1.1.0" + checksum: 10c0/b7a41e24b59fee5f0f26c1fc844b45b17442832eb3a0fb42dd4f1430eb4abc571fe168e67913e8a1d91c993232bd1d1ab03e20e4d1fee8c6147649b576fc1b0b + languageName: node + linkType: hard + +"babel-jest@npm:^27.5.1": + version: 27.5.1 + resolution: "babel-jest@npm:27.5.1" + dependencies: + "@jest/transform": "npm:^27.5.1" + "@jest/types": "npm:^27.5.1" + "@types/babel__core": "npm:^7.1.14" + babel-plugin-istanbul: "npm:^6.1.1" + babel-preset-jest: "npm:^27.5.1" + chalk: "npm:^4.0.0" + graceful-fs: "npm:^4.2.9" + slash: "npm:^3.0.0" + peerDependencies: + "@babel/core": ^7.8.0 + checksum: 10c0/3ec8fdabba150431e430ab98d31ba62a1e0bc0fb2fd8d9236cb7dffda740de99c0b04f24da54ff0b5814dce9f81ff0c35a61add53c0734775996a11a7ba38318 + languageName: node + linkType: hard + +"babel-plugin-istanbul@npm:^6.1.1": + version: 6.1.1 + resolution: "babel-plugin-istanbul@npm:6.1.1" + dependencies: + "@babel/helper-plugin-utils": "npm:^7.0.0" + "@istanbuljs/load-nyc-config": "npm:^1.0.0" + "@istanbuljs/schema": "npm:^0.1.2" + istanbul-lib-instrument: "npm:^5.0.4" + test-exclude: "npm:^6.0.0" + checksum: 10c0/1075657feb705e00fd9463b329921856d3775d9867c5054b449317d39153f8fbcebd3e02ebf00432824e647faff3683a9ca0a941325ef1afe9b3c4dd51b24beb + languageName: node + linkType: hard + +"babel-plugin-jest-hoist@npm:^27.5.1": + version: 27.5.1 + resolution: "babel-plugin-jest-hoist@npm:27.5.1" + dependencies: + "@babel/template": "npm:^7.3.3" + "@babel/types": "npm:^7.3.3" + "@types/babel__core": "npm:^7.0.0" + "@types/babel__traverse": "npm:^7.0.6" + checksum: 10c0/2f08ebde32d9d2bffff75524bda44812995b3fcab6cbf259e1db52561b6c8d829f4688db77ef277054a362c9a61826e121a2a4853b0bf93d077ebb3b69685f8e + languageName: node + linkType: hard + +"babel-preset-current-node-syntax@npm:^1.0.0": + version: 1.1.0 + resolution: "babel-preset-current-node-syntax@npm:1.1.0" + dependencies: + "@babel/plugin-syntax-async-generators": "npm:^7.8.4" + "@babel/plugin-syntax-bigint": "npm:^7.8.3" + "@babel/plugin-syntax-class-properties": "npm:^7.12.13" + "@babel/plugin-syntax-class-static-block": "npm:^7.14.5" + "@babel/plugin-syntax-import-attributes": "npm:^7.24.7" + "@babel/plugin-syntax-import-meta": "npm:^7.10.4" + "@babel/plugin-syntax-json-strings": "npm:^7.8.3" + "@babel/plugin-syntax-logical-assignment-operators": "npm:^7.10.4" + "@babel/plugin-syntax-nullish-coalescing-operator": "npm:^7.8.3" + "@babel/plugin-syntax-numeric-separator": "npm:^7.10.4" + "@babel/plugin-syntax-object-rest-spread": "npm:^7.8.3" + "@babel/plugin-syntax-optional-catch-binding": "npm:^7.8.3" + "@babel/plugin-syntax-optional-chaining": "npm:^7.8.3" + "@babel/plugin-syntax-private-property-in-object": "npm:^7.14.5" + "@babel/plugin-syntax-top-level-await": "npm:^7.14.5" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 10c0/0b838d4412e3322cb4436f246e24e9c00bebcedfd8f00a2f51489db683bd35406bbd55a700759c28d26959c6e03f84dd6a1426f576f440267c1d7a73c5717281 + languageName: node + linkType: hard + +"babel-preset-jest@npm:^27.5.1": + version: 27.5.1 + resolution: "babel-preset-jest@npm:27.5.1" + dependencies: + babel-plugin-jest-hoist: "npm:^27.5.1" + babel-preset-current-node-syntax: "npm:^1.0.0" + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 10c0/fc2f7fd03d8cddb36e0a07a94f1bb1826f7d7dae1f3519ed170c7a5e56c863aecbdb3fd2b034674a53210088478f000318b06415bad511bcf203c5729e5dd079 + languageName: node + linkType: hard + +"babel-walk@npm:3.0.0-canary-5": + version: 3.0.0-canary-5 + resolution: "babel-walk@npm:3.0.0-canary-5" + dependencies: + "@babel/types": "npm:^7.9.6" + checksum: 10c0/17b689874d15c37714cedf6797dd9321dcb998d8e0dda9a8fe8c8bbbf128bbdeb8935cf56e8630d6b67eae76d2a0bc1e470751e082c3b0e30b80d58beafb5e64 + languageName: node + linkType: hard + +"balanced-match@npm:^1.0.0": + version: 1.0.2 + resolution: "balanced-match@npm:1.0.2" + checksum: 10c0/9308baf0a7e4838a82bbfd11e01b1cb0f0cf2893bc1676c27c2a8c0e70cbae1c59120c3268517a8ae7fb6376b4639ef81ca22582611dbee4ed28df945134aaee + languageName: node + linkType: hard + +"base64-js@npm:^1.3.1": + version: 1.5.1 + resolution: "base64-js@npm:1.5.1" + checksum: 10c0/f23823513b63173a001030fae4f2dabe283b99a9d324ade3ad3d148e218134676f1ee8568c877cd79ec1c53158dcf2d2ba527a97c606618928ba99dd930102bf + languageName: node + linkType: hard + +"bcrypt@npm:^5.1.1": + version: 5.1.1 + resolution: "bcrypt@npm:5.1.1" + dependencies: + "@mapbox/node-pre-gyp": "npm:^1.0.11" + node-addon-api: "npm:^5.0.0" + checksum: 10c0/743231158c866bddc46f25eb8e9617fe38bc1a6f5f3052aba35e361d349b7f8fb80e96b45c48a4c23c45c29967ccd11c81cf31166454fc0ab019801c336cab40 + languageName: node + linkType: hard + +"binary-extensions@npm:^2.0.0": + version: 2.3.0 + resolution: "binary-extensions@npm:2.3.0" + checksum: 10c0/75a59cafc10fb12a11d510e77110c6c7ae3f4ca22463d52487709ca7f18f69d886aa387557cc9864fbdb10153d0bdb4caacabf11541f55e89ed6e18d12ece2b5 + languageName: node + linkType: hard + +"bl@npm:^4.1.0": + version: 4.1.0 + resolution: "bl@npm:4.1.0" + dependencies: + buffer: "npm:^5.5.0" + inherits: "npm:^2.0.4" + readable-stream: "npm:^3.4.0" + checksum: 10c0/02847e1d2cb089c9dc6958add42e3cdeaf07d13f575973963335ac0fdece563a50ac770ac4c8fa06492d2dd276f6cc3b7f08c7cd9c7a7ad0f8d388b2a28def5f + languageName: node + linkType: hard + +"body-parser@npm:1.20.3": + version: 1.20.3 + resolution: "body-parser@npm:1.20.3" + dependencies: + bytes: "npm:3.1.2" + content-type: "npm:~1.0.5" + debug: "npm:2.6.9" + depd: "npm:2.0.0" + destroy: "npm:1.2.0" + http-errors: "npm:2.0.0" + iconv-lite: "npm:0.4.24" + on-finished: "npm:2.4.1" + qs: "npm:6.13.0" + raw-body: "npm:2.5.2" + type-is: "npm:~1.6.18" + unpipe: "npm:1.0.0" + checksum: 10c0/0a9a93b7518f222885498dcecaad528cf010dd109b071bf471c93def4bfe30958b83e03496eb9c1ad4896db543d999bb62be1a3087294162a88cfa1b42c16310 + languageName: node + linkType: hard + +"boolbase@npm:^1.0.0": + version: 1.0.0 + resolution: "boolbase@npm:1.0.0" + checksum: 10c0/e4b53deb4f2b85c52be0e21a273f2045c7b6a6ea002b0e139c744cb6f95e9ec044439a52883b0d74dedd1ff3da55ed140cfdddfed7fb0cccbed373de5dce1bcf + languageName: node + linkType: hard + +"brace-expansion@npm:^1.1.7": + version: 1.1.11 + resolution: "brace-expansion@npm:1.1.11" + dependencies: + balanced-match: "npm:^1.0.0" + concat-map: "npm:0.0.1" + checksum: 10c0/695a56cd058096a7cb71fb09d9d6a7070113c7be516699ed361317aca2ec169f618e28b8af352e02ab4233fb54eb0168460a40dc320bab0034b36ab59aaad668 + languageName: node + linkType: hard + +"brace-expansion@npm:^2.0.1": + version: 2.0.1 + resolution: "brace-expansion@npm:2.0.1" + dependencies: + balanced-match: "npm:^1.0.0" + checksum: 10c0/b358f2fe060e2d7a87aa015979ecea07f3c37d4018f8d6deb5bd4c229ad3a0384fe6029bb76cd8be63c81e516ee52d1a0673edbe2023d53a5191732ae3c3e49f + languageName: node + linkType: hard + +"braces@npm:^3.0.3, braces@npm:~3.0.2": + version: 3.0.3 + resolution: "braces@npm:3.0.3" + dependencies: + fill-range: "npm:^7.1.1" + checksum: 10c0/7c6dfd30c338d2997ba77500539227b9d1f85e388a5f43220865201e407e076783d0881f2d297b9f80951b4c957fcf0b51c1d2d24227631643c3f7c284b0aa04 + languageName: node + linkType: hard + +"browser-process-hrtime@npm:^1.0.0": + version: 1.0.0 + resolution: "browser-process-hrtime@npm:1.0.0" + checksum: 10c0/65da78e51e9d7fa5909147f269c54c65ae2e03d1cf797cc3cfbbe49f475578b8160ce4a76c36c1a2ffbff26c74f937d73096c508057491ddf1a6dfd11143f72d + languageName: node + linkType: hard + +"browserslist@npm:^4.24.0": + version: 4.24.3 + resolution: "browserslist@npm:4.24.3" + dependencies: + caniuse-lite: "npm:^1.0.30001688" + electron-to-chromium: "npm:^1.5.73" + node-releases: "npm:^2.0.19" + update-browserslist-db: "npm:^1.1.1" + bin: + browserslist: cli.js + checksum: 10c0/bab261ef7b6e1656a719a9fa31240ae7ce4d5ba68e479f6b11e348d819346ab4c0ff6f4821f43adcc9c193a734b186775a83b37979e70a69d182965909fe569a + languageName: node + linkType: hard + +"bs-logger@npm:0.x": + version: 0.2.6 + resolution: "bs-logger@npm:0.2.6" + dependencies: + fast-json-stable-stringify: "npm:2.x" + checksum: 10c0/80e89aaaed4b68e3374ce936f2eb097456a0dddbf11f75238dbd53140b1e39259f0d248a5089ed456f1158984f22191c3658d54a713982f676709fbe1a6fa5a0 + languageName: node + linkType: hard + +"bser@npm:2.1.1": + version: 2.1.1 + resolution: "bser@npm:2.1.1" + dependencies: + node-int64: "npm:^0.4.0" + checksum: 10c0/24d8dfb7b6d457d73f32744e678a60cc553e4ec0e9e1a01cf614b44d85c3c87e188d3cc78ef0442ce5032ee6818de20a0162ba1074725c0d08908f62ea979227 + languageName: node + linkType: hard + +"buffer-equal-constant-time@npm:1.0.1": + version: 1.0.1 + resolution: "buffer-equal-constant-time@npm:1.0.1" + checksum: 10c0/fb2294e64d23c573d0dd1f1e7a466c3e978fe94a4e0f8183937912ca374619773bef8e2aceb854129d2efecbbc515bbd0cc78d2734a3e3031edb0888531bbc8e + languageName: node + linkType: hard + +"buffer-from@npm:^1.0.0": + version: 1.1.2 + resolution: "buffer-from@npm:1.1.2" + checksum: 10c0/124fff9d66d691a86d3b062eff4663fe437a9d9ee4b47b1b9e97f5a5d14f6d5399345db80f796827be7c95e70a8e765dd404b7c3ff3b3324f98e9b0c8826cc34 + languageName: node + linkType: hard + +"buffer@npm:^5.5.0": + version: 5.7.1 + resolution: "buffer@npm:5.7.1" + dependencies: + base64-js: "npm:^1.3.1" + ieee754: "npm:^1.1.13" + checksum: 10c0/27cac81cff434ed2876058d72e7c4789d11ff1120ef32c9de48f59eab58179b66710c488987d295ae89a228f835fc66d088652dffeb8e3ba8659f80eb091d55e + languageName: node + linkType: hard + +"buffer@npm:^6.0.3": + version: 6.0.3 + resolution: "buffer@npm:6.0.3" + dependencies: + base64-js: "npm:^1.3.1" + ieee754: "npm:^1.2.1" + checksum: 10c0/2a905fbbcde73cc5d8bd18d1caa23715d5f83a5935867c2329f0ac06104204ba7947be098fe1317fbd8830e26090ff8e764f08cd14fefc977bb248c3487bcbd0 + languageName: node + linkType: hard + +"busboy@npm:^1.0.0": + version: 1.6.0 + resolution: "busboy@npm:1.6.0" + dependencies: + streamsearch: "npm:^1.1.0" + checksum: 10c0/fa7e836a2b82699b6e074393428b91ae579d4f9e21f5ac468e1b459a244341d722d2d22d10920cdd849743dbece6dca11d72de939fb75a7448825cf2babfba1f + languageName: node + linkType: hard + +"bytes@npm:3.1.2": + version: 3.1.2 + resolution: "bytes@npm:3.1.2" + checksum: 10c0/76d1c43cbd602794ad8ad2ae94095cddeb1de78c5dddaa7005c51af10b0176c69971a6d88e805a90c2b6550d76636e43c40d8427a808b8645ede885de4a0358e + languageName: node + linkType: hard + +"cacache@npm:^19.0.1": + version: 19.0.1 + resolution: "cacache@npm:19.0.1" + dependencies: + "@npmcli/fs": "npm:^4.0.0" + fs-minipass: "npm:^3.0.0" + glob: "npm:^10.2.2" + lru-cache: "npm:^10.0.1" + minipass: "npm:^7.0.3" + minipass-collect: "npm:^2.0.1" + minipass-flush: "npm:^1.0.5" + minipass-pipeline: "npm:^1.2.4" + p-map: "npm:^7.0.2" + ssri: "npm:^12.0.0" + tar: "npm:^7.4.3" + unique-filename: "npm:^4.0.0" + checksum: 10c0/01f2134e1bd7d3ab68be851df96c8d63b492b1853b67f2eecb2c37bb682d37cb70bb858a16f2f0554d3c0071be6dfe21456a1ff6fa4b7eed996570d6a25ffe9c + languageName: node + linkType: hard + +"call-bind-apply-helpers@npm:^1.0.0, call-bind-apply-helpers@npm:^1.0.1": + version: 1.0.1 + resolution: "call-bind-apply-helpers@npm:1.0.1" + dependencies: + es-errors: "npm:^1.3.0" + function-bind: "npm:^1.1.2" + checksum: 10c0/acb2ab68bf2718e68a3e895f0d0b73ccc9e45b9b6f210f163512ba76f91dab409eb8792f6dae188356f9095747512a3101646b3dea9d37fb8c7c6bf37796d18c + languageName: node + linkType: hard + +"call-bind@npm:^1.0.7": + version: 1.0.8 + resolution: "call-bind@npm:1.0.8" + dependencies: + call-bind-apply-helpers: "npm:^1.0.0" + es-define-property: "npm:^1.0.0" + get-intrinsic: "npm:^1.2.4" + set-function-length: "npm:^1.2.2" + checksum: 10c0/a13819be0681d915144467741b69875ae5f4eba8961eb0bf322aab63ec87f8250eb6d6b0dcbb2e1349876412a56129ca338592b3829ef4343527f5f18a0752d4 + languageName: node + linkType: hard + +"call-bound@npm:^1.0.2": + version: 1.0.3 + resolution: "call-bound@npm:1.0.3" + dependencies: + call-bind-apply-helpers: "npm:^1.0.1" + get-intrinsic: "npm:^1.2.6" + checksum: 10c0/45257b8e7621067304b30dbd638e856cac913d31e8e00a80d6cf172911acd057846572d0b256b45e652d515db6601e2974a1b1a040e91b4fc36fb3dd86fa69cf + languageName: node + linkType: hard + +"callsites@npm:^3.0.0": + version: 3.1.0 + resolution: "callsites@npm:3.1.0" + checksum: 10c0/fff92277400eb06c3079f9e74f3af120db9f8ea03bad0e84d9aede54bbe2d44a56cccb5f6cf12211f93f52306df87077ecec5b712794c5a9b5dac6d615a3f301 + languageName: node + linkType: hard + +"camel-case@npm:^3.0.0": + version: 3.0.0 + resolution: "camel-case@npm:3.0.0" + dependencies: + no-case: "npm:^2.2.0" + upper-case: "npm:^1.1.1" + checksum: 10c0/491c6bbf986b9d8355e12cca6beb719b44c2fe96e8526c09958a1b4e0dbb081a82ea59c13b5a6ccf9158ce5979cbe56a8a10d7322bfeed2d84725c6b89d8f934 + languageName: node + linkType: hard + +"camelcase@npm:^5.3.1": + version: 5.3.1 + resolution: "camelcase@npm:5.3.1" + checksum: 10c0/92ff9b443bfe8abb15f2b1513ca182d16126359ad4f955ebc83dc4ddcc4ef3fdd2c078bc223f2673dc223488e75c99b16cc4d056624374b799e6a1555cf61b23 + languageName: node + linkType: hard + +"camelcase@npm:^6.2.0": + version: 6.3.0 + resolution: "camelcase@npm:6.3.0" + checksum: 10c0/0d701658219bd3116d12da3eab31acddb3f9440790c0792e0d398f0a520a6a4058018e546862b6fba89d7ae990efaeb97da71e1913e9ebf5a8b5621a3d55c710 + languageName: node + linkType: hard + +"caniuse-lite@npm:^1.0.30001688": + version: 1.0.30001690 + resolution: "caniuse-lite@npm:1.0.30001690" + checksum: 10c0/646bd469032afa90400a84dec30a2b00a6eda62c03ead358117e3f884cda8aacec02ec058a6dbee5eaf9714f83e483b9b0eb4fb42febb8076569f5ca40f1d347 + languageName: node + linkType: hard + +"chalk@npm:4.1.2, chalk@npm:^4, chalk@npm:^4.0.0, chalk@npm:^4.0.2, chalk@npm:^4.1.0, chalk@npm:^4.1.1, chalk@npm:^4.1.2": + version: 4.1.2 + resolution: "chalk@npm:4.1.2" + dependencies: + ansi-styles: "npm:^4.1.0" + supports-color: "npm:^7.1.0" + checksum: 10c0/4a3fef5cc34975c898ffe77141450f679721df9dde00f6c304353fa9c8b571929123b26a0e4617bde5018977eb655b31970c297b91b63ee83bb82aeb04666880 + languageName: node + linkType: hard + +"chalk@npm:^3.0.0": + version: 3.0.0 + resolution: "chalk@npm:3.0.0" + dependencies: + ansi-styles: "npm:^4.1.0" + supports-color: "npm:^7.1.0" + checksum: 10c0/ee650b0a065b3d7a6fda258e75d3a86fc8e4effa55871da730a9e42ccb035bf5fd203525e5a1ef45ec2582ecc4f65b47eb11357c526b84dd29a14fb162c414d2 + languageName: node + linkType: hard + +"chalk@npm:^5.3.0": + version: 5.4.1 + resolution: "chalk@npm:5.4.1" + checksum: 10c0/b23e88132c702f4855ca6d25cb5538b1114343e41472d5263ee8a37cccfccd9c4216d111e1097c6a27830407a1dc81fecdf2a56f2c63033d4dbbd88c10b0dcef + languageName: node + linkType: hard + +"char-regex@npm:^1.0.2": + version: 1.0.2 + resolution: "char-regex@npm:1.0.2" + checksum: 10c0/57a09a86371331e0be35d9083ba429e86c4f4648ecbe27455dbfb343037c16ee6fdc7f6b61f433a57cc5ded5561d71c56a150e018f40c2ffb7bc93a26dae341e + languageName: node + linkType: hard + +"character-parser@npm:^2.2.0": + version: 2.2.0 + resolution: "character-parser@npm:2.2.0" + dependencies: + is-regex: "npm:^1.0.3" + checksum: 10c0/5a8d3eff2c912a6878c84e2ebf9d42524e858aa7e1a1c7e8bb79ab54da109ad008fe9057a9d2b3230541d7ff858eda98983a2ae15db57ba01af2e989d29e932e + languageName: node + linkType: hard + +"chardet@npm:^0.7.0": + version: 0.7.0 + resolution: "chardet@npm:0.7.0" + checksum: 10c0/96e4731b9ec8050cbb56ab684e8c48d6c33f7826b755802d14e3ebfdc51c57afeece3ea39bc6b09acc359e4363525388b915e16640c1378053820f5e70d0f27d + languageName: node + linkType: hard + +"cheerio-select@npm:^2.1.0": + version: 2.1.0 + resolution: "cheerio-select@npm:2.1.0" + dependencies: + boolbase: "npm:^1.0.0" + css-select: "npm:^5.1.0" + css-what: "npm:^6.1.0" + domelementtype: "npm:^2.3.0" + domhandler: "npm:^5.0.3" + domutils: "npm:^3.0.1" + checksum: 10c0/2242097e593919dba4aacb97d7b8275def8b9ec70b00aa1f43335456870cfc9e284eae2080bdc832ed232dabb9eefcf56c722d152da4a154813fb8814a55d282 + languageName: node + linkType: hard + +"cheerio@npm:1.0.0-rc.12": + version: 1.0.0-rc.12 + resolution: "cheerio@npm:1.0.0-rc.12" + dependencies: + cheerio-select: "npm:^2.1.0" + dom-serializer: "npm:^2.0.0" + domhandler: "npm:^5.0.3" + domutils: "npm:^3.0.1" + htmlparser2: "npm:^8.0.1" + parse5: "npm:^7.0.0" + parse5-htmlparser2-tree-adapter: "npm:^7.0.0" + checksum: 10c0/c85d2f2461e3f024345b78e0bb16ad8e41492356210470dd1e7d5a91391da9fcf6c0a7cb48a9ba8820330153f0cedb4d0a60c7af15d96ecdb3092299b9d9c0cc + languageName: node + linkType: hard + +"chokidar@npm:3.6.0, chokidar@npm:^3.0.0, chokidar@npm:^3.5.3": + version: 3.6.0 + resolution: "chokidar@npm:3.6.0" + dependencies: + anymatch: "npm:~3.1.2" + braces: "npm:~3.0.2" + fsevents: "npm:~2.3.2" + glob-parent: "npm:~5.1.2" + is-binary-path: "npm:~2.1.0" + is-glob: "npm:~4.0.1" + normalize-path: "npm:~3.0.0" + readdirp: "npm:~3.6.0" + dependenciesMeta: + fsevents: + optional: true + checksum: 10c0/8361dcd013f2ddbe260eacb1f3cb2f2c6f2b0ad118708a343a5ed8158941a39cb8fb1d272e0f389712e74ee90ce8ba864eece9e0e62b9705cb468a2f6d917462 + languageName: node + linkType: hard + +"chownr@npm:^2.0.0": + version: 2.0.0 + resolution: "chownr@npm:2.0.0" + checksum: 10c0/594754e1303672171cc04e50f6c398ae16128eb134a88f801bf5354fd96f205320f23536a045d9abd8b51024a149696e51231565891d4efdab8846021ecf88e6 + languageName: node + linkType: hard + +"chownr@npm:^3.0.0": + version: 3.0.0 + resolution: "chownr@npm:3.0.0" + checksum: 10c0/43925b87700f7e3893296c8e9c56cc58f926411cce3a6e5898136daaf08f08b9a8eb76d37d3267e707d0dcc17aed2e2ebdf5848c0c3ce95cf910a919935c1b10 + languageName: node + linkType: hard + +"chrome-trace-event@npm:^1.0.2": + version: 1.0.4 + resolution: "chrome-trace-event@npm:1.0.4" + checksum: 10c0/3058da7a5f4934b87cf6a90ef5fb68ebc5f7d06f143ed5a4650208e5d7acae47bc03ec844b29fbf5ba7e46e8daa6acecc878f7983a4f4bb7271593da91e61ff5 + languageName: node + linkType: hard + +"ci-info@npm:^3.2.0, ci-info@npm:^3.8.0": + version: 3.9.0 + resolution: "ci-info@npm:3.9.0" + checksum: 10c0/6f0109e36e111684291d46123d491bc4e7b7a1934c3a20dea28cba89f1d4a03acd892f5f6a81ed3855c38647e285a150e3c9ba062e38943bef57fee6c1554c3a + languageName: node + linkType: hard + +"cjs-module-lexer@npm:^1.0.0, cjs-module-lexer@npm:^1.2.2": + version: 1.4.1 + resolution: "cjs-module-lexer@npm:1.4.1" + checksum: 10c0/5a7d8279629c9ba8ccf38078c2fed75b7737973ced22b9b5a54180efa57fb2fe2bb7bec6aec55e3b8f3f5044f5d7b240347ad9bd285e7c3d0ee5b0a1d0504dfc + languageName: node + linkType: hard + +"class-transformer@npm:^0.5.1": + version: 0.5.1 + resolution: "class-transformer@npm:0.5.1" + checksum: 10c0/19809914e51c6db42c036166839906420bb60367df14e15f49c45c8c1231bf25ae661ebe94736ee29cc688b77101ef851a8acca299375cc52fc141b64acde18a + languageName: node + linkType: hard + +"class-validator@npm:^0.14.1": + version: 0.14.1 + resolution: "class-validator@npm:0.14.1" + dependencies: + "@types/validator": "npm:^13.11.8" + libphonenumber-js: "npm:^1.10.53" + validator: "npm:^13.9.0" + checksum: 10c0/946e914e47548b5081449c720ea6a4877bac63dc960e14fca4b990b56e64efe3802d12f07ec22d6420c290245b72ea2d646939239f2a3b597794e6c4c2a4f2ae + languageName: node + linkType: hard + +"clean-css@npm:^4.2.1": + version: 4.2.4 + resolution: "clean-css@npm:4.2.4" + dependencies: + source-map: "npm:~0.6.0" + checksum: 10c0/0e41795fdc9d65e5e17a3b0016d90bf2a653e3a680829b5bcebdbab48604cfe36d96d8af6346338d2c2aca8aa9af024ac4fb752ac3eb5b71bef68a34a129b58a + languageName: node + linkType: hard + +"cli-cursor@npm:^3.1.0": + version: 3.1.0 + resolution: "cli-cursor@npm:3.1.0" + dependencies: + restore-cursor: "npm:^3.1.0" + checksum: 10c0/92a2f98ff9037d09be3dfe1f0d749664797fb674bf388375a2207a1203b69d41847abf16434203e0089212479e47a358b13a0222ab9fccfe8e2644a7ccebd111 + languageName: node + linkType: hard + +"cli-highlight@npm:^2.1.11": + version: 2.1.11 + resolution: "cli-highlight@npm:2.1.11" + dependencies: + chalk: "npm:^4.0.0" + highlight.js: "npm:^10.7.1" + mz: "npm:^2.4.0" + parse5: "npm:^5.1.1" + parse5-htmlparser2-tree-adapter: "npm:^6.0.0" + yargs: "npm:^16.0.0" + bin: + highlight: bin/highlight + checksum: 10c0/b5b4af3b968aa9df77eee449a400fbb659cf47c4b03a395370bd98d5554a00afaa5819b41a9a8a1ca0d37b0b896a94e57c65289b37359a25b700b1f56eb04852 + languageName: node + linkType: hard + +"cli-spinners@npm:^2.5.0": + version: 2.9.2 + resolution: "cli-spinners@npm:2.9.2" + checksum: 10c0/907a1c227ddf0d7a101e7ab8b300affc742ead4b4ebe920a5bf1bc6d45dce2958fcd195eb28fa25275062fe6fa9b109b93b63bc8033396ed3bcb50297008b3a3 + languageName: node + linkType: hard + +"cli-table3@npm:0.6.5": + version: 0.6.5 + resolution: "cli-table3@npm:0.6.5" + dependencies: + "@colors/colors": "npm:1.5.0" + string-width: "npm:^4.2.0" + dependenciesMeta: + "@colors/colors": + optional: true + checksum: 10c0/d7cc9ed12212ae68241cc7a3133c52b844113b17856e11f4f81308acc3febcea7cc9fd298e70933e294dd642866b29fd5d113c2c098948701d0c35f09455de78 + languageName: node + linkType: hard + +"cli-width@npm:^3.0.0": + version: 3.0.0 + resolution: "cli-width@npm:3.0.0" + checksum: 10c0/125a62810e59a2564268c80fdff56c23159a7690c003e34aeb2e68497dccff26911998ff49c33916fcfdf71e824322cc3953e3f7b48b27267c7a062c81348a9a + languageName: node + linkType: hard + +"cli-width@npm:^4.1.0": + version: 4.1.0 + resolution: "cli-width@npm:4.1.0" + checksum: 10c0/1fbd56413578f6117abcaf858903ba1f4ad78370a4032f916745fa2c7e390183a9d9029cf837df320b0fdce8137668e522f60a30a5f3d6529ff3872d265a955f + languageName: node + linkType: hard + +"cliui@npm:^7.0.2": + version: 7.0.4 + resolution: "cliui@npm:7.0.4" + dependencies: + string-width: "npm:^4.2.0" + strip-ansi: "npm:^6.0.0" + wrap-ansi: "npm:^7.0.0" + checksum: 10c0/6035f5daf7383470cef82b3d3db00bec70afb3423538c50394386ffbbab135e26c3689c41791f911fa71b62d13d3863c712fdd70f0fbdffd938a1e6fd09aac00 + languageName: node + linkType: hard + +"cliui@npm:^8.0.1": + version: 8.0.1 + resolution: "cliui@npm:8.0.1" + dependencies: + string-width: "npm:^4.2.0" + strip-ansi: "npm:^6.0.1" + wrap-ansi: "npm:^7.0.0" + checksum: 10c0/4bda0f09c340cbb6dfdc1ed508b3ca080f12992c18d68c6be4d9cf51756033d5266e61ec57529e610dacbf4da1c634423b0c1b11037709cc6b09045cbd815df5 + languageName: node + linkType: hard + +"clone@npm:^1.0.2": + version: 1.0.4 + resolution: "clone@npm:1.0.4" + checksum: 10c0/2176952b3649293473999a95d7bebfc9dc96410f6cbd3d2595cf12fd401f63a4bf41a7adbfd3ab2ff09ed60cb9870c58c6acdd18b87767366fabfc163700f13b + languageName: node + linkType: hard + +"co@npm:^4.6.0": + version: 4.6.0 + resolution: "co@npm:4.6.0" + checksum: 10c0/c0e85ea0ca8bf0a50cbdca82efc5af0301240ca88ebe3644a6ffb8ffe911f34d40f8fbcf8f1d52c5ddd66706abd4d3bfcd64259f1e8e2371d4f47573b0dc8c28 + languageName: node + linkType: hard + +"collect-v8-coverage@npm:^1.0.0": + version: 1.0.2 + resolution: "collect-v8-coverage@npm:1.0.2" + checksum: 10c0/ed7008e2e8b6852c5483b444a3ae6e976e088d4335a85aa0a9db2861c5f1d31bd2d7ff97a60469b3388deeba661a619753afbe201279fb159b4b9548ab8269a1 + languageName: node + linkType: hard + +"color-convert@npm:^2.0.1": + version: 2.0.1 + resolution: "color-convert@npm:2.0.1" + dependencies: + color-name: "npm:~1.1.4" + checksum: 10c0/37e1150172f2e311fe1b2df62c6293a342ee7380da7b9cfdba67ea539909afbd74da27033208d01d6d5cfc65ee7868a22e18d7e7648e004425441c0f8a15a7d7 + languageName: node + linkType: hard + +"color-name@npm:~1.1.4": + version: 1.1.4 + resolution: "color-name@npm:1.1.4" + checksum: 10c0/a1a3f914156960902f46f7f56bc62effc6c94e84b2cae157a526b1c1f74b677a47ec602bf68a61abfa2b42d15b7c5651c6dbe72a43af720bc588dff885b10f95 + languageName: node + linkType: hard + +"color-support@npm:^1.1.2": + version: 1.1.3 + resolution: "color-support@npm:1.1.3" + bin: + color-support: bin.js + checksum: 10c0/8ffeaa270a784dc382f62d9be0a98581db43e11eee301af14734a6d089bd456478b1a8b3e7db7ca7dc5b18a75f828f775c44074020b51c05fc00e6d0992b1cc6 + languageName: node + linkType: hard + +"combined-stream@npm:^1.0.8": + version: 1.0.8 + resolution: "combined-stream@npm:1.0.8" + dependencies: + delayed-stream: "npm:~1.0.0" + checksum: 10c0/0dbb829577e1b1e839fa82b40c07ffaf7de8a09b935cadd355a73652ae70a88b4320db322f6634a4ad93424292fa80973ac6480986247f1734a1137debf271d5 + languageName: node + linkType: hard + +"commander@npm:4.1.1": + version: 4.1.1 + resolution: "commander@npm:4.1.1" + checksum: 10c0/84a76c08fe6cc08c9c93f62ac573d2907d8e79138999312c92d4155bc2325d487d64d13f669b2000c9f8caf70493c1be2dac74fec3c51d5a04f8bc3ae1830bab + languageName: node + linkType: hard + +"commander@npm:^10.0.0": + version: 10.0.1 + resolution: "commander@npm:10.0.1" + checksum: 10c0/53f33d8927758a911094adadda4b2cbac111a5b377d8706700587650fd8f45b0bbe336de4b5c3fe47fd61f420a3d9bd452b6e0e6e5600a7e74d7bf0174f6efe3 + languageName: node + linkType: hard + +"commander@npm:^2.19.0, commander@npm:^2.20.0": + version: 2.20.3 + resolution: "commander@npm:2.20.3" + checksum: 10c0/74c781a5248c2402a0a3e966a0a2bba3c054aad144f5c023364be83265e796b20565aa9feff624132ff629aa64e16999fa40a743c10c12f7c61e96a794b99288 + languageName: node + linkType: hard + +"commander@npm:^6.1.0": + version: 6.2.1 + resolution: "commander@npm:6.2.1" + checksum: 10c0/85748abd9d18c8bc88febed58b98f66b7c591d9b5017cad459565761d7b29ca13b7783ea2ee5ce84bf235897333706c4ce29adf1ce15c8252780e7000e2ce9ea + languageName: node + linkType: hard + +"comment-json@npm:4.2.5": + version: 4.2.5 + resolution: "comment-json@npm:4.2.5" + dependencies: + array-timsort: "npm:^1.0.3" + core-util-is: "npm:^1.0.3" + esprima: "npm:^4.0.1" + has-own-prop: "npm:^2.0.0" + repeat-string: "npm:^1.6.1" + checksum: 10c0/e22f13f18fcc484ac33c8bc02a3d69c3f9467ae5063fdfb3df7735f83a8d9a2cab6a32b7d4a0c53123413a9577de8e17c8cc88369c433326799558febb34ef9c + languageName: node + linkType: hard + +"component-emitter@npm:^1.3.0": + version: 1.3.1 + resolution: "component-emitter@npm:1.3.1" + checksum: 10c0/e4900b1b790b5e76b8d71b328da41482118c0f3523a516a41be598dc2785a07fd721098d9bf6e22d89b19f4fa4e1025160dc00317ea111633a3e4f75c2b86032 + languageName: node + linkType: hard + +"concat-map@npm:0.0.1": + version: 0.0.1 + resolution: "concat-map@npm:0.0.1" + checksum: 10c0/c996b1cfdf95b6c90fee4dae37e332c8b6eb7d106430c17d538034c0ad9a1630cb194d2ab37293b1bdd4d779494beee7786d586a50bd9376fd6f7bcc2bd4c98f + languageName: node + linkType: hard + +"concat-stream@npm:^1.5.2": + version: 1.6.2 + resolution: "concat-stream@npm:1.6.2" + dependencies: + buffer-from: "npm:^1.0.0" + inherits: "npm:^2.0.3" + readable-stream: "npm:^2.2.2" + typedarray: "npm:^0.0.6" + checksum: 10c0/2e9864e18282946dabbccb212c5c7cec0702745e3671679eb8291812ca7fd12023f7d8cb36493942a62f770ac96a7f90009dc5c82ad69893438371720fa92617 + languageName: node + linkType: hard + +"config-chain@npm:^1.1.13": + version: 1.1.13 + resolution: "config-chain@npm:1.1.13" + dependencies: + ini: "npm:^1.3.4" + proto-list: "npm:~1.2.1" + checksum: 10c0/39d1df18739d7088736cc75695e98d7087aea43646351b028dfabd5508d79cf6ef4c5bcd90471f52cd87ae470d1c5490c0a8c1a292fbe6ee9ff688061ea0963e + languageName: node + linkType: hard + +"consola@npm:^2.15.0": + version: 2.15.3 + resolution: "consola@npm:2.15.3" + checksum: 10c0/34a337e6b4a1349ee4d7b4c568484344418da8fdb829d7d71bfefcd724f608f273987633b6eef465e8de510929907a092e13cb7a28a5d3acb3be446fcc79fd5e + languageName: node + linkType: hard + +"console-control-strings@npm:^1.0.0, console-control-strings@npm:^1.1.0": + version: 1.1.0 + resolution: "console-control-strings@npm:1.1.0" + checksum: 10c0/7ab51d30b52d461412cd467721bb82afe695da78fff8f29fe6f6b9cbaac9a2328e27a22a966014df9532100f6dd85370460be8130b9c677891ba36d96a343f50 + languageName: node + linkType: hard + +"constantinople@npm:^4.0.1": + version: 4.0.1 + resolution: "constantinople@npm:4.0.1" + dependencies: + "@babel/parser": "npm:^7.6.0" + "@babel/types": "npm:^7.6.1" + checksum: 10c0/15129adef19b1af2c3ade8bd38f97c34781bf461472a30ab414384b28d072be83070c8d2175787c045ef7c222c415101ae609936e7903427796a0c0eca8449fd + languageName: node + linkType: hard + +"content-disposition@npm:0.5.4": + version: 0.5.4 + resolution: "content-disposition@npm:0.5.4" + dependencies: + safe-buffer: "npm:5.2.1" + checksum: 10c0/bac0316ebfeacb8f381b38285dc691c9939bf0a78b0b7c2d5758acadad242d04783cee5337ba7d12a565a19075af1b3c11c728e1e4946de73c6ff7ce45f3f1bb + languageName: node + linkType: hard + +"content-type@npm:~1.0.4, content-type@npm:~1.0.5": + version: 1.0.5 + resolution: "content-type@npm:1.0.5" + checksum: 10c0/b76ebed15c000aee4678c3707e0860cb6abd4e680a598c0a26e17f0bfae723ec9cc2802f0ff1bc6e4d80603719010431d2231018373d4dde10f9ccff9dadf5af + languageName: node + linkType: hard + +"convert-source-map@npm:^1.4.0, convert-source-map@npm:^1.6.0": + version: 1.9.0 + resolution: "convert-source-map@npm:1.9.0" + checksum: 10c0/281da55454bf8126cbc6625385928c43479f2060984180c42f3a86c8b8c12720a24eac260624a7d1e090004028d2dee78602330578ceec1a08e27cb8bb0a8a5b + languageName: node + linkType: hard + +"convert-source-map@npm:^2.0.0": + version: 2.0.0 + resolution: "convert-source-map@npm:2.0.0" + checksum: 10c0/8f2f7a27a1a011cc6cc88cc4da2d7d0cfa5ee0369508baae3d98c260bb3ac520691464e5bbe4ae7cdf09860c1d69ecc6f70c63c6e7c7f7e3f18ec08484dc7d9b + languageName: node + linkType: hard + +"cookie-signature@npm:1.0.6": + version: 1.0.6 + resolution: "cookie-signature@npm:1.0.6" + checksum: 10c0/b36fd0d4e3fef8456915fcf7742e58fbfcc12a17a018e0eb9501c9d5ef6893b596466f03b0564b81af29ff2538fd0aa4b9d54fe5ccbfb4c90ea50ad29fe2d221 + languageName: node + linkType: hard + +"cookie@npm:0.7.1": + version: 0.7.1 + resolution: "cookie@npm:0.7.1" + checksum: 10c0/5de60c67a410e7c8dc8a46a4b72eb0fe925871d057c9a5d2c0e8145c4270a4f81076de83410c4d397179744b478e33cd80ccbcc457abf40a9409ad27dcd21dde + languageName: node + linkType: hard + +"cookie@npm:^0.5.0": + version: 0.5.0 + resolution: "cookie@npm:0.5.0" + checksum: 10c0/c01ca3ef8d7b8187bae434434582288681273b5a9ed27521d4d7f9f7928fe0c920df0decd9f9d3bbd2d14ac432b8c8cf42b98b3bdd5bfe0e6edddeebebe8b61d + languageName: node + linkType: hard + +"cookiejar@npm:^2.1.4": + version: 2.1.4 + resolution: "cookiejar@npm:2.1.4" + checksum: 10c0/2dae55611c6e1678f34d93984cbd4bda58f4fe3e5247cc4993f4a305cd19c913bbaf325086ed952e892108115073a747596453d3dc1c34947f47f731818b8ad1 + languageName: node + linkType: hard + +"core-util-is@npm:^1.0.3, core-util-is@npm:~1.0.0": + version: 1.0.3 + resolution: "core-util-is@npm:1.0.3" + checksum: 10c0/90a0e40abbddfd7618f8ccd63a74d88deea94e77d0e8dbbea059fa7ebebb8fbb4e2909667fe26f3a467073de1a542ebe6ae4c73a73745ac5833786759cd906c9 + languageName: node + linkType: hard + +"cors@npm:2.8.5": + version: 2.8.5 + resolution: "cors@npm:2.8.5" + dependencies: + object-assign: "npm:^4" + vary: "npm:^1" + checksum: 10c0/373702b7999409922da80de4a61938aabba6929aea5b6fd9096fefb9e8342f626c0ebd7507b0e8b0b311380744cc985f27edebc0a26e0ddb784b54e1085de761 + languageName: node + linkType: hard + +"cosmiconfig@npm:^8.2.0": + version: 8.3.6 + resolution: "cosmiconfig@npm:8.3.6" + dependencies: + import-fresh: "npm:^3.3.0" + js-yaml: "npm:^4.1.0" + parse-json: "npm:^5.2.0" + path-type: "npm:^4.0.0" + peerDependencies: + typescript: ">=4.9.5" + peerDependenciesMeta: + typescript: + optional: true + checksum: 10c0/0382a9ed13208f8bfc22ca2f62b364855207dffdb73dc26e150ade78c3093f1cf56172df2dd460c8caf2afa91c0ed4ec8a88c62f8f9cd1cf423d26506aa8797a + languageName: node + linkType: hard + +"create-require@npm:^1.1.0": + version: 1.1.1 + resolution: "create-require@npm:1.1.1" + checksum: 10c0/157cbc59b2430ae9a90034a5f3a1b398b6738bf510f713edc4d4e45e169bc514d3d99dd34d8d01ca7ae7830b5b8b537e46ae8f3c8f932371b0875c0151d7ec91 + languageName: node + linkType: hard + +"cross-spawn@npm:^6.0.0": + version: 6.0.6 + resolution: "cross-spawn@npm:6.0.6" + dependencies: + nice-try: "npm:^1.0.4" + path-key: "npm:^2.0.1" + semver: "npm:^5.5.0" + shebang-command: "npm:^1.2.0" + which: "npm:^1.2.9" + checksum: 10c0/bf61fb890e8635102ea9bce050515cf915ff6a50ccaa0b37a17dc82fded0fb3ed7af5478b9367b86baee19127ad86af4be51d209f64fd6638c0862dca185fe1d + languageName: node + linkType: hard + +"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": + version: 7.0.6 + resolution: "cross-spawn@npm:7.0.6" + dependencies: + path-key: "npm:^3.1.0" + shebang-command: "npm:^2.0.0" + which: "npm:^2.0.1" + checksum: 10c0/053ea8b2135caff68a9e81470e845613e374e7309a47731e81639de3eaeb90c3d01af0e0b44d2ab9d50b43467223b88567dfeb3262db942dc063b9976718ffc1 + languageName: node + linkType: hard + +"css-select@npm:^5.1.0": + version: 5.1.0 + resolution: "css-select@npm:5.1.0" + dependencies: + boolbase: "npm:^1.0.0" + css-what: "npm:^6.1.0" + domhandler: "npm:^5.0.2" + domutils: "npm:^3.0.1" + nth-check: "npm:^2.0.1" + checksum: 10c0/551c60dba5b54054741032c1793b5734f6ba45e23ae9e82761a3c0ed1acbb8cfedfa443aaba3a3c1a54cac12b456d2012a09d2cd5f0e82e430454c1b9d84d500 + languageName: node + linkType: hard + +"css-what@npm:^6.1.0": + version: 6.1.0 + resolution: "css-what@npm:6.1.0" + checksum: 10c0/a09f5a6b14ba8dcf57ae9a59474722e80f20406c53a61e9aedb0eedc693b135113ffe2983f4efc4b5065ae639442e9ae88df24941ef159c218b231011d733746 + languageName: node + linkType: hard + +"cssom@npm:^0.4.4": + version: 0.4.4 + resolution: "cssom@npm:0.4.4" + checksum: 10c0/0d4fc70255ea3afbd4add79caffa3b01720929da91105340600d8c0f06c31716f933c6314c3d43b62b57c9637bc2eb35296a9e2db427e8b572ee38a4be2b5f82 + languageName: node + linkType: hard + +"cssom@npm:~0.3.6": + version: 0.3.8 + resolution: "cssom@npm:0.3.8" + checksum: 10c0/d74017b209440822f9e24d8782d6d2e808a8fdd58fa626a783337222fe1c87a518ba944d4c88499031b4786e68772c99dfae616638d71906fe9f203aeaf14411 + languageName: node + linkType: hard + +"cssstyle@npm:^2.3.0": + version: 2.3.0 + resolution: "cssstyle@npm:2.3.0" + dependencies: + cssom: "npm:~0.3.6" + checksum: 10c0/863400da2a458f73272b9a55ba7ff05de40d850f22eb4f37311abebd7eff801cf1cd2fb04c4c92b8c3daed83fe766e52e4112afb7bc88d86c63a9c2256a7d178 + languageName: node + linkType: hard + +"data-urls@npm:^2.0.0": + version: 2.0.0 + resolution: "data-urls@npm:2.0.0" + dependencies: + abab: "npm:^2.0.3" + whatwg-mimetype: "npm:^2.3.0" + whatwg-url: "npm:^8.0.0" + checksum: 10c0/1246442178eb756afb1d99e54669a119eafb3e69c73300d14089687c50c64f9feadd93c973f496224a12f89daa94267a6114aecd70e9b279c09d908c5be44d01 + languageName: node + linkType: hard + +"dayjs@npm:^1.11.9": + version: 1.11.13 + resolution: "dayjs@npm:1.11.13" + checksum: 10c0/a3caf6ac8363c7dade9d1ee797848ddcf25c1ace68d9fe8678ecf8ba0675825430de5d793672ec87b24a69bf04a1544b176547b2539982275d5542a7955f35b7 + languageName: node + linkType: hard + +"debug@npm:2.6.9": + version: 2.6.9 + resolution: "debug@npm:2.6.9" + dependencies: + ms: "npm:2.0.0" + checksum: 10c0/121908fb839f7801180b69a7e218a40b5a0b718813b886b7d6bdb82001b931c938e2941d1e4450f33a1b1df1da653f5f7a0440c197f29fbf8a6e9d45ff6ef589 + languageName: node + linkType: hard + +"debug@npm:4, debug@npm:^4.0.0, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4, debug@npm:^4.3.5": + version: 4.4.0 + resolution: "debug@npm:4.4.0" + dependencies: + ms: "npm:^2.1.3" + peerDependenciesMeta: + supports-color: + optional: true + checksum: 10c0/db94f1a182bf886f57b4755f85b3a74c39b5114b9377b7ab375dc2cfa3454f09490cc6c30f829df3fc8042bc8b8995f6567ce5cd96f3bc3688bd24027197d9de + languageName: node + linkType: hard + +"debug@npm:^3.2.7": + version: 3.2.7 + resolution: "debug@npm:3.2.7" + dependencies: + ms: "npm:^2.1.1" + checksum: 10c0/37d96ae42cbc71c14844d2ae3ba55adf462ec89fd3a999459dec3833944cd999af6007ff29c780f1c61153bcaaf2c842d1e4ce1ec621e4fc4923244942e4a02a + languageName: node + linkType: hard + +"decimal.js@npm:^10.2.1": + version: 10.4.3 + resolution: "decimal.js@npm:10.4.3" + checksum: 10c0/6d60206689ff0911f0ce968d40f163304a6c1bc739927758e6efc7921cfa630130388966f16bf6ef6b838cb33679fbe8e7a78a2f3c478afce841fd55ac8fb8ee + languageName: node + linkType: hard + +"dedent@npm:^0.7.0": + version: 0.7.0 + resolution: "dedent@npm:0.7.0" + checksum: 10c0/7c3aa00ddfe3e5fcd477958e156156a5137e3bb6ff1493ca05edff4decf29a90a057974cc77e75951f8eb801c1816cb45aea1f52d628cdd000b82b36ab839d1b + languageName: node + linkType: hard + +"deep-extend@npm:^0.6.0": + version: 0.6.0 + resolution: "deep-extend@npm:0.6.0" + checksum: 10c0/1c6b0abcdb901e13a44c7d699116d3d4279fdb261983122a3783e7273844d5f2537dc2e1c454a23fcf645917f93fbf8d07101c1d03c015a87faa662755212566 + languageName: node + linkType: hard + +"deep-is@npm:^0.1.3": + version: 0.1.4 + resolution: "deep-is@npm:0.1.4" + checksum: 10c0/7f0ee496e0dff14a573dc6127f14c95061b448b87b995fc96c017ce0a1e66af1675e73f1d6064407975bc4ea6ab679497a29fff7b5b9c4e99cb10797c1ad0b4c + languageName: node + linkType: hard + +"deepmerge@npm:^3.2.0": + version: 3.3.0 + resolution: "deepmerge@npm:3.3.0" + checksum: 10c0/143bc6b6cd8a1216565c61c0fe38bf43fe691fb6876fb3f5727c6e323defe4e947c68fbab9957e17e837c5594a56af885c5834d23dc6cf2c41bef97090005104 + languageName: node + linkType: hard + +"deepmerge@npm:^4.2.2, deepmerge@npm:^4.3.1": + version: 4.3.1 + resolution: "deepmerge@npm:4.3.1" + checksum: 10c0/e53481aaf1aa2c4082b5342be6b6d8ad9dfe387bc92ce197a66dea08bd4265904a087e75e464f14d1347cf2ac8afe1e4c16b266e0561cc5df29382d3c5f80044 + languageName: node + linkType: hard + +"defaults@npm:^1.0.3": + version: 1.0.4 + resolution: "defaults@npm:1.0.4" + dependencies: + clone: "npm:^1.0.2" + checksum: 10c0/9cfbe498f5c8ed733775db62dfd585780387d93c17477949e1670bfcfb9346e0281ce8c4bf9f4ac1fc0f9b851113bd6dc9e41182ea1644ccd97de639fa13c35a + languageName: node + linkType: hard + +"define-data-property@npm:^1.1.4": + version: 1.1.4 + resolution: "define-data-property@npm:1.1.4" + dependencies: + es-define-property: "npm:^1.0.0" + es-errors: "npm:^1.3.0" + gopd: "npm:^1.0.1" + checksum: 10c0/dea0606d1483eb9db8d930d4eac62ca0fa16738b0b3e07046cddfacf7d8c868bbe13fa0cb263eb91c7d0d527960dc3f2f2471a69ed7816210307f6744fe62e37 + languageName: node + linkType: hard + +"delayed-stream@npm:~1.0.0": + version: 1.0.0 + resolution: "delayed-stream@npm:1.0.0" + checksum: 10c0/d758899da03392e6712f042bec80aa293bbe9e9ff1b2634baae6a360113e708b91326594c8a486d475c69d6259afb7efacdc3537bfcda1c6c648e390ce601b19 + languageName: node + linkType: hard + +"delegates@npm:^1.0.0": + version: 1.0.0 + resolution: "delegates@npm:1.0.0" + checksum: 10c0/ba05874b91148e1db4bf254750c042bf2215febd23a6d3cda2e64896aef79745fbd4b9996488bd3cafb39ce19dbce0fd6e3b6665275638befffe1c9b312b91b5 + languageName: node + linkType: hard + +"depd@npm:2.0.0": + version: 2.0.0 + resolution: "depd@npm:2.0.0" + checksum: 10c0/58bd06ec20e19529b06f7ad07ddab60e504d9e0faca4bd23079fac2d279c3594334d736508dc350e06e510aba5e22e4594483b3a6562ce7c17dd797f4cc4ad2c + languageName: node + linkType: hard + +"destroy@npm:1.2.0": + version: 1.2.0 + resolution: "destroy@npm:1.2.0" + checksum: 10c0/bd7633942f57418f5a3b80d5cb53898127bcf53e24cdf5d5f4396be471417671f0fee48a4ebe9a1e9defbde2a31280011af58a57e090ff822f589b443ed4e643 + languageName: node + linkType: hard + +"detect-indent@npm:^6.0.0": + version: 6.1.0 + resolution: "detect-indent@npm:6.1.0" + checksum: 10c0/dd83cdeda9af219cf77f5e9a0dc31d828c045337386cfb55ce04fad94ba872ee7957336834154f7647b89b899c3c7acc977c57a79b7c776b506240993f97acc7 + languageName: node + linkType: hard + +"detect-libc@npm:^2.0.0": + version: 2.0.3 + resolution: "detect-libc@npm:2.0.3" + checksum: 10c0/88095bda8f90220c95f162bf92cad70bd0e424913e655c20578600e35b91edc261af27531cf160a331e185c0ced93944bc7e09939143225f56312d7fd800fdb7 + languageName: node + linkType: hard + +"detect-newline@npm:^3.0.0, detect-newline@npm:^3.1.0": + version: 3.1.0 + resolution: "detect-newline@npm:3.1.0" + checksum: 10c0/c38cfc8eeb9fda09febb44bcd85e467c970d4e3bf526095394e5a4f18bc26dd0cf6b22c69c1fa9969261521c593836db335c2795218f6d781a512aea2fb8209d + languageName: node + linkType: hard + +"detect-node@npm:2.1.0, detect-node@npm:^2.0.4": + version: 2.1.0 + resolution: "detect-node@npm:2.1.0" + checksum: 10c0/f039f601790f2e9d4654e499913259a798b1f5246ae24f86ab5e8bd4aaf3bce50484234c494f11fb00aecb0c6e2733aa7b1cf3f530865640b65fbbd65b2c4e09 + languageName: node + linkType: hard + +"dezalgo@npm:^1.0.4": + version: 1.0.4 + resolution: "dezalgo@npm:1.0.4" + dependencies: + asap: "npm:^2.0.0" + wrappy: "npm:1" + checksum: 10c0/8a870ed42eade9a397e6141fe5c025148a59ed52f1f28b1db5de216b4d57f0af7a257070c3af7ce3d5508c1ce9dd5009028a76f4b2cc9370dc56551d2355fad8 + languageName: node + linkType: hard + +"diff-sequences@npm:^27.5.1": + version: 27.5.1 + resolution: "diff-sequences@npm:27.5.1" + checksum: 10c0/a52566d891b89a666f48ba69f54262fa8293ae6264ae04da82c7bf3b6661cba75561de0729f18463179d56003cc0fd69aa09845f2c2cd7a353b1ec1e1a96beb9 + languageName: node + linkType: hard + +"diff-sequences@npm:^29.6.3": + version: 29.6.3 + resolution: "diff-sequences@npm:29.6.3" + checksum: 10c0/32e27ac7dbffdf2fb0eb5a84efd98a9ad084fbabd5ac9abb8757c6770d5320d2acd172830b28c4add29bb873d59420601dfc805ac4064330ce59b1adfd0593b2 + languageName: node + linkType: hard + +"diff@npm:^4.0.1": + version: 4.0.2 + resolution: "diff@npm:4.0.2" + checksum: 10c0/81b91f9d39c4eaca068eb0c1eb0e4afbdc5bb2941d197f513dd596b820b956fef43485876226d65d497bebc15666aa2aa82c679e84f65d5f2bfbf14ee46e32c1 + languageName: node + linkType: hard + +"dir-glob@npm:^3.0.1": + version: 3.0.1 + resolution: "dir-glob@npm:3.0.1" + dependencies: + path-type: "npm:^4.0.0" + checksum: 10c0/dcac00920a4d503e38bb64001acb19df4efc14536ada475725e12f52c16777afdee4db827f55f13a908ee7efc0cb282e2e3dbaeeb98c0993dd93d1802d3bf00c + languageName: node + linkType: hard + +"display-notification@npm:2.0.0": + version: 2.0.0 + resolution: "display-notification@npm:2.0.0" + dependencies: + escape-string-applescript: "npm:^1.0.0" + run-applescript: "npm:^3.0.0" + checksum: 10c0/24a93b8d8f47812f26aa54fe27ffd10b7495ee824425e0a3c45abbd9df243452f28addb9a0d712fa77566f6787b682ac2757071bf6f0a018b49f9d39ca36efed + languageName: node + linkType: hard + +"doctrine@npm:^3.0.0": + version: 3.0.0 + resolution: "doctrine@npm:3.0.0" + dependencies: + esutils: "npm:^2.0.2" + checksum: 10c0/c96bdccabe9d62ab6fea9399fdff04a66e6563c1d6fb3a3a063e8d53c3bb136ba63e84250bbf63d00086a769ad53aef92d2bd483f03f837fc97b71cbee6b2520 + languageName: node + linkType: hard + +"doctypes@npm:^1.1.0": + version: 1.1.0 + resolution: "doctypes@npm:1.1.0" + checksum: 10c0/b3f9d597ad8b9ac6aeba9d64df61f0098174f7570e3d34f7ee245ebc736c7bee122d9738a18e22010b98983fd9a340d63043d3841f02d8a7742a2d96d2c72610 + languageName: node + linkType: hard + +"dom-serializer@npm:^1.0.1": + version: 1.4.1 + resolution: "dom-serializer@npm:1.4.1" + dependencies: + domelementtype: "npm:^2.0.1" + domhandler: "npm:^4.2.0" + entities: "npm:^2.0.0" + checksum: 10c0/67d775fa1ea3de52035c98168ddcd59418356943b5eccb80e3c8b3da53adb8e37edb2cc2f885802b7b1765bf5022aec21dfc32910d7f9e6de4c3148f095ab5e0 + languageName: node + linkType: hard + +"dom-serializer@npm:^2.0.0": + version: 2.0.0 + resolution: "dom-serializer@npm:2.0.0" + dependencies: + domelementtype: "npm:^2.3.0" + domhandler: "npm:^5.0.2" + entities: "npm:^4.2.0" + checksum: 10c0/d5ae2b7110ca3746b3643d3ef60ef823f5f078667baf530cec096433f1627ec4b6fa8c072f09d079d7cda915fd2c7bc1b7b935681e9b09e591e1e15f4040b8e2 + languageName: node + linkType: hard + +"domelementtype@npm:^2.0.1, domelementtype@npm:^2.2.0, domelementtype@npm:^2.3.0": + version: 2.3.0 + resolution: "domelementtype@npm:2.3.0" + checksum: 10c0/686f5a9ef0fff078c1412c05db73a0dce096190036f33e400a07e2a4518e9f56b1e324f5c576a0a747ef0e75b5d985c040b0d51945ce780c0dd3c625a18cd8c9 + languageName: node + linkType: hard + +"domexception@npm:^2.0.1": + version: 2.0.1 + resolution: "domexception@npm:2.0.1" + dependencies: + webidl-conversions: "npm:^5.0.0" + checksum: 10c0/24a3a07b85420671bc805ead7305e0f2ec9e55f104889b64c5a9fa7d93681e514f05c65f947bd9401b3da67f77b92fe7861bd15f4d0d418c4d32e34a2cd55d38 + languageName: node + linkType: hard + +"domhandler@npm:^3.3.0": + version: 3.3.0 + resolution: "domhandler@npm:3.3.0" + dependencies: + domelementtype: "npm:^2.0.1" + checksum: 10c0/376e6462a6144121f6ae50c9c1b8e0b22d2e0c68f9fb2ef6e57a5f4f9395854b1258cb638c58b171ee291359a5f41a4a57f403954db976484a59ffcee4c1e405 + languageName: node + linkType: hard + +"domhandler@npm:^4.2.0": + version: 4.3.1 + resolution: "domhandler@npm:4.3.1" + dependencies: + domelementtype: "npm:^2.2.0" + checksum: 10c0/5c199c7468cb052a8b5ab80b13528f0db3d794c64fc050ba793b574e158e67c93f8336e87fd81e9d5ee43b0e04aea4d8b93ed7be4899cb726a1601b3ba18538b + languageName: node + linkType: hard + +"domhandler@npm:^5.0.2, domhandler@npm:^5.0.3": + version: 5.0.3 + resolution: "domhandler@npm:5.0.3" + dependencies: + domelementtype: "npm:^2.3.0" + checksum: 10c0/bba1e5932b3e196ad6862286d76adc89a0dbf0c773e5ced1eb01f9af930c50093a084eff14b8de5ea60b895c56a04d5de8bbc4930c5543d029091916770b2d2a + languageName: node + linkType: hard + +"domutils@npm:^2.4.2": + version: 2.8.0 + resolution: "domutils@npm:2.8.0" + dependencies: + dom-serializer: "npm:^1.0.1" + domelementtype: "npm:^2.2.0" + domhandler: "npm:^4.2.0" + checksum: 10c0/d58e2ae01922f0dd55894e61d18119924d88091837887bf1438f2327f32c65eb76426bd9384f81e7d6dcfb048e0f83c19b222ad7101176ad68cdc9c695b563db + languageName: node + linkType: hard + +"domutils@npm:^3.0.1, domutils@npm:^3.1.0": + version: 3.2.2 + resolution: "domutils@npm:3.2.2" + dependencies: + dom-serializer: "npm:^2.0.0" + domelementtype: "npm:^2.3.0" + domhandler: "npm:^5.0.3" + checksum: 10c0/47938f473b987ea71cd59e59626eb8666d3aa8feba5266e45527f3b636c7883cca7e582d901531961f742c519d7514636b7973353b648762b2e3bedbf235fada + languageName: node + linkType: hard + +"dotenv-expand@npm:10.0.0": + version: 10.0.0 + resolution: "dotenv-expand@npm:10.0.0" + checksum: 10c0/298f5018e29cfdcb0b5f463ba8e8627749103fbcf6cf81c561119115754ed582deee37b49dfc7253028aaba875ab7aea5fa90e5dac88e511d009ab0e6677924e + languageName: node + linkType: hard + +"dotenv@npm:16.4.5": + version: 16.4.5 + resolution: "dotenv@npm:16.4.5" + checksum: 10c0/48d92870076832af0418b13acd6e5a5a3e83bb00df690d9812e94b24aff62b88ade955ac99a05501305b8dc8f1b0ee7638b18493deb6fe93d680e5220936292f + languageName: node + linkType: hard + +"dotenv@npm:^16.0.3": + version: 16.4.7 + resolution: "dotenv@npm:16.4.7" + checksum: 10c0/be9f597e36a8daf834452daa1f4cc30e5375a5968f98f46d89b16b983c567398a330580c88395069a77473943c06b877d1ca25b4afafcdd6d4adb549e8293462 + languageName: node + linkType: hard + +"dunder-proto@npm:^1.0.1": + version: 1.0.1 + resolution: "dunder-proto@npm:1.0.1" + dependencies: + call-bind-apply-helpers: "npm:^1.0.1" + es-errors: "npm:^1.3.0" + gopd: "npm:^1.2.0" + checksum: 10c0/199f2a0c1c16593ca0a145dbf76a962f8033ce3129f01284d48c45ed4e14fea9bbacd7b3610b6cdc33486cef20385ac054948fefc6272fcce645c09468f93031 + languageName: node + linkType: hard + +"eastasianwidth@npm:^0.2.0": + version: 0.2.0 + resolution: "eastasianwidth@npm:0.2.0" + checksum: 10c0/26f364ebcdb6395f95124fda411f63137a4bfb5d3a06453f7f23dfe52502905bd84e0488172e0f9ec295fdc45f05c23d5d91baf16bd26f0fe9acd777a188dc39 + languageName: node + linkType: hard + +"ecdsa-sig-formatter@npm:1.0.11": + version: 1.0.11 + resolution: "ecdsa-sig-formatter@npm:1.0.11" + dependencies: + safe-buffer: "npm:^5.0.1" + checksum: 10c0/ebfbf19d4b8be938f4dd4a83b8788385da353d63307ede301a9252f9f7f88672e76f2191618fd8edfc2f24679236064176fab0b78131b161ee73daa37125408c + languageName: node + linkType: hard + +"editorconfig@npm:^1.0.4": + version: 1.0.4 + resolution: "editorconfig@npm:1.0.4" + dependencies: + "@one-ini/wasm": "npm:0.1.1" + commander: "npm:^10.0.0" + minimatch: "npm:9.0.1" + semver: "npm:^7.5.3" + bin: + editorconfig: bin/editorconfig + checksum: 10c0/ed6985959d7b34a56e1c09bef118758c81c969489b768d152c93689fce8403b0452462e934f665febaba3478eebc0fd41c0a36100783eaadf6d926c4abc87a3d + languageName: node + linkType: hard + +"ee-first@npm:1.1.1": + version: 1.1.1 + resolution: "ee-first@npm:1.1.1" + checksum: 10c0/b5bb125ee93161bc16bfe6e56c6b04de5ad2aa44234d8f644813cc95d861a6910903132b05093706de2b706599367c4130eb6d170f6b46895686b95f87d017b7 + languageName: node + linkType: hard + +"ejs@npm:^3.1.10": + version: 3.1.10 + resolution: "ejs@npm:3.1.10" + dependencies: + jake: "npm:^10.8.5" + bin: + ejs: bin/cli.js + checksum: 10c0/52eade9e68416ed04f7f92c492183340582a36482836b11eab97b159fcdcfdedc62233a1bf0bf5e5e1851c501f2dca0e2e9afd111db2599e4e7f53ee29429ae1 + languageName: node + linkType: hard + +"electron-to-chromium@npm:^1.5.73": + version: 1.5.79 + resolution: "electron-to-chromium@npm:1.5.79" + checksum: 10c0/ad781ad55add24b5c61c9d77c3a8efeb781ca0de9d9e4dd55658c70447ac41297d0babfd975d59eeab83de5f863ab1309276d310648f0316231340eb9a18590e + languageName: node + linkType: hard + +"emittery@npm:^0.8.1": + version: 0.8.1 + resolution: "emittery@npm:0.8.1" + checksum: 10c0/1302868b6e258909964339f28569b97658d75c1030271024ac2f50f84957eab6a6a04278861a9c1d47131b9dfb50f25a5d017750d1c99cd86763e19a93b838bf + languageName: node + linkType: hard + +"emoji-regex@npm:^8.0.0": + version: 8.0.0 + resolution: "emoji-regex@npm:8.0.0" + checksum: 10c0/b6053ad39951c4cf338f9092d7bfba448cdfd46fe6a2a034700b149ac9ffbc137e361cbd3c442297f86bed2e5f7576c1b54cc0a6bf8ef5106cc62f496af35010 + languageName: node + linkType: hard + +"emoji-regex@npm:^9.2.2": + version: 9.2.2 + resolution: "emoji-regex@npm:9.2.2" + checksum: 10c0/af014e759a72064cf66e6e694a7fc6b0ed3d8db680427b021a89727689671cefe9d04151b2cad51dbaf85d5ba790d061cd167f1cf32eb7b281f6368b3c181639 + languageName: node + linkType: hard + +"encodeurl@npm:~1.0.2": + version: 1.0.2 + resolution: "encodeurl@npm:1.0.2" + checksum: 10c0/f6c2387379a9e7c1156c1c3d4f9cb7bb11cf16dd4c1682e1f6746512564b053df5781029b6061296832b59fb22f459dbe250386d217c2f6e203601abb2ee0bec + languageName: node + linkType: hard + +"encodeurl@npm:~2.0.0": + version: 2.0.0 + resolution: "encodeurl@npm:2.0.0" + checksum: 10c0/5d317306acb13e6590e28e27924c754163946a2480de11865c991a3a7eed4315cd3fba378b543ca145829569eefe9b899f3d84bb09870f675ae60bc924b01ceb + languageName: node + linkType: hard + +"encoding-japanese@npm:2.2.0": + version: 2.2.0 + resolution: "encoding-japanese@npm:2.2.0" + checksum: 10c0/9d1f10dde16f59da8a8a1a04499dffa3e9926b0dbd7dfab8054570527b7e6de30c47e828851f42d2727af31586ec8049a84eeae593ad8b22eea10921fd269798 + languageName: node + linkType: hard + +"encoding@npm:^0.1.13": + version: 0.1.13 + resolution: "encoding@npm:0.1.13" + dependencies: + iconv-lite: "npm:^0.6.2" + checksum: 10c0/36d938712ff00fe1f4bac88b43bcffb5930c1efa57bbcdca9d67e1d9d6c57cfb1200fb01efe0f3109b2ce99b231f90779532814a81370a1bd3274a0f58585039 + languageName: node + linkType: hard + +"enhanced-resolve@npm:^5.0.0, enhanced-resolve@npm:^5.17.1, enhanced-resolve@npm:^5.7.0": + version: 5.18.0 + resolution: "enhanced-resolve@npm:5.18.0" + dependencies: + graceful-fs: "npm:^4.2.4" + tapable: "npm:^2.2.0" + checksum: 10c0/5fcc264a6040754ab5b349628cac2bb5f89cee475cbe340804e657a5b9565f70e6aafb338d5895554eb0ced9f66c50f38a255274a0591dcb64ee17c549c459ce + languageName: node + linkType: hard + +"entities@npm:^2.0.0": + version: 2.2.0 + resolution: "entities@npm:2.2.0" + checksum: 10c0/7fba6af1f116300d2ba1c5673fc218af1961b20908638391b4e1e6d5850314ee2ac3ec22d741b3a8060479911c99305164aed19b6254bde75e7e6b1b2c3f3aa3 + languageName: node + linkType: hard + +"entities@npm:^4.2.0, entities@npm:^4.4.0, entities@npm:^4.5.0": + version: 4.5.0 + resolution: "entities@npm:4.5.0" + checksum: 10c0/5b039739f7621f5d1ad996715e53d964035f75ad3b9a4d38c6b3804bb226e282ffeae2443624d8fdd9c47d8e926ae9ac009c54671243f0c3294c26af7cc85250 + languageName: node + linkType: hard + +"env-paths@npm:^2.2.0": + version: 2.2.1 + resolution: "env-paths@npm:2.2.1" + checksum: 10c0/285325677bf00e30845e330eec32894f5105529db97496ee3f598478e50f008c5352a41a30e5e72ec9de8a542b5a570b85699cd63bd2bc646dbcb9f311d83bc4 + languageName: node + linkType: hard + +"err-code@npm:^2.0.2": + version: 2.0.3 + resolution: "err-code@npm:2.0.3" + checksum: 10c0/b642f7b4dd4a376e954947550a3065a9ece6733ab8e51ad80db727aaae0817c2e99b02a97a3d6cecc648a97848305e728289cf312d09af395403a90c9d4d8a66 + languageName: node + linkType: hard + +"error-ex@npm:^1.3.1": + version: 1.3.2 + resolution: "error-ex@npm:1.3.2" + dependencies: + is-arrayish: "npm:^0.2.1" + checksum: 10c0/ba827f89369b4c93382cfca5a264d059dfefdaa56ecc5e338ffa58a6471f5ed93b71a20add1d52290a4873d92381174382658c885ac1a2305f7baca363ce9cce + languageName: node + linkType: hard + +"es-define-property@npm:^1.0.0, es-define-property@npm:^1.0.1": + version: 1.0.1 + resolution: "es-define-property@npm:1.0.1" + checksum: 10c0/3f54eb49c16c18707949ff25a1456728c883e81259f045003499efba399c08bad00deebf65cccde8c0e07908c1a225c9d472b7107e558f2a48e28d530e34527c + languageName: node + linkType: hard + +"es-errors@npm:^1.3.0": + version: 1.3.0 + resolution: "es-errors@npm:1.3.0" + checksum: 10c0/0a61325670072f98d8ae3b914edab3559b6caa980f08054a3b872052640d91da01d38df55df797fcc916389d77fc92b8d5906cf028f4db46d7e3003abecbca85 + languageName: node + linkType: hard + +"es-module-lexer@npm:^1.2.1": + version: 1.6.0 + resolution: "es-module-lexer@npm:1.6.0" + checksum: 10c0/667309454411c0b95c476025929881e71400d74a746ffa1ff4cb450bd87f8e33e8eef7854d68e401895039ac0bac64e7809acbebb6253e055dd49ea9e3ea9212 + languageName: node + linkType: hard + +"es-object-atoms@npm:^1.0.0": + version: 1.0.0 + resolution: "es-object-atoms@npm:1.0.0" + dependencies: + es-errors: "npm:^1.3.0" + checksum: 10c0/1fed3d102eb27ab8d983337bb7c8b159dd2a1e63ff833ec54eea1311c96d5b08223b433060ba240541ca8adba9eee6b0a60cdbf2f80634b784febc9cc8b687b4 + languageName: node + linkType: hard + +"escalade@npm:^3.1.1, escalade@npm:^3.2.0": + version: 3.2.0 + resolution: "escalade@npm:3.2.0" + checksum: 10c0/ced4dd3a78e15897ed3be74e635110bbf3b08877b0a41be50dcb325ee0e0b5f65fc2d50e9845194d7c4633f327e2e1c6cce00a71b617c5673df0374201d67f65 + languageName: node + linkType: hard + +"escape-goat@npm:^3.0.0": + version: 3.0.0 + resolution: "escape-goat@npm:3.0.0" + checksum: 10c0/a2b470bbdb95ccbcd19390576993a2b75735457b1979275f4f0d6da86d2e932a2a12edd9270208e3090299a26df857da1f80555c37bb1bac6fa9135322253ca4 + languageName: node + linkType: hard + +"escape-html@npm:~1.0.3": + version: 1.0.3 + resolution: "escape-html@npm:1.0.3" + checksum: 10c0/524c739d776b36c3d29fa08a22e03e8824e3b2fd57500e5e44ecf3cc4707c34c60f9ca0781c0e33d191f2991161504c295e98f68c78fe7baa6e57081ec6ac0a3 + languageName: node + linkType: hard + +"escape-string-applescript@npm:^1.0.0": + version: 1.0.0 + resolution: "escape-string-applescript@npm:1.0.0" + checksum: 10c0/25d89b0014a2bb22b3714ba20f1255ecaac5004d3a4dc54e739bae3fa38ff4f9fdc1679acabf117e4b1e3bf321b3a14367fbbd4baf216804958422ec6355dfa6 + languageName: node + linkType: hard + +"escape-string-regexp@npm:^1.0.5": + version: 1.0.5 + resolution: "escape-string-regexp@npm:1.0.5" + checksum: 10c0/a968ad453dd0c2724e14a4f20e177aaf32bb384ab41b674a8454afe9a41c5e6fe8903323e0a1052f56289d04bd600f81278edf140b0fcc02f5cac98d0f5b5371 + languageName: node + linkType: hard + +"escape-string-regexp@npm:^2.0.0": + version: 2.0.0 + resolution: "escape-string-regexp@npm:2.0.0" + checksum: 10c0/2530479fe8db57eace5e8646c9c2a9c80fa279614986d16dcc6bcaceb63ae77f05a851ba6c43756d816c61d7f4534baf56e3c705e3e0d884818a46808811c507 + languageName: node + linkType: hard + +"escape-string-regexp@npm:^4.0.0": + version: 4.0.0 + resolution: "escape-string-regexp@npm:4.0.0" + checksum: 10c0/9497d4dd307d845bd7f75180d8188bb17ea8c151c1edbf6b6717c100e104d629dc2dfb687686181b0f4b7d732c7dfdc4d5e7a8ff72de1b0ca283a75bbb3a9cd9 + languageName: node + linkType: hard + +"escodegen@npm:^2.0.0": + version: 2.1.0 + resolution: "escodegen@npm:2.1.0" + dependencies: + esprima: "npm:^4.0.1" + estraverse: "npm:^5.2.0" + esutils: "npm:^2.0.2" + source-map: "npm:~0.6.1" + dependenciesMeta: + source-map: + optional: true + bin: + escodegen: bin/escodegen.js + esgenerate: bin/esgenerate.js + checksum: 10c0/e1450a1f75f67d35c061bf0d60888b15f62ab63aef9df1901cffc81cffbbb9e8b3de237c5502cf8613a017c1df3a3003881307c78835a1ab54d8c8d2206e01d3 + languageName: node + linkType: hard + +"eslint-config-prettier@npm:^8.3.0": + version: 8.10.0 + resolution: "eslint-config-prettier@npm:8.10.0" + peerDependencies: + eslint: ">=7.0.0" + bin: + eslint-config-prettier: bin/cli.js + checksum: 10c0/19f8c497d9bdc111a17a61b25ded97217be3755bbc4714477dfe535ed539dddcaf42ef5cf8bb97908b058260cf89a3d7c565cb0be31096cbcd39f4c2fa5fe43c + languageName: node + linkType: hard + +"eslint-module-utils@npm:2.12.0": + version: 2.12.0 + resolution: "eslint-module-utils@npm:2.12.0" + dependencies: + debug: "npm:^3.2.7" + peerDependenciesMeta: + eslint: + optional: true + checksum: 10c0/4d8b46dcd525d71276f9be9ffac1d2be61c9d54cc53c992e6333cf957840dee09381842b1acbbb15fc6b255ebab99cd481c5007ab438e5455a14abe1a0468558 + languageName: node + linkType: hard + +"eslint-module-utils@npm:2.8.0": + version: 2.8.0 + resolution: "eslint-module-utils@npm:2.8.0" + dependencies: + debug: "npm:^3.2.7" + peerDependenciesMeta: + eslint: + optional: true + checksum: 10c0/c7a8d1a58d76ec8217a8fea49271ec8132d1b9390965a75f6a4ecbc9e5983d742195b46d2e4378231d2186801439fe1aa5700714b0bfd4eb17aac6e1b65309df + languageName: node + linkType: hard + +"eslint-plugin-prettier@npm:^4.2.1": + version: 4.2.1 + resolution: "eslint-plugin-prettier@npm:4.2.1" + dependencies: + prettier-linter-helpers: "npm:^1.0.0" + peerDependencies: + eslint: ">=7.28.0" + prettier: ">=2.0.0" + peerDependenciesMeta: + eslint-config-prettier: + optional: true + checksum: 10c0/c5e7316baeab9d96ac39c279f16686e837277e5c67a8006c6588bcff317edffdc1532fb580441eb598bc6770f6444006756b68a6575dff1cd85ebe227252d0b7 + languageName: node + linkType: hard + +"eslint-scope@npm:5.1.1, eslint-scope@npm:^5.1.1": + version: 5.1.1 + resolution: "eslint-scope@npm:5.1.1" + dependencies: + esrecurse: "npm:^4.3.0" + estraverse: "npm:^4.1.1" + checksum: 10c0/d30ef9dc1c1cbdece34db1539a4933fe3f9b14e1ffb27ecc85987902ee663ad7c9473bbd49a9a03195a373741e62e2f807c4938992e019b511993d163450e70a + languageName: node + linkType: hard + +"eslint-scope@npm:^7.2.2": + version: 7.2.2 + resolution: "eslint-scope@npm:7.2.2" + dependencies: + esrecurse: "npm:^4.3.0" + estraverse: "npm:^5.2.0" + checksum: 10c0/613c267aea34b5a6d6c00514e8545ef1f1433108097e857225fed40d397dd6b1809dffd11c2fde23b37ca53d7bf935fe04d2a18e6fc932b31837b6ad67e1c116 + languageName: node + linkType: hard + +"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.1, eslint-visitor-keys@npm:^3.4.3": + version: 3.4.3 + resolution: "eslint-visitor-keys@npm:3.4.3" + checksum: 10c0/92708e882c0a5ffd88c23c0b404ac1628cf20104a108c745f240a13c332a11aac54f49a22d5762efbffc18ecbc9a580d1b7ad034bf5f3cc3307e5cbff2ec9820 + languageName: node + linkType: hard + +"eslint-visitor-keys@npm:^4.2.0": + version: 4.2.0 + resolution: "eslint-visitor-keys@npm:4.2.0" + checksum: 10c0/2ed81c663b147ca6f578312919483eb040295bbab759e5a371953456c636c5b49a559883e2677112453728d66293c0a4c90ab11cab3428cf02a0236d2e738269 + languageName: node + linkType: hard + +"eslint@npm:^8.32.0, eslint@npm:^8.56.0": + version: 8.57.1 + resolution: "eslint@npm:8.57.1" + dependencies: + "@eslint-community/eslint-utils": "npm:^4.2.0" + "@eslint-community/regexpp": "npm:^4.6.1" + "@eslint/eslintrc": "npm:^2.1.4" + "@eslint/js": "npm:8.57.1" + "@humanwhocodes/config-array": "npm:^0.13.0" + "@humanwhocodes/module-importer": "npm:^1.0.1" + "@nodelib/fs.walk": "npm:^1.2.8" + "@ungap/structured-clone": "npm:^1.2.0" + ajv: "npm:^6.12.4" + chalk: "npm:^4.0.0" + cross-spawn: "npm:^7.0.2" + debug: "npm:^4.3.2" + doctrine: "npm:^3.0.0" + escape-string-regexp: "npm:^4.0.0" + eslint-scope: "npm:^7.2.2" + eslint-visitor-keys: "npm:^3.4.3" + espree: "npm:^9.6.1" + esquery: "npm:^1.4.2" + esutils: "npm:^2.0.2" + fast-deep-equal: "npm:^3.1.3" + file-entry-cache: "npm:^6.0.1" + find-up: "npm:^5.0.0" + glob-parent: "npm:^6.0.2" + globals: "npm:^13.19.0" + graphemer: "npm:^1.4.0" + ignore: "npm:^5.2.0" + imurmurhash: "npm:^0.1.4" + is-glob: "npm:^4.0.0" + is-path-inside: "npm:^3.0.3" + js-yaml: "npm:^4.1.0" + json-stable-stringify-without-jsonify: "npm:^1.0.1" + levn: "npm:^0.4.1" + lodash.merge: "npm:^4.6.2" + minimatch: "npm:^3.1.2" + natural-compare: "npm:^1.4.0" + optionator: "npm:^0.9.3" + strip-ansi: "npm:^6.0.1" + text-table: "npm:^0.2.0" + bin: + eslint: bin/eslint.js + checksum: 10c0/1fd31533086c1b72f86770a4d9d7058ee8b4643fd1cfd10c7aac1ecb8725698e88352a87805cf4b2ce890aa35947df4b4da9655fb7fdfa60dbb448a43f6ebcf1 + languageName: node + linkType: hard + +"espree@npm:^9.6.0, espree@npm:^9.6.1": + version: 9.6.1 + resolution: "espree@npm:9.6.1" + dependencies: + acorn: "npm:^8.9.0" + acorn-jsx: "npm:^5.3.2" + eslint-visitor-keys: "npm:^3.4.1" + checksum: 10c0/1a2e9b4699b715347f62330bcc76aee224390c28bb02b31a3752e9d07549c473f5f986720483c6469cf3cfb3c9d05df612ffc69eb1ee94b54b739e67de9bb460 + languageName: node + linkType: hard + +"esprima@npm:^1.2.0": + version: 1.2.5 + resolution: "esprima@npm:1.2.5" + bin: + esparse: ./bin/esparse.js + esvalidate: ./bin/esvalidate.js + checksum: 10c0/634f272901b48174b84fd59ae6d9fbe03af38cfaa60501d8c0c7227d96ac53aef232e6fafda7c9760e50997f675e1c828e0b29aa39b092982960acf5e937db8f + languageName: node + linkType: hard + +"esprima@npm:^4.0.0, esprima@npm:^4.0.1": + version: 4.0.1 + resolution: "esprima@npm:4.0.1" + bin: + esparse: ./bin/esparse.js + esvalidate: ./bin/esvalidate.js + checksum: 10c0/ad4bab9ead0808cf56501750fd9d3fb276f6b105f987707d059005d57e182d18a7c9ec7f3a01794ebddcca676773e42ca48a32d67a250c9d35e009ca613caba3 + languageName: node + linkType: hard + +"esquery@npm:^1.4.2": + version: 1.6.0 + resolution: "esquery@npm:1.6.0" + dependencies: + estraverse: "npm:^5.1.0" + checksum: 10c0/cb9065ec605f9da7a76ca6dadb0619dfb611e37a81e318732977d90fab50a256b95fee2d925fba7c2f3f0523aa16f91587246693bc09bc34d5a59575fe6e93d2 + languageName: node + linkType: hard + +"esrecurse@npm:^4.3.0": + version: 4.3.0 + resolution: "esrecurse@npm:4.3.0" + dependencies: + estraverse: "npm:^5.2.0" + checksum: 10c0/81a37116d1408ded88ada45b9fb16dbd26fba3aadc369ce50fcaf82a0bac12772ebd7b24cd7b91fc66786bf2c1ac7b5f196bc990a473efff972f5cb338877cf5 + languageName: node + linkType: hard + +"estraverse@npm:^1.5.0": + version: 1.9.3 + resolution: "estraverse@npm:1.9.3" + checksum: 10c0/2477bab0c5cdc7534162fbb16b25282c49f434875227937726692ed105762403e9830324cc97c3ea8bf332fe91122ea321f4d4292aaf50db7a90d857e169719e + languageName: node + linkType: hard + +"estraverse@npm:^4.1.1": + version: 4.3.0 + resolution: "estraverse@npm:4.3.0" + checksum: 10c0/9cb46463ef8a8a4905d3708a652d60122a0c20bb58dec7e0e12ab0e7235123d74214fc0141d743c381813e1b992767e2708194f6f6e0f9fd00c1b4e0887b8b6d + languageName: node + linkType: hard + +"estraverse@npm:^5.1.0, estraverse@npm:^5.2.0": + version: 5.3.0 + resolution: "estraverse@npm:5.3.0" + checksum: 10c0/1ff9447b96263dec95d6d67431c5e0771eb9776427421260a3e2f0fdd5d6bd4f8e37a7338f5ad2880c9f143450c9b1e4fc2069060724570a49cf9cf0312bd107 + languageName: node + linkType: hard + +"esutils@npm:^2.0.2": + version: 2.0.3 + resolution: "esutils@npm:2.0.3" + checksum: 10c0/9a2fe69a41bfdade834ba7c42de4723c97ec776e40656919c62cbd13607c45e127a003f05f724a1ea55e5029a4cf2de444b13009f2af71271e42d93a637137c7 + languageName: node + linkType: hard + +"etag@npm:~1.8.1": + version: 1.8.1 + resolution: "etag@npm:1.8.1" + checksum: 10c0/12be11ef62fb9817314d790089a0a49fae4e1b50594135dcb8076312b7d7e470884b5100d249b28c18581b7fd52f8b485689ffae22a11ed9ec17377a33a08f84 + languageName: node + linkType: hard + +"eventemitter2@npm:^6.4.9": + version: 6.4.9 + resolution: "eventemitter2@npm:6.4.9" + checksum: 10c0/b2adf7d9f1544aa2d95ee271b0621acaf1e309d85ebcef1244fb0ebc7ab0afa6ffd5e371535d0981bc46195ad67fd6ff57a8d1db030584dee69aa5e371a27ea7 + languageName: node + linkType: hard + +"events@npm:^3.2.0": + version: 3.3.0 + resolution: "events@npm:3.3.0" + checksum: 10c0/d6b6f2adbccbcda74ddbab52ed07db727ef52e31a61ed26db9feb7dc62af7fc8e060defa65e5f8af9449b86b52cc1a1f6a79f2eafcf4e62add2b7a1fa4a432f6 + languageName: node + linkType: hard + +"execa@npm:^0.10.0": + version: 0.10.0 + resolution: "execa@npm:0.10.0" + dependencies: + cross-spawn: "npm:^6.0.0" + get-stream: "npm:^3.0.0" + is-stream: "npm:^1.1.0" + npm-run-path: "npm:^2.0.0" + p-finally: "npm:^1.0.0" + signal-exit: "npm:^3.0.0" + strip-eof: "npm:^1.0.0" + checksum: 10c0/3e8562b78f1552ff629770aa81cdb98dac927b6b7f7adc10815ecf13b6917bbabc0468d7d81494f0bb05c59b83a22639e879ef15a17c0dc3434cc32e90e85ab3 + languageName: node + linkType: hard + +"execa@npm:^5.0.0": + version: 5.1.1 + resolution: "execa@npm:5.1.1" + dependencies: + cross-spawn: "npm:^7.0.3" + get-stream: "npm:^6.0.0" + human-signals: "npm:^2.1.0" + is-stream: "npm:^2.0.0" + merge-stream: "npm:^2.0.0" + npm-run-path: "npm:^4.0.1" + onetime: "npm:^5.1.2" + signal-exit: "npm:^3.0.3" + strip-final-newline: "npm:^2.0.0" + checksum: 10c0/c8e615235e8de4c5addf2fa4c3da3e3aa59ce975a3e83533b4f6a71750fb816a2e79610dc5f1799b6e28976c9ae86747a36a606655bf8cb414a74d8d507b304f + languageName: node + linkType: hard + +"exit@npm:^0.1.2": + version: 0.1.2 + resolution: "exit@npm:0.1.2" + checksum: 10c0/71d2ad9b36bc25bb8b104b17e830b40a08989be7f7d100b13269aaae7c3784c3e6e1e88a797e9e87523993a25ba27c8958959a554535370672cfb4d824af8989 + languageName: node + linkType: hard + +"expect@npm:^27.5.1": + version: 27.5.1 + resolution: "expect@npm:27.5.1" + dependencies: + "@jest/types": "npm:^27.5.1" + jest-get-type: "npm:^27.5.1" + jest-matcher-utils: "npm:^27.5.1" + jest-message-util: "npm:^27.5.1" + checksum: 10c0/020e237c7191a584bc25a98181c3969cdd62fa1c044e4d81d5968e24075f39bc2349fcee48de82431033823b525e7cf5ac410b253b3115392f1026cb27258811 + languageName: node + linkType: hard + +"expect@npm:^29.0.0": + version: 29.7.0 + resolution: "expect@npm:29.7.0" + dependencies: + "@jest/expect-utils": "npm:^29.7.0" + jest-get-type: "npm:^29.6.3" + jest-matcher-utils: "npm:^29.7.0" + jest-message-util: "npm:^29.7.0" + jest-util: "npm:^29.7.0" + checksum: 10c0/2eddeace66e68b8d8ee5f7be57f3014b19770caaf6815c7a08d131821da527fb8c8cb7b3dcd7c883d2d3d8d184206a4268984618032d1e4b16dc8d6596475d41 + languageName: node + linkType: hard + +"exponential-backoff@npm:^3.1.1": + version: 3.1.1 + resolution: "exponential-backoff@npm:3.1.1" + checksum: 10c0/160456d2d647e6019640bd07111634d8c353038d9fa40176afb7cd49b0548bdae83b56d05e907c2cce2300b81cae35d800ef92fefb9d0208e190fa3b7d6bb579 + languageName: node + linkType: hard + +"express@npm:4.21.2": + version: 4.21.2 + resolution: "express@npm:4.21.2" + dependencies: + accepts: "npm:~1.3.8" + array-flatten: "npm:1.1.1" + body-parser: "npm:1.20.3" + content-disposition: "npm:0.5.4" + content-type: "npm:~1.0.4" + cookie: "npm:0.7.1" + cookie-signature: "npm:1.0.6" + debug: "npm:2.6.9" + depd: "npm:2.0.0" + encodeurl: "npm:~2.0.0" + escape-html: "npm:~1.0.3" + etag: "npm:~1.8.1" + finalhandler: "npm:1.3.1" + fresh: "npm:0.5.2" + http-errors: "npm:2.0.0" + merge-descriptors: "npm:1.0.3" + methods: "npm:~1.1.2" + on-finished: "npm:2.4.1" + parseurl: "npm:~1.3.3" + path-to-regexp: "npm:0.1.12" + proxy-addr: "npm:~2.0.7" + qs: "npm:6.13.0" + range-parser: "npm:~1.2.1" + safe-buffer: "npm:5.2.1" + send: "npm:0.19.0" + serve-static: "npm:1.16.2" + setprototypeof: "npm:1.2.0" + statuses: "npm:2.0.1" + type-is: "npm:~1.6.18" + utils-merge: "npm:1.0.1" + vary: "npm:~1.1.2" + checksum: 10c0/38168fd0a32756600b56e6214afecf4fc79ec28eca7f7a91c2ab8d50df4f47562ca3f9dee412da7f5cea6b1a1544b33b40f9f8586dbacfbdada0fe90dbb10a1f + languageName: node + linkType: hard + +"extend-object@npm:^1.0.0": + version: 1.0.0 + resolution: "extend-object@npm:1.0.0" + checksum: 10c0/7644bfe3d2bac31fa3ab0d1aedef2a5a4c27975690f92191ec8a72d6440605f7ad920d60ac356374177ec71b1e3369e7134997b31692e2f7a55a4cb7fbb7ba57 + languageName: node + linkType: hard + +"external-editor@npm:^3.0.3, external-editor@npm:^3.1.0": + version: 3.1.0 + resolution: "external-editor@npm:3.1.0" + dependencies: + chardet: "npm:^0.7.0" + iconv-lite: "npm:^0.4.24" + tmp: "npm:^0.0.33" + checksum: 10c0/c98f1ba3efdfa3c561db4447ff366a6adb5c1e2581462522c56a18bf90dfe4da382f9cd1feee3e330108c3595a854b218272539f311ba1b3298f841eb0fbf339 + languageName: node + linkType: hard + +"fast-content-type-parse@npm:^1.0.0": + version: 1.1.0 + resolution: "fast-content-type-parse@npm:1.1.0" + checksum: 10c0/882bf990fa5d64be1825ce183818db43900ece0d7ef184cb9409bae8ed1001acbe536a657b1496382cb3e308e71ab39cc399bbdae70cba1745eecaeca4e55384 + languageName: node + linkType: hard + +"fast-decode-uri-component@npm:^1.0.1": + version: 1.0.1 + resolution: "fast-decode-uri-component@npm:1.0.1" + checksum: 10c0/039d50c2e99d64f999c3f2126c23fbf75a04a4117e218a149ca0b1d2aeb8c834b7b19d643b9d35d4eabce357189a6a94085f78cf48869e6e26cc59b036284bc3 + languageName: node + linkType: hard + +"fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3": + version: 3.1.3 + resolution: "fast-deep-equal@npm:3.1.3" + checksum: 10c0/40dedc862eb8992c54579c66d914635afbec43350afbbe991235fdcb4e3a8d5af1b23ae7e79bef7d4882d0ecee06c3197488026998fb19f72dc95acff1d1b1d0 + languageName: node + linkType: hard + +"fast-diff@npm:^1.1.2": + version: 1.3.0 + resolution: "fast-diff@npm:1.3.0" + checksum: 10c0/5c19af237edb5d5effda008c891a18a585f74bf12953be57923f17a3a4d0979565fc64dbc73b9e20926b9d895f5b690c618cbb969af0cf022e3222471220ad29 + languageName: node + linkType: hard + +"fast-glob@npm:^3.2.9, fast-glob@npm:^3.3.2": + version: 3.3.3 + resolution: "fast-glob@npm:3.3.3" + dependencies: + "@nodelib/fs.stat": "npm:^2.0.2" + "@nodelib/fs.walk": "npm:^1.2.3" + glob-parent: "npm:^5.1.2" + merge2: "npm:^1.3.0" + micromatch: "npm:^4.0.8" + checksum: 10c0/f6aaa141d0d3384cf73cbcdfc52f475ed293f6d5b65bfc5def368b09163a9f7e5ec2b3014d80f733c405f58e470ee0cc451c2937685045cddcdeaa24199c43fe + languageName: node + linkType: hard + +"fast-json-stable-stringify@npm:2.x, fast-json-stable-stringify@npm:^2.0.0": + version: 2.1.0 + resolution: "fast-json-stable-stringify@npm:2.1.0" + checksum: 10c0/7f081eb0b8a64e0057b3bb03f974b3ef00135fbf36c1c710895cd9300f13c94ba809bb3a81cf4e1b03f6e5285610a61abbd7602d0652de423144dfee5a389c9b + languageName: node + linkType: hard + +"fast-json-stringify@npm:^2.5.2": + version: 2.7.13 + resolution: "fast-json-stringify@npm:2.7.13" + dependencies: + ajv: "npm:^6.11.0" + deepmerge: "npm:^4.2.2" + rfdc: "npm:^1.2.0" + string-similarity: "npm:^4.0.1" + checksum: 10c0/9c63e9e575bd75153afe456bd5c1d8afbfade79c79578f89fc0b8d599cdd65f3e731c826241caf472e11a915e6351a4c4c3f8295096be3fb01a79d2dbbbb22ed + languageName: node + linkType: hard + +"fast-levenshtein@npm:^2.0.6": + version: 2.0.6 + resolution: "fast-levenshtein@npm:2.0.6" + checksum: 10c0/111972b37338bcb88f7d9e2c5907862c280ebf4234433b95bc611e518d192ccb2d38119c4ac86e26b668d75f7f3894f4ff5c4982899afced7ca78633b08287c4 + languageName: node + linkType: hard + +"fast-redact@npm:^3.0.0": + version: 3.5.0 + resolution: "fast-redact@npm:3.5.0" + checksum: 10c0/7e2ce4aad6e7535e0775bf12bd3e4f2e53d8051d8b630e0fa9e67f68cb0b0e6070d2f7a94b1d0522ef07e32f7c7cda5755e2b677a6538f1e9070ca053c42343a + languageName: node + linkType: hard + +"fast-safe-stringify@npm:2.1.1, fast-safe-stringify@npm:^2.0.8, fast-safe-stringify@npm:^2.1.1": + version: 2.1.1 + resolution: "fast-safe-stringify@npm:2.1.1" + checksum: 10c0/d90ec1c963394919828872f21edaa3ad6f1dddd288d2bd4e977027afff09f5db40f94e39536d4646f7e01761d704d72d51dce5af1b93717f3489ef808f5f4e4d + languageName: node + linkType: hard + +"fast-uri@npm:^3.0.1": + version: 3.0.5 + resolution: "fast-uri@npm:3.0.5" + checksum: 10c0/f5501fd849e02f16f1730d2c8628078718c492b5bc00198068bc5c2880363ae948287fdc8cebfff47465229b517dbeaf668866fbabdff829b4138a899e5c2ba3 + languageName: node + linkType: hard + +"fastify@npm:^3.29.5": + version: 3.29.5 + resolution: "fastify@npm:3.29.5" + dependencies: + "@fastify/ajv-compiler": "npm:^1.0.0" + "@fastify/error": "npm:^2.0.0" + abstract-logging: "npm:^2.0.0" + avvio: "npm:^7.1.2" + fast-content-type-parse: "npm:^1.0.0" + fast-json-stringify: "npm:^2.5.2" + find-my-way: "npm:^4.5.0" + flatstr: "npm:^1.0.12" + light-my-request: "npm:^4.2.0" + pino: "npm:^6.13.0" + process-warning: "npm:^1.0.0" + proxy-addr: "npm:^2.0.7" + rfdc: "npm:^1.1.4" + secure-json-parse: "npm:^2.0.0" + semver: "npm:^7.3.2" + tiny-lru: "npm:^8.0.1" + checksum: 10c0/83a4850c38b1ac8934eff07030f2d0b5ed37b190cbaf05d22b3ca93f00e4735dfe62e48f183bcc5af76b6697512a32e692e6e1765cf51c69819216629f125b3b + languageName: node + linkType: hard + +"fastq@npm:^1.6.0, fastq@npm:^1.6.1": + version: 1.18.0 + resolution: "fastq@npm:1.18.0" + dependencies: + reusify: "npm:^1.0.4" + checksum: 10c0/7be87ecc41762adbddf558d24182f50a4b1a3ef3ee807d33b7623da7aee5faecdcc94fce5aa13fe91df93e269f383232bbcdb2dc5338cd1826503d6063221f36 + languageName: node + linkType: hard + +"fb-watchman@npm:^2.0.0": + version: 2.0.2 + resolution: "fb-watchman@npm:2.0.2" + dependencies: + bser: "npm:2.1.1" + checksum: 10c0/feae89ac148adb8f6ae8ccd87632e62b13563e6fb114cacb5265c51f585b17e2e268084519fb2edd133872f1d47a18e6bfd7e5e08625c0d41b93149694187581 + languageName: node + linkType: hard + +"figures@npm:^3.0.0, figures@npm:^3.2.0": + version: 3.2.0 + resolution: "figures@npm:3.2.0" + dependencies: + escape-string-regexp: "npm:^1.0.5" + checksum: 10c0/9c421646ede432829a50bc4e55c7a4eb4bcb7cc07b5bab2f471ef1ab9a344595bbebb6c5c21470093fbb730cd81bbca119624c40473a125293f656f49cb47629 + languageName: node + linkType: hard + +"file-entry-cache@npm:^6.0.1": + version: 6.0.1 + resolution: "file-entry-cache@npm:6.0.1" + dependencies: + flat-cache: "npm:^3.0.4" + checksum: 10c0/58473e8a82794d01b38e5e435f6feaf648e3f36fdb3a56e98f417f4efae71ad1c0d4ebd8a9a7c50c3ad085820a93fc7494ad721e0e4ebc1da3573f4e1c3c7cdd + languageName: node + linkType: hard + +"filelist@npm:^1.0.4": + version: 1.0.4 + resolution: "filelist@npm:1.0.4" + dependencies: + minimatch: "npm:^5.0.1" + checksum: 10c0/426b1de3944a3d153b053f1c0ebfd02dccd0308a4f9e832ad220707a6d1f1b3c9784d6cadf6b2f68f09a57565f63ebc7bcdc913ccf8012d834f472c46e596f41 + languageName: node + linkType: hard + +"fill-range@npm:^7.1.1": + version: 7.1.1 + resolution: "fill-range@npm:7.1.1" + dependencies: + to-regex-range: "npm:^5.0.1" + checksum: 10c0/b75b691bbe065472f38824f694c2f7449d7f5004aa950426a2c28f0306c60db9b880c0b0e4ed819997ffb882d1da02cfcfc819bddc94d71627f5269682edf018 + languageName: node + linkType: hard + +"finalhandler@npm:1.3.1": + version: 1.3.1 + resolution: "finalhandler@npm:1.3.1" + dependencies: + debug: "npm:2.6.9" + encodeurl: "npm:~2.0.0" + escape-html: "npm:~1.0.3" + on-finished: "npm:2.4.1" + parseurl: "npm:~1.3.3" + statuses: "npm:2.0.1" + unpipe: "npm:~1.0.0" + checksum: 10c0/d38035831865a49b5610206a3a9a9aae4e8523cbbcd01175d0480ffbf1278c47f11d89be3ca7f617ae6d94f29cf797546a4619cd84dd109009ef33f12f69019f + languageName: node + linkType: hard + +"find-my-way@npm:^4.5.0": + version: 4.5.1 + resolution: "find-my-way@npm:4.5.1" + dependencies: + fast-decode-uri-component: "npm:^1.0.1" + fast-deep-equal: "npm:^3.1.3" + safe-regex2: "npm:^2.0.0" + semver-store: "npm:^0.3.0" + checksum: 10c0/3e56f50befde96d4b0a0a8118bd7fe283184e54ed61ac359ce62e7229229ab8b4a5aebe02edfcc126f0b6eef38660b59347293d61752bc845aae823cace8042a + languageName: node + linkType: hard + +"find-up@npm:^4.0.0, find-up@npm:^4.1.0": + version: 4.1.0 + resolution: "find-up@npm:4.1.0" + dependencies: + locate-path: "npm:^5.0.0" + path-exists: "npm:^4.0.0" + checksum: 10c0/0406ee89ebeefa2d507feb07ec366bebd8a6167ae74aa4e34fb4c4abd06cf782a3ce26ae4194d70706f72182841733f00551c209fe575cb00bd92104056e78c1 + languageName: node + linkType: hard + +"find-up@npm:^5.0.0": + version: 5.0.0 + resolution: "find-up@npm:5.0.0" + dependencies: + locate-path: "npm:^6.0.0" + path-exists: "npm:^4.0.0" + checksum: 10c0/062c5a83a9c02f53cdd6d175a37ecf8f87ea5bbff1fdfb828f04bfa021441bc7583e8ebc0872a4c1baab96221fb8a8a275a19809fb93fbc40bd69ec35634069a + languageName: node + linkType: hard + +"fixpack@npm:^4.0.0": + version: 4.0.0 + resolution: "fixpack@npm:4.0.0" + dependencies: + alce: "npm:1.2.0" + chalk: "npm:^3.0.0" + detect-indent: "npm:^6.0.0" + detect-newline: "npm:^3.1.0" + extend-object: "npm:^1.0.0" + rc: "npm:^1.2.8" + bin: + fixpack: bin/fixpack + checksum: 10c0/f88d9cb469a2eb55eeff02024011853726a5a1c04dcd4d609f0f7824333e8226e0411079675a68280dba07e11103a8bd8bd039b1fa87504d7d5cf7cc0d05e4c7 + languageName: node + linkType: hard + +"flat-cache@npm:^3.0.4": + version: 3.2.0 + resolution: "flat-cache@npm:3.2.0" + dependencies: + flatted: "npm:^3.2.9" + keyv: "npm:^4.5.3" + rimraf: "npm:^3.0.2" + checksum: 10c0/b76f611bd5f5d68f7ae632e3ae503e678d205cf97a17c6ab5b12f6ca61188b5f1f7464503efae6dc18683ed8f0b41460beb48ac4b9ac63fe6201296a91ba2f75 + languageName: node + linkType: hard + +"flatstr@npm:^1.0.12": + version: 1.0.12 + resolution: "flatstr@npm:1.0.12" + checksum: 10c0/f99cf801fd3606e8b4aa96b93ec09caab42bc304526ff55a80db03db0ef73c9a014e983a6d72009c4f1bc50e2483d137041fae18a325dc0d851d045c4d6929a9 + languageName: node + linkType: hard + +"flatted@npm:^3.2.9": + version: 3.3.2 + resolution: "flatted@npm:3.3.2" + checksum: 10c0/24cc735e74d593b6c767fe04f2ef369abe15b62f6906158079b9874bdb3ee5ae7110bb75042e70cd3f99d409d766f357caf78d5ecee9780206f5fdc5edbad334 + languageName: node + linkType: hard + +"follow-redirects@npm:^1.15.6": + version: 1.15.9 + resolution: "follow-redirects@npm:1.15.9" + peerDependenciesMeta: + debug: + optional: true + checksum: 10c0/5829165bd112c3c0e82be6c15b1a58fa9dcfaede3b3c54697a82fe4a62dd5ae5e8222956b448d2f98e331525f05d00404aba7d696de9e761ef6e42fdc780244f + languageName: node + linkType: hard + +"foreground-child@npm:^3.1.0": + version: 3.3.0 + resolution: "foreground-child@npm:3.3.0" + dependencies: + cross-spawn: "npm:^7.0.0" + signal-exit: "npm:^4.0.1" + checksum: 10c0/028f1d41000553fcfa6c4bb5c372963bf3d9bf0b1f25a87d1a6253014343fb69dfb1b42d9625d7cf44c8ba429940f3d0ff718b62105d4d4a4f6ef8ca0a53faa2 + languageName: node + linkType: hard + +"fork-ts-checker-webpack-plugin@npm:9.0.2": + version: 9.0.2 + resolution: "fork-ts-checker-webpack-plugin@npm:9.0.2" + dependencies: + "@babel/code-frame": "npm:^7.16.7" + chalk: "npm:^4.1.2" + chokidar: "npm:^3.5.3" + cosmiconfig: "npm:^8.2.0" + deepmerge: "npm:^4.2.2" + fs-extra: "npm:^10.0.0" + memfs: "npm:^3.4.1" + minimatch: "npm:^3.0.4" + node-abort-controller: "npm:^3.0.1" + schema-utils: "npm:^3.1.1" + semver: "npm:^7.3.5" + tapable: "npm:^2.2.1" + peerDependencies: + typescript: ">3.6.0" + webpack: ^5.11.0 + checksum: 10c0/37e11dadcc65d297f07882f1661795289f2bf16fa9dea0b90bcc438855d48787378bce4dfcd8e842782f220503438995efbb28cbe560126f6a744ff740e8cc38 + languageName: node + linkType: hard + +"form-data@npm:^3.0.0": + version: 3.0.2 + resolution: "form-data@npm:3.0.2" + dependencies: + asynckit: "npm:^0.4.0" + combined-stream: "npm:^1.0.8" + mime-types: "npm:^2.1.12" + checksum: 10c0/1157ba53ce3a381ea3321b5506ae843ead4027e1b4567b74afa7d84df7043b33c5e518bb267dac56036c3dd8f4d8268be3e7181691488fff766bfccdc98d3bf7 + languageName: node + linkType: hard + +"form-data@npm:^4.0.0": + version: 4.0.1 + resolution: "form-data@npm:4.0.1" + dependencies: + asynckit: "npm:^0.4.0" + combined-stream: "npm:^1.0.8" + mime-types: "npm:^2.1.12" + checksum: 10c0/bb102d570be8592c23f4ea72d7df9daa50c7792eb0cf1c5d7e506c1706e7426a4e4ae48a35b109e91c85f1c0ec63774a21ae252b66f4eb981cb8efef7d0463c8 + languageName: node + linkType: hard + +"formidable@npm:^3.5.1": + version: 3.5.2 + resolution: "formidable@npm:3.5.2" + dependencies: + dezalgo: "npm:^1.0.4" + hexoid: "npm:^2.0.0" + once: "npm:^1.4.0" + checksum: 10c0/c26d89ba84d392f0e68ba1aca9f779e0f2e94db053d95df562c730782956f302e3f069c07ab96f991415af915ac7b8771f4c813d298df43577fdf439e1e8741e + languageName: node + linkType: hard + +"forwarded-parse@npm:2.1.2": + version: 2.1.2 + resolution: "forwarded-parse@npm:2.1.2" + checksum: 10c0/0c6b4c631775f272b4475e935108635495e8a5b261d1b4a5caef31c47c5a0b04134adc564e655aadfef366a02647fa3ae90a1d3ac19929f3ade47f9bed53036a + languageName: node + linkType: hard + +"forwarded@npm:0.2.0": + version: 0.2.0 + resolution: "forwarded@npm:0.2.0" + checksum: 10c0/9b67c3fac86acdbc9ae47ba1ddd5f2f81526fa4c8226863ede5600a3f7c7416ef451f6f1e240a3cc32d0fd79fcfe6beb08fd0da454f360032bde70bf80afbb33 + languageName: node + linkType: hard + +"fresh@npm:0.5.2": + version: 0.5.2 + resolution: "fresh@npm:0.5.2" + checksum: 10c0/c6d27f3ed86cc5b601404822f31c900dd165ba63fff8152a3ef714e2012e7535027063bc67ded4cb5b3a49fa596495d46cacd9f47d6328459cf570f08b7d9e5a + languageName: node + linkType: hard + +"fs-extra@npm:^10.0.0": + version: 10.1.0 + resolution: "fs-extra@npm:10.1.0" + dependencies: + graceful-fs: "npm:^4.2.0" + jsonfile: "npm:^6.0.1" + universalify: "npm:^2.0.0" + checksum: 10c0/5f579466e7109719d162a9249abbeffe7f426eb133ea486e020b89bc6d67a741134076bf439983f2eb79276ceaf6bd7b7c1e43c3fd67fe889863e69072fb0a5e + languageName: node + linkType: hard + +"fs-minipass@npm:^2.0.0": + version: 2.1.0 + resolution: "fs-minipass@npm:2.1.0" + dependencies: + minipass: "npm:^3.0.0" + checksum: 10c0/703d16522b8282d7299337539c3ed6edddd1afe82435e4f5b76e34a79cd74e488a8a0e26a636afc2440e1a23b03878e2122e3a2cfe375a5cf63c37d92b86a004 + languageName: node + linkType: hard + +"fs-minipass@npm:^3.0.0": + version: 3.0.3 + resolution: "fs-minipass@npm:3.0.3" + dependencies: + minipass: "npm:^7.0.3" + checksum: 10c0/63e80da2ff9b621e2cb1596abcb9207f1cf82b968b116ccd7b959e3323144cce7fb141462200971c38bbf2ecca51695069db45265705bed09a7cd93ae5b89f94 + languageName: node + linkType: hard + +"fs-monkey@npm:^1.0.4": + version: 1.0.6 + resolution: "fs-monkey@npm:1.0.6" + checksum: 10c0/6f2508e792a47e37b7eabd5afc79459c1ea72bce2a46007d2b7ed0bfc3a4d64af38975c6eb7e93edb69ac98bbb907c13ff1b1579b2cf52d3d02dbc0303fca79f + languageName: node + linkType: hard + +"fs.realpath@npm:^1.0.0": + version: 1.0.0 + resolution: "fs.realpath@npm:1.0.0" + checksum: 10c0/444cf1291d997165dfd4c0d58b69f0e4782bfd9149fd72faa4fe299e68e0e93d6db941660b37dd29153bf7186672ececa3b50b7e7249477b03fdf850f287c948 + languageName: node + linkType: hard + +"fsevents@npm:^2.3.2, fsevents@npm:~2.3.2": + version: 2.3.3 + resolution: "fsevents@npm:2.3.3" + dependencies: + node-gyp: "npm:latest" + checksum: 10c0/a1f0c44595123ed717febbc478aa952e47adfc28e2092be66b8ab1635147254ca6cfe1df792a8997f22716d4cbafc73309899ff7bfac2ac3ad8cf2e4ecc3ec60 + conditions: os=darwin + languageName: node + linkType: hard + +"fsevents@patch:fsevents@npm%3A^2.3.2#optional!builtin, fsevents@patch:fsevents@npm%3A~2.3.2#optional!builtin": + version: 2.3.3 + resolution: "fsevents@patch:fsevents@npm%3A2.3.3#optional!builtin::version=2.3.3&hash=df0bf1" + dependencies: + node-gyp: "npm:latest" + conditions: os=darwin + languageName: node + linkType: hard + +"function-bind@npm:^1.1.2": + version: 1.1.2 + resolution: "function-bind@npm:1.1.2" + checksum: 10c0/d8680ee1e5fcd4c197e4ac33b2b4dce03c71f4d91717292785703db200f5c21f977c568d28061226f9b5900cbcd2c84463646134fd5337e7925e0942bc3f46d5 + languageName: node + linkType: hard + +"gauge@npm:^3.0.0": + version: 3.0.2 + resolution: "gauge@npm:3.0.2" + dependencies: + aproba: "npm:^1.0.3 || ^2.0.0" + color-support: "npm:^1.1.2" + console-control-strings: "npm:^1.0.0" + has-unicode: "npm:^2.0.1" + object-assign: "npm:^4.1.1" + signal-exit: "npm:^3.0.0" + string-width: "npm:^4.2.3" + strip-ansi: "npm:^6.0.1" + wide-align: "npm:^1.1.2" + checksum: 10c0/75230ccaf216471e31025c7d5fcea1629596ca20792de50c596eb18ffb14d8404f927cd55535aab2eeecd18d1e11bd6f23ec3c2e9878d2dda1dc74bccc34b913 + languageName: node + linkType: hard + +"gensync@npm:^1.0.0-beta.2": + version: 1.0.0-beta.2 + resolution: "gensync@npm:1.0.0-beta.2" + checksum: 10c0/782aba6cba65b1bb5af3b095d96249d20edbe8df32dbf4696fd49be2583faf676173bf4809386588828e4dd76a3354fcbeb577bab1c833ccd9fc4577f26103f8 + languageName: node + linkType: hard + +"get-caller-file@npm:^2.0.5": + version: 2.0.5 + resolution: "get-caller-file@npm:2.0.5" + checksum: 10c0/c6c7b60271931fa752aeb92f2b47e355eac1af3a2673f47c9589e8f8a41adc74d45551c1bc57b5e66a80609f10ffb72b6f575e4370d61cc3f7f3aaff01757cde + languageName: node + linkType: hard + +"get-intrinsic@npm:^1.2.4, get-intrinsic@npm:^1.2.5, get-intrinsic@npm:^1.2.6": + version: 1.2.7 + resolution: "get-intrinsic@npm:1.2.7" + dependencies: + call-bind-apply-helpers: "npm:^1.0.1" + es-define-property: "npm:^1.0.1" + es-errors: "npm:^1.3.0" + es-object-atoms: "npm:^1.0.0" + function-bind: "npm:^1.1.2" + get-proto: "npm:^1.0.0" + gopd: "npm:^1.2.0" + has-symbols: "npm:^1.1.0" + hasown: "npm:^2.0.2" + math-intrinsics: "npm:^1.1.0" + checksum: 10c0/b475dec9f8bff6f7422f51ff4b7b8d0b68e6776ee83a753c1d627e3008c3442090992788038b37eff72e93e43dceed8c1acbdf2d6751672687ec22127933080d + languageName: node + linkType: hard + +"get-package-type@npm:^0.1.0": + version: 0.1.0 + resolution: "get-package-type@npm:0.1.0" + checksum: 10c0/e34cdf447fdf1902a1f6d5af737eaadf606d2ee3518287abde8910e04159368c268568174b2e71102b87b26c2020486f126bfca9c4fb1ceb986ff99b52ecd1be + languageName: node + linkType: hard + +"get-port@npm:5.1.1": + version: 5.1.1 + resolution: "get-port@npm:5.1.1" + checksum: 10c0/2873877a469b24e6d5e0be490724a17edb39fafc795d1d662e7bea951ca649713b4a50117a473f9d162312cb0e946597bd0e049ed2f866e79e576e8e213d3d1c + languageName: node + linkType: hard + +"get-proto@npm:^1.0.0": + version: 1.0.1 + resolution: "get-proto@npm:1.0.1" + dependencies: + dunder-proto: "npm:^1.0.1" + es-object-atoms: "npm:^1.0.0" + checksum: 10c0/9224acb44603c5526955e83510b9da41baf6ae73f7398875fba50edc5e944223a89c4a72b070fcd78beb5f7bdda58ecb6294adc28f7acfc0da05f76a2399643c + languageName: node + linkType: hard + +"get-stream@npm:^3.0.0": + version: 3.0.0 + resolution: "get-stream@npm:3.0.0" + checksum: 10c0/003f5f3b8870da59c6aafdf6ed7e7b07b48c2f8629cd461bd3900726548b6b8cfa2e14d6b7814fbb08f07a42f4f738407fa70b989928b2783a76b278505bba22 + languageName: node + linkType: hard + +"get-stream@npm:^6.0.0": + version: 6.0.1 + resolution: "get-stream@npm:6.0.1" + checksum: 10c0/49825d57d3fd6964228e6200a58169464b8e8970489b3acdc24906c782fb7f01f9f56f8e6653c4a50713771d6658f7cfe051e5eb8c12e334138c9c918b296341 + languageName: node + linkType: hard + +"glob-parent@npm:^5.1.2, glob-parent@npm:~5.1.2": + version: 5.1.2 + resolution: "glob-parent@npm:5.1.2" + dependencies: + is-glob: "npm:^4.0.1" + checksum: 10c0/cab87638e2112bee3f839ef5f6e0765057163d39c66be8ec1602f3823da4692297ad4e972de876ea17c44d652978638d2fd583c6713d0eb6591706825020c9ee + languageName: node + linkType: hard + +"glob-parent@npm:^6.0.2": + version: 6.0.2 + resolution: "glob-parent@npm:6.0.2" + dependencies: + is-glob: "npm:^4.0.3" + checksum: 10c0/317034d88654730230b3f43bb7ad4f7c90257a426e872ea0bf157473ac61c99bf5d205fad8f0185f989be8d2fa6d3c7dce1645d99d545b6ea9089c39f838e7f8 + languageName: node + linkType: hard + +"glob-to-regexp@npm:^0.4.1": + version: 0.4.1 + resolution: "glob-to-regexp@npm:0.4.1" + checksum: 10c0/0486925072d7a916f052842772b61c3e86247f0a80cc0deb9b5a3e8a1a9faad5b04fb6f58986a09f34d3e96cd2a22a24b7e9882fb1cf904c31e9a310de96c429 + languageName: node + linkType: hard + +"glob@npm:10.3.12": + version: 10.3.12 + resolution: "glob@npm:10.3.12" + dependencies: + foreground-child: "npm:^3.1.0" + jackspeak: "npm:^2.3.6" + minimatch: "npm:^9.0.1" + minipass: "npm:^7.0.4" + path-scurry: "npm:^1.10.2" + bin: + glob: dist/esm/bin.mjs + checksum: 10c0/f60cefdc1cf3f958b2bb5823e1b233727f04916d489dc4641d76914f016e6704421e06a83cbb68b0cb1cb9382298b7a88075b844ad2127fc9727ea22b18b0711 + languageName: node + linkType: hard + +"glob@npm:10.4.5, glob@npm:^10.2.2, glob@npm:^10.3.10, glob@npm:^10.3.3, glob@npm:^10.3.7": + version: 10.4.5 + resolution: "glob@npm:10.4.5" + dependencies: + foreground-child: "npm:^3.1.0" + jackspeak: "npm:^3.1.2" + minimatch: "npm:^9.0.4" + minipass: "npm:^7.1.2" + package-json-from-dist: "npm:^1.0.0" + path-scurry: "npm:^1.11.1" + bin: + glob: dist/esm/bin.mjs + checksum: 10c0/19a9759ea77b8e3ca0a43c2f07ecddc2ad46216b786bb8f993c445aee80d345925a21e5280c7b7c6c59e860a0154b84e4b2b60321fea92cd3c56b4a7489f160e + languageName: node + linkType: hard + +"glob@npm:^7.1.1, glob@npm:^7.1.2, glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:^7.2.0": + version: 7.2.3 + resolution: "glob@npm:7.2.3" + dependencies: + fs.realpath: "npm:^1.0.0" + inflight: "npm:^1.0.4" + inherits: "npm:2" + minimatch: "npm:^3.1.1" + once: "npm:^1.3.0" + path-is-absolute: "npm:^1.0.0" + checksum: 10c0/65676153e2b0c9095100fe7f25a778bf45608eeb32c6048cf307f579649bcc30353277b3b898a3792602c65764e5baa4f643714dfbdfd64ea271d210c7a425fe + languageName: node + linkType: hard + +"globals@npm:^11.1.0": + version: 11.12.0 + resolution: "globals@npm:11.12.0" + checksum: 10c0/758f9f258e7b19226bd8d4af5d3b0dcf7038780fb23d82e6f98932c44e239f884847f1766e8fa9cc5635ccb3204f7fa7314d4408dd4002a5e8ea827b4018f0a1 + languageName: node + linkType: hard + +"globals@npm:^13.19.0": + version: 13.24.0 + resolution: "globals@npm:13.24.0" + dependencies: + type-fest: "npm:^0.20.2" + checksum: 10c0/d3c11aeea898eb83d5ec7a99508600fbe8f83d2cf00cbb77f873dbf2bcb39428eff1b538e4915c993d8a3b3473fa71eeebfe22c9bb3a3003d1e26b1f2c8a42cd + languageName: node + linkType: hard + +"globby@npm:^11.1.0": + version: 11.1.0 + resolution: "globby@npm:11.1.0" + dependencies: + array-union: "npm:^2.1.0" + dir-glob: "npm:^3.0.1" + fast-glob: "npm:^3.2.9" + ignore: "npm:^5.2.0" + merge2: "npm:^1.4.1" + slash: "npm:^3.0.0" + checksum: 10c0/b39511b4afe4bd8a7aead3a27c4ade2b9968649abab0a6c28b1a90141b96ca68ca5db1302f7c7bd29eab66bf51e13916b8e0a3d0ac08f75e1e84a39b35691189 + languageName: node + linkType: hard + +"gopd@npm:^1.0.1, gopd@npm:^1.2.0": + version: 1.2.0 + resolution: "gopd@npm:1.2.0" + checksum: 10c0/50fff1e04ba2b7737c097358534eacadad1e68d24cccee3272e04e007bed008e68d2614f3987788428fd192a5ae3889d08fb2331417e4fc4a9ab366b2043cead + languageName: node + linkType: hard + +"graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.11, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": + version: 4.2.11 + resolution: "graceful-fs@npm:4.2.11" + checksum: 10c0/386d011a553e02bc594ac2ca0bd6d9e4c22d7fa8cfbfc448a6d148c59ea881b092db9dbe3547ae4b88e55f1b01f7c4a2ecc53b310c042793e63aa44cf6c257f2 + languageName: node + linkType: hard + +"graphemer@npm:^1.4.0": + version: 1.4.0 + resolution: "graphemer@npm:1.4.0" + checksum: 10c0/e951259d8cd2e0d196c72ec711add7115d42eb9a8146c8eeda5b8d3ac91e5dd816b9cd68920726d9fd4490368e7ed86e9c423f40db87e2d8dfafa00fa17c3a31 + languageName: node + linkType: hard + +"handlebars@npm:^4.7.8": + version: 4.7.8 + resolution: "handlebars@npm:4.7.8" + dependencies: + minimist: "npm:^1.2.5" + neo-async: "npm:^2.6.2" + source-map: "npm:^0.6.1" + uglify-js: "npm:^3.1.4" + wordwrap: "npm:^1.0.0" + dependenciesMeta: + uglify-js: + optional: true + bin: + handlebars: bin/handlebars + checksum: 10c0/7aff423ea38a14bb379316f3857fe0df3c5d66119270944247f155ba1f08e07a92b340c58edaa00cfe985c21508870ee5183e0634dcb53dd405f35c93ef7f10d + languageName: node + linkType: hard + +"has-flag@npm:^4.0.0": + version: 4.0.0 + resolution: "has-flag@npm:4.0.0" + checksum: 10c0/2e789c61b7888d66993e14e8331449e525ef42aac53c627cc53d1c3334e768bcb6abdc4f5f0de1478a25beec6f0bd62c7549058b7ac53e924040d4f301f02fd1 + languageName: node + linkType: hard + +"has-own-prop@npm:^2.0.0": + version: 2.0.0 + resolution: "has-own-prop@npm:2.0.0" + checksum: 10c0/2745497283d80228b5c5fbb8c63ab1029e604bce7db8d4b36255e427b3695b2153dc978b176674d0dd2a23f132809e04d7ef41fefc0ab85870a5caa918c5c0d9 + languageName: node + linkType: hard + +"has-property-descriptors@npm:^1.0.2": + version: 1.0.2 + resolution: "has-property-descriptors@npm:1.0.2" + dependencies: + es-define-property: "npm:^1.0.0" + checksum: 10c0/253c1f59e80bb476cf0dde8ff5284505d90c3bdb762983c3514d36414290475fe3fd6f574929d84de2a8eec00d35cf07cb6776205ff32efd7c50719125f00236 + languageName: node + linkType: hard + +"has-symbols@npm:^1.0.3, has-symbols@npm:^1.1.0": + version: 1.1.0 + resolution: "has-symbols@npm:1.1.0" + checksum: 10c0/dde0a734b17ae51e84b10986e651c664379018d10b91b6b0e9b293eddb32f0f069688c841fb40f19e9611546130153e0a2a48fd7f512891fb000ddfa36f5a20e + languageName: node + linkType: hard + +"has-tostringtag@npm:^1.0.2": + version: 1.0.2 + resolution: "has-tostringtag@npm:1.0.2" + dependencies: + has-symbols: "npm:^1.0.3" + checksum: 10c0/a8b166462192bafe3d9b6e420a1d581d93dd867adb61be223a17a8d6dad147aa77a8be32c961bb2f27b3ef893cae8d36f564ab651f5e9b7938ae86f74027c48c + languageName: node + linkType: hard + +"has-unicode@npm:^2.0.1": + version: 2.0.1 + resolution: "has-unicode@npm:2.0.1" + checksum: 10c0/ebdb2f4895c26bb08a8a100b62d362e49b2190bcfd84b76bc4be1a3bd4d254ec52d0dd9f2fbcc093fc5eb878b20c52146f9dfd33e2686ed28982187be593b47c + languageName: node + linkType: hard + +"hasown@npm:^2.0.2": + version: 2.0.2 + resolution: "hasown@npm:2.0.2" + dependencies: + function-bind: "npm:^1.1.2" + checksum: 10c0/3769d434703b8ac66b209a4cca0737519925bbdb61dd887f93a16372b14694c63ff4e797686d87c90f08168e81082248b9b028bad60d4da9e0d1148766f56eb9 + languageName: node + linkType: hard + +"he@npm:1.2.0, he@npm:^1.2.0": + version: 1.2.0 + resolution: "he@npm:1.2.0" + bin: + he: bin/he + checksum: 10c0/a27d478befe3c8192f006cdd0639a66798979dfa6e2125c6ac582a19a5ebfec62ad83e8382e6036170d873f46e4536a7e795bf8b95bf7c247f4cc0825ccc8c17 + languageName: node + linkType: hard + +"hexoid@npm:^2.0.0": + version: 2.0.0 + resolution: "hexoid@npm:2.0.0" + checksum: 10c0/a9d5e6f4adeaefcb4a53803dd48bf0a242d92e8ec699555aea616c4bf8f91788f03093595085976f63d6830815dd080c063503540fabc7e854ebfb11161687c6 + languageName: node + linkType: hard + +"highlight.js@npm:^10.7.1": + version: 10.7.3 + resolution: "highlight.js@npm:10.7.3" + checksum: 10c0/073837eaf816922427a9005c56c42ad8786473dc042332dfe7901aa065e92bc3d94ebf704975257526482066abb2c8677cc0326559bb8621e046c21c5991c434 + languageName: node + linkType: hard + +"html-encoding-sniffer@npm:^2.0.1": + version: 2.0.1 + resolution: "html-encoding-sniffer@npm:2.0.1" + dependencies: + whatwg-encoding: "npm:^1.0.5" + checksum: 10c0/6dc3aa2d35a8f0c8c7906ffb665dd24a88f7004f913fafdd3541d24a4da6182ab30c4a0a81387649a1234ecb90182c4136220ed12ae3dc1a57ed68e533dea416 + languageName: node + linkType: hard + +"html-escaper@npm:^2.0.0": + version: 2.0.2 + resolution: "html-escaper@npm:2.0.2" + checksum: 10c0/208e8a12de1a6569edbb14544f4567e6ce8ecc30b9394fcaa4e7bb1e60c12a7c9a1ed27e31290817157e8626f3a4f29e76c8747030822eb84a6abb15c255f0a0 + languageName: node + linkType: hard + +"html-minifier@npm:^4.0.0": + version: 4.0.0 + resolution: "html-minifier@npm:4.0.0" + dependencies: + camel-case: "npm:^3.0.0" + clean-css: "npm:^4.2.1" + commander: "npm:^2.19.0" + he: "npm:^1.2.0" + param-case: "npm:^2.1.1" + relateurl: "npm:^0.2.7" + uglify-js: "npm:^3.5.1" + bin: + html-minifier: ./cli.js + checksum: 10c0/38c2d1cab49593671b104e3bc120b1c5fdf00c75930fcb32e257322219c9d31515af6b39af76e8ecd71fdf3a77d168f8b7b7ce02beba0b72eb5631599b5561bc + languageName: node + linkType: hard + +"html-to-text@npm:9.0.5": + version: 9.0.5 + resolution: "html-to-text@npm:9.0.5" + dependencies: + "@selderee/plugin-htmlparser2": "npm:^0.11.0" + deepmerge: "npm:^4.3.1" + dom-serializer: "npm:^2.0.0" + htmlparser2: "npm:^8.0.2" + selderee: "npm:^0.11.0" + checksum: 10c0/5d2c77b798cf88a81b1da2fc1ea1a3b3e2ff49fe5a3d812392f802fff18ec315cf0969bd7846ef2eb7df8c37f463bc63e8cbdcf84e42696c6f3e15dfa61cdf4f + languageName: node + linkType: hard + +"htmlparser2@npm:^5.0.0": + version: 5.0.1 + resolution: "htmlparser2@npm:5.0.1" + dependencies: + domelementtype: "npm:^2.0.1" + domhandler: "npm:^3.3.0" + domutils: "npm:^2.4.2" + entities: "npm:^2.0.0" + checksum: 10c0/3f276f7ac518930f5330cfe5129dd5764a63e9bae6f57350e90b26affc94b11b2fb6750f056fed245b726d500e78197b4a09c7108c71964fe91303e6e2a29107 + languageName: node + linkType: hard + +"htmlparser2@npm:^8.0.1, htmlparser2@npm:^8.0.2": + version: 8.0.2 + resolution: "htmlparser2@npm:8.0.2" + dependencies: + domelementtype: "npm:^2.3.0" + domhandler: "npm:^5.0.3" + domutils: "npm:^3.0.1" + entities: "npm:^4.4.0" + checksum: 10c0/609cca85886d0bf2c9a5db8c6926a89f3764596877492e2caa7a25a789af4065bc6ee2cdc81807fe6b1d03a87bf8a373b5a754528a4cc05146b713c20575aab4 + languageName: node + linkType: hard + +"htmlparser2@npm:^9.1.0": + version: 9.1.0 + resolution: "htmlparser2@npm:9.1.0" + dependencies: + domelementtype: "npm:^2.3.0" + domhandler: "npm:^5.0.3" + domutils: "npm:^3.1.0" + entities: "npm:^4.5.0" + checksum: 10c0/394f6323efc265bbc791d8c0d96bfe95984e0407565248521ab92e2dc7668e5ceeca7bc6ed18d408b9ee3b25032c5743368a4280d280332d782821d5d467ad8f + languageName: node + linkType: hard + +"http-cache-semantics@npm:^4.1.1": + version: 4.1.1 + resolution: "http-cache-semantics@npm:4.1.1" + checksum: 10c0/ce1319b8a382eb3cbb4a37c19f6bfe14e5bb5be3d09079e885e8c513ab2d3cd9214902f8a31c9dc4e37022633ceabfc2d697405deeaf1b8f3552bb4ed996fdfc + languageName: node + linkType: hard + +"http-errors@npm:2.0.0": + version: 2.0.0 + resolution: "http-errors@npm:2.0.0" + dependencies: + depd: "npm:2.0.0" + inherits: "npm:2.0.4" + setprototypeof: "npm:1.2.0" + statuses: "npm:2.0.1" + toidentifier: "npm:1.0.1" + checksum: 10c0/fc6f2715fe188d091274b5ffc8b3657bd85c63e969daa68ccb77afb05b071a4b62841acb7a21e417b5539014dff2ebf9550f0b14a9ff126f2734a7c1387f8e19 + languageName: node + linkType: hard + +"http-proxy-agent@npm:^4.0.1": + version: 4.0.1 + resolution: "http-proxy-agent@npm:4.0.1" + dependencies: + "@tootallnate/once": "npm:1" + agent-base: "npm:6" + debug: "npm:4" + checksum: 10c0/4fa4774d65b5331814b74ac05cefea56854fc0d5989c80b13432c1b0d42a14c9f4342ca3ad9f0359a52e78da12b1744c9f8a28e50042136ea9171675d972a5fd + languageName: node + linkType: hard + +"http-proxy-agent@npm:^7.0.0": + version: 7.0.2 + resolution: "http-proxy-agent@npm:7.0.2" + dependencies: + agent-base: "npm:^7.1.0" + debug: "npm:^4.3.4" + checksum: 10c0/4207b06a4580fb85dd6dff521f0abf6db517489e70863dca1a0291daa7f2d3d2d6015a57bd702af068ea5cf9f1f6ff72314f5f5b4228d299c0904135d2aef921 + languageName: node + linkType: hard + +"https-proxy-agent@npm:^5.0.0": + version: 5.0.1 + resolution: "https-proxy-agent@npm:5.0.1" + dependencies: + agent-base: "npm:6" + debug: "npm:4" + checksum: 10c0/6dd639f03434003577c62b27cafdb864784ef19b2de430d8ae2a1d45e31c4fd60719e5637b44db1a88a046934307da7089e03d6089ec3ddacc1189d8de8897d1 + languageName: node + linkType: hard + +"https-proxy-agent@npm:^7.0.1": + version: 7.0.6 + resolution: "https-proxy-agent@npm:7.0.6" + dependencies: + agent-base: "npm:^7.1.2" + debug: "npm:4" + checksum: 10c0/f729219bc735edb621fa30e6e84e60ee5d00802b8247aac0d7b79b0bd6d4b3294737a337b93b86a0bd9e68099d031858a39260c976dc14cdbba238ba1f8779ac + languageName: node + linkType: hard + +"human-signals@npm:^2.1.0": + version: 2.1.0 + resolution: "human-signals@npm:2.1.0" + checksum: 10c0/695edb3edfcfe9c8b52a76926cd31b36978782062c0ed9b1192b36bebc75c4c87c82e178dfcb0ed0fc27ca59d434198aac0bd0be18f5781ded775604db22304a + languageName: node + linkType: hard + +"husky@npm:^9.0.11": + version: 9.1.7 + resolution: "husky@npm:9.1.7" + bin: + husky: bin.js + checksum: 10c0/35bb110a71086c48906aa7cd3ed4913fb913823715359d65e32e0b964cb1e255593b0ae8014a5005c66a68e6fa66c38dcfa8056dbbdfb8b0187c0ffe7ee3a58f + languageName: node + linkType: hard + +"iconv-lite@npm:0.4.24, iconv-lite@npm:^0.4.24": + version: 0.4.24 + resolution: "iconv-lite@npm:0.4.24" + dependencies: + safer-buffer: "npm:>= 2.1.2 < 3" + checksum: 10c0/c6886a24cc00f2a059767440ec1bc00d334a89f250db8e0f7feb4961c8727118457e27c495ba94d082e51d3baca378726cd110aaf7ded8b9bbfd6a44760cf1d4 + languageName: node + linkType: hard + +"iconv-lite@npm:0.6.3, iconv-lite@npm:^0.6.2": + version: 0.6.3 + resolution: "iconv-lite@npm:0.6.3" + dependencies: + safer-buffer: "npm:>= 2.1.2 < 3.0.0" + checksum: 10c0/98102bc66b33fcf5ac044099d1257ba0b7ad5e3ccd3221f34dd508ab4070edff183276221684e1e0555b145fce0850c9f7d2b60a9fcac50fbb4ea0d6e845a3b1 + languageName: node + linkType: hard + +"ieee754@npm:^1.1.13, ieee754@npm:^1.2.1": + version: 1.2.1 + resolution: "ieee754@npm:1.2.1" + checksum: 10c0/b0782ef5e0935b9f12883a2e2aa37baa75da6e66ce6515c168697b42160807d9330de9a32ec1ed73149aea02e0d822e572bca6f1e22bdcbd2149e13b050b17bb + languageName: node + linkType: hard + +"ignore@npm:^5.2.0, ignore@npm:^5.2.4, ignore@npm:^5.3.1": + version: 5.3.2 + resolution: "ignore@npm:5.3.2" + checksum: 10c0/f9f652c957983634ded1e7f02da3b559a0d4cc210fca3792cb67f1b153623c9c42efdc1c4121af171e295444459fc4a9201101fb041b1104a3c000bccb188337 + languageName: node + linkType: hard + +"import-fresh@npm:^3.2.1, import-fresh@npm:^3.3.0": + version: 3.3.0 + resolution: "import-fresh@npm:3.3.0" + dependencies: + parent-module: "npm:^1.0.0" + resolve-from: "npm:^4.0.0" + checksum: 10c0/7f882953aa6b740d1f0e384d0547158bc86efbf2eea0f1483b8900a6f65c5a5123c2cf09b0d542cc419d0b98a759ecaeb394237e97ea427f2da221dc3cd80cc3 + languageName: node + linkType: hard + +"import-in-the-middle@npm:^1.11.2, import-in-the-middle@npm:^1.8.1": + version: 1.12.0 + resolution: "import-in-the-middle@npm:1.12.0" + dependencies: + acorn: "npm:^8.8.2" + acorn-import-attributes: "npm:^1.9.5" + cjs-module-lexer: "npm:^1.2.2" + module-details-from-path: "npm:^1.0.3" + checksum: 10c0/e0f92bd27b9ef15099494ef0e8ba0b6fa6f0e643a3ff1d41b52530b6e4ff2a502099fff345f3ffb7c75f78cb189903b8d2d92fab5f8123badbc9e790cc19bbe7 + languageName: node + linkType: hard + +"import-local@npm:^3.0.2": + version: 3.2.0 + resolution: "import-local@npm:3.2.0" + dependencies: + pkg-dir: "npm:^4.2.0" + resolve-cwd: "npm:^3.0.0" + bin: + import-local-fixture: fixtures/cli.js + checksum: 10c0/94cd6367a672b7e0cb026970c85b76902d2710a64896fa6de93bd5c571dd03b228c5759308959de205083e3b1c61e799f019c9e36ee8e9c523b993e1057f0433 + languageName: node + linkType: hard + +"imurmurhash@npm:^0.1.4": + version: 0.1.4 + resolution: "imurmurhash@npm:0.1.4" + checksum: 10c0/8b51313850dd33605c6c9d3fd9638b714f4c4c40250cff658209f30d40da60f78992fb2df5dabee4acf589a6a82bbc79ad5486550754bd9ec4e3fc0d4a57d6a6 + languageName: node + linkType: hard + +"inflight@npm:^1.0.4": + version: 1.0.6 + resolution: "inflight@npm:1.0.6" + dependencies: + once: "npm:^1.3.0" + wrappy: "npm:1" + checksum: 10c0/7faca22584600a9dc5b9fca2cd5feb7135ac8c935449837b315676b4c90aa4f391ec4f42240178244b5a34e8bede1948627fda392ca3191522fc46b34e985ab2 + languageName: node + linkType: hard + +"inherits@npm:2, inherits@npm:2.0.4, inherits@npm:^2.0.1, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.3": + version: 2.0.4 + resolution: "inherits@npm:2.0.4" + checksum: 10c0/4e531f648b29039fb7426fb94075e6545faa1eb9fe83c29f0b6d9e7263aceb4289d2d4557db0d428188eeb449cc7c5e77b0a0b2c4e248ff2a65933a0dee49ef2 + languageName: node + linkType: hard + +"ini@npm:^1.3.4, ini@npm:~1.3.0": + version: 1.3.8 + resolution: "ini@npm:1.3.8" + checksum: 10c0/ec93838d2328b619532e4f1ff05df7909760b6f66d9c9e2ded11e5c1897d6f2f9980c54dd638f88654b00919ce31e827040631eab0a3969e4d1abefa0719516a + languageName: node + linkType: hard + +"inquirer@npm:8.2.6": + version: 8.2.6 + resolution: "inquirer@npm:8.2.6" + dependencies: + ansi-escapes: "npm:^4.2.1" + chalk: "npm:^4.1.1" + cli-cursor: "npm:^3.1.0" + cli-width: "npm:^3.0.0" + external-editor: "npm:^3.0.3" + figures: "npm:^3.0.0" + lodash: "npm:^4.17.21" + mute-stream: "npm:0.0.8" + ora: "npm:^5.4.1" + run-async: "npm:^2.4.0" + rxjs: "npm:^7.5.5" + string-width: "npm:^4.1.0" + strip-ansi: "npm:^6.0.0" + through: "npm:^2.3.6" + wrap-ansi: "npm:^6.0.1" + checksum: 10c0/eb5724de1778265323f3a68c80acfa899378cb43c24cdcb58661386500e5696b6b0b6c700e046b7aa767fe7b4823c6f04e6ddc268173e3f84116112529016296 + languageName: node + linkType: hard + +"inquirer@npm:9.2.15": + version: 9.2.15 + resolution: "inquirer@npm:9.2.15" + dependencies: + "@ljharb/through": "npm:^2.3.12" + ansi-escapes: "npm:^4.3.2" + chalk: "npm:^5.3.0" + cli-cursor: "npm:^3.1.0" + cli-width: "npm:^4.1.0" + external-editor: "npm:^3.1.0" + figures: "npm:^3.2.0" + lodash: "npm:^4.17.21" + mute-stream: "npm:1.0.0" + ora: "npm:^5.4.1" + run-async: "npm:^3.0.0" + rxjs: "npm:^7.8.1" + string-width: "npm:^4.2.3" + strip-ansi: "npm:^6.0.1" + wrap-ansi: "npm:^6.2.0" + checksum: 10c0/c94d5863d4d05aeb1c6acfd30416037da03ecc1d7a9be099faf746000cd17ea134038b46888f5baed7abc0fa8efc1918029db896048d9dfa93610b7c999a1b71 + languageName: node + linkType: hard + +"ip-address@npm:^9.0.5": + version: 9.0.5 + resolution: "ip-address@npm:9.0.5" + dependencies: + jsbn: "npm:1.1.0" + sprintf-js: "npm:^1.1.3" + checksum: 10c0/331cd07fafcb3b24100613e4b53e1a2b4feab11e671e655d46dc09ee233da5011284d09ca40c4ecbdfe1d0004f462958675c224a804259f2f78d2465a87824bc + languageName: node + linkType: hard + +"ipaddr.js@npm:1.9.1": + version: 1.9.1 + resolution: "ipaddr.js@npm:1.9.1" + checksum: 10c0/0486e775047971d3fdb5fb4f063829bac45af299ae0b82dcf3afa2145338e08290563a2a70f34b732d795ecc8311902e541a8530eeb30d75860a78ff4e94ce2a + languageName: node + linkType: hard + +"is-arrayish@npm:^0.2.1": + version: 0.2.1 + resolution: "is-arrayish@npm:0.2.1" + checksum: 10c0/e7fb686a739068bb70f860b39b67afc62acc62e36bb61c5f965768abce1873b379c563e61dd2adad96ebb7edf6651111b385e490cf508378959b0ed4cac4e729 + languageName: node + linkType: hard + +"is-binary-path@npm:~2.1.0": + version: 2.1.0 + resolution: "is-binary-path@npm:2.1.0" + dependencies: + binary-extensions: "npm:^2.0.0" + checksum: 10c0/a16eaee59ae2b315ba36fad5c5dcaf8e49c3e27318f8ab8fa3cdb8772bf559c8d1ba750a589c2ccb096113bb64497084361a25960899cb6172a6925ab6123d38 + languageName: node + linkType: hard + +"is-core-module@npm:^2.16.0": + version: 2.16.1 + resolution: "is-core-module@npm:2.16.1" + dependencies: + hasown: "npm:^2.0.2" + checksum: 10c0/898443c14780a577e807618aaae2b6f745c8538eca5c7bc11388a3f2dc6de82b9902bcc7eb74f07be672b11bbe82dd6a6edded44a00cb3d8f933d0459905eedd + languageName: node + linkType: hard + +"is-docker@npm:^2.0.0": + version: 2.2.1 + resolution: "is-docker@npm:2.2.1" + bin: + is-docker: cli.js + checksum: 10c0/e828365958d155f90c409cdbe958f64051d99e8aedc2c8c4cd7c89dcf35329daed42f7b99346f7828df013e27deb8f721cf9408ba878c76eb9e8290235fbcdcc + languageName: node + linkType: hard + +"is-expression@npm:^4.0.0": + version: 4.0.0 + resolution: "is-expression@npm:4.0.0" + dependencies: + acorn: "npm:^7.1.1" + object-assign: "npm:^4.1.1" + checksum: 10c0/541831d39d3e7bfc8cecd966d6b0f3c0e6d9055342f17b634fb23e74f51ce90f1bfc3cf231c722fe003a61e8d4f0b9e07244fdaba57f4fc70a163c74006fd5a0 + languageName: node + linkType: hard + +"is-extglob@npm:^2.1.1": + version: 2.1.1 + resolution: "is-extglob@npm:2.1.1" + checksum: 10c0/5487da35691fbc339700bbb2730430b07777a3c21b9ebaecb3072512dfd7b4ba78ac2381a87e8d78d20ea08affb3f1971b4af629173a6bf435ff8a4c47747912 + languageName: node + linkType: hard + +"is-fullwidth-code-point@npm:^3.0.0": + version: 3.0.0 + resolution: "is-fullwidth-code-point@npm:3.0.0" + checksum: 10c0/bb11d825e049f38e04c06373a8d72782eee0205bda9d908cc550ccb3c59b99d750ff9537982e01733c1c94a58e35400661f57042158ff5e8f3e90cf936daf0fc + languageName: node + linkType: hard + +"is-generator-fn@npm:^2.0.0": + version: 2.1.0 + resolution: "is-generator-fn@npm:2.1.0" + checksum: 10c0/2957cab387997a466cd0bf5c1b6047bd21ecb32bdcfd8996b15747aa01002c1c88731802f1b3d34ac99f4f6874b626418bd118658cf39380fe5fff32a3af9c4d + languageName: node + linkType: hard + +"is-glob@npm:^4.0.0, is-glob@npm:^4.0.1, is-glob@npm:^4.0.3, is-glob@npm:~4.0.1": + version: 4.0.3 + resolution: "is-glob@npm:4.0.3" + dependencies: + is-extglob: "npm:^2.1.1" + checksum: 10c0/17fb4014e22be3bbecea9b2e3a76e9e34ff645466be702f1693e8f1ee1adac84710d0be0bd9f967d6354036fd51ab7c2741d954d6e91dae6bb69714de92c197a + languageName: node + linkType: hard + +"is-interactive@npm:^1.0.0": + version: 1.0.0 + resolution: "is-interactive@npm:1.0.0" + checksum: 10c0/dd47904dbf286cd20aa58c5192161be1a67138485b9836d5a70433b21a45442e9611b8498b8ab1f839fc962c7620667a50535fdfb4a6bc7989b8858645c06b4d + languageName: node + linkType: hard + +"is-number@npm:^7.0.0": + version: 7.0.0 + resolution: "is-number@npm:7.0.0" + checksum: 10c0/b4686d0d3053146095ccd45346461bc8e53b80aeb7671cc52a4de02dbbf7dc0d1d2a986e2fe4ae206984b4d34ef37e8b795ebc4f4295c978373e6575e295d811 + languageName: node + linkType: hard + +"is-path-inside@npm:^3.0.3": + version: 3.0.3 + resolution: "is-path-inside@npm:3.0.3" + checksum: 10c0/cf7d4ac35fb96bab6a1d2c3598fe5ebb29aafb52c0aaa482b5a3ed9d8ba3edc11631e3ec2637660c44b3ce0e61a08d54946e8af30dec0b60a7c27296c68ffd05 + languageName: node + linkType: hard + +"is-potential-custom-element-name@npm:^1.0.1": + version: 1.0.1 + resolution: "is-potential-custom-element-name@npm:1.0.1" + checksum: 10c0/b73e2f22bc863b0939941d369486d308b43d7aef1f9439705e3582bfccaa4516406865e32c968a35f97a99396dac84e2624e67b0a16b0a15086a785e16ce7db9 + languageName: node + linkType: hard + +"is-promise@npm:^2.0.0": + version: 2.2.2 + resolution: "is-promise@npm:2.2.2" + checksum: 10c0/2dba959812380e45b3df0fb12e7cb4d4528c989c7abb03ececb1d1fd6ab1cbfee956ca9daa587b9db1d8ac3c1e5738cf217bdb3dfd99df8c691be4c00ae09069 + languageName: node + linkType: hard + +"is-regex@npm:^1.0.3": + version: 1.2.1 + resolution: "is-regex@npm:1.2.1" + dependencies: + call-bound: "npm:^1.0.2" + gopd: "npm:^1.2.0" + has-tostringtag: "npm:^1.0.2" + hasown: "npm:^2.0.2" + checksum: 10c0/1d3715d2b7889932349241680032e85d0b492cfcb045acb75ffc2c3085e8d561184f1f7e84b6f8321935b4aea39bc9c6ba74ed595b57ce4881a51dfdbc214e04 + languageName: node + linkType: hard + +"is-stream@npm:^1.1.0": + version: 1.1.0 + resolution: "is-stream@npm:1.1.0" + checksum: 10c0/b8ae7971e78d2e8488d15f804229c6eed7ed36a28f8807a1815938771f4adff0e705218b7dab968270433f67103e4fef98062a0beea55d64835f705ee72c7002 + languageName: node + linkType: hard + +"is-stream@npm:^2.0.0": + version: 2.0.1 + resolution: "is-stream@npm:2.0.1" + checksum: 10c0/7c284241313fc6efc329b8d7f08e16c0efeb6baab1b4cd0ba579eb78e5af1aa5da11e68559896a2067cd6c526bd29241dda4eb1225e627d5aa1a89a76d4635a5 + languageName: node + linkType: hard + +"is-typedarray@npm:^1.0.0": + version: 1.0.0 + resolution: "is-typedarray@npm:1.0.0" + checksum: 10c0/4c096275ba041a17a13cca33ac21c16bc4fd2d7d7eb94525e7cd2c2f2c1a3ab956e37622290642501ff4310601e413b675cf399ad6db49855527d2163b3eeeec + languageName: node + linkType: hard + +"is-unicode-supported@npm:^0.1.0": + version: 0.1.0 + resolution: "is-unicode-supported@npm:0.1.0" + checksum: 10c0/00cbe3455c3756be68d2542c416cab888aebd5012781d6819749fefb15162ff23e38501fe681b3d751c73e8ff561ac09a5293eba6f58fdf0178462ce6dcb3453 + languageName: node + linkType: hard + +"is-wsl@npm:^2.1.1": + version: 2.2.0 + resolution: "is-wsl@npm:2.2.0" + dependencies: + is-docker: "npm:^2.0.0" + checksum: 10c0/a6fa2d370d21be487c0165c7a440d567274fbba1a817f2f0bfa41cc5e3af25041d84267baa22df66696956038a43973e72fca117918c91431920bdef490fa25e + languageName: node + linkType: hard + +"isarray@npm:~1.0.0": + version: 1.0.0 + resolution: "isarray@npm:1.0.0" + checksum: 10c0/18b5be6669be53425f0b84098732670ed4e727e3af33bc7f948aac01782110eb9a18b3b329c5323bcdd3acdaae547ee077d3951317e7f133bff7105264b3003d + languageName: node + linkType: hard + +"isexe@npm:^2.0.0": + version: 2.0.0 + resolution: "isexe@npm:2.0.0" + checksum: 10c0/228cfa503fadc2c31596ab06ed6aa82c9976eec2bfd83397e7eaf06d0ccf42cd1dfd6743bf9aeb01aebd4156d009994c5f76ea898d2832c1fe342da923ca457d + languageName: node + linkType: hard + +"isexe@npm:^3.1.1": + version: 3.1.1 + resolution: "isexe@npm:3.1.1" + checksum: 10c0/9ec257654093443eb0a528a9c8cbba9c0ca7616ccb40abd6dde7202734d96bb86e4ac0d764f0f8cd965856aacbff2f4ce23e730dc19dfb41e3b0d865ca6fdcc7 + languageName: node + linkType: hard + +"istanbul-lib-coverage@npm:^3.0.0, istanbul-lib-coverage@npm:^3.2.0": + version: 3.2.2 + resolution: "istanbul-lib-coverage@npm:3.2.2" + checksum: 10c0/6c7ff2106769e5f592ded1fb418f9f73b4411fd5a084387a5410538332b6567cd1763ff6b6cadca9b9eb2c443cce2f7ea7d7f1b8d315f9ce58539793b1e0922b + languageName: node + linkType: hard + +"istanbul-lib-instrument@npm:^5.0.4, istanbul-lib-instrument@npm:^5.1.0": + version: 5.2.1 + resolution: "istanbul-lib-instrument@npm:5.2.1" + dependencies: + "@babel/core": "npm:^7.12.3" + "@babel/parser": "npm:^7.14.7" + "@istanbuljs/schema": "npm:^0.1.2" + istanbul-lib-coverage: "npm:^3.2.0" + semver: "npm:^6.3.0" + checksum: 10c0/8a1bdf3e377dcc0d33ec32fe2b6ecacdb1e4358fd0eb923d4326bb11c67622c0ceb99600a680f3dad5d29c66fc1991306081e339b4d43d0b8a2ab2e1d910a6ee + languageName: node + linkType: hard + +"istanbul-lib-report@npm:^3.0.0": + version: 3.0.1 + resolution: "istanbul-lib-report@npm:3.0.1" + dependencies: + istanbul-lib-coverage: "npm:^3.0.0" + make-dir: "npm:^4.0.0" + supports-color: "npm:^7.1.0" + checksum: 10c0/84323afb14392de8b6a5714bd7e9af845cfbd56cfe71ed276cda2f5f1201aea673c7111901227ee33e68e4364e288d73861eb2ed48f6679d1e69a43b6d9b3ba7 + languageName: node + linkType: hard + +"istanbul-lib-source-maps@npm:^4.0.0": + version: 4.0.1 + resolution: "istanbul-lib-source-maps@npm:4.0.1" + dependencies: + debug: "npm:^4.1.1" + istanbul-lib-coverage: "npm:^3.0.0" + source-map: "npm:^0.6.1" + checksum: 10c0/19e4cc405016f2c906dff271a76715b3e881fa9faeb3f09a86cb99b8512b3a5ed19cadfe0b54c17ca0e54c1142c9c6de9330d65506e35873994e06634eebeb66 + languageName: node + linkType: hard + +"istanbul-reports@npm:^3.1.3": + version: 3.1.7 + resolution: "istanbul-reports@npm:3.1.7" + dependencies: + html-escaper: "npm:^2.0.0" + istanbul-lib-report: "npm:^3.0.0" + checksum: 10c0/a379fadf9cf8dc5dfe25568115721d4a7eb82fbd50b005a6672aff9c6989b20cc9312d7865814e0859cd8df58cbf664482e1d3604be0afde1f7fc3ccc1394a51 + languageName: node + linkType: hard + +"iterare@npm:1.2.1": + version: 1.2.1 + resolution: "iterare@npm:1.2.1" + checksum: 10c0/02667d486e3e83ead028ba8484d927498c2ceab7e8c6a69dd881fd02abc4114f00b13abb36b592252fbb578b6e6f99ca1dfc2835408b9158c9a112a9964f453f + languageName: node + linkType: hard + +"jackspeak@npm:^2.3.6": + version: 2.3.6 + resolution: "jackspeak@npm:2.3.6" + dependencies: + "@isaacs/cliui": "npm:^8.0.2" + "@pkgjs/parseargs": "npm:^0.11.0" + dependenciesMeta: + "@pkgjs/parseargs": + optional: true + checksum: 10c0/f01d8f972d894cd7638bc338e9ef5ddb86f7b208ce177a36d718eac96ec86638a6efa17d0221b10073e64b45edc2ce15340db9380b1f5d5c5d000cbc517dc111 + languageName: node + linkType: hard + +"jackspeak@npm:^3.1.2": + version: 3.4.3 + resolution: "jackspeak@npm:3.4.3" + dependencies: + "@isaacs/cliui": "npm:^8.0.2" + "@pkgjs/parseargs": "npm:^0.11.0" + dependenciesMeta: + "@pkgjs/parseargs": + optional: true + checksum: 10c0/6acc10d139eaefdbe04d2f679e6191b3abf073f111edf10b1de5302c97ec93fffeb2fdd8681ed17f16268aa9dd4f8c588ed9d1d3bffbbfa6e8bf897cbb3149b9 + languageName: node + linkType: hard + +"jake@npm:^10.8.5": + version: 10.9.2 + resolution: "jake@npm:10.9.2" + dependencies: + async: "npm:^3.2.3" + chalk: "npm:^4.0.2" + filelist: "npm:^1.0.4" + minimatch: "npm:^3.1.2" + bin: + jake: bin/cli.js + checksum: 10c0/c4597b5ed9b6a908252feab296485a4f87cba9e26d6c20e0ca144fb69e0c40203d34a2efddb33b3d297b8bd59605e6c1f44f6221ca1e10e69175ecbf3ff5fe31 + languageName: node + linkType: hard + +"jest-changed-files@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-changed-files@npm:27.5.1" + dependencies: + "@jest/types": "npm:^27.5.1" + execa: "npm:^5.0.0" + throat: "npm:^6.0.1" + checksum: 10c0/ee2e663da669a1f8a1452626c71b9691a34cc6789bbf6cb04ef4430a63301db806039e93dd5c9cc6c0caa3d3f250ff18ed51e058fc3533a71f73e24f41b5d1bd + languageName: node + linkType: hard + +"jest-circus@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-circus@npm:27.5.1" + dependencies: + "@jest/environment": "npm:^27.5.1" + "@jest/test-result": "npm:^27.5.1" + "@jest/types": "npm:^27.5.1" + "@types/node": "npm:*" + chalk: "npm:^4.0.0" + co: "npm:^4.6.0" + dedent: "npm:^0.7.0" + expect: "npm:^27.5.1" + is-generator-fn: "npm:^2.0.0" + jest-each: "npm:^27.5.1" + jest-matcher-utils: "npm:^27.5.1" + jest-message-util: "npm:^27.5.1" + jest-runtime: "npm:^27.5.1" + jest-snapshot: "npm:^27.5.1" + jest-util: "npm:^27.5.1" + pretty-format: "npm:^27.5.1" + slash: "npm:^3.0.0" + stack-utils: "npm:^2.0.3" + throat: "npm:^6.0.1" + checksum: 10c0/195b88ff6c74a1ad0f2386bea25700e884f32e05be9211bc197b960e7553a952ab38aff9aafb057c6a92eaa85bde2804e01244278a477b80a99e11f890ee15d9 + languageName: node + linkType: hard + +"jest-cli@npm:^27.0.6": + version: 27.5.1 + resolution: "jest-cli@npm:27.5.1" + dependencies: + "@jest/core": "npm:^27.5.1" + "@jest/test-result": "npm:^27.5.1" + "@jest/types": "npm:^27.5.1" + chalk: "npm:^4.0.0" + exit: "npm:^0.1.2" + graceful-fs: "npm:^4.2.9" + import-local: "npm:^3.0.2" + jest-config: "npm:^27.5.1" + jest-util: "npm:^27.5.1" + jest-validate: "npm:^27.5.1" + prompts: "npm:^2.0.1" + yargs: "npm:^16.2.0" + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + bin: + jest: bin/jest.js + checksum: 10c0/45abaafbe1a01ea4c48953c85d42c961b6e33ef5847e10642713cde97761611b0af56d5a0dcb82abf19c500c6e9b680222a7f953b437e5760ba584521b74f9ea + languageName: node + linkType: hard + +"jest-config@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-config@npm:27.5.1" + dependencies: + "@babel/core": "npm:^7.8.0" + "@jest/test-sequencer": "npm:^27.5.1" + "@jest/types": "npm:^27.5.1" + babel-jest: "npm:^27.5.1" + chalk: "npm:^4.0.0" + ci-info: "npm:^3.2.0" + deepmerge: "npm:^4.2.2" + glob: "npm:^7.1.1" + graceful-fs: "npm:^4.2.9" + jest-circus: "npm:^27.5.1" + jest-environment-jsdom: "npm:^27.5.1" + jest-environment-node: "npm:^27.5.1" + jest-get-type: "npm:^27.5.1" + jest-jasmine2: "npm:^27.5.1" + jest-regex-util: "npm:^27.5.1" + jest-resolve: "npm:^27.5.1" + jest-runner: "npm:^27.5.1" + jest-util: "npm:^27.5.1" + jest-validate: "npm:^27.5.1" + micromatch: "npm:^4.0.4" + parse-json: "npm:^5.2.0" + pretty-format: "npm:^27.5.1" + slash: "npm:^3.0.0" + strip-json-comments: "npm:^3.1.1" + peerDependencies: + ts-node: ">=9.0.0" + peerDependenciesMeta: + ts-node: + optional: true + checksum: 10c0/28867b165f0e25b711a2ade5f261a1b1606b476704ff68a50688eaf3b9c853f69542645cc7e0dab38079ed74e3acc99e38628faf736c1739e44fc869c62c6051 + languageName: node + linkType: hard + +"jest-diff@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-diff@npm:27.5.1" + dependencies: + chalk: "npm:^4.0.0" + diff-sequences: "npm:^27.5.1" + jest-get-type: "npm:^27.5.1" + pretty-format: "npm:^27.5.1" + checksum: 10c0/48f008c7b4ea7794108319eb61050315b1723e7391cb01e4377c072cadcab10a984cb09d2a6876cb65f100d06c970fd932996192e092b26006f885c00945e7ad + languageName: node + linkType: hard + +"jest-diff@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-diff@npm:29.7.0" + dependencies: + chalk: "npm:^4.0.0" + diff-sequences: "npm:^29.6.3" + jest-get-type: "npm:^29.6.3" + pretty-format: "npm:^29.7.0" + checksum: 10c0/89a4a7f182590f56f526443dde69acefb1f2f0c9e59253c61d319569856c4931eae66b8a3790c443f529267a0ddba5ba80431c585deed81827032b2b2a1fc999 + languageName: node + linkType: hard + +"jest-docblock@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-docblock@npm:27.5.1" + dependencies: + detect-newline: "npm:^3.0.0" + checksum: 10c0/0ce3661a9152497b3a766996eda42edeab51f676fa57ec414a0168fef2a9b1784d056879281c22bca2875c9e63d41327cac0749a8c6e205330e13fcfe0e40316 + languageName: node + linkType: hard + +"jest-each@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-each@npm:27.5.1" + dependencies: + "@jest/types": "npm:^27.5.1" + chalk: "npm:^4.0.0" + jest-get-type: "npm:^27.5.1" + jest-util: "npm:^27.5.1" + pretty-format: "npm:^27.5.1" + checksum: 10c0/e382f677e69c15aa906ec0ae2d3d944aa948ce338b2bbcb480b76c16eb12cc2141d78edda48c510363e3b2c507cc2140569c3a163c64ffa34e14cc6a8b37fb81 + languageName: node + linkType: hard + +"jest-environment-jsdom@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-environment-jsdom@npm:27.5.1" + dependencies: + "@jest/environment": "npm:^27.5.1" + "@jest/fake-timers": "npm:^27.5.1" + "@jest/types": "npm:^27.5.1" + "@types/node": "npm:*" + jest-mock: "npm:^27.5.1" + jest-util: "npm:^27.5.1" + jsdom: "npm:^16.6.0" + checksum: 10c0/ea759ffa43e96d773983a4172c32c1a3774907723564a30a001c8a85d22d9ed82f6c45329a514152744e8916379c1c4cf9e527297ecfa1e8a4cc4888141b38fd + languageName: node + linkType: hard + +"jest-environment-node@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-environment-node@npm:27.5.1" + dependencies: + "@jest/environment": "npm:^27.5.1" + "@jest/fake-timers": "npm:^27.5.1" + "@jest/types": "npm:^27.5.1" + "@types/node": "npm:*" + jest-mock: "npm:^27.5.1" + jest-util: "npm:^27.5.1" + checksum: 10c0/3bbc31545436c6bb4a18841241e62036382a7261b9bb8cdc2823ec942a8a3053f98219b3ec2a4a7920bfba347602c16dd16767d9fece915134aee2e30091165c + languageName: node + linkType: hard + +"jest-get-type@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-get-type@npm:27.5.1" + checksum: 10c0/42ee0101336bccfc3c1cff598b603c6006db7876b6117e5bd4a9fb7ffaadfb68febdb9ae68d1c47bc3a4174b070153fc6cfb59df995dcd054e81ace5028a7269 + languageName: node + linkType: hard + +"jest-get-type@npm:^29.6.3": + version: 29.6.3 + resolution: "jest-get-type@npm:29.6.3" + checksum: 10c0/552e7a97a983d3c2d4e412a44eb7de0430ff773dd99f7500962c268d6dfbfa431d7d08f919c9d960530e5f7f78eb47f267ad9b318265e5092b3ff9ede0db7c2b + languageName: node + linkType: hard + +"jest-haste-map@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-haste-map@npm:27.5.1" + dependencies: + "@jest/types": "npm:^27.5.1" + "@types/graceful-fs": "npm:^4.1.2" + "@types/node": "npm:*" + anymatch: "npm:^3.0.3" + fb-watchman: "npm:^2.0.0" + fsevents: "npm:^2.3.2" + graceful-fs: "npm:^4.2.9" + jest-regex-util: "npm:^27.5.1" + jest-serializer: "npm:^27.5.1" + jest-util: "npm:^27.5.1" + jest-worker: "npm:^27.5.1" + micromatch: "npm:^4.0.4" + walker: "npm:^1.0.7" + dependenciesMeta: + fsevents: + optional: true + checksum: 10c0/831ae476fddc6babe64ea3e7f91b4ccee0371c03ec88af5a615023711866abdd496b51344f47c4d02b6b47b433367ca41e9e42d79527b39afec767e8be9e8a63 + languageName: node + linkType: hard + +"jest-jasmine2@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-jasmine2@npm:27.5.1" + dependencies: + "@jest/environment": "npm:^27.5.1" + "@jest/source-map": "npm:^27.5.1" + "@jest/test-result": "npm:^27.5.1" + "@jest/types": "npm:^27.5.1" + "@types/node": "npm:*" + chalk: "npm:^4.0.0" + co: "npm:^4.6.0" + expect: "npm:^27.5.1" + is-generator-fn: "npm:^2.0.0" + jest-each: "npm:^27.5.1" + jest-matcher-utils: "npm:^27.5.1" + jest-message-util: "npm:^27.5.1" + jest-runtime: "npm:^27.5.1" + jest-snapshot: "npm:^27.5.1" + jest-util: "npm:^27.5.1" + pretty-format: "npm:^27.5.1" + throat: "npm:^6.0.1" + checksum: 10c0/028172d5d65abf7e8da89c30894112efdd18007a934f30b89e3f35def3764824a9680917996d5e551caa2087589a372a2539777d5554fa3bae6c7e36afec6d4c + languageName: node + linkType: hard + +"jest-leak-detector@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-leak-detector@npm:27.5.1" + dependencies: + jest-get-type: "npm:^27.5.1" + pretty-format: "npm:^27.5.1" + checksum: 10c0/33ec88ab7d76931ae0a03b18186234114e42a4e9fae748f8a197f7f85b884c2e92ea692c06704b8a469ac26b9c6411a7a1bbc8d34580ed56672a7f6be2681aee + languageName: node + linkType: hard + +"jest-matcher-utils@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-matcher-utils@npm:27.5.1" + dependencies: + chalk: "npm:^4.0.0" + jest-diff: "npm:^27.5.1" + jest-get-type: "npm:^27.5.1" + pretty-format: "npm:^27.5.1" + checksum: 10c0/a2f082062e8bedc9cfe2654177a894ca43768c6db4c0f4efc0d6ec195e305a99e3d868ff54cc61bcd7f1c810d8ee28c9ac6374de21715dc52f136876de739a73 + languageName: node + linkType: hard + +"jest-matcher-utils@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-matcher-utils@npm:29.7.0" + dependencies: + chalk: "npm:^4.0.0" + jest-diff: "npm:^29.7.0" + jest-get-type: "npm:^29.6.3" + pretty-format: "npm:^29.7.0" + checksum: 10c0/0d0e70b28fa5c7d4dce701dc1f46ae0922102aadc24ed45d594dd9b7ae0a8a6ef8b216718d1ab79e451291217e05d4d49a82666e1a3cc2b428b75cd9c933244e + languageName: node + linkType: hard + +"jest-message-util@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-message-util@npm:27.5.1" + dependencies: + "@babel/code-frame": "npm:^7.12.13" + "@jest/types": "npm:^27.5.1" + "@types/stack-utils": "npm:^2.0.0" + chalk: "npm:^4.0.0" + graceful-fs: "npm:^4.2.9" + micromatch: "npm:^4.0.4" + pretty-format: "npm:^27.5.1" + slash: "npm:^3.0.0" + stack-utils: "npm:^2.0.3" + checksum: 10c0/447c99061006949bd0c5ac3fcf4dfad11e763712ada1b3df1c1f276d1d4f55b3f7a8bee27591cd1fe23b56220830b2a74f321925d345374d1b7cf9cd536f19b5 + languageName: node + linkType: hard + +"jest-message-util@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-message-util@npm:29.7.0" + dependencies: + "@babel/code-frame": "npm:^7.12.13" + "@jest/types": "npm:^29.6.3" + "@types/stack-utils": "npm:^2.0.0" + chalk: "npm:^4.0.0" + graceful-fs: "npm:^4.2.9" + micromatch: "npm:^4.0.4" + pretty-format: "npm:^29.7.0" + slash: "npm:^3.0.0" + stack-utils: "npm:^2.0.3" + checksum: 10c0/850ae35477f59f3e6f27efac5215f706296e2104af39232bb14e5403e067992afb5c015e87a9243ec4d9df38525ef1ca663af9f2f4766aa116f127247008bd22 + languageName: node + linkType: hard + +"jest-mock@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-mock@npm:27.5.1" + dependencies: + "@jest/types": "npm:^27.5.1" + "@types/node": "npm:*" + checksum: 10c0/6ad58454b37ee3f726930b07efbf40a7c79d2d2d9c7b226708b4b550bc0904de93bcacf714105d11952a5c0bc855e5d59145c8c9dbbb4e69b46e7367abf53b52 + languageName: node + linkType: hard + +"jest-pnp-resolver@npm:^1.2.2": + version: 1.2.3 + resolution: "jest-pnp-resolver@npm:1.2.3" + peerDependencies: + jest-resolve: "*" + peerDependenciesMeta: + jest-resolve: + optional: true + checksum: 10c0/86eec0c78449a2de733a6d3e316d49461af6a858070e113c97f75fb742a48c2396ea94150cbca44159ffd4a959f743a47a8b37a792ef6fdad2cf0a5cba973fac + languageName: node + linkType: hard + +"jest-regex-util@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-regex-util@npm:27.5.1" + checksum: 10c0/f9790d417b667b38155c4bbd58f2afc0ad9f774381e5358776df02df3f29564069d4773c7ba050db6826bad8a4cc7ef82c3b4c65bfa508e419fdd063a9682c42 + languageName: node + linkType: hard + +"jest-resolve-dependencies@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-resolve-dependencies@npm:27.5.1" + dependencies: + "@jest/types": "npm:^27.5.1" + jest-regex-util: "npm:^27.5.1" + jest-snapshot: "npm:^27.5.1" + checksum: 10c0/06ba847f9386b0c198bb033a2041fac141dec443ae3c60acdc3426c1844aa4c942770f8f272a1f54686979894e389bc7774d4123bb3a0fbfabe02b7deef9ef62 + languageName: node + linkType: hard + +"jest-resolve@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-resolve@npm:27.5.1" + dependencies: + "@jest/types": "npm:^27.5.1" + chalk: "npm:^4.0.0" + graceful-fs: "npm:^4.2.9" + jest-haste-map: "npm:^27.5.1" + jest-pnp-resolver: "npm:^1.2.2" + jest-util: "npm:^27.5.1" + jest-validate: "npm:^27.5.1" + resolve: "npm:^1.20.0" + resolve.exports: "npm:^1.1.0" + slash: "npm:^3.0.0" + checksum: 10c0/5f9577e424346881964683f22472bd12bd9cfd70e49cb1800ccd31f2e88b0985ed353ca5cc7fb02de9093be2c733ab32de526c99a1192455ddb167afe916efd1 + languageName: node + linkType: hard + +"jest-runner@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-runner@npm:27.5.1" + dependencies: + "@jest/console": "npm:^27.5.1" + "@jest/environment": "npm:^27.5.1" + "@jest/test-result": "npm:^27.5.1" + "@jest/transform": "npm:^27.5.1" + "@jest/types": "npm:^27.5.1" + "@types/node": "npm:*" + chalk: "npm:^4.0.0" + emittery: "npm:^0.8.1" + graceful-fs: "npm:^4.2.9" + jest-docblock: "npm:^27.5.1" + jest-environment-jsdom: "npm:^27.5.1" + jest-environment-node: "npm:^27.5.1" + jest-haste-map: "npm:^27.5.1" + jest-leak-detector: "npm:^27.5.1" + jest-message-util: "npm:^27.5.1" + jest-resolve: "npm:^27.5.1" + jest-runtime: "npm:^27.5.1" + jest-util: "npm:^27.5.1" + jest-worker: "npm:^27.5.1" + source-map-support: "npm:^0.5.6" + throat: "npm:^6.0.1" + checksum: 10c0/b79962003c641eaabe4fa8855ee2127009c48f929dfca67f7fbdbc3fe84ea827964d5cbfcfd791405448011014172ea8c4faffe3669a148824ef4fac37838fe8 + languageName: node + linkType: hard + +"jest-runtime@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-runtime@npm:27.5.1" + dependencies: + "@jest/environment": "npm:^27.5.1" + "@jest/fake-timers": "npm:^27.5.1" + "@jest/globals": "npm:^27.5.1" + "@jest/source-map": "npm:^27.5.1" + "@jest/test-result": "npm:^27.5.1" + "@jest/transform": "npm:^27.5.1" + "@jest/types": "npm:^27.5.1" + chalk: "npm:^4.0.0" + cjs-module-lexer: "npm:^1.0.0" + collect-v8-coverage: "npm:^1.0.0" + execa: "npm:^5.0.0" + glob: "npm:^7.1.3" + graceful-fs: "npm:^4.2.9" + jest-haste-map: "npm:^27.5.1" + jest-message-util: "npm:^27.5.1" + jest-mock: "npm:^27.5.1" + jest-regex-util: "npm:^27.5.1" + jest-resolve: "npm:^27.5.1" + jest-snapshot: "npm:^27.5.1" + jest-util: "npm:^27.5.1" + slash: "npm:^3.0.0" + strip-bom: "npm:^4.0.0" + checksum: 10c0/22ec24f4b928bdbdb7415ae7470ef523a6379812b8d0500d4d2f2124107d3af2c8fb99842352e320e79a47508a017dd5ab4b713270ad04ba9144c1961672ce29 + languageName: node + linkType: hard + +"jest-serializer@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-serializer@npm:27.5.1" + dependencies: + "@types/node": "npm:*" + graceful-fs: "npm:^4.2.9" + checksum: 10c0/7a2b634a5a044b3ccf912a17032338309c90b50831a2e500f963b25e9a4ce9b550a1af1fb64f7c9a271ed6a1f951fca37bd0d61a0b286aefe197812193b0d825 + languageName: node + linkType: hard + +"jest-snapshot@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-snapshot@npm:27.5.1" + dependencies: + "@babel/core": "npm:^7.7.2" + "@babel/generator": "npm:^7.7.2" + "@babel/plugin-syntax-typescript": "npm:^7.7.2" + "@babel/traverse": "npm:^7.7.2" + "@babel/types": "npm:^7.0.0" + "@jest/transform": "npm:^27.5.1" + "@jest/types": "npm:^27.5.1" + "@types/babel__traverse": "npm:^7.0.4" + "@types/prettier": "npm:^2.1.5" + babel-preset-current-node-syntax: "npm:^1.0.0" + chalk: "npm:^4.0.0" + expect: "npm:^27.5.1" + graceful-fs: "npm:^4.2.9" + jest-diff: "npm:^27.5.1" + jest-get-type: "npm:^27.5.1" + jest-haste-map: "npm:^27.5.1" + jest-matcher-utils: "npm:^27.5.1" + jest-message-util: "npm:^27.5.1" + jest-util: "npm:^27.5.1" + natural-compare: "npm:^1.4.0" + pretty-format: "npm:^27.5.1" + semver: "npm:^7.3.2" + checksum: 10c0/819ed445a749065efdfb7c3a5befb9331e550930acdcb8cbe49d5e64a1f05451a91094550aae6840e17afeeefc3660f205f2a7ba780fa0d0ebfa5dcfb1345f15 + languageName: node + linkType: hard + +"jest-util@npm:^27.0.0, jest-util@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-util@npm:27.5.1" + dependencies: + "@jest/types": "npm:^27.5.1" + "@types/node": "npm:*" + chalk: "npm:^4.0.0" + ci-info: "npm:^3.2.0" + graceful-fs: "npm:^4.2.9" + picomatch: "npm:^2.2.3" + checksum: 10c0/0f60cd2a2e09a6646ccd4ff489f1970282c0694724104979e897bd5164f91204726f5408572bf5e759d09e59d5c4e4dc65a643d2b630e06a10402bba07bf2a2e + languageName: node + linkType: hard + +"jest-util@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-util@npm:29.7.0" + dependencies: + "@jest/types": "npm:^29.6.3" + "@types/node": "npm:*" + chalk: "npm:^4.0.0" + ci-info: "npm:^3.2.0" + graceful-fs: "npm:^4.2.9" + picomatch: "npm:^2.2.3" + checksum: 10c0/bc55a8f49fdbb8f51baf31d2a4f312fb66c9db1483b82f602c9c990e659cdd7ec529c8e916d5a89452ecbcfae4949b21b40a7a59d4ffc0cd813a973ab08c8150 + languageName: node + linkType: hard + +"jest-validate@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-validate@npm:27.5.1" + dependencies: + "@jest/types": "npm:^27.5.1" + camelcase: "npm:^6.2.0" + chalk: "npm:^4.0.0" + jest-get-type: "npm:^27.5.1" + leven: "npm:^3.1.0" + pretty-format: "npm:^27.5.1" + checksum: 10c0/ac5aa45b3ce798e450eda33764fa6d8c75f8794f92005e596928a78847b6013c5a6198ca2c2b4097a9315befb3868d12a52fbe7e6945cc85f81cb824d87c5c59 + languageName: node + linkType: hard + +"jest-watcher@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-watcher@npm:27.5.1" + dependencies: + "@jest/test-result": "npm:^27.5.1" + "@jest/types": "npm:^27.5.1" + "@types/node": "npm:*" + ansi-escapes: "npm:^4.2.1" + chalk: "npm:^4.0.0" + jest-util: "npm:^27.5.1" + string-length: "npm:^4.0.1" + checksum: 10c0/e42f5e38bc4da56bde6ccec4b13b7646460a3d6b567934e0ca96d72c2ce837223ffbb84a2f8428197da4323870c03f00969237f9b40f83a3072111a8cd66cc4b + languageName: node + linkType: hard + +"jest-worker@npm:^27.4.5, jest-worker@npm:^27.5.1": + version: 27.5.1 + resolution: "jest-worker@npm:27.5.1" + dependencies: + "@types/node": "npm:*" + merge-stream: "npm:^2.0.0" + supports-color: "npm:^8.0.0" + checksum: 10c0/8c4737ffd03887b3c6768e4cc3ca0269c0336c1e4b1b120943958ddb035ed2a0fc6acab6dc99631720a3720af4e708ff84fb45382ad1e83c27946adf3623969b + languageName: node + linkType: hard + +"jest@npm:27.0.6": + version: 27.0.6 + resolution: "jest@npm:27.0.6" + dependencies: + "@jest/core": "npm:^27.0.6" + import-local: "npm:^3.0.2" + jest-cli: "npm:^27.0.6" + peerDependencies: + node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 + peerDependenciesMeta: + node-notifier: + optional: true + bin: + jest: bin/jest.js + checksum: 10c0/d1a82558cc5fc8332fb05f19516465f597dd6759dda41d744a84b23dc596537eeeebe8e18af522e695729a96029502e1ebd1dcd826bbda1b845be795d5476636 + languageName: node + linkType: hard + +"js-beautify@npm:^1.6.14": + version: 1.15.1 + resolution: "js-beautify@npm:1.15.1" + dependencies: + config-chain: "npm:^1.1.13" + editorconfig: "npm:^1.0.4" + glob: "npm:^10.3.3" + js-cookie: "npm:^3.0.5" + nopt: "npm:^7.2.0" + bin: + css-beautify: js/bin/css-beautify.js + html-beautify: js/bin/html-beautify.js + js-beautify: js/bin/js-beautify.js + checksum: 10c0/4140dd95537143eb429b6c8e47e21310f16c032d97a03163c6c7c0502bc663242a5db08d3ad941b87f24a142ce4f9190c556d2340bcd056545326377dfae5362 + languageName: node + linkType: hard + +"js-cookie@npm:^3.0.5": + version: 3.0.5 + resolution: "js-cookie@npm:3.0.5" + checksum: 10c0/04a0e560407b4489daac3a63e231d35f4e86f78bff9d792011391b49c59f721b513411cd75714c418049c8dc9750b20fcddad1ca5a2ca616c3aca4874cce5b3a + languageName: node + linkType: hard + +"js-stringify@npm:^1.0.2": + version: 1.0.2 + resolution: "js-stringify@npm:1.0.2" + checksum: 10c0/a450c04fde3a7e1c27f1c3c4300433f8d79322f9e3c2e76266843cef8c0b5a69b5f11b5f173212b2f15f2df09e068ef7ddf46ef775e2486f3006a6f4e912578d + languageName: node + linkType: hard + +"js-tokens@npm:^4.0.0": + version: 4.0.0 + resolution: "js-tokens@npm:4.0.0" + checksum: 10c0/e248708d377aa058eacf2037b07ded847790e6de892bbad3dac0abba2e759cb9f121b00099a65195616badcb6eca8d14d975cb3e89eb1cfda644756402c8aeed + languageName: node + linkType: hard + +"js-yaml@npm:4.1.0, js-yaml@npm:^4.1.0": + version: 4.1.0 + resolution: "js-yaml@npm:4.1.0" + dependencies: + argparse: "npm:^2.0.1" + bin: + js-yaml: bin/js-yaml.js + checksum: 10c0/184a24b4eaacfce40ad9074c64fd42ac83cf74d8c8cd137718d456ced75051229e5061b8633c3366b8aada17945a7a356b337828c19da92b51ae62126575018f + languageName: node + linkType: hard + +"js-yaml@npm:^3.13.1": + version: 3.14.1 + resolution: "js-yaml@npm:3.14.1" + dependencies: + argparse: "npm:^1.0.7" + esprima: "npm:^4.0.0" + bin: + js-yaml: bin/js-yaml.js + checksum: 10c0/6746baaaeac312c4db8e75fa22331d9a04cccb7792d126ed8ce6a0bbcfef0cedaddd0c5098fade53db067c09fe00aa1c957674b4765610a8b06a5a189e46433b + languageName: node + linkType: hard + +"jsbn@npm:1.1.0": + version: 1.1.0 + resolution: "jsbn@npm:1.1.0" + checksum: 10c0/4f907fb78d7b712e11dea8c165fe0921f81a657d3443dde75359ed52eb2b5d33ce6773d97985a089f09a65edd80b11cb75c767b57ba47391fee4c969f7215c96 + languageName: node + linkType: hard + +"jsdom@npm:^16.6.0": + version: 16.7.0 + resolution: "jsdom@npm:16.7.0" + dependencies: + abab: "npm:^2.0.5" + acorn: "npm:^8.2.4" + acorn-globals: "npm:^6.0.0" + cssom: "npm:^0.4.4" + cssstyle: "npm:^2.3.0" + data-urls: "npm:^2.0.0" + decimal.js: "npm:^10.2.1" + domexception: "npm:^2.0.1" + escodegen: "npm:^2.0.0" + form-data: "npm:^3.0.0" + html-encoding-sniffer: "npm:^2.0.1" + http-proxy-agent: "npm:^4.0.1" + https-proxy-agent: "npm:^5.0.0" + is-potential-custom-element-name: "npm:^1.0.1" + nwsapi: "npm:^2.2.0" + parse5: "npm:6.0.1" + saxes: "npm:^5.0.1" + symbol-tree: "npm:^3.2.4" + tough-cookie: "npm:^4.0.0" + w3c-hr-time: "npm:^1.0.2" + w3c-xmlserializer: "npm:^2.0.0" + webidl-conversions: "npm:^6.1.0" + whatwg-encoding: "npm:^1.0.5" + whatwg-mimetype: "npm:^2.3.0" + whatwg-url: "npm:^8.5.0" + ws: "npm:^7.4.6" + xml-name-validator: "npm:^3.0.0" + peerDependencies: + canvas: ^2.5.0 + peerDependenciesMeta: + canvas: + optional: true + checksum: 10c0/e9ba6ea5f5e0d18647ccedec16bc3c69c8c739732ffcb27c66ffd3cc3f876add291ca4f0b9c209ace939ce2aa3ba9e4d67b7f05317921a4d3eab02fe1cc164ef + languageName: node + linkType: hard + +"jsesc@npm:^3.0.2": + version: 3.1.0 + resolution: "jsesc@npm:3.1.0" + bin: + jsesc: bin/jsesc + checksum: 10c0/531779df5ec94f47e462da26b4cbf05eb88a83d9f08aac2ba04206508fc598527a153d08bd462bae82fc78b3eaa1a908e1a4a79f886e9238641c4cdefaf118b1 + languageName: node + linkType: hard + +"json-buffer@npm:3.0.1": + version: 3.0.1 + resolution: "json-buffer@npm:3.0.1" + checksum: 10c0/0d1c91569d9588e7eef2b49b59851f297f3ab93c7b35c7c221e288099322be6b562767d11e4821da500f3219542b9afd2e54c5dc573107c1126ed1080f8e96d7 + languageName: node + linkType: hard + +"json-parse-even-better-errors@npm:^2.3.0, json-parse-even-better-errors@npm:^2.3.1": + version: 2.3.1 + resolution: "json-parse-even-better-errors@npm:2.3.1" + checksum: 10c0/140932564c8f0b88455432e0f33c4cb4086b8868e37524e07e723f4eaedb9425bdc2bafd71bd1d9765bd15fd1e2d126972bc83990f55c467168c228c24d665f3 + languageName: node + linkType: hard + +"json-schema-traverse@npm:^0.4.1": + version: 0.4.1 + resolution: "json-schema-traverse@npm:0.4.1" + checksum: 10c0/108fa90d4cc6f08243aedc6da16c408daf81793bf903e9fd5ab21983cda433d5d2da49e40711da016289465ec2e62e0324dcdfbc06275a607fe3233fde4942ce + languageName: node + linkType: hard + +"json-schema-traverse@npm:^1.0.0": + version: 1.0.0 + resolution: "json-schema-traverse@npm:1.0.0" + checksum: 10c0/71e30015d7f3d6dc1c316d6298047c8ef98a06d31ad064919976583eb61e1018a60a0067338f0f79cabc00d84af3fcc489bd48ce8a46ea165d9541ba17fb30c6 + languageName: node + linkType: hard + +"json-stable-stringify-without-jsonify@npm:^1.0.1": + version: 1.0.1 + resolution: "json-stable-stringify-without-jsonify@npm:1.0.1" + checksum: 10c0/cb168b61fd4de83e58d09aaa6425ef71001bae30d260e2c57e7d09a5fd82223e2f22a042dedaab8db23b7d9ae46854b08bb1f91675a8be11c5cffebef5fb66a5 + languageName: node + linkType: hard + +"json5@npm:2.x, json5@npm:^2.2.2, json5@npm:^2.2.3": + version: 2.2.3 + resolution: "json5@npm:2.2.3" + bin: + json5: lib/cli.js + checksum: 10c0/5a04eed94810fa55c5ea138b2f7a5c12b97c3750bc63d11e511dcecbfef758003861522a070c2272764ee0f4e3e323862f386945aeb5b85b87ee43f084ba586c + languageName: node + linkType: hard + +"jsonc-parser@npm:3.2.1": + version: 3.2.1 + resolution: "jsonc-parser@npm:3.2.1" + checksum: 10c0/ada66dec143d7f9cb0e2d0d29c69e9ce40d20f3a4cb96b0c6efb745025ac7f9ba647d7ac0990d0adfc37a2d2ae084a12009a9c833dbdbeadf648879a99b9df89 + languageName: node + linkType: hard + +"jsonc-parser@npm:3.3.1": + version: 3.3.1 + resolution: "jsonc-parser@npm:3.3.1" + checksum: 10c0/269c3ae0a0e4f907a914bf334306c384aabb9929bd8c99f909275ebd5c2d3bc70b9bcd119ad794f339dec9f24b6a4ee9cd5a8ab2e6435e730ad4075388fc2ab6 + languageName: node + linkType: hard + +"jsonfile@npm:^6.0.1": + version: 6.1.0 + resolution: "jsonfile@npm:6.1.0" + dependencies: + graceful-fs: "npm:^4.1.6" + universalify: "npm:^2.0.0" + dependenciesMeta: + graceful-fs: + optional: true + checksum: 10c0/4f95b5e8a5622b1e9e8f33c96b7ef3158122f595998114d1e7f03985649ea99cb3cd99ce1ed1831ae94c8c8543ab45ebd044207612f31a56fd08462140e46865 + languageName: node + linkType: hard + +"jsonwebtoken@npm:9.0.2, jsonwebtoken@npm:^9.0.0, jsonwebtoken@npm:^9.0.2": + version: 9.0.2 + resolution: "jsonwebtoken@npm:9.0.2" + dependencies: + jws: "npm:^3.2.2" + lodash.includes: "npm:^4.3.0" + lodash.isboolean: "npm:^3.0.3" + lodash.isinteger: "npm:^4.0.4" + lodash.isnumber: "npm:^3.0.3" + lodash.isplainobject: "npm:^4.0.6" + lodash.isstring: "npm:^4.0.1" + lodash.once: "npm:^4.0.0" + ms: "npm:^2.1.1" + semver: "npm:^7.5.4" + checksum: 10c0/d287a29814895e866db2e5a0209ce730cbc158441a0e5a70d5e940eb0d28ab7498c6bf45029cc8b479639bca94056e9a7f254e2cdb92a2f5750c7f358657a131 + languageName: node + linkType: hard + +"jstransformer@npm:1.0.0": + version: 1.0.0 + resolution: "jstransformer@npm:1.0.0" + dependencies: + is-promise: "npm:^2.0.0" + promise: "npm:^7.0.1" + checksum: 10c0/11f9b4f368a55878dd7973154cd83b0adca27f974d21217728652530775b2bec281e92109de66f0c9e37c76af796d5b76b33f3e38363214a83d102d523a7285b + languageName: node + linkType: hard + +"juice@npm:^10.0.0": + version: 10.0.1 + resolution: "juice@npm:10.0.1" + dependencies: + cheerio: "npm:1.0.0-rc.12" + commander: "npm:^6.1.0" + mensch: "npm:^0.3.4" + slick: "npm:^1.12.2" + web-resource-inliner: "npm:^6.0.1" + bin: + juice: bin/juice + checksum: 10c0/10265610aea6b50a382313f95e2e7e130a8476a727ebbc956ab34dd413b1b8f54a26e81b37e528f4cef248f8d20a776dac0e61fa0f13ce6d853a17ca2b384228 + languageName: node + linkType: hard + +"jwa@npm:^1.4.1": + version: 1.4.1 + resolution: "jwa@npm:1.4.1" + dependencies: + buffer-equal-constant-time: "npm:1.0.1" + ecdsa-sig-formatter: "npm:1.0.11" + safe-buffer: "npm:^5.0.1" + checksum: 10c0/5c533540bf38702e73cf14765805a94027c66a0aa8b16bc3e89d8d905e61a4ce2791e87e21be97d1293a5ee9d4f3e5e47737e671768265ca4f25706db551d5e9 + languageName: node + linkType: hard + +"jws@npm:^3.2.2": + version: 3.2.2 + resolution: "jws@npm:3.2.2" + dependencies: + jwa: "npm:^1.4.1" + safe-buffer: "npm:^5.0.1" + checksum: 10c0/e770704533d92df358adad7d1261fdecad4d7b66fa153ba80d047e03ca0f1f73007ce5ed3fbc04d2eba09ba6e7e6e645f351e08e5ab51614df1b0aa4f384dfff + languageName: node + linkType: hard + +"keyv@npm:^4.5.3": + version: 4.5.4 + resolution: "keyv@npm:4.5.4" + dependencies: + json-buffer: "npm:3.0.1" + checksum: 10c0/aa52f3c5e18e16bb6324876bb8b59dd02acf782a4b789c7b2ae21107fab95fab3890ed448d4f8dba80ce05391eeac4bfabb4f02a20221342982f806fa2cf271e + languageName: node + linkType: hard + +"kleur@npm:^3.0.3": + version: 3.0.3 + resolution: "kleur@npm:3.0.3" + checksum: 10c0/cd3a0b8878e7d6d3799e54340efe3591ca787d9f95f109f28129bdd2915e37807bf8918bb295ab86afb8c82196beec5a1adcaf29042ce3f2bd932b038fe3aa4b + languageName: node + linkType: hard + +"leac@npm:^0.6.0": + version: 0.6.0 + resolution: "leac@npm:0.6.0" + checksum: 10c0/5257781e10791ef8462eb1cbe5e48e3cda7692486f2a775265d6f5216cc088960c62f138163b8df0dcf2119d18673bfe7b050d6b41543d92a7b7ac90e4eb1e8b + languageName: node + linkType: hard + +"leven@npm:^3.1.0": + version: 3.1.0 + resolution: "leven@npm:3.1.0" + checksum: 10c0/cd778ba3fbab0f4d0500b7e87d1f6e1f041507c56fdcd47e8256a3012c98aaee371d4c15e0a76e0386107af2d42e2b7466160a2d80688aaa03e66e49949f42df + languageName: node + linkType: hard + +"levn@npm:^0.4.1": + version: 0.4.1 + resolution: "levn@npm:0.4.1" + dependencies: + prelude-ls: "npm:^1.2.1" + type-check: "npm:~0.4.0" + checksum: 10c0/effb03cad7c89dfa5bd4f6989364bfc79994c2042ec5966cb9b95990e2edee5cd8969ddf42616a0373ac49fac1403437deaf6e9050fbbaa3546093a59b9ac94e + languageName: node + linkType: hard + +"libbase64@npm:1.3.0": + version: 1.3.0 + resolution: "libbase64@npm:1.3.0" + checksum: 10c0/4ece76ce09fa389d0c578c83a121c16452916521b177f50c3e8637dd9919170c96c12e1c7de63b1c88da8e5aa7e7ab574c26d18f1f64666f46b358b4b5873c8b + languageName: node + linkType: hard + +"libmime@npm:5.3.6": + version: 5.3.6 + resolution: "libmime@npm:5.3.6" + dependencies: + encoding-japanese: "npm:2.2.0" + iconv-lite: "npm:0.6.3" + libbase64: "npm:1.3.0" + libqp: "npm:2.1.1" + checksum: 10c0/54afa19f3500fe14b7562fd055518f1d82bf0f1076690a9b097d1a126322de7425d6d29aa9db9b51bc41b2ed16eacff65d7f30cd3622f7010f60993dfc79041e + languageName: node + linkType: hard + +"libphonenumber-js@npm:^1.10.53": + version: 1.11.17 + resolution: "libphonenumber-js@npm:1.11.17" + checksum: 10c0/102bc66f82b4fb86983f3c68d7b8eafd5e5f82be48bcd87c4c3a723b08e62d2deffa78a5d646698f2ba163f4e0d5722d99661ba9ec36f12b5a108fcdf8731059 + languageName: node + linkType: hard + +"libqp@npm:2.1.1": + version: 2.1.1 + resolution: "libqp@npm:2.1.1" + checksum: 10c0/6e78f0676cd2424b3ddbf3273ab8539871299310dba433b7e2ec10a41830acecb4d074ea8b78b706dea349996f011ce519d92f81ede712c4824a2dd402aa376c + languageName: node + linkType: hard + +"light-my-request@npm:^4.2.0": + version: 4.12.0 + resolution: "light-my-request@npm:4.12.0" + dependencies: + ajv: "npm:^8.1.0" + cookie: "npm:^0.5.0" + process-warning: "npm:^1.0.0" + set-cookie-parser: "npm:^2.4.1" + checksum: 10c0/d95b9e5bec2fe32ec02d77791c2e5786358f396f27c9c15c97f224e8bb94e357e143f89b67856f20ee2f980136f2c9ac3a934177f8d10b3c184a81c578b00e6f + languageName: node + linkType: hard + +"lines-and-columns@npm:^1.1.6": + version: 1.2.4 + resolution: "lines-and-columns@npm:1.2.4" + checksum: 10c0/3da6ee62d4cd9f03f5dc90b4df2540fb85b352081bee77fe4bbcd12c9000ead7f35e0a38b8d09a9bb99b13223446dd8689ff3c4959807620726d788701a83d2d + languageName: node + linkType: hard + +"linkify-it@npm:5.0.0": + version: 5.0.0 + resolution: "linkify-it@npm:5.0.0" + dependencies: + uc.micro: "npm:^2.0.0" + checksum: 10c0/ff4abbcdfa2003472fc3eb4b8e60905ec97718e11e33cca52059919a4c80cc0e0c2a14d23e23d8c00e5402bc5a885cdba8ca053a11483ab3cc8b3c7a52f88e2d + languageName: node + linkType: hard + +"liquidjs@npm:^10.11.1": + version: 10.20.1 + resolution: "liquidjs@npm:10.20.1" + dependencies: + commander: "npm:^10.0.0" + bin: + liquid: bin/liquid.js + liquidjs: bin/liquid.js + checksum: 10c0/403e99184fdaf27cddbf53fe0b3bc9cd611803ea1418adc2595d6ded5d0576825fc38f5f6e2bc846d965a7ead4009e5b8ae343366354ae0fb713fafb0cd92e43 + languageName: node + linkType: hard + +"loader-runner@npm:^4.2.0": + version: 4.3.0 + resolution: "loader-runner@npm:4.3.0" + checksum: 10c0/a44d78aae0907a72f73966fe8b82d1439c8c485238bd5a864b1b9a2a3257832effa858790241e6b37876b5446a78889adf2fcc8dd897ce54c089ecc0a0ce0bf0 + languageName: node + linkType: hard + +"locate-path@npm:^5.0.0": + version: 5.0.0 + resolution: "locate-path@npm:5.0.0" + dependencies: + p-locate: "npm:^4.1.0" + checksum: 10c0/33a1c5247e87e022f9713e6213a744557a3e9ec32c5d0b5efb10aa3a38177615bf90221a5592674857039c1a0fd2063b82f285702d37b792d973e9e72ace6c59 + languageName: node + linkType: hard + +"locate-path@npm:^6.0.0": + version: 6.0.0 + resolution: "locate-path@npm:6.0.0" + dependencies: + p-locate: "npm:^5.0.0" + checksum: 10c0/d3972ab70dfe58ce620e64265f90162d247e87159b6126b01314dd67be43d50e96a50b517bce2d9452a79409c7614054c277b5232377de50416564a77ac7aad3 + languageName: node + linkType: hard + +"lodash.includes@npm:^4.3.0": + version: 4.3.0 + resolution: "lodash.includes@npm:4.3.0" + checksum: 10c0/7ca498b9b75bf602d04e48c0adb842dfc7d90f77bcb2a91a2b2be34a723ad24bc1c8b3683ec6b2552a90f216c723cdea530ddb11a3320e08fa38265703978f4b + languageName: node + linkType: hard + +"lodash.isboolean@npm:^3.0.3": + version: 3.0.3 + resolution: "lodash.isboolean@npm:3.0.3" + checksum: 10c0/0aac604c1ef7e72f9a6b798e5b676606042401dd58e49f051df3cc1e3adb497b3d7695635a5cbec4ae5f66456b951fdabe7d6b387055f13267cde521f10ec7f7 + languageName: node + linkType: hard + +"lodash.isinteger@npm:^4.0.4": + version: 4.0.4 + resolution: "lodash.isinteger@npm:4.0.4" + checksum: 10c0/4c3e023a2373bf65bf366d3b8605b97ec830bca702a926939bcaa53f8e02789b6a176e7f166b082f9365bfec4121bfeb52e86e9040cb8d450e64c858583f61b7 + languageName: node + linkType: hard + +"lodash.isnumber@npm:^3.0.3": + version: 3.0.3 + resolution: "lodash.isnumber@npm:3.0.3" + checksum: 10c0/2d01530513a1ee4f72dd79528444db4e6360588adcb0e2ff663db2b3f642d4bb3d687051ae1115751ca9082db4fdef675160071226ca6bbf5f0c123dbf0aa12d + languageName: node + linkType: hard + +"lodash.isplainobject@npm:^4.0.6": + version: 4.0.6 + resolution: "lodash.isplainobject@npm:4.0.6" + checksum: 10c0/afd70b5c450d1e09f32a737bed06ff85b873ecd3d3d3400458725283e3f2e0bb6bf48e67dbe7a309eb371a822b16a26cca4a63c8c52db3fc7dc9d5f9dd324cbb + languageName: node + linkType: hard + +"lodash.isstring@npm:^4.0.1": + version: 4.0.1 + resolution: "lodash.isstring@npm:4.0.1" + checksum: 10c0/09eaf980a283f9eef58ef95b30ec7fee61df4d6bf4aba3b5f096869cc58f24c9da17900febc8ffd67819b4e29de29793190e88dc96983db92d84c95fa85d1c92 + languageName: node + linkType: hard + +"lodash.memoize@npm:4.x": + version: 4.1.2 + resolution: "lodash.memoize@npm:4.1.2" + checksum: 10c0/c8713e51eccc650422716a14cece1809cfe34bc5ab5e242b7f8b4e2241c2483697b971a604252807689b9dd69bfe3a98852e19a5b89d506b000b4187a1285df8 + languageName: node + linkType: hard + +"lodash.merge@npm:^4.6.2": + version: 4.6.2 + resolution: "lodash.merge@npm:4.6.2" + checksum: 10c0/402fa16a1edd7538de5b5903a90228aa48eb5533986ba7fa26606a49db2572bf414ff73a2c9f5d5fd36b31c46a5d5c7e1527749c07cbcf965ccff5fbdf32c506 + languageName: node + linkType: hard + +"lodash.once@npm:^4.0.0": + version: 4.1.1 + resolution: "lodash.once@npm:4.1.1" + checksum: 10c0/46a9a0a66c45dd812fcc016e46605d85ad599fe87d71a02f6736220554b52ffbe82e79a483ad40f52a8a95755b0d1077fba259da8bfb6694a7abbf4a48f1fc04 + languageName: node + linkType: hard + +"lodash@npm:4.17.21, lodash@npm:^4.17.15, lodash@npm:^4.17.21, lodash@npm:^4.7.0": + version: 4.17.21 + resolution: "lodash@npm:4.17.21" + checksum: 10c0/d8cbea072bb08655bb4c989da418994b073a608dffa608b09ac04b43a791b12aeae7cd7ad919aa4c925f33b48490b5cfe6c1f71d827956071dae2e7bb3a6b74c + languageName: node + linkType: hard + +"log-symbols@npm:^4.1.0": + version: 4.1.0 + resolution: "log-symbols@npm:4.1.0" + dependencies: + chalk: "npm:^4.1.0" + is-unicode-supported: "npm:^0.1.0" + checksum: 10c0/67f445a9ffa76db1989d0fa98586e5bc2fd5247260dafb8ad93d9f0ccd5896d53fb830b0e54dade5ad838b9de2006c826831a3c528913093af20dff8bd24aca6 + languageName: node + linkType: hard + +"lower-case@npm:^1.1.1": + version: 1.1.4 + resolution: "lower-case@npm:1.1.4" + checksum: 10c0/2153ae5490d655a63addc8e7d2f848c6c94803b342ed2d177f75e8073e9fbb50a733d1432c82e1cb8425fa6eae14b2877bf5bbdcb93ab93bb982fb5c3962c57b + languageName: node + linkType: hard + +"lru-cache@npm:^10.0.1, lru-cache@npm:^10.2.0": + version: 10.4.3 + resolution: "lru-cache@npm:10.4.3" + checksum: 10c0/ebd04fbca961e6c1d6c0af3799adcc966a1babe798f685bb84e6599266599cd95d94630b10262f5424539bc4640107e8a33aa28585374abf561d30d16f4b39fb + languageName: node + linkType: hard + +"lru-cache@npm:^5.1.1": + version: 5.1.1 + resolution: "lru-cache@npm:5.1.1" + dependencies: + yallist: "npm:^3.0.2" + checksum: 10c0/89b2ef2ef45f543011e38737b8a8622a2f8998cddf0e5437174ef8f1f70a8b9d14a918ab3e232cb3ba343b7abddffa667f0b59075b2b80e6b4d63c3de6127482 + languageName: node + linkType: hard + +"magic-string@npm:0.30.8": + version: 0.30.8 + resolution: "magic-string@npm:0.30.8" + dependencies: + "@jridgewell/sourcemap-codec": "npm:^1.4.15" + checksum: 10c0/51a1f06f678c082aceddfb5943de9b6bdb88f2ea1385a1c2adf116deb73dfcfa50df6c222901d691b529455222d4d68d0b28be5689ac6f69b3baa3462861f922 + languageName: node + linkType: hard + +"mailparser@npm:^3.7.1": + version: 3.7.2 + resolution: "mailparser@npm:3.7.2" + dependencies: + encoding-japanese: "npm:2.2.0" + he: "npm:1.2.0" + html-to-text: "npm:9.0.5" + iconv-lite: "npm:0.6.3" + libmime: "npm:5.3.6" + linkify-it: "npm:5.0.0" + mailsplit: "npm:5.4.2" + nodemailer: "npm:6.9.16" + punycode.js: "npm:2.3.1" + tlds: "npm:1.255.0" + checksum: 10c0/dc37e0e2d6885f777cc4cf40d1fc60ca247632428a55986a6f665705a8fca762de5bf8b3b14fd4eac97d6d8a866827f4c99400d25c7eb9879d7906871a3381c0 + languageName: node + linkType: hard + +"mailsplit@npm:5.4.2": + version: 5.4.2 + resolution: "mailsplit@npm:5.4.2" + dependencies: + libbase64: "npm:1.3.0" + libmime: "npm:5.3.6" + libqp: "npm:2.1.1" + checksum: 10c0/14fb8722b7416193bc7af918d8529ad2c2edb471b78c7f26116c95a8a325c33355504ba83c95dbac4ce69a3a2557bb9e0a9b2a0c8585ab5df892b51159a99e52 + languageName: node + linkType: hard + +"make-dir@npm:^3.1.0": + version: 3.1.0 + resolution: "make-dir@npm:3.1.0" + dependencies: + semver: "npm:^6.0.0" + checksum: 10c0/56aaafefc49c2dfef02c5c95f9b196c4eb6988040cf2c712185c7fe5c99b4091591a7fc4d4eafaaefa70ff763a26f6ab8c3ff60b9e75ea19876f49b18667ecaa + languageName: node + linkType: hard + +"make-dir@npm:^4.0.0": + version: 4.0.0 + resolution: "make-dir@npm:4.0.0" + dependencies: + semver: "npm:^7.5.3" + checksum: 10c0/69b98a6c0b8e5c4fe9acb61608a9fbcfca1756d910f51e5dbe7a9e5cfb74fca9b8a0c8a0ffdf1294a740826c1ab4871d5bf3f62f72a3049e5eac6541ddffed68 + languageName: node + linkType: hard + +"make-error@npm:1.x, make-error@npm:^1.1.1": + version: 1.3.6 + resolution: "make-error@npm:1.3.6" + checksum: 10c0/171e458d86854c6b3fc46610cfacf0b45149ba043782558c6875d9f42f222124384ad0b468c92e996d815a8a2003817a710c0a160e49c1c394626f76fa45396f + languageName: node + linkType: hard + +"make-fetch-happen@npm:^14.0.3": + version: 14.0.3 + resolution: "make-fetch-happen@npm:14.0.3" + dependencies: + "@npmcli/agent": "npm:^3.0.0" + cacache: "npm:^19.0.1" + http-cache-semantics: "npm:^4.1.1" + minipass: "npm:^7.0.2" + minipass-fetch: "npm:^4.0.0" + minipass-flush: "npm:^1.0.5" + minipass-pipeline: "npm:^1.2.4" + negotiator: "npm:^1.0.0" + proc-log: "npm:^5.0.0" + promise-retry: "npm:^2.0.1" + ssri: "npm:^12.0.0" + checksum: 10c0/c40efb5e5296e7feb8e37155bde8eb70bc57d731b1f7d90e35a092fde403d7697c56fb49334d92d330d6f1ca29a98142036d6480a12681133a0a1453164cb2f0 + languageName: node + linkType: hard + +"makeerror@npm:1.0.12": + version: 1.0.12 + resolution: "makeerror@npm:1.0.12" + dependencies: + tmpl: "npm:1.0.5" + checksum: 10c0/b0e6e599780ce6bab49cc413eba822f7d1f0dfebd1c103eaa3785c59e43e22c59018323cf9e1708f0ef5329e94a745d163fcbb6bff8e4c6742f9be9e86f3500c + languageName: node + linkType: hard + +"math-intrinsics@npm:^1.1.0": + version: 1.1.0 + resolution: "math-intrinsics@npm:1.1.0" + checksum: 10c0/7579ff94e899e2f76ab64491d76cf606274c874d8f2af4a442c016bd85688927fcfca157ba6bf74b08e9439dc010b248ce05b96cc7c126a354c3bae7fcb48b7f + languageName: node + linkType: hard + +"media-typer@npm:0.3.0": + version: 0.3.0 + resolution: "media-typer@npm:0.3.0" + checksum: 10c0/d160f31246907e79fed398470285f21bafb45a62869dc469b1c8877f3f064f5eabc4bcc122f9479b8b605bc5c76187d7871cf84c4ee3ecd3e487da1993279928 + languageName: node + linkType: hard + +"memfs@npm:^3.4.1": + version: 3.5.3 + resolution: "memfs@npm:3.5.3" + dependencies: + fs-monkey: "npm:^1.0.4" + checksum: 10c0/038fc81bce17ea92dde15aaa68fa0fdaf4960c721ce3ffc7c2cb87a259333f5159784ea48b3b72bf9e054254d9d0d0d5209d0fdc3d07d08653a09933b168fbd7 + languageName: node + linkType: hard + +"mensch@npm:^0.3.4": + version: 0.3.4 + resolution: "mensch@npm:0.3.4" + checksum: 10c0/177f9c1cb1acd93da98a971288a5da99f819ac06de19ca450040b18ddf8728c7ae0ce22309fadbbfd4ceb773bc5c03bf1cb93ceb91441da9e76e010d314da2ea + languageName: node + linkType: hard + +"merge-descriptors@npm:1.0.3": + version: 1.0.3 + resolution: "merge-descriptors@npm:1.0.3" + checksum: 10c0/866b7094afd9293b5ea5dcd82d71f80e51514bed33b4c4e9f516795dc366612a4cbb4dc94356e943a8a6914889a914530badff27f397191b9b75cda20b6bae93 + languageName: node + linkType: hard + +"merge-stream@npm:^2.0.0": + version: 2.0.0 + resolution: "merge-stream@npm:2.0.0" + checksum: 10c0/867fdbb30a6d58b011449b8885601ec1690c3e41c759ecd5a9d609094f7aed0096c37823ff4a7190ef0b8f22cc86beb7049196ff68c016e3b3c671d0dac91ce5 + languageName: node + linkType: hard + +"merge2@npm:^1.3.0, merge2@npm:^1.4.1": + version: 1.4.1 + resolution: "merge2@npm:1.4.1" + checksum: 10c0/254a8a4605b58f450308fc474c82ac9a094848081bf4c06778200207820e5193726dc563a0d2c16468810516a5c97d9d3ea0ca6585d23c58ccfff2403e8dbbeb + languageName: node + linkType: hard + +"methods@npm:^1.1.2, methods@npm:~1.1.2": + version: 1.1.2 + resolution: "methods@npm:1.1.2" + checksum: 10c0/bdf7cc72ff0a33e3eede03708c08983c4d7a173f91348b4b1e4f47d4cdbf734433ad971e7d1e8c77247d9e5cd8adb81ea4c67b0a2db526b758b2233d7814b8b2 + languageName: node + linkType: hard + +"micromatch@npm:^4.0.0, micromatch@npm:^4.0.4, micromatch@npm:^4.0.8": + version: 4.0.8 + resolution: "micromatch@npm:4.0.8" + dependencies: + braces: "npm:^3.0.3" + picomatch: "npm:^2.3.1" + checksum: 10c0/166fa6eb926b9553f32ef81f5f531d27b4ce7da60e5baf8c021d043b27a388fb95e46a8038d5045877881e673f8134122b59624d5cecbd16eb50a42e7a6b5ca8 + languageName: node + linkType: hard + +"mime-db@npm:1.52.0": + version: 1.52.0 + resolution: "mime-db@npm:1.52.0" + checksum: 10c0/0557a01deebf45ac5f5777fe7740b2a5c309c6d62d40ceab4e23da9f821899ce7a900b7ac8157d4548ddbb7beffe9abc621250e6d182b0397ec7f10c7b91a5aa + languageName: node + linkType: hard + +"mime-types@npm:^2.1.12, mime-types@npm:^2.1.27, mime-types@npm:~2.1.24, mime-types@npm:~2.1.34": + version: 2.1.35 + resolution: "mime-types@npm:2.1.35" + dependencies: + mime-db: "npm:1.52.0" + checksum: 10c0/82fb07ec56d8ff1fc999a84f2f217aa46cb6ed1033fefaabd5785b9a974ed225c90dc72fff460259e66b95b73648596dbcc50d51ed69cdf464af2d237d3149b2 + languageName: node + linkType: hard + +"mime@npm:1.6.0": + version: 1.6.0 + resolution: "mime@npm:1.6.0" + bin: + mime: cli.js + checksum: 10c0/b92cd0adc44888c7135a185bfd0dddc42c32606401c72896a842ae15da71eb88858f17669af41e498b463cd7eb998f7b48939a25b08374c7924a9c8a6f8a81b0 + languageName: node + linkType: hard + +"mime@npm:2.6.0, mime@npm:^2.4.6": + version: 2.6.0 + resolution: "mime@npm:2.6.0" + bin: + mime: cli.js + checksum: 10c0/a7f2589900d9c16e3bdf7672d16a6274df903da958c1643c9c45771f0478f3846dcb1097f31eb9178452570271361e2149310931ec705c037210fc69639c8e6c + languageName: node + linkType: hard + +"mimic-fn@npm:^2.1.0": + version: 2.1.0 + resolution: "mimic-fn@npm:2.1.0" + checksum: 10c0/b26f5479d7ec6cc2bce275a08f146cf78f5e7b661b18114e2506dd91ec7ec47e7a25bf4360e5438094db0560bcc868079fb3b1fb3892b833c1ecbf63f80c95a4 + languageName: node + linkType: hard + +"minimatch@npm:9.0.1": + version: 9.0.1 + resolution: "minimatch@npm:9.0.1" + dependencies: + brace-expansion: "npm:^2.0.1" + checksum: 10c0/aa043eb8822210b39888a5d0d28df0017b365af5add9bd522f180d2a6962de1cbbf1bdeacdb1b17f410dc3336bc8d76fb1d3e814cdc65d00c2f68e01f0010096 + languageName: node + linkType: hard + +"minimatch@npm:9.0.3": + version: 9.0.3 + resolution: "minimatch@npm:9.0.3" + dependencies: + brace-expansion: "npm:^2.0.1" + checksum: 10c0/85f407dcd38ac3e180f425e86553911d101455ca3ad5544d6a7cec16286657e4f8a9aa6695803025c55e31e35a91a2252b5dc8e7d527211278b8b65b4dbd5eac + languageName: node + linkType: hard + +"minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": + version: 3.1.2 + resolution: "minimatch@npm:3.1.2" + dependencies: + brace-expansion: "npm:^1.1.7" + checksum: 10c0/0262810a8fc2e72cca45d6fd86bd349eee435eb95ac6aa45c9ea2180e7ee875ef44c32b55b5973ceabe95ea12682f6e3725cbb63d7a2d1da3ae1163c8b210311 + languageName: node + linkType: hard + +"minimatch@npm:^5.0.1": + version: 5.1.6 + resolution: "minimatch@npm:5.1.6" + dependencies: + brace-expansion: "npm:^2.0.1" + checksum: 10c0/3defdfd230914f22a8da203747c42ee3c405c39d4d37ffda284dac5e45b7e1f6c49aa8be606509002898e73091ff2a3bbfc59c2c6c71d4660609f63aa92f98e3 + languageName: node + linkType: hard + +"minimatch@npm:^9.0.1, minimatch@npm:^9.0.3, minimatch@npm:^9.0.4": + version: 9.0.5 + resolution: "minimatch@npm:9.0.5" + dependencies: + brace-expansion: "npm:^2.0.1" + checksum: 10c0/de96cf5e35bdf0eab3e2c853522f98ffbe9a36c37797778d2665231ec1f20a9447a7e567cb640901f89e4daaa95ae5d70c65a9e8aa2bb0019b6facbc3c0575ed + languageName: node + linkType: hard + +"minimist@npm:^1.2.0, minimist@npm:^1.2.5, minimist@npm:^1.2.6": + version: 1.2.8 + resolution: "minimist@npm:1.2.8" + checksum: 10c0/19d3fcdca050087b84c2029841a093691a91259a47def2f18222f41e7645a0b7c44ef4b40e88a1e58a40c84d2ef0ee6047c55594d298146d0eb3f6b737c20ce6 + languageName: node + linkType: hard + +"minipass-collect@npm:^2.0.1": + version: 2.0.1 + resolution: "minipass-collect@npm:2.0.1" + dependencies: + minipass: "npm:^7.0.3" + checksum: 10c0/5167e73f62bb74cc5019594709c77e6a742051a647fe9499abf03c71dca75515b7959d67a764bdc4f8b361cf897fbf25e2d9869ee039203ed45240f48b9aa06e + languageName: node + linkType: hard + +"minipass-fetch@npm:^4.0.0": + version: 4.0.0 + resolution: "minipass-fetch@npm:4.0.0" + dependencies: + encoding: "npm:^0.1.13" + minipass: "npm:^7.0.3" + minipass-sized: "npm:^1.0.3" + minizlib: "npm:^3.0.1" + dependenciesMeta: + encoding: + optional: true + checksum: 10c0/7fa30ce7c373fb6f94c086b374fff1589fd7e78451855d2d06c2e2d9df936d131e73e952163063016592ed3081444bd8d1ea608533313b0149156ce23311da4b + languageName: node + linkType: hard + +"minipass-flush@npm:^1.0.5": + version: 1.0.5 + resolution: "minipass-flush@npm:1.0.5" + dependencies: + minipass: "npm:^3.0.0" + checksum: 10c0/2a51b63feb799d2bb34669205eee7c0eaf9dce01883261a5b77410c9408aa447e478efd191b4de6fc1101e796ff5892f8443ef20d9544385819093dbb32d36bd + languageName: node + linkType: hard + +"minipass-pipeline@npm:^1.2.4": + version: 1.2.4 + resolution: "minipass-pipeline@npm:1.2.4" + dependencies: + minipass: "npm:^3.0.0" + checksum: 10c0/cbda57cea20b140b797505dc2cac71581a70b3247b84480c1fed5ca5ba46c25ecc25f68bfc9e6dcb1a6e9017dab5c7ada5eab73ad4f0a49d84e35093e0c643f2 + languageName: node + linkType: hard + +"minipass-sized@npm:^1.0.3": + version: 1.0.3 + resolution: "minipass-sized@npm:1.0.3" + dependencies: + minipass: "npm:^3.0.0" + checksum: 10c0/298f124753efdc745cfe0f2bdfdd81ba25b9f4e753ca4a2066eb17c821f25d48acea607dfc997633ee5bf7b6dfffb4eee4f2051eb168663f0b99fad2fa4829cb + languageName: node + linkType: hard + +"minipass@npm:^3.0.0": + version: 3.3.6 + resolution: "minipass@npm:3.3.6" + dependencies: + yallist: "npm:^4.0.0" + checksum: 10c0/a114746943afa1dbbca8249e706d1d38b85ed1298b530f5808ce51f8e9e941962e2a5ad2e00eae7dd21d8a4aae6586a66d4216d1a259385e9d0358f0c1eba16c + languageName: node + linkType: hard + +"minipass@npm:^5.0.0": + version: 5.0.0 + resolution: "minipass@npm:5.0.0" + checksum: 10c0/a91d8043f691796a8ac88df039da19933ef0f633e3d7f0d35dcd5373af49131cf2399bfc355f41515dc495e3990369c3858cd319e5c2722b4753c90bf3152462 + languageName: node + linkType: hard + +"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3, minipass@npm:^7.0.4, minipass@npm:^7.1.2": + version: 7.1.2 + resolution: "minipass@npm:7.1.2" + checksum: 10c0/b0fd20bb9fb56e5fa9a8bfac539e8915ae07430a619e4b86ff71f5fc757ef3924b23b2c4230393af1eda647ed3d75739e4e0acb250a6b1eb277cf7f8fe449557 + languageName: node + linkType: hard + +"minizlib@npm:^2.1.1": + version: 2.1.2 + resolution: "minizlib@npm:2.1.2" + dependencies: + minipass: "npm:^3.0.0" + yallist: "npm:^4.0.0" + checksum: 10c0/64fae024e1a7d0346a1102bb670085b17b7f95bf6cfdf5b128772ec8faf9ea211464ea4add406a3a6384a7d87a0cd1a96263692134323477b4fb43659a6cab78 + languageName: node + linkType: hard + +"minizlib@npm:^3.0.1": + version: 3.0.1 + resolution: "minizlib@npm:3.0.1" + dependencies: + minipass: "npm:^7.0.4" + rimraf: "npm:^5.0.5" + checksum: 10c0/82f8bf70da8af656909a8ee299d7ed3b3372636749d29e105f97f20e88971be31f5ed7642f2e898f00283b68b701cc01307401cdc209b0efc5dd3818220e5093 + languageName: node + linkType: hard + +"mjml-accordion@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-accordion@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/d03bfbb6cf904f8c3a2aeef5c722e8d29aeb69c57dfc2f569ac90ca374a6c896276057dea5ec4742bf537d46cf789f5d41eb98baeaa54614946dcab0cd24bbff + languageName: node + linkType: hard + +"mjml-body@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-body@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/59e177506bd08fd65865ac8c17bf8b96ae5a1e841e86b2967371162b06442f300afdac24031ec847dca0313dc0ba33b63c20886b1f0f26aa8a4715f0db2ddeda + languageName: node + linkType: hard + +"mjml-button@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-button@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/6619ab6a407d117863a7683591f27082a2131e107b8f849e77ecd3db89a177ed1af4a83ed96b08e84564cc9414b91c909f2b1c775d80bce529f284db910032d6 + languageName: node + linkType: hard + +"mjml-carousel@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-carousel@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/29a5fad7814792e1ccda464f7d77350cc0817ab941170fbb9aecbfcc4f85cf9daefb697fed93d7621f930b4e73f5a8ce69158f6e8434aff018c1f69bd13ff80b + languageName: node + linkType: hard + +"mjml-cli@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-cli@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + chokidar: "npm:^3.0.0" + glob: "npm:^10.3.10" + html-minifier: "npm:^4.0.0" + js-beautify: "npm:^1.6.14" + lodash: "npm:^4.17.21" + minimatch: "npm:^9.0.3" + mjml-core: "npm:4.15.3" + mjml-migrate: "npm:4.15.3" + mjml-parser-xml: "npm:4.15.3" + mjml-validator: "npm:4.15.3" + yargs: "npm:^17.7.2" + bin: + mjml-cli: bin/mjml + checksum: 10c0/82aa3fe91a4457a887ac00d86830681e88fda65365422ef0370bd03a327e4b2baa75dc6d822534cbfc91f9e4b820229de43410a9c432627fc439ddd8a9c3caf8 + languageName: node + linkType: hard + +"mjml-column@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-column@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/55f6f179d5f18de873d59579e62f2b3dfa67325a7d8d7ac77f9ed4c9451b3c70af68d36c0256f3244c4cc567aff77373f6c54b67819b8de9d08673f69f113952 + languageName: node + linkType: hard + +"mjml-core@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-core@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + cheerio: "npm:1.0.0-rc.12" + detect-node: "npm:^2.0.4" + html-minifier: "npm:^4.0.0" + js-beautify: "npm:^1.6.14" + juice: "npm:^10.0.0" + lodash: "npm:^4.17.21" + mjml-migrate: "npm:4.15.3" + mjml-parser-xml: "npm:4.15.3" + mjml-validator: "npm:4.15.3" + checksum: 10c0/75612453055a3e07e4da40e3f88db7925170f5a210fdaa8ec798eacde2b825862d9d6228ab3b45158e0a9a063720fdc3e83f9a2fd2c0978eaa2323a668bed2f0 + languageName: node + linkType: hard + +"mjml-divider@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-divider@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/122c2c3af5736ae163624fd5342781d3611c04768ddf33a5f755a8f76b21df000a911b1f44c5b325f5eb05bd9d726cdc72852e304ff939bfca701430a97466ff + languageName: node + linkType: hard + +"mjml-group@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-group@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/61ac4504c75d07a2430172d4e057c933ff1d428315c2acf73f773961e02795a042e058487040aacb0da4822f1031c4b889e08ffba574098c9b3a166184b02f0c + languageName: node + linkType: hard + +"mjml-head-attributes@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-head-attributes@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/733000b0d6e823b2ea91518e795f271f35fd410698ee4cb02db29a22b267d8f0daf9fb5562cd4d431421a4b8e70371ba962ccb41469f5ed8a31be4deca60905a + languageName: node + linkType: hard + +"mjml-head-breakpoint@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-head-breakpoint@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/23930e576a6e4f7b7add412d255bafac917612d9a317b5086893a4b3688fa78d99112748067579d76308a545975a8deec7dd32013b326c08a4864ff7c4e86917 + languageName: node + linkType: hard + +"mjml-head-font@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-head-font@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/4ee959a3742694e21de42b156c2e245c4ade84977dc95b82ca232882129672f66dac59bdbb3398b9471c9583d9876088be59be6261beb86ac23941a21877d413 + languageName: node + linkType: hard + +"mjml-head-html-attributes@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-head-html-attributes@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/3161edf6cff97f47be0780ddcdba8d4c9c195c0a42d824c191c234fa3944b5f7ec61d762f9e59ecf307e53040d1d667fb6ba5729f308d85aff082a14e48ce2b6 + languageName: node + linkType: hard + +"mjml-head-preview@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-head-preview@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/9d53c0615e691699f94d5686376ca7342fb403f8511b9031b482a8b60e4b54ddda9a924153149b8ea650411db54e9a84c4292e66e3d5b097ad3725fbbd567a41 + languageName: node + linkType: hard + +"mjml-head-style@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-head-style@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/b7bc2ec2065c5758016a792fbb3fd5c31beaa48257581a36a3e710225d4b6c6efe807c23f2f69e883d71a670e696fd9ea17654805603c7f67ee2556e28f96ba6 + languageName: node + linkType: hard + +"mjml-head-title@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-head-title@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/2f0d9b0326acfb9fdd7e0c4270e8359dc661a4c250c07b0966da82f0998030f8e4cdd95c9539a4ca41264bd7ee0c11cd0cb98bbe19d3bad9af38afb92fb16582 + languageName: node + linkType: hard + +"mjml-head@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-head@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/db09298416864d8ddfc45ea7c18e2117d1786668aec4b8b8dfa14e36ef48c9f0c4d1d097fb6c3b769b76f5a105ce641ce9f3db5e82971e1bd412bc100f24c824 + languageName: node + linkType: hard + +"mjml-hero@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-hero@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/d7960de47f0fc23099a94d201c27285729765e7072e4eb8ea456141d8dcb05be52e39b01c27ba23ca82a43e35a0c5cbc3b042dcaf724bc7c4b21e62d450aa4e2 + languageName: node + linkType: hard + +"mjml-image@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-image@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/2f4442dc03196c0697aad3fcfd42d5991ef902587d37a416169d7c6c605df7044d8081a4beec673689b7ab20f95d31c6d1834948c2229d84283eee138ccf655a + languageName: node + linkType: hard + +"mjml-migrate@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-migrate@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + js-beautify: "npm:^1.6.14" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + mjml-parser-xml: "npm:4.15.3" + yargs: "npm:^17.7.2" + bin: + migrate: lib/cli.js + checksum: 10c0/6e5a82426d19d466372325b7aad4170744992ee69d8bf5bd437cea20bec30803458456a933592f6f1a5af9ed3aa6a6f5d4e8b44150c21ca268fcd7a8f7f9f51e + languageName: node + linkType: hard + +"mjml-navbar@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-navbar@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/abfa04c5b6d734e645ff24f7f557e5bab44d2b7ccc1f0ce8854c5121efe449118475ef525f940ccfc5b3dad1de9c71f1e15d2fbf9fb896a84e1a26a2bfbb0e23 + languageName: node + linkType: hard + +"mjml-parser-xml@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-parser-xml@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + detect-node: "npm:2.1.0" + htmlparser2: "npm:^9.1.0" + lodash: "npm:^4.17.15" + checksum: 10c0/d88a0552360589c7e82a0772d734c0d8975ad91ee5764756fc3e3cc28d062fecc87ca9b9b763f3a0309e96d1e1b66c0e707aa4bc8d7065f8121b256aa8efc85d + languageName: node + linkType: hard + +"mjml-preset-core@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-preset-core@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + mjml-accordion: "npm:4.15.3" + mjml-body: "npm:4.15.3" + mjml-button: "npm:4.15.3" + mjml-carousel: "npm:4.15.3" + mjml-column: "npm:4.15.3" + mjml-divider: "npm:4.15.3" + mjml-group: "npm:4.15.3" + mjml-head: "npm:4.15.3" + mjml-head-attributes: "npm:4.15.3" + mjml-head-breakpoint: "npm:4.15.3" + mjml-head-font: "npm:4.15.3" + mjml-head-html-attributes: "npm:4.15.3" + mjml-head-preview: "npm:4.15.3" + mjml-head-style: "npm:4.15.3" + mjml-head-title: "npm:4.15.3" + mjml-hero: "npm:4.15.3" + mjml-image: "npm:4.15.3" + mjml-navbar: "npm:4.15.3" + mjml-raw: "npm:4.15.3" + mjml-section: "npm:4.15.3" + mjml-social: "npm:4.15.3" + mjml-spacer: "npm:4.15.3" + mjml-table: "npm:4.15.3" + mjml-text: "npm:4.15.3" + mjml-wrapper: "npm:4.15.3" + checksum: 10c0/07112b5e0a72a1c71b65f5a0936d61e06b11b5d6e0ec7a68351c1bef37b0ba2b95e90bed9ecdf3e823f44c9ad80ceec3d2b217078463bf97655b9de604d398e4 + languageName: node + linkType: hard + +"mjml-raw@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-raw@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/ad6f42d293bc428b24eb1bea3f749a92e6de10a9b6fef927166ce3b7c7eb0b651c1f9a10a105dc1ae9c7247c7cb50091d64bb0a35d851620c7589596dde764fb + languageName: node + linkType: hard + +"mjml-section@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-section@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/395dae3f4bd6201a5a1ac66af4cea7c7a988017e122ce661853935b3312e3c1722d35028b889024b0abe78c086c64d1ad387f683f9a9c44fd2b1e3a528f6d881 + languageName: node + linkType: hard + +"mjml-social@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-social@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/2c7e24fbd81498690c3dab2cea9f2ac1858a20caad3fa00c11fa833fbccb57eaf01b1cfaadf12b9a279b620b46ce1027d5b0291f9b61ccb8bfe5c0ac9847722d + languageName: node + linkType: hard + +"mjml-spacer@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-spacer@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/0956418975f12bd0002393e52d4468bf44aff4df57c50711f77be6dbc3856669278366f1f8d264163950793670246fb0f64f1544ba67249c9a74e397b0df06f9 + languageName: node + linkType: hard + +"mjml-table@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-table@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/a4ea3c476ce1c1c15ce42092e8a8e7db3044ab3ddaf0542f62c00c483d087ebb6cc42ef7d1dd777e052378becc4591395f649752ecb4769b08f0740222a217f7 + languageName: node + linkType: hard + +"mjml-text@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-text@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + checksum: 10c0/e652ad95269d262a3d67d3b00eb28a356d4a830db77858ce31705ff980ba3f63a5775992b9c8189225056db6d3157e7dda994cbd771a2eef9ad7913a01ea0ef7 + languageName: node + linkType: hard + +"mjml-validator@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-validator@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + checksum: 10c0/d9321b483e7e1fca1e0a64d44d24a6d8c9e55c1f01966500a6f8f0e8ee8c0755930d9745c722d4ebcd5daf783fcbf52cd3cc04fb8f2ec46c1799a7af55866ea1 + languageName: node + linkType: hard + +"mjml-wrapper@npm:4.15.3": + version: 4.15.3 + resolution: "mjml-wrapper@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + lodash: "npm:^4.17.21" + mjml-core: "npm:4.15.3" + mjml-section: "npm:4.15.3" + checksum: 10c0/d3b4bbcb16bcacd5c2b7cbb0291c4a947fa0d14b5ba4fca82dc12719746e9bedf385c4030a204c79eca230c1c740b62ead4d5dd30e691c8d10fb31c0af070981 + languageName: node + linkType: hard + +"mjml@npm:^4.15.3": + version: 4.15.3 + resolution: "mjml@npm:4.15.3" + dependencies: + "@babel/runtime": "npm:^7.23.9" + mjml-cli: "npm:4.15.3" + mjml-core: "npm:4.15.3" + mjml-migrate: "npm:4.15.3" + mjml-preset-core: "npm:4.15.3" + mjml-validator: "npm:4.15.3" + bin: + mjml: bin/mjml + checksum: 10c0/e4ccd0111dcbf7b9cba0ef899a68747e02cdae3ff125ee628184d594b595649db501076b86ed41f9ecffca1f62c8626d44c5fcca2375e5c83cef7c6e4351a784 + languageName: node + linkType: hard + +"mkdirp@npm:^0.5.4": + version: 0.5.6 + resolution: "mkdirp@npm:0.5.6" + dependencies: + minimist: "npm:^1.2.6" + bin: + mkdirp: bin/cmd.js + checksum: 10c0/e2e2be789218807b58abced04e7b49851d9e46e88a2f9539242cc8a92c9b5c3a0b9bab360bd3014e02a140fc4fbc58e31176c408b493f8a2a6f4986bd7527b01 + languageName: node + linkType: hard + +"mkdirp@npm:^1.0.3": + version: 1.0.4 + resolution: "mkdirp@npm:1.0.4" + bin: + mkdirp: bin/cmd.js + checksum: 10c0/46ea0f3ffa8bc6a5bc0c7081ffc3907777f0ed6516888d40a518c5111f8366d97d2678911ad1a6882bf592fa9de6c784fea32e1687bb94e1f4944170af48a5cf + languageName: node + linkType: hard + +"mkdirp@npm:^2.1.3": + version: 2.1.6 + resolution: "mkdirp@npm:2.1.6" + bin: + mkdirp: dist/cjs/src/bin.js + checksum: 10c0/96f551c651dd8f5f9435d53df1a7b9bfc553be769ee6da5192c37c1f303a376ef1c6996f96913d4a8d357060451d4526a346031d1919f92c58806a5fa3cd8dfe + languageName: node + linkType: hard + +"mkdirp@npm:^3.0.1": + version: 3.0.1 + resolution: "mkdirp@npm:3.0.1" + bin: + mkdirp: dist/cjs/src/bin.js + checksum: 10c0/9f2b975e9246351f5e3a40dcfac99fcd0baa31fbfab615fe059fb11e51f10e4803c63de1f384c54d656e4db31d000e4767e9ef076a22e12a641357602e31d57d + languageName: node + linkType: hard + +"module-details-from-path@npm:^1.0.3": + version: 1.0.3 + resolution: "module-details-from-path@npm:1.0.3" + checksum: 10c0/3d881f3410c142e4c2b1307835a2862ba04e5b3ec6e90655614a0ee2c4b299b4c1d117fb525d2435bf436990026f18d338a197b54ad6bd36252f465c336ff423 + languageName: node + linkType: hard + +"ms@npm:2.0.0": + version: 2.0.0 + resolution: "ms@npm:2.0.0" + checksum: 10c0/f8fda810b39fd7255bbdc451c46286e549794fcc700dc9cd1d25658bbc4dc2563a5de6fe7c60f798a16a60c6ceb53f033cb353f493f0cf63e5199b702943159d + languageName: node + linkType: hard + +"ms@npm:2.1.3, ms@npm:^2.1.1, ms@npm:^2.1.3": + version: 2.1.3 + resolution: "ms@npm:2.1.3" + checksum: 10c0/d924b57e7312b3b63ad21fc5b3dc0af5e78d61a1fc7cfb5457edaf26326bf62be5307cc87ffb6862ef1c2b33b0233cdb5d4f01c4c958cc0d660948b65a287a48 + languageName: node + linkType: hard + +"multer@npm:1.4.4-lts.1": + version: 1.4.4-lts.1 + resolution: "multer@npm:1.4.4-lts.1" + dependencies: + append-field: "npm:^1.0.0" + busboy: "npm:^1.0.0" + concat-stream: "npm:^1.5.2" + mkdirp: "npm:^0.5.4" + object-assign: "npm:^4.1.1" + type-is: "npm:^1.6.4" + xtend: "npm:^4.0.0" + checksum: 10c0/63277d3483869f424274ef8ce6ab7ff4ce9d2c1cc69e707fc8b5d9b2b348ae6f742809e0b357a591dea885d147594bcd06528d3d6bbe32046115d4a7e126b954 + languageName: node + linkType: hard + +"mute-stream@npm:0.0.8": + version: 0.0.8 + resolution: "mute-stream@npm:0.0.8" + checksum: 10c0/18d06d92e5d6d45e2b63c0e1b8f25376af71748ac36f53c059baa8b76ffac31c5ab225480494e7d35d30215ecdb18fed26ec23cafcd2f7733f2f14406bcd19e2 + languageName: node + linkType: hard + +"mute-stream@npm:1.0.0": + version: 1.0.0 + resolution: "mute-stream@npm:1.0.0" + checksum: 10c0/dce2a9ccda171ec979a3b4f869a102b1343dee35e920146776780de182f16eae459644d187e38d59a3d37adf85685e1c17c38cf7bfda7e39a9880f7a1d10a74c + languageName: node + linkType: hard + +"mz@npm:^2.4.0": + version: 2.7.0 + resolution: "mz@npm:2.7.0" + dependencies: + any-promise: "npm:^1.0.0" + object-assign: "npm:^4.0.1" + thenify-all: "npm:^1.0.0" + checksum: 10c0/103114e93f87362f0b56ab5b2e7245051ad0276b646e3902c98397d18bb8f4a77f2ea4a2c9d3ad516034ea3a56553b60d3f5f78220001ca4c404bd711bd0af39 + languageName: node + linkType: hard + +"natural-compare@npm:^1.4.0": + version: 1.4.0 + resolution: "natural-compare@npm:1.4.0" + checksum: 10c0/f5f9a7974bfb28a91afafa254b197f0f22c684d4a1731763dda960d2c8e375b36c7d690e0d9dc8fba774c537af14a7e979129bca23d88d052fbeb9466955e447 + languageName: node + linkType: hard + +"negotiator@npm:0.6.3": + version: 0.6.3 + resolution: "negotiator@npm:0.6.3" + checksum: 10c0/3ec9fd413e7bf071c937ae60d572bc67155262068ed522cf4b3be5edbe6ddf67d095ec03a3a14ebf8fc8e95f8e1d61be4869db0dbb0de696f6b837358bd43fc2 + languageName: node + linkType: hard + +"negotiator@npm:^1.0.0": + version: 1.0.0 + resolution: "negotiator@npm:1.0.0" + checksum: 10c0/4c559dd52669ea48e1914f9d634227c561221dd54734070791f999c52ed0ff36e437b2e07d5c1f6e32909fc625fe46491c16e4a8f0572567d4dd15c3a4fda04b + languageName: node + linkType: hard + +"neo-async@npm:^2.6.2": + version: 2.6.2 + resolution: "neo-async@npm:2.6.2" + checksum: 10c0/c2f5a604a54a8ec5438a342e1f356dff4bc33ccccdb6dc668d94fe8e5eccfc9d2c2eea6064b0967a767ba63b33763f51ccf2cd2441b461a7322656c1f06b3f5d + languageName: node + linkType: hard + +"nice-try@npm:^1.0.4": + version: 1.0.5 + resolution: "nice-try@npm:1.0.5" + checksum: 10c0/95568c1b73e1d0d4069a3e3061a2102d854513d37bcfda73300015b7ba4868d3b27c198d1dbbd8ebdef4112fc2ed9e895d4a0f2e1cce0bd334f2a1346dc9205f + languageName: node + linkType: hard + +"no-case@npm:^2.2.0": + version: 2.3.2 + resolution: "no-case@npm:2.3.2" + dependencies: + lower-case: "npm:^1.1.1" + checksum: 10c0/63f306e83c18efa0bb37f1c23a25baf4ccf5ebaec70b482fa04d4c5bf8bbb8bcc9a8fbcd818af828ab69f2b602153daf81ec26e448b2bda2d704b8d0c7eec8fa + languageName: node + linkType: hard + +"node-abort-controller@npm:^3.0.1": + version: 3.1.1 + resolution: "node-abort-controller@npm:3.1.1" + checksum: 10c0/f7ad0e7a8e33809d4f3a0d1d65036a711c39e9d23e0319d80ebe076b9a3b4432b4d6b86a7fab65521de3f6872ffed36fc35d1327487c48eb88c517803403eda3 + languageName: node + linkType: hard + +"node-addon-api@npm:^5.0.0": + version: 5.1.0 + resolution: "node-addon-api@npm:5.1.0" + dependencies: + node-gyp: "npm:latest" + checksum: 10c0/0eb269786124ba6fad9df8007a149e03c199b3e5a3038125dfb3e747c2d5113d406a4e33f4de1ea600aa2339be1f137d55eba1a73ee34e5fff06c52a5c296d1d + languageName: node + linkType: hard + +"node-emoji@npm:1.11.0": + version: 1.11.0 + resolution: "node-emoji@npm:1.11.0" + dependencies: + lodash: "npm:^4.17.21" + checksum: 10c0/5dac6502dbef087092d041fcc2686d8be61168593b3a9baf964d62652f55a3a9c2277f171b81cccb851ccef33f2d070f45e633fab1fda3264f8e1ae9041c673f + languageName: node + linkType: hard + +"node-fetch@npm:^2.6.0, node-fetch@npm:^2.6.1, node-fetch@npm:^2.6.7": + version: 2.7.0 + resolution: "node-fetch@npm:2.7.0" + dependencies: + whatwg-url: "npm:^5.0.0" + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + checksum: 10c0/b55786b6028208e6fbe594ccccc213cab67a72899c9234eb59dba51062a299ea853210fcf526998eaa2867b0963ad72338824450905679ff0fa304b8c5093ae8 + languageName: node + linkType: hard + +"node-gyp@npm:latest": + version: 11.0.0 + resolution: "node-gyp@npm:11.0.0" + dependencies: + env-paths: "npm:^2.2.0" + exponential-backoff: "npm:^3.1.1" + glob: "npm:^10.3.10" + graceful-fs: "npm:^4.2.6" + make-fetch-happen: "npm:^14.0.3" + nopt: "npm:^8.0.0" + proc-log: "npm:^5.0.0" + semver: "npm:^7.3.5" + tar: "npm:^7.4.3" + which: "npm:^5.0.0" + bin: + node-gyp: bin/node-gyp.js + checksum: 10c0/a3b885bbee2d271f1def32ba2e30ffcf4562a3db33af06b8b365e053153e2dd2051b9945783c3c8e852d26a0f20f65b251c7e83361623383a99635c0280ee573 + languageName: node + linkType: hard + +"node-int64@npm:^0.4.0": + version: 0.4.0 + resolution: "node-int64@npm:0.4.0" + checksum: 10c0/a6a4d8369e2f2720e9c645255ffde909c0fbd41c92ea92a5607fc17055955daac99c1ff589d421eee12a0d24e99f7bfc2aabfeb1a4c14742f6c099a51863f31a + languageName: node + linkType: hard + +"node-releases@npm:^2.0.19": + version: 2.0.19 + resolution: "node-releases@npm:2.0.19" + checksum: 10c0/52a0dbd25ccf545892670d1551690fe0facb6a471e15f2cfa1b20142a5b255b3aa254af5f59d6ecb69c2bec7390bc643c43aa63b13bf5e64b6075952e716b1aa + languageName: node + linkType: hard + +"nodemailer@npm:6.9.16, nodemailer@npm:^6.9.13": + version: 6.9.16 + resolution: "nodemailer@npm:6.9.16" + checksum: 10c0/9fd73ab4ab5b81544c3c9820afbe386369aba442f997b2f58d171222a898a7aed580fc100bfe6eebc194f18ba6e169d67ee40ca64d32d69022d89e575cef97a4 + languageName: node + linkType: hard + +"nopt@npm:^5.0.0": + version: 5.0.0 + resolution: "nopt@npm:5.0.0" + dependencies: + abbrev: "npm:1" + bin: + nopt: bin/nopt.js + checksum: 10c0/fc5c4f07155cb455bf5fc3dd149fac421c1a40fd83c6bfe83aa82b52f02c17c5e88301321318adaa27611c8a6811423d51d29deaceab5fa158b585a61a551061 + languageName: node + linkType: hard + +"nopt@npm:^7.2.0": + version: 7.2.1 + resolution: "nopt@npm:7.2.1" + dependencies: + abbrev: "npm:^2.0.0" + bin: + nopt: bin/nopt.js + checksum: 10c0/a069c7c736767121242037a22a788863accfa932ab285a1eb569eb8cd534b09d17206f68c37f096ae785647435e0c5a5a0a67b42ec743e481a455e5ae6a6df81 + languageName: node + linkType: hard + +"nopt@npm:^8.0.0": + version: 8.0.0 + resolution: "nopt@npm:8.0.0" + dependencies: + abbrev: "npm:^2.0.0" + bin: + nopt: bin/nopt.js + checksum: 10c0/19cb986f79abaca2d0f0b560021da7b32ee6fcc3de48f3eaeb0c324d36755c17754f886a754c091f01f740c17caf7d6aea8237b7fbaf39f476ae5e30a249f18f + languageName: node + linkType: hard + +"normalize-path@npm:^3.0.0, normalize-path@npm:~3.0.0": + version: 3.0.0 + resolution: "normalize-path@npm:3.0.0" + checksum: 10c0/e008c8142bcc335b5e38cf0d63cfd39d6cf2d97480af9abdbe9a439221fd4d749763bab492a8ee708ce7a194bb00c9da6d0a115018672310850489137b3da046 + languageName: node + linkType: hard + +"notation@npm:^1.3.6": + version: 1.3.6 + resolution: "notation@npm:1.3.6" + checksum: 10c0/cebdef19cb5eb021d99ab7542a65066b6abdb396066d352a112f91c6a19b09101bb646bf8e8e0439c78c9b55e5ab9262b70617a692221c3e402ecdb20b828b66 + languageName: node + linkType: hard + +"npm-run-path@npm:^2.0.0": + version: 2.0.2 + resolution: "npm-run-path@npm:2.0.2" + dependencies: + path-key: "npm:^2.0.0" + checksum: 10c0/95549a477886f48346568c97b08c4fda9cdbf7ce8a4fbc2213f36896d0d19249e32d68d7451bdcbca8041b5fba04a6b2c4a618beaf19849505c05b700740f1de + languageName: node + linkType: hard + +"npm-run-path@npm:^4.0.1": + version: 4.0.1 + resolution: "npm-run-path@npm:4.0.1" + dependencies: + path-key: "npm:^3.0.0" + checksum: 10c0/6f9353a95288f8455cf64cbeb707b28826a7f29690244c1e4bb61ec573256e021b6ad6651b394eb1ccfd00d6ec50147253aba2c5fe58a57ceb111fad62c519ac + languageName: node + linkType: hard + +"npmlog@npm:^5.0.1": + version: 5.0.1 + resolution: "npmlog@npm:5.0.1" + dependencies: + are-we-there-yet: "npm:^2.0.0" + console-control-strings: "npm:^1.1.0" + gauge: "npm:^3.0.0" + set-blocking: "npm:^2.0.0" + checksum: 10c0/489ba519031013001135c463406f55491a17fc7da295c18a04937fe3a4d523fd65e88dd418a28b967ab743d913fdeba1e29838ce0ad8c75557057c481f7d49fa + languageName: node + linkType: hard + +"nth-check@npm:^2.0.1": + version: 2.1.1 + resolution: "nth-check@npm:2.1.1" + dependencies: + boolbase: "npm:^1.0.0" + checksum: 10c0/5fee7ff309727763689cfad844d979aedd2204a817fbaaf0e1603794a7c20db28548d7b024692f953557df6ce4a0ee4ae46cd8ebd9b36cfb300b9226b567c479 + languageName: node + linkType: hard + +"nwsapi@npm:^2.2.0": + version: 2.2.16 + resolution: "nwsapi@npm:2.2.16" + checksum: 10c0/0aa0637f4d51043d0183d994e08336bae996b03b42984381bf09ebdf3ff4909c018eda6b2a8aba0a08f3ea8303db8a0dad0608b38dc0bff15fd87017286ae21a + languageName: node + linkType: hard + +"object-assign@npm:^4, object-assign@npm:^4.0.1, object-assign@npm:^4.1.1": + version: 4.1.1 + resolution: "object-assign@npm:4.1.1" + checksum: 10c0/1f4df9945120325d041ccf7b86f31e8bcc14e73d29171e37a7903050e96b81323784ec59f93f102ec635bcf6fa8034ba3ea0a8c7e69fa202b87ae3b6cec5a414 + languageName: node + linkType: hard + +"object-inspect@npm:^1.13.3": + version: 1.13.3 + resolution: "object-inspect@npm:1.13.3" + checksum: 10c0/cc3f15213406be89ffdc54b525e115156086796a515410a8d390215915db9f23c8eab485a06f1297402f440a33715fe8f71a528c1dcbad6e1a3bcaf5a46921d4 + languageName: node + linkType: hard + +"obuf@npm:~1.1.2": + version: 1.1.2 + resolution: "obuf@npm:1.1.2" + checksum: 10c0/520aaac7ea701618eacf000fc96ae458e20e13b0569845800fc582f81b386731ab22d55354b4915d58171db00e79cfcd09c1638c02f89577ef092b38c65b7d81 + languageName: node + linkType: hard + +"on-finished@npm:2.4.1": + version: 2.4.1 + resolution: "on-finished@npm:2.4.1" + dependencies: + ee-first: "npm:1.1.1" + checksum: 10c0/46fb11b9063782f2d9968863d9cbba33d77aa13c17f895f56129c274318b86500b22af3a160fe9995aa41317efcd22941b6eba747f718ced08d9a73afdb087b4 + languageName: node + linkType: hard + +"once@npm:^1.3.0, once@npm:^1.4.0": + version: 1.4.0 + resolution: "once@npm:1.4.0" + dependencies: + wrappy: "npm:1" + checksum: 10c0/5d48aca287dfefabd756621c5dfce5c91a549a93e9fdb7b8246bc4c4790aa2ec17b34a260530474635147aeb631a2dcc8b32c613df0675f96041cbb8244517d0 + languageName: node + linkType: hard + +"onetime@npm:^5.1.0, onetime@npm:^5.1.2": + version: 5.1.2 + resolution: "onetime@npm:5.1.2" + dependencies: + mimic-fn: "npm:^2.1.0" + checksum: 10c0/ffcef6fbb2692c3c40749f31ea2e22677a876daea92959b8a80b521d95cca7a668c884d8b2045d1d8ee7d56796aa405c405462af112a1477594cc63531baeb8f + languageName: node + linkType: hard + +"open@npm:7": + version: 7.4.2 + resolution: "open@npm:7.4.2" + dependencies: + is-docker: "npm:^2.0.0" + is-wsl: "npm:^2.1.1" + checksum: 10c0/77573a6a68f7364f3a19a4c80492712720746b63680ee304555112605ead196afe91052bd3c3d165efdf4e9d04d255e87de0d0a77acec11ef47fd5261251813f + languageName: node + linkType: hard + +"optionator@npm:^0.9.3": + version: 0.9.4 + resolution: "optionator@npm:0.9.4" + dependencies: + deep-is: "npm:^0.1.3" + fast-levenshtein: "npm:^2.0.6" + levn: "npm:^0.4.1" + prelude-ls: "npm:^1.2.1" + type-check: "npm:^0.4.0" + word-wrap: "npm:^1.2.5" + checksum: 10c0/4afb687a059ee65b61df74dfe87d8d6815cd6883cb8b3d5883a910df72d0f5d029821f37025e4bccf4048873dbdb09acc6d303d27b8f76b1a80dd5a7d5334675 + languageName: node + linkType: hard + +"ora@npm:5.4.1, ora@npm:^5, ora@npm:^5.4.1": + version: 5.4.1 + resolution: "ora@npm:5.4.1" + dependencies: + bl: "npm:^4.1.0" + chalk: "npm:^4.1.0" + cli-cursor: "npm:^3.1.0" + cli-spinners: "npm:^2.5.0" + is-interactive: "npm:^1.0.0" + is-unicode-supported: "npm:^0.1.0" + log-symbols: "npm:^4.1.0" + strip-ansi: "npm:^6.0.0" + wcwidth: "npm:^1.0.1" + checksum: 10c0/10ff14aace236d0e2f044193362b22edce4784add08b779eccc8f8ef97195cae1248db8ec1ec5f5ff076f91acbe573f5f42a98c19b78dba8c54eefff983cae85 + languageName: node + linkType: hard + +"os-tmpdir@npm:~1.0.2": + version: 1.0.2 + resolution: "os-tmpdir@npm:1.0.2" + checksum: 10c0/f438450224f8e2687605a8dd318f0db694b6293c5d835ae509a69e97c8de38b6994645337e5577f5001115470414638978cc49da1cdcc25106dad8738dc69990 + languageName: node + linkType: hard + +"p-event@npm:4.2.0": + version: 4.2.0 + resolution: "p-event@npm:4.2.0" + dependencies: + p-timeout: "npm:^3.1.0" + checksum: 10c0/f1b6a2fb13d47f2a8afc00150da5ece0d28940ce3d8fa562873e091d3337d298e78fee9cb18b768598ff1d11df608b2ae23868309ff6405b864a2451ccd6d25a + languageName: node + linkType: hard + +"p-finally@npm:^1.0.0": + version: 1.0.0 + resolution: "p-finally@npm:1.0.0" + checksum: 10c0/6b8552339a71fe7bd424d01d8451eea92d379a711fc62f6b2fe64cad8a472c7259a236c9a22b4733abca0b5666ad503cb497792a0478c5af31ded793d00937e7 + languageName: node + linkType: hard + +"p-limit@npm:^2.2.0": + version: 2.3.0 + resolution: "p-limit@npm:2.3.0" + dependencies: + p-try: "npm:^2.0.0" + checksum: 10c0/8da01ac53efe6a627080fafc127c873da40c18d87b3f5d5492d465bb85ec7207e153948df6b9cbaeb130be70152f874229b8242ee2be84c0794082510af97f12 + languageName: node + linkType: hard + +"p-limit@npm:^3.0.2": + version: 3.1.0 + resolution: "p-limit@npm:3.1.0" + dependencies: + yocto-queue: "npm:^0.1.0" + checksum: 10c0/9db675949dbdc9c3763c89e748d0ef8bdad0afbb24d49ceaf4c46c02c77d30db4e0652ed36d0a0a7a95154335fab810d95c86153105bb73b3a90448e2bb14e1a + languageName: node + linkType: hard + +"p-locate@npm:^4.1.0": + version: 4.1.0 + resolution: "p-locate@npm:4.1.0" + dependencies: + p-limit: "npm:^2.2.0" + checksum: 10c0/1b476ad69ad7f6059744f343b26d51ce091508935c1dbb80c4e0a2f397ffce0ca3a1f9f5cd3c7ce19d7929a09719d5c65fe70d8ee289c3f267cd36f2881813e9 + languageName: node + linkType: hard + +"p-locate@npm:^5.0.0": + version: 5.0.0 + resolution: "p-locate@npm:5.0.0" + dependencies: + p-limit: "npm:^3.0.2" + checksum: 10c0/2290d627ab7903b8b70d11d384fee714b797f6040d9278932754a6860845c4d3190603a0772a663c8cb5a7b21d1b16acb3a6487ebcafa9773094edc3dfe6009a + languageName: node + linkType: hard + +"p-map@npm:^7.0.2": + version: 7.0.3 + resolution: "p-map@npm:7.0.3" + checksum: 10c0/46091610da2b38ce47bcd1d8b4835a6fa4e832848a6682cf1652bc93915770f4617afc844c10a77d1b3e56d2472bb2d5622353fa3ead01a7f42b04fc8e744a5c + languageName: node + linkType: hard + +"p-timeout@npm:^3.0.0, p-timeout@npm:^3.1.0": + version: 3.2.0 + resolution: "p-timeout@npm:3.2.0" + dependencies: + p-finally: "npm:^1.0.0" + checksum: 10c0/524b393711a6ba8e1d48137c5924749f29c93d70b671e6db761afa784726572ca06149c715632da8f70c090073afb2af1c05730303f915604fd38ee207b70a61 + languageName: node + linkType: hard + +"p-try@npm:^2.0.0": + version: 2.2.0 + resolution: "p-try@npm:2.2.0" + checksum: 10c0/c36c19907734c904b16994e6535b02c36c2224d433e01a2f1ab777237f4d86e6289fd5fd464850491e940379d4606ed850c03e0f9ab600b0ebddb511312e177f + languageName: node + linkType: hard + +"p-wait-for@npm:3.2.0": + version: 3.2.0 + resolution: "p-wait-for@npm:3.2.0" + dependencies: + p-timeout: "npm:^3.0.0" + checksum: 10c0/38261cfac4af3ca25b0b5b9d44ef88366cef2fdd16c7a72c27c97fcab5dc8948593b6983f839dee5342316b7d24b523d4499ed834214c66619a717442e1b08f0 + languageName: node + linkType: hard + +"package-json-from-dist@npm:^1.0.0": + version: 1.0.1 + resolution: "package-json-from-dist@npm:1.0.1" + checksum: 10c0/62ba2785eb655fec084a257af34dbe24292ab74516d6aecef97ef72d4897310bc6898f6c85b5cd22770eaa1ce60d55a0230e150fb6a966e3ecd6c511e23d164b + languageName: node + linkType: hard + +"param-case@npm:^2.1.1": + version: 2.1.1 + resolution: "param-case@npm:2.1.1" + dependencies: + no-case: "npm:^2.2.0" + checksum: 10c0/8ea1b8472fd51d5f50b28d1d754899713805d05f2241e9b8c4acafa2c500b3f47457a3b4932ab75220f14d2c69180bb7338b78a45576e2b4d90da1e6f0285833 + languageName: node + linkType: hard + +"parent-module@npm:^1.0.0": + version: 1.0.1 + resolution: "parent-module@npm:1.0.1" + dependencies: + callsites: "npm:^3.0.0" + checksum: 10c0/c63d6e80000d4babd11978e0d3fee386ca7752a02b035fd2435960ffaa7219dc42146f07069fb65e6e8bf1caef89daf9af7535a39bddf354d78bf50d8294f556 + languageName: node + linkType: hard + +"parse-json@npm:^5.2.0": + version: 5.2.0 + resolution: "parse-json@npm:5.2.0" + dependencies: + "@babel/code-frame": "npm:^7.0.0" + error-ex: "npm:^1.3.1" + json-parse-even-better-errors: "npm:^2.3.0" + lines-and-columns: "npm:^1.1.6" + checksum: 10c0/77947f2253005be7a12d858aedbafa09c9ae39eb4863adf330f7b416ca4f4a08132e453e08de2db46459256fb66afaac5ee758b44fe6541b7cdaf9d252e59585 + languageName: node + linkType: hard + +"parse5-htmlparser2-tree-adapter@npm:^6.0.0": + version: 6.0.1 + resolution: "parse5-htmlparser2-tree-adapter@npm:6.0.1" + dependencies: + parse5: "npm:^6.0.1" + checksum: 10c0/dfa5960e2aaf125707e19a4b1bc333de49232eba5a6ffffb95d313a7d6087c3b7a274b58bee8d3bd41bdf150638815d1d601a42bbf2a0345208c3c35b1279556 + languageName: node + linkType: hard + +"parse5-htmlparser2-tree-adapter@npm:^7.0.0": + version: 7.1.0 + resolution: "parse5-htmlparser2-tree-adapter@npm:7.1.0" + dependencies: + domhandler: "npm:^5.0.3" + parse5: "npm:^7.0.0" + checksum: 10c0/e5a4e0b834c84c9e244b5749f8d007f4baaeafac7a1da2c54be3421ffd9ef8fdec4f198bf55cda22e88e6ba95e9943f6ed5aa3ae5900b39972ebf5dc8c3f4722 + languageName: node + linkType: hard + +"parse5@npm:6.0.1, parse5@npm:^6.0.1": + version: 6.0.1 + resolution: "parse5@npm:6.0.1" + checksum: 10c0/595821edc094ecbcfb9ddcb46a3e1fe3a718540f8320eff08b8cf6742a5114cce2d46d45f95c26191c11b184dcaf4e2960abcd9c5ed9eb9393ac9a37efcfdecb + languageName: node + linkType: hard + +"parse5@npm:^5.1.1": + version: 5.1.1 + resolution: "parse5@npm:5.1.1" + checksum: 10c0/b0f87a77a7fea5f242e3d76917c983bbea47703b9371801d51536b78942db6441cbda174bf84eb30e47315ddc6f8a0b57d68e562c790154430270acd76c1fa03 + languageName: node + linkType: hard + +"parse5@npm:^7.0.0": + version: 7.2.1 + resolution: "parse5@npm:7.2.1" + dependencies: + entities: "npm:^4.5.0" + checksum: 10c0/829d37a0c709215a887e410a7118d754f8e1afd7edb529db95bc7bbf8045fb0266a7b67801331d8e8d9d073ea75793624ec27ce9ff3b96862c3b9008f4d68e80 + languageName: node + linkType: hard + +"parseley@npm:^0.12.0": + version: 0.12.1 + resolution: "parseley@npm:0.12.1" + dependencies: + leac: "npm:^0.6.0" + peberminta: "npm:^0.9.0" + checksum: 10c0/df3de74172b72305b867298a71e5882c413df75d30f2bafb5fb70779dfd349c5e4db03441fbf8ca83da8e4aa72bd0ef2b5c73086c4825d27d1c649d61bc0bcc0 + languageName: node + linkType: hard + +"parseurl@npm:~1.3.3": + version: 1.3.3 + resolution: "parseurl@npm:1.3.3" + checksum: 10c0/90dd4760d6f6174adb9f20cf0965ae12e23879b5f5464f38e92fce8073354341e4b3b76fa3d878351efe7d01e617121955284cfd002ab087fba1a0726ec0b4f5 + languageName: node + linkType: hard + +"passport-jwt@npm:^4.0.1": + version: 4.0.1 + resolution: "passport-jwt@npm:4.0.1" + dependencies: + jsonwebtoken: "npm:^9.0.0" + passport-strategy: "npm:^1.0.0" + checksum: 10c0/d7e2b472d399f596a1db31310f8e63d10777ab7468b9a378c964156e5f0a772598b007417356ead578cfdaf60dc2bba39a55f0033ca865186fdb2a2b198e2e7e + languageName: node + linkType: hard + +"passport-local@npm:^1.0.0": + version: 1.0.0 + resolution: "passport-local@npm:1.0.0" + dependencies: + passport-strategy: "npm:1.x.x" + checksum: 10c0/59becb988014921a5d6056470d9373c41db452fcf113323064f39d53baa6f184e72151bf269ca6770511f7f0260e13632dacc7b6afdbf60ebf63e90327e186d4 + languageName: node + linkType: hard + +"passport-strategy@npm:1.x.x, passport-strategy@npm:^1.0.0": + version: 1.0.0 + resolution: "passport-strategy@npm:1.0.0" + checksum: 10c0/cf4cd32e1bf2538a239651581292fbb91ccc83973cde47089f00d2014c24bed63d3e65af21da8ddef649a8896e089eb9c3ac9ca639f36c797654ae9ee4ed65e1 + languageName: node + linkType: hard + +"passport@npm:^0.7.0": + version: 0.7.0 + resolution: "passport@npm:0.7.0" + dependencies: + passport-strategy: "npm:1.x.x" + pause: "npm:0.0.1" + utils-merge: "npm:^1.0.1" + checksum: 10c0/08c940b86e4adbfe43e753f8097300a5a9d1ce9a3aa002d7b12d27770943a1a87202c54597c0f04dbfd4117d67de76303433577512fc19c7e364fec37b0d3fc5 + languageName: node + linkType: hard + +"path-exists@npm:^4.0.0": + version: 4.0.0 + resolution: "path-exists@npm:4.0.0" + checksum: 10c0/8c0bd3f5238188197dc78dced15207a4716c51cc4e3624c44fc97acf69558f5ebb9a2afff486fe1b4ee148e0c133e96c5e11a9aa5c48a3006e3467da070e5e1b + languageName: node + linkType: hard + +"path-is-absolute@npm:^1.0.0": + version: 1.0.1 + resolution: "path-is-absolute@npm:1.0.1" + checksum: 10c0/127da03c82172a2a50099cddbf02510c1791fc2cc5f7713ddb613a56838db1e8168b121a920079d052e0936c23005562059756d653b7c544c53185efe53be078 + languageName: node + linkType: hard + +"path-key@npm:^2.0.0, path-key@npm:^2.0.1": + version: 2.0.1 + resolution: "path-key@npm:2.0.1" + checksum: 10c0/dd2044f029a8e58ac31d2bf34c34b93c3095c1481942960e84dd2faa95bbb71b9b762a106aead0646695330936414b31ca0bd862bf488a937ad17c8c5d73b32b + languageName: node + linkType: hard + +"path-key@npm:^3.0.0, path-key@npm:^3.1.0": + version: 3.1.1 + resolution: "path-key@npm:3.1.1" + checksum: 10c0/748c43efd5a569c039d7a00a03b58eecd1d75f3999f5a28303d75f521288df4823bc057d8784eb72358b2895a05f29a070bc9f1f17d28226cc4e62494cc58c4c + languageName: node + linkType: hard + +"path-parse@npm:^1.0.7": + version: 1.0.7 + resolution: "path-parse@npm:1.0.7" + checksum: 10c0/11ce261f9d294cc7a58d6a574b7f1b935842355ec66fba3c3fd79e0f036462eaf07d0aa95bb74ff432f9afef97ce1926c720988c6a7451d8a584930ae7de86e1 + languageName: node + linkType: hard + +"path-scurry@npm:^1.10.2, path-scurry@npm:^1.11.1": + version: 1.11.1 + resolution: "path-scurry@npm:1.11.1" + dependencies: + lru-cache: "npm:^10.2.0" + minipass: "npm:^5.0.0 || ^6.0.2 || ^7.0.0" + checksum: 10c0/32a13711a2a505616ae1cc1b5076801e453e7aae6ac40ab55b388bb91b9d0547a52f5aaceff710ea400205f18691120d4431e520afbe4266b836fadede15872d + languageName: node + linkType: hard + +"path-to-regexp@npm:0.1.12": + version: 0.1.12 + resolution: "path-to-regexp@npm:0.1.12" + checksum: 10c0/1c6ff10ca169b773f3bba943bbc6a07182e332464704572962d277b900aeee81ac6aa5d060ff9e01149636c30b1f63af6e69dd7786ba6e0ddb39d4dee1f0645b + languageName: node + linkType: hard + +"path-to-regexp@npm:3.3.0": + version: 3.3.0 + resolution: "path-to-regexp@npm:3.3.0" + checksum: 10c0/ffa0ebe7088d38d435a8d08b0fe6e8c93ceb2a81a65d4dd1d9a538f52e09d5e3474ed5f553cb3b180d894b0caa10698a68737ab599fd1e56b4663d1a64c9f77b + languageName: node + linkType: hard + +"path-type@npm:^4.0.0": + version: 4.0.0 + resolution: "path-type@npm:4.0.0" + checksum: 10c0/666f6973f332f27581371efaf303fd6c272cc43c2057b37aa99e3643158c7e4b2626549555d88626e99ea9e046f82f32e41bbde5f1508547e9a11b149b52387c + languageName: node + linkType: hard + +"pause@npm:0.0.1": + version: 0.0.1 + resolution: "pause@npm:0.0.1" + checksum: 10c0/f362655dfa7f44b946302c5a033148852ed5d05f744bd848b1c7eae6a543f743e79c7751ee896ba519fd802affdf239a358bb2ea5ca1b1c1e4e916279f83ab75 + languageName: node + linkType: hard + +"peberminta@npm:^0.9.0": + version: 0.9.0 + resolution: "peberminta@npm:0.9.0" + checksum: 10c0/59c2c39269d9f7f559cf44582f1c0503524c6a9bc3478e0309adba2b41c71ab98745a239a4e6f98f46105291256e6d8f12ae9860d9f016b1c9a6f52c0b63bfe7 + languageName: node + linkType: hard + +"pg-cloudflare@npm:^1.1.1": + version: 1.1.1 + resolution: "pg-cloudflare@npm:1.1.1" + checksum: 10c0/a68b957f755be6af813d68ccaf4c906a000fd2ecb362cd281220052cc9e2f6c26da3b88792742387008c30b3bf0d2fa3a0eff04aeb8af4414023c99ae78e07bd + languageName: node + linkType: hard + +"pg-connection-string@npm:^2.7.0": + version: 2.7.0 + resolution: "pg-connection-string@npm:2.7.0" + checksum: 10c0/50a1496a1c858f9495d78a2c7a66d93ef3602e718aff2953bb5738f3ea616d7f727f32fc20513c9bed127650cd14c1ddc7b458396f4000e689d4b64c65c5c51e + languageName: node + linkType: hard + +"pg-int8@npm:1.0.1": + version: 1.0.1 + resolution: "pg-int8@npm:1.0.1" + checksum: 10c0/be6a02d851fc2a4ae3e9de81710d861de3ba35ac927268973eb3cb618873a05b9424656df464dd43bd7dc3fc5295c3f5b3c8349494f87c7af50ec59ef14e0b98 + languageName: node + linkType: hard + +"pg-numeric@npm:1.0.2": + version: 1.0.2 + resolution: "pg-numeric@npm:1.0.2" + checksum: 10c0/43dd9884e7b52c79ddc28d2d282d7475fce8bba13452d33c04ceb2e0a65f561edf6699694e8e1c832ff9093770496363183c950dd29608e1bdd98f344b25bca9 + languageName: node + linkType: hard + +"pg-pool@npm:^3.7.0": + version: 3.7.0 + resolution: "pg-pool@npm:3.7.0" + peerDependencies: + pg: ">=8.0" + checksum: 10c0/9128673cf941f288c0cb1a74ca959a9b4f6075ef73b2cc7dece5d4db3dd7043784869e7c12bce2e69ca0df22132a419cc45c2050b4373632856fe8bae9eb94b5 + languageName: node + linkType: hard + +"pg-protocol@npm:*, pg-protocol@npm:^1.7.0": + version: 1.7.0 + resolution: "pg-protocol@npm:1.7.0" + checksum: 10c0/c4af854d9b843c808231c0040fed89f2b9101006157df8da2bb2f62a7dde702de748d852228dc22df41cc7ffddfb526af3bcb34b278b581e9f76a060789186c1 + languageName: node + linkType: hard + +"pg-types@npm:^2.1.0, pg-types@npm:^2.2.0": + version: 2.2.0 + resolution: "pg-types@npm:2.2.0" + dependencies: + pg-int8: "npm:1.0.1" + postgres-array: "npm:~2.0.0" + postgres-bytea: "npm:~1.0.0" + postgres-date: "npm:~1.0.4" + postgres-interval: "npm:^1.1.0" + checksum: 10c0/ab3f8069a323f601cd2d2279ca8c425447dab3f9b61d933b0601d7ffc00d6200df25e26a4290b2b0783b59278198f7dd2ed03e94c4875797919605116a577c65 + languageName: node + linkType: hard + +"pg-types@npm:^4.0.1": + version: 4.0.2 + resolution: "pg-types@npm:4.0.2" + dependencies: + pg-int8: "npm:1.0.1" + pg-numeric: "npm:1.0.2" + postgres-array: "npm:~3.0.1" + postgres-bytea: "npm:~3.0.0" + postgres-date: "npm:~2.1.0" + postgres-interval: "npm:^3.0.0" + postgres-range: "npm:^1.1.1" + checksum: 10c0/780fccda2f3fa2a34e85a72e8e7dadb7d88fbe71ce88f126cb3313f333ad836d02488ec4ff3d94d0c1e5846f735d6e6c6281f8059e6b8919d2180429acaec3e2 + languageName: node + linkType: hard + +"pg@npm:^8.12.0": + version: 8.13.1 + resolution: "pg@npm:8.13.1" + dependencies: + pg-cloudflare: "npm:^1.1.1" + pg-connection-string: "npm:^2.7.0" + pg-pool: "npm:^3.7.0" + pg-protocol: "npm:^1.7.0" + pg-types: "npm:^2.1.0" + pgpass: "npm:1.x" + peerDependencies: + pg-native: ">=3.0.1" + dependenciesMeta: + pg-cloudflare: + optional: true + peerDependenciesMeta: + pg-native: + optional: true + checksum: 10c0/c13bc661cbdb115337bc8519254836faf4bd79106dfd7ed588c8ece8c8b2dd3b7376bfec9a9a2f7646fa095b0b310cec77a83c3ba2ea4872331446eb93fd9055 + languageName: node + linkType: hard + +"pgpass@npm:1.x": + version: 1.0.5 + resolution: "pgpass@npm:1.0.5" + dependencies: + split2: "npm:^4.1.0" + checksum: 10c0/5ea6c9b2de04c33abb08d33a2dded303c4a3c7162a9264519cbe85c0a9857d712463140ba42fad0c7cd4b21f644dd870b45bb2e02fcbe505b4de0744fd802c1d + languageName: node + linkType: hard + +"picocolors@npm:^1.0.0, picocolors@npm:^1.1.0": + version: 1.1.1 + resolution: "picocolors@npm:1.1.1" + checksum: 10c0/e2e3e8170ab9d7c7421969adaa7e1b31434f789afb9b3f115f6b96d91945041ac3ceb02e9ec6fe6510ff036bcc0bf91e69a1772edc0b707e12b19c0f2d6bcf58 + languageName: node + linkType: hard + +"picomatch@npm:4.0.1": + version: 4.0.1 + resolution: "picomatch@npm:4.0.1" + checksum: 10c0/a036a085b18b376493e8ccef155bb03c65a2be7203582b717bb0498d1446e6a80f7f86a36e07877590abd0431f26c64c6154058c31f4f46105d3686a34fa3cf6 + languageName: node + linkType: hard + +"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.2.3, picomatch@npm:^2.3.1": + version: 2.3.1 + resolution: "picomatch@npm:2.3.1" + checksum: 10c0/26c02b8d06f03206fc2ab8d16f19960f2ff9e81a658f831ecb656d8f17d9edc799e8364b1f4a7873e89d9702dff96204be0fa26fe4181f6843f040f819dac4be + languageName: node + linkType: hard + +"pino-std-serializers@npm:^3.1.0": + version: 3.2.0 + resolution: "pino-std-serializers@npm:3.2.0" + checksum: 10c0/ae08159372b5bbe69f13770a7f20ba7ded0bb97b2c6f42f780995582135ca907e66504f06371c12f991dbfcd489280f942786c02a9e8e952974d455cb0a477c9 + languageName: node + linkType: hard + +"pino@npm:^6.13.0": + version: 6.14.0 + resolution: "pino@npm:6.14.0" + dependencies: + fast-redact: "npm:^3.0.0" + fast-safe-stringify: "npm:^2.0.8" + flatstr: "npm:^1.0.12" + pino-std-serializers: "npm:^3.1.0" + process-warning: "npm:^1.0.0" + quick-format-unescaped: "npm:^4.0.3" + sonic-boom: "npm:^1.0.2" + bin: + pino: bin.js + checksum: 10c0/5d3cb22c804e2bf2439ace64a46a7901d0a138cb75715ad8a8bbcf3ddb09dc5e33a9fc8a49527c3345d317619748c6de94d28481911ae931c21b953e24048425 + languageName: node + linkType: hard + +"pirates@npm:^4.0.4": + version: 4.0.6 + resolution: "pirates@npm:4.0.6" + checksum: 10c0/00d5fa51f8dded94d7429700fb91a0c1ead00ae2c7fd27089f0c5b63e6eca36197fe46384631872690a66f390c5e27198e99006ab77ae472692ab9c2ca903f36 + languageName: node + linkType: hard + +"pkg-dir@npm:^4.2.0": + version: 4.2.0 + resolution: "pkg-dir@npm:4.2.0" + dependencies: + find-up: "npm:^4.0.0" + checksum: 10c0/c56bda7769e04907a88423feb320babaed0711af8c436ce3e56763ab1021ba107c7b0cafb11cde7529f669cfc22bffcaebffb573645cbd63842ea9fb17cd7728 + languageName: node + linkType: hard + +"pluralize@npm:8.0.0, pluralize@npm:^8.0.0": + version: 8.0.0 + resolution: "pluralize@npm:8.0.0" + checksum: 10c0/2044cfc34b2e8c88b73379ea4a36fc577db04f651c2909041b054c981cd863dd5373ebd030123ab058d194ae615d3a97cfdac653991e499d10caf592e8b3dc33 + languageName: node + linkType: hard + +"postgres-array@npm:~2.0.0": + version: 2.0.0 + resolution: "postgres-array@npm:2.0.0" + checksum: 10c0/cbd56207e4141d7fbf08c86f2aebf21fa7064943d3f808ec85f442ff94b48d891e7a144cc02665fb2de5dbcb9b8e3183a2ac749959e794b4a4cfd379d7a21d08 + languageName: node + linkType: hard + +"postgres-array@npm:~3.0.1": + version: 3.0.2 + resolution: "postgres-array@npm:3.0.2" + checksum: 10c0/644aa071f67a66a59f641f8e623887d2b915bc102a32643e2aa8b54c11acd343c5ad97831ea444dd37bd4b921ba35add4aa2cb0c6b76700a8252c2324aeba5b4 + languageName: node + linkType: hard + +"postgres-bytea@npm:~1.0.0": + version: 1.0.0 + resolution: "postgres-bytea@npm:1.0.0" + checksum: 10c0/febf2364b8a8953695cac159eeb94542ead5886792a9627b97e33f6b5bb6e263bc0706ab47ec221516e79fbd6b2452d668841830fb3b49ec6c0fc29be61892ce + languageName: node + linkType: hard + +"postgres-bytea@npm:~3.0.0": + version: 3.0.0 + resolution: "postgres-bytea@npm:3.0.0" + dependencies: + obuf: "npm:~1.1.2" + checksum: 10c0/41c79cc48aa730c5ba3eda6ab989a940034f07a1f57b8f2777dce56f1b8cca16c5870582932b5b10cc605048aef9b6157e06253c871b4717cafc6d00f55376aa + languageName: node + linkType: hard + +"postgres-date@npm:~1.0.4": + version: 1.0.7 + resolution: "postgres-date@npm:1.0.7" + checksum: 10c0/0ff91fccc64003e10b767fcfeefb5eaffbc522c93aa65d5051c49b3c4ce6cb93ab091a7d22877a90ad60b8874202c6f1d0f935f38a7235ed3b258efd54b97ca9 + languageName: node + linkType: hard + +"postgres-date@npm:~2.1.0": + version: 2.1.0 + resolution: "postgres-date@npm:2.1.0" + checksum: 10c0/00a7472c10788f6b0d08d24108bf1eb80858de1bd6317740198a564918ea4a69b80c98148167b92ae688abd606483020d0de0dd3a36f3ea9a3e26bbeef3464f4 + languageName: node + linkType: hard + +"postgres-interval@npm:^1.1.0": + version: 1.2.0 + resolution: "postgres-interval@npm:1.2.0" + dependencies: + xtend: "npm:^4.0.0" + checksum: 10c0/c1734c3cb79e7f22579af0b268a463b1fa1d084e742a02a7a290c4f041e349456f3bee3b4ee0bb3f226828597f7b76deb615c1b857db9a742c45520100456272 + languageName: node + linkType: hard + +"postgres-interval@npm:^3.0.0": + version: 3.0.0 + resolution: "postgres-interval@npm:3.0.0" + checksum: 10c0/8b570b30ea37c685e26d136d34460f246f98935a1533defc4b53bb05ee23ae3dc7475b718ec7ea607a57894d8c6b4f1adf67ca9cc83a75bdacffd427d5c68de8 + languageName: node + linkType: hard + +"postgres-range@npm:^1.1.1": + version: 1.1.4 + resolution: "postgres-range@npm:1.1.4" + checksum: 10c0/254494ef81df208e0adeae6b66ce394aba37914ea14c7ece55a45fb6691b7db04bee74c825380a47c887a9f87158fd3d86f758f9cc60b76d3a38ce5aca7912e8 + languageName: node + linkType: hard + +"prelude-ls@npm:^1.2.1": + version: 1.2.1 + resolution: "prelude-ls@npm:1.2.1" + checksum: 10c0/b00d617431e7886c520a6f498a2e14c75ec58f6d93ba48c3b639cf241b54232d90daa05d83a9e9b9fef6baa63cb7e1e4602c2372fea5bc169668401eb127d0cd + languageName: node + linkType: hard + +"prettier-linter-helpers@npm:^1.0.0": + version: 1.0.0 + resolution: "prettier-linter-helpers@npm:1.0.0" + dependencies: + fast-diff: "npm:^1.1.2" + checksum: 10c0/81e0027d731b7b3697ccd2129470ed9913ecb111e4ec175a12f0fcfab0096516373bf0af2fef132af50cafb0a905b74ff57996d615f59512bb9ac7378fcc64ab + languageName: node + linkType: hard + +"prettier@npm:^2.3.2": + version: 2.8.8 + resolution: "prettier@npm:2.8.8" + bin: + prettier: bin-prettier.js + checksum: 10c0/463ea8f9a0946cd5b828d8cf27bd8b567345cf02f56562d5ecde198b91f47a76b7ac9eae0facd247ace70e927143af6135e8cf411986b8cb8478784a4d6d724a + languageName: node + linkType: hard + +"pretty-format@npm:^27.5.1": + version: 27.5.1 + resolution: "pretty-format@npm:27.5.1" + dependencies: + ansi-regex: "npm:^5.0.1" + ansi-styles: "npm:^5.0.0" + react-is: "npm:^17.0.1" + checksum: 10c0/0cbda1031aa30c659e10921fa94e0dd3f903ecbbbe7184a729ad66f2b6e7f17891e8c7d7654c458fa4ccb1a411ffb695b4f17bbcd3fe075fabe181027c4040ed + languageName: node + linkType: hard + +"pretty-format@npm:^29.0.0, pretty-format@npm:^29.7.0": + version: 29.7.0 + resolution: "pretty-format@npm:29.7.0" + dependencies: + "@jest/schemas": "npm:^29.6.3" + ansi-styles: "npm:^5.0.0" + react-is: "npm:^18.0.0" + checksum: 10c0/edc5ff89f51916f036c62ed433506b55446ff739358de77207e63e88a28ca2894caac6e73dcb68166a606e51c8087d32d400473e6a9fdd2dbe743f46c9c0276f + languageName: node + linkType: hard + +"preview-email@npm:^3.0.19": + version: 3.1.0 + resolution: "preview-email@npm:3.1.0" + dependencies: + ci-info: "npm:^3.8.0" + display-notification: "npm:2.0.0" + fixpack: "npm:^4.0.0" + get-port: "npm:5.1.1" + mailparser: "npm:^3.7.1" + nodemailer: "npm:^6.9.13" + open: "npm:7" + p-event: "npm:4.2.0" + p-wait-for: "npm:3.2.0" + pug: "npm:^3.0.3" + uuid: "npm:^9.0.1" + checksum: 10c0/09bdcdfa357615e4d03c9b9cb5bcf65069b8457c2148b8c727b5208bfae622cdad1f69cbba491c9bfbe4fe1987a08138b15344b8ff15e8a199260a69534f4d08 + languageName: node + linkType: hard + +"proc-log@npm:^5.0.0": + version: 5.0.0 + resolution: "proc-log@npm:5.0.0" + checksum: 10c0/bbe5edb944b0ad63387a1d5b1911ae93e05ce8d0f60de1035b218cdcceedfe39dbd2c697853355b70f1a090f8f58fe90da487c85216bf9671f9499d1a897e9e3 + languageName: node + linkType: hard + +"process-nextick-args@npm:~2.0.0": + version: 2.0.1 + resolution: "process-nextick-args@npm:2.0.1" + checksum: 10c0/bec089239487833d46b59d80327a1605e1c5287eaad770a291add7f45fda1bb5e28b38e0e061add0a1d0ee0984788ce74fa394d345eed1c420cacf392c554367 + languageName: node + linkType: hard + +"process-warning@npm:^1.0.0": + version: 1.0.0 + resolution: "process-warning@npm:1.0.0" + checksum: 10c0/43ec4229d64eb5c58340c8aacade49eb5f6fd513eae54140abf365929ca20987f0a35c5868125e2b583cad4de8cd257beb5667d9cc539d9190a7a4c3014adf22 + languageName: node + linkType: hard + +"promise-retry@npm:^2.0.1": + version: 2.0.1 + resolution: "promise-retry@npm:2.0.1" + dependencies: + err-code: "npm:^2.0.2" + retry: "npm:^0.12.0" + checksum: 10c0/9c7045a1a2928094b5b9b15336dcd2a7b1c052f674550df63cc3f36cd44028e5080448175b6f6ca32b642de81150f5e7b1a98b728f15cb069f2dd60ac2616b96 + languageName: node + linkType: hard + +"promise@npm:^7.0.1": + version: 7.3.1 + resolution: "promise@npm:7.3.1" + dependencies: + asap: "npm:~2.0.3" + checksum: 10c0/742e5c0cc646af1f0746963b8776299701ad561ce2c70b49365d62c8db8ea3681b0a1bf0d4e2fe07910bf72f02d39e51e8e73dc8d7503c3501206ac908be107f + languageName: node + linkType: hard + +"prompts@npm:^2.0.1": + version: 2.4.2 + resolution: "prompts@npm:2.4.2" + dependencies: + kleur: "npm:^3.0.3" + sisteransi: "npm:^1.0.5" + checksum: 10c0/16f1ac2977b19fe2cf53f8411cc98db7a3c8b115c479b2ca5c82b5527cd937aa405fa04f9a5960abeb9daef53191b53b4d13e35c1f5d50e8718c76917c5f1ea4 + languageName: node + linkType: hard + +"proto-list@npm:~1.2.1": + version: 1.2.4 + resolution: "proto-list@npm:1.2.4" + checksum: 10c0/b9179f99394ec8a68b8afc817690185f3b03933f7b46ce2e22c1930dc84b60d09f5ad222beab4e59e58c6c039c7f7fcf620397235ef441a356f31f9744010e12 + languageName: node + linkType: hard + +"proxy-addr@npm:^2.0.7, proxy-addr@npm:~2.0.7": + version: 2.0.7 + resolution: "proxy-addr@npm:2.0.7" + dependencies: + forwarded: "npm:0.2.0" + ipaddr.js: "npm:1.9.1" + checksum: 10c0/c3eed999781a35f7fd935f398b6d8920b6fb00bbc14287bc6de78128ccc1a02c89b95b56742bf7cf0362cc333c61d138532049c7dedc7a328ef13343eff81210 + languageName: node + linkType: hard + +"proxy-from-env@npm:^1.1.0": + version: 1.1.0 + resolution: "proxy-from-env@npm:1.1.0" + checksum: 10c0/fe7dd8b1bdbbbea18d1459107729c3e4a2243ca870d26d34c2c1bcd3e4425b7bcc5112362df2d93cc7fb9746f6142b5e272fd1cc5c86ddf8580175186f6ad42b + languageName: node + linkType: hard + +"psl@npm:^1.1.33": + version: 1.15.0 + resolution: "psl@npm:1.15.0" + dependencies: + punycode: "npm:^2.3.1" + checksum: 10c0/d8d45a99e4ca62ca12ac3c373e63d80d2368d38892daa40cfddaa1eb908be98cd549ac059783ef3a56cfd96d57ae8e2fd9ae53d1378d90d42bc661ff924e102a + languageName: node + linkType: hard + +"pug-attrs@npm:^3.0.0": + version: 3.0.0 + resolution: "pug-attrs@npm:3.0.0" + dependencies: + constantinople: "npm:^4.0.1" + js-stringify: "npm:^1.0.2" + pug-runtime: "npm:^3.0.0" + checksum: 10c0/28178e91c05e8eb9130861c78dccc61eae3e1610931346065bd32ad0b08b023a8dcf2470c3b2409ba45a5098d6d7ed15687717e91cf77770c6381a18626e5194 + languageName: node + linkType: hard + +"pug-code-gen@npm:^3.0.3": + version: 3.0.3 + resolution: "pug-code-gen@npm:3.0.3" + dependencies: + constantinople: "npm:^4.0.1" + doctypes: "npm:^1.1.0" + js-stringify: "npm:^1.0.2" + pug-attrs: "npm:^3.0.0" + pug-error: "npm:^2.1.0" + pug-runtime: "npm:^3.0.1" + void-elements: "npm:^3.1.0" + with: "npm:^7.0.0" + checksum: 10c0/517a93930dbc80bc7fa5f60ff324229a07cc5ab70ed9d344ce105e2fe24de68db5121c8457a9ba99cdc8d48dd18779dd34956ebfcab009b3c1c6843a3cade109 + languageName: node + linkType: hard + +"pug-error@npm:^2.0.0, pug-error@npm:^2.1.0": + version: 2.1.0 + resolution: "pug-error@npm:2.1.0" + checksum: 10c0/bbce339b17fab9890de84975c0cd8723a847bf65f35653d3ebcf77018e8ad91529d56e978ab80f4c64c9f4f07ef9e56e7a9fda3be44249c344a93ba11fccff79 + languageName: node + linkType: hard + +"pug-filters@npm:^4.0.0": + version: 4.0.0 + resolution: "pug-filters@npm:4.0.0" + dependencies: + constantinople: "npm:^4.0.1" + jstransformer: "npm:1.0.0" + pug-error: "npm:^2.0.0" + pug-walk: "npm:^2.0.0" + resolve: "npm:^1.15.1" + checksum: 10c0/7ddd62f5eb97f5242858bd56d93ffed387fef3742210a53770c980020cf91a34384b84b7fc8f0de185b43dfa77de2c4d0f63f575a4c5b3887fdef4e64b8d559d + languageName: node + linkType: hard + +"pug-lexer@npm:^5.0.1": + version: 5.0.1 + resolution: "pug-lexer@npm:5.0.1" + dependencies: + character-parser: "npm:^2.2.0" + is-expression: "npm:^4.0.0" + pug-error: "npm:^2.0.0" + checksum: 10c0/24195a5681953ab91c6a3ccd80a643f760dddb65e2f266bf8ccba145018ba0271536efe1572de2c2224163eb00873c2f1df0ad7ea7aa8bcbf79a66b586ca8435 + languageName: node + linkType: hard + +"pug-linker@npm:^4.0.0": + version: 4.0.0 + resolution: "pug-linker@npm:4.0.0" + dependencies: + pug-error: "npm:^2.0.0" + pug-walk: "npm:^2.0.0" + checksum: 10c0/db754ff34cdd4ba9d9e2d9535cce2a74178f2172e848a5fa6381907cb5bfaa0d39d4cc3eb29893d35fc1c417e83ae3cfd434640ba7d3b635c63199104fae976c + languageName: node + linkType: hard + +"pug-load@npm:^3.0.0": + version: 3.0.0 + resolution: "pug-load@npm:3.0.0" + dependencies: + object-assign: "npm:^4.1.1" + pug-walk: "npm:^2.0.0" + checksum: 10c0/2a7659dfaf9872dd25d851f85e4c27fa447d907b1db3540030cd844614159ff181e067d8f2bedf90eb6b5b1ff03747253859ecbbb822e40f4834b15591d4e108 + languageName: node + linkType: hard + +"pug-parser@npm:^6.0.0": + version: 6.0.0 + resolution: "pug-parser@npm:6.0.0" + dependencies: + pug-error: "npm:^2.0.0" + token-stream: "npm:1.0.0" + checksum: 10c0/faa6cec43afdeb2705eb8c68dfdb2e65836238df8043ae55295ffb72450b8c7a990ea1be60adbde19f58988b9e1d18a84ea42453e2c4f104d0031f78fda737b2 + languageName: node + linkType: hard + +"pug-runtime@npm:^3.0.0, pug-runtime@npm:^3.0.1": + version: 3.0.1 + resolution: "pug-runtime@npm:3.0.1" + checksum: 10c0/0db8166d2e17695a6941d1de81dcb21c8a52921299b1e03bf6a0a3d2b0036b51cf98101b3937b731c745e8d3e0268cb0b728c02f61a80a25fcfaa15c594fb1be + languageName: node + linkType: hard + +"pug-strip-comments@npm:^2.0.0": + version: 2.0.0 + resolution: "pug-strip-comments@npm:2.0.0" + dependencies: + pug-error: "npm:^2.0.0" + checksum: 10c0/ca498adedaeba51dd836b20129bbd161e2d5a397a2baaa553b1e74e888caa2258dcd7326396fc6f8fed8c7b7f906cfebc4c386ccbee8888a27b2ca0d4d86d206 + languageName: node + linkType: hard + +"pug-walk@npm:^2.0.0": + version: 2.0.0 + resolution: "pug-walk@npm:2.0.0" + checksum: 10c0/005d63177bcf057f5a618b182f6d4600afb039200b07a381a0d89288a2b3126e763a0a6c40b758eab0731c8e63cad1bbcb46d96803b9ae9cfc879f6ef5a0f8f4 + languageName: node + linkType: hard + +"pug@npm:^3.0.2, pug@npm:^3.0.3": + version: 3.0.3 + resolution: "pug@npm:3.0.3" + dependencies: + pug-code-gen: "npm:^3.0.3" + pug-filters: "npm:^4.0.0" + pug-lexer: "npm:^5.0.1" + pug-linker: "npm:^4.0.0" + pug-load: "npm:^3.0.0" + pug-parser: "npm:^6.0.0" + pug-runtime: "npm:^3.0.1" + pug-strip-comments: "npm:^2.0.0" + checksum: 10c0/bda53d3a6deea1d348cd5ab17427c77f3d74165510ad16f4fd182cc63618ad09388ecda317d17122ee890c8a68f9a54b96221fce7f44a332e463fdbb10a9d1e2 + languageName: node + linkType: hard + +"punycode.js@npm:2.3.1": + version: 2.3.1 + resolution: "punycode.js@npm:2.3.1" + checksum: 10c0/1d12c1c0e06127fa5db56bd7fdf698daf9a78104456a6b67326877afc21feaa821257b171539caedd2f0524027fa38e67b13dd094159c8d70b6d26d2bea4dfdb + languageName: node + linkType: hard + +"punycode@npm:^2.1.0, punycode@npm:^2.1.1, punycode@npm:^2.3.1": + version: 2.3.1 + resolution: "punycode@npm:2.3.1" + checksum: 10c0/14f76a8206bc3464f794fb2e3d3cc665ae416c01893ad7a02b23766eb07159144ee612ad67af5e84fa4479ccfe67678c4feb126b0485651b302babf66f04f9e9 + languageName: node + linkType: hard + +"qs@npm:6.13.0": + version: 6.13.0 + resolution: "qs@npm:6.13.0" + dependencies: + side-channel: "npm:^1.0.6" + checksum: 10c0/62372cdeec24dc83a9fb240b7533c0fdcf0c5f7e0b83343edd7310f0ab4c8205a5e7c56406531f2e47e1b4878a3821d652be4192c841de5b032ca83619d8f860 + languageName: node + linkType: hard + +"qs@npm:^6.11.0, qs@npm:^6.8.0": + version: 6.13.1 + resolution: "qs@npm:6.13.1" + dependencies: + side-channel: "npm:^1.0.6" + checksum: 10c0/5ef527c0d62ffca5501322f0832d800ddc78eeb00da3b906f1b260ca0492721f8cdc13ee4b8fd8ac314a6ec37b948798c7b603ccc167e954088df392092f160c + languageName: node + linkType: hard + +"querystringify@npm:^2.1.1": + version: 2.2.0 + resolution: "querystringify@npm:2.2.0" + checksum: 10c0/3258bc3dbdf322ff2663619afe5947c7926a6ef5fb78ad7d384602974c467fadfc8272af44f5eb8cddd0d011aae8fabf3a929a8eee4b86edcc0a21e6bd10f9aa + languageName: node + linkType: hard + +"queue-microtask@npm:^1.1.2, queue-microtask@npm:^1.2.2": + version: 1.2.3 + resolution: "queue-microtask@npm:1.2.3" + checksum: 10c0/900a93d3cdae3acd7d16f642c29a642aea32c2026446151f0778c62ac089d4b8e6c986811076e1ae180a694cedf077d453a11b58ff0a865629a4f82ab558e102 + languageName: node + linkType: hard + +"quick-format-unescaped@npm:^4.0.3": + version: 4.0.4 + resolution: "quick-format-unescaped@npm:4.0.4" + checksum: 10c0/fe5acc6f775b172ca5b4373df26f7e4fd347975578199e7d74b2ae4077f0af05baa27d231de1e80e8f72d88275ccc6028568a7a8c9ee5e7368ace0e18eff93a4 + languageName: node + linkType: hard + +"randombytes@npm:^2.1.0": + version: 2.1.0 + resolution: "randombytes@npm:2.1.0" + dependencies: + safe-buffer: "npm:^5.1.0" + checksum: 10c0/50395efda7a8c94f5dffab564f9ff89736064d32addf0cc7e8bf5e4166f09f8ded7a0849ca6c2d2a59478f7d90f78f20d8048bca3cdf8be09d8e8a10790388f3 + languageName: node + linkType: hard + +"range-parser@npm:~1.2.1": + version: 1.2.1 + resolution: "range-parser@npm:1.2.1" + checksum: 10c0/96c032ac2475c8027b7a4e9fe22dc0dfe0f6d90b85e496e0f016fbdb99d6d066de0112e680805075bd989905e2123b3b3d002765149294dce0c1f7f01fcc2ea0 + languageName: node + linkType: hard + +"raw-body@npm:2.5.2": + version: 2.5.2 + resolution: "raw-body@npm:2.5.2" + dependencies: + bytes: "npm:3.1.2" + http-errors: "npm:2.0.0" + iconv-lite: "npm:0.4.24" + unpipe: "npm:1.0.0" + checksum: 10c0/b201c4b66049369a60e766318caff5cb3cc5a900efd89bdac431463822d976ad0670912c931fdbdcf5543207daf6f6833bca57aa116e1661d2ea91e12ca692c4 + languageName: node + linkType: hard + +"rc@npm:^1.2.8": + version: 1.2.8 + resolution: "rc@npm:1.2.8" + dependencies: + deep-extend: "npm:^0.6.0" + ini: "npm:~1.3.0" + minimist: "npm:^1.2.0" + strip-json-comments: "npm:~2.0.1" + bin: + rc: ./cli.js + checksum: 10c0/24a07653150f0d9ac7168e52943cc3cb4b7a22c0e43c7dff3219977c2fdca5a2760a304a029c20811a0e79d351f57d46c9bde216193a0f73978496afc2b85b15 + languageName: node + linkType: hard + +"react-is@npm:^17.0.1": + version: 17.0.2 + resolution: "react-is@npm:17.0.2" + checksum: 10c0/2bdb6b93fbb1820b024b496042cce405c57e2f85e777c9aabd55f9b26d145408f9f74f5934676ffdc46f3dcff656d78413a6e43968e7b3f92eea35b3052e9053 + languageName: node + linkType: hard + +"react-is@npm:^18.0.0": + version: 18.3.1 + resolution: "react-is@npm:18.3.1" + checksum: 10c0/f2f1e60010c683479e74c63f96b09fb41603527cd131a9959e2aee1e5a8b0caf270b365e5ca77d4a6b18aae659b60a86150bb3979073528877029b35aecd2072 + languageName: node + linkType: hard + +"readable-stream@npm:^2.2.2": + version: 2.3.8 + resolution: "readable-stream@npm:2.3.8" + dependencies: + core-util-is: "npm:~1.0.0" + inherits: "npm:~2.0.3" + isarray: "npm:~1.0.0" + process-nextick-args: "npm:~2.0.0" + safe-buffer: "npm:~5.1.1" + string_decoder: "npm:~1.1.1" + util-deprecate: "npm:~1.0.1" + checksum: 10c0/7efdb01f3853bc35ac62ea25493567bf588773213f5f4a79f9c365e1ad13bab845ac0dae7bc946270dc40c3929483228415e92a3fc600cc7e4548992f41ee3fa + languageName: node + linkType: hard + +"readable-stream@npm:^3.4.0, readable-stream@npm:^3.6.0": + version: 3.6.2 + resolution: "readable-stream@npm:3.6.2" + dependencies: + inherits: "npm:^2.0.3" + string_decoder: "npm:^1.1.1" + util-deprecate: "npm:^1.0.1" + checksum: 10c0/e37be5c79c376fdd088a45fa31ea2e423e5d48854be7a22a58869b4e84d25047b193f6acb54f1012331e1bcd667ffb569c01b99d36b0bd59658fb33f513511b7 + languageName: node + linkType: hard + +"readdirp@npm:~3.6.0": + version: 3.6.0 + resolution: "readdirp@npm:3.6.0" + dependencies: + picomatch: "npm:^2.2.1" + checksum: 10c0/6fa848cf63d1b82ab4e985f4cf72bd55b7dcfd8e0a376905804e48c3634b7e749170940ba77b32804d5fe93b3cc521aa95a8d7e7d725f830da6d93f3669ce66b + languageName: node + linkType: hard + +"reflect-metadata@npm:0.1.13": + version: 0.1.13 + resolution: "reflect-metadata@npm:0.1.13" + checksum: 10c0/728bff0b376b05639fd11ed80c648b61f7fe653c5b506d7ca118e58b6752b9b00810fe0c86227ecf02bd88da6251ab3eb19fd403aaf2e9ff5ef36a2fda643026 + languageName: node + linkType: hard + +"reflect-metadata@npm:0.2.2, reflect-metadata@npm:^0.2.0, reflect-metadata@npm:^0.2.1": + version: 0.2.2 + resolution: "reflect-metadata@npm:0.2.2" + checksum: 10c0/1cd93a15ea291e420204955544637c264c216e7aac527470e393d54b4bb075f10a17e60d8168ec96600c7e0b9fcc0cb0bb6e91c3fbf5b0d8c9056f04e6ac1ec2 + languageName: node + linkType: hard + +"reflect-metadata@npm:^0.1.13": + version: 0.1.14 + resolution: "reflect-metadata@npm:0.1.14" + checksum: 10c0/3a6190c7f6cb224f26a012d11f9e329360c01c1945e2cbefea23976a8bacf9db6b794aeb5bf18adcb673c448a234fbc06fc41853c00a6c206b30f0777ecf019e + languageName: node + linkType: hard + +"regenerator-runtime@npm:^0.14.0": + version: 0.14.1 + resolution: "regenerator-runtime@npm:0.14.1" + checksum: 10c0/1b16eb2c4bceb1665c89de70dcb64126a22bc8eb958feef3cd68fe11ac6d2a4899b5cd1b80b0774c7c03591dc57d16631a7f69d2daa2ec98100e2f29f7ec4cc4 + languageName: node + linkType: hard + +"relateurl@npm:^0.2.7": + version: 0.2.7 + resolution: "relateurl@npm:0.2.7" + checksum: 10c0/c248b4e3b32474f116a804b537fa6343d731b80056fb506dffd91e737eef4cac6be47a65aae39b522b0db9d0b1011d1a12e288d82a109ecd94a5299d82f6573a + languageName: node + linkType: hard + +"repeat-string@npm:^1.6.1": + version: 1.6.1 + resolution: "repeat-string@npm:1.6.1" + checksum: 10c0/87fa21bfdb2fbdedc44b9a5b118b7c1239bdd2c2c1e42742ef9119b7d412a5137a1d23f1a83dc6bb686f4f27429ac6f542e3d923090b44181bafa41e8ac0174d + languageName: node + linkType: hard + +"require-directory@npm:^2.1.1": + version: 2.1.1 + resolution: "require-directory@npm:2.1.1" + checksum: 10c0/83aa76a7bc1531f68d92c75a2ca2f54f1b01463cb566cf3fbc787d0de8be30c9dbc211d1d46be3497dac5785fe296f2dd11d531945ac29730643357978966e99 + languageName: node + linkType: hard + +"require-from-string@npm:^2.0.2": + version: 2.0.2 + resolution: "require-from-string@npm:2.0.2" + checksum: 10c0/aaa267e0c5b022fc5fd4eef49d8285086b15f2a1c54b28240fdf03599cbd9c26049fee3eab894f2e1f6ca65e513b030a7c264201e3f005601e80c49fb2937ce2 + languageName: node + linkType: hard + +"require-in-the-middle@npm:^7.1.1": + version: 7.4.0 + resolution: "require-in-the-middle@npm:7.4.0" + dependencies: + debug: "npm:^4.3.5" + module-details-from-path: "npm:^1.0.3" + resolve: "npm:^1.22.8" + checksum: 10c0/67c2242ea5b059c2a10c01d4f409233c67278051b47b9bf83198ab7e3ea591ffe3fa1d97912180d7d3d9a5e44490c00c55882b702849d61ac4db87d2c3823cb0 + languageName: node + linkType: hard + +"requires-port@npm:^1.0.0": + version: 1.0.0 + resolution: "requires-port@npm:1.0.0" + checksum: 10c0/b2bfdd09db16c082c4326e573a82c0771daaf7b53b9ce8ad60ea46aa6e30aaf475fe9b164800b89f93b748d2c234d8abff945d2551ba47bf5698e04cd7713267 + languageName: node + linkType: hard + +"resolve-cwd@npm:^3.0.0": + version: 3.0.0 + resolution: "resolve-cwd@npm:3.0.0" + dependencies: + resolve-from: "npm:^5.0.0" + checksum: 10c0/e608a3ebd15356264653c32d7ecbc8fd702f94c6703ea4ac2fb81d9c359180cba0ae2e6b71faa446631ed6145454d5a56b227efc33a2d40638ac13f8beb20ee4 + languageName: node + linkType: hard + +"resolve-from@npm:^4.0.0": + version: 4.0.0 + resolution: "resolve-from@npm:4.0.0" + checksum: 10c0/8408eec31a3112ef96e3746c37be7d64020cda07c03a920f5024e77290a218ea758b26ca9529fd7b1ad283947f34b2291c1c0f6aa0ed34acfdda9c6014c8d190 + languageName: node + linkType: hard + +"resolve-from@npm:^5.0.0": + version: 5.0.0 + resolution: "resolve-from@npm:5.0.0" + checksum: 10c0/b21cb7f1fb746de8107b9febab60095187781137fd803e6a59a76d421444b1531b641bba5857f5dc011974d8a5c635d61cec49e6bd3b7fc20e01f0fafc4efbf2 + languageName: node + linkType: hard + +"resolve.exports@npm:^1.1.0": + version: 1.1.1 + resolution: "resolve.exports@npm:1.1.1" + checksum: 10c0/902ac0c643d03385b2719f3aed8c289e9d4b2dd42c993de946de5b882bc18b74fad07d672d29f71a63c251be107f6d0d343e2390ca224c04ba9a8b8e35d1653a + languageName: node + linkType: hard + +"resolve@npm:^1.15.1, resolve@npm:^1.20.0, resolve@npm:^1.22.8": + version: 1.22.10 + resolution: "resolve@npm:1.22.10" + dependencies: + is-core-module: "npm:^2.16.0" + path-parse: "npm:^1.0.7" + supports-preserve-symlinks-flag: "npm:^1.0.0" + bin: + resolve: bin/resolve + checksum: 10c0/8967e1f4e2cc40f79b7e080b4582b9a8c5ee36ffb46041dccb20e6461161adf69f843b43067b4a375de926a2cd669157e29a29578191def399dd5ef89a1b5203 + languageName: node + linkType: hard + +"resolve@patch:resolve@npm%3A^1.15.1#optional!builtin, resolve@patch:resolve@npm%3A^1.20.0#optional!builtin, resolve@patch:resolve@npm%3A^1.22.8#optional!builtin": + version: 1.22.10 + resolution: "resolve@patch:resolve@npm%3A1.22.10#optional!builtin::version=1.22.10&hash=c3c19d" + dependencies: + is-core-module: "npm:^2.16.0" + path-parse: "npm:^1.0.7" + supports-preserve-symlinks-flag: "npm:^1.0.0" + bin: + resolve: bin/resolve + checksum: 10c0/52a4e505bbfc7925ac8f4cd91fd8c4e096b6a89728b9f46861d3b405ac9a1ccf4dcbf8befb4e89a2e11370dacd0160918163885cbc669369590f2f31f4c58939 + languageName: node + linkType: hard + +"restore-cursor@npm:^3.1.0": + version: 3.1.0 + resolution: "restore-cursor@npm:3.1.0" + dependencies: + onetime: "npm:^5.1.0" + signal-exit: "npm:^3.0.2" + checksum: 10c0/8051a371d6aa67ff21625fa94e2357bd81ffdc96267f3fb0fc4aaf4534028343836548ef34c240ffa8c25b280ca35eb36be00b3cb2133fa4f51896d7e73c6b4f + languageName: node + linkType: hard + +"ret@npm:~0.2.0": + version: 0.2.2 + resolution: "ret@npm:0.2.2" + checksum: 10c0/1a41e543913cda851abb1dae4852efa97bb693ce58fde3b51cc1cae94e2599dd70b91ad6268a4a07fc238305be06fed91723ef6d08863c48a0d02e0a74b943cd + languageName: node + linkType: hard + +"retry@npm:^0.12.0": + version: 0.12.0 + resolution: "retry@npm:0.12.0" + checksum: 10c0/59933e8501727ba13ad73ef4a04d5280b3717fd650408460c987392efe9d7be2040778ed8ebe933c5cbd63da3dcc37919c141ef8af0a54a6e4fca5a2af177bfe + languageName: node + linkType: hard + +"reusify@npm:^1.0.4": + version: 1.0.4 + resolution: "reusify@npm:1.0.4" + checksum: 10c0/c19ef26e4e188f408922c46f7ff480d38e8dfc55d448310dfb518736b23ed2c4f547fb64a6ed5bdba92cd7e7ddc889d36ff78f794816d5e71498d645ef476107 + languageName: node + linkType: hard + +"rfdc@npm:^1.1.4, rfdc@npm:^1.2.0": + version: 1.4.1 + resolution: "rfdc@npm:1.4.1" + checksum: 10c0/4614e4292356cafade0b6031527eea9bc90f2372a22c012313be1dcc69a3b90c7338158b414539be863fa95bfcb2ddcd0587be696841af4e6679d85e62c060c7 + languageName: node + linkType: hard + +"rimraf@npm:^3.0.0, rimraf@npm:^3.0.2": + version: 3.0.2 + resolution: "rimraf@npm:3.0.2" + dependencies: + glob: "npm:^7.1.3" + bin: + rimraf: bin.js + checksum: 10c0/9cb7757acb489bd83757ba1a274ab545eafd75598a9d817e0c3f8b164238dd90eba50d6b848bd4dcc5f3040912e882dc7ba71653e35af660d77b25c381d402e8 + languageName: node + linkType: hard + +"rimraf@npm:^5.0.5": + version: 5.0.10 + resolution: "rimraf@npm:5.0.10" + dependencies: + glob: "npm:^10.3.7" + bin: + rimraf: dist/esm/bin.mjs + checksum: 10c0/7da4fd0e15118ee05b918359462cfa1e7fe4b1228c7765195a45b55576e8c15b95db513b8466ec89129666f4af45ad978a3057a02139afba1a63512a2d9644cc + languageName: node + linkType: hard + +"rockets-playground-api@workspace:packages/api": + version: 0.0.0-use.local + resolution: "rockets-playground-api@workspace:packages/api" + dependencies: + "@concepta/eslint-config": "npm:1.1.4" + "@concepta/nestjs-access-control": "npm:^v6.0.0-alpha.0" + "@concepta/nestjs-auth-jwt": "npm:^v6.0.0-alpha.0" + "@concepta/nestjs-auth-local": "npm:^v6.0.0-alpha.0" + "@concepta/nestjs-auth-recovery": "npm:^v6.0.0-alpha.0" + "@concepta/nestjs-auth-refresh": "npm:^v6.0.0-alpha.0" + "@concepta/nestjs-authentication": "npm:^v6.0.0-alpha.0" + "@concepta/nestjs-common": "npm:v6.0.0-alpha.0" + "@concepta/nestjs-crud": "npm:^v6.0.0-alpha.0" + "@concepta/nestjs-email": "npm:v6.0.0-alpha.0" + "@concepta/nestjs-exception": "npm:^v6.0.0-alpha.0" + "@concepta/nestjs-jwt": "npm:^v6.0.0-alpha.0" + "@concepta/nestjs-logger": "npm:v6.0.0-alpha.0" + "@concepta/nestjs-logger-sentry": "npm:v6.0.0-alpha.0" + "@concepta/nestjs-otp": "npm:^v6.0.0-alpha.0" + "@concepta/nestjs-password": "npm:^v6.0.0-alpha.0" + "@concepta/nestjs-role": "npm:^v6.0.0-alpha.0" + "@concepta/nestjs-swagger-ui": "npm:^v6.0.0-alpha.0" + "@concepta/nestjs-typeorm-ext": "npm:^v6.0.0-alpha.0" + "@concepta/nestjs-user": "npm:^v6.0.0-alpha.0" + "@concepta/prettier-config": "npm:^1.1.5" + "@concepta/typeorm-common": "npm:^v6.0.0-alpha.0" + "@concepta/typeorm-seeding": "npm:^4.0.0-beta.1" + "@darraghor/eslint-plugin-nestjs-typed": "npm:^5.0.18" + "@faker-js/faker": "npm:^8.4.1" + "@nestjs-modules/mailer": "npm:^2.0.2" + "@nestjs/axios": "npm:^3.1.0" + "@nestjs/cli": "npm:^10.4.1" + "@nestjs/common": "npm:^10.4.1" + "@nestjs/config": "npm:^3.2.3" + "@nestjs/core": "npm:^10.4.1" + "@nestjs/platform-express": "npm:^10.4.1" + "@nestjs/schematics": "npm:^10.1.4" + "@nestjs/testing": "npm:^10.4.1" + "@types/express": "npm:^4.17.17" + "@types/jest": "npm:^29.5.2" + "@types/node": "npm:^20.3.1" + "@types/supertest": "npm:^6.0.0" + "@typescript-eslint/parser": "npm:^7.0.0" + accesscontrol: "npm:^2.2.1" + axios: "npm:^1.7.7" + eslint: "npm:^8.56.0" + jest: "npm:27.0.6" + prettier: "npm:^2.3.2" + reflect-metadata: "npm:^0.2.0" + rockets-playground-common: "npm:*" + source-map-support: "npm:^0.5.21" + supertest: "npm:^7.0.0" + ts-jest: "npm:^27.0.3" + ts-loader: "npm:^9.4.3" + ts-node: "npm:^10.9.1" + tsconfig-paths: "npm:^4.2.0" + typeorm: "npm:*" + typescript: "npm:^4.9.4" + peerDependencies: + class-transformer: ^0.5.1 + class-validator: ^0.14.1 + pg: ^8.12.0 + rxjs: ^7.8.1 + languageName: unknown + linkType: soft + +"rockets-playground-common@npm:*, rockets-playground-common@workspace:packages/common": + version: 0.0.0-use.local + resolution: "rockets-playground-common@workspace:packages/common" + dependencies: + "@concepta/eslint-config": "npm:^1.0.0" + "@concepta/nestjs-common": "npm:v6.0.0-alpha.0" + "@concepta/nestjs-report": "npm:v6.0.0-alpha.0" + "@concepta/prettier-config": "npm:^1.0.0" + "@darraghor/eslint-plugin-nestjs-typed": "npm:^3.20.5" + "@faker-js/faker": "npm:^8.4.1" + "@types/jest": "npm:^29.5.12" + "@types/node": "npm:^16.0.0" + eslint: "npm:^8.32.0" + jest: "npm:27.0.6" + prettier: "npm:^2.3.2" + rimraf: "npm:^3.0.2" + ts-jest: "npm:^27.0.3" + typescript: "npm:^4.9.4" + peerDependencies: + class-transformer: ^0.5.1 + class-validator: ^0.14.1 + languageName: unknown + linkType: soft + +"rockets-playground@workspace:.": + version: 0.0.0-use.local + resolution: "rockets-playground@workspace:." + dependencies: + class-transformer: "npm:^0.5.1" + class-validator: "npm:^0.14.1" + husky: "npm:^9.0.11" + pg: "npm:^8.12.0" + rxjs: "npm:^7.8.1" + typeorm: "npm:^0.3.20" + languageName: unknown + linkType: soft + +"run-applescript@npm:^3.0.0": + version: 3.2.0 + resolution: "run-applescript@npm:3.2.0" + dependencies: + execa: "npm:^0.10.0" + checksum: 10c0/5f5a75de0bed917d7673125fb8631ff1d50c898d4f0b8fff57e6508dafe7a2529e1cfd7a3c3e4f981aec1294c95b4e37124fd33cd8cd54fbca1e2b9c39d77473 + languageName: node + linkType: hard + +"run-async@npm:^2.4.0": + version: 2.4.1 + resolution: "run-async@npm:2.4.1" + checksum: 10c0/35a68c8f1d9664f6c7c2e153877ca1d6e4f886e5ca067c25cdd895a6891ff3a1466ee07c63d6a9be306e9619ff7d509494e6d9c129516a36b9fd82263d579ee1 + languageName: node + linkType: hard + +"run-async@npm:^3.0.0": + version: 3.0.0 + resolution: "run-async@npm:3.0.0" + checksum: 10c0/b18b562ae37c3020083dcaae29642e4cc360c824fbfb6b7d50d809a9d5227bb986152d09310255842c8dce40526e82ca768f02f00806c91ba92a8dfa6159cb85 + languageName: node + linkType: hard + +"run-parallel@npm:^1.1.9": + version: 1.2.0 + resolution: "run-parallel@npm:1.2.0" + dependencies: + queue-microtask: "npm:^1.2.2" + checksum: 10c0/200b5ab25b5b8b7113f9901bfe3afc347e19bb7475b267d55ad0eb86a62a46d77510cb0f232507c9e5d497ebda569a08a9867d0d14f57a82ad5564d991588b39 + languageName: node + linkType: hard + +"rxjs@npm:7.8.1, rxjs@npm:^7.5.5, rxjs@npm:^7.8.1": + version: 7.8.1 + resolution: "rxjs@npm:7.8.1" + dependencies: + tslib: "npm:^2.1.0" + checksum: 10c0/3c49c1ecd66170b175c9cacf5cef67f8914dcbc7cd0162855538d365c83fea631167cacb644b3ce533b2ea0e9a4d0b12175186985f89d75abe73dbd8f7f06f68 + languageName: node + linkType: hard + +"safe-buffer@npm:5.2.1, safe-buffer@npm:^5.0.1, safe-buffer@npm:^5.1.0, safe-buffer@npm:~5.2.0": + version: 5.2.1 + resolution: "safe-buffer@npm:5.2.1" + checksum: 10c0/6501914237c0a86e9675d4e51d89ca3c21ffd6a31642efeba25ad65720bce6921c9e7e974e5be91a786b25aa058b5303285d3c15dbabf983a919f5f630d349f3 + languageName: node + linkType: hard + +"safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1": + version: 5.1.2 + resolution: "safe-buffer@npm:5.1.2" + checksum: 10c0/780ba6b5d99cc9a40f7b951d47152297d0e260f0df01472a1b99d4889679a4b94a13d644f7dbc4f022572f09ae9005fa2fbb93bbbd83643316f365a3e9a45b21 + languageName: node + linkType: hard + +"safe-regex2@npm:^2.0.0": + version: 2.0.0 + resolution: "safe-regex2@npm:2.0.0" + dependencies: + ret: "npm:~0.2.0" + checksum: 10c0/f499e4fc69caafd7dd8023759e69a32991baa66e90bec5e2a7777b907943b27068dbff4e7a32cc8231f1354fcb779142f419e85498ae1e37384dc60619509c27 + languageName: node + linkType: hard + +"safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0": + version: 2.1.2 + resolution: "safer-buffer@npm:2.1.2" + checksum: 10c0/7e3c8b2e88a1841c9671094bbaeebd94448111dd90a81a1f606f3f67708a6ec57763b3b47f06da09fc6054193e0e6709e77325415dc8422b04497a8070fa02d4 + languageName: node + linkType: hard + +"saxes@npm:^5.0.1": + version: 5.0.1 + resolution: "saxes@npm:5.0.1" + dependencies: + xmlchars: "npm:^2.2.0" + checksum: 10c0/b7476c41dbe1c3a89907d2546fecfba234de5e66743ef914cde2603f47b19bed09732ab51b528ad0f98b958369d8be72b6f5af5c9cfad69972a73d061f0b3952 + languageName: node + linkType: hard + +"schema-utils@npm:^3.1.1, schema-utils@npm:^3.2.0": + version: 3.3.0 + resolution: "schema-utils@npm:3.3.0" + dependencies: + "@types/json-schema": "npm:^7.0.8" + ajv: "npm:^6.12.5" + ajv-keywords: "npm:^3.5.2" + checksum: 10c0/fafdbde91ad8aa1316bc543d4b61e65ea86970aebbfb750bfb6d8a6c287a23e415e0e926c2498696b242f63af1aab8e585252637fabe811fd37b604351da6500 + languageName: node + linkType: hard + +"schema-utils@npm:^4.3.0": + version: 4.3.0 + resolution: "schema-utils@npm:4.3.0" + dependencies: + "@types/json-schema": "npm:^7.0.9" + ajv: "npm:^8.9.0" + ajv-formats: "npm:^2.1.1" + ajv-keywords: "npm:^5.1.0" + checksum: 10c0/c23f0fa73ef71a01d4a2bb7af4c91e0d356ec640e071aa2d06ea5e67f042962bb7ac7c29a60a295bb0125878801bc3209197a2b8a833dd25bd38e37c3ed21427 + languageName: node + linkType: hard + +"secure-json-parse@npm:^2.0.0": + version: 2.7.0 + resolution: "secure-json-parse@npm:2.7.0" + checksum: 10c0/f57eb6a44a38a3eeaf3548228585d769d788f59007454214fab9ed7f01fbf2e0f1929111da6db28cf0bcc1a2e89db5219a59e83eeaec3a54e413a0197ce879e4 + languageName: node + linkType: hard + +"selderee@npm:^0.11.0": + version: 0.11.0 + resolution: "selderee@npm:0.11.0" + dependencies: + parseley: "npm:^0.12.0" + checksum: 10c0/c2ad8313a0dbf3c0b74752a8d03cfbc0931ae77a36679cdb64733eb732c1762f95a5174249bf7e8b8103874cb0e013a030f9c8b72f5d41e62f1d847d4a845d39 + languageName: node + linkType: hard + +"semver-store@npm:^0.3.0": + version: 0.3.0 + resolution: "semver-store@npm:0.3.0" + checksum: 10c0/4197aecef21dce734e8053e990c27f179136b106dbba69a8f52c1fb82779c670e456b21bbd0193bf10abe129ee44aa817eda75a3470f50f7b9284920d8af4fba + languageName: node + linkType: hard + +"semver@npm:7.x, semver@npm:^7.3.2, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.5.2, semver@npm:^7.5.3, semver@npm:^7.5.4, semver@npm:^7.6.0": + version: 7.6.3 + resolution: "semver@npm:7.6.3" + bin: + semver: bin/semver.js + checksum: 10c0/88f33e148b210c153873cb08cfe1e281d518aaa9a666d4d148add6560db5cd3c582f3a08ccb91f38d5f379ead256da9931234ed122057f40bb5766e65e58adaf + languageName: node + linkType: hard + +"semver@npm:^5.5.0": + version: 5.7.2 + resolution: "semver@npm:5.7.2" + bin: + semver: bin/semver + checksum: 10c0/e4cf10f86f168db772ae95d86ba65b3fd6c5967c94d97c708ccb463b778c2ee53b914cd7167620950fc07faf5a564e6efe903836639e512a1aa15fbc9667fa25 + languageName: node + linkType: hard + +"semver@npm:^6.0.0, semver@npm:^6.3.0, semver@npm:^6.3.1": + version: 6.3.1 + resolution: "semver@npm:6.3.1" + bin: + semver: bin/semver.js + checksum: 10c0/e3d79b609071caa78bcb6ce2ad81c7966a46a7431d9d58b8800cfa9cb6a63699b3899a0e4bcce36167a284578212d9ae6942b6929ba4aa5015c079a67751d42d + languageName: node + linkType: hard + +"send@npm:0.19.0": + version: 0.19.0 + resolution: "send@npm:0.19.0" + dependencies: + debug: "npm:2.6.9" + depd: "npm:2.0.0" + destroy: "npm:1.2.0" + encodeurl: "npm:~1.0.2" + escape-html: "npm:~1.0.3" + etag: "npm:~1.8.1" + fresh: "npm:0.5.2" + http-errors: "npm:2.0.0" + mime: "npm:1.6.0" + ms: "npm:2.1.3" + on-finished: "npm:2.4.1" + range-parser: "npm:~1.2.1" + statuses: "npm:2.0.1" + checksum: 10c0/ea3f8a67a8f0be3d6bf9080f0baed6d2c51d11d4f7b4470de96a5029c598a7011c497511ccc28968b70ef05508675cebff27da9151dd2ceadd60be4e6cf845e3 + languageName: node + linkType: hard + +"serialize-javascript@npm:^6.0.2": + version: 6.0.2 + resolution: "serialize-javascript@npm:6.0.2" + dependencies: + randombytes: "npm:^2.1.0" + checksum: 10c0/2dd09ef4b65a1289ba24a788b1423a035581bef60817bea1f01eda8e3bda623f86357665fe7ac1b50f6d4f583f97db9615b3f07b2a2e8cbcb75033965f771dd2 + languageName: node + linkType: hard + +"serve-static@npm:1.16.2": + version: 1.16.2 + resolution: "serve-static@npm:1.16.2" + dependencies: + encodeurl: "npm:~2.0.0" + escape-html: "npm:~1.0.3" + parseurl: "npm:~1.3.3" + send: "npm:0.19.0" + checksum: 10c0/528fff6f5e12d0c5a391229ad893910709bc51b5705962b09404a1d813857578149b8815f35d3ee5752f44cd378d0f31669d4b1d7e2d11f41e08283d5134bd1f + languageName: node + linkType: hard + +"set-blocking@npm:^2.0.0": + version: 2.0.0 + resolution: "set-blocking@npm:2.0.0" + checksum: 10c0/9f8c1b2d800800d0b589de1477c753492de5c1548d4ade52f57f1d1f5e04af5481554d75ce5e5c43d4004b80a3eb714398d6907027dc0534177b7539119f4454 + languageName: node + linkType: hard + +"set-cookie-parser@npm:^2.4.1": + version: 2.7.1 + resolution: "set-cookie-parser@npm:2.7.1" + checksum: 10c0/060c198c4c92547ac15988256f445eae523f57f2ceefeccf52d30d75dedf6bff22b9c26f756bd44e8e560d44ff4ab2130b178bd2e52ef5571bf7be3bd7632d9a + languageName: node + linkType: hard + +"set-function-length@npm:^1.2.2": + version: 1.2.2 + resolution: "set-function-length@npm:1.2.2" + dependencies: + define-data-property: "npm:^1.1.4" + es-errors: "npm:^1.3.0" + function-bind: "npm:^1.1.2" + get-intrinsic: "npm:^1.2.4" + gopd: "npm:^1.0.1" + has-property-descriptors: "npm:^1.0.2" + checksum: 10c0/82850e62f412a258b71e123d4ed3873fa9377c216809551192bb6769329340176f109c2eeae8c22a8d386c76739855f78e8716515c818bcaef384b51110f0f3c + languageName: node + linkType: hard + +"setprototypeof@npm:1.2.0": + version: 1.2.0 + resolution: "setprototypeof@npm:1.2.0" + checksum: 10c0/68733173026766fa0d9ecaeb07f0483f4c2dc70ca376b3b7c40b7cda909f94b0918f6c5ad5ce27a9160bdfb475efaa9d5e705a11d8eaae18f9835d20976028bc + languageName: node + linkType: hard + +"sha.js@npm:^2.4.11": + version: 2.4.11 + resolution: "sha.js@npm:2.4.11" + dependencies: + inherits: "npm:^2.0.1" + safe-buffer: "npm:^5.0.1" + bin: + sha.js: ./bin.js + checksum: 10c0/b7a371bca8821c9cc98a0aeff67444a03d48d745cb103f17228b96793f455f0eb0a691941b89ea1e60f6359207e36081d9be193252b0f128e0daf9cfea2815a5 + languageName: node + linkType: hard + +"shebang-command@npm:^1.2.0": + version: 1.2.0 + resolution: "shebang-command@npm:1.2.0" + dependencies: + shebang-regex: "npm:^1.0.0" + checksum: 10c0/7b20dbf04112c456b7fc258622dafd566553184ac9b6938dd30b943b065b21dabd3776460df534cc02480db5e1b6aec44700d985153a3da46e7db7f9bd21326d + languageName: node + linkType: hard + +"shebang-command@npm:^2.0.0": + version: 2.0.0 + resolution: "shebang-command@npm:2.0.0" + dependencies: + shebang-regex: "npm:^3.0.0" + checksum: 10c0/a41692e7d89a553ef21d324a5cceb5f686d1f3c040759c50aab69688634688c5c327f26f3ecf7001ebfd78c01f3c7c0a11a7c8bfd0a8bc9f6240d4f40b224e4e + languageName: node + linkType: hard + +"shebang-regex@npm:^1.0.0": + version: 1.0.0 + resolution: "shebang-regex@npm:1.0.0" + checksum: 10c0/9abc45dee35f554ae9453098a13fdc2f1730e525a5eb33c51f096cc31f6f10a4b38074c1ebf354ae7bffa7229506083844008dfc3bb7818228568c0b2dc1fff2 + languageName: node + linkType: hard + +"shebang-regex@npm:^3.0.0": + version: 3.0.0 + resolution: "shebang-regex@npm:3.0.0" + checksum: 10c0/1dbed0726dd0e1152a92696c76c7f06084eb32a90f0528d11acd764043aacf76994b2fb30aa1291a21bd019d6699164d048286309a278855ee7bec06cf6fb690 + languageName: node + linkType: hard + +"shimmer@npm:^1.2.1": + version: 1.2.1 + resolution: "shimmer@npm:1.2.1" + checksum: 10c0/ae8b27c389db2a00acfc8da90240f11577685a8f3e40008f826a3bea8b4f3b3ecd305c26be024b4a0fd3b123d132c1569d6e238097960a9a543b6c60760fb46a + languageName: node + linkType: hard + +"side-channel-list@npm:^1.0.0": + version: 1.0.0 + resolution: "side-channel-list@npm:1.0.0" + dependencies: + es-errors: "npm:^1.3.0" + object-inspect: "npm:^1.13.3" + checksum: 10c0/644f4ac893456c9490ff388bf78aea9d333d5e5bfc64cfb84be8f04bf31ddc111a8d4b83b85d7e7e8a7b845bc185a9ad02c052d20e086983cf59f0be517d9b3d + languageName: node + linkType: hard + +"side-channel-map@npm:^1.0.1": + version: 1.0.1 + resolution: "side-channel-map@npm:1.0.1" + dependencies: + call-bound: "npm:^1.0.2" + es-errors: "npm:^1.3.0" + get-intrinsic: "npm:^1.2.5" + object-inspect: "npm:^1.13.3" + checksum: 10c0/010584e6444dd8a20b85bc926d934424bd809e1a3af941cace229f7fdcb751aada0fb7164f60c2e22292b7fa3c0ff0bce237081fd4cdbc80de1dc68e95430672 + languageName: node + linkType: hard + +"side-channel-weakmap@npm:^1.0.2": + version: 1.0.2 + resolution: "side-channel-weakmap@npm:1.0.2" + dependencies: + call-bound: "npm:^1.0.2" + es-errors: "npm:^1.3.0" + get-intrinsic: "npm:^1.2.5" + object-inspect: "npm:^1.13.3" + side-channel-map: "npm:^1.0.1" + checksum: 10c0/71362709ac233e08807ccd980101c3e2d7efe849edc51455030327b059f6c4d292c237f94dc0685031dd11c07dd17a68afde235d6cf2102d949567f98ab58185 + languageName: node + linkType: hard + +"side-channel@npm:^1.0.6": + version: 1.1.0 + resolution: "side-channel@npm:1.1.0" + dependencies: + es-errors: "npm:^1.3.0" + object-inspect: "npm:^1.13.3" + side-channel-list: "npm:^1.0.0" + side-channel-map: "npm:^1.0.1" + side-channel-weakmap: "npm:^1.0.2" + checksum: 10c0/cb20dad41eb032e6c24c0982e1e5a24963a28aa6122b4f05b3f3d6bf8ae7fd5474ef382c8f54a6a3ab86e0cac4d41a23bd64ede3970e5bfb50326ba02a7996e6 + languageName: node + linkType: hard + +"signal-exit@npm:^3.0.0, signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3": + version: 3.0.7 + resolution: "signal-exit@npm:3.0.7" + checksum: 10c0/25d272fa73e146048565e08f3309d5b942c1979a6f4a58a8c59d5fa299728e9c2fcd1a759ec870863b1fd38653670240cd420dad2ad9330c71f36608a6a1c912 + languageName: node + linkType: hard + +"signal-exit@npm:^4.0.1": + version: 4.1.0 + resolution: "signal-exit@npm:4.1.0" + checksum: 10c0/41602dce540e46d599edba9d9860193398d135f7ff72cab629db5171516cfae628d21e7bfccde1bbfdf11c48726bc2a6d1a8fb8701125852fbfda7cf19c6aa83 + languageName: node + linkType: hard + +"sisteransi@npm:^1.0.5": + version: 1.0.5 + resolution: "sisteransi@npm:1.0.5" + checksum: 10c0/230ac975cca485b7f6fe2b96a711aa62a6a26ead3e6fb8ba17c5a00d61b8bed0d7adc21f5626b70d7c33c62ff4e63933017a6462942c719d1980bb0b1207ad46 + languageName: node + linkType: hard + +"slash@npm:^3.0.0": + version: 3.0.0 + resolution: "slash@npm:3.0.0" + checksum: 10c0/e18488c6a42bdfd4ac5be85b2ced3ccd0224773baae6ad42cfbb9ec74fc07f9fa8396bd35ee638084ead7a2a0818eb5e7151111544d4731ce843019dab4be47b + languageName: node + linkType: hard + +"slick@npm:^1.12.2": + version: 1.12.2 + resolution: "slick@npm:1.12.2" + checksum: 10c0/fea97c36b2bdcd1b80caea150cd8135dc9d3ffe659bbe04fa6f4b4dff373f5d5aef09a8ef384b331c3fdd9567faf447b75b850ab35d2c69ff8a8a92def3d49e1 + languageName: node + linkType: hard + +"smart-buffer@npm:^4.2.0": + version: 4.2.0 + resolution: "smart-buffer@npm:4.2.0" + checksum: 10c0/a16775323e1404dd43fabafe7460be13a471e021637bc7889468eb45ce6a6b207261f454e4e530a19500cc962c4cc5348583520843b363f4193cee5c00e1e539 + languageName: node + linkType: hard + +"socks-proxy-agent@npm:^8.0.3": + version: 8.0.5 + resolution: "socks-proxy-agent@npm:8.0.5" + dependencies: + agent-base: "npm:^7.1.2" + debug: "npm:^4.3.4" + socks: "npm:^2.8.3" + checksum: 10c0/5d2c6cecba6821389aabf18728325730504bf9bb1d9e342e7987a5d13badd7a98838cc9a55b8ed3cb866ad37cc23e1086f09c4d72d93105ce9dfe76330e9d2a6 + languageName: node + linkType: hard + +"socks@npm:^2.8.3": + version: 2.8.3 + resolution: "socks@npm:2.8.3" + dependencies: + ip-address: "npm:^9.0.5" + smart-buffer: "npm:^4.2.0" + checksum: 10c0/d54a52bf9325165770b674a67241143a3d8b4e4c8884560c4e0e078aace2a728dffc7f70150660f51b85797c4e1a3b82f9b7aa25e0a0ceae1a243365da5c51a7 + languageName: node + linkType: hard + +"sonic-boom@npm:^1.0.2": + version: 1.4.1 + resolution: "sonic-boom@npm:1.4.1" + dependencies: + atomic-sleep: "npm:^1.0.0" + flatstr: "npm:^1.0.12" + checksum: 10c0/3498b835071365cc94aac0eae50c5ee3c2552a4e48cf6dce59ae2d995af6c62a8f529377852b39b073b8190b772a9fb2cdb48f515c0fec4948646dea862fb120 + languageName: node + linkType: hard + +"source-map-support@npm:^0.5.21, source-map-support@npm:^0.5.6, source-map-support@npm:~0.5.20": + version: 0.5.21 + resolution: "source-map-support@npm:0.5.21" + dependencies: + buffer-from: "npm:^1.0.0" + source-map: "npm:^0.6.0" + checksum: 10c0/9ee09942f415e0f721d6daad3917ec1516af746a8120bba7bb56278707a37f1eb8642bde456e98454b8a885023af81a16e646869975f06afc1a711fb90484e7d + languageName: node + linkType: hard + +"source-map@npm:0.7.4, source-map@npm:^0.7.3, source-map@npm:^0.7.4": + version: 0.7.4 + resolution: "source-map@npm:0.7.4" + checksum: 10c0/dc0cf3768fe23c345ea8760487f8c97ef6fca8a73c83cd7c9bf2fde8bc2c34adb9c0824d6feb14bc4f9e37fb522e18af621543f1289038a66ac7586da29aa7dc + languageName: node + linkType: hard + +"source-map@npm:^0.6.0, source-map@npm:^0.6.1, source-map@npm:~0.6.0, source-map@npm:~0.6.1": + version: 0.6.1 + resolution: "source-map@npm:0.6.1" + checksum: 10c0/ab55398007c5e5532957cb0beee2368529618ac0ab372d789806f5718123cc4367d57de3904b4e6a4170eb5a0b0f41373066d02ca0735a0c4d75c7d328d3e011 + languageName: node + linkType: hard + +"split2@npm:^4.1.0": + version: 4.2.0 + resolution: "split2@npm:4.2.0" + checksum: 10c0/b292beb8ce9215f8c642bb68be6249c5a4c7f332fc8ecadae7be5cbdf1ea95addc95f0459ef2e7ad9d45fd1064698a097e4eb211c83e772b49bc0ee423e91534 + languageName: node + linkType: hard + +"sprintf-js@npm:^1.1.3": + version: 1.1.3 + resolution: "sprintf-js@npm:1.1.3" + checksum: 10c0/09270dc4f30d479e666aee820eacd9e464215cdff53848b443964202bf4051490538e5dd1b42e1a65cf7296916ca17640aebf63dae9812749c7542ee5f288dec + languageName: node + linkType: hard + +"sprintf-js@npm:~1.0.2": + version: 1.0.3 + resolution: "sprintf-js@npm:1.0.3" + checksum: 10c0/ecadcfe4c771890140da5023d43e190b7566d9cf8b2d238600f31bec0fc653f328da4450eb04bd59a431771a8e9cc0e118f0aa3974b683a4981b4e07abc2a5bb + languageName: node + linkType: hard + +"ssri@npm:^12.0.0": + version: 12.0.0 + resolution: "ssri@npm:12.0.0" + dependencies: + minipass: "npm:^7.0.3" + checksum: 10c0/caddd5f544b2006e88fa6b0124d8d7b28208b83c72d7672d5ade44d794525d23b540f3396108c4eb9280dcb7c01f0bef50682f5b4b2c34291f7c5e211fd1417d + languageName: node + linkType: hard + +"stack-utils@npm:^2.0.3": + version: 2.0.6 + resolution: "stack-utils@npm:2.0.6" + dependencies: + escape-string-regexp: "npm:^2.0.0" + checksum: 10c0/651c9f87667e077584bbe848acaecc6049bc71979f1e9a46c7b920cad4431c388df0f51b8ad7cfd6eed3db97a2878d0fc8b3122979439ea8bac29c61c95eec8a + languageName: node + linkType: hard + +"statuses@npm:2.0.1": + version: 2.0.1 + resolution: "statuses@npm:2.0.1" + checksum: 10c0/34378b207a1620a24804ce8b5d230fea0c279f00b18a7209646d5d47e419d1cc23e7cbf33a25a1e51ac38973dc2ac2e1e9c647a8e481ef365f77668d72becfd0 + languageName: node + linkType: hard + +"streamsearch@npm:^1.1.0": + version: 1.1.0 + resolution: "streamsearch@npm:1.1.0" + checksum: 10c0/fbd9aecc2621364384d157f7e59426f4bfd385e8b424b5aaa79c83a6f5a1c8fd2e4e3289e95de1eb3511cb96bb333d6281a9919fafce760e4edb35b2cd2facab + languageName: node + linkType: hard + +"string-length@npm:^4.0.1": + version: 4.0.2 + resolution: "string-length@npm:4.0.2" + dependencies: + char-regex: "npm:^1.0.2" + strip-ansi: "npm:^6.0.0" + checksum: 10c0/1cd77409c3d7db7bc59406f6bcc9ef0783671dcbabb23597a1177c166906ef2ee7c8290f78cae73a8aec858768f189d2cb417797df5e15ec4eb5e16b3346340c + languageName: node + linkType: hard + +"string-similarity@npm:^4.0.1": + version: 4.0.4 + resolution: "string-similarity@npm:4.0.4" + checksum: 10c0/fce331b818efafa701f692ddc2e170bd3ceaf6e7ca56a445b36b139981effe0884d8edc794a65005e54304da55ba054edfcff16a339bd301c9b94983fbc62047 + languageName: node + linkType: hard + +"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^1.0.2 || 2 || 3 || 4, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": + version: 4.2.3 + resolution: "string-width@npm:4.2.3" + dependencies: + emoji-regex: "npm:^8.0.0" + is-fullwidth-code-point: "npm:^3.0.0" + strip-ansi: "npm:^6.0.1" + checksum: 10c0/1e525e92e5eae0afd7454086eed9c818ee84374bb80328fc41217ae72ff5f065ef1c9d7f72da41de40c75fa8bb3dee63d92373fd492c84260a552c636392a47b + languageName: node + linkType: hard + +"string-width@npm:^5.0.1, string-width@npm:^5.1.2": + version: 5.1.2 + resolution: "string-width@npm:5.1.2" + dependencies: + eastasianwidth: "npm:^0.2.0" + emoji-regex: "npm:^9.2.2" + strip-ansi: "npm:^7.0.1" + checksum: 10c0/ab9c4264443d35b8b923cbdd513a089a60de339216d3b0ed3be3ba57d6880e1a192b70ae17225f764d7adbf5994e9bb8df253a944736c15a0240eff553c678ca + languageName: node + linkType: hard + +"string_decoder@npm:^1.1.1": + version: 1.3.0 + resolution: "string_decoder@npm:1.3.0" + dependencies: + safe-buffer: "npm:~5.2.0" + checksum: 10c0/810614ddb030e271cd591935dcd5956b2410dd079d64ff92a1844d6b7588bf992b3e1b69b0f4d34a3e06e0bd73046ac646b5264c1987b20d0601f81ef35d731d + languageName: node + linkType: hard + +"string_decoder@npm:~1.1.1": + version: 1.1.1 + resolution: "string_decoder@npm:1.1.1" + dependencies: + safe-buffer: "npm:~5.1.0" + checksum: 10c0/b4f89f3a92fd101b5653ca3c99550e07bdf9e13b35037e9e2a1c7b47cec4e55e06ff3fc468e314a0b5e80bfbaf65c1ca5a84978764884ae9413bec1fc6ca924e + languageName: node + linkType: hard + +"strip-ansi-cjs@npm:strip-ansi@^6.0.1, strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": + version: 6.0.1 + resolution: "strip-ansi@npm:6.0.1" + dependencies: + ansi-regex: "npm:^5.0.1" + checksum: 10c0/1ae5f212a126fe5b167707f716942490e3933085a5ff6c008ab97ab2f272c8025d3aa218b7bd6ab25729ca20cc81cddb252102f8751e13482a5199e873680952 + languageName: node + linkType: hard + +"strip-ansi@npm:^7.0.1": + version: 7.1.0 + resolution: "strip-ansi@npm:7.1.0" + dependencies: + ansi-regex: "npm:^6.0.1" + checksum: 10c0/a198c3762e8832505328cbf9e8c8381de14a4fa50a4f9b2160138158ea88c0f5549fb50cb13c651c3088f47e63a108b34622ec18c0499b6c8c3a5ddf6b305ac4 + languageName: node + linkType: hard + +"strip-bom@npm:^3.0.0": + version: 3.0.0 + resolution: "strip-bom@npm:3.0.0" + checksum: 10c0/51201f50e021ef16672593d7434ca239441b7b760e905d9f33df6e4f3954ff54ec0e0a06f100d028af0982d6f25c35cd5cda2ce34eaebccd0250b8befb90d8f1 + languageName: node + linkType: hard + +"strip-bom@npm:^4.0.0": + version: 4.0.0 + resolution: "strip-bom@npm:4.0.0" + checksum: 10c0/26abad1172d6bc48985ab9a5f96c21e440f6e7e476686de49be813b5a59b3566dccb5c525b831ec54fe348283b47f3ffb8e080bc3f965fde12e84df23f6bb7ef + languageName: node + linkType: hard + +"strip-eof@npm:^1.0.0": + version: 1.0.0 + resolution: "strip-eof@npm:1.0.0" + checksum: 10c0/f336beed8622f7c1dd02f2cbd8422da9208fae81daf184f73656332899978919d5c0ca84dc6cfc49ad1fc4dd7badcde5412a063cf4e0d7f8ed95a13a63f68f45 + languageName: node + linkType: hard + +"strip-final-newline@npm:^2.0.0": + version: 2.0.0 + resolution: "strip-final-newline@npm:2.0.0" + checksum: 10c0/bddf8ccd47acd85c0e09ad7375409d81653f645fda13227a9d459642277c253d877b68f2e5e4d819fe75733b0e626bac7e954c04f3236f6d196f79c94fa4a96f + languageName: node + linkType: hard + +"strip-json-comments@npm:^3.1.1": + version: 3.1.1 + resolution: "strip-json-comments@npm:3.1.1" + checksum: 10c0/9681a6257b925a7fa0f285851c0e613cc934a50661fa7bb41ca9cbbff89686bb4a0ee366e6ecedc4daafd01e83eee0720111ab294366fe7c185e935475ebcecd + languageName: node + linkType: hard + +"strip-json-comments@npm:~2.0.1": + version: 2.0.1 + resolution: "strip-json-comments@npm:2.0.1" + checksum: 10c0/b509231cbdee45064ff4f9fd73609e2bcc4e84a4d508e9dd0f31f70356473fde18abfb5838c17d56fb236f5a06b102ef115438de0600b749e818a35fbbc48c43 + languageName: node + linkType: hard + +"superagent@npm:^9.0.1": + version: 9.0.2 + resolution: "superagent@npm:9.0.2" + dependencies: + component-emitter: "npm:^1.3.0" + cookiejar: "npm:^2.1.4" + debug: "npm:^4.3.4" + fast-safe-stringify: "npm:^2.1.1" + form-data: "npm:^4.0.0" + formidable: "npm:^3.5.1" + methods: "npm:^1.1.2" + mime: "npm:2.6.0" + qs: "npm:^6.11.0" + checksum: 10c0/bfe7522ce9554552bed03c0e71949038e54626dd7be627f1033d92aae5b46d90afc42f8fc0dcda481eebf371a30b702414e438ea51251be6ab7bfbd60086d147 + languageName: node + linkType: hard + +"supertest@npm:^7.0.0": + version: 7.0.0 + resolution: "supertest@npm:7.0.0" + dependencies: + methods: "npm:^1.1.2" + superagent: "npm:^9.0.1" + checksum: 10c0/f0b10a1d292e6156fab16efdbb90d8cb1df54367667ae4108a6da67b81058d35182720dd9a3b4b2f538b14729dc8633741e6242724f1a0ccfde5197341ea96ec + languageName: node + linkType: hard + +"supports-color@npm:^7.0.0, supports-color@npm:^7.1.0": + version: 7.2.0 + resolution: "supports-color@npm:7.2.0" + dependencies: + has-flag: "npm:^4.0.0" + checksum: 10c0/afb4c88521b8b136b5f5f95160c98dee7243dc79d5432db7efc27efb219385bbc7d9427398e43dd6cc730a0f87d5085ce1652af7efbe391327bc0a7d0f7fc124 + languageName: node + linkType: hard + +"supports-color@npm:^8.0.0": + version: 8.1.1 + resolution: "supports-color@npm:8.1.1" + dependencies: + has-flag: "npm:^4.0.0" + checksum: 10c0/ea1d3c275dd604c974670f63943ed9bd83623edc102430c05adb8efc56ba492746b6e95386e7831b872ec3807fd89dd8eb43f735195f37b5ec343e4234cc7e89 + languageName: node + linkType: hard + +"supports-hyperlinks@npm:^2.0.0": + version: 2.3.0 + resolution: "supports-hyperlinks@npm:2.3.0" + dependencies: + has-flag: "npm:^4.0.0" + supports-color: "npm:^7.0.0" + checksum: 10c0/4057f0d86afb056cd799602f72d575b8fdd79001c5894bcb691176f14e870a687e7981e50bc1484980e8b688c6d5bcd4931e1609816abb5a7dc1486b7babf6a1 + languageName: node + linkType: hard + +"supports-preserve-symlinks-flag@npm:^1.0.0": + version: 1.0.0 + resolution: "supports-preserve-symlinks-flag@npm:1.0.0" + checksum: 10c0/6c4032340701a9950865f7ae8ef38578d8d7053f5e10518076e6554a9381fa91bd9c6850193695c141f32b21f979c985db07265a758867bac95de05f7d8aeb39 + languageName: node + linkType: hard + +"swagger-ui-dist@npm:5.17.14": + version: 5.17.14 + resolution: "swagger-ui-dist@npm:5.17.14" + checksum: 10c0/cb61bba39e76d7d0d83da605a55e9504c1a5b421f9f13cced06d3e222f0a291594d417ec57b30a38aabe30d8a7e257c4977b8f0bba0e865d60f92b0a8ef4dfc1 + languageName: node + linkType: hard + +"symbol-observable@npm:4.0.0": + version: 4.0.0 + resolution: "symbol-observable@npm:4.0.0" + checksum: 10c0/5e9a3ab08263a6be8cbee76587ad5880dcc62a47002787ed5ebea56b1eb30dc87da6f0183d67e88286806799fbe21c69077fbd677be4be2188e92318d6c6f31d + languageName: node + linkType: hard + +"symbol-tree@npm:^3.2.4": + version: 3.2.4 + resolution: "symbol-tree@npm:3.2.4" + checksum: 10c0/dfbe201ae09ac6053d163578778c53aa860a784147ecf95705de0cd23f42c851e1be7889241495e95c37cabb058edb1052f141387bef68f705afc8f9dd358509 + languageName: node + linkType: hard + +"tapable@npm:^2.1.1, tapable@npm:^2.2.0, tapable@npm:^2.2.1": + version: 2.2.1 + resolution: "tapable@npm:2.2.1" + checksum: 10c0/bc40e6efe1e554d075469cedaba69a30eeb373552aaf41caeaaa45bf56ffacc2674261b106245bd566b35d8f3329b52d838e851ee0a852120acae26e622925c9 + languageName: node + linkType: hard + +"tar@npm:^6.1.11": + version: 6.2.1 + resolution: "tar@npm:6.2.1" + dependencies: + chownr: "npm:^2.0.0" + fs-minipass: "npm:^2.0.0" + minipass: "npm:^5.0.0" + minizlib: "npm:^2.1.1" + mkdirp: "npm:^1.0.3" + yallist: "npm:^4.0.0" + checksum: 10c0/a5eca3eb50bc11552d453488344e6507156b9193efd7635e98e867fab275d527af53d8866e2370cd09dfe74378a18111622ace35af6a608e5223a7d27fe99537 + languageName: node + linkType: hard + +"tar@npm:^7.4.3": + version: 7.4.3 + resolution: "tar@npm:7.4.3" + dependencies: + "@isaacs/fs-minipass": "npm:^4.0.0" + chownr: "npm:^3.0.0" + minipass: "npm:^7.1.2" + minizlib: "npm:^3.0.1" + mkdirp: "npm:^3.0.1" + yallist: "npm:^5.0.0" + checksum: 10c0/d4679609bb2a9b48eeaf84632b6d844128d2412b95b6de07d53d8ee8baf4ca0857c9331dfa510390a0727b550fd543d4d1a10995ad86cdf078423fbb8d99831d + languageName: node + linkType: hard + +"terminal-link@npm:^2.0.0": + version: 2.1.1 + resolution: "terminal-link@npm:2.1.1" + dependencies: + ansi-escapes: "npm:^4.2.1" + supports-hyperlinks: "npm:^2.0.0" + checksum: 10c0/947458a5cd5408d2ffcdb14aee50bec8fb5022ae683b896b2f08ed6db7b2e7d42780d5c8b51e930e9c322bd7c7a517f4fa7c76983d0873c83245885ac5ee13e3 + languageName: node + linkType: hard + +"terser-webpack-plugin@npm:^5.3.10": + version: 5.3.11 + resolution: "terser-webpack-plugin@npm:5.3.11" + dependencies: + "@jridgewell/trace-mapping": "npm:^0.3.25" + jest-worker: "npm:^27.4.5" + schema-utils: "npm:^4.3.0" + serialize-javascript: "npm:^6.0.2" + terser: "npm:^5.31.1" + peerDependencies: + webpack: ^5.1.0 + peerDependenciesMeta: + "@swc/core": + optional: true + esbuild: + optional: true + uglify-js: + optional: true + checksum: 10c0/4794274f445dc589f4c113c75a55ce51364ccf09bfe8a545cdb462e3f752bf300ea91f072fa28bbed291bbae03274da06fe4eca180e784fb8a43646aa7dbcaef + languageName: node + linkType: hard + +"terser@npm:^5.31.1": + version: 5.37.0 + resolution: "terser@npm:5.37.0" + dependencies: + "@jridgewell/source-map": "npm:^0.3.3" + acorn: "npm:^8.8.2" + commander: "npm:^2.20.0" + source-map-support: "npm:~0.5.20" + bin: + terser: bin/terser + checksum: 10c0/ff0dc79b0a0da821e7f5bf7a047eab6d04e70e88b62339a0f1d71117db3310e255f5c00738fa3b391f56c3571f800a00047720261ba04ced0241c1f9922199f4 + languageName: node + linkType: hard + +"test-exclude@npm:^6.0.0": + version: 6.0.0 + resolution: "test-exclude@npm:6.0.0" + dependencies: + "@istanbuljs/schema": "npm:^0.1.2" + glob: "npm:^7.1.4" + minimatch: "npm:^3.0.4" + checksum: 10c0/019d33d81adff3f9f1bfcff18125fb2d3c65564f437d9be539270ee74b994986abb8260c7c2ce90e8f30162178b09dbbce33c6389273afac4f36069c48521f57 + languageName: node + linkType: hard + +"text-table@npm:^0.2.0": + version: 0.2.0 + resolution: "text-table@npm:0.2.0" + checksum: 10c0/02805740c12851ea5982686810702e2f14369a5f4c5c40a836821e3eefc65ffeec3131ba324692a37608294b0fd8c1e55a2dd571ffed4909822787668ddbee5c + languageName: node + linkType: hard + +"thenify-all@npm:^1.0.0": + version: 1.6.0 + resolution: "thenify-all@npm:1.6.0" + dependencies: + thenify: "npm:>= 3.1.0 < 4" + checksum: 10c0/9b896a22735e8122754fe70f1d65f7ee691c1d70b1f116fda04fea103d0f9b356e3676cb789506e3909ae0486a79a476e4914b0f92472c2e093d206aed4b7d6b + languageName: node + linkType: hard + +"thenify@npm:>= 3.1.0 < 4": + version: 3.3.1 + resolution: "thenify@npm:3.3.1" + dependencies: + any-promise: "npm:^1.0.0" + checksum: 10c0/f375aeb2b05c100a456a30bc3ed07ef03a39cbdefe02e0403fb714b8c7e57eeaad1a2f5c4ecfb9ce554ce3db9c2b024eba144843cd9e344566d9fcee73b04767 + languageName: node + linkType: hard + +"throat@npm:^6.0.1": + version: 6.0.2 + resolution: "throat@npm:6.0.2" + checksum: 10c0/45caf1ce86a895f71fcb9bd3de67e1df6f73a519e780765dd0cf63ca8363de08ad207cfb714bc650ee9ddeef89971517b5f3a64087fcffce2bda034697af7c18 + languageName: node + linkType: hard + +"through@npm:^2.3.6": + version: 2.3.8 + resolution: "through@npm:2.3.8" + checksum: 10c0/4b09f3774099de0d4df26d95c5821a62faee32c7e96fb1f4ebd54a2d7c11c57fe88b0a0d49cf375de5fee5ae6bf4eb56dbbf29d07366864e2ee805349970d3cc + languageName: node + linkType: hard + +"tiny-lru@npm:^8.0.1": + version: 8.0.2 + resolution: "tiny-lru@npm:8.0.2" + checksum: 10c0/32dc73db748ae50bf43498f81150ed23922c924d7a3665ea240c7041abbbd5e8667c05328fd520ca923b4d10b89e69a4ba671365eaac221c6f7eb8b898530506 + languageName: node + linkType: hard + +"tlds@npm:1.255.0": + version: 1.255.0 + resolution: "tlds@npm:1.255.0" + bin: + tlds: bin.js + checksum: 10c0/e7e0434142a2ee80e48c383db53cc94757a9fefd545230fad908a31c235f9f9b9cd1d8232d9bc2bd018050f0e8a912c141d0c79289dda852169199892ba847d0 + languageName: node + linkType: hard + +"tmp@npm:^0.0.33": + version: 0.0.33 + resolution: "tmp@npm:0.0.33" + dependencies: + os-tmpdir: "npm:~1.0.2" + checksum: 10c0/69863947b8c29cabad43fe0ce65cec5bb4b481d15d4b4b21e036b060b3edbf3bc7a5541de1bacb437bb3f7c4538f669752627fdf9b4aaf034cebd172ba373408 + languageName: node + linkType: hard + +"tmpl@npm:1.0.5": + version: 1.0.5 + resolution: "tmpl@npm:1.0.5" + checksum: 10c0/f935537799c2d1922cb5d6d3805f594388f75338fe7a4a9dac41504dd539704ca4db45b883b52e7b0aa5b2fd5ddadb1452bf95cd23a69da2f793a843f9451cc9 + languageName: node + linkType: hard + +"to-regex-range@npm:^5.0.1": + version: 5.0.1 + resolution: "to-regex-range@npm:5.0.1" + dependencies: + is-number: "npm:^7.0.0" + checksum: 10c0/487988b0a19c654ff3e1961b87f471702e708fa8a8dd02a298ef16da7206692e8552a0250e8b3e8759270f62e9d8314616f6da274734d3b558b1fc7b7724e892 + languageName: node + linkType: hard + +"toidentifier@npm:1.0.1": + version: 1.0.1 + resolution: "toidentifier@npm:1.0.1" + checksum: 10c0/93937279934bd66cc3270016dd8d0afec14fb7c94a05c72dc57321f8bd1fa97e5bea6d1f7c89e728d077ca31ea125b78320a616a6c6cd0e6b9cb94cb864381c1 + languageName: node + linkType: hard + +"token-stream@npm:1.0.0": + version: 1.0.0 + resolution: "token-stream@npm:1.0.0" + checksum: 10c0/c1924a89686fc035d579cbe856da12306571d5fe7408eeeebe80df7c25c5cc644b8ae102d5cbc0f085d0e105f391d1a48dc0e568520434c5b444ea6c7de2b822 + languageName: node + linkType: hard + +"tough-cookie@npm:^4.0.0": + version: 4.1.4 + resolution: "tough-cookie@npm:4.1.4" + dependencies: + psl: "npm:^1.1.33" + punycode: "npm:^2.1.1" + universalify: "npm:^0.2.0" + url-parse: "npm:^1.5.3" + checksum: 10c0/aca7ff96054f367d53d1e813e62ceb7dd2eda25d7752058a74d64b7266fd07be75908f3753a32ccf866a2f997604b414cfb1916d6e7f69bc64d9d9939b0d6c45 + languageName: node + linkType: hard + +"tr46@npm:^2.1.0": + version: 2.1.0 + resolution: "tr46@npm:2.1.0" + dependencies: + punycode: "npm:^2.1.1" + checksum: 10c0/397f5c39d97c5fe29fa9bab73b03853be18ad2738b2c66ee5ce84ecb36b091bdaec493f9b3cee711d45f7678f342452600843264cc8242b591c8dc983146a6c4 + languageName: node + linkType: hard + +"tr46@npm:~0.0.3": + version: 0.0.3 + resolution: "tr46@npm:0.0.3" + checksum: 10c0/047cb209a6b60c742f05c9d3ace8fa510bff609995c129a37ace03476a9b12db4dbf975e74600830ef0796e18882b2381fb5fb1f6b4f96b832c374de3ab91a11 + languageName: node + linkType: hard + +"tree-kill@npm:1.2.2": + version: 1.2.2 + resolution: "tree-kill@npm:1.2.2" + bin: + tree-kill: cli.js + checksum: 10c0/7b1b7c7f17608a8f8d20a162e7957ac1ef6cd1636db1aba92f4e072dc31818c2ff0efac1e3d91064ede67ed5dc57c565420531a8134090a12ac10cf792ab14d2 + languageName: node + linkType: hard + +"ts-api-utils@npm:^1.0.1, ts-api-utils@npm:^1.3.0": + version: 1.4.3 + resolution: "ts-api-utils@npm:1.4.3" + peerDependencies: + typescript: ">=4.2.0" + checksum: 10c0/e65dc6e7e8141140c23e1dc94984bf995d4f6801919c71d6dc27cf0cd51b100a91ffcfe5217626193e5bea9d46831e8586febdc7e172df3f1091a7384299e23a + languageName: node + linkType: hard + +"ts-jest@npm:^27.0.3": + version: 27.1.5 + resolution: "ts-jest@npm:27.1.5" + dependencies: + bs-logger: "npm:0.x" + fast-json-stable-stringify: "npm:2.x" + jest-util: "npm:^27.0.0" + json5: "npm:2.x" + lodash.memoize: "npm:4.x" + make-error: "npm:1.x" + semver: "npm:7.x" + yargs-parser: "npm:20.x" + peerDependencies: + "@babel/core": ">=7.0.0-beta.0 <8" + "@types/jest": ^27.0.0 + babel-jest: ">=27.0.0 <28" + jest: ^27.0.0 + typescript: ">=3.8 <5.0" + peerDependenciesMeta: + "@babel/core": + optional: true + "@types/jest": + optional: true + babel-jest: + optional: true + esbuild: + optional: true + bin: + ts-jest: cli.js + checksum: 10c0/af11586658a0766dcc82ba540448334f8370eb71b22f5d6749b1dc0a203b30e766ab3c02e4c7ed4b1f4c862613c2bb0cbc275d28922bed7d7a06e3b3af73fba1 + languageName: node + linkType: hard + +"ts-loader@npm:^9.4.3": + version: 9.5.1 + resolution: "ts-loader@npm:9.5.1" + dependencies: + chalk: "npm:^4.1.0" + enhanced-resolve: "npm:^5.0.0" + micromatch: "npm:^4.0.0" + semver: "npm:^7.3.4" + source-map: "npm:^0.7.4" + peerDependencies: + typescript: "*" + webpack: ^5.0.0 + checksum: 10c0/7dc1e3e5d3d032b6ef27836032f02c57077dfbcdf5817cbbc16b7b8609e7ed1d0ec157a03eaac07960161d8ad4a9e030c4d6722fe33540cf6ee75156c7f9c33d + languageName: node + linkType: hard + +"ts-node@npm:^10.9.1": + version: 10.9.2 + resolution: "ts-node@npm:10.9.2" + dependencies: + "@cspotcode/source-map-support": "npm:^0.8.0" + "@tsconfig/node10": "npm:^1.0.7" + "@tsconfig/node12": "npm:^1.0.7" + "@tsconfig/node14": "npm:^1.0.0" + "@tsconfig/node16": "npm:^1.0.2" + acorn: "npm:^8.4.1" + acorn-walk: "npm:^8.1.1" + arg: "npm:^4.1.0" + create-require: "npm:^1.1.0" + diff: "npm:^4.0.1" + make-error: "npm:^1.1.1" + v8-compile-cache-lib: "npm:^3.0.1" + yn: "npm:3.1.1" + peerDependencies: + "@swc/core": ">=1.2.50" + "@swc/wasm": ">=1.2.50" + "@types/node": "*" + typescript: ">=2.7" + peerDependenciesMeta: + "@swc/core": + optional: true + "@swc/wasm": + optional: true + bin: + ts-node: dist/bin.js + ts-node-cwd: dist/bin-cwd.js + ts-node-esm: dist/bin-esm.js + ts-node-script: dist/bin-script.js + ts-node-transpile-only: dist/bin-transpile.js + ts-script: dist/bin-script-deprecated.js + checksum: 10c0/5f29938489f96982a25ba650b64218e83a3357d76f7bede80195c65ab44ad279c8357264639b7abdd5d7e75fc269a83daa0e9c62fd8637a3def67254ecc9ddc2 + languageName: node + linkType: hard + +"tsconfig-paths-webpack-plugin@npm:4.2.0": + version: 4.2.0 + resolution: "tsconfig-paths-webpack-plugin@npm:4.2.0" + dependencies: + chalk: "npm:^4.1.0" + enhanced-resolve: "npm:^5.7.0" + tapable: "npm:^2.2.1" + tsconfig-paths: "npm:^4.1.2" + checksum: 10c0/495c5ab7c1cb079217d98fe25d61def01e4bab38047c7ab25ec11876cc8c697ff01f43ea6c9933181875e51e49835407fc71afd92ea6cca1ba1bebf513dfb510 + languageName: node + linkType: hard + +"tsconfig-paths@npm:4.2.0, tsconfig-paths@npm:^4.1.2, tsconfig-paths@npm:^4.2.0": + version: 4.2.0 + resolution: "tsconfig-paths@npm:4.2.0" + dependencies: + json5: "npm:^2.2.2" + minimist: "npm:^1.2.6" + strip-bom: "npm:^3.0.0" + checksum: 10c0/09a5877402d082bb1134930c10249edeebc0211f36150c35e1c542e5b91f1047b1ccf7da1e59babca1ef1f014c525510f4f870de7c9bda470c73bb4e2721b3ea + languageName: node + linkType: hard + +"tslib@npm:2.8.1, tslib@npm:^2.1.0, tslib@npm:^2.5.0": + version: 2.8.1 + resolution: "tslib@npm:2.8.1" + checksum: 10c0/9c4759110a19c53f992d9aae23aac5ced636e99887b51b9e61def52611732872ff7668757d4e4c61f19691e36f4da981cd9485e869b4a7408d689f6bf1f14e62 + languageName: node + linkType: hard + +"tslib@npm:^1.8.1": + version: 1.14.1 + resolution: "tslib@npm:1.14.1" + checksum: 10c0/69ae09c49eea644bc5ebe1bca4fa4cc2c82b7b3e02f43b84bd891504edf66dbc6b2ec0eef31a957042de2269139e4acff911e6d186a258fb14069cd7f6febce2 + languageName: node + linkType: hard + +"tsutils@npm:^3.21.0": + version: 3.21.0 + resolution: "tsutils@npm:3.21.0" + dependencies: + tslib: "npm:^1.8.1" + peerDependencies: + typescript: ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + checksum: 10c0/02f19e458ec78ead8fffbf711f834ad8ecd2cc6ade4ec0320790713dccc0a412b99e7fd907c4cda2a1dc602c75db6f12e0108e87a5afad4b2f9e90a24cabd5a2 + languageName: node + linkType: hard + +"type-check@npm:^0.4.0, type-check@npm:~0.4.0": + version: 0.4.0 + resolution: "type-check@npm:0.4.0" + dependencies: + prelude-ls: "npm:^1.2.1" + checksum: 10c0/7b3fd0ed43891e2080bf0c5c504b418fbb3e5c7b9708d3d015037ba2e6323a28152ec163bcb65212741fa5d2022e3075ac3c76440dbd344c9035f818e8ecee58 + languageName: node + linkType: hard + +"type-detect@npm:4.0.8": + version: 4.0.8 + resolution: "type-detect@npm:4.0.8" + checksum: 10c0/8fb9a51d3f365a7de84ab7f73b653534b61b622aa6800aecdb0f1095a4a646d3f5eb295322127b6573db7982afcd40ab492d038cf825a42093a58b1e1353e0bd + languageName: node + linkType: hard + +"type-fest@npm:^0.20.2": + version: 0.20.2 + resolution: "type-fest@npm:0.20.2" + checksum: 10c0/dea9df45ea1f0aaa4e2d3bed3f9a0bfe9e5b2592bddb92eb1bf06e50bcf98dbb78189668cd8bc31a0511d3fc25539b4cd5c704497e53e93e2d40ca764b10bfc3 + languageName: node + linkType: hard + +"type-fest@npm:^0.21.3": + version: 0.21.3 + resolution: "type-fest@npm:0.21.3" + checksum: 10c0/902bd57bfa30d51d4779b641c2bc403cdf1371fb9c91d3c058b0133694fcfdb817aef07a47f40faf79039eecbaa39ee9d3c532deff244f3a19ce68cea71a61e8 + languageName: node + linkType: hard + +"type-is@npm:^1.6.4, type-is@npm:~1.6.18": + version: 1.6.18 + resolution: "type-is@npm:1.6.18" + dependencies: + media-typer: "npm:0.3.0" + mime-types: "npm:~2.1.24" + checksum: 10c0/a23daeb538591b7efbd61ecf06b6feb2501b683ffdc9a19c74ef5baba362b4347e42f1b4ed81f5882a8c96a3bfff7f93ce3ffaf0cbbc879b532b04c97a55db9d + languageName: node + linkType: hard + +"typedarray-to-buffer@npm:^3.1.5": + version: 3.1.5 + resolution: "typedarray-to-buffer@npm:3.1.5" + dependencies: + is-typedarray: "npm:^1.0.0" + checksum: 10c0/4ac5b7a93d604edabf3ac58d3a2f7e07487e9f6e98195a080e81dbffdc4127817f470f219d794a843b87052cedef102b53ac9b539855380b8c2172054b7d5027 + languageName: node + linkType: hard + +"typedarray@npm:^0.0.6": + version: 0.0.6 + resolution: "typedarray@npm:0.0.6" + checksum: 10c0/6005cb31df50eef8b1f3c780eb71a17925f3038a100d82f9406ac2ad1de5eb59f8e6decbdc145b3a1f8e5836e17b0c0002fb698b9fe2516b8f9f9ff602d36412 + languageName: node + linkType: hard + +"typeorm@npm:*, typeorm@npm:^0.3.20": + version: 0.3.20 + resolution: "typeorm@npm:0.3.20" + dependencies: + "@sqltools/formatter": "npm:^1.2.5" + app-root-path: "npm:^3.1.0" + buffer: "npm:^6.0.3" + chalk: "npm:^4.1.2" + cli-highlight: "npm:^2.1.11" + dayjs: "npm:^1.11.9" + debug: "npm:^4.3.4" + dotenv: "npm:^16.0.3" + glob: "npm:^10.3.10" + mkdirp: "npm:^2.1.3" + reflect-metadata: "npm:^0.2.1" + sha.js: "npm:^2.4.11" + tslib: "npm:^2.5.0" + uuid: "npm:^9.0.0" + yargs: "npm:^17.6.2" + peerDependencies: + "@google-cloud/spanner": ^5.18.0 + "@sap/hana-client": ^2.12.25 + better-sqlite3: ^7.1.2 || ^8.0.0 || ^9.0.0 + hdb-pool: ^0.1.6 + ioredis: ^5.0.4 + mongodb: ^5.8.0 + mssql: ^9.1.1 || ^10.0.1 + mysql2: ^2.2.5 || ^3.0.1 + oracledb: ^6.3.0 + pg: ^8.5.1 + pg-native: ^3.0.0 + pg-query-stream: ^4.0.0 + redis: ^3.1.1 || ^4.0.0 + sql.js: ^1.4.0 + sqlite3: ^5.0.3 + ts-node: ^10.7.0 + typeorm-aurora-data-api-driver: ^2.0.0 + peerDependenciesMeta: + "@google-cloud/spanner": + optional: true + "@sap/hana-client": + optional: true + better-sqlite3: + optional: true + hdb-pool: + optional: true + ioredis: + optional: true + mongodb: + optional: true + mssql: + optional: true + mysql2: + optional: true + oracledb: + optional: true + pg: + optional: true + pg-native: + optional: true + pg-query-stream: + optional: true + redis: + optional: true + sql.js: + optional: true + sqlite3: + optional: true + ts-node: + optional: true + typeorm-aurora-data-api-driver: + optional: true + bin: + typeorm: cli.js + typeorm-ts-node-commonjs: cli-ts-node-commonjs.js + typeorm-ts-node-esm: cli-ts-node-esm.js + checksum: 10c0/7e4be724641beef86ae36289c87b6e66bfaf19a4313f089926d36d2d6f0d67f9314d942711c9d83ab8a174b8622148c2f7e83e6c1448d638ee3ab24469257814 + languageName: node + linkType: hard + +"typescript@npm:5.7.2": + version: 5.7.2 + resolution: "typescript@npm:5.7.2" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 10c0/a873118b5201b2ef332127ef5c63fb9d9c155e6fdbe211cbd9d8e65877283797cca76546bad742eea36ed7efbe3424a30376818f79c7318512064e8625d61622 + languageName: node + linkType: hard + +"typescript@npm:^4.9.4": + version: 4.9.5 + resolution: "typescript@npm:4.9.5" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 10c0/5f6cad2e728a8a063521328e612d7876e12f0d8a8390d3b3aaa452a6a65e24e9ac8ea22beb72a924fd96ea0a49ea63bb4e251fb922b12eedfb7f7a26475e5c56 + languageName: node + linkType: hard + +"typescript@patch:typescript@npm%3A5.7.2#optional!builtin": + version: 5.7.2 + resolution: "typescript@patch:typescript@npm%3A5.7.2#optional!builtin::version=5.7.2&hash=74658d" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 10c0/c891ccf04008bc1305ba34053db951f8a4584b4a1bf2f68fd972c4a354df3dc5e62c8bfed4f6ac2d12e5b3b1c49af312c83a651048f818cd5b4949d17baacd79 + languageName: node + linkType: hard + +"typescript@patch:typescript@npm%3A^4.9.4#optional!builtin": + version: 4.9.5 + resolution: "typescript@patch:typescript@npm%3A4.9.5#optional!builtin::version=4.9.5&hash=289587" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 10c0/e3333f887c6829dfe0ab6c1dbe0dd1e3e2aeb56c66460cb85c5440c566f900c833d370ca34eb47558c0c69e78ced4bfe09b8f4f98b6de7afed9b84b8d1dd06a1 + languageName: node + linkType: hard + +"uc.micro@npm:^2.0.0": + version: 2.1.0 + resolution: "uc.micro@npm:2.1.0" + checksum: 10c0/8862eddb412dda76f15db8ad1c640ccc2f47cdf8252a4a30be908d535602c8d33f9855dfcccb8b8837855c1ce1eaa563f7fa7ebe3c98fd0794351aab9b9c55fa + languageName: node + linkType: hard + +"uglify-js@npm:^3.1.4, uglify-js@npm:^3.5.1": + version: 3.19.3 + resolution: "uglify-js@npm:3.19.3" + bin: + uglifyjs: bin/uglifyjs + checksum: 10c0/83b0a90eca35f778e07cad9622b80c448b6aad457c9ff8e568afed978212b42930a95f9e1be943a1ffa4258a3340fbb899f41461131c05bb1d0a9c303aed8479 + languageName: node + linkType: hard + +"uid@npm:2.0.2": + version: 2.0.2 + resolution: "uid@npm:2.0.2" + dependencies: + "@lukeed/csprng": "npm:^1.0.0" + checksum: 10c0/e9d02d0562c74e74b5a2519e586db9d7f8204978e476cddd191ee1a9efb85efafdbab2dbf3fc3dde0f5da01fd9da161f37d604dabf513447fd2c03d008f1324c + languageName: node + linkType: hard + +"undici-types@npm:~6.19.2": + version: 6.19.8 + resolution: "undici-types@npm:6.19.8" + checksum: 10c0/078afa5990fba110f6824823ace86073b4638f1d5112ee26e790155f481f2a868cc3e0615505b6f4282bdf74a3d8caad715fd809e870c2bb0704e3ea6082f344 + languageName: node + linkType: hard + +"undici-types@npm:~6.20.0": + version: 6.20.0 + resolution: "undici-types@npm:6.20.0" + checksum: 10c0/68e659a98898d6a836a9a59e6adf14a5d799707f5ea629433e025ac90d239f75e408e2e5ff086afc3cace26f8b26ee52155293564593fbb4a2f666af57fc59bf + languageName: node + linkType: hard + +"unique-filename@npm:^4.0.0": + version: 4.0.0 + resolution: "unique-filename@npm:4.0.0" + dependencies: + unique-slug: "npm:^5.0.0" + checksum: 10c0/38ae681cceb1408ea0587b6b01e29b00eee3c84baee1e41fd5c16b9ed443b80fba90c40e0ba69627e30855570a34ba8b06702d4a35035d4b5e198bf5a64c9ddc + languageName: node + linkType: hard + +"unique-slug@npm:^5.0.0": + version: 5.0.0 + resolution: "unique-slug@npm:5.0.0" + dependencies: + imurmurhash: "npm:^0.1.4" + checksum: 10c0/d324c5a44887bd7e105ce800fcf7533d43f29c48757ac410afd42975de82cc38ea2035c0483f4de82d186691bf3208ef35c644f73aa2b1b20b8e651be5afd293 + languageName: node + linkType: hard + +"universalify@npm:^0.2.0": + version: 0.2.0 + resolution: "universalify@npm:0.2.0" + checksum: 10c0/cedbe4d4ca3967edf24c0800cfc161c5a15e240dac28e3ce575c689abc11f2c81ccc6532c8752af3b40f9120fb5e454abecd359e164f4f6aa44c29cd37e194fe + languageName: node + linkType: hard + +"universalify@npm:^2.0.0": + version: 2.0.1 + resolution: "universalify@npm:2.0.1" + checksum: 10c0/73e8ee3809041ca8b818efb141801a1004e3fc0002727f1531f4de613ea281b494a40909596dae4a042a4fb6cd385af5d4db2e137b1362e0e91384b828effd3a + languageName: node + linkType: hard + +"unpipe@npm:1.0.0, unpipe@npm:~1.0.0": + version: 1.0.0 + resolution: "unpipe@npm:1.0.0" + checksum: 10c0/193400255bd48968e5c5383730344fbb4fa114cdedfab26e329e50dd2d81b134244bb8a72c6ac1b10ab0281a58b363d06405632c9d49ca9dfd5e90cbd7d0f32c + languageName: node + linkType: hard + +"update-browserslist-db@npm:^1.1.1": + version: 1.1.1 + resolution: "update-browserslist-db@npm:1.1.1" + dependencies: + escalade: "npm:^3.2.0" + picocolors: "npm:^1.1.0" + peerDependencies: + browserslist: ">= 4.21.0" + bin: + update-browserslist-db: cli.js + checksum: 10c0/536a2979adda2b4be81b07e311bd2f3ad5e978690987956bc5f514130ad50cac87cd22c710b686d79731e00fbee8ef43efe5fcd72baa241045209195d43dcc80 + languageName: node + linkType: hard + +"upper-case@npm:^1.1.1": + version: 1.1.3 + resolution: "upper-case@npm:1.1.3" + checksum: 10c0/3e4d3a90519915bb591db84d72610392518806d8287b8f7541d87642d30388f42b2def1ed2f687e5792ee025e8f7e17d3a0dcbd5b3b59e306ceb1f3b8121ef54 + languageName: node + linkType: hard + +"uri-js@npm:^4.2.2": + version: 4.4.1 + resolution: "uri-js@npm:4.4.1" + dependencies: + punycode: "npm:^2.1.0" + checksum: 10c0/4ef57b45aa820d7ac6496e9208559986c665e49447cb072744c13b66925a362d96dd5a46c4530a6b8e203e5db5fe849369444440cb22ecfc26c679359e5dfa3c + languageName: node + linkType: hard + +"url-parse@npm:^1.5.3": + version: 1.5.10 + resolution: "url-parse@npm:1.5.10" + dependencies: + querystringify: "npm:^2.1.1" + requires-port: "npm:^1.0.0" + checksum: 10c0/bd5aa9389f896974beb851c112f63b466505a04b4807cea2e5a3b7092f6fbb75316f0491ea84e44f66fed55f1b440df5195d7e3a8203f64fcefa19d182f5be87 + languageName: node + linkType: hard + +"util-deprecate@npm:^1.0.1, util-deprecate@npm:~1.0.1": + version: 1.0.2 + resolution: "util-deprecate@npm:1.0.2" + checksum: 10c0/41a5bdd214df2f6c3ecf8622745e4a366c4adced864bc3c833739791aeeeb1838119af7daed4ba36428114b5c67dcda034a79c882e97e43c03e66a4dd7389942 + languageName: node + linkType: hard + +"utils-merge@npm:1.0.1, utils-merge@npm:^1.0.1": + version: 1.0.1 + resolution: "utils-merge@npm:1.0.1" + checksum: 10c0/02ba649de1b7ca8854bfe20a82f1dfbdda3fb57a22ab4a8972a63a34553cf7aa51bc9081cf7e001b035b88186d23689d69e71b510e610a09a4c66f68aa95b672 + languageName: node + linkType: hard + +"uuid@npm:9.0.1, uuid@npm:^9.0.0, uuid@npm:^9.0.1": + version: 9.0.1 + resolution: "uuid@npm:9.0.1" + bin: + uuid: dist/bin/uuid + checksum: 10c0/1607dd32ac7fc22f2d8f77051e6a64845c9bce5cd3dd8aa0070c074ec73e666a1f63c7b4e0f4bf2bc8b9d59dc85a15e17807446d9d2b17c8485fbc2147b27f9b + languageName: node + linkType: hard + +"v8-compile-cache-lib@npm:^3.0.1": + version: 3.0.1 + resolution: "v8-compile-cache-lib@npm:3.0.1" + checksum: 10c0/bdc36fb8095d3b41df197f5fb6f11e3a26adf4059df3213e3baa93810d8f0cc76f9a74aaefc18b73e91fe7e19154ed6f134eda6fded2e0f1c8d2272ed2d2d391 + languageName: node + linkType: hard + +"v8-to-istanbul@npm:^8.1.0": + version: 8.1.1 + resolution: "v8-to-istanbul@npm:8.1.1" + dependencies: + "@types/istanbul-lib-coverage": "npm:^2.0.1" + convert-source-map: "npm:^1.6.0" + source-map: "npm:^0.7.3" + checksum: 10c0/c3c99c4aa1ffffb098cc85c0c13c21871e6cbb9a83537d4e0650aa61589c347b2add787ceac68b8ea7fa1b7f446e9059d8e374cd7e7ab13b170a6caf8ad29c30 + languageName: node + linkType: hard + +"valid-data-url@npm:^3.0.0": + version: 3.0.1 + resolution: "valid-data-url@npm:3.0.1" + checksum: 10c0/ffc7cac681976ca2db01003dc14286f75241309e90d96e505580469125c83c2de6b5203f0222226cb08f6daf0aff7de9855655c28a64e8590e7b58c01694a896 + languageName: node + linkType: hard + +"validator@npm:^13.9.0": + version: 13.12.0 + resolution: "validator@npm:13.12.0" + checksum: 10c0/21d48a7947c9e8498790550f56cd7971e0e3d724c73388226b109c1bac2728f4f88caddfc2f7ed4b076f9b0d004316263ac786a17e9c4edf075741200718cd32 + languageName: node + linkType: hard + +"vary@npm:^1, vary@npm:~1.1.2": + version: 1.1.2 + resolution: "vary@npm:1.1.2" + checksum: 10c0/f15d588d79f3675135ba783c91a4083dcd290a2a5be9fcb6514220a1634e23df116847b1cc51f66bfb0644cf9353b2abb7815ae499bab06e46dd33c1a6bf1f4f + languageName: node + linkType: hard + +"void-elements@npm:^3.1.0": + version: 3.1.0 + resolution: "void-elements@npm:3.1.0" + checksum: 10c0/0b8686f9f9aa44012e9bd5eabf287ae0cde409b9a2854c5a2335cb83920c957668ac5876e3f0d158dd424744ac411a7270e64128556b451ed3bec875ef18534d + languageName: node + linkType: hard + +"w3c-hr-time@npm:^1.0.2": + version: 1.0.2 + resolution: "w3c-hr-time@npm:1.0.2" + dependencies: + browser-process-hrtime: "npm:^1.0.0" + checksum: 10c0/7795b61fb51ce222414891eef8e6cb13240b62f64351b4474f99c84de2bc37d37dd0efa193f37391e9737097b881a111d1e003e3d7a9583693f8d5a858b02627 + languageName: node + linkType: hard + +"w3c-xmlserializer@npm:^2.0.0": + version: 2.0.0 + resolution: "w3c-xmlserializer@npm:2.0.0" + dependencies: + xml-name-validator: "npm:^3.0.0" + checksum: 10c0/92b8af34766f5bb8f37c505bc459ee1791b30af778d3a86551f7dd3b1716f79cb98c71d65d03f2bf6eba6b09861868eaf2be7e233b9202b26a9df7595f2bd290 + languageName: node + linkType: hard + +"walker@npm:^1.0.7": + version: 1.0.8 + resolution: "walker@npm:1.0.8" + dependencies: + makeerror: "npm:1.0.12" + checksum: 10c0/a17e037bccd3ca8a25a80cb850903facdfed0de4864bd8728f1782370715d679fa72e0a0f5da7c1c1379365159901e5935f35be531229da53bbfc0efdabdb48e + languageName: node + linkType: hard + +"watchpack@npm:^2.4.1": + version: 2.4.2 + resolution: "watchpack@npm:2.4.2" + dependencies: + glob-to-regexp: "npm:^0.4.1" + graceful-fs: "npm:^4.1.2" + checksum: 10c0/ec60a5f0e9efaeca0102fd9126346b3b2d523e01c34030d3fddf5813a7125765121ebdc2552981136dcd2c852deb1af0b39340f2fcc235f292db5399d0283577 + languageName: node + linkType: hard + +"wcwidth@npm:^1.0.1": + version: 1.0.1 + resolution: "wcwidth@npm:1.0.1" + dependencies: + defaults: "npm:^1.0.3" + checksum: 10c0/5b61ca583a95e2dd85d7078400190efd452e05751a64accb8c06ce4db65d7e0b0cde9917d705e826a2e05cc2548f61efde115ffa374c3e436d04be45c889e5b4 + languageName: node + linkType: hard + +"web-resource-inliner@npm:^6.0.1": + version: 6.0.1 + resolution: "web-resource-inliner@npm:6.0.1" + dependencies: + ansi-colors: "npm:^4.1.1" + escape-goat: "npm:^3.0.0" + htmlparser2: "npm:^5.0.0" + mime: "npm:^2.4.6" + node-fetch: "npm:^2.6.0" + valid-data-url: "npm:^3.0.0" + checksum: 10c0/b4b457de2448255100797b1eaefa0f62a8846b2452de8495b9ec17d3e223ebb4848a31b11a645e3541a5b114eb9f201219cda2f99d1b513631777f8c89d1c8a6 + languageName: node + linkType: hard + +"webidl-conversions@npm:^3.0.0": + version: 3.0.1 + resolution: "webidl-conversions@npm:3.0.1" + checksum: 10c0/5612d5f3e54760a797052eb4927f0ddc01383550f542ccd33d5238cfd65aeed392a45ad38364970d0a0f4fea32e1f4d231b3d8dac4a3bdd385e5cf802ae097db + languageName: node + linkType: hard + +"webidl-conversions@npm:^5.0.0": + version: 5.0.0 + resolution: "webidl-conversions@npm:5.0.0" + checksum: 10c0/bf31df332ed11e1114bfcae7712d9ab2c37e7faa60ba32d8fdbee785937c0b012eee235c19d2b5d84f5072db84a160e8d08dd382da7f850feec26a4f46add8ff + languageName: node + linkType: hard + +"webidl-conversions@npm:^6.1.0": + version: 6.1.0 + resolution: "webidl-conversions@npm:6.1.0" + checksum: 10c0/66ad3b9073cd1e0e173444d8c636673b016e25b5856694429072cc966229adb734a8d410188e031effadcfb837936d79bc9e87c48f4d5925a90d42dec97f6590 + languageName: node + linkType: hard + +"webpack-node-externals@npm:3.0.0": + version: 3.0.0 + resolution: "webpack-node-externals@npm:3.0.0" + checksum: 10c0/9f645a4dc8e122dac43cdc8c1367d4b44af20c79632438b633acc1b4fe64ea7ba1ad6ab61bd0fc46e1b873158c48d8c7a25a489cdab1f31299f00eb3b81cfc61 + languageName: node + linkType: hard + +"webpack-sources@npm:^3.2.3": + version: 3.2.3 + resolution: "webpack-sources@npm:3.2.3" + checksum: 10c0/2ef63d77c4fad39de4a6db17323d75eb92897b32674e97d76f0a1e87c003882fc038571266ad0ef581ac734cbe20952912aaa26155f1905e96ce251adbb1eb4e + languageName: node + linkType: hard + +"webpack@npm:5.97.1": + version: 5.97.1 + resolution: "webpack@npm:5.97.1" + dependencies: + "@types/eslint-scope": "npm:^3.7.7" + "@types/estree": "npm:^1.0.6" + "@webassemblyjs/ast": "npm:^1.14.1" + "@webassemblyjs/wasm-edit": "npm:^1.14.1" + "@webassemblyjs/wasm-parser": "npm:^1.14.1" + acorn: "npm:^8.14.0" + browserslist: "npm:^4.24.0" + chrome-trace-event: "npm:^1.0.2" + enhanced-resolve: "npm:^5.17.1" + es-module-lexer: "npm:^1.2.1" + eslint-scope: "npm:5.1.1" + events: "npm:^3.2.0" + glob-to-regexp: "npm:^0.4.1" + graceful-fs: "npm:^4.2.11" + json-parse-even-better-errors: "npm:^2.3.1" + loader-runner: "npm:^4.2.0" + mime-types: "npm:^2.1.27" + neo-async: "npm:^2.6.2" + schema-utils: "npm:^3.2.0" + tapable: "npm:^2.1.1" + terser-webpack-plugin: "npm:^5.3.10" + watchpack: "npm:^2.4.1" + webpack-sources: "npm:^3.2.3" + peerDependenciesMeta: + webpack-cli: + optional: true + bin: + webpack: bin/webpack.js + checksum: 10c0/a12d3dc882ca582075f2c4bd88840be8307427245c90a8a0e0b372d73560df13fcf25a61625c9e7edc964981d16b5a8323640562eb48347cf9dd2f8bd1b39d35 + languageName: node + linkType: hard + +"whatwg-encoding@npm:^1.0.5": + version: 1.0.5 + resolution: "whatwg-encoding@npm:1.0.5" + dependencies: + iconv-lite: "npm:0.4.24" + checksum: 10c0/79d9f276234fd06bb27de4c1f9137a0471bfa578efaec0474ab46b6d64bf30bb14492e6f88eff0e6794bdd6fa48b44f4d7a2e9c41424a837a63bba9626e35c62 + languageName: node + linkType: hard + +"whatwg-mimetype@npm:^2.3.0": + version: 2.3.0 + resolution: "whatwg-mimetype@npm:2.3.0" + checksum: 10c0/81c5eaf660b1d1c27575406bcfdf58557b599e302211e13e3c8209020bbac903e73c17f9990f887232b39ce570cc8638331b0c3ff0842ba224a5c2925e830b06 + languageName: node + linkType: hard + +"whatwg-url@npm:^5.0.0": + version: 5.0.0 + resolution: "whatwg-url@npm:5.0.0" + dependencies: + tr46: "npm:~0.0.3" + webidl-conversions: "npm:^3.0.0" + checksum: 10c0/1588bed84d10b72d5eec1d0faa0722ba1962f1821e7539c535558fb5398d223b0c50d8acab950b8c488b4ba69043fd833cc2697056b167d8ad46fac3995a55d5 + languageName: node + linkType: hard + +"whatwg-url@npm:^8.0.0, whatwg-url@npm:^8.5.0": + version: 8.7.0 + resolution: "whatwg-url@npm:8.7.0" + dependencies: + lodash: "npm:^4.7.0" + tr46: "npm:^2.1.0" + webidl-conversions: "npm:^6.1.0" + checksum: 10c0/de0bc94387dba586b278e701cf5a1c1f5002725d22b8564dbca2cab1966ef24b839018e57ae2423fb514d8a2dd3aa3bf97323e2f89b55cd89e79141e432e9df1 + languageName: node + linkType: hard + +"which@npm:^1.2.9": + version: 1.3.1 + resolution: "which@npm:1.3.1" + dependencies: + isexe: "npm:^2.0.0" + bin: + which: ./bin/which + checksum: 10c0/e945a8b6bbf6821aaaef7f6e0c309d4b615ef35699576d5489b4261da9539f70393c6b2ce700ee4321c18f914ebe5644bc4631b15466ffbaad37d83151f6af59 + languageName: node + linkType: hard + +"which@npm:^2.0.1": + version: 2.0.2 + resolution: "which@npm:2.0.2" + dependencies: + isexe: "npm:^2.0.0" + bin: + node-which: ./bin/node-which + checksum: 10c0/66522872a768b60c2a65a57e8ad184e5372f5b6a9ca6d5f033d4b0dc98aff63995655a7503b9c0a2598936f532120e81dd8cc155e2e92ed662a2b9377cc4374f + languageName: node + linkType: hard + +"which@npm:^5.0.0": + version: 5.0.0 + resolution: "which@npm:5.0.0" + dependencies: + isexe: "npm:^3.1.1" + bin: + node-which: bin/which.js + checksum: 10c0/e556e4cd8b7dbf5df52408c9a9dd5ac6518c8c5267c8953f5b0564073c66ed5bf9503b14d876d0e9c7844d4db9725fb0dcf45d6e911e17e26ab363dc3965ae7b + languageName: node + linkType: hard + +"wide-align@npm:^1.1.2": + version: 1.1.5 + resolution: "wide-align@npm:1.1.5" + dependencies: + string-width: "npm:^1.0.2 || 2 || 3 || 4" + checksum: 10c0/1d9c2a3e36dfb09832f38e2e699c367ef190f96b82c71f809bc0822c306f5379df87bab47bed27ea99106d86447e50eb972d3c516c2f95782807a9d082fbea95 + languageName: node + linkType: hard + +"with@npm:^7.0.0": + version: 7.0.2 + resolution: "with@npm:7.0.2" + dependencies: + "@babel/parser": "npm:^7.9.6" + "@babel/types": "npm:^7.9.6" + assert-never: "npm:^1.2.1" + babel-walk: "npm:3.0.0-canary-5" + checksum: 10c0/99289e49afc4b1776afae0ef85e84cfa775e8e07464d2b9853a31b0822347031d1cf77f287d25adc8c3f81e4fa68f4ee31526a9c95d4981ba08a1fe24dee111a + languageName: node + linkType: hard + +"word-wrap@npm:^1.2.5": + version: 1.2.5 + resolution: "word-wrap@npm:1.2.5" + checksum: 10c0/e0e4a1ca27599c92a6ca4c32260e8a92e8a44f4ef6ef93f803f8ed823f486e0889fc0b93be4db59c8d51b3064951d25e43d434e95dc8c960cc3a63d65d00ba20 + languageName: node + linkType: hard + +"wordwrap@npm:^1.0.0": + version: 1.0.0 + resolution: "wordwrap@npm:1.0.0" + checksum: 10c0/7ed2e44f3c33c5c3e3771134d2b0aee4314c9e49c749e37f464bf69f2bcdf0cbf9419ca638098e2717cff4875c47f56a007532f6111c3319f557a2ca91278e92 + languageName: node + linkType: hard + +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0, wrap-ansi@npm:^7.0.0": + version: 7.0.0 + resolution: "wrap-ansi@npm:7.0.0" + dependencies: + ansi-styles: "npm:^4.0.0" + string-width: "npm:^4.1.0" + strip-ansi: "npm:^6.0.0" + checksum: 10c0/d15fc12c11e4cbc4044a552129ebc75ee3f57aa9c1958373a4db0292d72282f54373b536103987a4a7594db1ef6a4f10acf92978f79b98c49306a4b58c77d4da + languageName: node + linkType: hard + +"wrap-ansi@npm:^6.0.1, wrap-ansi@npm:^6.2.0": + version: 6.2.0 + resolution: "wrap-ansi@npm:6.2.0" + dependencies: + ansi-styles: "npm:^4.0.0" + string-width: "npm:^4.1.0" + strip-ansi: "npm:^6.0.0" + checksum: 10c0/baad244e6e33335ea24e86e51868fe6823626e3a3c88d9a6674642afff1d34d9a154c917e74af8d845fd25d170c4ea9cf69a47133c3f3656e1252b3d462d9f6c + languageName: node + linkType: hard + +"wrap-ansi@npm:^8.1.0": + version: 8.1.0 + resolution: "wrap-ansi@npm:8.1.0" + dependencies: + ansi-styles: "npm:^6.1.0" + string-width: "npm:^5.0.1" + strip-ansi: "npm:^7.0.1" + checksum: 10c0/138ff58a41d2f877eae87e3282c0630fc2789012fc1af4d6bd626eeb9a2f9a65ca92005e6e69a75c7b85a68479fe7443c7dbe1eb8fbaa681a4491364b7c55c60 + languageName: node + linkType: hard + +"wrappy@npm:1": + version: 1.0.2 + resolution: "wrappy@npm:1.0.2" + checksum: 10c0/56fece1a4018c6a6c8e28fbc88c87e0fbf4ea8fd64fc6c63b18f4acc4bd13e0ad2515189786dd2c30d3eec9663d70f4ecf699330002f8ccb547e4a18231fc9f0 + languageName: node + linkType: hard + +"write-file-atomic@npm:^3.0.0": + version: 3.0.3 + resolution: "write-file-atomic@npm:3.0.3" + dependencies: + imurmurhash: "npm:^0.1.4" + is-typedarray: "npm:^1.0.0" + signal-exit: "npm:^3.0.2" + typedarray-to-buffer: "npm:^3.1.5" + checksum: 10c0/7fb67affd811c7a1221bed0c905c26e28f0041e138fb19ccf02db57a0ef93ea69220959af3906b920f9b0411d1914474cdd90b93a96e5cd9e8368d9777caac0e + languageName: node + linkType: hard + +"ws@npm:^7.4.6": + version: 7.5.10 + resolution: "ws@npm:7.5.10" + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ^5.0.2 + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + checksum: 10c0/bd7d5f4aaf04fae7960c23dcb6c6375d525e00f795dd20b9385902bd008c40a94d3db3ce97d878acc7573df852056ca546328b27b39f47609f80fb22a0a9b61d + languageName: node + linkType: hard + +"xml-name-validator@npm:^3.0.0": + version: 3.0.0 + resolution: "xml-name-validator@npm:3.0.0" + checksum: 10c0/da310f6a7a52f8eb0fce3d04ffa1f97387ca68f47e8620ae3a259909c4e832f7003313b918e53840a6bf57fb38d5ae3c5f79f31f911b2818a7439f7898f8fbf1 + languageName: node + linkType: hard + +"xmlchars@npm:^2.2.0": + version: 2.2.0 + resolution: "xmlchars@npm:2.2.0" + checksum: 10c0/b64b535861a6f310c5d9bfa10834cf49127c71922c297da9d4d1b45eeaae40bf9b4363275876088fbe2667e5db028d2cd4f8ee72eed9bede840a67d57dab7593 + languageName: node + linkType: hard + +"xtend@npm:^4.0.0": + version: 4.0.2 + resolution: "xtend@npm:4.0.2" + checksum: 10c0/366ae4783eec6100f8a02dff02ac907bf29f9a00b82ac0264b4d8b832ead18306797e283cf19de776538babfdcb2101375ec5646b59f08c52128ac4ab812ed0e + languageName: node + linkType: hard + +"y18n@npm:^5.0.5": + version: 5.0.8 + resolution: "y18n@npm:5.0.8" + checksum: 10c0/4df2842c36e468590c3691c894bc9cdbac41f520566e76e24f59401ba7d8b4811eb1e34524d57e54bc6d864bcb66baab7ffd9ca42bf1eda596618f9162b91249 + languageName: node + linkType: hard + +"yallist@npm:^3.0.2": + version: 3.1.1 + resolution: "yallist@npm:3.1.1" + checksum: 10c0/c66a5c46bc89af1625476f7f0f2ec3653c1a1791d2f9407cfb4c2ba812a1e1c9941416d71ba9719876530e3340a99925f697142989371b72d93b9ee628afd8c1 + languageName: node + linkType: hard + +"yallist@npm:^4.0.0": + version: 4.0.0 + resolution: "yallist@npm:4.0.0" + checksum: 10c0/2286b5e8dbfe22204ab66e2ef5cc9bbb1e55dfc873bbe0d568aa943eb255d131890dfd5bf243637273d31119b870f49c18fcde2c6ffbb7a7a092b870dc90625a + languageName: node + linkType: hard + +"yallist@npm:^5.0.0": + version: 5.0.0 + resolution: "yallist@npm:5.0.0" + checksum: 10c0/a499c81ce6d4a1d260d4ea0f6d49ab4da09681e32c3f0472dee16667ed69d01dae63a3b81745a24bd78476ec4fcf856114cb4896ace738e01da34b2c42235416 + languageName: node + linkType: hard + +"yargs-parser@npm:20.x, yargs-parser@npm:^20.2.2": + version: 20.2.9 + resolution: "yargs-parser@npm:20.2.9" + checksum: 10c0/0685a8e58bbfb57fab6aefe03c6da904a59769bd803a722bb098bd5b0f29d274a1357762c7258fb487512811b8063fb5d2824a3415a0a4540598335b3b086c72 + languageName: node + linkType: hard + +"yargs-parser@npm:21.1.1, yargs-parser@npm:^21.1.1": + version: 21.1.1 + resolution: "yargs-parser@npm:21.1.1" + checksum: 10c0/f84b5e48169479d2f402239c59f084cfd1c3acc197a05c59b98bab067452e6b3ea46d4dd8ba2985ba7b3d32a343d77df0debd6b343e5dae3da2aab2cdf5886b2 + languageName: node + linkType: hard + +"yargs@npm:^16.0.0, yargs@npm:^16.2.0": + version: 16.2.0 + resolution: "yargs@npm:16.2.0" + dependencies: + cliui: "npm:^7.0.2" + escalade: "npm:^3.1.1" + get-caller-file: "npm:^2.0.5" + require-directory: "npm:^2.1.1" + string-width: "npm:^4.2.0" + y18n: "npm:^5.0.5" + yargs-parser: "npm:^20.2.2" + checksum: 10c0/b1dbfefa679848442454b60053a6c95d62f2d2e21dd28def92b647587f415969173c6e99a0f3bab4f1b67ee8283bf735ebe3544013f09491186ba9e8a9a2b651 + languageName: node + linkType: hard + +"yargs@npm:^17.3.0, yargs@npm:^17.6.2, yargs@npm:^17.7.2": + version: 17.7.2 + resolution: "yargs@npm:17.7.2" + dependencies: + cliui: "npm:^8.0.1" + escalade: "npm:^3.1.1" + get-caller-file: "npm:^2.0.5" + require-directory: "npm:^2.1.1" + string-width: "npm:^4.2.3" + y18n: "npm:^5.0.5" + yargs-parser: "npm:^21.1.1" + checksum: 10c0/ccd7e723e61ad5965fffbb791366db689572b80cca80e0f96aad968dfff4156cd7cd1ad18607afe1046d8241e6fb2d6c08bf7fa7bfb5eaec818735d8feac8f05 + languageName: node + linkType: hard + +"yn@npm:3.1.1": + version: 3.1.1 + resolution: "yn@npm:3.1.1" + checksum: 10c0/0732468dd7622ed8a274f640f191f3eaf1f39d5349a1b72836df484998d7d9807fbea094e2f5486d6b0cd2414aad5775972df0e68f8604db89a239f0f4bf7443 + languageName: node + linkType: hard + +"yocto-queue@npm:^0.1.0": + version: 0.1.0 + resolution: "yocto-queue@npm:0.1.0" + checksum: 10c0/dceb44c28578b31641e13695d200d34ec4ab3966a5729814d5445b194933c096b7ced71494ce53a0e8820685d1d010df8b2422e5bf2cdea7e469d97ffbea306f + languageName: node + linkType: hard + +"zxcvbn@npm:^4.4.2": + version: 4.4.2 + resolution: "zxcvbn@npm:4.4.2" + checksum: 10c0/862f101cc95247b30290bad67ade333e430a16763bb771ce4e4c5414396d987f9a64288225675c96bd6f8d3eba65da0dee119b2a4eaa2e249da3f540b036942e + languageName: node + linkType: hard