From d66ae3164d38739eb2db1b871d06dfdfbc25d6d2 Mon Sep 17 00:00:00 2001 From: Suyi Date: Thu, 25 Jan 2024 20:26:28 +0800 Subject: [PATCH] chore: update eslint / tsconfig for monorepo --- .prettierrc.js | 4 +- common/config/rush/pnpm-lock.yaml | 590 ++++++++++-------- common/config/rush/version-policies.json | 2 +- packages/apps/artusx-api/.eslintignore | 4 + packages/apps/artusx-api/.eslintrc | 6 + packages/apps/artusx-api/package.json | 24 +- packages/apps/artusx-api/src/app/bootstrap.ts | 4 +- .../src/app/config/config.default.ts | 18 +- .../apps/artusx-api/src/app/config/plugin.ts | 8 +- .../artusx-api/src/app/controller/home.ts | 6 +- .../artusx-api/src/app/model/administrator.ts | 4 +- .../src/app/service/administrator.ts | 4 +- packages/apps/artusx-api/src/app/util.ts | 4 +- packages/apps/artusx-api/tsconfig.json | 6 +- packages/apps/artusx-koa/.eslintignore | 1 + packages/apps/artusx-koa/.eslintrc | 28 +- packages/apps/artusx-koa/package.json | 8 +- packages/apps/artusx-koa/src/bootstrap.ts | 2 +- packages/apps/artusx-koa/src/config/plugin.ts | 4 +- .../src/module-info/api.controller.ts | 2 +- .../artusx-koa/src/module-info/api.service.ts | 4 +- packages/apps/artusx-koa/tsconfig.json | 6 +- rush.json | 31 +- toolchains/eslint-config/config.js | 32 + toolchains/eslint-config/index.js | 3 + toolchains/eslint-config/package.json | 24 + toolchains/tsconfig/package.json | 12 + toolchains/tsconfig/tsconfig.json | 10 + 28 files changed, 517 insertions(+), 334 deletions(-) create mode 100644 packages/apps/artusx-api/.eslintignore create mode 100644 packages/apps/artusx-api/.eslintrc create mode 100644 toolchains/eslint-config/config.js create mode 100644 toolchains/eslint-config/index.js create mode 100644 toolchains/eslint-config/package.json create mode 100644 toolchains/tsconfig/package.json create mode 100644 toolchains/tsconfig/tsconfig.json diff --git a/.prettierrc.js b/.prettierrc.js index 4479fc19..35d4aaa1 100644 --- a/.prettierrc.js +++ b/.prettierrc.js @@ -1,7 +1,7 @@ // Documentation for this file: https://prettier.io/en/configuration.html module.exports = { - trailingComma: 'none', + trailingComma: 'es5', tabWidth: 2, semi: true, singleQuote: true, @@ -12,5 +12,5 @@ module.exports = { // Use .gitattributes to manage newlines endOfLine: 'lf', - plugins: ['./common/autoinstallers/rush-prettier/node_modules/prettier-plugin-packagejson'] + plugins: ['./common/autoinstallers/rush-prettier/node_modules/prettier-plugin-packagejson'], }; diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index b5771bdc..f34721b8 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -9,18 +9,22 @@ importers: specifiers: '@artus/core': ^2.x '@artus/pipeline': ^0.2 - '@artus/tsconfig': ^1.0.1 '@artusx/core': workspace:* + '@artusx/eslint-config': workspace:* '@artusx/plugin-redis': workspace:* '@artusx/plugin-sequelize': workspace:* + '@artusx/tsconfig': workspace:* '@artusx/utils': workspace:* '@types/cron': ^2.0.0 '@types/fs-extra': ^11.0.1 '@types/node': ^18.11.17 '@types/validator': ^13.7.12 + '@typescript-eslint/eslint-plugin': ~6.19.1 cron: ^2.2.0 dayjs: ^1.11.7 dotenv: ^16.0.3 + eslint: ~8.56.0 + eslint-plugin-import: ~2.29.1 fs-extra: ^11.1.0 nodemon: ^3.0.2 rate-limiter-flexible: ~4.0.0 @@ -29,7 +33,7 @@ importers: sequelize-typescript: ^2.1.5 ts-node: ^10.9.1 tslib: ^2.5.0 - typescript: ^4.9.4 + typescript: ~5.3.3 dependencies: '@artus/core': 2.2.1_reflect-metadata@0.1.14 '@artus/pipeline': 0.2.3 @@ -39,22 +43,26 @@ importers: '@artusx/utils': link:../../libs/utils cron: 2.4.4 dayjs: 1.11.10 - dotenv: 16.3.1 + dotenv: 16.4.1 fs-extra: 11.2.0 - nodemon: 3.0.2 rate-limiter-flexible: 4.0.0 reflect-metadata: 0.1.14 sequelize: 6.35.2 - sequelize-typescript: 2.1.6_i6baab5mffyzmg76cx6ztmrr7a + sequelize-typescript: 2.1.6_gi326oqloa4gn4o5bb637hva6y devDependencies: - '@artus/tsconfig': 1.0.1_@types+node@18.19.7 + '@artusx/eslint-config': link:../../../toolchains/eslint-config + '@artusx/tsconfig': link:../../../toolchains/tsconfig '@types/cron': 2.4.0 '@types/fs-extra': 11.0.4 - '@types/node': 18.19.7 + '@types/node': 18.19.9 '@types/validator': 13.11.8 - ts-node: 10.9.2_6p2jia37wfm7i7vql2orj6p3e4 + '@typescript-eslint/eslint-plugin': 6.19.1_xdgzedli73k7lw4xlyzszm74om + eslint: 8.56.0 + eslint-plugin-import: 2.29.1_eslint@8.56.0 + nodemon: 3.0.3 + ts-node: 10.9.2_rqbhrter4kzholngnwsmfzo23m tslib: 2.6.2 - typescript: 4.9.5 + typescript: 5.3.3 ../../packages/apps/artusx-express: specifiers: @@ -72,7 +80,7 @@ importers: '@artus/core': 2.2.1_reflect-metadata@0.1.14 '@artusx/plugin-express': link:../../plugins/express '@artusx/utils': link:../../libs/utils - nodemon: 3.0.2 + nodemon: 3.0.3 reflect-metadata: 0.1.14 devDependencies: '@artus/tsconfig': 1.0.1_@types+node@20.10.8 @@ -84,9 +92,9 @@ importers: ../../packages/apps/artusx-koa: specifiers: '@artus/core': ^2.x - '@artus/eslint-config-artus': ~0.0.1 - '@artus/tsconfig': ~1.0.1 '@artusx/core': workspace:* + '@artusx/eslint-config': workspace:* + '@artusx/tsconfig': workspace:* '@artusx/utils': workspace:* '@types/node': ~20.10.6 '@typescript-eslint/eslint-plugin': ~6.19.1 @@ -101,11 +109,11 @@ importers: '@artus/core': 2.2.1_reflect-metadata@0.1.14 '@artusx/core': link:../../libs/core '@artusx/utils': link:../../libs/utils - nodemon: 3.0.2 + nodemon: 3.0.3 reflect-metadata: 0.1.14 devDependencies: - '@artus/eslint-config-artus': 0.0.1_xdgzedli73k7lw4xlyzszm74om - '@artus/tsconfig': 1.0.1_@types+node@20.10.8 + '@artusx/eslint-config': link:../../../toolchains/eslint-config + '@artusx/tsconfig': link:../../../toolchains/tsconfig '@types/node': 20.10.8 '@typescript-eslint/eslint-plugin': 6.19.1_xdgzedli73k7lw4xlyzszm74om eslint: 8.56.0 @@ -134,10 +142,10 @@ importers: '@artus/core': 2.2.1_reflect-metadata@0.1.14 '@artusx/plugin-nest': link:../../plugins/nest '@artusx/utils': link:../../libs/utils - '@nestjs/common': 10.3.0_rcbhqa4so6dtcde4mhxkgzk6je - '@nestjs/core': 10.3.0_ti5phmpc6dupjzhqk2m4uyikty - '@nestjs/platform-express': 10.3.0_3rapiyhwjmezpbsl5hhpinbhca - nodemon: 3.0.2 + '@nestjs/common': 10.3.1_rcbhqa4so6dtcde4mhxkgzk6je + '@nestjs/core': 10.3.1_avolwsz2crsiqoexxzx4t2uyqu + '@nestjs/platform-express': 10.3.1_ah2iaskwxvbibyy3ambonocazi + nodemon: 3.0.3 reflect-metadata: 0.1.14 rxjs: 7.8.1 devDependencies: @@ -167,10 +175,10 @@ importers: '@koa/bodyparser': 5.0.0 '@koa/cors': 5.0.0 devDependencies: - '@artus/tsconfig': 1.0.1_@types+node@18.19.7 + '@artus/tsconfig': 1.0.1_@types+node@18.19.9 '@types/koa__cors': 5.0.0 - '@types/node': 18.19.7 - ts-node: 10.9.2_6p2jia37wfm7i7vql2orj6p3e4 + '@types/node': 18.19.9 + ts-node: 10.9.2_wgzxb44b55snicwjjoggjsysr4 tslib: 2.6.2 typescript: 4.9.5 @@ -187,9 +195,9 @@ importers: '@artus/core': 2.2.1_reflect-metadata@0.1.14 reflect-metadata: 0.1.14 devDependencies: - '@artus/tsconfig': 1.0.1_@types+node@18.19.7 - '@types/node': 18.19.7 - ts-node: 10.9.2_6p2jia37wfm7i7vql2orj6p3e4 + '@artus/tsconfig': 1.0.1_@types+node@18.19.9 + '@types/node': 18.19.9 + ts-node: 10.9.2_wgzxb44b55snicwjjoggjsysr4 tslib: 2.6.2 typescript: 4.9.5 @@ -208,9 +216,9 @@ importers: '@artus/pipeline': 0.2.3 express: 4.18.2 devDependencies: - '@artus/tsconfig': 1.0.1_@types+node@18.19.7 + '@artus/tsconfig': 1.0.1_@types+node@18.19.9 '@types/express': 4.17.21 - '@types/node': 18.19.7 + '@types/node': 18.19.9 tslib: 2.6.2 typescript: 4.9.5 @@ -236,12 +244,12 @@ importers: '@koa/router': 12.0.1 koa: 2.15.0 devDependencies: - '@artus/tsconfig': 1.0.1_@types+node@18.19.7 + '@artus/tsconfig': 1.0.1_@types+node@18.19.9 '@types/jest': 29.5.11 '@types/koa': 2.14.0 '@types/koa__router': 12.0.4 - '@types/node': 18.19.7 - jest: 29.7.0_@types+node@18.19.7 + '@types/node': 18.19.9 + jest: 29.7.0_@types+node@18.19.9 reflect-metadata: 0.2.1 ts-jest: 29.1.2_67xnt3v64q2pgz6kguni4h37hu tslib: 2.6.2 @@ -260,11 +268,11 @@ importers: dependencies: '@artus/core': 2.2.1 '@artus/pipeline': 0.2.3 - '@nestjs/common': 10.3.0 - '@nestjs/core': 10.3.0_@nestjs+common@10.3.0 + '@nestjs/common': 10.3.1 + '@nestjs/core': 10.3.1_@nestjs+common@10.3.1 devDependencies: - '@artus/tsconfig': 1.0.1_@types+node@18.19.7 - '@types/node': 18.19.7 + '@artus/tsconfig': 1.0.1_@types+node@18.19.9 + '@types/node': 18.19.9 tslib: 2.6.2 typescript: 4.9.5 @@ -282,8 +290,8 @@ importers: '@artus/pipeline': 0.2.3 ioredis: 5.3.2 devDependencies: - '@artus/tsconfig': 1.0.1_@types+node@18.19.7 - '@types/node': 18.19.7 + '@artus/tsconfig': 1.0.1_@types+node@18.19.9 + '@types/node': 18.19.9 tslib: 2.6.2 typescript: 4.9.5 @@ -301,15 +309,33 @@ importers: dependencies: '@artus/core': 2.2.1 '@artus/pipeline': 0.2.3 - mysql2: 3.7.0 - sequelize: 6.35.2_mysql2@3.7.0 - sequelize-typescript: 2.1.6_jxciia3dgmddhitu74llozjula + mysql2: 3.8.0 + sequelize: 6.35.2_mysql2@3.8.0 + sequelize-typescript: 2.1.6_6lvmu2bfclegyp2f4w56z33xj4 devDependencies: - '@artus/tsconfig': 1.0.1_@types+node@18.19.7 - '@types/node': 18.19.7 + '@artus/tsconfig': 1.0.1_@types+node@18.19.9 + '@types/node': 18.19.9 tslib: 2.6.2 typescript: 4.9.5 + ../../toolchains/eslint-config: + specifiers: + '@artus/eslint-config-artus': ~0.0.1 + '@typescript-eslint/eslint-plugin': ~6.19.1 + '@typescript-eslint/parser': ~6.19.1 + eslint-config-prettier: ^7.1.0 + dependencies: + '@artus/eslint-config-artus': 0.0.1 + '@typescript-eslint/eslint-plugin': 6.19.1_fwlpoexoz335cirtnefkapjv2y + '@typescript-eslint/parser': 6.19.1 + eslint-config-prettier: 7.2.0 + + ../../toolchains/tsconfig: + specifiers: + '@artus/tsconfig': ~1.0.1 + dependencies: + '@artus/tsconfig': 1.0.1 + packages: /@aashutoshrathi/word-wrap/1.2.6: @@ -323,7 +349,6 @@ packages: dependencies: '@jridgewell/gen-mapping': 0.3.3 '@jridgewell/trace-mapping': 0.3.22 - dev: true /@artus/core/2.2.1: resolution: {integrity: sha512-T7I7PHJdLO5FFBUFlsfA66KFEhbMBAStLcSDVna/ZJGYsGMviTZT1/cmJfKcRWHprTrrvmfHQDevRIhFHkRanQ==} @@ -360,19 +385,19 @@ packages: tslib: 2.6.2 dev: false - /@artus/eslint-config-artus/0.0.1_xdgzedli73k7lw4xlyzszm74om: + /@artus/eslint-config-artus/0.0.1: resolution: {integrity: sha512-jIQQ27IF3erxD6hBV1wUOMNjK0vQnTAFot9BYGyFjNkcVqLhBoJ5X8oEai3azEcRAf+L7KGf/3wQv6Pe4gqomA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: '@babel/core': 7.23.7 - '@babel/eslint-parser': 7.23.3_f74dgmrznwsty6x53oszrcugeq - '@typescript-eslint/eslint-plugin': 5.62.0_2m4ulh664susdrt4cw5l7czowq - '@typescript-eslint/parser': 5.62.0_xdgzedli73k7lw4xlyzszm74om + '@babel/eslint-parser': 7.23.3_@babel+core@7.23.7 + '@typescript-eslint/eslint-plugin': 5.62.0_ymvan467kgsinhigrcqohgvliu + '@typescript-eslint/parser': 5.62.0 transitivePeerDependencies: - eslint - supports-color - typescript - dev: true + dev: false /@artus/injection/0.5.2: resolution: {integrity: sha512-rWjXd2Th+Q3PmmoLsjT3Fh5TyIXb6Ee/heyAI7U8/PmPXfG+rXvLVOSYHm414fIzDkoUHSE5HoMMLpvGK/RUrg==} @@ -384,7 +409,16 @@ packages: tslib: 2.6.2 dev: false - /@artus/tsconfig/1.0.1_@types+node@18.19.7: + /@artus/tsconfig/1.0.1: + resolution: {integrity: sha512-IxBvvg6I7+3do+CCxZq/LSvZiMFRwVFwUVkJWEunVGXtggq9Q0cnlrdJnnjnnbAlIgmH1knRc4z/atItnHjDEg==} + peerDependencies: + '@types/node': '*' + peerDependenciesMeta: + '@types/node': + optional: true + dev: false + + /@artus/tsconfig/1.0.1_@types+node@18.19.9: resolution: {integrity: sha512-IxBvvg6I7+3do+CCxZq/LSvZiMFRwVFwUVkJWEunVGXtggq9Q0cnlrdJnnjnnbAlIgmH1knRc4z/atItnHjDEg==} peerDependencies: '@types/node': '*' @@ -392,7 +426,7 @@ packages: '@types/node': optional: true dependencies: - '@types/node': 18.19.7 + '@types/node': 18.19.9 dev: true /@artus/tsconfig/1.0.1_@types+node@20.10.8: @@ -412,12 +446,10 @@ packages: dependencies: '@babel/highlight': 7.23.4 chalk: 2.4.2 - dev: true /@babel/compat-data/7.23.5: resolution: {integrity: sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==} engines: {node: '>=6.9.0'} - dev: true /@babel/core/7.23.7: resolution: {integrity: sha512-+UpDgowcmqe36d4NwqvKsyPMlOLNGMsfMmQ5WGCu+siCe3t3dfe9njrzGfdN4qq+bcNUt0+Vw6haRxBOycs4dw==} @@ -440,9 +472,8 @@ packages: semver: 6.3.1 transitivePeerDependencies: - supports-color - dev: true - /@babel/eslint-parser/7.23.3_f74dgmrznwsty6x53oszrcugeq: + /@babel/eslint-parser/7.23.3_@babel+core@7.23.7: resolution: {integrity: sha512-9bTuNlyx7oSstodm1cR1bECj4fkiknsDa1YniISkJemMY3DGhJNYBECbe6QD/q54mp2J8VO66jW3/7uP//iFCw==} engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0} peerDependencies: @@ -451,10 +482,9 @@ packages: dependencies: '@babel/core': 7.23.7 '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1 - eslint: 8.56.0 eslint-visitor-keys: 2.1.0 semver: 6.3.1 - dev: true + dev: false /@babel/generator/7.23.6: resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==} @@ -464,7 +494,6 @@ packages: '@jridgewell/gen-mapping': 0.3.3 '@jridgewell/trace-mapping': 0.3.22 jsesc: 2.5.2 - dev: true /@babel/helper-compilation-targets/7.23.6: resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==} @@ -475,12 +504,10 @@ packages: browserslist: 4.22.2 lru-cache: 5.1.1 semver: 6.3.1 - dev: true /@babel/helper-environment-visitor/7.22.20: resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-function-name/7.23.0: resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} @@ -488,21 +515,18 @@ packages: dependencies: '@babel/template': 7.22.15 '@babel/types': 7.23.6 - dev: true /@babel/helper-hoist-variables/7.22.5: resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.23.6 - dev: true /@babel/helper-module-imports/7.22.15: resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.23.6 - dev: true /@babel/helper-module-transforms/7.23.3_@babel+core@7.23.7: resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} @@ -516,7 +540,6 @@ packages: '@babel/helper-simple-access': 7.22.5 '@babel/helper-split-export-declaration': 7.22.6 '@babel/helper-validator-identifier': 7.22.20 - dev: true /@babel/helper-plugin-utils/7.22.5: resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} @@ -528,29 +551,24 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.23.6 - dev: true /@babel/helper-split-export-declaration/7.22.6: resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} engines: {node: '>=6.9.0'} dependencies: '@babel/types': 7.23.6 - dev: true /@babel/helper-string-parser/7.23.4: resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-validator-identifier/7.22.20: resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-validator-option/7.23.5: resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==} engines: {node: '>=6.9.0'} - dev: true /@babel/helpers/7.23.8: resolution: {integrity: sha512-KDqYz4PiOWvDFrdHLPhKtCThtIcKVy6avWD2oG4GEvyQ+XDZwHD4YQd+H2vNMnq2rkdxsDkU82T+Vk8U/WXHRQ==} @@ -561,7 +579,6 @@ packages: '@babel/types': 7.23.6 transitivePeerDependencies: - supports-color - dev: true /@babel/highlight/7.23.4: resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==} @@ -570,13 +587,11 @@ packages: '@babel/helper-validator-identifier': 7.22.20 chalk: 2.4.2 js-tokens: 4.0.0 - dev: true /@babel/parser/7.23.6: resolution: {integrity: sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==} engines: {node: '>=6.0.0'} hasBin: true - dev: true /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.23.7: resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} @@ -714,7 +729,6 @@ packages: '@babel/code-frame': 7.23.5 '@babel/parser': 7.23.6 '@babel/types': 7.23.6 - dev: true /@babel/traverse/7.23.7: resolution: {integrity: sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==} @@ -732,7 +746,6 @@ packages: globals: 11.12.0 transitivePeerDependencies: - supports-color - dev: true /@babel/types/7.23.6: resolution: {integrity: sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==} @@ -741,7 +754,6 @@ packages: '@babel/helper-string-parser': 7.23.4 '@babel/helper-validator-identifier': 7.22.20 to-fast-properties: 2.0.0 - dev: true /@bcoe/v8-coverage/0.2.3: resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} @@ -754,6 +766,15 @@ packages: '@jridgewell/trace-mapping': 0.3.9 dev: true + /@eslint-community/eslint-utils/4.4.0: + resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + dependencies: + eslint-visitor-keys: 3.4.3 + dev: false + /@eslint-community/eslint-utils/4.4.0_eslint@8.56.0: resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -767,7 +788,6 @@ packages: /@eslint-community/regexpp/4.10.0: resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - dev: true /@eslint/eslintrc/2.1.4: resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} @@ -956,7 +976,7 @@ packages: chalk: 4.1.2 collect-v8-coverage: 1.0.2 exit: 0.1.2 - glob: 7.2.0 + glob: 7.2.3 graceful-fs: 4.2.11 istanbul-lib-coverage: 3.2.2 istanbul-lib-instrument: 6.0.1 @@ -1052,28 +1072,23 @@ packages: '@jridgewell/set-array': 1.1.2 '@jridgewell/sourcemap-codec': 1.4.15 '@jridgewell/trace-mapping': 0.3.22 - dev: true /@jridgewell/resolve-uri/3.1.1: resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} engines: {node: '>=6.0.0'} - dev: true /@jridgewell/set-array/1.1.2: resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} engines: {node: '>=6.0.0'} - dev: true /@jridgewell/sourcemap-codec/1.4.15: resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} - dev: true /@jridgewell/trace-mapping/0.3.22: resolution: {integrity: sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw==} dependencies: '@jridgewell/resolve-uri': 3.1.1 '@jridgewell/sourcemap-codec': 1.4.15 - dev: true /@jridgewell/trace-mapping/0.3.9: resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} @@ -1116,8 +1131,8 @@ packages: engines: {node: '>=8'} dev: false - /@nestjs/common/10.3.0: - resolution: {integrity: sha512-DGv34UHsZBxCM3H5QGE2XE/+oLJzz5+714JQjBhjD9VccFlQs3LRxo/epso4l7nJIiNlZkPyIUC8WzfU/5RTsQ==} + /@nestjs/common/10.3.1: + resolution: {integrity: sha512-YuxeIlVemVQCuXMkNbBpNlmwZgp/Cu6dwCOjki63mhyYHEFX48GNNA4zZn5MFRjF4h7VSceABsScROuzsxs9LA==} peerDependencies: class-transformer: '*' class-validator: '*' @@ -1134,8 +1149,8 @@ packages: uid: 2.0.2 dev: false - /@nestjs/common/10.3.0_rcbhqa4so6dtcde4mhxkgzk6je: - resolution: {integrity: sha512-DGv34UHsZBxCM3H5QGE2XE/+oLJzz5+714JQjBhjD9VccFlQs3LRxo/epso4l7nJIiNlZkPyIUC8WzfU/5RTsQ==} + /@nestjs/common/10.3.1_rcbhqa4so6dtcde4mhxkgzk6je: + resolution: {integrity: sha512-YuxeIlVemVQCuXMkNbBpNlmwZgp/Cu6dwCOjki63mhyYHEFX48GNNA4zZn5MFRjF4h7VSceABsScROuzsxs9LA==} peerDependencies: class-transformer: '*' class-validator: '*' @@ -1154,8 +1169,8 @@ packages: uid: 2.0.2 dev: false - /@nestjs/core/10.3.0_@nestjs+common@10.3.0: - resolution: {integrity: sha512-N06P5ncknW/Pm8bj964WvLIZn2gNhHliCBoAO1LeBvNImYkecqKcrmLbY49Fa1rmMfEM3MuBHeDys3edeuYAOA==} + /@nestjs/core/10.3.1_@nestjs+common@10.3.1: + resolution: {integrity: sha512-mh6FwTKh2R3CmLRuB50BF5q/lzc+Mz+7qAlEvpgCiTSIfSXzbQ47vWpfgLirwkL3SlCvtFS8onxOeI69RpxvXA==} requiresBuild: true peerDependencies: '@nestjs/common': ^10.0.0 @@ -1172,7 +1187,7 @@ packages: '@nestjs/websockets': optional: true dependencies: - '@nestjs/common': 10.3.0 + '@nestjs/common': 10.3.1 '@nuxtjs/opencollective': 0.3.2 fast-safe-stringify: 2.1.1 iterare: 1.2.1 @@ -1183,8 +1198,8 @@ packages: - encoding dev: false - /@nestjs/core/10.3.0_ti5phmpc6dupjzhqk2m4uyikty: - resolution: {integrity: sha512-N06P5ncknW/Pm8bj964WvLIZn2gNhHliCBoAO1LeBvNImYkecqKcrmLbY49Fa1rmMfEM3MuBHeDys3edeuYAOA==} + /@nestjs/core/10.3.1_avolwsz2crsiqoexxzx4t2uyqu: + resolution: {integrity: sha512-mh6FwTKh2R3CmLRuB50BF5q/lzc+Mz+7qAlEvpgCiTSIfSXzbQ47vWpfgLirwkL3SlCvtFS8onxOeI69RpxvXA==} requiresBuild: true peerDependencies: '@nestjs/common': ^10.0.0 @@ -1201,8 +1216,8 @@ packages: '@nestjs/websockets': optional: true dependencies: - '@nestjs/common': 10.3.0_rcbhqa4so6dtcde4mhxkgzk6je - '@nestjs/platform-express': 10.3.0_3rapiyhwjmezpbsl5hhpinbhca + '@nestjs/common': 10.3.1_rcbhqa4so6dtcde4mhxkgzk6je + '@nestjs/platform-express': 10.3.1_ah2iaskwxvbibyy3ambonocazi '@nuxtjs/opencollective': 0.3.2 fast-safe-stringify: 2.1.1 iterare: 1.2.1 @@ -1215,14 +1230,14 @@ packages: - encoding dev: false - /@nestjs/platform-express/10.3.0_3rapiyhwjmezpbsl5hhpinbhca: - resolution: {integrity: sha512-E4hUW48bYv8OHbP9XQg6deefmXb0pDSSuE38SdhA0mJ37zGY7C5EqqBUdlQk4ttfD+OdnbIgJ1zOokT6dd2d7A==} + /@nestjs/platform-express/10.3.1_ah2iaskwxvbibyy3ambonocazi: + resolution: {integrity: sha512-Rj21quI5h4Lry7q9an+nO4ADQiQUy9A6XK74o5aTUHo3Ysm25ujqh2NgU4XbT3M2oXU9qzhE59OfhkQ7ZUvTAg==} peerDependencies: '@nestjs/common': ^10.0.0 '@nestjs/core': ^10.0.0 dependencies: - '@nestjs/common': 10.3.0_rcbhqa4so6dtcde4mhxkgzk6je - '@nestjs/core': 10.3.0_ti5phmpc6dupjzhqk2m4uyikty + '@nestjs/common': 10.3.1_rcbhqa4so6dtcde4mhxkgzk6je + '@nestjs/core': 10.3.1_avolwsz2crsiqoexxzx4t2uyqu body-parser: 1.20.2 cors: 2.8.5 express: 4.18.2 @@ -1234,7 +1249,7 @@ packages: resolution: {integrity: sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==} dependencies: eslint-scope: 5.1.1 - dev: true + dev: false /@nodelib/fs.scandir/2.1.5: resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} @@ -1242,12 +1257,10 @@ packages: dependencies: '@nodelib/fs.stat': 2.0.5 run-parallel: 1.2.0 - dev: true /@nodelib/fs.stat/2.0.5: resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} engines: {node: '>= 8'} - dev: true /@nodelib/fs.walk/1.2.8: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} @@ -1255,7 +1268,6 @@ packages: dependencies: '@nodelib/fs.scandir': 2.1.5 fastq: 1.16.0 - dev: true /@nuxtjs/opencollective/0.3.2: resolution: {integrity: sha512-um0xL3fO7Mf4fDxcqx9KryrB7zgRM5JSlvGN5AGkP6JLM5XEKyjeAiPbNxdXVXQ16isuAhYpvP88NgL2BGd6aA==} @@ -1397,7 +1409,7 @@ packages: resolution: {integrity: sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==} dependencies: '@types/jsonfile': 6.1.4 - '@types/node': 20.10.8 + '@types/node': 18.19.9 dev: true /@types/graceful-fs/4.1.9: @@ -1439,7 +1451,6 @@ packages: /@types/json-schema/7.0.15: resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} - dev: true /@types/json5/0.0.29: resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} @@ -1501,8 +1512,8 @@ packages: resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} dev: false - /@types/node/18.19.7: - resolution: {integrity: sha512-IGRJfoNX10N/PfrReRZ1br/7SQ+2vF/tK3KXNwzXz82D32z5dMQEoOlFew18nLSN+vMNcLY4GrKfzwi/yWI8/w==} + /@types/node/18.19.9: + resolution: {integrity: sha512-oZFKlC8l5YtzGQNT4zC2PiSSKzQVZ8bAwwd+EYdPLtyk0nSEq6O16SkK+rkkT2eflDAbormJgEF3QnH3oDrTSw==} dependencies: undici-types: 5.26.5 @@ -1521,7 +1532,6 @@ packages: /@types/semver/7.5.6: resolution: {integrity: sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==} - dev: true /@types/send/0.17.4: resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==} @@ -1555,7 +1565,7 @@ packages: '@types/yargs-parser': 21.0.3 dev: true - /@typescript-eslint/eslint-plugin/5.62.0_2m4ulh664susdrt4cw5l7czowq: + /@typescript-eslint/eslint-plugin/5.62.0_ymvan467kgsinhigrcqohgvliu: resolution: {integrity: sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -1567,21 +1577,46 @@ packages: optional: true dependencies: '@eslint-community/regexpp': 4.10.0 - '@typescript-eslint/parser': 5.62.0_xdgzedli73k7lw4xlyzszm74om + '@typescript-eslint/parser': 5.62.0 '@typescript-eslint/scope-manager': 5.62.0 - '@typescript-eslint/type-utils': 5.62.0_xdgzedli73k7lw4xlyzszm74om - '@typescript-eslint/utils': 5.62.0_xdgzedli73k7lw4xlyzszm74om + '@typescript-eslint/type-utils': 5.62.0 + '@typescript-eslint/utils': 5.62.0 debug: 4.3.4 - eslint: 8.56.0 graphemer: 1.4.0 ignore: 5.3.0 natural-compare-lite: 1.4.0 semver: 7.5.4 - tsutils: 3.21.0_typescript@5.3.3 - typescript: 5.3.3 + tsutils: 3.21.0 transitivePeerDependencies: - supports-color - dev: true + dev: false + + /@typescript-eslint/eslint-plugin/6.19.1_fwlpoexoz335cirtnefkapjv2y: + resolution: {integrity: sha512-roQScUGFruWod9CEyoV5KlCYrubC/fvG8/1zXuT0WTcxX87GnMMmnksMwSg99lo1xiKrBzw2icsJPMAw1OtKxg==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha + eslint: ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@eslint-community/regexpp': 4.10.0 + '@typescript-eslint/parser': 6.19.1 + '@typescript-eslint/scope-manager': 6.19.1 + '@typescript-eslint/type-utils': 6.19.1 + '@typescript-eslint/utils': 6.19.1 + '@typescript-eslint/visitor-keys': 6.19.1 + debug: 4.3.4 + graphemer: 1.4.0 + ignore: 5.3.0 + natural-compare: 1.4.0 + semver: 7.5.4 + ts-api-utils: 1.0.3 + transitivePeerDependencies: + - supports-color + dev: false /@typescript-eslint/eslint-plugin/6.19.1_xdgzedli73k7lw4xlyzszm74om: resolution: {integrity: sha512-roQScUGFruWod9CEyoV5KlCYrubC/fvG8/1zXuT0WTcxX87GnMMmnksMwSg99lo1xiKrBzw2icsJPMAw1OtKxg==} @@ -1611,7 +1646,7 @@ packages: - supports-color dev: true - /@typescript-eslint/parser/5.62.0_xdgzedli73k7lw4xlyzszm74om: + /@typescript-eslint/parser/5.62.0: resolution: {integrity: sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -1623,13 +1658,30 @@ packages: dependencies: '@typescript-eslint/scope-manager': 5.62.0 '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/typescript-estree': 5.62.0_typescript@5.3.3 + '@typescript-eslint/typescript-estree': 5.62.0 debug: 4.3.4 - eslint: 8.56.0 - typescript: 5.3.3 transitivePeerDependencies: - supports-color - dev: true + dev: false + + /@typescript-eslint/parser/6.19.1: + resolution: {integrity: sha512-WEfX22ziAh6pRE9jnbkkLGp/4RhTpffr2ZK5bJ18M8mIfA8A+k97U9ZyaXCEJRlmMHh7R9MJZWXp/r73DzINVQ==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/scope-manager': 6.19.1 + '@typescript-eslint/types': 6.19.1 + '@typescript-eslint/typescript-estree': 6.19.1 + '@typescript-eslint/visitor-keys': 6.19.1 + debug: 4.3.4 + transitivePeerDependencies: + - supports-color + dev: false /@typescript-eslint/scope-manager/5.62.0: resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==} @@ -1637,7 +1689,7 @@ packages: dependencies: '@typescript-eslint/types': 5.62.0 '@typescript-eslint/visitor-keys': 5.62.0 - dev: true + dev: false /@typescript-eslint/scope-manager/6.19.1: resolution: {integrity: sha512-4CdXYjKf6/6aKNMSly/BP4iCSOpvMmqtDzRtqFyyAae3z5kkqEjKndR5vDHL8rSuMIIWP8u4Mw4VxLyxZW6D5w==} @@ -1645,9 +1697,8 @@ packages: dependencies: '@typescript-eslint/types': 6.19.1 '@typescript-eslint/visitor-keys': 6.19.1 - dev: true - /@typescript-eslint/type-utils/5.62.0_xdgzedli73k7lw4xlyzszm74om: + /@typescript-eslint/type-utils/5.62.0: resolution: {integrity: sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -1657,15 +1708,31 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 5.62.0_typescript@5.3.3 - '@typescript-eslint/utils': 5.62.0_xdgzedli73k7lw4xlyzszm74om + '@typescript-eslint/typescript-estree': 5.62.0 + '@typescript-eslint/utils': 5.62.0 debug: 4.3.4 - eslint: 8.56.0 - tsutils: 3.21.0_typescript@5.3.3 - typescript: 5.3.3 + tsutils: 3.21.0 transitivePeerDependencies: - supports-color - dev: true + dev: false + + /@typescript-eslint/type-utils/6.19.1: + resolution: {integrity: sha512-0vdyld3ecfxJuddDjACUvlAeYNrHP/pDeQk2pWBR2ESeEzQhg52DF53AbI9QCBkYE23lgkhLCZNkHn2hEXXYIg==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/typescript-estree': 6.19.1 + '@typescript-eslint/utils': 6.19.1 + debug: 4.3.4 + ts-api-utils: 1.0.3 + transitivePeerDependencies: + - supports-color + dev: false /@typescript-eslint/type-utils/6.19.1_xdgzedli73k7lw4xlyzszm74om: resolution: {integrity: sha512-0vdyld3ecfxJuddDjACUvlAeYNrHP/pDeQk2pWBR2ESeEzQhg52DF53AbI9QCBkYE23lgkhLCZNkHn2hEXXYIg==} @@ -1690,14 +1757,13 @@ packages: /@typescript-eslint/types/5.62.0: resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true + dev: false /@typescript-eslint/types/6.19.1: resolution: {integrity: sha512-6+bk6FEtBhvfYvpHsDgAL3uo4BfvnTnoge5LrrCj2eJN8g3IJdLTD4B/jK3Q6vo4Ql/Hoip9I8aB6fF+6RfDqg==} engines: {node: ^16.0.0 || >=18.0.0} - dev: true - /@typescript-eslint/typescript-estree/5.62.0_typescript@5.3.3: + /@typescript-eslint/typescript-estree/5.62.0: resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -1712,11 +1778,31 @@ packages: globby: 11.1.0 is-glob: 4.0.3 semver: 7.5.4 - tsutils: 3.21.0_typescript@5.3.3 - typescript: 5.3.3 + tsutils: 3.21.0 transitivePeerDependencies: - supports-color - dev: true + dev: false + + /@typescript-eslint/typescript-estree/6.19.1: + resolution: {integrity: sha512-aFdAxuhzBFRWhy+H20nYu19+Km+gFfwNO4TEqyszkMcgBDYQjmPJ61erHxuT2ESJXhlhrO7I5EFIlZ+qGR8oVA==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/types': 6.19.1 + '@typescript-eslint/visitor-keys': 6.19.1 + debug: 4.3.4 + globby: 11.1.0 + is-glob: 4.0.3 + minimatch: 9.0.3 + semver: 7.5.4 + ts-api-utils: 1.0.3 + transitivePeerDependencies: + - supports-color + dev: false /@typescript-eslint/typescript-estree/6.19.1_typescript@5.3.3: resolution: {integrity: sha512-aFdAxuhzBFRWhy+H20nYu19+Km+gFfwNO4TEqyszkMcgBDYQjmPJ61erHxuT2ESJXhlhrO7I5EFIlZ+qGR8oVA==} @@ -1740,25 +1826,42 @@ packages: - supports-color dev: true - /@typescript-eslint/utils/5.62.0_xdgzedli73k7lw4xlyzszm74om: + /@typescript-eslint/utils/5.62.0: resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: - '@eslint-community/eslint-utils': 4.4.0_eslint@8.56.0 + '@eslint-community/eslint-utils': 4.4.0 '@types/json-schema': 7.0.15 '@types/semver': 7.5.6 '@typescript-eslint/scope-manager': 5.62.0 '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/typescript-estree': 5.62.0_typescript@5.3.3 - eslint: 8.56.0 + '@typescript-eslint/typescript-estree': 5.62.0 eslint-scope: 5.1.1 semver: 7.5.4 transitivePeerDependencies: - supports-color - typescript - dev: true + dev: false + + /@typescript-eslint/utils/6.19.1: + resolution: {integrity: sha512-JvjfEZuP5WoMqwh9SPAPDSHSg9FBHHGhjPugSRxu5jMfjvBpq5/sGTD+9M9aQ5sh6iJ8AY/Kk/oUYVEMAPwi7w==} + engines: {node: ^16.0.0 || >=18.0.0} + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + dependencies: + '@eslint-community/eslint-utils': 4.4.0 + '@types/json-schema': 7.0.15 + '@types/semver': 7.5.6 + '@typescript-eslint/scope-manager': 6.19.1 + '@typescript-eslint/types': 6.19.1 + '@typescript-eslint/typescript-estree': 6.19.1 + semver: 7.5.4 + transitivePeerDependencies: + - supports-color + - typescript + dev: false /@typescript-eslint/utils/6.19.1_xdgzedli73k7lw4xlyzszm74om: resolution: {integrity: sha512-JvjfEZuP5WoMqwh9SPAPDSHSg9FBHHGhjPugSRxu5jMfjvBpq5/sGTD+9M9aQ5sh6iJ8AY/Kk/oUYVEMAPwi7w==} @@ -1785,7 +1888,7 @@ packages: dependencies: '@typescript-eslint/types': 5.62.0 eslint-visitor-keys: 3.4.3 - dev: true + dev: false /@typescript-eslint/visitor-keys/6.19.1: resolution: {integrity: sha512-gkdtIO+xSO/SmI0W68DBg4u1KElmIUo3vXzgHyGPs6cxgB0sa3TlptRAAE0hUY1hM6FcDKEv7aIwiTGm76cXfQ==} @@ -1793,7 +1896,6 @@ packages: dependencies: '@typescript-eslint/types': 6.19.1 eslint-visitor-keys: 3.4.3 - dev: true /@ungap/structured-clone/1.2.0: resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} @@ -1801,7 +1903,6 @@ packages: /abbrev/1.1.1: resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} - dev: false /accepts/1.3.8: resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} @@ -1856,7 +1957,6 @@ packages: engines: {node: '>=4'} dependencies: color-convert: 1.9.3 - dev: true /ansi-styles/4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} @@ -1919,7 +2019,6 @@ packages: /array-union/2.1.0: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} - dev: true /array.prototype.findlastindex/1.2.3: resolution: {integrity: sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==} @@ -2048,7 +2147,6 @@ packages: /binary-extensions/2.2.0: resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} engines: {node: '>=8'} - dev: false /body-parser/1.20.1: resolution: {integrity: sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==} @@ -2108,11 +2206,10 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001579 - electron-to-chromium: 1.4.643 + caniuse-lite: 1.0.30001580 + electron-to-chromium: 1.4.645 node-releases: 2.0.14 update-browserslist-db: 1.0.13_browserslist@4.22.2 - dev: true /bs-logger/0.2.6: resolution: {integrity: sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==} @@ -2172,9 +2269,8 @@ packages: engines: {node: '>=10'} dev: true - /caniuse-lite/1.0.30001579: - resolution: {integrity: sha512-u5AUVkixruKHJjw/pj9wISlcMpgFWzSrczLZbrqBSxukQixmg0SJ5sZTpvaFvxU0HoQKd4yoyAogyrAz9pzJnA==} - dev: true + /caniuse-lite/1.0.30001580: + resolution: {integrity: sha512-mtj5ur2FFPZcCEpXFy8ADXbDACuNFXg6mxVDqp7tqooX6l3zwm+d8EPoeOSIFRDvHs8qu7/SLFOGniULkcH2iA==} /chalk/2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} @@ -2183,7 +2279,6 @@ packages: ansi-styles: 3.2.1 escape-string-regexp: 1.0.5 supports-color: 5.5.0 - dev: true /chalk/4.1.2: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} @@ -2210,7 +2305,6 @@ packages: readdirp: 3.6.0 optionalDependencies: fsevents: 2.3.3 - dev: false /ci-info/3.9.0: resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} @@ -2256,7 +2350,6 @@ packages: resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} dependencies: color-name: 1.1.3 - dev: true /color-convert/2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} @@ -2266,7 +2359,6 @@ packages: /color-name/1.1.3: resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} - dev: true /color-name/1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} @@ -2302,7 +2394,6 @@ packages: /convert-source-map/2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - dev: true /cookie-signature/1.0.6: resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==} @@ -2333,7 +2424,7 @@ packages: vary: 1.1.2 dev: false - /create-jest/29.7.0_@types+node@18.19.7: + /create-jest/29.7.0_@types+node@18.19.9: resolution: {integrity: sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} hasBin: true @@ -2342,7 +2433,7 @@ packages: chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.11 - jest-config: 29.7.0_@types+node@18.19.7 + jest-config: 29.7.0_@types+node@18.19.9 jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -2409,7 +2500,6 @@ packages: dependencies: ms: 2.1.2 supports-color: 5.5.0 - dev: false /dedent/1.5.1: resolution: {integrity: sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==} @@ -2493,7 +2583,6 @@ packages: engines: {node: '>=8'} dependencies: path-type: 4.0.0 - dev: true /doctrine/2.1.0: resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} @@ -2509,8 +2598,8 @@ packages: esutils: 2.0.3 dev: true - /dotenv/16.3.1: - resolution: {integrity: sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==} + /dotenv/16.4.1: + resolution: {integrity: sha512-CjA3y+Dr3FyFDOAMnxZEGtnW9KBR2M0JvvUtXNW+dYJL5ROWxP9DUHCwgFqpMk0OXCc0ljhaNTr2w/kutYIcHQ==} engines: {node: '>=12'} dev: false @@ -2522,9 +2611,8 @@ packages: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} dev: false - /electron-to-chromium/1.4.643: - resolution: {integrity: sha512-QHscvvS7gt155PtoRC0dR2ilhL8E9LHhfTQEq1uD5AL0524rBLAwpAREFH06f87/e45B9XkR6Ki5dbhbCsVEIg==} - dev: true + /electron-to-chromium/1.4.645: + resolution: {integrity: sha512-EeS1oQDCmnYsRDRy2zTeC336a/4LZ6WKqvSaM1jLocEk5ZuyszkQtCpsqvuvaIXGOUjwtvF6LTcS8WueibXvSw==} /emittery/0.13.1: resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==} @@ -2618,7 +2706,6 @@ packages: /escalade/3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} engines: {node: '>=6'} - dev: true /escape-html/1.0.3: resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} @@ -2627,7 +2714,6 @@ packages: /escape-string-regexp/1.0.5: resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} engines: {node: '>=0.8.0'} - dev: true /escape-string-regexp/2.0.0: resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==} @@ -2639,6 +2725,13 @@ packages: engines: {node: '>=10'} dev: true + /eslint-config-prettier/7.2.0: + resolution: {integrity: sha512-rV4Qu0C3nfJKPOAhFujFxB7RMP+URFyQqqOZW9DMRD7ZDTFyjaIlETU3xzHELt++4ugC0+Jm084HQYkkJe+Ivg==} + hasBin: true + peerDependencies: + eslint: '>=7.0.0' + dev: false + /eslint-import-resolver-node/0.3.9: resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} dependencies: @@ -2692,7 +2785,7 @@ packages: dependencies: esrecurse: 4.3.0 estraverse: 4.3.0 - dev: true + dev: false /eslint-scope/7.2.2: resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} @@ -2705,12 +2798,11 @@ packages: /eslint-visitor-keys/2.1.0: resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} engines: {node: '>=10'} - dev: true + dev: false /eslint-visitor-keys/3.4.3: resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true /eslint/8.56.0: resolution: {integrity: sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==} @@ -2786,17 +2878,15 @@ packages: engines: {node: '>=4.0'} dependencies: estraverse: 5.3.0 - dev: true /estraverse/4.3.0: resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} engines: {node: '>=4.0'} - dev: true + dev: false /estraverse/5.3.0: resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} engines: {node: '>=4.0'} - dev: true /esutils/2.0.3: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} @@ -2889,7 +2979,6 @@ packages: glob-parent: 5.1.2 merge2: 1.4.1 micromatch: 4.0.5 - dev: true /fast-json-stable-stringify/2.1.0: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} @@ -2907,7 +2996,6 @@ packages: resolution: {integrity: sha512-ifCoaXsDrsdkWTtiNJX5uzHDsrck5TzfKKDcuFFTIrrc/BS076qgEIfoIy1VeZqViznfKiysPYTh/QeHtnIsYA==} dependencies: reusify: 1.0.4 - dev: true /fb-watchman/2.0.2: resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==} @@ -3031,7 +3119,6 @@ packages: /gensync/1.0.0-beta.2: resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} engines: {node: '>=6.9.0'} - dev: true /get-caller-file/2.0.5: resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} @@ -3086,11 +3173,22 @@ packages: minimatch: 3.1.2 once: 1.4.0 path-is-absolute: 1.0.1 + dev: false + + /glob/7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + dependencies: + fs.realpath: 1.0.0 + inflight: 1.0.6 + inherits: 2.0.4 + minimatch: 3.1.2 + once: 1.4.0 + path-is-absolute: 1.0.1 + dev: true /globals/11.12.0: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} - dev: true /globals/13.24.0: resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} @@ -3116,7 +3214,6 @@ packages: ignore: 5.3.0 merge2: 1.4.1 slash: 3.0.0 - dev: true /gopd/1.0.1: resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} @@ -3128,7 +3225,6 @@ packages: /graphemer/1.4.0: resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - dev: true /has-bigints/1.0.2: resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} @@ -3222,12 +3318,10 @@ packages: /ignore-by-default/1.0.1: resolution: {integrity: sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==} - dev: false /ignore/5.3.0: resolution: {integrity: sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==} engines: {node: '>= 4'} - dev: true /import-fresh/3.3.0: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} @@ -3324,7 +3418,6 @@ packages: engines: {node: '>=8'} dependencies: binary-extensions: 2.2.0 - dev: false /is-boolean-object/1.1.2: resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} @@ -3564,7 +3657,7 @@ packages: - supports-color dev: true - /jest-cli/29.7.0_@types+node@18.19.7: + /jest-cli/29.7.0_@types+node@18.19.9: resolution: {integrity: sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} hasBin: true @@ -3578,10 +3671,10 @@ packages: '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0_@types+node@18.19.7 + create-jest: 29.7.0_@types+node@18.19.9 exit: 0.1.2 import-local: 3.1.0 - jest-config: 29.7.0_@types+node@18.19.7 + jest-config: 29.7.0_@types+node@18.19.9 jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.7.2 @@ -3592,7 +3685,7 @@ packages: - ts-node dev: true - /jest-config/29.7.0_@types+node@18.19.7: + /jest-config/29.7.0_@types+node@18.19.9: resolution: {integrity: sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} peerDependencies: @@ -3607,12 +3700,12 @@ packages: '@babel/core': 7.23.7 '@jest/test-sequencer': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 18.19.7 + '@types/node': 18.19.9 babel-jest: 29.7.0_@babel+core@7.23.7 chalk: 4.1.2 ci-info: 3.9.0 deepmerge: 4.3.1 - glob: 7.2.0 + glob: 7.2.3 graceful-fs: 4.2.11 jest-circus: 29.7.0 jest-environment-node: 29.7.0 @@ -3652,7 +3745,7 @@ packages: chalk: 4.1.2 ci-info: 3.9.0 deepmerge: 4.3.1 - glob: 7.2.0 + glob: 7.2.3 graceful-fs: 4.2.11 jest-circus: 29.7.0 jest-environment-node: 29.7.0 @@ -3864,7 +3957,7 @@ packages: chalk: 4.1.2 cjs-module-lexer: 1.2.3 collect-v8-coverage: 1.0.2 - glob: 7.2.0 + glob: 7.2.3 graceful-fs: 4.2.11 jest-haste-map: 29.7.0 jest-message-util: 29.7.0 @@ -3955,7 +4048,7 @@ packages: supports-color: 8.1.1 dev: true - /jest/29.7.0_@types+node@18.19.7: + /jest/29.7.0_@types+node@18.19.9: resolution: {integrity: sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} hasBin: true @@ -3968,7 +4061,7 @@ packages: '@jest/core': 29.7.0 '@jest/types': 29.6.3 import-local: 3.1.0 - jest-cli: 29.7.0_@types+node@18.19.7 + jest-cli: 29.7.0_@types+node@18.19.9 transitivePeerDependencies: - '@types/node' - babel-plugin-macros @@ -3978,7 +4071,6 @@ packages: /js-tokens/4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - dev: true /js-yaml/3.14.1: resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} @@ -3999,7 +4091,6 @@ packages: resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} engines: {node: '>=4'} hasBin: true - dev: true /json-buffer/3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} @@ -4028,7 +4119,6 @@ packages: resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} engines: {node: '>=6'} hasBin: true - dev: true /jsonfile/6.1.0: resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} @@ -4157,7 +4247,6 @@ packages: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} dependencies: yallist: 3.1.1 - dev: true /lru-cache/6.0.0: resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} @@ -4212,7 +4301,6 @@ packages: /merge2/1.4.1: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} - dev: true /methods/1.1.2: resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} @@ -4225,7 +4313,6 @@ packages: dependencies: braces: 3.0.2 picomatch: 2.3.1 - dev: true /mime-db/1.52.0: resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} @@ -4267,7 +4354,6 @@ packages: engines: {node: '>=16 || 14 >=14.17'} dependencies: brace-expansion: 2.0.1 - dev: true /minimist/1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} @@ -4312,8 +4398,8 @@ packages: xtend: 4.0.2 dev: false - /mysql2/3.7.0: - resolution: {integrity: sha512-c45jA3Jc1X8yJKzrWu1GpplBKGwv/wIV6ITZTlCSY7npF2YfJR+6nMP5e+NTQhUeJPSyOQAbGDCGEHbAl8HN9w==} + /mysql2/3.8.0: + resolution: {integrity: sha512-rC9J/Wy9TCaoQWhk/p4J0Jd+WCDYghniuawi7pheDqhQOEJyDfiWGiWOR3iPgTFJaOK3GezC7dmCki7cP1HFkQ==} engines: {node: '>= 8.0'} dependencies: denque: 2.1.0 @@ -4335,11 +4421,10 @@ packages: /natural-compare-lite/1.4.0: resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} - dev: true + dev: false /natural-compare/1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} - dev: true /negotiator/0.6.3: resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} @@ -4364,10 +4449,9 @@ packages: /node-releases/2.0.14: resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} - dev: true - /nodemon/3.0.2: - resolution: {integrity: sha512-9qIN2LNTrEzpOPBaWHTm4Asy1LxXLSickZStAQ4IZe7zsoIpD/A7LWxhZV3t4Zu352uBcqVnRsDXSMR2Sc3lTA==} + /nodemon/3.0.3: + resolution: {integrity: sha512-7jH/NXbFPxVaMwmBCC2B9F/V6X1VkEdNgx3iu9jji8WxWcvhMWkmhNWhI5077zknOnZnBzba9hZP6bCPJLSReQ==} engines: {node: '>=10'} hasBin: true dependencies: @@ -4381,14 +4465,12 @@ packages: supports-color: 5.5.0 touch: 3.1.0 undefsafe: 2.0.5 - dev: false /nopt/1.0.10: resolution: {integrity: sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg==} hasBin: true dependencies: abbrev: 1.1.1 - dev: false /normalize-path/3.0.0: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} @@ -4574,7 +4656,6 @@ packages: /path-type/4.0.0: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} engines: {node: '>=8'} - dev: true /pg-connection-string/2.6.2: resolution: {integrity: sha512-ch6OwaeaPYcova4kKZ15sbJ2hKb/VP48ZD2gE7i1J+L4MspCtBMAx8nMgz7bksc7IojCIIWuEhHibSMFH8m8oA==} @@ -4582,7 +4663,6 @@ packages: /picocolors/1.0.0: resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} - dev: true /picomatch/2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} @@ -4636,7 +4716,6 @@ packages: /pstree.remy/1.1.8: resolution: {integrity: sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==} - dev: false /punycode/2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} @@ -4663,7 +4742,6 @@ packages: /queue-microtask/1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} - dev: true /range-parser/1.2.1: resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} @@ -4715,7 +4793,6 @@ packages: engines: {node: '>=8.10.0'} dependencies: picomatch: 2.3.1 - dev: false /redis-errors/1.2.0: resolution: {integrity: sha512-1qny3OExCf0UvUV/5wpYKf2YwPcOqXzkwKKSmKHiE6ZMQs5heeE/c8eXK+PNllPvmjgAbfnsbpkGZWy8cBpn9w==} @@ -4788,20 +4865,18 @@ packages: /reusify/1.0.4: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - dev: true /rimraf/3.0.2: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} hasBin: true dependencies: - glob: 7.2.0 + glob: 7.2.3 dev: true /run-parallel/1.2.0: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} dependencies: queue-microtask: 1.2.3 - dev: true /rxjs/7.8.1: resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} @@ -4843,7 +4918,6 @@ packages: /semver/6.3.1: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true - dev: true /semver/7.5.4: resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} @@ -4880,7 +4954,7 @@ packages: engines: {node: '>= 10.0.0'} dev: false - /sequelize-typescript/2.1.6_i6baab5mffyzmg76cx6ztmrr7a: + /sequelize-typescript/2.1.6_6lvmu2bfclegyp2f4w56z33xj4: resolution: {integrity: sha512-Vc2N++3en346RsbGjL3h7tgAl2Y7V+2liYTAOZ8XL0KTw3ahFHsyAUzOwct51n+g70I1TOUDgs06Oh6+XGcFkQ==} engines: {node: '>=10.0.0'} peerDependencies: @@ -4889,14 +4963,12 @@ packages: reflect-metadata: '*' sequelize: '>=6.20.1' dependencies: - '@types/node': 18.19.7 - '@types/validator': 13.11.8 + '@types/node': 18.19.9 glob: 7.2.0 - reflect-metadata: 0.1.14 - sequelize: 6.35.2 + sequelize: 6.35.2_mysql2@3.8.0 dev: false - /sequelize-typescript/2.1.6_jxciia3dgmddhitu74llozjula: + /sequelize-typescript/2.1.6_gi326oqloa4gn4o5bb637hva6y: resolution: {integrity: sha512-Vc2N++3en346RsbGjL3h7tgAl2Y7V+2liYTAOZ8XL0KTw3ahFHsyAUzOwct51n+g70I1TOUDgs06Oh6+XGcFkQ==} engines: {node: '>=10.0.0'} peerDependencies: @@ -4905,9 +4977,11 @@ packages: reflect-metadata: '*' sequelize: '>=6.20.1' dependencies: - '@types/node': 18.19.7 + '@types/node': 18.19.9 + '@types/validator': 13.11.8 glob: 7.2.0 - sequelize: 6.35.2_mysql2@3.7.0 + reflect-metadata: 0.1.14 + sequelize: 6.35.2 dev: false /sequelize/6.35.2: @@ -4963,7 +5037,7 @@ packages: - supports-color dev: false - /sequelize/6.35.2_mysql2@3.7.0: + /sequelize/6.35.2_mysql2@3.8.0: resolution: {integrity: sha512-EdzLaw2kK4/aOnWQ7ed/qh3B6/g+1DvmeXr66RwbcqSm/+QRS9X0LDI5INBibsy4eNJHWIRPo3+QK0zL+IPBHg==} engines: {node: '>=10.0.0'} peerDependencies: @@ -5004,7 +5078,7 @@ packages: lodash: 4.17.21 moment: 2.30.1 moment-timezone: 0.5.44 - mysql2: 3.7.0 + mysql2: 3.8.0 pg-connection-string: 2.6.2 retry-as-promised: 7.0.4 semver: 7.5.4 @@ -5078,7 +5152,6 @@ packages: engines: {node: '>=10'} dependencies: semver: 7.5.4 - dev: false /sisteransi/1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} @@ -5087,7 +5160,6 @@ packages: /slash/3.0.0: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} engines: {node: '>=8'} - dev: true /source-map-support/0.5.13: resolution: {integrity: sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==} @@ -5240,7 +5312,7 @@ packages: engines: {node: '>=8'} dependencies: '@istanbuljs/schema': 0.1.3 - glob: 7.2.0 + glob: 7.2.3 minimatch: 3.1.2 dev: true @@ -5255,7 +5327,6 @@ packages: /to-fast-properties/2.0.0: resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} engines: {node: '>=4'} - dev: true /to-regex-range/5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} @@ -5277,12 +5348,18 @@ packages: hasBin: true dependencies: nopt: 1.0.10 - dev: false /tr46/0.0.3: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} dev: false + /ts-api-utils/1.0.3: + resolution: {integrity: sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==} + engines: {node: '>=16.13.0'} + peerDependencies: + typescript: '>=4.2.0' + dev: false + /ts-api-utils/1.0.3_typescript@5.3.3: resolution: {integrity: sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==} engines: {node: '>=16.13.0'} @@ -5315,7 +5392,7 @@ packages: dependencies: bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 - jest: 29.7.0_@types+node@18.19.7 + jest: 29.7.0_@types+node@18.19.9 jest-util: 29.7.0 json5: 2.2.3 lodash.memoize: 4.1.2 @@ -5325,7 +5402,7 @@ packages: yargs-parser: 21.1.1 dev: true - /ts-node/10.9.2_6p2jia37wfm7i7vql2orj6p3e4: + /ts-node/10.9.2_cn4friaqt4kegyh625i7tshlpe: resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} hasBin: true peerDependencies: @@ -5344,19 +5421,19 @@ packages: '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 18.19.7 + '@types/node': 20.10.8 acorn: 8.11.3 acorn-walk: 8.3.2 arg: 4.1.3 create-require: 1.1.1 diff: 4.0.2 make-error: 1.3.6 - typescript: 4.9.5 + typescript: 5.3.3 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 dev: true - /ts-node/10.9.2_cn4friaqt4kegyh625i7tshlpe: + /ts-node/10.9.2_rqbhrter4kzholngnwsmfzo23m: resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} hasBin: true peerDependencies: @@ -5375,7 +5452,7 @@ packages: '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 20.10.8 + '@types/node': 18.19.9 acorn: 8.11.3 acorn-walk: 8.3.2 arg: 4.1.3 @@ -5387,6 +5464,37 @@ packages: yn: 3.1.1 dev: true + /ts-node/10.9.2_wgzxb44b55snicwjjoggjsysr4: + resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} + hasBin: true + 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 + dependencies: + '@cspotcode/source-map-support': 0.8.1 + '@tsconfig/node10': 1.0.9 + '@tsconfig/node12': 1.0.11 + '@tsconfig/node14': 1.0.3 + '@tsconfig/node16': 1.0.4 + '@types/node': 18.19.9 + acorn: 8.11.3 + acorn-walk: 8.3.2 + arg: 4.1.3 + create-require: 1.1.1 + diff: 4.0.2 + make-error: 1.3.6 + typescript: 4.9.5 + v8-compile-cache-lib: 3.0.1 + yn: 3.1.1 + dev: true + /tsconfig-paths/3.15.0: resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} dependencies: @@ -5398,7 +5506,7 @@ packages: /tslib/1.14.1: resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} - dev: true + dev: false /tslib/2.6.2: resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} @@ -5408,15 +5516,14 @@ packages: engines: {node: '>=0.6.x'} dev: false - /tsutils/3.21.0_typescript@5.3.3: + /tsutils/3.21.0: resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} engines: {node: '>= 6'} 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' dependencies: tslib: 1.14.1 - typescript: 5.3.3 - dev: true + dev: false /type-check/0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} @@ -5520,7 +5627,6 @@ packages: /undefsafe/2.0.5: resolution: {integrity: sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==} - dev: false /undici-types/5.26.5: resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} @@ -5544,7 +5650,6 @@ packages: browserslist: 4.22.2 escalade: 3.1.1 picocolors: 1.0.0 - dev: true /uri-js/4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} @@ -5673,7 +5778,6 @@ packages: /yallist/3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} - dev: true /yallist/4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} diff --git a/common/config/rush/version-policies.json b/common/config/rush/version-policies.json index 9c6a3557..9e0c4625 100644 --- a/common/config/rush/version-policies.json +++ b/common/config/rush/version-policies.json @@ -10,7 +10,7 @@ */ [ { - "policyName": "public-library", + "policyName": "public", "definitionName": "lockStepVersion", "version": "1.0.1-dev.17", "nextBump": "prerelease" diff --git a/packages/apps/artusx-api/.eslintignore b/packages/apps/artusx-api/.eslintignore new file mode 100644 index 00000000..42aa3099 --- /dev/null +++ b/packages/apps/artusx-api/.eslintignore @@ -0,0 +1,4 @@ +node_modules +lib +dist +coverage \ No newline at end of file diff --git a/packages/apps/artusx-api/.eslintrc b/packages/apps/artusx-api/.eslintrc new file mode 100644 index 00000000..b29cd197 --- /dev/null +++ b/packages/apps/artusx-api/.eslintrc @@ -0,0 +1,6 @@ +{ + "extends": ["@artusx/eslint-config"], + "parserOptions": { + "project": "./tsconfig.json" + } +} diff --git a/packages/apps/artusx-api/package.json b/packages/apps/artusx-api/package.json index 5290880d..3dc10777 100644 --- a/packages/apps/artusx-api/package.json +++ b/packages/apps/artusx-api/package.json @@ -4,36 +4,42 @@ "main": "dist/index.js", "bin": "dist/cli/index.js", "scripts": { - "start": "node dist/index.js", - "dev": "npx nodemon src/index.ts", "build": "", + "dev": "npx nodemon src/index.ts", + "lint": "eslint . --ext .ts", + "lint:fix": "eslint . --ext .ts --fix", + "start": "node dist/index.js", "tsc": "rm -rf dist && tsc" }, "dependencies": { "@artus/core": "^2.x", "@artus/pipeline": "^0.2", "@artusx/core": "workspace:*", + "@artusx/plugin-redis": "workspace:*", + "@artusx/plugin-sequelize": "workspace:*", "@artusx/utils": "workspace:*", "cron": "^2.2.0", "dayjs": "^1.11.7", "dotenv": "^16.0.3", "fs-extra": "^11.1.0", - "nodemon": "^3.0.2", + "rate-limiter-flexible": "~4.0.0", "reflect-metadata": "^0.1.13", "sequelize": "^6.28.0", - "sequelize-typescript": "^2.1.5", - "@artusx/plugin-sequelize": "workspace:*", - "@artusx/plugin-redis": "workspace:*", - "rate-limiter-flexible": "~4.0.0" + "sequelize-typescript": "^2.1.5" }, "devDependencies": { - "@artus/tsconfig": "^1.0.1", + "@artusx/eslint-config": "workspace:*", + "@artusx/tsconfig": "workspace:*", "@types/cron": "^2.0.0", "@types/fs-extra": "^11.0.1", "@types/node": "^18.11.17", "@types/validator": "^13.7.12", + "@typescript-eslint/eslint-plugin": "~6.19.1", + "eslint": "~8.56.0", + "eslint-plugin-import": "~2.29.1", + "nodemon": "^3.0.2", "ts-node": "^10.9.1", "tslib": "^2.5.0", - "typescript": "^4.9.4" + "typescript": "~5.3.3" } } diff --git a/packages/apps/artusx-api/src/app/bootstrap.ts b/packages/apps/artusx-api/src/app/bootstrap.ts index 5b3faaab..ae592b02 100644 --- a/packages/apps/artusx-api/src/app/bootstrap.ts +++ b/packages/apps/artusx-api/src/app/bootstrap.ts @@ -1,11 +1,11 @@ import path from 'path'; import { Application } from '@artusx/utils'; -export async function start(options?: any) { +export async function start(options?: object) { const app = await Application.start({ ...options, root: path.resolve(__dirname), - configDir: 'config' + configDir: 'config', }); return app; diff --git a/packages/apps/artusx-api/src/app/config/config.default.ts b/packages/apps/artusx-api/src/app/config/config.default.ts index d9b4db94..2b33a9eb 100644 --- a/packages/apps/artusx-api/src/app/config/config.default.ts +++ b/packages/apps/artusx-api/src/app/config/config.default.ts @@ -10,7 +10,7 @@ dotenv.config(); const rateLimiterOptions = { points: 6, - duration: 1 + duration: 1, }; const rateLimiter = new RateLimiterMemory(rateLimiterOptions); @@ -32,13 +32,13 @@ const basicConfig: ArtusxConfig = { return; } await next(); - } - ] + }, + ], }, artusx: { - middlewares: [checkAuth] - } + middlewares: [checkAuth], + }, }; const redisConfig: RedisConfig = { @@ -46,7 +46,7 @@ const redisConfig: RedisConfig = { port: getEnv('REDIS_PORT', 'number') || 6379, host: getEnv('REDIS_HOST', 'string') || 'localhost', username: process.env.REDIS_USERNAME || '', - password: process.env.REDIS_PASSWORD || '' + password: process.env.REDIS_PASSWORD || '', }; const sequelizeConfig: SequelizeConfig = { @@ -58,11 +58,11 @@ const sequelizeConfig: SequelizeConfig = { dialect: 'mysql', models: [path.join(__dirname, '../model')], force: getEnv('MYSQL_FORCE', 'boolean') || false, - alter: getEnv('MYSQL_ALTER', 'boolean') || false + alter: getEnv('MYSQL_ALTER', 'boolean') || false, }; export default { ...basicConfig, redis: redisConfig, - sequelize: sequelizeConfig -} as Record; + sequelize: sequelizeConfig, +} as Record; diff --git a/packages/apps/artusx-api/src/app/config/plugin.ts b/packages/apps/artusx-api/src/app/config/plugin.ts index 8ffcce7b..e4bfe0b7 100644 --- a/packages/apps/artusx-api/src/app/config/plugin.ts +++ b/packages/apps/artusx-api/src/app/config/plugin.ts @@ -1,16 +1,16 @@ export default { artusx: { enable: true, - package: '@artusx/core' + package: '@artusx/core', }, redis: { enable: true, - package: '@artusx/plugin-redis' + package: '@artusx/plugin-redis', }, sequelize: { enable: true, - package: '@artusx/plugin-sequelize' - } + package: '@artusx/plugin-sequelize', + }, }; diff --git a/packages/apps/artusx-api/src/app/controller/home.ts b/packages/apps/artusx-api/src/app/controller/home.ts index b02985a4..b2400d95 100644 --- a/packages/apps/artusx-api/src/app/controller/home.ts +++ b/packages/apps/artusx-api/src/app/controller/home.ts @@ -7,7 +7,7 @@ import traceTime from '../middleware/traceTime'; @HTTPController() export default class HomeController { @Inject(ArtusInjectEnum.Config) - config: Record; + config: Record; @Middleware([traceTime]) @GET('/') @@ -18,7 +18,7 @@ export default class HomeController { @GET('/get') async getInfo(ctx: ArtusxContext) { ctx.body = { - msg: 'get.' + msg: 'get.', }; } @@ -26,7 +26,7 @@ export default class HomeController { @POST('/post') async postInfo(ctx: ArtusxContext) { ctx.body = { - msg: 'post.' + msg: 'post.', }; } } diff --git a/packages/apps/artusx-api/src/app/model/administrator.ts b/packages/apps/artusx-api/src/app/model/administrator.ts index cefd95ac..c9a43741 100644 --- a/packages/apps/artusx-api/src/app/model/administrator.ts +++ b/packages/apps/artusx-api/src/app/model/administrator.ts @@ -3,13 +3,13 @@ import { Model, Table, Column, DataType, CreatedAt, UpdatedAt } from 'sequelize- @Table({ tableName: 'administrators', timestamps: true, - paranoid: false + paranoid: false, }) export class AdministratorModel extends Model { @Column({ type: DataType.INTEGER, primaryKey: true, - autoIncrement: true + autoIncrement: true, }) id: number; diff --git a/packages/apps/artusx-api/src/app/service/administrator.ts b/packages/apps/artusx-api/src/app/service/administrator.ts index bba7138d..8915ac19 100644 --- a/packages/apps/artusx-api/src/app/service/administrator.ts +++ b/packages/apps/artusx-api/src/app/service/administrator.ts @@ -25,8 +25,8 @@ export default class AdministratorService { async checkAdministrator(chatId: string) { const administrator = await this.administrator.findOne({ where: { - user_id: chatId - } + user_id: chatId, + }, }); return administrator; diff --git a/packages/apps/artusx-api/src/app/util.ts b/packages/apps/artusx-api/src/app/util.ts index 632fa4de..9819cd3c 100644 --- a/packages/apps/artusx-api/src/app/util.ts +++ b/packages/apps/artusx-api/src/app/util.ts @@ -25,11 +25,11 @@ export const getProxy = () => { ip: proxy_ip, port: parseInt(proxy_port), socksType: parseInt(proxy_socket_type), - proxyString + proxyString, }; }; -export const getEnv = (key: string, type?: string): T => { +export const getEnv = (key: string, type?: string): T => { const _env = process.env[key] || ''; let target: unknown; diff --git a/packages/apps/artusx-api/tsconfig.json b/packages/apps/artusx-api/tsconfig.json index 8b822701..3677a2b6 100644 --- a/packages/apps/artusx-api/tsconfig.json +++ b/packages/apps/artusx-api/tsconfig.json @@ -1,11 +1,7 @@ { - "extends": "@artus/tsconfig", + "extends": "@artusx/tsconfig", "compilerOptions": { "baseUrl": ".", - "strictNullChecks": true, - "resolveJsonModule": true, - "module": "NodeNext", - "moduleResolution": "NodeNext", "outDir": "dist" }, "include": ["src/**/*.ts", "src/**/*.json"] diff --git a/packages/apps/artusx-koa/.eslintignore b/packages/apps/artusx-koa/.eslintignore index f3bd2c65..42aa3099 100644 --- a/packages/apps/artusx-koa/.eslintignore +++ b/packages/apps/artusx-koa/.eslintignore @@ -1,3 +1,4 @@ node_modules lib +dist coverage \ No newline at end of file diff --git a/packages/apps/artusx-koa/.eslintrc b/packages/apps/artusx-koa/.eslintrc index 2b6939a1..b29cd197 100644 --- a/packages/apps/artusx-koa/.eslintrc +++ b/packages/apps/artusx-koa/.eslintrc @@ -1,32 +1,6 @@ { - "extends": [ - "@artus/eslint-config-artus/typescript", - "plugin:import/recommended", - "plugin:import/typescript" - ], + "extends": ["@artusx/eslint-config"], "parserOptions": { "project": "./tsconfig.json" - }, - "rules": { - "@typescript-eslint/ban-types": "off", - "@typescript-eslint/no-useless-constructor": "off", - "no-unused-vars": "off", - "import/no-unresolved": "off", - "@typescript-eslint/no-unused-vars": ["error", { "varsIgnorePattern": "^_", "argsIgnorePattern": "^_" }] - }, - "overrides": [ - { - "files": ["test/**/*"], - "rules": { - "@typescript-eslint/no-var-requires": "off" - } - } - ], - "settings": { - "import/resolver": { - "node": { - "extensions": [".js", ".ts"] - } - } } } diff --git a/packages/apps/artusx-koa/package.json b/packages/apps/artusx-koa/package.json index 6ba682bd..321b213e 100644 --- a/packages/apps/artusx-koa/package.json +++ b/packages/apps/artusx-koa/package.json @@ -8,7 +8,9 @@ "ci": "npm run lint", "dev": "npx nodemon src/index.ts", "lint": "eslint . --ext .ts", - "lint:fix": "eslint . --ext .ts --fix" + "lint:fix": "eslint . --ext .ts --fix", + "start": "node dist/index.js", + "tsc": "rm -rf dist && tsc" }, "dependencies": { "@artus/core": "^2.x", @@ -18,8 +20,8 @@ "reflect-metadata": "^0.1.13" }, "devDependencies": { - "@artus/eslint-config-artus": "~0.0.1", - "@artus/tsconfig": "~1.0.1", + "@artusx/eslint-config": "workspace:*", + "@artusx/tsconfig": "workspace:*", "@types/node": "~20.10.6", "@typescript-eslint/eslint-plugin": "~6.19.1", "eslint": "~8.56.0", diff --git a/packages/apps/artusx-koa/src/bootstrap.ts b/packages/apps/artusx-koa/src/bootstrap.ts index 92a3a1f3..8e8566b7 100644 --- a/packages/apps/artusx-koa/src/bootstrap.ts +++ b/packages/apps/artusx-koa/src/bootstrap.ts @@ -4,7 +4,7 @@ import { Application } from '@artusx/utils'; export const main = async () => { const app = await Application.start({ root: path.resolve(__dirname), - configDir: 'config' + configDir: 'config', }); return app; diff --git a/packages/apps/artusx-koa/src/config/plugin.ts b/packages/apps/artusx-koa/src/config/plugin.ts index 2f8ffcee..8bd19a9f 100644 --- a/packages/apps/artusx-koa/src/config/plugin.ts +++ b/packages/apps/artusx-koa/src/config/plugin.ts @@ -1,6 +1,6 @@ export default { artusx: { enable: true, - package: '@artusx/core' - } + package: '@artusx/core', + }, }; diff --git a/packages/apps/artusx-koa/src/module-info/api.controller.ts b/packages/apps/artusx-koa/src/module-info/api.controller.ts index 58d6d8af..ed55ffd4 100644 --- a/packages/apps/artusx-koa/src/module-info/api.controller.ts +++ b/packages/apps/artusx-koa/src/module-info/api.controller.ts @@ -6,7 +6,7 @@ import APIService from './api.service'; @HTTPController('/api') export default class APIController { @Inject(ArtusInjectEnum.Config) - config: Record; + config: Record; @Inject(APIService) apiService: APIService; diff --git a/packages/apps/artusx-koa/src/module-info/api.service.ts b/packages/apps/artusx-koa/src/module-info/api.service.ts index 3f1d9e29..b85ae3c6 100644 --- a/packages/apps/artusx-koa/src/module-info/api.service.ts +++ b/packages/apps/artusx-koa/src/module-info/api.service.ts @@ -8,8 +8,8 @@ export default class APIService { async mockApi() { return { data: { - name: 'artusx' - } + name: 'artusx', + }, }; } } diff --git a/packages/apps/artusx-koa/tsconfig.json b/packages/apps/artusx-koa/tsconfig.json index 538e5f26..962a6d3e 100644 --- a/packages/apps/artusx-koa/tsconfig.json +++ b/packages/apps/artusx-koa/tsconfig.json @@ -1,11 +1,7 @@ { - "extends": "@artus/tsconfig", + "extends": "@artusx/tsconfig", "compilerOptions": { "baseUrl": ".", - "strictNullChecks": true, - "resolveJsonModule": true, - "module": "NodeNext", - "moduleResolution": "NodeNext", "outDir": "dist" }, "include": ["src/**/*.ts", "src/**/*.json", "test/**/*.ts"] diff --git a/rush.json b/rush.json index 52fd8c91..0e0cfbad 100644 --- a/rush.json +++ b/rush.json @@ -102,7 +102,7 @@ * To remove these restrictions, you could set projectFolderMinDepth=1 * and set projectFolderMaxDepth to a large number. */ - "projectFolderMinDepth": 3, + "projectFolderMinDepth": 2, "projectFolderMaxDepth": 3, /** @@ -331,6 +331,7 @@ * ".", and "@" characters. */ // "allowedProjectTags": [ "tools", "frontend-team", "1.0.0-release" ], + "allowedProjectTags": ["artus-plugin", "artus-framework", "artus-utils", "webapp", "tools"], /** * (Required) This is the inventory of projects to be managed by Rush. @@ -347,35 +348,35 @@ "projectFolder": "packages/plugins/redis", "tags": ["artus-plugin"], "shouldPublish": true, - "versionPolicyName": "public-library" + "versionPolicyName": "public" }, { "packageName": "@artusx/plugin-sequelize", "projectFolder": "packages/plugins/sequelize", "tags": ["artus-plugin"], "shouldPublish": true, - "versionPolicyName": "public-library" + "versionPolicyName": "public" }, { "packageName": "@artusx/plugin-nest", "projectFolder": "packages/plugins/nest", "tags": ["artus-plugin"], "shouldPublish": true, - "versionPolicyName": "public-library" + "versionPolicyName": "public" }, { "packageName": "@artusx/plugin-express", "projectFolder": "packages/plugins/express", "tags": ["artus-plugin"], "shouldPublish": true, - "versionPolicyName": "public-library" + "versionPolicyName": "public" }, { "packageName": "@artusx/plugin-koa", "projectFolder": "packages/plugins/koa", "tags": ["artus-plugin"], "shouldPublish": true, - "versionPolicyName": "public-library" + "versionPolicyName": "public" }, // framework / utils @@ -384,14 +385,14 @@ "projectFolder": "packages/libs/core", "tags": ["artus-framework"], "shouldPublish": true, - "versionPolicyName": "public-library" + "versionPolicyName": "public" }, { "packageName": "@artusx/utils", "projectFolder": "packages/libs/utils", - "tags": ["artus-app"], + "tags": ["artus-utils"], "shouldPublish": true, - "versionPolicyName": "public-library" + "versionPolicyName": "public" }, // application @@ -414,6 +415,18 @@ "packageName": "artusx-api", "projectFolder": "packages/apps/artusx-api", "tags": ["webapp"] + }, + + // toolchain + { + "packageName": "@artusx/eslint-config", + "projectFolder": "toolchains/eslint-config", + "tags": ["tools"] + }, + { + "packageName": "@artusx/tsconfig", + "projectFolder": "toolchains/tsconfig", + "tags": ["tools"] } // { // /** diff --git a/toolchains/eslint-config/config.js b/toolchains/eslint-config/config.js new file mode 100644 index 00000000..be5756cd --- /dev/null +++ b/toolchains/eslint-config/config.js @@ -0,0 +1,32 @@ +module.exports = { + extends: [ + '@artus/eslint-config-artus/typescript', + 'eslint:recommended', + 'plugin:import/recommended', + 'plugin:import/typescript', + 'plugin:@typescript-eslint/recommended', + ], + parser: '@typescript-eslint/parser', + rules: { + '@typescript-eslint/ban-types': 'off', + '@typescript-eslint/no-useless-constructor': 'off', + 'no-unused-vars': 'off', + 'import/no-unresolved': 'off', + '@typescript-eslint/no-unused-vars': ['error', { varsIgnorePattern: '^_', argsIgnorePattern: '^_' }], + }, + overrides: [ + { + files: ['test/**/*'], + rules: { + '@typescript-eslint/no-var-requires': 'off', + }, + }, + ], + settings: { + 'import/resolver': { + node: { + extensions: ['.js', '.ts'], + }, + }, + }, +}; diff --git a/toolchains/eslint-config/index.js b/toolchains/eslint-config/index.js new file mode 100644 index 00000000..67f30294 --- /dev/null +++ b/toolchains/eslint-config/index.js @@ -0,0 +1,3 @@ +module.exports = { + extends: ['./config.js'] +}; diff --git a/toolchains/eslint-config/package.json b/toolchains/eslint-config/package.json new file mode 100644 index 00000000..0718458d --- /dev/null +++ b/toolchains/eslint-config/package.json @@ -0,0 +1,24 @@ +{ + "name": "@artusx/eslint-config", + "version": "1.0.0", + "description": "Shared eslint rules", + "main": "index.js", + "scripts": { + "build": "" + }, + "dependencies": { + "@artus/eslint-config-artus": "~0.0.1", + "@typescript-eslint/eslint-plugin": "~6.19.1", + "@typescript-eslint/parser": "~6.19.1", + "eslint-config-prettier": "^7.1.0" + }, + "peerDependencies": { + "eslint": "~8.56.0", + "typescript": "^5.3.3" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } +} diff --git a/toolchains/tsconfig/package.json b/toolchains/tsconfig/package.json new file mode 100644 index 00000000..dc62f29e --- /dev/null +++ b/toolchains/tsconfig/package.json @@ -0,0 +1,12 @@ +{ + "name": "@artusx/tsconfig", + "version": "1.0.0", + "description": "Shared tsconfig", + "main": "tsconfig.json", + "scripts": { + "build": "" + }, + "dependencies": { + "@artus/tsconfig": "~1.0.1" + } +} diff --git a/toolchains/tsconfig/tsconfig.json b/toolchains/tsconfig/tsconfig.json new file mode 100644 index 00000000..94ad73b3 --- /dev/null +++ b/toolchains/tsconfig/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "@artus/tsconfig", + "compilerOptions": { + "baseUrl": ".", + "strictNullChecks": true, + "resolveJsonModule": true, + "module": "NodeNext", + "moduleResolution": "NodeNext" + } +}