diff --git a/.env.example b/.env.example index ddcf09a35..fe0d68c00 100644 --- a/.env.example +++ b/.env.example @@ -13,6 +13,7 @@ SESSION_SECRET='add some secret here' # Hoppscotch App Domain Config REDIRECT_URL="http://localhost:3000" WHITELISTED_ORIGINS = "http://localhost:3170,http://localhost:3000,http://localhost:3100" +ALLOWED_AUTH_PROVIDERS = GOOGLE,GITHUB,MICROSOFT,EMAIL # Google Auth Config GOOGLE_CLIENT_ID="************************************************" diff --git a/packages/hoppscotch-backend/src/auth/auth.controller.ts b/packages/hoppscotch-backend/src/auth/auth.controller.ts index dba497161..6375cb584 100644 --- a/packages/hoppscotch-backend/src/auth/auth.controller.ts +++ b/packages/hoppscotch-backend/src/auth/auth.controller.ts @@ -2,9 +2,9 @@ import { Body, Controller, Get, + InternalServerErrorException, Post, Query, - Req, Request, Res, UseGuards, @@ -19,12 +19,18 @@ import { JwtAuthGuard } from './guards/jwt-auth.guard'; import { GqlUser } from 'src/decorators/gql-user.decorator'; import { AuthUser } from 'src/types/AuthUser'; import { RTCookie } from 'src/decorators/rt-cookie.decorator'; -import { authCookieHandler, throwHTTPErr } from './helper'; +import { + AuthProvider, + authCookieHandler, + authProviderCheck, + throwHTTPErr, +} from './helper'; import { GoogleSSOGuard } from './guards/google-sso.guard'; import { GithubSSOGuard } from './guards/github-sso.guard'; import { MicrosoftSSOGuard } from './guards/microsoft-sso-.guard'; import { ThrottlerBehindProxyGuard } from 'src/guards/throttler-behind-proxy.guard'; import { SkipThrottle } from '@nestjs/throttler'; +import { AUTH_PROVIDER_NOT_SPECIFIED } from 'src/errors'; @UseGuards(ThrottlerBehindProxyGuard) @Controller({ path: 'auth', version: '1' }) @@ -39,6 +45,9 @@ export class AuthController { @Body() authData: SignInMagicDto, @Query('origin') origin: string, ) { + if (!authProviderCheck(AuthProvider.EMAIL)) + throwHTTPErr({ message: AUTH_PROVIDER_NOT_SPECIFIED, statusCode: 404 }); + const deviceIdToken = await this.authService.signInMagicLink( authData.email, origin, diff --git a/packages/hoppscotch-backend/src/auth/auth.module.ts b/packages/hoppscotch-backend/src/auth/auth.module.ts index 4793c2b85..2c79e6250 100644 --- a/packages/hoppscotch-backend/src/auth/auth.module.ts +++ b/packages/hoppscotch-backend/src/auth/auth.module.ts @@ -11,6 +11,7 @@ import { RTJwtStrategy } from './strategies/rt-jwt.strategy'; import { GoogleStrategy } from './strategies/google.strategy'; import { GithubStrategy } from './strategies/github.strategy'; import { MicrosoftStrategy } from './strategies/microsoft.strategy'; +import { AuthProvider, authProviderCheck } from './helper'; @Module({ imports: [ @@ -26,9 +27,9 @@ import { MicrosoftStrategy } from './strategies/microsoft.strategy'; AuthService, JwtStrategy, RTJwtStrategy, - GoogleStrategy, - GithubStrategy, - MicrosoftStrategy, + ...(authProviderCheck(AuthProvider.GOOGLE) ? [GoogleStrategy] : []), + ...(authProviderCheck(AuthProvider.GITHUB) ? [GithubStrategy] : []), + ...(authProviderCheck(AuthProvider.MICROSOFT) ? [MicrosoftStrategy] : []), ], controllers: [AuthController], }) diff --git a/packages/hoppscotch-backend/src/auth/guards/github-sso.guard.ts b/packages/hoppscotch-backend/src/auth/guards/github-sso.guard.ts index a76b13c8f..1bf00bc6d 100644 --- a/packages/hoppscotch-backend/src/auth/guards/github-sso.guard.ts +++ b/packages/hoppscotch-backend/src/auth/guards/github-sso.guard.ts @@ -1,8 +1,20 @@ -import { ExecutionContext, Injectable } from '@nestjs/common'; +import { CanActivate, ExecutionContext, Injectable } from '@nestjs/common'; import { AuthGuard } from '@nestjs/passport'; +import { AuthProvider, authProviderCheck, throwHTTPErr } from '../helper'; +import { Observable } from 'rxjs'; +import { AUTH_PROVIDER_NOT_SPECIFIED } from 'src/errors'; @Injectable() -export class GithubSSOGuard extends AuthGuard('github') { +export class GithubSSOGuard extends AuthGuard('github') implements CanActivate { + canActivate( + context: ExecutionContext, + ): boolean | Promise | Observable { + if (!authProviderCheck(AuthProvider.GITHUB)) + throwHTTPErr({ message: AUTH_PROVIDER_NOT_SPECIFIED, statusCode: 404 }); + + return super.canActivate(context); + } + getAuthenticateOptions(context: ExecutionContext) { const req = context.switchToHttp().getRequest(); diff --git a/packages/hoppscotch-backend/src/auth/guards/google-sso.guard.ts b/packages/hoppscotch-backend/src/auth/guards/google-sso.guard.ts index ea5094a1a..c1f2c3b78 100644 --- a/packages/hoppscotch-backend/src/auth/guards/google-sso.guard.ts +++ b/packages/hoppscotch-backend/src/auth/guards/google-sso.guard.ts @@ -1,8 +1,20 @@ -import { ExecutionContext, Injectable } from '@nestjs/common'; +import { CanActivate, ExecutionContext, Injectable } from '@nestjs/common'; import { AuthGuard } from '@nestjs/passport'; +import { AuthProvider, authProviderCheck, throwHTTPErr } from '../helper'; +import { Observable } from 'rxjs'; +import { AUTH_PROVIDER_NOT_SPECIFIED } from 'src/errors'; @Injectable() -export class GoogleSSOGuard extends AuthGuard('google') { +export class GoogleSSOGuard extends AuthGuard('google') implements CanActivate { + canActivate( + context: ExecutionContext, + ): boolean | Promise | Observable { + if (!authProviderCheck(AuthProvider.GOOGLE)) + throwHTTPErr({ message: AUTH_PROVIDER_NOT_SPECIFIED, statusCode: 404 }); + + return super.canActivate(context); + } + getAuthenticateOptions(context: ExecutionContext) { const req = context.switchToHttp().getRequest(); diff --git a/packages/hoppscotch-backend/src/auth/guards/microsoft-sso-.guard.ts b/packages/hoppscotch-backend/src/auth/guards/microsoft-sso-.guard.ts index 8479c57cb..c3a1db17b 100644 --- a/packages/hoppscotch-backend/src/auth/guards/microsoft-sso-.guard.ts +++ b/packages/hoppscotch-backend/src/auth/guards/microsoft-sso-.guard.ts @@ -1,8 +1,26 @@ -import { ExecutionContext, Injectable } from '@nestjs/common'; +import { CanActivate, ExecutionContext, Injectable } from '@nestjs/common'; import { AuthGuard } from '@nestjs/passport'; +import { AuthProvider, authProviderCheck, throwHTTPErr } from '../helper'; +import { Observable } from 'rxjs'; +import { AUTH_PROVIDER_NOT_SPECIFIED } from 'src/errors'; @Injectable() -export class MicrosoftSSOGuard extends AuthGuard('microsoft') { +export class MicrosoftSSOGuard + extends AuthGuard('microsoft') + implements CanActivate +{ + canActivate( + context: ExecutionContext, + ): boolean | Promise | Observable { + if (!authProviderCheck(AuthProvider.MICROSOFT)) + throwHTTPErr({ + message: AUTH_PROVIDER_NOT_SPECIFIED, + statusCode: 404, + }); + + return super.canActivate(context); + } + getAuthenticateOptions(context: ExecutionContext) { const req = context.switchToHttp().getRequest(); diff --git a/packages/hoppscotch-backend/src/auth/helper.ts b/packages/hoppscotch-backend/src/auth/helper.ts index e10cea0d8..3c87a045e 100644 --- a/packages/hoppscotch-backend/src/auth/helper.ts +++ b/packages/hoppscotch-backend/src/auth/helper.ts @@ -1,10 +1,11 @@ -import { ForbiddenException, HttpException, HttpStatus } from '@nestjs/common'; +import { HttpException, HttpStatus } from '@nestjs/common'; import { DateTime } from 'luxon'; import { AuthError } from 'src/types/AuthError'; import { AuthTokens } from 'src/types/AuthTokens'; import { Response } from 'express'; import * as cookie from 'cookie'; -import { COOKIES_NOT_FOUND } from 'src/errors'; +import { AUTH_PROVIDER_NOT_SPECIFIED, COOKIES_NOT_FOUND } from 'src/errors'; +import { throwErr } from 'src/utils'; enum AuthTokenType { ACCESS_TOKEN = 'access_token', @@ -16,6 +17,13 @@ export enum Origin { APP = 'app', } +export enum AuthProvider { + GOOGLE = 'GOOGLE', + GITHUB = 'GITHUB', + MICROSOFT = 'MICROSOFT', + EMAIL = 'EMAIL', +} + /** * This function allows throw to be used as an expression * @param errMessage Message present in the error message @@ -97,3 +105,25 @@ export const subscriptionContextCookieParser = (rawCookies: string) => { refresh_token: cookies[AuthTokenType.REFRESH_TOKEN], }; }; + +/** + * Check to see if given auth provider is present in the ALLOWED_AUTH_PROVIDERS env variable + * + * @param provider Provider we want to check the presence of + * @returns Boolean if provider specified is present or not + */ +export function authProviderCheck(provider: string) { + if (!provider) { + throwErr(AUTH_PROVIDER_NOT_SPECIFIED); + } + + const envVariables = process.env.ALLOWED_AUTH_PROVIDERS + ? process.env.ALLOWED_AUTH_PROVIDERS.split(',').map((provider) => + provider.trim().toUpperCase(), + ) + : []; + + if (!envVariables.includes(provider.toUpperCase())) return false; + + return true; +} diff --git a/packages/hoppscotch-backend/src/errors.ts b/packages/hoppscotch-backend/src/errors.ts index 2e45d5033..451aab645 100644 --- a/packages/hoppscotch-backend/src/errors.ts +++ b/packages/hoppscotch-backend/src/errors.ts @@ -22,6 +22,30 @@ export const AUTH_FAIL = 'auth/fail'; */ export const JSON_INVALID = 'json_invalid'; +/** + * Auth Provider not specified + * (Auth) + */ +export const AUTH_PROVIDER_NOT_SPECIFIED = 'auth/provider_not_specified'; + +/** + * Environment variable "ALLOWED_AUTH_PROVIDERS" is not present in .env file + */ +export const ENV_NOT_FOUND_KEY_AUTH_PROVIDERS = + '"ALLOWED_AUTH_PROVIDERS" is not present in .env file'; + +/** + * Environment variable "ALLOWED_AUTH_PROVIDERS" is empty in .env file + */ +export const ENV_EMPTY_AUTH_PROVIDERS = + '"ALLOWED_AUTH_PROVIDERS" is empty in .env file'; + +/** + * Environment variable "ALLOWED_AUTH_PROVIDERS" contains unsupported provider in .env file + */ +export const ENV_NOT_SUPPORT_AUTH_PROVIDERS = + '"ALLOWED_AUTH_PROVIDERS" contains an unsupported auth provider in .env file'; + /** * Tried to delete a user data document from fb firestore but failed. * (FirebaseService) diff --git a/packages/hoppscotch-backend/src/main.ts b/packages/hoppscotch-backend/src/main.ts index 920f7cce9..3eca997e0 100644 --- a/packages/hoppscotch-backend/src/main.ts +++ b/packages/hoppscotch-backend/src/main.ts @@ -5,11 +5,14 @@ import * as cookieParser from 'cookie-parser'; import { VersioningType } from '@nestjs/common'; import * as session from 'express-session'; import { emitGQLSchemaFile } from './gql-schema'; +import { checkEnvironmentAuthProvider } from './utils'; async function bootstrap() { console.log(`Running in production: ${process.env.PRODUCTION}`); console.log(`Port: ${process.env.PORT}`); + checkEnvironmentAuthProvider(); + const app = await NestFactory.create(AppModule); app.use( diff --git a/packages/hoppscotch-backend/src/utils.ts b/packages/hoppscotch-backend/src/utils.ts index a10349bea..c095683d1 100644 --- a/packages/hoppscotch-backend/src/utils.ts +++ b/packages/hoppscotch-backend/src/utils.ts @@ -9,7 +9,8 @@ import * as E from 'fp-ts/Either'; import * as A from 'fp-ts/Array'; import { TeamMemberRole } from './team/team.model'; import { User } from './user/user.model'; -import { JSON_INVALID } from './errors'; +import { ENV_EMPTY_AUTH_PROVIDERS, ENV_NOT_FOUND_KEY_AUTH_PROVIDERS, ENV_NOT_SUPPORT_AUTH_PROVIDERS, JSON_INVALID } from './errors'; +import { AuthProvider } from './auth/helper'; /** * A workaround to throw an exception in an expression. @@ -152,3 +153,31 @@ export function isValidLength(title: string, length: number) { return true; } + +/** + * This function is called by bootstrap() in main.ts + * It checks if the "ALLOWED_AUTH_PROVIDERS" environment variable is properly set or not. + * If not, it throws an error. + */ +export function checkEnvironmentAuthProvider() { + if (!process.env.hasOwnProperty('ALLOWED_AUTH_PROVIDERS')) { + throw new Error(ENV_NOT_FOUND_KEY_AUTH_PROVIDERS); + } + + if (process.env.ALLOWED_AUTH_PROVIDERS === '') { + throw new Error(ENV_EMPTY_AUTH_PROVIDERS); + } + + const givenAuthProviders = process.env.ALLOWED_AUTH_PROVIDERS.split(',').map( + (provider) => provider.toLocaleUpperCase(), + ); + const supportedAuthProviders = Object.values(AuthProvider).map( + (provider: string) => provider.toLocaleUpperCase(), + ); + + for (const givenAuthProvider of givenAuthProviders) { + if (!supportedAuthProviders.includes(givenAuthProvider)) { + throw new Error(ENV_NOT_SUPPORT_AUTH_PROVIDERS); + } + } +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 35c19d7ee..661f27d9c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,9 +1,5 @@ lockfileVersion: '6.0' -settings: - autoInstallPeers: true - excludeLinksFromLockfile: false - importers: .: @@ -200,7 +196,7 @@ importers: version: 9.1.5 '@nestjs/schematics': specifier: ^9.0.3 - version: 9.0.3(typescript@4.9.3) + version: 9.0.3(chokidar@3.5.3)(typescript@4.8.4) '@nestjs/testing': specifier: ^9.2.1 version: 9.2.1(@nestjs/common@9.2.1)(@nestjs/core@9.2.1)(@nestjs/platform-express@9.2.1) @@ -705,7 +701,7 @@ importers: version: 8.24.0 eslint-plugin-prettier: specifier: ^4.2.1 - version: 4.2.1(eslint@8.24.0)(prettier@2.8.4) + version: 4.2.1(eslint-config-prettier@8.6.0)(eslint@8.19.0)(prettier@2.8.4) eslint-plugin-vue: specifier: ^9.5.1 version: 9.5.1(eslint@8.24.0) @@ -729,7 +725,7 @@ importers: version: 0.14.9(@vue/compiler-sfc@3.2.39)(esbuild@0.17.19)(rollup@2.79.1)(vite@3.1.4) unplugin-vue-components: specifier: ^0.21.0 - version: 0.21.0(esbuild@0.17.19)(rollup@2.79.1)(vite@3.1.4)(vue@3.2.37) + version: 0.21.0(esbuild@0.17.19)(rollup@2.79.1)(vite@3.2.4)(vue@3.2.45)(webpack@5.74.0) vite: specifier: ^3.1.4 version: 3.1.4(sass@1.53.0)(terser@5.14.1) @@ -927,7 +923,7 @@ importers: version: 3.1.1(graphql@15.8.0) '@intlify/vite-plugin-vue-i18n': specifier: ^7.0.0 - version: 7.0.0(vite@3.2.4) + version: 7.0.0(vite@3.2.4)(vue-i18n@9.2.2) '@rushstack/eslint-patch': specifier: ^1.1.4 version: 1.1.4 @@ -954,7 +950,7 @@ importers: version: 8.29.0 eslint-plugin-prettier: specifier: ^4.2.1 - version: 4.2.1(eslint-config-prettier@8.5.0)(eslint@8.29.0)(prettier@2.8.4) + version: 4.2.1(eslint-config-prettier@8.6.0)(eslint@8.19.0)(prettier@2.8.4) eslint-plugin-vue: specifier: ^9.5.1 version: 9.5.1(eslint@8.29.0) @@ -966,7 +962,7 @@ importers: version: 4.9.3 unplugin-icons: specifier: ^0.14.9 - version: 0.14.9(rollup@2.79.1)(vite@3.2.4) + version: 0.14.9(@vue/compiler-sfc@3.2.39)(esbuild@0.17.19)(rollup@2.79.1)(vite@3.1.4) unplugin-vue-components: specifier: ^0.21.0 version: 0.21.0(esbuild@0.17.19)(rollup@2.79.1)(vite@3.2.4)(vue@3.2.45)(webpack@5.74.0) @@ -984,7 +980,7 @@ importers: version: 0.7.4(vite@3.2.4) vite-plugin-pages: specifier: ^0.26.0 - version: 0.26.0(vite@3.2.4) + version: 0.26.0(@vue/compiler-sfc@3.2.45)(vite@3.2.4) vite-plugin-pages-sitemap: specifier: ^1.4.5 version: 1.4.5 @@ -1071,10 +1067,10 @@ importers: version: 2.0.0(@types/node@18.16.17)(typescript@4.9.3) unplugin-icons: specifier: ^0.14.9 - version: 0.14.9(@vue/compiler-sfc@3.2.45)(vite@3.2.4) + version: 0.14.9(@vue/compiler-sfc@3.2.39)(esbuild@0.17.19)(rollup@2.79.1)(vite@3.1.4) unplugin-vue-components: specifier: ^0.21.0 - version: 0.21.0(vite@3.2.4)(vue@3.2.45) + version: 0.21.0(esbuild@0.17.19)(rollup@2.79.1)(vite@3.2.4)(vue@3.2.45)(webpack@5.74.0) vue: specifier: ^3.2.6 version: 3.2.45 @@ -1138,7 +1134,7 @@ importers: version: 4.9.3 vite: specifier: ^3.1.4 - version: 3.2.4(@types/node@18.16.17)(sass@1.58.0) + version: 3.2.4(@types/node@17.0.45)(sass@1.53.0)(terser@5.14.1) vite-plugin-pages: specifier: ^0.26.0 version: 0.26.0(@vue/compiler-sfc@3.2.45)(vite@3.2.4) @@ -1280,7 +1276,7 @@ importers: version: 8.29.0 eslint-plugin-prettier: specifier: ^4.2.1 - version: 4.2.1(eslint-config-prettier@8.5.0)(eslint@8.29.0)(prettier@2.8.4) + version: 4.2.1(eslint-config-prettier@8.6.0)(eslint@8.19.0)(prettier@2.8.4) eslint-plugin-vue: specifier: ^9.5.1 version: 9.5.1(eslint@8.29.0) @@ -2943,7 +2939,7 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.18.6 - '@babel/parser': 7.20.15 + '@babel/parser': 7.22.5 '@babel/types': 7.20.7 dev: true @@ -3392,7 +3388,6 @@ packages: cpu: [arm64] os: [android] requiresBuild: true - dev: true optional: true /@esbuild/android-arm@0.15.15: @@ -3418,7 +3413,6 @@ packages: cpu: [arm] os: [android] requiresBuild: true - dev: true optional: true /@esbuild/android-x64@0.16.17: @@ -3436,7 +3430,6 @@ packages: cpu: [x64] os: [android] requiresBuild: true - dev: true optional: true /@esbuild/darwin-arm64@0.16.17: @@ -3454,7 +3447,6 @@ packages: cpu: [arm64] os: [darwin] requiresBuild: true - dev: true optional: true /@esbuild/darwin-x64@0.16.17: @@ -3472,7 +3464,6 @@ packages: cpu: [x64] os: [darwin] requiresBuild: true - dev: true optional: true /@esbuild/freebsd-arm64@0.16.17: @@ -3490,7 +3481,6 @@ packages: cpu: [arm64] os: [freebsd] requiresBuild: true - dev: true optional: true /@esbuild/freebsd-x64@0.16.17: @@ -3508,7 +3498,6 @@ packages: cpu: [x64] os: [freebsd] requiresBuild: true - dev: true optional: true /@esbuild/linux-arm64@0.16.17: @@ -3526,7 +3515,6 @@ packages: cpu: [arm64] os: [linux] requiresBuild: true - dev: true optional: true /@esbuild/linux-arm@0.16.17: @@ -3544,7 +3532,6 @@ packages: cpu: [arm] os: [linux] requiresBuild: true - dev: true optional: true /@esbuild/linux-ia32@0.16.17: @@ -3562,7 +3549,6 @@ packages: cpu: [ia32] os: [linux] requiresBuild: true - dev: true optional: true /@esbuild/linux-loong64@0.15.15: @@ -3596,7 +3582,6 @@ packages: cpu: [loong64] os: [linux] requiresBuild: true - dev: true optional: true /@esbuild/linux-mips64el@0.16.17: @@ -3614,7 +3599,6 @@ packages: cpu: [mips64el] os: [linux] requiresBuild: true - dev: true optional: true /@esbuild/linux-ppc64@0.16.17: @@ -3632,7 +3616,6 @@ packages: cpu: [ppc64] os: [linux] requiresBuild: true - dev: true optional: true /@esbuild/linux-riscv64@0.16.17: @@ -3650,7 +3633,6 @@ packages: cpu: [riscv64] os: [linux] requiresBuild: true - dev: true optional: true /@esbuild/linux-s390x@0.16.17: @@ -3668,7 +3650,6 @@ packages: cpu: [s390x] os: [linux] requiresBuild: true - dev: true optional: true /@esbuild/linux-x64@0.16.17: @@ -3686,7 +3667,6 @@ packages: cpu: [x64] os: [linux] requiresBuild: true - dev: true optional: true /@esbuild/netbsd-x64@0.16.17: @@ -3704,7 +3684,6 @@ packages: cpu: [x64] os: [netbsd] requiresBuild: true - dev: true optional: true /@esbuild/openbsd-x64@0.16.17: @@ -3722,7 +3701,6 @@ packages: cpu: [x64] os: [openbsd] requiresBuild: true - dev: true optional: true /@esbuild/sunos-x64@0.16.17: @@ -3740,7 +3718,6 @@ packages: cpu: [x64] os: [sunos] requiresBuild: true - dev: true optional: true /@esbuild/win32-arm64@0.16.17: @@ -3758,7 +3735,6 @@ packages: cpu: [arm64] os: [win32] requiresBuild: true - dev: true optional: true /@esbuild/win32-ia32@0.16.17: @@ -3776,7 +3752,6 @@ packages: cpu: [ia32] os: [win32] requiresBuild: true - dev: true optional: true /@esbuild/win32-x64@0.16.17: @@ -3794,7 +3769,6 @@ packages: cpu: [x64] os: [win32] requiresBuild: true - dev: true optional: true /@eslint/eslintrc@1.3.0: @@ -5859,8 +5833,8 @@ packages: vue-i18n: optional: true dependencies: - '@intlify/message-compiler': 9.3.0-beta.24 - '@intlify/shared': 9.3.0-beta.24 + '@intlify/message-compiler': 9.3.0-beta.25 + '@intlify/shared': 9.3.0-beta.25 jsonc-eslint-parser: 1.4.1 source-map: 0.6.1 vue-i18n: 9.2.2(vue@3.2.37) @@ -5921,11 +5895,11 @@ packages: source-map-js: 1.0.2 dev: true - /@intlify/message-compiler@9.3.0-beta.24: - resolution: {integrity: sha512-prhHATkgp0mpPqoVgiAtLmUc1JMvs8fMH6w53AVEBn+VF87dLhzanfmWY5FoZWORG51ag54gBDBOoM/VFv3m3A==} + /@intlify/message-compiler@9.3.0-beta.25: + resolution: {integrity: sha512-uT7ybqKoDEw1XITQYnTYjWgZnpCDmHv9e3D4MmJDqHl2qCm6anzdUXWKHUhqR87Ha9Z8Rl44v40iSI/4NUbppQ==} engines: {node: '>= 16'} dependencies: - '@intlify/shared': 9.3.0-beta.24 + '@intlify/shared': 9.3.0-beta.25 source-map-js: 1.0.2 dev: true @@ -5938,8 +5912,8 @@ packages: engines: {node: '>= 16'} dev: true - /@intlify/shared@9.3.0-beta.24: - resolution: {integrity: sha512-AKxJ8s7eKIQWkNaf4wyyoLRwf4puCuQgjSChlDJm5JBEt6T8HGgnYTJLRXu6LD/JACn3Qwu6hM/XRX1c9yvjmQ==} + /@intlify/shared@9.3.0-beta.25: + resolution: {integrity: sha512-Zg+ECV9RPdp227tCJOgvPb+S3i651nf4kKHsMojSyWCppVK/4NFuDrBG2lIQSQL6Iq5LKVr5MkezHCW2NBTQRg==} engines: {node: '>= 16'} dev: true @@ -5959,7 +5933,7 @@ packages: optional: true dependencies: '@intlify/bundle-utils': 7.0.0 - '@intlify/shared': 9.3.0-beta.24 + '@intlify/shared': 9.3.0-beta.25 '@rollup/pluginutils': 4.2.1 debug: 4.3.4(supports-color@9.2.2) fast-glob: 3.2.11 @@ -5986,7 +5960,7 @@ packages: optional: true dependencies: '@intlify/bundle-utils': 3.4.0(vue-i18n@9.2.2) - '@intlify/shared': 9.3.0-beta.24 + '@intlify/shared': 9.3.0-beta.25 '@rollup/pluginutils': 4.2.1 debug: 4.3.4(supports-color@9.2.2) fast-glob: 3.2.12 @@ -5997,33 +5971,6 @@ packages: - supports-color dev: true - /@intlify/vite-plugin-vue-i18n@7.0.0(vite@3.2.4): - resolution: {integrity: sha512-2TbDOQ8XD+vkc0s5OFmr+IY/k4mYMC7pzvx0xGQn+cU/ev314+yi7Z7N7rWcBgiYk1WOUalbGSo3d4nJDxOOyw==} - engines: {node: '>= 14.6'} - deprecated: This plugin support until Vite 3. If you would like to use on Vite 4, please use @intlify/unplugin-vue-i18n - peerDependencies: - petite-vue-i18n: '*' - vite: ^2.9.0 || ^3.0.0 - vue-i18n: '*' - peerDependenciesMeta: - petite-vue-i18n: - optional: true - vite: - optional: true - vue-i18n: - optional: true - dependencies: - '@intlify/bundle-utils': 3.4.0(vue-i18n@9.2.2) - '@intlify/shared': 9.3.0-beta.24 - '@rollup/pluginutils': 4.2.1 - debug: 4.3.4(supports-color@9.2.2) - fast-glob: 3.2.12 - source-map: 0.6.1 - vite: 3.2.4(@types/node@17.0.45)(sass@1.53.0)(terser@5.14.1) - transitivePeerDependencies: - - supports-color - dev: true - /@intlify/vite-plugin-vue-i18n@7.0.0(vite@3.2.4)(vue-i18n@9.2.2): resolution: {integrity: sha512-2TbDOQ8XD+vkc0s5OFmr+IY/k4mYMC7pzvx0xGQn+cU/ev314+yi7Z7N7rWcBgiYk1WOUalbGSo3d4nJDxOOyw==} engines: {node: '>= 14.6'} @@ -6041,12 +5988,12 @@ packages: optional: true dependencies: '@intlify/bundle-utils': 3.4.0(vue-i18n@9.2.2) - '@intlify/shared': 9.3.0-beta.24 + '@intlify/shared': 9.3.0-beta.25 '@rollup/pluginutils': 4.2.1 debug: 4.3.4(supports-color@9.2.2) fast-glob: 3.2.12 source-map: 0.6.1 - vite: 3.2.4(@types/node@18.16.17)(sass@1.58.0) + vite: 3.2.4(@types/node@17.0.45)(sass@1.53.0)(terser@5.14.1) vue-i18n: 9.2.2(vue@3.2.45) transitivePeerDependencies: - supports-color @@ -6804,7 +6751,7 @@ packages: tsconfig-paths: 4.1.0 tsconfig-paths-webpack-plugin: 4.0.0 typescript: 4.8.4 - webpack: 5.74.0 + webpack: 5.74.0(esbuild@0.17.19) webpack-node-externals: 3.0.0 transitivePeerDependencies: - '@swc/core' @@ -6976,21 +6923,6 @@ packages: - chokidar dev: true - /@nestjs/schematics@9.0.3(typescript@4.9.3): - resolution: {integrity: sha512-kZrU/lrpVd2cnK8I3ibDb3Wi1ppl3wX3U3lVWoL+DzRRoezWKkh8upEL4q0koKmuXnsmLiu3UPxFeMOrJV7TSA==} - peerDependencies: - typescript: ^4.3.5 - dependencies: - '@angular-devkit/core': 14.2.1(chokidar@3.5.3) - '@angular-devkit/schematics': 14.2.1(chokidar@3.5.3) - fs-extra: 10.1.0 - jsonc-parser: 3.2.0 - pluralize: 8.0.0 - typescript: 4.9.3 - transitivePeerDependencies: - - chokidar - dev: true - /@nestjs/testing@9.2.1(@nestjs/common@9.2.1)(@nestjs/core@9.2.1)(@nestjs/platform-express@9.2.1): resolution: {integrity: sha512-lemXZdRSuqoZ87l0orCrS/c7gqwxeduIFOd21g9g2RUeQ4qlWPegbQDKASzbfC28klPyrgJLW4MNq7uv2JwV8w==} peerDependencies: @@ -7750,7 +7682,6 @@ packages: dependencies: '@types/eslint': 8.4.10 '@types/estree': 0.0.51 - dev: true /@types/eslint@8.4.10: resolution: {integrity: sha512-Sl/HOqN8NKPmhWo2VBEPm0nvHnu2LL3v9vKo8MEq0EtbJ4eVzGPl41VNPvn5E1i5poMk4/XD8UriLHpJvEP/Nw==} @@ -8904,7 +8835,6 @@ packages: '@vue/shared': 3.2.39 estree-walker: 2.0.2 source-map: 0.6.1 - dev: true /@vue/compiler-core@3.2.45: resolution: {integrity: sha512-rcMj7H+PYe5wBV3iYeUgbCglC+pbpN8hBLTJvRiK2eKQiWqu+fG9F+8sW99JdL4LQi7Re178UOxn09puSXvn4A==} @@ -8934,7 +8864,6 @@ packages: dependencies: '@vue/compiler-core': 3.2.39 '@vue/shared': 3.2.39 - dev: true /@vue/compiler-dom@3.2.45: resolution: {integrity: sha512-tyYeUEuKqqZO137WrZkpwfPCdiiIeXYCcJ8L4gWz9vqaxzIQRccTSwSWZ/Axx5YR2z+LvpUbmPNXxuBU45lyRw==} @@ -8984,7 +8913,6 @@ packages: magic-string: 0.25.9 postcss: 8.4.16 source-map: 0.6.1 - dev: true /@vue/compiler-sfc@3.2.45: resolution: {integrity: sha512-1jXDuWah1ggsnSAOGsec8cFjT/K6TMZ0sPL3o3d84Ft2AYZi2jWJgRMjw4iaK0rBfA89L5gw427H4n1RZQBu6Q==} @@ -9011,7 +8939,6 @@ packages: dependencies: '@vue/compiler-dom': 3.2.39 '@vue/shared': 3.2.39 - dev: true /@vue/compiler-ssr@3.2.45: resolution: {integrity: sha512-6BRaggEGqhWht3lt24CrIbQSRD5O07MTmd+LjAn5fJj568+R9eUD2F7wMQJjX859seSlrYog7sUtrZSd7feqrQ==} @@ -9081,7 +9008,6 @@ packages: '@vue/shared': 3.2.39 estree-walker: 2.0.2 magic-string: 0.25.9 - dev: true /@vue/reactivity-transform@3.2.45: resolution: {integrity: sha512-BHVmzYAvM7vcU5WmuYqXpwaBHjsS8T63jlKGWVtHxAHIoMIlmaMyurUSEs1Zcg46M4AYT5MtB1U274/2aNzjJQ==} @@ -9164,7 +9090,6 @@ packages: /@vue/shared@3.2.39: resolution: {integrity: sha512-D3dl2ZB9qE6mTuWPk9RlhDeP1dgNRUKC3NJxji74A4yL8M2MwlhLKUC/49WHjrNzSPug58fWx/yFbaTzGAQSBw==} - dev: true /@vue/shared@3.2.45: resolution: {integrity: sha512-Ewzq5Yhimg7pSztDV+RH1UDKBzmtqieXQlpTVm2AwraoRL/Rks96mvd8Vgi7Lj+h+TH8dv7mXD3FRZR3TUvbSg==} @@ -9293,19 +9218,15 @@ packages: dependencies: '@webassemblyjs/helper-numbers': 1.11.1 '@webassemblyjs/helper-wasm-bytecode': 1.11.1 - dev: true /@webassemblyjs/floating-point-hex-parser@1.11.1: resolution: {integrity: sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==} - dev: true /@webassemblyjs/helper-api-error@1.11.1: resolution: {integrity: sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==} - dev: true /@webassemblyjs/helper-buffer@1.11.1: resolution: {integrity: sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==} - dev: true /@webassemblyjs/helper-numbers@1.11.1: resolution: {integrity: sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==} @@ -9313,11 +9234,9 @@ packages: '@webassemblyjs/floating-point-hex-parser': 1.11.1 '@webassemblyjs/helper-api-error': 1.11.1 '@xtuc/long': 4.2.2 - dev: true /@webassemblyjs/helper-wasm-bytecode@1.11.1: resolution: {integrity: sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==} - dev: true /@webassemblyjs/helper-wasm-section@1.11.1: resolution: {integrity: sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==} @@ -9326,23 +9245,19 @@ packages: '@webassemblyjs/helper-buffer': 1.11.1 '@webassemblyjs/helper-wasm-bytecode': 1.11.1 '@webassemblyjs/wasm-gen': 1.11.1 - dev: true /@webassemblyjs/ieee754@1.11.1: resolution: {integrity: sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==} dependencies: '@xtuc/ieee754': 1.2.0 - dev: true /@webassemblyjs/leb128@1.11.1: resolution: {integrity: sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==} dependencies: '@xtuc/long': 4.2.2 - dev: true /@webassemblyjs/utf8@1.11.1: resolution: {integrity: sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==} - dev: true /@webassemblyjs/wasm-edit@1.11.1: resolution: {integrity: sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==} @@ -9355,7 +9270,6 @@ packages: '@webassemblyjs/wasm-opt': 1.11.1 '@webassemblyjs/wasm-parser': 1.11.1 '@webassemblyjs/wast-printer': 1.11.1 - dev: true /@webassemblyjs/wasm-gen@1.11.1: resolution: {integrity: sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==} @@ -9365,7 +9279,6 @@ packages: '@webassemblyjs/ieee754': 1.11.1 '@webassemblyjs/leb128': 1.11.1 '@webassemblyjs/utf8': 1.11.1 - dev: true /@webassemblyjs/wasm-opt@1.11.1: resolution: {integrity: sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==} @@ -9374,7 +9287,6 @@ packages: '@webassemblyjs/helper-buffer': 1.11.1 '@webassemblyjs/wasm-gen': 1.11.1 '@webassemblyjs/wasm-parser': 1.11.1 - dev: true /@webassemblyjs/wasm-parser@1.11.1: resolution: {integrity: sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==} @@ -9385,14 +9297,12 @@ packages: '@webassemblyjs/ieee754': 1.11.1 '@webassemblyjs/leb128': 1.11.1 '@webassemblyjs/utf8': 1.11.1 - dev: true /@webassemblyjs/wast-printer@1.11.1: resolution: {integrity: sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==} dependencies: '@webassemblyjs/ast': 1.11.1 '@xtuc/long': 4.2.2 - dev: true /@wessberg/stringutil@1.0.19: resolution: {integrity: sha512-9AZHVXWlpN8Cn9k5BC/O0Dzb9E9xfEMXzYrNunwvkUTvuK7xgQPVRZpLo+jWCOZ5r8oBa8NIrHuPEu1hzbb6bg==} @@ -9477,11 +9387,9 @@ packages: /@xtuc/ieee754@1.2.0: resolution: {integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==} - dev: true /@xtuc/long@4.2.2: resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==} - dev: true /JSONStream@1.3.5: resolution: {integrity: sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==} @@ -9531,7 +9439,6 @@ packages: acorn: ^8 dependencies: acorn: 8.8.0 - dev: true /acorn-jsx@5.3.2(acorn@7.4.1): resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} @@ -9599,7 +9506,7 @@ packages: hasBin: true /after@0.8.2: - resolution: {integrity: sha512-QbJ0NTQ/I9DI3uSJA4cbexiwQeRAfjPScqIbSjUDd9TOrcg6pTkdgziesOqxBMBzit8vFCTwrP27t13vFOORRA==} + resolution: {integrity: sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=} dev: false /agent-base@6.0.2: @@ -9645,7 +9552,6 @@ packages: ajv: ^6.9.1 dependencies: ajv: 6.12.6 - dev: true /ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} @@ -10212,7 +10118,7 @@ packages: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} /base64-arraybuffer@0.1.4: - resolution: {integrity: sha512-a1eIFi4R9ySrbiMuyTGx5e92uRH5tQY6kArNcFaKBUleIoLjdjBg7Zxm3Mqm3Kmkf27HLR/1fnxX9q8GQ7Iavg==} + resolution: {integrity: sha1-mBjHngWbE1X5fgQooBfIOOkLqBI=} engines: {node: '>= 0.6.0'} dev: false @@ -10359,7 +10265,6 @@ packages: electron-to-chromium: 1.4.178 node-releases: 2.0.5 update-browserslist-db: 1.0.4(browserslist@4.21.1) - dev: true /bs-logger@0.2.6: resolution: {integrity: sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==} @@ -10478,7 +10383,6 @@ packages: /caniuse-lite@1.0.30001363: resolution: {integrity: sha512-HpQhpzTGGPVMnCjIomjt+jvyUu8vNFo3TaDiZ/RcoTrlOq/5+tC8zHdsbgFB6MxmaY+jCpsH09aD80Bb4Ow3Sg==} - dev: true /capital-case@1.0.4: resolution: {integrity: sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==} @@ -10675,7 +10579,6 @@ packages: /chrome-trace-event@1.0.3: resolution: {integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==} engines: {node: '>=6.0'} - dev: true /ci-info@3.3.2: resolution: {integrity: sha512-xmDt/QIAdeZ9+nfdPsaBCpMvHNLFiLdjj59qjqn+6iPe6YmHGQ35sBnQ8uslRBXFmXkiZQOJRjvQeoGppoTjjg==} @@ -10866,14 +10769,14 @@ packages: dev: true /component-bind@1.0.0: - resolution: {integrity: sha512-WZveuKPeKAG9qY+FkYDeADzdHyTYdIboXS59ixDeRJL5ZhxpqUnxSOwop4FQjMsiYm3/Or8cegVbpAHNA7pHxw==} + resolution: {integrity: sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=} dev: false /component-emitter@1.3.0: resolution: {integrity: sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==} /component-inherit@0.0.3: - resolution: {integrity: sha512-w+LhYREhatpVqTESyGFg3NlP6Iu0kEKUHETY9GoZP/pQyW4mHFZuFWRUCIqVPZ36ueVLtoOEZaAqbCF2RDndaA==} + resolution: {integrity: sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=} dev: false /concat-map@0.0.1: @@ -11688,7 +11591,6 @@ packages: /electron-to-chromium@1.4.178: resolution: {integrity: sha512-aWuhJXkwIdoQzGR8p2QvR3N0OzdUKZSP8+P/hzuMzNQIPZoEa8HiCGM75bQBHjyz+eKT5PB9dVCzkK/tyQ4B5Q==} - dev: true /emittery@0.13.1: resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==} @@ -11824,7 +11726,6 @@ packages: dependencies: graceful-fs: 4.2.10 tapable: 2.2.1 - dev: true /entities@2.1.0: resolution: {integrity: sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w==} @@ -11888,7 +11789,6 @@ packages: /es-module-lexer@0.9.3: resolution: {integrity: sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==} - dev: true /es-to-primitive@1.2.1: resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} @@ -12520,7 +12420,6 @@ packages: '@esbuild/win32-arm64': 0.17.19 '@esbuild/win32-ia32': 0.17.19 '@esbuild/win32-x64': 0.17.19 - dev: true /escalade@3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} @@ -12625,22 +12524,6 @@ packages: prettier-linter-helpers: 1.0.0 dev: true - /eslint-plugin-prettier@4.2.1(eslint@8.24.0)(prettier@2.8.4): - resolution: {integrity: sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==} - engines: {node: '>=12.0.0'} - peerDependencies: - eslint: '>=7.28.0' - eslint-config-prettier: '*' - prettier: '>=2.0.0' - peerDependenciesMeta: - eslint-config-prettier: - optional: true - dependencies: - eslint: 8.24.0 - prettier: 2.8.4 - prettier-linter-helpers: 1.0.0 - dev: true - /eslint-plugin-vue@9.5.1(eslint@8.24.0): resolution: {integrity: sha512-Y0sL2RY7Xc9S8kNih9lbwHIDmewUg9bfas6WSzsOWRgDXhIHKxRBZYNAnVcXBFfE+bMWHUA5GLChl7TcTYUI8w==} engines: {node: ^14.17.0 || >=16.0.0} @@ -12683,7 +12566,6 @@ packages: dependencies: esrecurse: 4.3.0 estraverse: 4.3.0 - dev: true /eslint-scope@7.1.1: resolution: {integrity: sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==} @@ -13475,7 +13357,7 @@ packages: semver: 7.3.8 tapable: 2.2.1 typescript: 4.8.4 - webpack: 5.74.0 + webpack: 5.74.0(esbuild@0.17.19) dev: true /form-data-encoder@1.7.2: @@ -13759,7 +13641,6 @@ packages: /glob-to-regexp@0.4.1: resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} - dev: true /glob@7.1.6: resolution: {integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==} @@ -14171,7 +14052,7 @@ packages: dev: false /has-cors@1.1.0: - resolution: {integrity: sha512-g5VNKdkFuUuVCP9gYfDJHjK2nqdQJ7aDLTnycnc2+RvsOQbuLdF5pm7vuE5J76SEBIQjs4kQY/BWq74JUmjbXA==} + resolution: {integrity: sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=} dev: false /has-flag@3.0.0: @@ -14564,7 +14445,7 @@ packages: engines: {node: '>=8'} /indexof@0.0.1: - resolution: {integrity: sha512-i0G7hLJ1z0DE8dsqJa2rycj9dBmNKgXBvotXtZYXakU9oivfB9Uj2ZBC27qqef2U58/ZLwalxa1X/RDCdkHtVg==} + resolution: {integrity: sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=} dev: false /inflight@1.0.6: @@ -16110,7 +15991,6 @@ packages: '@types/node': 18.16.17 merge-stream: 2.0.0 supports-color: 8.1.1 - dev: true /jest-worker@29.4.1: resolution: {integrity: sha512-O9doU/S1EBe+yp/mstQ0VpPwpv0Clgn68TkNwGxL6/usX/KUW9Arnn4ag8C3jc6qHcXznhsT5Na1liYzAsuAbQ==} @@ -16650,7 +16530,6 @@ packages: /loader-runner@4.3.0: resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} engines: {node: '>=6.11.5'} - dev: true /loader-utils@2.0.4: resolution: {integrity: sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==} @@ -17729,7 +17608,6 @@ packages: /node-releases@2.0.5: resolution: {integrity: sha512-U9h1NLROZTq9uE1SNffn6WuPDg8icmi3ns4rEl/oTfIle4iLjTliCzgTsbaIFMq/Xn078/lfY/BL0GWZ+psK4Q==} - dev: true /nodemailer@6.9.1: resolution: {integrity: sha512-qHw7dOiU5UKNnQpXktdgQ1d3OFgRAekuvbJLcdG5dnEo/GtcTHRYM7+UfJARdOFU9WUQO8OiIamgWPmiSFHYAA==} @@ -18832,7 +18710,6 @@ packages: resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} dependencies: safe-buffer: 5.2.1 - dev: true /range-parser@1.2.1: resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} @@ -19347,6 +19224,7 @@ packages: chokidar: 3.5.3 immutable: 4.1.0 source-map-js: 1.0.2 + dev: true /sax@1.2.4: resolution: {integrity: sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==} @@ -19373,7 +19251,6 @@ packages: '@types/json-schema': 7.0.9 ajv: 6.12.6 ajv-keywords: 3.5.2(ajv@6.12.6) - dev: true /scuid@1.1.0: resolution: {integrity: sha512-MuCAyrGZcTLfQoH2XoBlQ8C6bzwN88XT/0slOGz0pn8+gIP85BOAfYa44ZXQUTOwRwPU0QvgU+V+OSajl/59Xg==} @@ -19473,7 +19350,6 @@ packages: resolution: {integrity: sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==} dependencies: randombytes: 2.1.0 - dev: true /serve-static@1.15.0: resolution: {integrity: sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==} @@ -20135,7 +20011,6 @@ packages: engines: {node: '>=10'} dependencies: has-flag: 4.0.0 - dev: true /supports-color@9.2.2: resolution: {integrity: sha512-XC6g/Kgux+rJXmwokjm9ECpD6k/smUoS5LKlUCcsYr4IY3rW0XyAympon2RmxGrlnZURMpg5T18gWDP9CsHXFA==} @@ -20209,7 +20084,6 @@ packages: /tapable@2.2.1: resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} engines: {node: '>=6'} - dev: true /tar@6.1.13: resolution: {integrity: sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==} @@ -20281,31 +20155,6 @@ packages: serialize-javascript: 6.0.0 terser: 5.14.1 webpack: 5.74.0(esbuild@0.17.19) - dev: true - - /terser-webpack-plugin@5.3.6(webpack@5.74.0): - resolution: {integrity: sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==} - engines: {node: '>= 10.13.0'} - peerDependencies: - '@swc/core': '*' - esbuild: '*' - uglify-js: '*' - webpack: ^5.1.0 - peerDependenciesMeta: - '@swc/core': - optional: true - esbuild: - optional: true - uglify-js: - optional: true - dependencies: - '@jridgewell/trace-mapping': 0.3.14 - jest-worker: 27.5.1 - schema-utils: 3.1.1 - serialize-javascript: 6.0.0 - terser: 5.14.1 - webpack: 5.74.0 - dev: true /terser@5.14.1: resolution: {integrity: sha512-+ahUAE+iheqBTDxXhTisdA8hgvbEG1hHOQ9xmNjeUJSoi6DU/gMrKNcfZjHkyY6Alnuyc+ikYJaxxfHkT3+WuQ==} @@ -20440,7 +20289,7 @@ packages: dev: true /to-array@0.1.4: - resolution: {integrity: sha512-LhVdShQD/4Mk4zXNroIQZJC+Ap3zgLcDuwEdcmLv9CCO73NWockQDwyUnW/m8VX/EElfL6FcYx7EeutN4HJA6A==} + resolution: {integrity: sha1-F+bBH3PdTz10zaek/zI46a2b+JA=} dev: false /to-fast-properties@2.0.0: @@ -20614,7 +20463,7 @@ packages: micromatch: 4.0.5 semver: 7.3.8 typescript: 4.9.3 - webpack: 5.74.0 + webpack: 5.74.0(esbuild@0.17.19) dev: true /ts-log@2.2.4: @@ -21111,72 +20960,6 @@ packages: - supports-color - vite - webpack - dev: true - - /unplugin-icons@0.14.9(@vue/compiler-sfc@3.2.45)(vite@3.2.4): - resolution: {integrity: sha512-vPyVfNREH88dP6gszdaoGkAEFPpiScXj1A8eWN905jQgT53A3tsiPEiqJjCHOUVcsUaREt2JSudzumFOsCA78A==} - peerDependencies: - '@svgr/core': '>=5.5.0' - '@vue/compiler-sfc': ^3.0.2 - vue-template-compiler: ^2.6.12 - vue-template-es2015-compiler: ^1.9.0 - peerDependenciesMeta: - '@svgr/core': - optional: true - '@vue/compiler-sfc': - optional: true - vue-template-compiler: - optional: true - vue-template-es2015-compiler: - optional: true - dependencies: - '@antfu/install-pkg': 0.1.0 - '@antfu/utils': 0.5.2 - '@iconify/utils': 1.0.33 - '@vue/compiler-sfc': 3.2.45 - debug: 4.3.4(supports-color@9.2.2) - kolorist: 1.5.1 - local-pkg: 0.4.2 - unplugin: 0.9.5(vite@3.2.4) - transitivePeerDependencies: - - esbuild - - rollup - - supports-color - - vite - - webpack - dev: false - - /unplugin-icons@0.14.9(rollup@2.79.1)(vite@3.2.4): - resolution: {integrity: sha512-vPyVfNREH88dP6gszdaoGkAEFPpiScXj1A8eWN905jQgT53A3tsiPEiqJjCHOUVcsUaREt2JSudzumFOsCA78A==} - peerDependencies: - '@svgr/core': '>=5.5.0' - '@vue/compiler-sfc': ^3.0.2 - vue-template-compiler: ^2.6.12 - vue-template-es2015-compiler: ^1.9.0 - peerDependenciesMeta: - '@svgr/core': - optional: true - '@vue/compiler-sfc': - optional: true - vue-template-compiler: - optional: true - vue-template-es2015-compiler: - optional: true - dependencies: - '@antfu/install-pkg': 0.1.0 - '@antfu/utils': 0.5.2 - '@iconify/utils': 1.0.33 - debug: 4.3.4(supports-color@9.2.2) - kolorist: 1.5.1 - local-pkg: 0.4.2 - unplugin: 0.9.5(rollup@2.79.1)(vite@3.2.4) - transitivePeerDependencies: - - esbuild - - rollup - - supports-color - - vite - - webpack - dev: true /unplugin-icons@0.15.3(@vue/compiler-sfc@3.2.45): resolution: {integrity: sha512-YWgJqv5AahrokeOnta8uX/m1damZA6Rf6zPClgHg2Fa/45iyOe3Lj+Wn/Ba+CSsq9yBffn17YfKfJNyWCNZPvw==} @@ -21207,35 +20990,6 @@ packages: - supports-color dev: true - /unplugin-vue-components@0.21.0(esbuild@0.17.19)(rollup@2.79.1)(vite@3.1.4)(vue@3.2.37): - resolution: {integrity: sha512-U7uOMNmRJ2eAv9CNjP8QRvxs6nAe3FVQUEIUphC1FGguBp3BWSLgGAcSHaX2nQy0gFoDY2mLF2M52W/t/eDaKg==} - engines: {node: '>=14'} - peerDependencies: - '@babel/parser': ^7.15.8 - vue: 2 || 3 - peerDependenciesMeta: - '@babel/parser': - optional: true - dependencies: - '@antfu/utils': 0.5.2 - '@rollup/pluginutils': 4.2.1 - chokidar: 3.5.3 - debug: 4.3.4(supports-color@9.2.2) - fast-glob: 3.2.11 - local-pkg: 0.4.2 - magic-string: 0.26.7 - minimatch: 5.1.0 - resolve: 1.22.1 - unplugin: 0.7.1(esbuild@0.17.19)(rollup@2.79.1)(vite@3.1.4) - vue: 3.2.37 - transitivePeerDependencies: - - esbuild - - rollup - - supports-color - - vite - - webpack - dev: true - /unplugin-vue-components@0.21.0(esbuild@0.17.19)(rollup@2.79.1)(vite@3.2.4)(vue@3.2.45)(webpack@5.74.0): resolution: {integrity: sha512-U7uOMNmRJ2eAv9CNjP8QRvxs6nAe3FVQUEIUphC1FGguBp3BWSLgGAcSHaX2nQy0gFoDY2mLF2M52W/t/eDaKg==} engines: {node: '>=14'} @@ -21263,62 +21017,6 @@ packages: - supports-color - vite - webpack - dev: true - - /unplugin-vue-components@0.21.0(vite@3.2.4)(vue@3.2.45): - resolution: {integrity: sha512-U7uOMNmRJ2eAv9CNjP8QRvxs6nAe3FVQUEIUphC1FGguBp3BWSLgGAcSHaX2nQy0gFoDY2mLF2M52W/t/eDaKg==} - engines: {node: '>=14'} - peerDependencies: - '@babel/parser': ^7.15.8 - vue: 2 || 3 - peerDependenciesMeta: - '@babel/parser': - optional: true - dependencies: - '@antfu/utils': 0.5.2 - '@rollup/pluginutils': 4.2.1 - chokidar: 3.5.3 - debug: 4.3.4(supports-color@9.2.2) - fast-glob: 3.2.11 - local-pkg: 0.4.2 - magic-string: 0.26.7 - minimatch: 5.1.0 - resolve: 1.22.1 - unplugin: 0.7.1(vite@3.2.4) - vue: 3.2.45 - transitivePeerDependencies: - - esbuild - - rollup - - supports-color - - vite - - webpack - dev: false - - /unplugin@0.7.1(esbuild@0.17.19)(rollup@2.79.1)(vite@3.1.4): - resolution: {integrity: sha512-Z6hNDXDNh9aimMkPU1mEjtk+2ova8gh0y7rJeJdGH1vWZOHwF2lLQiQ/R97rv9ymmzEQXsR2fyMet72T8jy6ew==} - peerDependencies: - esbuild: '>=0.13' - rollup: ^2.50.0 - vite: ^2.3.0 || ^3.0.0-0 - webpack: 4 || 5 - peerDependenciesMeta: - esbuild: - optional: true - rollup: - optional: true - vite: - optional: true - webpack: - optional: true - dependencies: - acorn: 8.8.2 - chokidar: 3.5.3 - esbuild: 0.17.19 - rollup: 2.79.1 - vite: 3.1.4(sass@1.53.0)(terser@5.14.1) - webpack-sources: 3.2.3 - webpack-virtual-modules: 0.4.4 - dev: true /unplugin@0.7.1(esbuild@0.17.19)(rollup@2.79.1)(vite@3.2.4)(webpack@5.74.0): resolution: {integrity: sha512-Z6hNDXDNh9aimMkPU1mEjtk+2ova8gh0y7rJeJdGH1vWZOHwF2lLQiQ/R97rv9ymmzEQXsR2fyMet72T8jy6ew==} @@ -21345,31 +21043,6 @@ packages: webpack: 5.74.0(esbuild@0.17.19) webpack-sources: 3.2.3 webpack-virtual-modules: 0.4.4 - dev: true - - /unplugin@0.7.1(vite@3.2.4): - resolution: {integrity: sha512-Z6hNDXDNh9aimMkPU1mEjtk+2ova8gh0y7rJeJdGH1vWZOHwF2lLQiQ/R97rv9ymmzEQXsR2fyMet72T8jy6ew==} - peerDependencies: - esbuild: '>=0.13' - rollup: ^2.50.0 - vite: ^2.3.0 || ^3.0.0-0 - webpack: 4 || 5 - peerDependenciesMeta: - esbuild: - optional: true - rollup: - optional: true - vite: - optional: true - webpack: - optional: true - dependencies: - acorn: 8.8.2 - chokidar: 3.5.3 - vite: 3.2.4(@types/node@18.16.17)(sass@1.58.0) - webpack-sources: 3.2.3 - webpack-virtual-modules: 0.4.4 - dev: false /unplugin@0.9.5(esbuild@0.17.19)(rollup@2.79.1)(vite@3.1.4): resolution: {integrity: sha512-luraheyfxwtvkvHpsOvMNv7IjLdORTWKZp0gWYNHGLi2ImON3iIZOj464qEyyEwLA/EMt12fC415HW9zRpOfTg==} @@ -21395,56 +21068,6 @@ packages: vite: 3.1.4(sass@1.53.0)(terser@5.14.1) webpack-sources: 3.2.3 webpack-virtual-modules: 0.4.4 - dev: true - - /unplugin@0.9.5(rollup@2.79.1)(vite@3.2.4): - resolution: {integrity: sha512-luraheyfxwtvkvHpsOvMNv7IjLdORTWKZp0gWYNHGLi2ImON3iIZOj464qEyyEwLA/EMt12fC415HW9zRpOfTg==} - peerDependencies: - esbuild: '>=0.13' - rollup: ^2.50.0 - vite: ^2.3.0 || ^3.0.0-0 - webpack: 4 || 5 - peerDependenciesMeta: - esbuild: - optional: true - rollup: - optional: true - vite: - optional: true - webpack: - optional: true - dependencies: - acorn: 8.8.2 - chokidar: 3.5.3 - rollup: 2.79.1 - vite: 3.2.4(@types/node@17.0.45)(sass@1.53.0)(terser@5.14.1) - webpack-sources: 3.2.3 - webpack-virtual-modules: 0.4.4 - dev: true - - /unplugin@0.9.5(vite@3.2.4): - resolution: {integrity: sha512-luraheyfxwtvkvHpsOvMNv7IjLdORTWKZp0gWYNHGLi2ImON3iIZOj464qEyyEwLA/EMt12fC415HW9zRpOfTg==} - peerDependencies: - esbuild: '>=0.13' - rollup: ^2.50.0 - vite: ^2.3.0 || ^3.0.0-0 - webpack: 4 || 5 - peerDependenciesMeta: - esbuild: - optional: true - rollup: - optional: true - vite: - optional: true - webpack: - optional: true - dependencies: - acorn: 8.8.2 - chokidar: 3.5.3 - vite: 3.2.4(@types/node@18.16.17)(sass@1.58.0) - webpack-sources: 3.2.3 - webpack-virtual-modules: 0.4.4 - dev: false /unplugin@1.1.0: resolution: {integrity: sha512-I8obQ8Rs/hnkxokRV6g8JKOQFgYNnTd9DL58vcSt5IJ9AkK8wbrtsnzD5hi4BJlvcY536JzfEXj9L6h7j559/A==} @@ -21474,7 +21097,6 @@ packages: browserslist: 4.21.1 escalade: 3.1.1 picocolors: 1.0.0 - dev: true /upper-case-first@2.0.2: resolution: {integrity: sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg==} @@ -21637,7 +21259,7 @@ packages: mlly: 1.2.0 pathe: 1.1.0 picocolors: 1.0.0 - vite: 4.3.9(@types/node@18.11.10)(terser@5.14.1) + vite: 4.3.9(@types/node@17.0.45)(sass@1.53.0)(terser@5.14.1) transitivePeerDependencies: - '@types/node' - less @@ -21899,29 +21521,6 @@ packages: json5: 2.2.1 local-pkg: 0.4.2 picocolors: 1.0.0 - vite: 3.2.4(@types/node@18.16.17)(sass@1.58.0) - yaml: 2.1.1 - transitivePeerDependencies: - - supports-color - dev: true - - /vite-plugin-pages@0.26.0(vite@3.2.4): - resolution: {integrity: sha512-yJZvwHEt7puYIf19S89IvkDsWPjWleSied4H8hmdW6i8buCA93z1UAU1ipW1d8fNKrC4FzXsUHHbPm6+kl1p9w==} - peerDependencies: - '@vue/compiler-sfc': ^2.7.0 || ^3.0.0 - vite: ^2.0.0 || ^3.0.0-0 - peerDependenciesMeta: - '@vue/compiler-sfc': - optional: true - dependencies: - '@types/debug': 4.1.7 - debug: 4.3.4(supports-color@9.2.2) - deep-equal: 2.0.5 - extract-comments: 1.1.0 - fast-glob: 3.2.11 - json5: 2.2.1 - local-pkg: 0.4.2 - picocolors: 1.0.0 vite: 3.2.4(@types/node@17.0.45)(sass@1.53.0)(terser@5.14.1) yaml: 2.1.1 transitivePeerDependencies: @@ -22102,75 +21701,6 @@ packages: optionalDependencies: fsevents: 2.3.2 - /vite@3.2.4(@types/node@18.11.10)(terser@5.14.1): - resolution: {integrity: sha512-Z2X6SRAffOUYTa+sLy3NQ7nlHFU100xwanq1WDwqaiFiCe+25zdxP1TfCS5ojPV2oDDcXudHIoPnI1Z/66B7Yw==} - engines: {node: ^14.18.0 || >=16.0.0} - hasBin: true - peerDependencies: - '@types/node': '>= 14' - less: '*' - sass: '*' - stylus: '*' - sugarss: '*' - terser: ^5.4.0 - peerDependenciesMeta: - '@types/node': - optional: true - less: - optional: true - sass: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - dependencies: - '@types/node': 18.11.10 - esbuild: 0.15.15 - postcss: 8.4.21 - resolve: 1.22.1 - rollup: 2.79.1 - terser: 5.14.1 - optionalDependencies: - fsevents: 2.3.2 - dev: true - - /vite@3.2.4(@types/node@18.16.17)(sass@1.58.0): - resolution: {integrity: sha512-Z2X6SRAffOUYTa+sLy3NQ7nlHFU100xwanq1WDwqaiFiCe+25zdxP1TfCS5ojPV2oDDcXudHIoPnI1Z/66B7Yw==} - engines: {node: ^14.18.0 || >=16.0.0} - hasBin: true - peerDependencies: - '@types/node': '>= 14' - less: '*' - sass: '*' - stylus: '*' - sugarss: '*' - terser: ^5.4.0 - peerDependenciesMeta: - '@types/node': - optional: true - less: - optional: true - sass: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - dependencies: - '@types/node': 18.16.17 - esbuild: 0.15.15 - postcss: 8.4.21 - resolve: 1.22.1 - rollup: 2.79.1 - sass: 1.58.0 - optionalDependencies: - fsevents: 2.3.2 - /vite@4.0.4(@types/node@17.0.45): resolution: {integrity: sha512-xevPU7M8FU0i/80DMR+YhgrzR5KS2ORy1B4xcX/cXLsvnUWvfHuqMmVU6N0YiJ4JWGRJJsLCgjEzKjG9/GKoSw==} engines: {node: ^14.18.0 || >=16.0.0} @@ -22240,40 +21770,6 @@ packages: fsevents: 2.3.2 dev: true - /vite@4.3.9(@types/node@18.11.10)(terser@5.14.1): - resolution: {integrity: sha512-qsTNZjO9NoJNW7KnOrgYwczm0WctJ8m/yqYAMAK9Lxt4SoySUfS5S8ia9K7JHpa3KEeMfyF8LoJ3c5NeBJy6pg==} - engines: {node: ^14.18.0 || >=16.0.0} - hasBin: true - peerDependencies: - '@types/node': '>= 14' - less: '*' - sass: '*' - stylus: '*' - sugarss: '*' - terser: ^5.4.0 - peerDependenciesMeta: - '@types/node': - optional: true - less: - optional: true - sass: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - dependencies: - '@types/node': 18.11.10 - esbuild: 0.17.19 - postcss: 8.4.24 - rollup: 3.24.0 - terser: 5.14.1 - optionalDependencies: - fsevents: 2.3.2 - dev: true - /vite@4.3.9(@types/node@18.16.17)(sass@1.53.0)(terser@5.14.1): resolution: {integrity: sha512-qsTNZjO9NoJNW7KnOrgYwczm0WctJ8m/yqYAMAK9Lxt4SoySUfS5S8ia9K7JHpa3KEeMfyF8LoJ3c5NeBJy6pg==} engines: {node: ^14.18.0 || >=16.0.0} @@ -22361,7 +21857,7 @@ packages: tinybench: 2.4.0 tinypool: 0.4.0 tinyspy: 1.1.1 - vite: 3.2.4(@types/node@18.11.10)(terser@5.14.1) + vite: 3.2.4(@types/node@17.0.45)(sass@1.53.0)(terser@5.14.1) vite-node: 0.29.8(@types/node@18.11.10)(terser@5.14.1) why-is-node-running: 2.2.2 transitivePeerDependencies: @@ -22886,7 +22382,6 @@ packages: dependencies: glob-to-regexp: 0.4.1 graceful-fs: 4.2.10 - dev: true /wcwidth@1.0.1: resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} @@ -22963,46 +22458,6 @@ packages: resolution: {integrity: sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==} dev: true - /webpack@5.74.0: - resolution: {integrity: sha512-A2InDwnhhGN4LYctJj6M1JEaGL7Luj6LOmyBHjcI8529cm5p6VXiTIW2sn6ffvEAKmveLzvu4jrihwXtPojlAA==} - engines: {node: '>=10.13.0'} - hasBin: true - peerDependencies: - webpack-cli: '*' - peerDependenciesMeta: - webpack-cli: - optional: true - dependencies: - '@types/eslint-scope': 3.7.4 - '@types/estree': 0.0.51 - '@webassemblyjs/ast': 1.11.1 - '@webassemblyjs/wasm-edit': 1.11.1 - '@webassemblyjs/wasm-parser': 1.11.1 - acorn: 8.8.0 - acorn-import-assertions: 1.8.0(acorn@8.8.0) - browserslist: 4.21.1 - chrome-trace-event: 1.0.3 - enhanced-resolve: 5.12.0 - es-module-lexer: 0.9.3 - eslint-scope: 5.1.1 - events: 3.3.0 - glob-to-regexp: 0.4.1 - graceful-fs: 4.2.10 - json-parse-even-better-errors: 2.3.1 - loader-runner: 4.3.0 - mime-types: 2.1.35 - neo-async: 2.6.2 - schema-utils: 3.1.1 - tapable: 2.2.1 - terser-webpack-plugin: 5.3.6(webpack@5.74.0) - watchpack: 2.4.0 - webpack-sources: 3.2.3 - transitivePeerDependencies: - - '@swc/core' - - esbuild - - uglify-js - dev: true - /webpack@5.74.0(esbuild@0.17.19): resolution: {integrity: sha512-A2InDwnhhGN4LYctJj6M1JEaGL7Luj6LOmyBHjcI8529cm5p6VXiTIW2sn6ffvEAKmveLzvu4jrihwXtPojlAA==} engines: {node: '>=10.13.0'} @@ -23041,7 +22496,6 @@ packages: - '@swc/core' - esbuild - uglify-js - dev: true /websocket-driver@0.7.4: resolution: {integrity: sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==} @@ -23658,7 +23112,7 @@ packages: dev: false /yeast@0.1.2: - resolution: {integrity: sha512-8HFIh676uyGYP6wP13R/j6OJ/1HwJ46snpvzE7aHAN3Ryqh2yX6Xox2B4CUmTwwOIzlG3Bs7ocsP5dZH/R1Qbg==} + resolution: {integrity: sha1-AI4G2AlDIMNy28L47XagymyKxBk=} dev: false /yn@3.1.1: