From ff1deff83c2be9f909076c4c4cfff8a41dabc216 Mon Sep 17 00:00:00 2001 From: Wanda Gusdya Date: Wed, 4 Jan 2023 09:23:05 +0700 Subject: [PATCH] first commit --- .env | 1 + .eslintrc.js | 25 + .gitignore | 35 + .prettierrc | 4 + README.md | 73 + client/images/Breeze.png | Bin 0 -> 7913 bytes client/images/Breezy_and_Dry.png | Bin 0 -> 12025 bytes client/images/Breezy_and_Mostly_Cloudy.png | Bin 0 -> 9170 bytes client/images/Breezy_and_Overcast.png | Bin 0 -> 7228 bytes client/images/Breezy_and_Partly_Cloudy.png | Bin 0 -> 9869 bytes client/images/Clear.png | Bin 0 -> 9718 bytes .../Dangerously_Windy_and_Partly_Cloudy.png | Bin 0 -> 11157 bytes client/images/Drizzle.png | Bin 0 -> 6892 bytes client/images/Dry.png | Bin 0 -> 12151 bytes client/images/Dry_and_Mostly_Cloudy.png | Bin 0 -> 12023 bytes client/images/Dry_and_Partly_Cloudy.png | Bin 0 -> 10919 bytes client/images/Foggy.png | Bin 0 -> 9653 bytes client/images/Humid_and_Mostly_Cloudy.png | Bin 0 -> 9471 bytes client/images/Humid_and_Partly_Cloudy.png | Bin 0 -> 10447 bytes client/images/Light_Rain.png | Bin 0 -> 8998 bytes client/images/Mostly_Cloudy.png | Bin 0 -> 8177 bytes client/images/Overcast.png | Bin 0 -> 6274 bytes client/images/Partly_Cloudy.png | Bin 0 -> 9126 bytes client/images/Rain.png | Bin 0 -> 9209 bytes client/images/Windy.png | Bin 0 -> 9654 bytes client/images/Windy_and_Dry.png | Bin 0 -> 12041 bytes client/images/Windy_and_Mostly_Cloudy.png | Bin 0 -> 8903 bytes client/images/Windy_and_Overcast.png | Bin 0 -> 6957 bytes client/images/Windy_and_Partly_Cloudy.png | Bin 0 -> 9709 bytes nest-cli.json | 8 + package-lock.json | 10518 ++++++++++++++++ package.json | 78 + src/app.controller.spec.ts | 22 + src/app.controller.ts | 12 + src/app.module.ts | 31 + src/app.service.ts | 8 + src/main.ts | 16 + .../dto/create-notification.dto.ts | 1 + .../dto/update-notification.dto.ts | 6 + .../entities/notification.entity.ts | 1 + src/notification/notification.gateway.spec.ts | 19 + src/notification/notification.gateway.ts | 41 + src/notification/notification.module.ts | 8 + src/notification/notification.service.spec.ts | 18 + src/notification/notification.service.ts | 26 + src/weather/dto/create-weather.dto.ts | 1 + src/weather/dto/update-weather.dto.ts | 4 + src/weather/entities/weather.entity.ts | 1 + src/weather/schemas/weather.schema.ts | 48 + src/weather/weather.collection-properties.ts | 12 + src/weather/weather.controller.spec.ts | 20 + src/weather/weather.controller.ts | 63 + src/weather/weather.module.ts | 14 + src/weather/weather.service.spec.ts | 18 + src/weather/weather.service.ts | 51 + tsconfig.build.json | 4 + tsconfig.json | 21 + 57 files changed, 11208 insertions(+) create mode 100644 .env create mode 100644 .eslintrc.js create mode 100644 .gitignore create mode 100644 .prettierrc create mode 100644 README.md create mode 100644 client/images/Breeze.png create mode 100644 client/images/Breezy_and_Dry.png create mode 100644 client/images/Breezy_and_Mostly_Cloudy.png create mode 100644 client/images/Breezy_and_Overcast.png create mode 100644 client/images/Breezy_and_Partly_Cloudy.png create mode 100644 client/images/Clear.png create mode 100644 client/images/Dangerously_Windy_and_Partly_Cloudy.png create mode 100644 client/images/Drizzle.png create mode 100644 client/images/Dry.png create mode 100644 client/images/Dry_and_Mostly_Cloudy.png create mode 100644 client/images/Dry_and_Partly_Cloudy.png create mode 100644 client/images/Foggy.png create mode 100644 client/images/Humid_and_Mostly_Cloudy.png create mode 100644 client/images/Humid_and_Partly_Cloudy.png create mode 100644 client/images/Light_Rain.png create mode 100644 client/images/Mostly_Cloudy.png create mode 100644 client/images/Overcast.png create mode 100644 client/images/Partly_Cloudy.png create mode 100644 client/images/Rain.png create mode 100644 client/images/Windy.png create mode 100644 client/images/Windy_and_Dry.png create mode 100644 client/images/Windy_and_Mostly_Cloudy.png create mode 100644 client/images/Windy_and_Overcast.png create mode 100644 client/images/Windy_and_Partly_Cloudy.png create mode 100644 nest-cli.json create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 src/app.controller.spec.ts create mode 100644 src/app.controller.ts create mode 100644 src/app.module.ts create mode 100644 src/app.service.ts create mode 100644 src/main.ts create mode 100644 src/notification/dto/create-notification.dto.ts create mode 100644 src/notification/dto/update-notification.dto.ts create mode 100644 src/notification/entities/notification.entity.ts create mode 100644 src/notification/notification.gateway.spec.ts create mode 100644 src/notification/notification.gateway.ts create mode 100644 src/notification/notification.module.ts create mode 100644 src/notification/notification.service.spec.ts create mode 100644 src/notification/notification.service.ts create mode 100644 src/weather/dto/create-weather.dto.ts create mode 100644 src/weather/dto/update-weather.dto.ts create mode 100644 src/weather/entities/weather.entity.ts create mode 100644 src/weather/schemas/weather.schema.ts create mode 100644 src/weather/weather.collection-properties.ts create mode 100644 src/weather/weather.controller.spec.ts create mode 100644 src/weather/weather.controller.ts create mode 100644 src/weather/weather.module.ts create mode 100644 src/weather/weather.service.spec.ts create mode 100644 src/weather/weather.service.ts create mode 100644 tsconfig.build.json create mode 100644 tsconfig.json diff --git a/.env b/.env new file mode 100644 index 0000000..198fa43 --- /dev/null +++ b/.env @@ -0,0 +1 @@ +DATABASE_URL=mongodb://192.168.0.108/weather \ No newline at end of file diff --git a/.eslintrc.js b/.eslintrc.js new file mode 100644 index 0000000..259de13 --- /dev/null +++ b/.eslintrc.js @@ -0,0 +1,25 @@ +module.exports = { + parser: '@typescript-eslint/parser', + parserOptions: { + project: 'tsconfig.json', + tsconfigRootDir: __dirname, + sourceType: 'module', + }, + plugins: ['@typescript-eslint/eslint-plugin'], + extends: [ + 'plugin:@typescript-eslint/recommended', + 'plugin:prettier/recommended', + ], + root: true, + env: { + node: true, + jest: true, + }, + ignorePatterns: ['.eslintrc.js'], + rules: { + '@typescript-eslint/interface-name-prefix': 'off', + '@typescript-eslint/explicit-function-return-type': 'off', + '@typescript-eslint/explicit-module-boundary-types': 'off', + '@typescript-eslint/no-explicit-any': 'off', + }, +}; diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..22f55ad --- /dev/null +++ b/.gitignore @@ -0,0 +1,35 @@ +# compiled output +/dist +/node_modules + +# Logs +logs +*.log +npm-debug.log* +pnpm-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/.prettierrc b/.prettierrc new file mode 100644 index 0000000..dcb7279 --- /dev/null +++ b/.prettierrc @@ -0,0 +1,4 @@ +{ + "singleQuote": true, + "trailingComma": "all" +} \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..00a13b1 --- /dev/null +++ b/README.md @@ -0,0 +1,73 @@ +

+ Nest Logo +

+ +[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456 +[circleci-url]: https://circleci.com/gh/nestjs/nest + +

A progressive Node.js framework for building efficient and scalable server-side applications.

+

+NPM Version +Package License +NPM Downloads +CircleCI +Coverage +Discord +Backers on Open Collective +Sponsors on Open Collective + + Support us + +

+ + +## Description + +[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository. + +## Installation + +```bash +$ npm install +``` + +## Running the app + +```bash +# development +$ npm run start + +# watch mode +$ npm run start:dev + +# production mode +$ npm run start:prod +``` + +## Test + +```bash +# unit tests +$ npm run test + +# e2e tests +$ npm run test:e2e + +# test coverage +$ npm run test:cov +``` + +## Support + +Nest is an MIT-licensed open source project. It can grow thanks to the sponsors and support by the amazing backers. If you'd like to join them, please [read more here](https://docs.nestjs.com/support). + +## Stay in touch + +- Author - [Kamil Myƛliwiec](https://kamilmysliwiec.com) +- Website - [https://nestjs.com](https://nestjs.com/) +- Twitter - [@nestframework](https://twitter.com/nestframework) + +## License + +Nest is [MIT licensed](LICENSE). diff --git a/client/images/Breeze.png b/client/images/Breeze.png new file mode 100644 index 0000000000000000000000000000000000000000..0edcb0f5a2d8f829bb2f62c4b70e71e5808fb60b GIT binary patch literal 7913 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 M1r7OXS<8t30V*&lL;wH) literal 0 HcmV?d00001 diff --git a/client/images/Breezy_and_Dry.png b/client/images/Breezy_and_Dry.png new file mode 100644 index 0000000000000000000000000000000000000000..1383fa030fd57f037e9c87c2cfe62170db037ffb GIT binary patch literal 12025 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 literal 0 HcmV?d00001 diff --git a/client/images/Breezy_and_Mostly_Cloudy.png b/client/images/Breezy_and_Mostly_Cloudy.png new file mode 100644 index 0000000000000000000000000000000000000000..175019c04bf21d91d703ef92d8cdb3149de2815a GIT binary patch literal 9170 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 Tcu(AkbO1#;HQ6$06aW7Kx90l= literal 0 HcmV?d00001 diff --git a/client/images/Breezy_and_Overcast.png b/client/images/Breezy_and_Overcast.png new file mode 100644 index 0000000000000000000000000000000000000000..f8bacd68ca0fe84c4bd59526e098af49ee369227 GIT binary patch literal 7228 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 NrkXCgQq?Nte*kfE|Iz>e literal 0 HcmV?d00001 diff --git a/client/images/Breezy_and_Partly_Cloudy.png b/client/images/Breezy_and_Partly_Cloudy.png new file mode 100644 index 0000000000000000000000000000000000000000..512ee94585706d2de601c46c06f93da0e9264675 GIT binary patch literal 9869 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%0DWIDab3hI^GfCtzwWlACEngOVV+WLRBk+^6jv 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 literal 0 HcmV?d00001 diff --git a/client/images/Dangerously_Windy_and_Partly_Cloudy.png b/client/images/Dangerously_Windy_and_Partly_Cloudy.png new file mode 100644 index 0000000000000000000000000000000000000000..e760d66e9284985767a05e4e5603fb059de52a0e GIT binary patch literal 11157 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 X?xvR+a-j?P`wGz3&{r>2wTbu-UC#uW literal 0 HcmV?d00001 diff --git a/client/images/Dry.png b/client/images/Dry.png new file mode 100644 index 0000000000000000000000000000000000000000..1583407825c81a9ef84459a9f18bf534c14276a1 GIT binary patch literal 12151 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 NIVmN{3UOoq{|EZJ@FM^K literal 0 HcmV?d00001 diff --git a/client/images/Dry_and_Mostly_Cloudy.png b/client/images/Dry_and_Mostly_Cloudy.png new file mode 100644 index 0000000000000000000000000000000000000000..11ab9e67c4f0471e39279a48dc2c9a26797e39d0 GIT binary patch literal 12023 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
XTvA<=QV!F4 z=Z$Z$(4dE6wPzP0E^HKvPy;z+)gB?7Z9UB+D2L z{<}Mcf#sq**NAHhv2tCQG;*?7`DSUSeSD~aX7r-Zj&!g4Pan(yw*bv^G5#1>5)>W{ z{mZ&UwCfTLSlzYj%u((^Su*AJfNL8aqTcbZe@@j4EmkWIV>~xus69FKb87)eX6~N^%>S70mN#ZcVD-YgW}eg z%Ot;PMGg^x`%ow`p)CrKB1)}&^US;_GWgv1cGck1bKIR_y{H<;0a|xYgOa5LBV4r9 zg|+A4(CpvOK#l_XpQ`p~zS-6EpNZ^C>G}Jj5mx-Jh#61VsL^&OFg`KIXJ*y?05wV> z1C!$#o5nbGCG@1<{8|eT9Wl1MLZ{()CptRRd;c(Vq(2`+!(A3OL#v6w@ML| zg5E7W=OU^oiAeH>gd6CbKu{c=l9ojqRKA!wBt&2d1|WE;MHWC$JsH{Jk=c!fg3_73 zZejsNfM~UxuOHzV8~Ib#%Uud>43CX1P%ohg zM;St@AeWDUn|h6ow0n+2nZf{x!2m6wCs8C$38AyRp-iHc&aH)Y9$#T92VrO|Pk4$* ze-KqJ+bgLHM~x7${^j%qBZGQe2VGdWKn0O77LG?rad?#|IOD&{`DNHYphuY+%RZ4Z+YF!9tsn;v!cz^wS`8yg`i3*`91 z-Y-#GqeKFsfrNUj5oPm60TY(mMV<$_cvJcl6WI$VAv8dSrK!{;YUj-u%2&ClzVVu!ffF;hKJNcU9k=4|1!zK*m2ELX)&0Lg&a2H3GQN4d`4(4}2@0MBb#7BV|+{ZB{ee1vLX?jK+@#5YAJpK+A7_97U1!4Ig zenz=OO^>3cF`{~<^Ii5Z79OIZ83(eL#bQXhX%?dg!puYb(Y89t-uPlAQrr85FrbP% z1~xc!8^d^SWFTe}U3d6hWJoY3*`*NtpE4l`Awg_0*mYbVbMZKA$45OvhASeL%2g!u zD}~TfdFW**(0}kfI<>Te>RAy5D!QU1x*&0&ypJHS*d|Zt2?BDffQ(x8sFhC{)~5%O zjo-5Ma`v;YktX+*kR#Tpz|f1p=PNI*cU5o*QE#2|Sfp^wG&OTzuyF_L-vbSTG_|vF zphr4KgHj{n1mi!@aSIOwx%ndV`}aUv;8lUSEFjQ~`7Tr+p>;$_rCWlHSi=JQT+x}D zw%_Tb{~m||(*taFcr0vz;LzjDXNkG0KuLxJ)U5JBoo$GIi^FlFP46uc$UtsCb~xl8 zuy#ljm0KE)Vt{xcDpYFax8|QnL(IsU?)|haOITH-{F7wNOe6D(MG$6`pn$X0t_lz1 z)`AncsgxQLM(~?Zli=m4jQ2f}U$+F!h2ON}Y$!qyW>J92eT%fU^+yBO^WQ{@khKjn znHSZ`N$z+-pbWf5C|mSG9LlV6kFtY%lG?YMLn8`UlCCjTGoDhG@oy0{im~n*uNtU{ zAKp+h!lDNV9w-CODoqScJhN#OatN(t0b0D`=Kj-)X3kv%En&DUgtp6Q)1uG5t2R@H zDq{3?$9e7(6TVbvCyoy0;0M{H$v%(U9kENO*O38DG#40B6?Y3mh`66QA2g5cvFiK& zWTXeUCTSEQp7f08sx(D7UQEc!{-)6ElP?+5B*3G}@POi(1dZRf`Z)a7h65wlZNX7M z>wpg%o+lhFutSF=TY`c{JRQfC5&C%vQ(Lh>9h!TnZ~pp{@%o;JbR*GwB!+!-PFb?* zyDT7qhw8E~>Ti~hq@XJ2eQZhsxB~FJyOc!l2+sj9O|Ny(R>9g!PD6<)E1B!jUi-91NA_O2P|AsXtQHmk_a%r;t$8^XTdb%STHY z3IRQG+3-{FPbBp65yVERcP77-hC?6y|9^I?w~|Kjwn_cxe)EqcJD?<|CR-tG7W)4H DDRwN6 literal 0 HcmV?d00001 diff --git a/client/images/Dry_and_Partly_Cloudy.png b/client/images/Dry_and_Partly_Cloudy.png new file mode 100644 index 0000000000000000000000000000000000000000..1121a7915d41d6b824178f5cab9e9dc0e7312ab8 GIT binary patch literal 10919 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 literal 0 HcmV?d00001 diff --git a/client/images/Foggy.png b/client/images/Foggy.png new file mode 100644 index 0000000000000000000000000000000000000000..dd9522c9c98f87f221c710cb4e69ee8bd6f68b9f GIT binary patch literal 9653 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�tMhh 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 Ae*gdg literal 0 HcmV?d00001 diff --git a/client/images/Humid_and_Mostly_Cloudy.png b/client/images/Humid_and_Mostly_Cloudy.png new file mode 100644 index 0000000000000000000000000000000000000000..9fcd7c52c426317607a9e1612bb956f1bf324c3e GIT binary patch literal 9471 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 F{{^U7EqMR{ literal 0 HcmV?d00001 diff --git a/client/images/Light_Rain.png b/client/images/Light_Rain.png new file mode 100644 index 0000000000000000000000000000000000000000..4d103546ae8cc5f07012b851d0c61020d913dd21 GIT binary patch literal 8998 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 C!KwQI literal 0 HcmV?d00001 diff --git a/client/images/Mostly_Cloudy.png b/client/images/Mostly_Cloudy.png new file mode 100644 index 0000000000000000000000000000000000000000..e6a72756b316cb83a7c632648fadc1b73ec1c2ea GIT binary patch literal 8177 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 Dd%Fm{ literal 0 HcmV?d00001 diff --git a/client/images/Overcast.png b/client/images/Overcast.png new file mode 100644 index 0000000000000000000000000000000000000000..d275b6371a1a144b69641486aa3f690be7be8146 GIT binary patch literal 6274 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 a7m&4g(zDS1nhjfc11QO<$d*c*zWXoVlm)^7 literal 0 HcmV?d00001 diff --git a/client/images/Rain.png b/client/images/Rain.png new file mode 100644 index 0000000000000000000000000000000000000000..b104323e9df3524164a991cc01bea851d8c730b9 GIT binary patch literal 9209 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 literal 0 HcmV?d00001 diff --git a/client/images/Windy.png b/client/images/Windy.png new file mode 100644 index 0000000000000000000000000000000000000000..8abc83bd40a0aee404c6bc70865a7c734794f6cb GIT binary patch literal 9654 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 B;cfr` literal 0 HcmV?d00001 diff --git a/client/images/Windy_and_Dry.png b/client/images/Windy_and_Dry.png new file mode 100644 index 0000000000000000000000000000000000000000..a5079696466010395326af6ac97116f79e0416ab GIT binary patch literal 12041 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 aBU()0c#z97mG@I+3ZNvXCR-tm2>KuXx`3_# literal 0 HcmV?d00001 diff --git a/client/images/Windy_and_Overcast.png b/client/images/Windy_and_Overcast.png new file mode 100644 index 0000000000000000000000000000000000000000..954fb541c4d4bb2590e1f6536619d61fcd38e262 GIT binary patch literal 6957 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 JE@>L@zW}5p`6d7W literal 0 HcmV?d00001 diff --git a/nest-cli.json b/nest-cli.json new file mode 100644 index 0000000..f9aa683 --- /dev/null +++ b/nest-cli.json @@ -0,0 +1,8 @@ +{ + "$schema": "https://json.schemastore.org/nest-cli", + "collection": "@nestjs/schematics", + "sourceRoot": "src", + "compilerOptions": { + "deleteOutDir": true + } +} diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..8571079 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,10518 @@ +{ + "name": "weather-api", + "version": "0.0.1", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "weather-api", + "version": "0.0.1", + "license": "UNLICENSED", + "dependencies": { + "@fastify/static": "^6.6.0", + "@forlagshuset/nestjs-mongoose-paginate": "^1.2.6", + "@nestjs/common": "^9.0.0", + "@nestjs/config": "^2.2.0", + "@nestjs/core": "^9.0.0", + "@nestjs/mapped-types": "*", + "@nestjs/mongoose": "^9.2.1", + "@nestjs/platform-express": "^9.0.0", + "@nestjs/platform-fastify": "^9.2.1", + "@nestjs/serve-static": "^3.0.0", + "@nestjs/websockets": "^9.2.1", + "mongoose": "^6.8.2", + "reflect-metadata": "^0.1.13", + "rxjs": "^7.2.0" + }, + "devDependencies": { + "@nestjs/cli": "^9.0.0", + "@nestjs/schematics": "^9.0.0", + "@nestjs/testing": "^9.0.0", + "@types/express": "^4.17.13", + "@types/jest": "29.2.4", + "@types/node": "18.11.18", + "@types/supertest": "^2.0.11", + "@typescript-eslint/eslint-plugin": "^5.0.0", + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^8.0.1", + "eslint-config-prettier": "^8.3.0", + "eslint-plugin-prettier": "^4.0.0", + "jest": "29.3.1", + "prettier": "^2.3.2", + "source-map-support": "^0.5.20", + "supertest": "^6.1.3", + "ts-jest": "29.0.3", + "ts-loader": "^9.2.3", + "ts-node": "^10.0.0", + "tsconfig-paths": "4.1.1", + "typescript": "^4.7.4" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@angular-devkit/core": { + "version": "15.0.4", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-15.0.4.tgz", + "integrity": "sha512-4ITpRAevd652SxB+qNesIQ9qfbm7wT5UBU5kJOPPwGL77I21g8CQpkmV1n5VSacPvC9Zbz90feOWexf7w7JzcA==", + "dev": true, + "dependencies": { + "ajv": "8.11.0", + "ajv-formats": "2.1.1", + "jsonc-parser": "3.2.0", + "rxjs": "6.6.7", + "source-map": "0.7.4" + }, + "engines": { + "node": "^14.20.0 || ^16.13.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + }, + "peerDependencies": { + "chokidar": "^3.5.2" + }, + "peerDependenciesMeta": { + "chokidar": { + "optional": true + } + } + }, + "node_modules/@angular-devkit/core/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@angular-devkit/core/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@angular-devkit/schematics": { + "version": "15.0.4", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-15.0.4.tgz", + "integrity": "sha512-/gXiLFS0+xFdx6wPoBpe/c6/K9I5edMpaASqPf4XheKtrsSvL+qTlIi3nsbfItzOiDXbaBmlbxGfkMHz/yg0Ig==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "15.0.4", + "jsonc-parser": "3.2.0", + "magic-string": "0.26.7", + "ora": "5.4.1", + "rxjs": "6.6.7" + }, + "engines": { + "node": "^14.20.0 || ^16.13.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/schematics-cli": { + "version": "15.0.4", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics-cli/-/schematics-cli-15.0.4.tgz", + "integrity": "sha512-rEzkpjiQcJqCgbZ1Ns8jn1BL4724jcj+YFS7Qw5d4v6yQYA8iSLz12HDTH0TiNEv7u5S55fYuRz2QreI0QUT8A==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "15.0.4", + "@angular-devkit/schematics": "15.0.4", + "ansi-colors": "4.1.3", + "inquirer": "8.2.4", + "symbol-observable": "4.0.0", + "yargs-parser": "21.1.1" + }, + "bin": { + "schematics": "bin/schematics.js" + }, + "engines": { + "node": "^14.20.0 || ^16.13.0 || >=18.10.0", + "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", + "yarn": ">= 1.13.0" + } + }, + "node_modules/@angular-devkit/schematics-cli/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@angular-devkit/schematics-cli/node_modules/inquirer": { + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", + "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.1", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.21", + "mute-stream": "0.0.8", + "ora": "^5.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@angular-devkit/schematics/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/@angular-devkit/schematics/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/@aws-crypto/ie11-detection": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-2.0.2.tgz", + "integrity": "sha512-5XDMQY98gMAf/WRTic5G++jfmS/VLM0rwpiOpaainKi4L0nqWMSB1SzsrEG5rjFZGYN6ZAefO+/Yta2dFM0kMw==", + "optional": true, + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/ie11-detection/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true + }, + "node_modules/@aws-crypto/sha256-browser": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-2.0.0.tgz", + "integrity": "sha512-rYXOQ8BFOaqMEHJrLHul/25ckWH6GTJtdLSajhlqGMx0PmSueAuvboCuZCTqEKlxR8CQOwRarxYMZZSYlhRA1A==", + "optional": true, + "dependencies": { + "@aws-crypto/ie11-detection": "^2.0.0", + "@aws-crypto/sha256-js": "^2.0.0", + "@aws-crypto/supports-web-crypto": "^2.0.0", + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "@aws-sdk/util-locate-window": "^3.0.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/sha256-browser/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true + }, + "node_modules/@aws-crypto/sha256-js": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-2.0.0.tgz", + "integrity": "sha512-VZY+mCY4Nmrs5WGfitmNqXzaE873fcIZDu54cbaDaaamsaTOP1DBImV9F4pICc3EHjQXujyE8jig+PFCaew9ig==", + "optional": true, + "dependencies": { + "@aws-crypto/util": "^2.0.0", + "@aws-sdk/types": "^3.1.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/sha256-js/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true + }, + "node_modules/@aws-crypto/supports-web-crypto": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-2.0.2.tgz", + "integrity": "sha512-6mbSsLHwZ99CTOOswvCRP3C+VCWnzBf+1SnbWxzzJ9lR0mA0JnY2JEAhp8rqmTE0GPFy88rrM27ffgp62oErMQ==", + "optional": true, + "dependencies": { + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/supports-web-crypto/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true + }, + "node_modules/@aws-crypto/util": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-2.0.2.tgz", + "integrity": "sha512-Lgu5v/0e/BcrZ5m/IWqzPUf3UYFTy/PpeED+uc9SWUR1iZQL8XXbGQg10UfllwwBryO3hFF5dizK+78aoXC1eA==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "^3.110.0", + "@aws-sdk/util-utf8-browser": "^3.0.0", + "tslib": "^1.11.1" + } + }, + "node_modules/@aws-crypto/util/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "optional": true + }, + "node_modules/@aws-sdk/abort-controller": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.226.0.tgz", + "integrity": "sha512-cJVzr1xxPBd08voknXvR0RLgtZKGKt6WyDpH/BaPCu3rfSqWCDZKzwqe940eqosjmKrxC6pUZNKASIqHOQ8xxQ==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-cognito-identity": { + "version": "3.241.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.241.0.tgz", + "integrity": "sha512-9X/MwcnSwWfB0ijggFjyBWa4gtlUAyI39eBaVSE0AxMcgLlHKedEK6w5F1RrtvWqb7KyJDsyAysVecU4E9zQQQ==", + "optional": true, + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/client-sts": "3.241.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/credential-provider-node": "3.241.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.241.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-sso": { + "version": "3.241.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.241.0.tgz", + "integrity": "sha512-Jm4HR+RYAqKMEYZvvWaq0NYUKKonyInOeubObXH4BLXZpmUBSdYCSjjLdNJY3jkQoxbDVPVMIurVNh5zT5SMRw==", + "optional": true, + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.241.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-sso-oidc": { + "version": "3.241.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.241.0.tgz", + "integrity": "sha512-/Ml2QBGpGfUEeBrPzBZhSTBkHuXFD2EAZEIHGCBH4tKaURDI6/FoGI8P1Rl4BzoFt+II/Cr91Eox6YT9EwChsQ==", + "optional": true, + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.241.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/client-sts": { + "version": "3.241.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.241.0.tgz", + "integrity": "sha512-vmlG8cJzRf8skCtTJbA2wBvD2c3NQ5gZryzJvTKDS06KzBzcEpnjlLseuTekcnOiRNekbFUX5hRu5Zj3N2ReLg==", + "optional": true, + "dependencies": { + "@aws-crypto/sha256-browser": "2.0.0", + "@aws-crypto/sha256-js": "2.0.0", + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/credential-provider-node": "3.241.0", + "@aws-sdk/fetch-http-handler": "3.226.0", + "@aws-sdk/hash-node": "3.226.0", + "@aws-sdk/invalid-dependency": "3.226.0", + "@aws-sdk/middleware-content-length": "3.226.0", + "@aws-sdk/middleware-endpoint": "3.226.0", + "@aws-sdk/middleware-host-header": "3.226.0", + "@aws-sdk/middleware-logger": "3.226.0", + "@aws-sdk/middleware-recursion-detection": "3.226.0", + "@aws-sdk/middleware-retry": "3.235.0", + "@aws-sdk/middleware-sdk-sts": "3.226.0", + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/middleware-user-agent": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/node-http-handler": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/smithy-client": "3.234.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "@aws-sdk/util-body-length-browser": "3.188.0", + "@aws-sdk/util-body-length-node": "3.208.0", + "@aws-sdk/util-defaults-mode-browser": "3.234.0", + "@aws-sdk/util-defaults-mode-node": "3.234.0", + "@aws-sdk/util-endpoints": "3.241.0", + "@aws-sdk/util-retry": "3.229.0", + "@aws-sdk/util-user-agent-browser": "3.226.0", + "@aws-sdk/util-user-agent-node": "3.226.0", + "@aws-sdk/util-utf8-browser": "3.188.0", + "@aws-sdk/util-utf8-node": "3.208.0", + "fast-xml-parser": "4.0.11", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/config-resolver": { + "version": "3.234.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.234.0.tgz", + "integrity": "sha512-uZxy4wzllfvgCQxVc+Iqhde0NGAnfmV2hWR6ejadJaAFTuYNvQiRg9IqJy3pkyDPqXySiJ8Bom5PoJfgn55J/A==", + "optional": true, + "dependencies": { + "@aws-sdk/signature-v4": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-cognito-identity": { + "version": "3.241.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.241.0.tgz", + "integrity": "sha512-e2hlXWG9DH93uVe2wHIUrUOrgZTLzCV3gBd10D3/usSzS4FvVVU7OmidnRPYCLLnt3EvnL5b4REOedO1q8hv8g==", + "optional": true, + "dependencies": { + "@aws-sdk/client-cognito-identity": "3.241.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-env": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.226.0.tgz", + "integrity": "sha512-sd8uK1ojbXxaZXlthzw/VXZwCPUtU3PjObOfr3Evj7MPIM2IH8h29foOlggx939MdLQGboJf9gKvLlvKDWtJRA==", + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-imds": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.226.0.tgz", + "integrity": "sha512-//z/COQm2AjYFI1Lb0wKHTQSrvLFTyuKLFQGPJsKS7DPoxGOCKB7hmYerlbl01IDoCxTdyL//TyyPxbZEOQD5Q==", + "optional": true, + "dependencies": { + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-ini": { + "version": "3.241.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.241.0.tgz", + "integrity": "sha512-CI+mu6h74Kzmscw35TvNkc/wYHsHPGAwP7humSHoWw53H9mVw21Ggft/dT1iFQQZWQ8BNXkzuXlNo1IlqwMgOA==", + "optional": true, + "dependencies": { + "@aws-sdk/credential-provider-env": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/credential-provider-process": "3.226.0", + "@aws-sdk/credential-provider-sso": "3.241.0", + "@aws-sdk/credential-provider-web-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-node": { + "version": "3.241.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.241.0.tgz", + "integrity": "sha512-08zPQcD5o9brQmzEipWHeHgU85aQcEF8MWLfpeyjO6e1/l7ysQ35NsS+PYtv77nLpGCx/X+ZuW/KXWoRrbw77w==", + "optional": true, + "dependencies": { + "@aws-sdk/credential-provider-env": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/credential-provider-ini": "3.241.0", + "@aws-sdk/credential-provider-process": "3.226.0", + "@aws-sdk/credential-provider-sso": "3.241.0", + "@aws-sdk/credential-provider-web-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-process": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.226.0.tgz", + "integrity": "sha512-iUDMdnrTvbvaCFhWwqyXrhvQ9+ojPqPqXhwZtY1X/Qaz+73S9gXBPJHZaZb2Ke0yKE1Ql3bJbKvmmxC/qLQMng==", + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-sso": { + "version": "3.241.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.241.0.tgz", + "integrity": "sha512-6Bjd6eEIrVomRTrPrM4dlxusQm+KMJ9hLYKECCpFkwDKIK+pTgZNLRtQdalHyzwneHJPdimrm8cOv1kUQ8hPoA==", + "optional": true, + "dependencies": { + "@aws-sdk/client-sso": "3.241.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/token-providers": "3.241.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-provider-web-identity": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.226.0.tgz", + "integrity": "sha512-CCpv847rLB0SFOHz2igvUMFAzeT2fD3YnY4C8jltuJoEkn0ITn1Hlgt13nTJ5BUuvyti2mvyXZHmNzhMIMrIlw==", + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/credential-providers": { + "version": "3.241.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.241.0.tgz", + "integrity": "sha512-J3Q45t1o35OhUI6gWks7rmosPT+mFWXiaHl2LST509Ovjwx6SFs2PvbGP6n7xqUzxyq5Rk6FzZBwB8ItuAa6Qw==", + "optional": true, + "dependencies": { + "@aws-sdk/client-cognito-identity": "3.241.0", + "@aws-sdk/client-sso": "3.241.0", + "@aws-sdk/client-sts": "3.241.0", + "@aws-sdk/credential-provider-cognito-identity": "3.241.0", + "@aws-sdk/credential-provider-env": "3.226.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/credential-provider-ini": "3.241.0", + "@aws-sdk/credential-provider-node": "3.241.0", + "@aws-sdk/credential-provider-process": "3.226.0", + "@aws-sdk/credential-provider-sso": "3.241.0", + "@aws-sdk/credential-provider-web-identity": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/fetch-http-handler": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.226.0.tgz", + "integrity": "sha512-JewZPMNEBXfi1xVnRa7pVtK/zgZD8/lQ/YnD8pq79WuMa2cwyhDtr8oqCoqsPW+WJT5ScXoMtuHxN78l8eKWgg==", + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/querystring-builder": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-base64": "3.208.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/hash-node": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.226.0.tgz", + "integrity": "sha512-MdlJhJ9/Espwd0+gUXdZRsHuostB2WxEVAszWxobP0FTT9PnicqnfK7ExmW+DUAc0ywxtEbR3e0UND65rlSTVw==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/invalid-dependency": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.226.0.tgz", + "integrity": "sha512-QXOYFmap8g9QzRjumcRCIo2GEZkdCwd7ePQW0OABWPhKHzlJ74vvBxywjU3s39EEBEluWXtZ7Iufg6GxZM4ifw==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/is-array-buffer": { + "version": "3.201.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.201.0.tgz", + "integrity": "sha512-UPez5qLh3dNgt0DYnPD/q0mVJY84rA17QE26hVNOW3fAji8W2wrwrxdacWOxyXvlxWsVRcKmr+lay1MDqpAMfg==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-content-length": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.226.0.tgz", + "integrity": "sha512-ksUzlHJN2JMuyavjA46a4sctvnrnITqt2tbGGWWrAuXY1mel2j+VbgnmJUiwHKUO6bTFBBeft5Vd1TSOb4JmiA==", + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-endpoint": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.226.0.tgz", + "integrity": "sha512-EvLFafjtUxTT0AC9p3aBQu1/fjhWdIeK58jIXaNFONfZ3F8QbEYUPuF/SqZvJM6cWfOO9qwYKkRDbCSTYhprIg==", + "optional": true, + "dependencies": { + "@aws-sdk/middleware-serde": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/signature-v4": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/url-parser": "3.226.0", + "@aws-sdk/util-config-provider": "3.208.0", + "@aws-sdk/util-middleware": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-host-header": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.226.0.tgz", + "integrity": "sha512-haVkWVh6BUPwKgWwkL6sDvTkcZWvJjv8AgC8jiQuSl8GLZdzHTB8Qhi3IsfFta9HAuoLjxheWBE5Z/L0UrfhLA==", + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-logger": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.226.0.tgz", + "integrity": "sha512-m9gtLrrYnpN6yckcQ09rV7ExWOLMuq8mMPF/K3DbL/YL0TuILu9i2T1W+JuxSX+K9FMG2HrLAKivE/kMLr55xA==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-recursion-detection": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.226.0.tgz", + "integrity": "sha512-mwRbdKEUeuNH5TEkyZ5FWxp6bL2UC1WbY+LDv6YjHxmSMKpAoOueEdtU34PqDOLrpXXxIGHDFmjeGeMfktyEcA==", + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-retry": { + "version": "3.235.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.235.0.tgz", + "integrity": "sha512-50WHbJGpD3SNp9763MAlHqIhXil++JdQbKejNpHg7HsJne/ao3ub+fDOfx//mMBjpzBV25BGd5UlfL6blrClSg==", + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/service-error-classification": "3.229.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-middleware": "3.226.0", + "@aws-sdk/util-retry": "3.229.0", + "tslib": "^2.3.1", + "uuid": "^8.3.2" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-retry/node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "optional": true, + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/@aws-sdk/middleware-sdk-sts": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.226.0.tgz", + "integrity": "sha512-NN9T/qoSD1kZvAT+VLny3NnlqgylYQcsgV3rvi/8lYzw/G/2s8VS6sm/VTWGGZhx08wZRv20MWzYu3bftcyqUg==", + "optional": true, + "dependencies": { + "@aws-sdk/middleware-signing": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/signature-v4": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-serde": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.226.0.tgz", + "integrity": "sha512-nPuOOAkSfx9TxzdKFx0X2bDlinOxGrqD7iof926K/AEflxGD1DBdcaDdjlYlPDW2CVE8LV/rAgbYuLxh/E/1VA==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-signing": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.226.0.tgz", + "integrity": "sha512-E6HmtPcl+IjYDDzi1xI2HpCbBq2avNWcjvCriMZWuTAtRVpnA6XDDGW5GY85IfS3A8G8vuWqEVPr8JcYUcjfew==", + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/signature-v4": "3.226.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-middleware": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-stack": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.226.0.tgz", + "integrity": "sha512-85wF29LvPvpoed60fZGDYLwv1Zpd/cM0C22WSSFPw1SSJeqO4gtFYyCg2squfT3KI6kF43IIkOCJ+L7GtryPug==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/middleware-user-agent": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.226.0.tgz", + "integrity": "sha512-N1WnfzCW1Y5yWhVAphf8OPGTe8Df3vmV7/LdsoQfmpkCZgLZeK2o0xITkUQhRj1mbw7yp8tVFLFV3R2lMurdAQ==", + "optional": true, + "dependencies": { + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/node-config-provider": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.226.0.tgz", + "integrity": "sha512-B8lQDqiRk7X5izFEUMXmi8CZLOKCTWQJU9HQf3ako+sF0gexo4nHN3jhoRWyLtcgC5S3on/2jxpAcqtm7kuY3w==", + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/node-http-handler": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.226.0.tgz", + "integrity": "sha512-xQCddnZNMiPmjr3W7HYM+f5ir4VfxgJh37eqZwX6EZmyItFpNNeVzKUgA920ka1VPz/ZUYB+2OFGiX3LCLkkaA==", + "optional": true, + "dependencies": { + "@aws-sdk/abort-controller": "3.226.0", + "@aws-sdk/protocol-http": "3.226.0", + "@aws-sdk/querystring-builder": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/property-provider": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.226.0.tgz", + "integrity": "sha512-TsljjG+Sg0LmdgfiAlWohluWKnxB/k8xenjeozZfzOr5bHmNHtdbWv6BtNvD/R83hw7SFXxbJHlD5H4u9p2NFg==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/protocol-http": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.226.0.tgz", + "integrity": "sha512-zWkVqiTA9RXL6y0hhfZc9bcU4DX2NI6Hw9IhQmSPeM59mdbPjJlY4bLlMr5YxywqO3yQ/ylNoAfrEzrDjlOSRg==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/querystring-builder": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.226.0.tgz", + "integrity": "sha512-LVurypuNeotO4lmirKXRC4NYrZRAyMJXuwO0f2a5ZAUJCjauwYrifKue6yCfU7bls7gut7nfcR6B99WBYpHs3g==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/querystring-parser": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.226.0.tgz", + "integrity": "sha512-FzB+VrQ47KAFxiPt2YXrKZ8AOLZQqGTLCKHzx4bjxGmwgsjV8yIbtJiJhZLMcUQV4LtGeIY9ixIqQhGvnZHE4A==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/service-error-classification": { + "version": "3.229.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.229.0.tgz", + "integrity": "sha512-dnzWWQ0/NoWMUZ5C0DW3dPm0wC1O76Y/SpKbuJzWPkx1EYy6r8p32Ly4D9vUzrKDbRGf48YHIF2kOkBmu21CLg==", + "optional": true, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/shared-ini-file-loader": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.226.0.tgz", + "integrity": "sha512-661VQefsARxVyyV2FX9V61V+nNgImk7aN2hYlFKla6BCwZfMng+dEtD0xVGyg1PfRw0qvEv5LQyxMVgHcUSevA==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/signature-v4": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.226.0.tgz", + "integrity": "sha512-/R5q5agdPd7HJB68XMzpxrNPk158EHUvkFkuRu5Qf3kkkHebEzWEBlWoVpUe6ss4rP9Tqcue6xPuaftEmhjpYw==", + "optional": true, + "dependencies": { + "@aws-sdk/is-array-buffer": "3.201.0", + "@aws-sdk/types": "3.226.0", + "@aws-sdk/util-hex-encoding": "3.201.0", + "@aws-sdk/util-middleware": "3.226.0", + "@aws-sdk/util-uri-escape": "3.201.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/smithy-client": { + "version": "3.234.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.234.0.tgz", + "integrity": "sha512-8AtR/k4vsFvjXeQbIzq/Wy7Nbk48Ou0wUEeVYPHWHPSU8QamFWORkOwmKtKMfHAyZvmqiAPeQqHFkq+UJhWyyQ==", + "optional": true, + "dependencies": { + "@aws-sdk/middleware-stack": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/token-providers": { + "version": "3.241.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.241.0.tgz", + "integrity": "sha512-79okvuOS7V559OIL/RalIPG98wzmWxeFOChFnbEjn2pKOyGQ6FJRwLPYZaVRtNdAtnkBNgRpmFq9dX843QxhtQ==", + "optional": true, + "dependencies": { + "@aws-sdk/client-sso-oidc": "3.241.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/shared-ini-file-loader": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/types": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.226.0.tgz", + "integrity": "sha512-MmmNHrWeO4man7wpOwrAhXlevqtOV9ZLcH4RhnG5LmRce0RFOApx24HoKENfFCcOyCm5LQBlsXCqi0dZWDWU0A==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/url-parser": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.226.0.tgz", + "integrity": "sha512-p5RLE0QWyP0OcTOLmFcLdVgUcUEzmEfmdrnOxyNzomcYb0p3vUagA5zfa1HVK2azsQJFBv28GfvMnba9bGhObg==", + "optional": true, + "dependencies": { + "@aws-sdk/querystring-parser": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-base64": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64/-/util-base64-3.208.0.tgz", + "integrity": "sha512-PQniZph5A6N7uuEOQi+1hnMz/FSOK/8kMFyFO+4DgA1dZ5pcKcn5wiFwHkcTb/BsgVqQa3Jx0VHNnvhlS8JyTg==", + "optional": true, + "dependencies": { + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-body-length-browser": { + "version": "3.188.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.188.0.tgz", + "integrity": "sha512-8VpnwFWXhnZ/iRSl9mTf+VKOX9wDE8QtN4bj9pBfxwf90H1X7E8T6NkiZD3k+HubYf2J94e7DbeHs7fuCPW5Qg==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-body-length-node": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.208.0.tgz", + "integrity": "sha512-3zj50e5g7t/MQf53SsuuSf0hEELzMtD8RX8C76f12OSRo2Bca4FLLYHe0TZbxcfQHom8/hOaeZEyTyMogMglqg==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-buffer-from": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.208.0.tgz", + "integrity": "sha512-7L0XUixNEFcLUGPeBF35enCvB9Xl+K6SQsmbrPk1P3mlV9mguWSDQqbOBwY1Ir0OVbD6H/ZOQU7hI/9RtRI0Zw==", + "optional": true, + "dependencies": { + "@aws-sdk/is-array-buffer": "3.201.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-config-provider": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.208.0.tgz", + "integrity": "sha512-DSRqwrERUsT34ug+anlMBIFooBEGwM8GejC7q00Y/9IPrQy50KnG5PW2NiTjuLKNi7pdEOlwTSEocJE15eDZIg==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-defaults-mode-browser": { + "version": "3.234.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.234.0.tgz", + "integrity": "sha512-IHMKXjTbOD8XMz5+2oCOsVP94BYb9YyjXdns0aAXr2NAo7k2+RCzXQ2DebJXppGda1F6opFutoKwyVSN0cmbMw==", + "optional": true, + "dependencies": { + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-defaults-mode-node": { + "version": "3.234.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.234.0.tgz", + "integrity": "sha512-UGjQ+OjBYYhxFVtUY+jtr0ZZgzZh6OHtYwRhFt8IHewJXFCfZTyfsbX20szBj5y1S4HRIUJ7cwBLIytTqMbI5w==", + "optional": true, + "dependencies": { + "@aws-sdk/config-resolver": "3.234.0", + "@aws-sdk/credential-provider-imds": "3.226.0", + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/property-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/@aws-sdk/util-endpoints": { + "version": "3.241.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.241.0.tgz", + "integrity": "sha512-jVf8bKrN22Ey0xLmj75sL7EUvm5HFpuOMkXsZkuXycKhCwLBcEUWlvtJYtRjOU1zScPQv9GMJd2QXQglp34iOQ==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-hex-encoding": { + "version": "3.201.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.201.0.tgz", + "integrity": "sha512-7t1vR1pVxKx0motd3X9rI3m/xNp78p3sHtP5yo4NP4ARpxyJ0fokBomY8ScaH2D/B+U5o9ARxldJUdMqyBlJcA==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-locate-window": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.208.0.tgz", + "integrity": "sha512-iua1A2+P7JJEDHVgvXrRJSvsnzG7stYSGQnBVphIUlemwl6nN5D+QrgbjECtrbxRz8asYFHSzhdhECqN+tFiBg==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-middleware": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.226.0.tgz", + "integrity": "sha512-B96CQnwX4gRvQdaQkdUtqvDPkrptV5+va6FVeJOocU/DbSYMAScLxtR3peMS8cnlOT6nL1Eoa42OI9AfZz1VwQ==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-retry": { + "version": "3.229.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.229.0.tgz", + "integrity": "sha512-0zKTqi0P1inD0LzIMuXRIYYQ/8c1lWMg/cfiqUcIAF1TpatlpZuN7umU0ierpBFud7S+zDgg0oemh+Nj8xliJw==", + "optional": true, + "dependencies": { + "@aws-sdk/service-error-classification": "3.229.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@aws-sdk/util-uri-escape": { + "version": "3.201.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.201.0.tgz", + "integrity": "sha512-TeTWbGx4LU2c5rx0obHeDFeO9HvwYwQtMh1yniBz00pQb6Qt6YVOETVQikRZ+XRQwEyCg/dA375UplIpiy54mA==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@aws-sdk/util-user-agent-browser": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.226.0.tgz", + "integrity": "sha512-PhBIu2h6sPJPcv2I7ELfFizdl5pNiL4LfxrasMCYXQkJvVnoXztHA1x+CQbXIdtZOIlpjC+6BjDcE0uhnpvfcA==", + "optional": true, + "dependencies": { + "@aws-sdk/types": "3.226.0", + "bowser": "^2.11.0", + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-user-agent-node": { + "version": "3.226.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.226.0.tgz", + "integrity": "sha512-othPc5Dz/pkYkxH+nZPhc1Al0HndQT8zHD4e9h+EZ+8lkd8n+IsnLfTS/mSJWrfiC6UlNRVw55cItstmJyMe/A==", + "optional": true, + "dependencies": { + "@aws-sdk/node-config-provider": "3.226.0", + "@aws-sdk/types": "3.226.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "aws-crt": ">=1.0.0" + }, + "peerDependenciesMeta": { + "aws-crt": { + "optional": true + } + } + }, + "node_modules/@aws-sdk/util-utf8-browser": { + "version": "3.188.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.188.0.tgz", + "integrity": "sha512-jt627x0+jE+Ydr9NwkFstg3cUvgWh56qdaqAMDsqgRlKD21md/6G226z/Qxl7lb1VEW2LlmCx43ai/37Qwcj2Q==", + "optional": true, + "dependencies": { + "tslib": "^2.3.1" + } + }, + "node_modules/@aws-sdk/util-utf8-node": { + "version": "3.208.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-node/-/util-utf8-node-3.208.0.tgz", + "integrity": "sha512-jKY87Acv0yWBdFxx6bveagy5FYjz+dtV8IPT7ay1E2WPWH1czoIdMAkc8tSInK31T6CRnHWkLZ1qYwCbgRfERQ==", + "optional": true, + "dependencies": { + "@aws-sdk/util-buffer-from": "3.208.0", + "tslib": "^2.3.1" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.20.10", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.10.tgz", + "integrity": "sha512-sEnuDPpOJR/fcafHMjpcpGN5M2jbUGUHwmuWKM/YdPzeEDJg8bgmbcWQFUfE32MQjti1koACvoPVsDe8Uq+idg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.7.tgz", + "integrity": "sha512-t1ZjCluspe5DW24bn2Rr1CDb2v9rn/hROtg9a2tmd0+QYf4bsloYfLQzjG4qHPNMhWtKdGC33R5AxGR2Af2cBw==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.7", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-module-transforms": "^7.20.7", + "@babel/helpers": "^7.20.7", + "@babel/parser": "^7.20.7", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true + }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/generator": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.7.tgz", + "integrity": "sha512-7wqMOJq8doJMZmP4ApXTzLxSr7+oO2jroJURrVEp6XShrQUObV8Tq/D0NCcoYg2uHqUrjzO0zwBjoYzelxK+sw==", + "dev": true, + "dependencies": { + "@babel/types": "^7.20.7", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", + "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", + "dev": true, + "dependencies": { + "@babel/compat-data": "^7.20.5", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", + "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", + "dev": true, + "dependencies": { + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz", + "integrity": "sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg==", + "dev": true, + "dependencies": { + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.10", + "@babel/types": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.20.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", + "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.7.tgz", + "integrity": "sha512-PBPjs5BppzsGaxHQCDKnZ6Gd9s6xl8bBCluz3vEInLGRJmnZan4F6BYCeqtyXqkk4W5IlPmjK4JlOuZkpJ3xZA==", + "dev": true, + "dependencies": { + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.7", + "@babel/types": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "dev": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "dev": true + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.7.tgz", + "integrity": "sha512-T3Z9oHybU+0vZlY9CiDSJQTD5ZapcW18ZctFMi0MOAl/4BjFF4ul7NVSARLdbGO5vDqy9eQiGTV0LtKfvCYvcg==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.18.6.tgz", + "integrity": "sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.20.0.tgz", + "integrity": "sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.19.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.20.10", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.10.tgz", + "integrity": "sha512-oSf1juCgymrSez8NI4A2sr4+uB/mFd9MXplYGPEBnfAuWmmyeVcHa6xLPiaRBcXkcb/28bgxmQLTVwFKE1yfsg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.7", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/types": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.7.tgz", + "integrity": "sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg==", + "dev": true, + "dependencies": { + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "dev": true + }, + "node_modules/@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "dev": true, + "optional": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", + "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.4.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@eslint/eslintrc/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/@fastify/accept-negotiator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@fastify/accept-negotiator/-/accept-negotiator-1.1.0.tgz", + "integrity": "sha512-OIHZrb2ImZ7XG85HXOONLcJWGosv7sIvM2ifAPQVhg9Lv7qdmMBNVaai4QTdyuaqbKM5eO6sLSQOYI7wEQeCJQ==", + "engines": { + "node": ">=14" + } + }, + "node_modules/@fastify/ajv-compiler": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/@fastify/ajv-compiler/-/ajv-compiler-3.5.0.tgz", + "integrity": "sha512-ebbEtlI7dxXF5ziNdr05mOY8NnDiPB1XvAlLHctRt/Rc+C3LCOVW5imUVX+mhvUhnNzmPBHewUkOFgGlCxgdAA==", + "dependencies": { + "ajv": "^8.11.0", + "ajv-formats": "^2.1.1", + "fast-uri": "^2.0.0" + } + }, + "node_modules/@fastify/cors": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/@fastify/cors/-/cors-8.2.0.tgz", + "integrity": "sha512-qDgwpmg6C4D0D3nh8MTMuRXWyEwPnDZDBODaJv90FP2o9ukbahJByW4FtrM5Bpod5KbTf1oIExBmpItbUTQmHg==", + "dependencies": { + "fastify-plugin": "^4.0.0", + "mnemonist": "0.39.5" + } + }, + "node_modules/@fastify/deepmerge": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@fastify/deepmerge/-/deepmerge-1.3.0.tgz", + "integrity": "sha512-J8TOSBq3SoZbDhM9+R/u77hP93gz/rajSA+K2kGyijPpORPWUXHUpTaleoj+92As0S9uPRP7Oi8IqMf0u+ro6A==" + }, + "node_modules/@fastify/error": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@fastify/error/-/error-3.2.0.tgz", + "integrity": "sha512-KAfcLa+CnknwVi5fWogrLXgidLic+GXnLjijXdpl8pvkvbXU5BGa37iZO9FGvsh9ZL4y+oFi5cbHBm5UOG+dmQ==" + }, + "node_modules/@fastify/fast-json-stringify-compiler": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@fastify/fast-json-stringify-compiler/-/fast-json-stringify-compiler-4.2.0.tgz", + "integrity": "sha512-ypZynRvXA3dibfPykQN3RB5wBdEUgSGgny8Qc6k163wYPLD4mEGEDkACp+00YmqkGvIm8D/xYoHajwyEdWD/eg==", + "dependencies": { + "fast-json-stringify": "^5.0.0" + } + }, + "node_modules/@fastify/formbody": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@fastify/formbody/-/formbody-7.3.0.tgz", + "integrity": "sha512-4uHTS7wH0mkUoltk4wyJ966rs/TQP0BNDSCtyqRMy7p5adGg+5ERbYue/zGh/qI9yLDPN0K98u7Fw+lLEmBZJQ==", + "dependencies": { + "fast-querystring": "^1.0.0", + "fastify-plugin": "^4.0.0" + } + }, + "node_modules/@fastify/middie": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@fastify/middie/-/middie-8.0.0.tgz", + "integrity": "sha512-SsZUzJwRV2IBhko8TNI5gGzUdUp2Xd0XCrU+pBTfsMN8LYGsksDI/Hb3qcUZ2/Kfg6ecbFEeRO4nZmHeFCDpHQ==", + "dependencies": { + "fastify-plugin": "^3.0.0", + "path-to-regexp": "^6.1.0", + "reusify": "^1.0.4" + } + }, + "node_modules/@fastify/middie/node_modules/fastify-plugin": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/fastify-plugin/-/fastify-plugin-3.0.1.tgz", + "integrity": "sha512-qKcDXmuZadJqdTm6vlCqioEbyewF60b/0LOFCcYN1B6BIZGlYJumWWOYs70SFYLDAH4YqdE1cxH/RKMG7rFxgA==" + }, + "node_modules/@fastify/middie/node_modules/path-to-regexp": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz", + "integrity": "sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==" + }, + "node_modules/@fastify/static": { + "version": "6.6.0", + "resolved": "https://registry.npmjs.org/@fastify/static/-/static-6.6.0.tgz", + "integrity": "sha512-UiYSN2dUmDZ48M40xdIwY1dPwSSYD7c+wtoIQP8y7wyxCwcUtf1YT5/Q4n1uJsBF1fySvuo9njQZKlHeiKy4HQ==", + "dependencies": { + "@fastify/accept-negotiator": "^1.0.0", + "content-disposition": "^0.5.3", + "fastify-plugin": "^4.0.0", + "glob": "^8.0.1", + "p-limit": "^3.1.0", + "readable-stream": "^4.0.0", + "send": "^0.18.0" + } + }, + "node_modules/@fastify/static/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@fastify/static/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/@fastify/static/node_modules/glob": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.0.3.tgz", + "integrity": "sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@fastify/static/node_modules/minimatch": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.2.tgz", + "integrity": "sha512-bNH9mmM9qsJ2X4r2Nat1B//1dJVcn3+iBLa3IgqJ7EbGaDNepL9QSHOxN4ng33s52VMMhhIfgCYDk3C4ZmlDAg==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@fastify/static/node_modules/readable-stream": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.3.0.tgz", + "integrity": "sha512-MuEnA0lbSi7JS8XM+WNJlWZkHAAdm7gETHdFK//Q/mChGyj2akEFtdLZh32jSdkWGbRwCW9pn6g3LWDdDeZnBQ==", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@forlagshuset/nestjs-mongoose-paginate": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@forlagshuset/nestjs-mongoose-paginate/-/nestjs-mongoose-paginate-1.2.6.tgz", + "integrity": "sha512-N3C7WtIkKP+s5KdL7qUUl9y+kMsqgUKwmapUJWpqLk4yjc+1+ohlqKv41dTfzcYwod1g6IW9a5r7HpVOdO83rw==", + "dependencies": { + "@nestjs/common": "^8.4.4", + "@nestjs/core": "^8.4.4", + "@nestjs/platform-express": "^8.4.4", + "@nestjs/swagger": "^5.2.1", + "ajv": "^8.11.0", + "class-transformer": "^0.5.1", + "class-validator": "^0.13.2", + "rxjs": "7.5.5" + } + }, + "node_modules/@forlagshuset/nestjs-mongoose-paginate/node_modules/@nestjs/common": { + "version": "8.4.7", + "resolved": "https://registry.npmjs.org/@nestjs/common/-/common-8.4.7.tgz", + "integrity": "sha512-m/YsbcBal+gA5CFrDpqXqsSfylo+DIQrkFY3qhVIltsYRfu8ct8J9pqsTO6OPf3mvqdOpFGrV5sBjoyAzOBvsw==", + "dependencies": { + "axios": "0.27.2", + "iterare": "1.2.1", + "tslib": "2.4.0", + "uuid": "8.3.2" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nest" + }, + "peerDependencies": { + "cache-manager": "*", + "class-transformer": "*", + "class-validator": "*", + "reflect-metadata": "^0.1.12", + "rxjs": "^7.1.0" + }, + "peerDependenciesMeta": { + "cache-manager": { + "optional": true + }, + "class-transformer": { + "optional": true + }, + "class-validator": { + "optional": true + } + } + }, + "node_modules/@forlagshuset/nestjs-mongoose-paginate/node_modules/@nestjs/core": { + "version": "8.4.7", + "resolved": "https://registry.npmjs.org/@nestjs/core/-/core-8.4.7.tgz", + "integrity": "sha512-XB9uexHqzr2xkPo6QSiQWJJttyYYLmvQ5My64cFvWFi7Wk2NIus0/xUNInwX3kmFWB6pF1ab5Y2ZBvWdPwGBhw==", + "hasInstallScript": true, + "dependencies": { + "@nuxtjs/opencollective": "0.3.2", + "fast-safe-stringify": "2.1.1", + "iterare": "1.2.1", + "object-hash": "3.0.0", + "path-to-regexp": "3.2.0", + "tslib": "2.4.0", + "uuid": "8.3.2" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nest" + }, + "peerDependencies": { + "@nestjs/common": "^8.0.0", + "@nestjs/microservices": "^8.0.0", + "@nestjs/platform-express": "^8.0.0", + "@nestjs/websockets": "^8.0.0", + "reflect-metadata": "^0.1.12", + "rxjs": "^7.1.0" + }, + "peerDependenciesMeta": { + "@nestjs/microservices": { + "optional": true + }, + "@nestjs/platform-express": { + "optional": true + }, + "@nestjs/websockets": { + "optional": true + } + } + }, + "node_modules/@forlagshuset/nestjs-mongoose-paginate/node_modules/@nestjs/mapped-types": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@nestjs/mapped-types/-/mapped-types-1.0.1.tgz", + "integrity": "sha512-NFvofzSinp00j5rzUd4tf+xi9od6383iY0JP7o0Bnu1fuItAUkWBgc4EKuIQ3D+c2QI3i9pG1kDWAeY27EMGtg==", + "peerDependencies": { + "@nestjs/common": "^7.0.8 || ^8.0.0", + "class-transformer": "^0.2.0 || ^0.3.0 || ^0.4.0 || ^0.5.0", + "class-validator": "^0.11.1 || ^0.12.0 || ^0.13.0", + "reflect-metadata": "^0.1.12" + }, + "peerDependenciesMeta": { + "class-transformer": { + "optional": true + }, + "class-validator": { + "optional": true + } + } + }, + "node_modules/@forlagshuset/nestjs-mongoose-paginate/node_modules/@nestjs/platform-express": { + "version": "8.4.7", + "resolved": "https://registry.npmjs.org/@nestjs/platform-express/-/platform-express-8.4.7.tgz", + "integrity": "sha512-lPE5Ltg2NbQGRQIwXWY+4cNrXhJdycbxFDQ8mNxSIuv+LbrJBIdEB/NONk+LLn9N/8d2+I2LsIETGQrPvsejBg==", + "dependencies": { + "body-parser": "1.20.0", + "cors": "2.8.5", + "express": "4.18.1", + "multer": "1.4.4-lts.1", + "tslib": "2.4.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nest" + }, + "peerDependencies": { + "@nestjs/common": "^8.0.0", + "@nestjs/core": "^8.0.0" + } + }, + "node_modules/@forlagshuset/nestjs-mongoose-paginate/node_modules/@nestjs/swagger": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@nestjs/swagger/-/swagger-5.2.1.tgz", + "integrity": "sha512-7dNa08WCnTsW/oAk3Ujde+z64JMfNm19DhpXasFR8oJp/9pggYAbYU927HpA+GJsSFJX6adjIRZsCKUqaGWznw==", + "dependencies": { + "@nestjs/mapped-types": "1.0.1", + "lodash": "4.17.21", + "path-to-regexp": "3.2.0" + }, + "peerDependencies": { + "@nestjs/common": "^8.0.0", + "@nestjs/core": "^8.0.0", + "fastify-swagger": "*", + "reflect-metadata": "^0.1.12", + "swagger-ui-express": "*" + }, + "peerDependenciesMeta": { + "fastify-swagger": { + "optional": true + }, + "swagger-ui-express": { + "optional": true + } + } + }, + "node_modules/@forlagshuset/nestjs-mongoose-paginate/node_modules/@nestjs/websockets": { + "version": "8.4.7", + "resolved": "https://registry.npmjs.org/@nestjs/websockets/-/websockets-8.4.7.tgz", + "integrity": "sha512-UeXKTR7s2vQTGsSFhFR1dunptiICNf24nkLWoBud0kKx8HCRnhsNycyXbtwtAkioTjYXqm+vWeb9eb1Nv6+r2w==", + "optional": true, + "peer": true, + "dependencies": { + "iterare": "1.2.1", + "object-hash": "3.0.0", + "tslib": "2.4.0" + }, + "peerDependencies": { + "@nestjs/common": "^8.0.0", + "@nestjs/core": "^8.0.0", + "@nestjs/platform-socket.io": "^8.0.0", + "reflect-metadata": "^0.1.12", + "rxjs": "^7.1.0" + }, + "peerDependenciesMeta": { + "@nestjs/platform-socket.io": { + "optional": true + } + } + }, + "node_modules/@forlagshuset/nestjs-mongoose-paginate/node_modules/body-parser": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.0.tgz", + "integrity": "sha512-DfJ+q6EPcGKZD1QWUjSpqp+Q7bDQTsQIF4zfUAtZ6qk+H/3/QRhg9CEp39ss+/T2vw0+HaidC0ecJj/DRLIaKg==", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.10.3", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/@forlagshuset/nestjs-mongoose-paginate/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@forlagshuset/nestjs-mongoose-paginate/node_modules/express": { + "version": "4.18.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.1.tgz", + "integrity": "sha512-zZBcOX9TfehHQhtupq57OF8lFZ3UZi08Y97dwFCkD8p9d/d2Y3M+ykKcwaMDEL+4qyUolgBDX6AblpR3fL212Q==", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.0", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.10.3", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/@forlagshuset/nestjs-mongoose-paginate/node_modules/express/node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + }, + "node_modules/@forlagshuset/nestjs-mongoose-paginate/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/@forlagshuset/nestjs-mongoose-paginate/node_modules/qs": { + "version": "6.10.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.3.tgz", + "integrity": "sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@forlagshuset/nestjs-mongoose-paginate/node_modules/rxjs": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", + "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/@forlagshuset/nestjs-mongoose-paginate/node_modules/tslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz", + "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==" + }, + "node_modules/@forlagshuset/nestjs-mongoose-paginate/node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", + "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "dev": true, + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "dev": true, + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.3.1.tgz", + "integrity": "sha512-IRE6GD47KwcqA09RIWrabKdHPiKDGgtAL31xDxbi/RjQMsr+lY+ppxmHwY0dUEV3qvvxZzoe5Hl0RXZJOjQNUg==", + "dev": true, + "dependencies": { + "@jest/types": "^29.3.1", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^29.3.1", + "jest-util": "^29.3.1", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/console/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/core": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.3.1.tgz", + "integrity": "sha512-0ohVjjRex985w5MmO5L3u5GR1O30DexhBSpuwx2P+9ftyqHdJXnk7IUWiP80oHMvt7ubHCJHxV0a0vlKVuZirw==", + "dev": true, + "dependencies": { + "@jest/console": "^29.3.1", + "@jest/reporters": "^29.3.1", + "@jest/test-result": "^29.3.1", + "@jest/transform": "^29.3.1", + "@jest/types": "^29.3.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^29.2.0", + "jest-config": "^29.3.1", + "jest-haste-map": "^29.3.1", + "jest-message-util": "^29.3.1", + "jest-regex-util": "^29.2.0", + "jest-resolve": "^29.3.1", + "jest-resolve-dependencies": "^29.3.1", + "jest-runner": "^29.3.1", + "jest-runtime": "^29.3.1", + "jest-snapshot": "^29.3.1", + "jest-util": "^29.3.1", + "jest-validate": "^29.3.1", + "jest-watcher": "^29.3.1", + "micromatch": "^4.0.4", + "pretty-format": "^29.3.1", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/core/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/environment": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.3.1.tgz", + "integrity": "sha512-pMmvfOPmoa1c1QpfFW0nXYtNLpofqo4BrCIk6f2kW4JFeNlHV2t3vd+3iDLf31e2ot2Mec0uqZfmI+U0K2CFag==", + "dev": true, + "dependencies": { + "@jest/fake-timers": "^29.3.1", + "@jest/types": "^29.3.1", + "@types/node": "*", + "jest-mock": "^29.3.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.3.1.tgz", + "integrity": "sha512-QivM7GlSHSsIAWzgfyP8dgeExPRZ9BIe2LsdPyEhCGkZkoyA+kGsoIzbKAfZCvvRzfZioKwPtCZIt5SaoxYCvg==", + "dev": true, + "dependencies": { + "expect": "^29.3.1", + "jest-snapshot": "^29.3.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect-utils": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.3.1.tgz", + "integrity": "sha512-wlrznINZI5sMjwvUoLVk617ll/UYfGIZNxmbU+Pa7wmkL4vYzhV9R2pwVqUh4NWWuLQWkI8+8mOkxs//prKQ3g==", + "dev": true, + "dependencies": { + "jest-get-type": "^29.2.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.3.1.tgz", + "integrity": "sha512-iHTL/XpnDlFki9Tq0Q1GGuVeQ8BHZGIYsvCO5eN/O/oJaRzofG9Xndd9HuSDBI/0ZS79pg0iwn07OMTQ7ngF2A==", + "dev": true, + "dependencies": { + "@jest/types": "^29.3.1", + "@sinonjs/fake-timers": "^9.1.2", + "@types/node": "*", + "jest-message-util": "^29.3.1", + "jest-mock": "^29.3.1", + "jest-util": "^29.3.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.3.1.tgz", + "integrity": "sha512-cTicd134vOcwO59OPaB6AmdHQMCtWOe+/DitpTZVxWgMJ+YvXL1HNAmPyiGbSHmF/mXVBkvlm8YYtQhyHPnV6Q==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.3.1", + "@jest/expect": "^29.3.1", + "@jest/types": "^29.3.1", + "jest-mock": "^29.3.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/reporters": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.3.1.tgz", + "integrity": "sha512-GhBu3YFuDrcAYW/UESz1JphEAbvUjaY2vShRZRoRY1mxpCMB3yGSJ4j9n0GxVlEOdCf7qjvUfBCrTUUqhVfbRA==", + "dev": true, + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^29.3.1", + "@jest/test-result": "^29.3.1", + "@jest/transform": "^29.3.1", + "@jest/types": "^29.3.1", + "@jridgewell/trace-mapping": "^0.3.15", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^5.1.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "^29.3.1", + "jest-util": "^29.3.1", + "jest-worker": "^29.3.1", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0", + "v8-to-istanbul": "^9.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/reporters/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/schemas": { + "version": "29.0.0", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.0.0.tgz", + "integrity": "sha512-3Ab5HgYIIAnS0HjqJHQYZS+zXc4tUmTmBH3z83ajI6afXp8X3ZtdLX+nXx+I7LNkJD7uN9LAVhgnjDgZa2z0kA==", + "dev": true, + "dependencies": { + "@sinclair/typebox": "^0.24.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map": { + "version": "29.2.0", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.2.0.tgz", + "integrity": "sha512-1NX9/7zzI0nqa6+kgpSdKPK+WU1p+SJk3TloWZf5MzPbxri9UEeXX5bWZAPCzbQcyuAzubcdUHA7hcNznmRqWQ==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.15", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-result": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.3.1.tgz", + "integrity": "sha512-qeLa6qc0ddB0kuOZyZIhfN5q0e2htngokyTWsGriedsDhItisW7SDYZ7ceOe57Ii03sL988/03wAcBh3TChMGw==", + "dev": true, + "dependencies": { + "@jest/console": "^29.3.1", + "@jest/types": "^29.3.1", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.3.1.tgz", + "integrity": "sha512-IqYvLbieTv20ArgKoAMyhLHNrVHJfzO6ARZAbQRlY4UGWfdDnLlZEF0BvKOMd77uIiIjSZRwq3Jb3Fa3I8+2UA==", + "dev": true, + "dependencies": { + "@jest/test-result": "^29.3.1", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.3.1", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.3.1.tgz", + "integrity": "sha512-8wmCFBTVGYqFNLWfcOWoVuMuKYPUBTnTMDkdvFtAYELwDOl9RGwOsvQWGPFxDJ8AWY9xM/8xCXdqmPK3+Q5Lug==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/types": "^29.3.1", + "@jridgewell/trace-mapping": "^0.3.15", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.3.1", + "jest-regex-util": "^29.2.0", + "jest-util": "^29.3.1", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/types": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.3.1.tgz", + "integrity": "sha512-d0S0jmmTpjnhCmNpApgX3jrUZgZ22ivKJRvL2lli5hpCRoNnp1f85r2/wpKfXuYu8E7Jjh1hGfhPyup1NM5AmA==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.0.0", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/types/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "dev": true, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "node_modules/@jridgewell/source-map/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "dev": true, + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "node_modules/@nestjs/cli": { + "version": "9.1.8", + "resolved": "https://registry.npmjs.org/@nestjs/cli/-/cli-9.1.8.tgz", + "integrity": "sha512-53laCMoPLAkjyz3405FlMSrHnbr3DGeoaQjY963bEroezLlm/qfQhwj6oGJwtgA28eNFgx68mvQV2f1VZNUJtw==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "15.0.4", + "@angular-devkit/schematics": "15.0.4", + "@angular-devkit/schematics-cli": "15.0.4", + "@nestjs/schematics": "^9.0.0", + "chalk": "3.0.0", + "chokidar": "3.5.3", + "cli-table3": "0.6.3", + "commander": "4.1.1", + "fork-ts-checker-webpack-plugin": "7.2.14", + "inquirer": "7.3.3", + "node-emoji": "1.11.0", + "ora": "5.4.1", + "os-name": "4.0.1", + "rimraf": "3.0.2", + "shelljs": "0.8.5", + "source-map-support": "0.5.21", + "tree-kill": "1.2.2", + "tsconfig-paths": "4.1.1", + "tsconfig-paths-webpack-plugin": "4.0.0", + "typescript": "4.9.4", + "webpack": "5.75.0", + "webpack-node-externals": "3.0.0" + }, + "bin": { + "nest": "bin/nest.js" + }, + "engines": { + "node": ">= 12.9.0" + } + }, + "node_modules/@nestjs/common": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@nestjs/common/-/common-9.2.1.tgz", + "integrity": "sha512-nZuo3oDsSSlC5mti/M2aCWTEIfHPGDXmBwWgPeCpRbrNz3IWd109rkajll+yxgidVjznAdBS9y00JkAVJblNYw==", + "dependencies": { + "iterare": "1.2.1", + "tslib": "2.4.1", + "uuid": "9.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nest" + }, + "peerDependencies": { + "cache-manager": "<=5", + "class-transformer": "*", + "class-validator": "*", + "reflect-metadata": "^0.1.12", + "rxjs": "^7.1.0" + }, + "peerDependenciesMeta": { + "cache-manager": { + "optional": true + }, + "class-transformer": { + "optional": true + }, + "class-validator": { + "optional": true + } + } + }, + "node_modules/@nestjs/config": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@nestjs/config/-/config-2.2.0.tgz", + "integrity": "sha512-78Eg6oMbCy3D/YvqeiGBTOWei1Jwi3f2pSIZcZ1QxY67kYsJzTRTkwRT8Iv30DbK0sGKc1mcloDLD5UXgZAZtg==", + "dependencies": { + "dotenv": "16.0.1", + "dotenv-expand": "8.0.3", + "lodash": "4.17.21", + "uuid": "8.3.2" + }, + "peerDependencies": { + "@nestjs/common": "^7.0.0 || ^8.0.0 || ^9.0.0", + "reflect-metadata": "^0.1.13", + "rxjs": "^6.0.0 || ^7.2.0" + } + }, + "node_modules/@nestjs/config/node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/@nestjs/core": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@nestjs/core/-/core-9.2.1.tgz", + "integrity": "sha512-a9GkXuu8uXgNgCVW+17iI8kLCltO+HwHpU2IhR+32JKnN2WEQ1YEWU4t3GJ2MNq44YkjIw9zrKvFkjJBlYrNbQ==", + "hasInstallScript": true, + "dependencies": { + "@nuxtjs/opencollective": "0.3.2", + "fast-safe-stringify": "2.1.1", + "iterare": "1.2.1", + "object-hash": "3.0.0", + "path-to-regexp": "3.2.0", + "tslib": "2.4.1", + "uuid": "9.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nest" + }, + "peerDependencies": { + "@nestjs/common": "^9.0.0", + "@nestjs/microservices": "^9.0.0", + "@nestjs/platform-express": "^9.0.0", + "@nestjs/websockets": "^9.0.0", + "reflect-metadata": "^0.1.12", + "rxjs": "^7.1.0" + }, + "peerDependenciesMeta": { + "@nestjs/microservices": { + "optional": true + }, + "@nestjs/platform-express": { + "optional": true + }, + "@nestjs/websockets": { + "optional": true + } + } + }, + "node_modules/@nestjs/mapped-types": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@nestjs/mapped-types/-/mapped-types-1.2.0.tgz", + "integrity": "sha512-NTFwPZkQWsArQH8QSyFWGZvJ08gR+R4TofglqZoihn/vU+ktHEJjMqsIsADwb7XD97DhiD+TVv5ac+jG33BHrg==", + "peerDependencies": { + "@nestjs/common": "^7.0.8 || ^8.0.0 || ^9.0.0", + "class-transformer": "^0.2.0 || ^0.3.0 || ^0.4.0 || ^0.5.0", + "class-validator": "^0.11.1 || ^0.12.0 || ^0.13.0", + "reflect-metadata": "^0.1.12" + }, + "peerDependenciesMeta": { + "class-transformer": { + "optional": true + }, + "class-validator": { + "optional": true + } + } + }, + "node_modules/@nestjs/mongoose": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@nestjs/mongoose/-/mongoose-9.2.1.tgz", + "integrity": "sha512-tMK5kKFjQnNVhqJDw1wa352z+VsODOFznTn74xSzrziof03qS+O6rLU4q1kMx0B4AmFbADf03GOdpvBc9bMWqw==", + "peerDependencies": { + "@nestjs/common": "^8.0.0 || ^9.0.0", + "@nestjs/core": "^8.0.0 || ^9.0.0", + "mongoose": "^6.0.2", + "reflect-metadata": "^0.1.12", + "rxjs": "^7.0.0" + } + }, + "node_modules/@nestjs/platform-express": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@nestjs/platform-express/-/platform-express-9.2.1.tgz", + "integrity": "sha512-7PecaXt8lrdS1p6Vb1X/am3GGv+EO1VahyDzaEGOK6C0zwhc0VPfLtwihkjjfhS6BjpRIXXgviwEjONUvxVZnA==", + "dependencies": { + "body-parser": "1.20.1", + "cors": "2.8.5", + "express": "4.18.2", + "multer": "1.4.4-lts.1", + "tslib": "2.4.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nest" + }, + "peerDependencies": { + "@nestjs/common": "^9.0.0", + "@nestjs/core": "^9.0.0" + } + }, + "node_modules/@nestjs/platform-fastify": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@nestjs/platform-fastify/-/platform-fastify-9.2.1.tgz", + "integrity": "sha512-vhygCrU1Q4VkgsSo9EbS5Ihn2J78ZAK+Zb4M5Bbg+DGWGyrOLbMWL/gYgGSGIV4Fe7CVzp7H9xwuCfl8oqEFNg==", + "dependencies": { + "@fastify/cors": "8.2.0", + "@fastify/formbody": "7.3.0", + "@fastify/middie": "8.0.0", + "fastify": "4.10.2", + "light-my-request": "5.6.1", + "path-to-regexp": "3.2.0", + "tslib": "2.4.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nest" + }, + "peerDependencies": { + "@fastify/static": "^6.0.0", + "@fastify/view": "^7.0.0", + "@nestjs/common": "^9.0.0", + "@nestjs/core": "^9.0.0" + }, + "peerDependenciesMeta": { + "@fastify/static": { + "optional": true + }, + "@fastify/view": { + "optional": true + } + } + }, + "node_modules/@nestjs/schematics": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/@nestjs/schematics/-/schematics-9.0.4.tgz", + "integrity": "sha512-egurCfAc4e5i1r2TmeAF0UrOKejFmT5oTdv4b7HcOVPupc3QGU7CbEfGleL3mkM5AjrixTQeMxU9bJ00ttAbGg==", + "dev": true, + "dependencies": { + "@angular-devkit/core": "15.0.4", + "@angular-devkit/schematics": "15.0.4", + "fs-extra": "11.1.0", + "jsonc-parser": "3.2.0", + "pluralize": "8.0.0" + }, + "peerDependencies": { + "typescript": "^4.3.5" + } + }, + "node_modules/@nestjs/serve-static": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@nestjs/serve-static/-/serve-static-3.0.0.tgz", + "integrity": "sha512-TpXjgs4136dQqWUjEcONqppqXDsrJhRkmKWzuBMOUAnP4HjHpNmlycvkHnDnWSoG2YD4a7Enh4ViYGWqCfHStA==", + "dependencies": { + "path-to-regexp": "0.2.5" + }, + "peerDependencies": { + "@nestjs/common": "^9.0.0", + "@nestjs/core": "^9.0.0" + } + }, + "node_modules/@nestjs/serve-static/node_modules/path-to-regexp": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.2.5.tgz", + "integrity": "sha512-l6qtdDPIkmAmzEO6egquYDfqQGPMRNGjYtrU13HAXb3YSRrt7HSb1sJY0pKp6o2bAa86tSB6iwaW2JbthPKr7Q==" + }, + "node_modules/@nestjs/testing": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@nestjs/testing/-/testing-9.2.1.tgz", + "integrity": "sha512-lemXZdRSuqoZ87l0orCrS/c7gqwxeduIFOd21g9g2RUeQ4qlWPegbQDKASzbfC28klPyrgJLW4MNq7uv2JwV8w==", + "dev": true, + "dependencies": { + "tslib": "2.4.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nest" + }, + "peerDependencies": { + "@nestjs/common": "^9.0.0", + "@nestjs/core": "^9.0.0", + "@nestjs/microservices": "^9.0.0", + "@nestjs/platform-express": "^9.0.0" + }, + "peerDependenciesMeta": { + "@nestjs/microservices": { + "optional": true + }, + "@nestjs/platform-express": { + "optional": true + } + } + }, + "node_modules/@nestjs/websockets": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/@nestjs/websockets/-/websockets-9.2.1.tgz", + "integrity": "sha512-3VYyjLybobsWp6fPtOIGmZL83nV0nzqs+A2KoMf6PxVuFQeTT+BYJqbYE3I1D2wE9d9m81U1efpIeOuL8CXRAQ==", + "dependencies": { + "iterare": "1.2.1", + "object-hash": "3.0.0", + "tslib": "2.4.1" + }, + "peerDependencies": { + "@nestjs/common": "^9.0.0", + "@nestjs/core": "^9.0.0", + "@nestjs/platform-socket.io": "^9.0.0", + "reflect-metadata": "^0.1.12", + "rxjs": "^7.1.0" + }, + "peerDependenciesMeta": { + "@nestjs/platform-socket.io": { + "optional": true + } + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dev": true, + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nuxtjs/opencollective": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@nuxtjs/opencollective/-/opencollective-0.3.2.tgz", + "integrity": "sha512-um0xL3fO7Mf4fDxcqx9KryrB7zgRM5JSlvGN5AGkP6JLM5XEKyjeAiPbNxdXVXQ16isuAhYpvP88NgL2BGd6aA==", + "dependencies": { + "chalk": "^4.1.0", + "consola": "^2.15.0", + "node-fetch": "^2.6.1" + }, + "bin": { + "opencollective": "bin/opencollective.js" + }, + "engines": { + "node": ">=8.0.0", + "npm": ">=5.0.0" + } + }, + "node_modules/@nuxtjs/opencollective/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@sinclair/typebox": { + "version": "0.24.51", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.24.51.tgz", + "integrity": "sha512-1P1OROm/rdubP5aFDSZQILU0vrLCJ4fvHt6EoqHEM+2D/G5MK3bIaymUKLit8Js9gbns5UyJnkP/TZROLw4tUA==", + "dev": true + }, + "node_modules/@sinonjs/commons": { + "version": "1.8.6", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.6.tgz", + "integrity": "sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==", + "dev": true, + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "9.1.2", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-9.1.2.tgz", + "integrity": "sha512-BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw==", + "dev": true, + "dependencies": { + "@sinonjs/commons": "^1.7.0" + } + }, + "node_modules/@tsconfig/node10": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.9.tgz", + "integrity": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==", + "dev": true + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "dev": true + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "dev": true + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.3.tgz", + "integrity": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==", + "dev": true + }, + "node_modules/@types/babel__core": { + "version": "7.1.20", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.20.tgz", + "integrity": "sha512-PVb6Bg2QuscZ30FvOU7z4guG6c926D9YRvOxEaelzndpMsvP+YM74Q/dAFASpg2l6+XLalxSGxcq/lrgYWZtyQ==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.4", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", + "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "dev": true, + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", + "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.18.3.tgz", + "integrity": "sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==", + "dev": true, + "dependencies": { + "@babel/types": "^7.3.0" + } + }, + "node_modules/@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "dev": true, + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/cookiejar": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@types/cookiejar/-/cookiejar-2.1.2.tgz", + "integrity": "sha512-t73xJJrvdTjXrn4jLS9VSGRbz0nUY3cl2DMGDU48lKl+HR9dbbjW2A9r3g40VA++mQpy6uuHg33gy7du2BKpog==", + "dev": true + }, + "node_modules/@types/eslint": { + "version": "8.4.10", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.10.tgz", + "integrity": "sha512-Sl/HOqN8NKPmhWo2VBEPm0nvHnu2LL3v9vKo8MEq0EtbJ4eVzGPl41VNPvn5E1i5poMk4/XD8UriLHpJvEP/Nw==", + "dev": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", + "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "dev": true, + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "0.0.51", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", + "dev": true + }, + "node_modules/@types/express": { + "version": "4.17.15", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.15.tgz", + "integrity": "sha512-Yv0k4bXGOH+8a+7bELd2PqHQsuiANB+A8a4gnQrkRWzrkKlb6KHaVvyXhqs04sVW/OWlbPyYxRgYlIXLfrufMQ==", + "dev": true, + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.31", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.17.32", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.32.tgz", + "integrity": "sha512-aI5h/VOkxOF2Z1saPy0Zsxs5avets/iaiAJYznQFm5By/pamU31xWKL//epiF4OfUA2qTOc9PV6tCUjhO8wlZA==", + "dev": true, + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.5.tgz", + "integrity": "sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", + "dev": true + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", + "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/jest": { + "version": "29.2.4", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.2.4.tgz", + "integrity": "sha512-PipFB04k2qTRPePduVLTRiPzQfvMeLwUN3Z21hsAKaB/W9IIzgB2pizCL466ftJlcyZqnHoC9ZHpxLGl3fS86A==", + "dev": true, + "dependencies": { + "expect": "^29.0.0", + "pretty-format": "^29.0.0" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", + "dev": true + }, + "node_modules/@types/mime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", + "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==", + "dev": true + }, + "node_modules/@types/node": { + "version": "18.11.18", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.18.tgz", + "integrity": "sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA==" + }, + "node_modules/@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, + "node_modules/@types/prettier": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.2.tgz", + "integrity": "sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==", + "dev": true + }, + "node_modules/@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==", + "dev": true + }, + "node_modules/@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==", + "dev": true + }, + "node_modules/@types/semver": { + "version": "7.3.13", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz", + "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==", + "dev": true + }, + "node_modules/@types/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==", + "dev": true, + "dependencies": { + "@types/mime": "*", + "@types/node": "*" + } + }, + "node_modules/@types/stack-utils": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", + "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", + "dev": true + }, + "node_modules/@types/superagent": { + "version": "4.1.16", + "resolved": "https://registry.npmjs.org/@types/superagent/-/superagent-4.1.16.tgz", + "integrity": "sha512-tLfnlJf6A5mB6ddqF159GqcDizfzbMUB1/DeT59/wBNqzRTNNKsaw79A/1TZ84X+f/EwWH8FeuSkjlCLyqS/zQ==", + "dev": true, + "dependencies": { + "@types/cookiejar": "*", + "@types/node": "*" + } + }, + "node_modules/@types/supertest": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/@types/supertest/-/supertest-2.0.12.tgz", + "integrity": "sha512-X3HPWTwXRerBZS7Mo1k6vMVR1Z6zmJcDVn5O/31whe0tnjE4te6ZJSJGq1RiqHPjzPdMTfjCFogDJmwng9xHaQ==", + "dev": true, + "dependencies": { + "@types/superagent": "*" + } + }, + "node_modules/@types/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-xTE1E+YF4aWPJJeUzaZI5DRntlkY3+BCVJi0axFptnjGmAoWxkyREIh/XMrfxVLejwQxMCfDXdICo0VLxThrog==" + }, + "node_modules/@types/whatwg-url": { + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.2.tgz", + "integrity": "sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==", + "dependencies": { + "@types/node": "*", + "@types/webidl-conversions": "*" + } + }, + "node_modules/@types/yargs": { + "version": "17.0.18", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.18.tgz", + "integrity": "sha512-eIJR1UER6ur3EpKM3d+2Pgd+ET+k6Kn9B4ZItX0oPjjVI5PrfaRjKyLT5UYendDpLuoiJMNJvovLQbEXqhsPaw==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", + "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==", + "dev": true + }, + "node_modules/@typescript-eslint/eslint-plugin": { + "version": "5.47.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.47.1.tgz", + "integrity": "sha512-r4RZ2Jl9kcQN7K/dcOT+J7NAimbiis4sSM9spvWimsBvDegMhKLA5vri2jG19PmIPbDjPeWzfUPQ2hjEzA4Nmg==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.47.1", + "@typescript-eslint/type-utils": "5.47.1", + "@typescript-eslint/utils": "5.47.1", + "debug": "^4.3.4", + "ignore": "^5.2.0", + "natural-compare-lite": "^1.4.0", + "regexpp": "^3.2.0", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/parser": { + "version": "5.47.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.47.1.tgz", + "integrity": "sha512-9Vb+KIv29r6GPu4EboWOnQM7T+UjpjXvjCPhNORlgm40a9Ia9bvaPJswvtae1gip2QEeVeGh6YquqAzEgoRAlw==", + "dev": true, + "dependencies": { + "@typescript-eslint/scope-manager": "5.47.1", + "@typescript-eslint/types": "5.47.1", + "@typescript-eslint/typescript-estree": "5.47.1", + "debug": "^4.3.4" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/scope-manager": { + "version": "5.47.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.47.1.tgz", + "integrity": "sha512-9hsFDsgUwrdOoW1D97Ewog7DYSHaq4WKuNs0LHF9RiCmqB0Z+XRR4Pf7u7u9z/8CciHuJ6yxNws1XznI3ddjEw==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.47.1", + "@typescript-eslint/visitor-keys": "5.47.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils": { + "version": "5.47.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.47.1.tgz", + "integrity": "sha512-/UKOeo8ee80A7/GJA427oIrBi/Gd4osk/3auBUg4Rn9EahFpevVV1mUK8hjyQD5lHPqX397x6CwOk5WGh1E/1w==", + "dev": true, + "dependencies": { + "@typescript-eslint/typescript-estree": "5.47.1", + "@typescript-eslint/utils": "5.47.1", + "debug": "^4.3.4", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { + "version": "5.47.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.47.1.tgz", + "integrity": "sha512-CmALY9YWXEpwuu6377ybJBZdtSAnzXLSQcxLSqSQSbC7VfpMu/HLVdrnVJj7ycI138EHqocW02LPJErE35cE9A==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.47.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.47.1.tgz", + "integrity": "sha512-4+ZhFSuISAvRi2xUszEj0xXbNTHceV9GbH9S8oAD2a/F9SW57aJNQVOCxG8GPfSWH/X4eOPdMEU2jYVuWKEpWA==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.47.1", + "@typescript-eslint/visitor-keys": "5.47.1", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/utils": { + "version": "5.47.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.47.1.tgz", + "integrity": "sha512-l90SdwqfmkuIVaREZ2ykEfCezepCLxzWMo5gVfcJsJCaT4jHT+QjgSkYhs5BMQmWqE9k3AtIfk4g211z/sTMVw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.47.1", + "@typescript-eslint/types": "5.47.1", + "@typescript-eslint/typescript-estree": "5.47.1", + "eslint-scope": "^5.1.1", + "eslint-utils": "^3.0.0", + "semver": "^7.3.7" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.47.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.47.1.tgz", + "integrity": "sha512-rF3pmut2JCCjh6BLRhNKdYjULMb1brvoaiWDlHfLNVgmnZ0sBVJrs3SyaKE1XoDDnJuAx/hDQryHYmPUuNq0ig==", + "dev": true, + "dependencies": { + "@typescript-eslint/types": "5.47.1", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.1.tgz", + "integrity": "sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==", + "dev": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz", + "integrity": "sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz", + "integrity": "sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz", + "integrity": "sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz", + "integrity": "sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==", + "dev": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz", + "integrity": "sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz", + "integrity": "sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz", + "integrity": "sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==", + "dev": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.1.tgz", + "integrity": "sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==", + "dev": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.1.tgz", + "integrity": "sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==", + "dev": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz", + "integrity": "sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/helper-wasm-section": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-opt": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "@webassemblyjs/wast-printer": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz", + "integrity": "sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz", + "integrity": "sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-buffer": "1.11.1", + "@webassemblyjs/wasm-gen": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz", + "integrity": "sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/helper-api-error": "1.11.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.1", + "@webassemblyjs/ieee754": "1.11.1", + "@webassemblyjs/leb128": "1.11.1", + "@webassemblyjs/utf8": "1.11.1" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz", + "integrity": "sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.1", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true + }, + "node_modules/abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, + "node_modules/abstract-logging": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.1.tgz", + "integrity": "sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==" + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.8.1.tgz", + "integrity": "sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-import-assertions": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", + "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", + "dev": true, + "peerDependencies": { + "acorn": "^8" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ajv": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/append-field": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/append-field/-/append-field-1.0.0.tgz", + "integrity": "sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw==" + }, + "node_modules/archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==" + }, + "node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "dev": true + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", + "dev": true + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" + }, + "node_modules/atomic-sleep": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/atomic-sleep/-/atomic-sleep-1.0.0.tgz", + "integrity": "sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/avvio": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/avvio/-/avvio-8.2.0.tgz", + "integrity": "sha512-bbCQdg7bpEv6kGH41RO/3B2/GMMmJSo2iBK+X8AWN9mujtfUipMDfIjsgHCfpnKqoGEQrrmCDKSa5OQ19+fDmg==", + "dependencies": { + "archy": "^1.0.0", + "debug": "^4.0.0", + "fastq": "^1.6.1" + } + }, + "node_modules/axios": { + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz", + "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==", + "dependencies": { + "follow-redirects": "^1.14.9", + "form-data": "^4.0.0" + } + }, + "node_modules/babel-jest": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.3.1.tgz", + "integrity": "sha512-aard+xnMoxgjwV70t0L6wkW/3HQQtV+O0PEimxKgzNqCJnbYmroPojdP2tqKSOAt8QAKV/uSZU8851M7B5+fcA==", + "dev": true, + "dependencies": { + "@jest/transform": "^29.3.1", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.2.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-jest/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "29.2.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.2.0.tgz", + "integrity": "sha512-TnspP2WNiR3GLfCsUNHqeXw0RoQ2f9U5hQ5L3XFpwuO8htQmSrhh8qsB6vi5Yi8+kuynN1yjDjQsPfkebmB6ZA==", + "dev": true, + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", + "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", + "dev": true, + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.8.3", + "@babel/plugin-syntax-import-meta": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-top-level-await": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "29.2.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.2.0.tgz", + "integrity": "sha512-z9JmMJppMxNv8N7fNRHvhMg9cvIkMxQBXgFkane3yKVEvEOP+kB50lk8DFRvF9PGqbyXxlmebKWhuDORO8RgdA==", + "dev": true, + "dependencies": { + "babel-plugin-jest-hoist": "^29.2.0", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/bl/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/bowser": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.11.0.tgz", + "integrity": "sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==", + "optional": true + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.21.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", + "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001400", + "electron-to-chromium": "^1.4.251", + "node-releases": "^2.0.6", + "update-browserslist-db": "^1.0.9" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bs-logger": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", + "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", + "dev": true, + "dependencies": { + "fast-json-stable-stringify": "2.x" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "dev": true, + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/bson": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/bson/-/bson-4.7.0.tgz", + "integrity": "sha512-VrlEE4vuiO1WTpfof4VmaVolCVYkYTgB9iWgYNOrVlnifpME/06fhFRmONgBhClD5pFC1t9ZWqFUQEQAzY43bA==", + "dependencies": { + "buffer": "^5.6.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "node_modules/busboy": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz", + "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==", + "dependencies": { + "streamsearch": "^1.1.0" + }, + "engines": { + "node": ">=10.16.0" + } + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001441", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001441.tgz", + "integrity": "sha512-OyxRR4Vof59I3yGWXws6i908EtGbMzVUi3ganaZQHmydk1iwDhRnvaPG2WaR0KcqrDFKrxVZHULT396LEPhXfg==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + } + ] + }, + "node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "dev": true, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/ci-info": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.7.0.tgz", + "integrity": "sha512-2CpRNYmImPx+RXKLq6jko/L07phmS9I02TyqkcNU20GCF/GgaWvc58hPtjxDX8lPpkdwc9sNh72V9k00S7ezog==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cjs-module-lexer": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.2.tgz", + "integrity": "sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==", + "dev": true + }, + "node_modules/class-transformer": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/class-transformer/-/class-transformer-0.5.1.tgz", + "integrity": "sha512-SQa1Ws6hUbfC98vKGxZH3KFY0Y1lm5Zm0SY8XX9zbK7FJCyVEac3ATW0RIpwzW+oOfmHE5PMPufDG9hCfoEOMw==" + }, + "node_modules/class-validator": { + "version": "0.13.2", + "resolved": "https://registry.npmjs.org/class-validator/-/class-validator-0.13.2.tgz", + "integrity": "sha512-yBUcQy07FPlGzUjoLuUfIOXzgynnQPPruyK1Ge2B74k9ROwnle1E+NxLWnUv5OLU8hA/qL5leAE9XnXq3byaBw==", + "dependencies": { + "libphonenumber-js": "^1.9.43", + "validator": "^13.7.0" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.7.0.tgz", + "integrity": "sha512-qu3pN8Y3qHNgE2AFweciB1IfMnmZ/fsNTEE+NOFjmGB2F/7rLhnhzppvpCnN4FovtP26k8lHyy9ptEbNwWFLzw==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-table3": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", + "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0" + }, + "engines": { + "node": "10.* || >= 12.*" + }, + "optionalDependencies": { + "@colors/colors": "1.5.0" + } + }, + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz", + "integrity": "sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==", + "dev": true + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "engines": [ + "node >= 0.8" + ], + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/consola": { + "version": "2.15.3", + "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz", + "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==" + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true + }, + "node_modules/cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" + }, + "node_modules/cookiejar": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.3.tgz", + "integrity": "sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ==", + "dev": true + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "dev": true, + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "dev": true + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/dedent": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==", + "dev": true + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", + "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "dev": true, + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/dezalgo": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz", + "integrity": "sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==", + "dev": true, + "dependencies": { + "asap": "^2.0.0", + "wrappy": "1" + } + }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "dev": true, + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/diff-sequences": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.3.1.tgz", + "integrity": "sha512-hlM3QR272NXCi4pq+N4Kok4kOp6EsgOM3ZSpJI7Da3UAs+Ttsi8MRmB6trM/lhyzUxGfOgnpkHtgqm5Q/CTcfQ==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dotenv": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.1.tgz", + "integrity": "sha512-1K6hR6wtk2FviQ4kEiSjFiH5rpzEVi8WW0x96aztHVMhEspNpc4DVOUTEHtEva5VThQ8IaBX1Pe4gSzpVVUsKQ==", + "engines": { + "node": ">=12" + } + }, + "node_modules/dotenv-expand": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-8.0.3.tgz", + "integrity": "sha512-SErOMvge0ZUyWd5B0NXMQlDkN+8r+HhVUsxgOO7IoPDOdDRD2JjExpN6y3KnFR66jsJMwSn1pqIivhU5rcJiNg==", + "engines": { + "node": ">=12" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" + }, + "node_modules/electron-to-chromium": { + "version": "1.4.284", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", + "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", + "dev": true + }, + "node_modules/emittery": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dev": true, + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", + "integrity": "sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-module-lexer": { + "version": "0.9.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz", + "integrity": "sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==", + "dev": true + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "8.31.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.31.0.tgz", + "integrity": "sha512-0tQQEVdmPZ1UtUKXjX7EMm9BlgJ08G90IhWh0PKDCb3ZLsgAOHI8fYSIzYVZej92zsgq+ft0FGsxhJ3xo2tbuA==", + "dev": true, + "dependencies": { + "@eslint/eslintrc": "^1.4.1", + "@humanwhocodes/config-array": "^0.11.8", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.1.1", + "eslint-utils": "^3.0.0", + "eslint-visitor-keys": "^3.3.0", + "espree": "^9.4.0", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "grapheme-splitter": "^1.0.4", + "ignore": "^5.2.0", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-sdsl": "^4.1.4", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "regexpp": "^3.2.0", + "strip-ansi": "^6.0.1", + "strip-json-comments": "^3.1.0", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-prettier": { + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.5.0.tgz", + "integrity": "sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==", + "dev": true, + "bin": { + "eslint-config-prettier": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=7.0.0" + } + }, + "node_modules/eslint-plugin-prettier": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", + "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", + "dev": true, + "dependencies": { + "prettier-linter-helpers": "^1.0.0" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "eslint": ">=7.28.0", + "prettier": ">=2.0.0" + }, + "peerDependenciesMeta": { + "eslint-config-prettier": { + "optional": true + } + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz", + "integrity": "sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^2.0.0" + }, + "engines": { + "node": "^10.0.0 || ^12.0.0 || >= 14.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + }, + "peerDependencies": { + "eslint": ">=5" + } + }, + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz", + "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==", + "dev": true, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz", + "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/eslint/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/eslint/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/eslint/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/espree": { + "version": "9.4.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.4.1.tgz", + "integrity": "sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==", + "dev": true, + "dependencies": { + "acorn": "^8.8.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expect": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.3.1.tgz", + "integrity": "sha512-gGb1yTgU30Q0O/tQq+z30KBWv24ApkMgFUpvKBkyLUBL68Wv8dHdJxTBZFl/iT8K/bqDHvUYRH6IIN3rToopPA==", + "dev": true, + "dependencies": { + "@jest/expect-utils": "^29.3.1", + "jest-get-type": "^29.2.0", + "jest-matcher-utils": "^29.3.1", + "jest-message-util": "^29.3.1", + "jest-util": "^29.3.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/express/node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/fast-decode-uri-component": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/fast-decode-uri-component/-/fast-decode-uri-component-1.0.1.tgz", + "integrity": "sha512-WKgKWg5eUxvRZGwW8FvfbaH7AXSh2cL+3j5fMGzUMCxWBJ3dV3a7Wz8y2f/uQ0e3B6WmodD3oS54jTQ9HVTIIg==" + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.2.12", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz", + "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-json-stringify": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/fast-json-stringify/-/fast-json-stringify-5.5.0.tgz", + "integrity": "sha512-rmw2Z8/mLkND8zI+3KTYIkNPEoF5v6GqDP/o+g7H3vjdWjBwuKpgAYFHIzL6ORRB+iqDjjtJnLIW9Mzxn5szOA==", + "dependencies": { + "@fastify/deepmerge": "^1.0.0", + "ajv": "^8.10.0", + "ajv-formats": "^2.1.1", + "fast-deep-equal": "^3.1.3", + "fast-uri": "^2.1.0", + "rfdc": "^1.2.0" + } + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/fast-querystring": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fast-querystring/-/fast-querystring-1.0.0.tgz", + "integrity": "sha512-3LQi62IhQoDlmt4ULCYmh17vRO2EtS7hTSsG4WwoKWgV7GLMKBOecEh+aiavASnLx8I2y89OD33AGLo0ccRhzA==", + "dependencies": { + "fast-decode-uri-component": "^1.0.1" + } + }, + "node_modules/fast-redact": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/fast-redact/-/fast-redact-3.1.2.tgz", + "integrity": "sha512-+0em+Iya9fKGfEQGcd62Yv6onjBmmhV1uh86XVfOU8VwAe6kaFdQCWI9s0/Nnugx5Vd9tdbZ7e6gE2tR9dzXdw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/fast-safe-stringify": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" + }, + "node_modules/fast-uri": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-2.2.0.tgz", + "integrity": "sha512-cIusKBIt/R/oI6z/1nyfe2FvGKVTohVRfvkOhvx0nCEW+xf5NoCXjAHcWp93uOUBchzYcsvPlrapAdX1uW+YGg==" + }, + "node_modules/fast-xml-parser": { + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.0.11.tgz", + "integrity": "sha512-4aUg3aNRR/WjQAcpceODG1C3x3lFANXRo8+1biqfieHmg9pyMt7qB4lQV/Ta6sJCTbA5vfD8fnA8S54JATiFUA==", + "optional": true, + "dependencies": { + "strnum": "^1.0.5" + }, + "bin": { + "fxparser": "src/cli/cli.js" + }, + "funding": { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + } + }, + "node_modules/fastify": { + "version": "4.10.2", + "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.10.2.tgz", + "integrity": "sha512-0T+4zI6N3S8ex0LCZi3H4FasJR4AzWw834fUkPWvV8r6GBJkLmAOfFxH8f5V29Plef24IK0QSQD/tz1Nx+1UOA==", + "dependencies": { + "@fastify/ajv-compiler": "^3.3.1", + "@fastify/error": "^3.0.0", + "@fastify/fast-json-stringify-compiler": "^4.1.0", + "abstract-logging": "^2.0.1", + "avvio": "^8.2.0", + "content-type": "^1.0.4", + "find-my-way": "^7.3.0", + "light-my-request": "^5.6.1", + "pino": "^8.5.0", + "process-warning": "^2.0.0", + "proxy-addr": "^2.0.7", + "rfdc": "^1.3.0", + "secure-json-parse": "^2.5.0", + "semver": "^7.3.7", + "tiny-lru": "^10.0.0" + } + }, + "node_modules/fastify-plugin": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/fastify-plugin/-/fastify-plugin-4.4.0.tgz", + "integrity": "sha512-ovwFQG2qNy3jcCROiWpr94Hs0le+c7N/3t7m9aVwbFhkxcR/esp2xu25dP8e617HpQdmeDv+gFX4zagdUhDByw==" + }, + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "dev": true, + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/find-my-way": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/find-my-way/-/find-my-way-7.4.0.tgz", + "integrity": "sha512-JFT7eURLU5FumlZ3VBGnveId82cZz7UR7OUu+THQJOwdQXxmS/g8v0KLoFhv97HreycOrmAbqjXD/4VG2j0uMQ==", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-querystring": "^1.0.0", + "safe-regex2": "^2.0.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "dev": true + }, + "node_modules/follow-redirects": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/fork-ts-checker-webpack-plugin": { + "version": "7.2.14", + "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-7.2.14.tgz", + "integrity": "sha512-Tg2feh/n8k486KX0EbXVUfJj3j0xnnbKYTJw0fnIb2QdV0+lblOYZSal5ed9hARoWVwKeOC7sYE2EakSRLo5ZA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.16.7", + "chalk": "^4.1.2", + "chokidar": "^3.5.3", + "cosmiconfig": "^7.0.1", + "deepmerge": "^4.2.2", + "fs-extra": "^10.0.0", + "memfs": "^3.4.1", + "minimatch": "^3.0.4", + "node-abort-controller": "^3.0.1", + "schema-utils": "^3.1.1", + "semver": "^7.3.5", + "tapable": "^2.2.1" + }, + "engines": { + "node": ">=12.13.0", + "yarn": ">=1.0.0" + }, + "peerDependencies": { + "typescript": ">3.6.0", + "vue-template-compiler": "*", + "webpack": "^5.11.0" + }, + "peerDependenciesMeta": { + "vue-template-compiler": { + "optional": true + } + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/formidable": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-2.1.1.tgz", + "integrity": "sha512-0EcS9wCFEzLvfiks7omJ+SiYJAiD+TzK4Pcw1UlUoGnhUxDcMKjt0P7x8wEb0u6OHu8Nb98WG3nxtlF5C7bvUQ==", + "dev": true, + "dependencies": { + "dezalgo": "^1.0.4", + "hexoid": "^1.0.0", + "once": "^1.4.0", + "qs": "^6.11.0" + }, + "funding": { + "url": "https://ko-fi.com/tunnckoCore/commissions" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-extra": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.0.tgz", + "integrity": "sha512-0rcTq621PD5jM/e0a3EJoGC/1TC5ZBCERW82LQuwfGnCa1V8w7dpYH1yNu+SLb6E5dkeCBzKEyLGlFrnr+dUyw==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=14.14" + } + }, + "node_modules/fs-monkey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.3.tgz", + "integrity": "sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==", + "dev": true + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "dev": true, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true + }, + "node_modules/globals": { + "version": "13.19.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", + "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "dev": true + }, + "node_modules/grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "dev": true + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hexoid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/hexoid/-/hexoid-1.0.0.tgz", + "integrity": "sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-local": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", + "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", + "dev": true, + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/inquirer": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", + "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.19", + "mute-stream": "0.0.8", + "run-async": "^2.4.0", + "rxjs": "^6.6.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/inquirer/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/inquirer/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/ip": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", + "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==" + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "dev": true + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", + "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", + "dev": true, + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^3.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.5.tgz", + "integrity": "sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==", + "dev": true, + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/iterare": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/iterare/-/iterare-1.2.1.tgz", + "integrity": "sha512-RKYVTCjAnRthyJes037NX/IiqeidgN1xc3j1RjFfECFp28A1GVwK9nA+i0rJPaHqSZwygLzRnFlzUuHFoWWy+Q==", + "engines": { + "node": ">=6" + } + }, + "node_modules/jest": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.3.1.tgz", + "integrity": "sha512-6iWfL5DTT0Np6UYs/y5Niu7WIfNv/wRTtN5RSXt2DIEft3dx3zPuw/3WJQBCJfmEzvDiEKwoqMbGD9n49+qLSA==", + "dev": true, + "dependencies": { + "@jest/core": "^29.3.1", + "@jest/types": "^29.3.1", + "import-local": "^3.0.2", + "jest-cli": "^29.3.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "29.2.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.2.0.tgz", + "integrity": "sha512-qPVmLLyBmvF5HJrY7krDisx6Voi8DmlV3GZYX0aFNbaQsZeoz1hfxcCMbqDGuQCxU1dJy9eYc2xscE8QrCCYaA==", + "dev": true, + "dependencies": { + "execa": "^5.0.0", + "p-limit": "^3.1.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.3.1.tgz", + "integrity": "sha512-wpr26sEvwb3qQQbdlmei+gzp6yoSSoSL6GsLPxnuayZSMrSd5Ka7IjAvatpIernBvT2+Ic6RLTg+jSebScmasg==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.3.1", + "@jest/expect": "^29.3.1", + "@jest/test-result": "^29.3.1", + "@jest/types": "^29.3.1", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^0.7.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^29.3.1", + "jest-matcher-utils": "^29.3.1", + "jest-message-util": "^29.3.1", + "jest-runtime": "^29.3.1", + "jest-snapshot": "^29.3.1", + "jest-util": "^29.3.1", + "p-limit": "^3.1.0", + "pretty-format": "^29.3.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-cli": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.3.1.tgz", + "integrity": "sha512-TO/ewvwyvPOiBBuWZ0gm04z3WWP8TIK8acgPzE4IxgsLKQgb377NYGrQLc3Wl/7ndWzIH2CDNNsUjGxwLL43VQ==", + "dev": true, + "dependencies": { + "@jest/core": "^29.3.1", + "@jest/test-result": "^29.3.1", + "@jest/types": "^29.3.1", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "import-local": "^3.0.2", + "jest-config": "^29.3.1", + "jest-util": "^29.3.1", + "jest-validate": "^29.3.1", + "prompts": "^2.0.1", + "yargs": "^17.3.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-cli/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-config": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.3.1.tgz", + "integrity": "sha512-y0tFHdj2WnTEhxmGUK1T7fgLen7YK4RtfvpLFBXfQkh2eMJAQq24Vx9472lvn5wg0MAO6B+iPfJfzdR9hJYalg==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.3.1", + "@jest/types": "^29.3.1", + "babel-jest": "^29.3.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-circus": "^29.3.1", + "jest-environment-node": "^29.3.1", + "jest-get-type": "^29.2.0", + "jest-regex-util": "^29.2.0", + "jest-resolve": "^29.3.1", + "jest-runner": "^29.3.1", + "jest-util": "^29.3.1", + "jest-validate": "^29.3.1", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^29.3.1", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@types/node": "*", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-config/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-diff": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.3.1.tgz", + "integrity": "sha512-vU8vyiO7568tmin2lA3r2DP8oRvzhvRcD4DjpXc6uGveQodyk7CKLhQlCSiwgx3g0pFaE88/KLZ0yaTWMc4Uiw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.3.1", + "jest-get-type": "^29.2.0", + "pretty-format": "^29.3.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-diff/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-docblock": { + "version": "29.2.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.2.0.tgz", + "integrity": "sha512-bkxUsxTgWQGbXV5IENmfiIuqZhJcyvF7tU4zJ/7ioTutdz4ToB5Yx6JOFBpgI+TphRY4lhOyCWGNH/QFQh5T6A==", + "dev": true, + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.3.1.tgz", + "integrity": "sha512-qrZH7PmFB9rEzCSl00BWjZYuS1BSOH8lLuC0azQE9lQrAx3PWGKHTDudQiOSwIy5dGAJh7KA0ScYlCP7JxvFYA==", + "dev": true, + "dependencies": { + "@jest/types": "^29.3.1", + "chalk": "^4.0.0", + "jest-get-type": "^29.2.0", + "jest-util": "^29.3.1", + "pretty-format": "^29.3.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-environment-node": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.3.1.tgz", + "integrity": "sha512-xm2THL18Xf5sIHoU7OThBPtuH6Lerd+Y1NLYiZJlkE3hbE+7N7r8uvHIl/FkZ5ymKXJe/11SQuf3fv4v6rUMag==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.3.1", + "@jest/fake-timers": "^29.3.1", + "@jest/types": "^29.3.1", + "@types/node": "*", + "jest-mock": "^29.3.1", + "jest-util": "^29.3.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "29.2.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.2.0.tgz", + "integrity": "sha512-uXNJlg8hKFEnDgFsrCjznB+sTxdkuqiCL6zMgA75qEbAJjJYTs9XPrvDctrEig2GDow22T/LvHgO57iJhXB/UA==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.3.1.tgz", + "integrity": "sha512-/FFtvoG1xjbbPXQLFef+WSU4yrc0fc0Dds6aRPBojUid7qlPqZvxdUBA03HW0fnVHXVCnCdkuoghYItKNzc/0A==", + "dev": true, + "dependencies": { + "@jest/types": "^29.3.1", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.2.0", + "jest-util": "^29.3.1", + "jest-worker": "^29.3.1", + "micromatch": "^4.0.4", + "walker": "^1.0.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-leak-detector": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.3.1.tgz", + "integrity": "sha512-3DA/VVXj4zFOPagGkuqHnSQf1GZBmmlagpguxEERO6Pla2g84Q1MaVIB3YMxgUaFIaYag8ZnTyQgiZ35YEqAQA==", + "dev": true, + "dependencies": { + "jest-get-type": "^29.2.0", + "pretty-format": "^29.3.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.3.1.tgz", + "integrity": "sha512-fkRMZUAScup3txIKfMe3AIZZmPEjWEdsPJFK3AIy5qRohWqQFg1qrmKfYXR9qEkNc7OdAu2N4KPHibEmy4HPeQ==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^29.3.1", + "jest-get-type": "^29.2.0", + "pretty-format": "^29.3.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-message-util": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.3.1.tgz", + "integrity": "sha512-lMJTbgNcDm5z+6KDxWtqOFWlGQxD6XaYwBqHR8kmpkP+WWWG90I35kdtQHY67Ay5CSuydkTBbJG+tH9JShFCyA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.3.1", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.3.1", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-mock": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.3.1.tgz", + "integrity": "sha512-H8/qFDtDVMFvFP4X8NuOT3XRDzOUTz+FeACjufHzsOIBAxivLqkB1PoLCaJx9iPPQ8dZThHPp/G3WRWyMgA3JA==", + "dev": true, + "dependencies": { + "@jest/types": "^29.3.1", + "@types/node": "*", + "jest-util": "^29.3.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "dev": true, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "29.2.0", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.2.0.tgz", + "integrity": "sha512-6yXn0kg2JXzH30cr2NlThF+70iuO/3irbaB4mh5WyqNIvLLP+B6sFdluO1/1RJmslyh/f9osnefECflHvTbwVA==", + "dev": true, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.3.1.tgz", + "integrity": "sha512-amXJgH/Ng712w3Uz5gqzFBBjxV8WFLSmNjoreBGMqxgCz5cH7swmBZzgBaCIOsvb0NbpJ0vgaSFdJqMdT+rADw==", + "dev": true, + "dependencies": { + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.3.1", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^29.3.1", + "jest-validate": "^29.3.1", + "resolve": "^1.20.0", + "resolve.exports": "^1.1.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.3.1.tgz", + "integrity": "sha512-Vk0cYq0byRw2WluNmNWGqPeRnZ3p3hHmjJMp2dyyZeYIfiBskwq4rpiuGFR6QGAdbj58WC7HN4hQHjf2mpvrLA==", + "dev": true, + "dependencies": { + "jest-regex-util": "^29.2.0", + "jest-snapshot": "^29.3.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-runner": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.3.1.tgz", + "integrity": "sha512-oFvcwRNrKMtE6u9+AQPMATxFcTySyKfLhvso7Sdk/rNpbhg4g2GAGCopiInk1OP4q6gz3n6MajW4+fnHWlU3bA==", + "dev": true, + "dependencies": { + "@jest/console": "^29.3.1", + "@jest/environment": "^29.3.1", + "@jest/test-result": "^29.3.1", + "@jest/transform": "^29.3.1", + "@jest/types": "^29.3.1", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^29.2.0", + "jest-environment-node": "^29.3.1", + "jest-haste-map": "^29.3.1", + "jest-leak-detector": "^29.3.1", + "jest-message-util": "^29.3.1", + "jest-resolve": "^29.3.1", + "jest-runtime": "^29.3.1", + "jest-util": "^29.3.1", + "jest-watcher": "^29.3.1", + "jest-worker": "^29.3.1", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runner/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-runner/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jest-runner/node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/jest-runtime": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.3.1.tgz", + "integrity": "sha512-jLzkIxIqXwBEOZx7wx9OO9sxoZmgT2NhmQKzHQm1xwR1kNW/dn0OjxR424VwHHf1SPN6Qwlb5pp1oGCeFTQ62A==", + "dev": true, + "dependencies": { + "@jest/environment": "^29.3.1", + "@jest/fake-timers": "^29.3.1", + "@jest/globals": "^29.3.1", + "@jest/source-map": "^29.2.0", + "@jest/test-result": "^29.3.1", + "@jest/transform": "^29.3.1", + "@jest/types": "^29.3.1", + "@types/node": "*", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.3.1", + "jest-message-util": "^29.3.1", + "jest-mock": "^29.3.1", + "jest-regex-util": "^29.2.0", + "jest-resolve": "^29.3.1", + "jest-snapshot": "^29.3.1", + "jest-util": "^29.3.1", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runtime/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-snapshot": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.3.1.tgz", + "integrity": "sha512-+3JOc+s28upYLI2OJM4PWRGK9AgpsMs/ekNryUV0yMBClT9B1DF2u2qay8YxcQd338PPYSFNb0lsar1B49sLDA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.11.6", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/traverse": "^7.7.2", + "@babel/types": "^7.3.3", + "@jest/expect-utils": "^29.3.1", + "@jest/transform": "^29.3.1", + "@jest/types": "^29.3.1", + "@types/babel__traverse": "^7.0.6", + "@types/prettier": "^2.1.5", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^29.3.1", + "graceful-fs": "^4.2.9", + "jest-diff": "^29.3.1", + "jest-get-type": "^29.2.0", + "jest-haste-map": "^29.3.1", + "jest-matcher-utils": "^29.3.1", + "jest-message-util": "^29.3.1", + "jest-util": "^29.3.1", + "natural-compare": "^1.4.0", + "pretty-format": "^29.3.1", + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-util": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.3.1.tgz", + "integrity": "sha512-7YOVZaiX7RJLv76ZfHt4nbNEzzTRiMW/IiOG7ZOKmTXmoGBxUDefgMAxQubu6WPVqP5zSzAdZG0FfLcC7HOIFQ==", + "dev": true, + "dependencies": { + "@jest/types": "^29.3.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-util/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-validate": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.3.1.tgz", + "integrity": "sha512-N9Lr3oYR2Mpzuelp1F8negJR3YE+L1ebk1rYA5qYo9TTY3f9OWdptLoNSPP9itOCBIRBqjt/S5XHlzYglLN67g==", + "dev": true, + "dependencies": { + "@jest/types": "^29.3.1", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.2.0", + "leven": "^3.1.0", + "pretty-format": "^29.3.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-validate/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-watcher": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.3.1.tgz", + "integrity": "sha512-RspXG2BQFDsZSRKGCT/NiNa8RkQ1iKAjrO0//soTMWx/QUt+OcxMqMSBxz23PYGqUuWm2+m2mNNsmj0eIoOaFg==", + "dev": true, + "dependencies": { + "@jest/test-result": "^29.3.1", + "@jest/types": "^29.3.1", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "jest-util": "^29.3.1", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-watcher/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-worker": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.3.1.tgz", + "integrity": "sha512-lY4AnnmsEWeiXirAIA0c9SDPbuCBq8IYuDVL8PMm0MZ2PEs2yPvRA/J64QBXuZp7CYKrDM/rmNrc9/i3KJQncw==", + "dev": true, + "dependencies": { + "@types/node": "*", + "jest-util": "^29.3.1", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/js-sdsl": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.2.0.tgz", + "integrity": "sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ==", + "dev": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/js-sdsl" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonc-parser": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", + "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", + "dev": true + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dev": true, + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/kareem": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/kareem/-/kareem-2.5.0.tgz", + "integrity": "sha512-rVBUGGwvqg130iwYu8k7lutHuDBFj1yGRdnlE44wEhxAmFBad1zcL66PdWC1raw3tIObY6XWhtv3VL04xQb/cg==", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/libphonenumber-js": { + "version": "1.10.15", + "resolved": "https://registry.npmjs.org/libphonenumber-js/-/libphonenumber-js-1.10.15.tgz", + "integrity": "sha512-sLeVLmWX17VCKKulc+aDIRHS95TxoTsKMRJi5s5gJdwlqNzMWcBCtSHHruVyXjqfi67daXM2SnLf2juSrdx5Sg==" + }, + "node_modules/light-my-request": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/light-my-request/-/light-my-request-5.6.1.tgz", + "integrity": "sha512-sbJnC1UBRivi9L1kICr3CESb82pNiPNB3TvtdIrZZqW0Qh8uDXvoywMmWKZlihDcmw952CMICCzM+54LDf+E+g==", + "dependencies": { + "cookie": "^0.5.0", + "process-warning": "^2.0.0", + "set-cookie-parser": "^2.4.1" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "dev": true + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "dev": true, + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", + "dev": true + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-symbols/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/macos-release": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/macos-release/-/macos-release-2.5.0.tgz", + "integrity": "sha512-EIgv+QZ9r+814gjJj0Bt5vSLJLzswGmSUbUpbi9AIr/fsN2IWFBl2NucV9PAiek+U1STK468tEkxmVYUtuAN3g==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/magic-string": { + "version": "0.26.7", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.26.7.tgz", + "integrity": "sha512-hX9XH3ziStPoPhJxLq1syWuZMxbDvGNbVchfrdCtanC7D13888bMFow61x8axrx+GfHLtVeAx2kxL7tTGRl+Ow==", + "dev": true, + "dependencies": { + "sourcemap-codec": "^1.4.8" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "dev": true, + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memfs": { + "version": "3.4.12", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.4.12.tgz", + "integrity": "sha512-BcjuQn6vfqP+k100e0E9m61Hyqa//Brp+I3f0OBmN0ATHlFA8vx3Lt8z57R3u2bPqe3WGDBC+nF72fTH7isyEw==", + "dev": true, + "dependencies": { + "fs-monkey": "^1.0.3" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/memory-pager": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==", + "optional": true + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dev": true, + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mnemonist": { + "version": "0.39.5", + "resolved": "https://registry.npmjs.org/mnemonist/-/mnemonist-0.39.5.tgz", + "integrity": "sha512-FPUtkhtJ0efmEFGpU14x7jGbTB+s18LrzRL2KgoWz9YvcY3cPomz8tih01GbHwnGk/OmkOKfqd/RAQoc8Lm7DQ==", + "dependencies": { + "obliterator": "^2.0.1" + } + }, + "node_modules/mongodb": { + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.12.1.tgz", + "integrity": "sha512-koT87tecZmxPKtxRQD8hCKfn+ockEL2xBiUvx3isQGI6mFmagWt4f4AyCE9J4sKepnLhMacoCTQQA6SLAI2L6w==", + "dependencies": { + "bson": "^4.7.0", + "mongodb-connection-string-url": "^2.5.4", + "socks": "^2.7.1" + }, + "engines": { + "node": ">=12.9.0" + }, + "optionalDependencies": { + "@aws-sdk/credential-providers": "^3.186.0", + "saslprep": "^1.0.3" + } + }, + "node_modules/mongodb-connection-string-url": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz", + "integrity": "sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==", + "dependencies": { + "@types/whatwg-url": "^8.2.1", + "whatwg-url": "^11.0.0" + } + }, + "node_modules/mongodb-connection-string-url/node_modules/tr46": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", + "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", + "dependencies": { + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/mongodb-connection-string-url/node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "engines": { + "node": ">=12" + } + }, + "node_modules/mongodb-connection-string-url/node_modules/whatwg-url": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", + "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", + "dependencies": { + "tr46": "^3.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/mongoose": { + "version": "6.8.2", + "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.8.2.tgz", + "integrity": "sha512-cIato5N2w/QuJkkh0w4nyf7ty7DqmmP/W8/6PFSM0DrzbxIMlr6VN15LBIceTSJIxbznNl2Mlbh9Rm4sokMw+A==", + "dependencies": { + "bson": "^4.7.0", + "kareem": "2.5.0", + "mongodb": "4.12.1", + "mpath": "0.9.0", + "mquery": "4.0.3", + "ms": "2.1.3", + "sift": "16.0.1" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/mongoose" + } + }, + "node_modules/mongoose/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/mpath": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz", + "integrity": "sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/mquery": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/mquery/-/mquery-4.0.3.tgz", + "integrity": "sha512-J5heI+P08I6VJ2Ky3+33IpCdAvlYGTSUjwTPxkAr8i8EoduPMBX2OY/wa3IKZIQl7MU4SbFk8ndgSKyB/cl1zA==", + "dependencies": { + "debug": "4.x" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/multer": { + "version": "1.4.4-lts.1", + "resolved": "https://registry.npmjs.org/multer/-/multer-1.4.4-lts.1.tgz", + "integrity": "sha512-WeSGziVj6+Z2/MwQo3GvqzgR+9Uc+qt8SwHKh3gvNPiISKfsMfG4SvCOFYlxxgkXt7yIV2i1yczehm0EOKIxIg==", + "dependencies": { + "append-field": "^1.0.0", + "busboy": "^1.0.0", + "concat-stream": "^1.5.2", + "mkdirp": "^0.5.4", + "object-assign": "^4.1.1", + "type-is": "^1.6.4", + "xtend": "^4.0.0" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/natural-compare-lite": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", + "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==", + "dev": true + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true + }, + "node_modules/node-abort-controller": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.0.1.tgz", + "integrity": "sha512-/ujIVxthRs+7q6hsdjHMaj8hRG9NuWmwrz+JdRwZ14jdFoKSkm+vDsCbF9PLpnSqjaWQJuTmVtcWHNLr+vrOFw==", + "dev": true + }, + "node_modules/node-emoji": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz", + "integrity": "sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==", + "dev": true, + "dependencies": { + "lodash": "^4.17.21" + } + }, + "node_modules/node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "dev": true + }, + "node_modules/node-releases": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.8.tgz", + "integrity": "sha512-dFSmB8fFHEH/s81Xi+Y/15DQY6VHW81nXRj86EMSL3lmuTmK1e+aT4wrFCkTbm+gSwkw4KpX+rT/pMM2c1mF+A==", + "dev": true + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/object-inspect": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/obliterator": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/obliterator/-/obliterator-2.0.4.tgz", + "integrity": "sha512-lgHwxlxV1qIg1Eap7LgIeoBWIMFibOjbrYPIPJZcI1mmGAI2m3lNYpK12Y+GBdPQ0U1hRwSord7GIaawz962qQ==" + }, + "node_modules/on-exit-leak-free": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/on-exit-leak-free/-/on-exit-leak-free-2.1.0.tgz", + "integrity": "sha512-VuCaZZAjReZ3vUwgOB8LxAosIurDiAW0s13rI1YwmaP++jvcxP77AWoQvenZebpCA2m8WC1/EosPYPMjnRAp/w==" + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "dev": true, + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/os-name": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/os-name/-/os-name-4.0.1.tgz", + "integrity": "sha512-xl9MAoU97MH1Xt5K9ERft2YfCAoaO6msy1OBA0ozxEC0x0TmIoE6K3QvgJMMZA9yKGLmHXNY/YZoDbiGDj4zYw==", + "dev": true, + "dependencies": { + "macos-release": "^2.5.0", + "windows-release": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/path-to-regexp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-3.2.0.tgz", + "integrity": "sha512-jczvQbCUS7XmS7o+y1aEO9OBVFeZBQ1MDSEqmO7xSoPgOPoowY/SxLpZ6Vh97/8qHZOteiCKb7gkG9gA2ZUxJA==" + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pino": { + "version": "8.8.0", + "resolved": "https://registry.npmjs.org/pino/-/pino-8.8.0.tgz", + "integrity": "sha512-cF8iGYeu2ODg2gIwgAHcPrtR63ILJz3f7gkogaHC/TXVVXxZgInmNYiIpDYEwgEkxZti2Se6P2W2DxlBIZe6eQ==", + "dependencies": { + "atomic-sleep": "^1.0.0", + "fast-redact": "^3.1.1", + "on-exit-leak-free": "^2.1.0", + "pino-abstract-transport": "v1.0.0", + "pino-std-serializers": "^6.0.0", + "process-warning": "^2.0.0", + "quick-format-unescaped": "^4.0.3", + "real-require": "^0.2.0", + "safe-stable-stringify": "^2.3.1", + "sonic-boom": "^3.1.0", + "thread-stream": "^2.0.0" + }, + "bin": { + "pino": "bin.js" + } + }, + "node_modules/pino-abstract-transport": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-1.0.0.tgz", + "integrity": "sha512-c7vo5OpW4wIS42hUVcT5REsL8ZljsUfBjqV/e2sFxmFEFZiq1XLUp5EYLtuDH6PEHq9W1egWqRbnLUP5FuZmOA==", + "dependencies": { + "readable-stream": "^4.0.0", + "split2": "^4.0.0" + } + }, + "node_modules/pino-abstract-transport/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/pino-abstract-transport/node_modules/readable-stream": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.3.0.tgz", + "integrity": "sha512-MuEnA0lbSi7JS8XM+WNJlWZkHAAdm7gETHdFK//Q/mChGyj2akEFtdLZh32jSdkWGbRwCW9pn6g3LWDdDeZnBQ==", + "dependencies": { + "abort-controller": "^3.0.0", + "buffer": "^6.0.3", + "events": "^3.3.0", + "process": "^0.11.10" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/pino-std-serializers": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-6.1.0.tgz", + "integrity": "sha512-KO0m2f1HkrPe9S0ldjx7za9BJjeHqBku5Ch8JyxETxT8dEFGz1PwgrHaOQupVYitpzbFSYm7nnljxD8dik2c+g==" + }, + "node_modules/pirates": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", + "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pluralize": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", + "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.1.tgz", + "integrity": "sha512-lqGoSJBQNJidqCHE80vqZJHWHRFoNYsSpP9AjFhlhi9ODCJA541svILes/+/1GM3VaL/abZi7cpFzOpdR9UPKg==", + "dev": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "dev": true, + "dependencies": { + "fast-diff": "^1.1.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/pretty-format": { + "version": "29.3.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.3.1.tgz", + "integrity": "sha512-FyLnmb1cYJV8biEIiRyzRFvs2lry7PPIvOqKVe1GCUEYg4YGmlx1qG9EJNMxArYm7piII4qb8UV1Pncq5dxmcg==", + "dev": true, + "dependencies": { + "@jest/schemas": "^29.0.0", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "node_modules/process-warning": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-2.1.0.tgz", + "integrity": "sha512-9C20RLxrZU/rFnxWncDkuF6O999NdIf3E1ws4B0ZeY3sRVPzWBMsYDE2lxjxhiXxg464cQTgKUGm8/i6y2YGXg==" + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dev": true, + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/quick-format-unescaped": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz", + "integrity": "sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==" + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true + }, + "node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/readable-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/real-require": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/real-require/-/real-require-0.2.0.tgz", + "integrity": "sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg==", + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "dev": true, + "dependencies": { + "resolve": "^1.1.6" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/reflect-metadata": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", + "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==" + }, + "node_modules/regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dev": true, + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-cwd/node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve.exports": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-1.1.0.tgz", + "integrity": "sha512-J1l+Zxxp4XK3LUDZ9m60LRJF/mAe4z6a4xyabPHk7pvK5t35dACV32iIjJDFeWZFfZlO29w6SZ67knR0tHzJtQ==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ret": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.2.2.tgz", + "integrity": "sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rfdc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==" + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rxjs": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz", + "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safe-regex2": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/safe-regex2/-/safe-regex2-2.0.0.tgz", + "integrity": "sha512-PaUSFsUaNNuKwkBijoAPHAK6/eM6VirvyPWlZ7BAQy4D+hCvh4B6lIG+nPdhbFfIbP+gTGBcrdsOaUs0F+ZBOQ==", + "dependencies": { + "ret": "~0.2.0" + } + }, + "node_modules/safe-stable-stringify": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.2.tgz", + "integrity": "sha512-gMxvPJYhP0O9n2pvcfYfIuYgbledAOJFcqRThtPRmjscaipiwcwPPKLytpVzMkG2HAN87Qmo2d4PtGiri1dSLA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/saslprep": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.3.tgz", + "integrity": "sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==", + "optional": true, + "dependencies": { + "sparse-bitfield": "^3.0.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/schema-utils/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/schema-utils/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/schema-utils/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/secure-json-parse": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-2.6.0.tgz", + "integrity": "sha512-B9osKohb6L+EZ6Kve3wHKfsAClzOC/iISA2vSuCe5Jx5NAKiwitfxx8ZKYapHXr0sYRj7UZInT7pLb3rp2Yx6A==" + }, + "node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/serialize-javascript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", + "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", + "dev": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/set-cookie-parser": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-2.5.1.tgz", + "integrity": "sha512-1jeBGaKNGdEq4FgIrORu/N570dwoPYio8lSoYLWmX7sQ//0JY08Xh9o5pBcgmHQ/MbsYp/aZnOe1s1lIsbLprQ==" + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/shelljs": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", + "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "dev": true, + "dependencies": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + }, + "bin": { + "shjs": "bin/shjs" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/sift": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/sift/-/sift-16.0.1.tgz", + "integrity": "sha512-Wv6BjQ5zbhW7VFefWusVP33T/EM0vYikCaQ2qR8yULbsilAT8/wQaXvuQ3ptGLpoKx+lihJE3y2UTgKDyyNHZQ==" + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "dev": true + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", + "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", + "dependencies": { + "ip": "^2.0.0", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.13.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/sonic-boom": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.2.1.tgz", + "integrity": "sha512-iITeTHxy3B9FGu8aVdiDXUVAcHMF9Ss0cCsAOo2HfCrmVGT3/DT5oYaeu0M/YKZDlKTvChEyPq0zI9Hf33EX6A==", + "dependencies": { + "atomic-sleep": "^1.0.0" + } + }, + "node_modules/source-map": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz", + "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dev": true, + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-support/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "deprecated": "Please use @jridgewell/sourcemap-codec instead", + "dev": true + }, + "node_modules/sparse-bitfield": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", + "integrity": "sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==", + "optional": true, + "dependencies": { + "memory-pager": "^1.0.2" + } + }, + "node_modules/split2": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-4.1.0.tgz", + "integrity": "sha512-VBiJxFkxiXRlUIeyMQi8s4hgvKCSjtknJv/LVYbrgALPwf5zSKmEwV9Lst25AkvMDnvxODugjdl6KZgwKM1WYQ==", + "engines": { + "node": ">= 10.x" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-utils/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/streamsearch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz", + "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "dev": true, + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/strnum": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-1.0.5.tgz", + "integrity": "sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==", + "optional": true + }, + "node_modules/superagent": { + "version": "8.0.6", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-8.0.6.tgz", + "integrity": "sha512-HqSe6DSIh3hEn6cJvCkaM1BLi466f1LHi4yubR0tpewlMpk4RUFFy35bKz8SsPBwYfIIJy5eclp+3tCYAuX0bw==", + "dev": true, + "dependencies": { + "component-emitter": "^1.3.0", + "cookiejar": "^2.1.3", + "debug": "^4.3.4", + "fast-safe-stringify": "^2.1.1", + "form-data": "^4.0.0", + "formidable": "^2.1.1", + "methods": "^1.1.2", + "mime": "2.6.0", + "qs": "^6.11.0", + "semver": "^7.3.8" + }, + "engines": { + "node": ">=6.4.0 <13 || >=14" + } + }, + "node_modules/superagent/node_modules/mime": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz", + "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/supertest": { + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/supertest/-/supertest-6.3.3.tgz", + "integrity": "sha512-EMCG6G8gDu5qEqRQ3JjjPs6+FYT1a7Hv5ApHvtSghmOFJYtsU5S+pSb6Y2EUeCEY3CmEL3mmQ8YWlPOzQomabA==", + "dev": true, + "dependencies": { + "methods": "^1.1.2", + "superagent": "^8.0.5" + }, + "engines": { + "node": ">=6.4.0" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/symbol-observable": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-4.0.0.tgz", + "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", + "dev": true, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/terser": { + "version": "5.16.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.1.tgz", + "integrity": "sha512-xvQfyfA1ayT0qdK47zskQgRZeWLoOQ8JQ6mIgRGVNwZKdQMU+5FkCBjmv4QjcrTzyZquRw2FVtlJSRUmMKQslw==", + "dev": true, + "dependencies": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.6", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz", + "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.14", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.0", + "terser": "^5.14.1" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser-webpack-plugin/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/terser-webpack-plugin/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "dev": true, + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/thread-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-2.2.0.tgz", + "integrity": "sha512-rUkv4/fnb4rqy/gGy7VuqK6wE1+1DOCOWy4RMeaV69ZHMP11tQKZvZSip1yTgrKCMZzEMcCL/bKfHvSfDHx+iQ==", + "dependencies": { + "real-require": "^0.2.0" + } + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true + }, + "node_modules/tiny-lru": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/tiny-lru/-/tiny-lru-10.0.1.tgz", + "integrity": "sha512-Vst+6kEsWvb17Zpz14sRJV/f8bUWKhqm6Dc+v08iShmIJ/WxqWytHzCTd6m88pS33rE2zpX34TRmOpAJPloNCA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "dev": true + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "dev": true, + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/ts-jest": { + "version": "29.0.3", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.0.3.tgz", + "integrity": "sha512-Ibygvmuyq1qp/z3yTh9QTwVVAbFdDy/+4BtIQR2sp6baF2SJU/8CKK/hhnGIDY2L90Az2jIqTwZPnN2p+BweiQ==", + "dev": true, + "dependencies": { + "bs-logger": "0.x", + "fast-json-stable-stringify": "2.x", + "jest-util": "^29.0.0", + "json5": "^2.2.1", + "lodash.memoize": "4.x", + "make-error": "1.x", + "semver": "7.x", + "yargs-parser": "^21.0.1" + }, + "bin": { + "ts-jest": "cli.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": ">=7.0.0-beta.0 <8", + "@jest/types": "^29.0.0", + "babel-jest": "^29.0.0", + "jest": "^29.0.0", + "typescript": ">=4.3" + }, + "peerDependenciesMeta": { + "@babel/core": { + "optional": true + }, + "@jest/types": { + "optional": true + }, + "babel-jest": { + "optional": true + }, + "esbuild": { + "optional": true + } + } + }, + "node_modules/ts-loader": { + "version": "9.4.2", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.4.2.tgz", + "integrity": "sha512-OmlC4WVmFv5I0PpaxYb+qGeGOdm5giHU7HwDDUjw59emP2UYMHy9fFSDcYgSNoH8sXcj4hGCSEhlDZ9ULeDraA==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "enhanced-resolve": "^5.0.0", + "micromatch": "^4.0.0", + "semver": "^7.3.4" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "typescript": "*", + "webpack": "^5.0.0" + } + }, + "node_modules/ts-loader/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/ts-node": { + "version": "10.9.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", + "integrity": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==", + "dev": true, + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } + } + }, + "node_modules/tsconfig-paths": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.1.1.tgz", + "integrity": "sha512-VgPrtLKpRgEAJsMj5Q/I/mXouC6A/7eJ/X4Nuk6o0cRPwBtznYxTCU4FodbexbzH9somBPEXYi0ZkUViUpJ21Q==", + "dev": true, + "dependencies": { + "json5": "^2.2.1", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tsconfig-paths-webpack-plugin": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths-webpack-plugin/-/tsconfig-paths-webpack-plugin-4.0.0.tgz", + "integrity": "sha512-fw/7265mIWukrSHd0i+wSwx64kYUSAKPfxRDksjKIYTxSAp9W9/xcZVBF4Kl0eqQd5eBpAQ/oQrc5RyM/0c1GQ==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "enhanced-resolve": "^5.7.0", + "tsconfig-paths": "^4.0.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/tsconfig-paths-webpack-plugin/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/tsconfig-paths/node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/tslib": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", + "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" + }, + "node_modules/tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, + "dependencies": { + "tslib": "^1.8.1" + }, + "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" + } + }, + "node_modules/tsutils/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==" + }, + "node_modules/typescript": { + "version": "4.9.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.4.tgz", + "integrity": "sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "dev": true, + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "browserslist-lint": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz", + "integrity": "sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "dev": true + }, + "node_modules/v8-to-istanbul": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.0.1.tgz", + "integrity": "sha512-74Y4LqY74kLE6IFyIjPtkSTWzUZmj8tdHT9Ii/26dvQ6K9Dl2NbEfj0XgU2sHCtKgt5VupqhlO/5aWuqS+IY1w==", + "dev": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^1.6.0" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/v8-to-istanbul/node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", + "dev": true + }, + "node_modules/validator": { + "version": "13.7.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-13.7.0.tgz", + "integrity": "sha512-nYXQLCBkpJ8X6ltALua9dRrZDHVYxjJ1wgskNt1lH9fzGjs3tgojGSCBjmEPwkWS1y29+DrizMTW19Pr9uB2nw==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "dev": true, + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "dev": true, + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "dev": true, + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "node_modules/webpack": { + "version": "5.75.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.75.0.tgz", + "integrity": "sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==", + "dev": true, + "dependencies": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^0.0.51", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.10.0", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.1.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-node-externals": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/webpack-node-externals/-/webpack-node-externals-3.0.0.tgz", + "integrity": "sha512-LnL6Z3GGDPht/AigwRh2dvL9PQPFQ8skEpVrWZXLWBYmqcaojHNN0onvHzie6rq7EWKrrBfPYqNEzTJgiwEQDQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/windows-release": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/windows-release/-/windows-release-4.0.0.tgz", + "integrity": "sha512-OxmV4wzDKB1x7AZaZgXMVsdJ1qER1ed83ZrTYd5Bwq2HfJVg3DJS8nqlAG4sMoJ7mu8cuRmLEYyU13BKwctRAg==", + "dev": true, + "dependencies": { + "execa": "^4.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/windows-release/node_modules/execa": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz", + "integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "get-stream": "^5.0.0", + "human-signals": "^1.1.1", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.0", + "onetime": "^5.1.0", + "signal-exit": "^3.0.2", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/windows-release/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dev": true, + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/windows-release/node_modules/human-signals": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", + "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", + "dev": true, + "engines": { + "node": ">=8.12.0" + } + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "dev": true, + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "17.6.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz", + "integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..0868f98 --- /dev/null +++ b/package.json @@ -0,0 +1,78 @@ +{ + "name": "weather-api", + "version": "0.0.1", + "description": "", + "author": "", + "private": true, + "license": "UNLICENSED", + "scripts": { + "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,apps,libs,test}/**/*.ts\" --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" + }, + "dependencies": { + "@fastify/static": "^6.6.0", + "@forlagshuset/nestjs-mongoose-paginate": "^1.2.6", + "@nestjs/common": "^9.0.0", + "@nestjs/config": "^2.2.0", + "@nestjs/core": "^9.0.0", + "@nestjs/mapped-types": "*", + "@nestjs/mongoose": "^9.2.1", + "@nestjs/platform-express": "^9.0.0", + "@nestjs/platform-fastify": "^9.2.1", + "@nestjs/serve-static": "^3.0.0", + "@nestjs/websockets": "^9.2.1", + "mongoose": "^6.8.2", + "reflect-metadata": "^0.1.13", + "rxjs": "^7.2.0" + }, + "devDependencies": { + "@nestjs/cli": "^9.0.0", + "@nestjs/schematics": "^9.0.0", + "@nestjs/testing": "^9.0.0", + "@types/express": "^4.17.13", + "@types/jest": "29.2.4", + "@types/node": "18.11.18", + "@types/supertest": "^2.0.11", + "@typescript-eslint/eslint-plugin": "^5.0.0", + "@typescript-eslint/parser": "^5.0.0", + "eslint": "^8.0.1", + "eslint-config-prettier": "^8.3.0", + "eslint-plugin-prettier": "^4.0.0", + "jest": "29.3.1", + "prettier": "^2.3.2", + "source-map-support": "^0.5.20", + "supertest": "^6.1.3", + "ts-jest": "29.0.3", + "ts-loader": "^9.2.3", + "ts-node": "^10.0.0", + "tsconfig-paths": "4.1.1", + "typescript": "^4.7.4" + }, + "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/src/app.controller.spec.ts b/src/app.controller.spec.ts new file mode 100644 index 0000000..d22f389 --- /dev/null +++ b/src/app.controller.spec.ts @@ -0,0 +1,22 @@ +import { Test, TestingModule } from '@nestjs/testing'; +import { AppController } from './app.controller'; +import { AppService } from './app.service'; + +describe('AppController', () => { + let appController: AppController; + + beforeEach(async () => { + const app: TestingModule = await Test.createTestingModule({ + controllers: [AppController], + providers: [AppService], + }).compile(); + + appController = app.get(AppController); + }); + + describe('root', () => { + it('should return "Hello World!"', () => { + expect(appController.getHello()).toBe('Hello World!'); + }); + }); +}); diff --git a/src/app.controller.ts b/src/app.controller.ts new file mode 100644 index 0000000..cce879e --- /dev/null +++ b/src/app.controller.ts @@ -0,0 +1,12 @@ +import { Controller, Get } from '@nestjs/common'; +import { AppService } from './app.service'; + +@Controller() +export class AppController { + constructor(private readonly appService: AppService) {} + + @Get() + getHello(): string { + return this.appService.getHello(); + } +} diff --git a/src/app.module.ts b/src/app.module.ts new file mode 100644 index 0000000..9d2dc57 --- /dev/null +++ b/src/app.module.ts @@ -0,0 +1,31 @@ +import { Module } from '@nestjs/common'; +import { AppController } from './app.controller'; +import { AppService } from './app.service'; +import { MongooseModule } from '@nestjs/mongoose'; +import { ConfigModule } from '@nestjs/config'; +import { WeatherModule } from './weather/weather.module'; +import { RouterModule } from '@nestjs/core'; +import { ServeStaticModule } from '@nestjs/serve-static'; +import { join } from 'path'; +import { NotificationModule } from './notification/notification.module'; + +@Module({ + imports: [ + ConfigModule.forRoot(), + MongooseModule.forRoot(process.env.DATABASE_URL), + ServeStaticModule.forRoot({ + rootPath: join(__dirname, '..', 'client'), + }), + WeatherModule, + RouterModule.register([ + { + path: '/api/v1', + module: WeatherModule, + }, + ]), + NotificationModule, + ], + controllers: [AppController], + providers: [AppService], +}) +export class AppModule {} diff --git a/src/app.service.ts b/src/app.service.ts new file mode 100644 index 0000000..927d7cc --- /dev/null +++ b/src/app.service.ts @@ -0,0 +1,8 @@ +import { Injectable } from '@nestjs/common'; + +@Injectable() +export class AppService { + getHello(): string { + return 'Hello World!'; + } +} diff --git a/src/main.ts b/src/main.ts new file mode 100644 index 0000000..b43cce4 --- /dev/null +++ b/src/main.ts @@ -0,0 +1,16 @@ +import { NestFactory } from '@nestjs/core'; +import { + FastifyAdapter, + NestFastifyApplication, +} from '@nestjs/platform-fastify'; +import { AppModule } from './app.module'; + +async function bootstrap() { + const app = await NestFactory.create( + AppModule, + new FastifyAdapter({ logger: true }), + { cors: true }, + ); + await app.listen(3001); +} +bootstrap(); diff --git a/src/notification/dto/create-notification.dto.ts b/src/notification/dto/create-notification.dto.ts new file mode 100644 index 0000000..98ca479 --- /dev/null +++ b/src/notification/dto/create-notification.dto.ts @@ -0,0 +1 @@ +export class CreateNotificationDto {} diff --git a/src/notification/dto/update-notification.dto.ts b/src/notification/dto/update-notification.dto.ts new file mode 100644 index 0000000..f639cde --- /dev/null +++ b/src/notification/dto/update-notification.dto.ts @@ -0,0 +1,6 @@ +import { PartialType } from '@nestjs/mapped-types'; +import { CreateNotificationDto } from './create-notification.dto'; + +export class UpdateNotificationDto extends PartialType(CreateNotificationDto) { + id: number; +} diff --git a/src/notification/entities/notification.entity.ts b/src/notification/entities/notification.entity.ts new file mode 100644 index 0000000..b79d7d5 --- /dev/null +++ b/src/notification/entities/notification.entity.ts @@ -0,0 +1 @@ +export class Notification {} diff --git a/src/notification/notification.gateway.spec.ts b/src/notification/notification.gateway.spec.ts new file mode 100644 index 0000000..fcd6ddc --- /dev/null +++ b/src/notification/notification.gateway.spec.ts @@ -0,0 +1,19 @@ +import { Test, TestingModule } from '@nestjs/testing'; +import { NotificationGateway } from './notification.gateway'; +import { NotificationService } from './notification.service'; + +describe('NotificationGateway', () => { + let gateway: NotificationGateway; + + beforeEach(async () => { + const module: TestingModule = await Test.createTestingModule({ + providers: [NotificationGateway, NotificationService], + }).compile(); + + gateway = module.get(NotificationGateway); + }); + + it('should be defined', () => { + expect(gateway).toBeDefined(); + }); +}); diff --git a/src/notification/notification.gateway.ts b/src/notification/notification.gateway.ts new file mode 100644 index 0000000..f349ad6 --- /dev/null +++ b/src/notification/notification.gateway.ts @@ -0,0 +1,41 @@ +import { + WebSocketGateway, + SubscribeMessage, + MessageBody, +} from '@nestjs/websockets'; +import { NotificationService } from './notification.service'; +import { CreateNotificationDto } from './dto/create-notification.dto'; +import { UpdateNotificationDto } from './dto/update-notification.dto'; + +@WebSocketGateway() +export class NotificationGateway { + constructor(private readonly notificationService: NotificationService) {} + + @SubscribeMessage('createNotification') + create(@MessageBody() createNotificationDto: CreateNotificationDto) { + return this.notificationService.create(createNotificationDto); + } + + @SubscribeMessage('findAllNotification') + findAll() { + return this.notificationService.findAll(); + } + + @SubscribeMessage('findOneNotification') + findOne(@MessageBody() id: number) { + return this.notificationService.findOne(id); + } + + @SubscribeMessage('updateNotification') + update(@MessageBody() updateNotificationDto: UpdateNotificationDto) { + return this.notificationService.update( + updateNotificationDto.id, + updateNotificationDto, + ); + } + + @SubscribeMessage('removeNotification') + remove(@MessageBody() id: number) { + return this.notificationService.remove(id); + } +} diff --git a/src/notification/notification.module.ts b/src/notification/notification.module.ts new file mode 100644 index 0000000..5fbe9ea --- /dev/null +++ b/src/notification/notification.module.ts @@ -0,0 +1,8 @@ +import { Module } from '@nestjs/common'; +import { NotificationService } from './notification.service'; +import { NotificationGateway } from './notification.gateway'; + +@Module({ + providers: [NotificationGateway, NotificationService] +}) +export class NotificationModule {} diff --git a/src/notification/notification.service.spec.ts b/src/notification/notification.service.spec.ts new file mode 100644 index 0000000..65bd59d --- /dev/null +++ b/src/notification/notification.service.spec.ts @@ -0,0 +1,18 @@ +import { Test, TestingModule } from '@nestjs/testing'; +import { NotificationService } from './notification.service'; + +describe('NotificationService', () => { + let service: NotificationService; + + beforeEach(async () => { + const module: TestingModule = await Test.createTestingModule({ + providers: [NotificationService], + }).compile(); + + service = module.get(NotificationService); + }); + + it('should be defined', () => { + expect(service).toBeDefined(); + }); +}); diff --git a/src/notification/notification.service.ts b/src/notification/notification.service.ts new file mode 100644 index 0000000..75f978f --- /dev/null +++ b/src/notification/notification.service.ts @@ -0,0 +1,26 @@ +import { Injectable } from '@nestjs/common'; +import { CreateNotificationDto } from './dto/create-notification.dto'; +import { UpdateNotificationDto } from './dto/update-notification.dto'; + +@Injectable() +export class NotificationService { + create(createNotificationDto: CreateNotificationDto) { + return 'This action adds a new notification'; + } + + findAll() { + return `This action returns all notification`; + } + + findOne(id: number) { + return `This action returns a #${id} notification`; + } + + update(id: number, updateNotificationDto: UpdateNotificationDto) { + return `This action updates a #${id} notification`; + } + + remove(id: number) { + return `This action removes a #${id} notification`; + } +} diff --git a/src/weather/dto/create-weather.dto.ts b/src/weather/dto/create-weather.dto.ts new file mode 100644 index 0000000..bbf1076 --- /dev/null +++ b/src/weather/dto/create-weather.dto.ts @@ -0,0 +1 @@ +export class CreateWeatherDto {} diff --git a/src/weather/dto/update-weather.dto.ts b/src/weather/dto/update-weather.dto.ts new file mode 100644 index 0000000..5afc7ed --- /dev/null +++ b/src/weather/dto/update-weather.dto.ts @@ -0,0 +1,4 @@ +import { PartialType } from '@nestjs/mapped-types'; +import { CreateWeatherDto } from './create-weather.dto'; + +export class UpdateWeatherDto extends PartialType(CreateWeatherDto) {} diff --git a/src/weather/entities/weather.entity.ts b/src/weather/entities/weather.entity.ts new file mode 100644 index 0000000..d1ee42d --- /dev/null +++ b/src/weather/entities/weather.entity.ts @@ -0,0 +1 @@ +export class Weather {} diff --git a/src/weather/schemas/weather.schema.ts b/src/weather/schemas/weather.schema.ts new file mode 100644 index 0000000..a52d857 --- /dev/null +++ b/src/weather/schemas/weather.schema.ts @@ -0,0 +1,48 @@ +import { Prop, Schema, SchemaFactory } from '@nestjs/mongoose'; +import { HydratedDocument } from 'mongoose'; + +export type WeatherDocument = HydratedDocument; + +@Schema() +export class Weather { + @Prop() + deviceId: string; + + @Prop() + date: Date; + + @Prop() + summary: string; + + @Prop() + precipType: string; + + @Prop() + temperature: number; + + @Prop() + apparentTemperature: number; + + @Prop() + humidity: number; + + @Prop() + windSpeed: number; + + @Prop() + windBearing: number; + + @Prop() + visibility: number; + + @Prop() + loudCover: number; + + @Prop() + pressure: number; + + @Prop() + dailySummary: string; +} + +export const WeatherSchema = SchemaFactory.createForClass(Weather); diff --git a/src/weather/weather.collection-properties.ts b/src/weather/weather.collection-properties.ts new file mode 100644 index 0000000..3f293d0 --- /dev/null +++ b/src/weather/weather.collection-properties.ts @@ -0,0 +1,12 @@ +import { + CollectionProperties, + Expose, +} from '@forlagshuset/nestjs-mongoose-paginate'; + +export class WeatherCollectionProperties extends CollectionProperties { + @Expose({ name: 'date', sortable: true }) + readonly date: 'asc' | 'desc'; + + @Expose({ name: 'deviceId', sortable: true }) + readonly deviceId: 'asc' | 'desc'; +} diff --git a/src/weather/weather.controller.spec.ts b/src/weather/weather.controller.spec.ts new file mode 100644 index 0000000..7d31df3 --- /dev/null +++ b/src/weather/weather.controller.spec.ts @@ -0,0 +1,20 @@ +import { Test, TestingModule } from '@nestjs/testing'; +import { WeatherController } from './weather.controller'; +import { WeatherService } from './weather.service'; + +describe('WeatherController', () => { + let controller: WeatherController; + + beforeEach(async () => { + const module: TestingModule = await Test.createTestingModule({ + controllers: [WeatherController], + providers: [WeatherService], + }).compile(); + + controller = module.get(WeatherController); + }); + + it('should be defined', () => { + expect(controller).toBeDefined(); + }); +}); diff --git a/src/weather/weather.controller.ts b/src/weather/weather.controller.ts new file mode 100644 index 0000000..796f50d --- /dev/null +++ b/src/weather/weather.controller.ts @@ -0,0 +1,63 @@ +import { + Controller, + Get, + Post, + Body, + Patch, + Param, + Delete, + Query, +} from '@nestjs/common'; +import { WeatherService } from './weather.service'; +import { CreateWeatherDto } from './dto/create-weather.dto'; +import { UpdateWeatherDto } from './dto/update-weather.dto'; +import { WeatherDocument } from './schemas/weather.schema'; +import { + CollectionDto, + CollectionResponse, + ValidationPipe, +} from '@forlagshuset/nestjs-mongoose-paginate'; +import { WeatherCollectionProperties } from './weather.collection-properties'; + +@Controller('weather') +export class WeatherController { + constructor(private readonly weatherService: WeatherService) {} + + @Post() + create(@Body() createWeatherDto: CreateWeatherDto) { + return this.weatherService.create(createWeatherDto); + } + + @Get() + findAll() { + return this.weatherService.findAll(); + } + + @Get('list') + async filter( + @Query(new ValidationPipe(WeatherCollectionProperties)) + collectionDto: CollectionDto, + ): Promise> { + return await this.weatherService.list(collectionDto); + } + + @Get(':id') + findOne(@Param('id') id: string) { + return this.weatherService.findOne(id); + } + + @Get('latest/:deviceId') + latest(@Param('deviceId') deviceId: string) { + return this.weatherService.latest(deviceId); + } + + @Patch(':id') + update(@Param('id') id: string, @Body() updateWeatherDto: UpdateWeatherDto) { + return this.weatherService.update(id, updateWeatherDto); + } + + @Delete(':id') + remove(@Param('id') id: string) { + return this.weatherService.remove(id); + } +} diff --git a/src/weather/weather.module.ts b/src/weather/weather.module.ts new file mode 100644 index 0000000..f8badcd --- /dev/null +++ b/src/weather/weather.module.ts @@ -0,0 +1,14 @@ +import { Module } from '@nestjs/common'; +import { WeatherService } from './weather.service'; +import { WeatherController } from './weather.controller'; +import { MongooseModule } from '@nestjs/mongoose'; +import { Weather, WeatherSchema } from './schemas/weather.schema'; + +@Module({ + imports: [ + MongooseModule.forFeature([{ name: Weather.name, schema: WeatherSchema }]), + ], + controllers: [WeatherController], + providers: [WeatherService], +}) +export class WeatherModule {} diff --git a/src/weather/weather.service.spec.ts b/src/weather/weather.service.spec.ts new file mode 100644 index 0000000..9614b2d --- /dev/null +++ b/src/weather/weather.service.spec.ts @@ -0,0 +1,18 @@ +import { Test, TestingModule } from '@nestjs/testing'; +import { WeatherService } from './weather.service'; + +describe('WeatherService', () => { + let service: WeatherService; + + beforeEach(async () => { + const module: TestingModule = await Test.createTestingModule({ + providers: [WeatherService], + }).compile(); + + service = module.get(WeatherService); + }); + + it('should be defined', () => { + expect(service).toBeDefined(); + }); +}); diff --git a/src/weather/weather.service.ts b/src/weather/weather.service.ts new file mode 100644 index 0000000..adc39df --- /dev/null +++ b/src/weather/weather.service.ts @@ -0,0 +1,51 @@ +import { Injectable } from '@nestjs/common'; +import { CreateWeatherDto } from './dto/create-weather.dto'; +import { UpdateWeatherDto } from './dto/update-weather.dto'; +import { Weather, WeatherDocument } from './schemas/weather.schema'; +import { Model } from 'mongoose'; +import { InjectModel } from '@nestjs/mongoose'; +import { + CollectionDto, + CollectionResponse, + DocumentCollector, +} from '@forlagshuset/nestjs-mongoose-paginate'; + +@Injectable() +export class WeatherService { + constructor( + @InjectModel(Weather.name) private weatherModel: Model, + ) {} + create(createWeatherDto: CreateWeatherDto) { + const weatherModel = new this.weatherModel(createWeatherDto); + return weatherModel.save(); + } + + findAll() { + return this.weatherModel.find().exec(); + } + + async list( + collectionDto: CollectionDto, + ): Promise> { + const collector = new DocumentCollector(this.weatherModel); + return collector.find(collectionDto); + } + + findOne(id: string) { + return this.weatherModel.findById(id).exec(); + } + + latest(deviceId: string) { + return this.weatherModel.findOne({ deviceId: deviceId }).exec(); + } + + async update(id: string, updateWeatherDto: UpdateWeatherDto) { + const weatherModel = await this.weatherModel.findById(id); + weatherModel.overwrite(updateWeatherDto); + return weatherModel.save(); + } + + remove(id: string) { + return this.weatherModel.findByIdAndRemove(id).exec(); + } +} diff --git a/tsconfig.build.json b/tsconfig.build.json new file mode 100644 index 0000000..64f86c6 --- /dev/null +++ b/tsconfig.build.json @@ -0,0 +1,4 @@ +{ + "extends": "./tsconfig.json", + "exclude": ["node_modules", "test", "dist", "**/*spec.ts"] +} diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..adb614c --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,21 @@ +{ + "compilerOptions": { + "module": "commonjs", + "declaration": true, + "removeComments": true, + "emitDecoratorMetadata": true, + "experimentalDecorators": true, + "allowSyntheticDefaultImports": true, + "target": "es2017", + "sourceMap": true, + "outDir": "./dist", + "baseUrl": "./", + "incremental": true, + "skipLibCheck": true, + "strictNullChecks": false, + "noImplicitAny": false, + "strictBindCallApply": false, + "forceConsistentCasingInFileNames": false, + "noFallthroughCasesInSwitch": false + } +}