diff --git a/.gitignore b/.gitignore index f0f265898..aca6aa628 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,4 @@ .vscode .turbo .DS_Store -/node_modules +node_modules diff --git a/README.md b/README.md index 867d89cc4..fc7f89821 100644 --- a/README.md +++ b/README.md @@ -32,9 +32,6 @@ We encourage developers to share production-ready solutions and help businesses - Code linting and testing βš™οΈ - CI/CD πŸ€– -## Examples -- [Stripe](https://stripe.com/) payments and subscriptions πŸ€‘ - ## Quick Start ```shell diff --git a/docs/api-reference/api-action-validator.mdx b/docs/api-reference/api-action-validator.mdx index bc0c6edad..b7080b3c5 100644 --- a/docs/api-reference/api-action-validator.mdx +++ b/docs/api-reference/api-action-validator.mdx @@ -4,98 +4,86 @@ title: "API action validator" ## Overview -**API action validator** β€” is an array of functions (think middlewares) that is used to make sure that data sent by client is valid. +**Validation** in Ship is handled automatically by providing a `schema` to `createEndpoint`. When `schema` is present, the `validate` middleware auto-applies and merges `body + files + query + params` into `ctx.validatedData`. + +For additional validation logic (e.g. checking uniqueness), add custom middleware functions to the `middlewares` array. + + +This repo uses **Zod 4**. Use `z.email()`, `z.url()`, `z.uuid()` instead of Zod 3's `z.string().email()`. Search existing schemas for patterns. + ## Examples +### Basic validation with `createEndpoint` + ```typescript import { z } from 'zod'; -import { AppKoaContext, Next } from 'types'; -import { EMAIL_REGEX, PASSWORD_REGEX } from 'app-constants'; - -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; +import createEndpoint from 'routes/createEndpoint'; +import isPublic from 'middlewares/isPublic'; const schema = z.object({ - firstName: z.string().min(1, 'Please enter fist name.').max(100), + firstName: z.string().min(1, 'Please enter first name.').max(100), lastName: z.string().min(1, 'Please enter last name.').max(100), - email: z.string().regex(EMAIL_REGEX, 'Email format is incorrect.'), - password: z.string().regex(PASSWORD_REGEX, 'The password format is incorrect'), + email: z.email('Email format is incorrect.'), + password: z.string().min(6, 'Password must be at least 6 characters'), }); -type ValidatedData = z.infer; - -async function validator(ctx: AppKoaContext, next: Next) { - const { email } = ctx.validatedData; - - const isUserExists = await userService.exists({ email }); +export default createEndpoint({ + method: 'post', + path: '/sign-up', + schema, + middlewares: [isPublic], - ctx.assertClientError(!isUserExists, { - email: 'User with this email is already registered', - }); - - await next(); -} - -async function handler(ctx: AppKoaContext) { - // ...action code -} - -export default (router: AppRouter) => { - router.post('/sign-up', validateMiddleware(schema), validator, handler); -}; + async handler(ctx) { + const { firstName, lastName, email, password } = ctx.validatedData; + // ...action code + }, +}); ``` -To pass data from the `validator` to the `handler`, utilize the `ctx.validatedData` object: +### Custom validation middleware -``` typescript -import { z } from 'zod'; +To add extra validation logic beyond the Zod schema, add a custom middleware to the `middlewares` array: -import { AppKoaContext, AppRouter, Next, User } from 'types'; -import { EMAIL_REGEX, PASSWORD_REGEX } from 'app-constants'; +```typescript +import { z } from 'zod'; +import createEndpoint from 'routes/createEndpoint'; +import isPublic from 'middlewares/isPublic'; import { userService } from 'resources/user'; -import { validateMiddleware } from 'middlewares'; -import { securityUtil } from 'utils'; - const schema = z.object({ - email: z.string().regex(EMAIL_REGEX, 'Email format is incorrect.'), - password: z.string().regex(PASSWORD_REGEX, 'The password format is incorrect'), + email: z.email('Email format is incorrect.'), + password: z.string().min(6, 'Password must be at least 6 characters'), }); -interface ValidatedData extends z.infer { - user: User; -} - -async function validator(ctx: AppKoaContext, next: Next) { - const { email, password } = ctx.validatedData; - - const user = await userService.findOne({ email }); - - ctx.assertClientError(user && user.passwordHash, { - credentials: 'The email or password you have entered is invalid', - }); - - const isPasswordMatch = await securityUtil.compareTextWithHash(password, user.passwordHash); +const checkUserExists = async (ctx, next) => { + const { email } = ctx.validatedData; + const exists = await userService.exists({ email }); - ctx.assertClientError(isPasswordMatch, { - credentials: 'The email or password you have entered is invalid', - }); + if (exists) { + ctx.throwClientError({ email: 'User with this email is already registered' }); + return; + } - ctx.validatedData.user = user; await next(); -} +}; -async function handler(ctx: AppKoaContext) { - const { user } = ctx.validatedData; +export default createEndpoint({ + method: 'post', + path: '/sign-up', + schema, + middlewares: [isPublic, checkUserExists], - // ...action code -} + async handler(ctx) { + const { email, password } = ctx.validatedData; + // ...action code + }, +}); +``` -export default (router: AppRouter) => { - router.post('/sign-in', validateMiddleware(schema), validator, handler); -}; + +**Avoid `ctx.assertError()`** in handlers β€” it's a TypeScript assertion function that causes TS2775 without explicit type annotations on `ctx`. Use `ctx.throwError()` + `return` instead. + ``` diff --git a/docs/api-reference/api-action.mdx b/docs/api-reference/api-action.mdx index aab2582bb..2b1d6813c 100644 --- a/docs/api-reference/api-action.mdx +++ b/docs/api-reference/api-action.mdx @@ -4,35 +4,37 @@ title: "API action" ## Overview -**API action** β€” is HTTP handler that perform database updates and other logic required by the business logic. -Actions should reside in the `/actions` folder within resource. -Usually action is a single file that has meaningful name, e.x. `list`, `get-by-id`, `update-email`. +**API action** (endpoint) β€” is an HTTP handler that performs database updates and other logic required by the business logic. +Endpoints reside in the `/endpoints` folder within a resource. +Each endpoint is a single file with a meaningful name, e.x. `list`, `create`, `update`, `remove`. -If action has a lot of logic and require multiple files it needs to be placed into the folder with name of the action and action need to exposed using module pattern (index.ts file). +Each endpoint file must **default-export** a `createEndpoint({...})` call. Routes are auto-discovered β€” no manual registration needed. -Direct database updates of the current resource entity are allowed within action. +If `schema` is provided, the `validate` middleware auto-applies. Validated data is available on `ctx.validatedData`. ## Examples ```typescript -import Router from '@koa/router'; +import { z } from 'zod'; -import { AppKoaContext } from 'types'; +import createEndpoint from 'routes/createEndpoint'; +import { companyService } from 'resources/companies'; -import { validateMiddleware } from 'middlewares'; +const schema = z.object({ + userId: z.string(), +}); -type GetCompanies = { - userId: string; -}; +export default createEndpoint({ + method: 'get', + path: '/', + schema, -async function handler(ctx: AppKoaContext) { - const { userId } = ctx.validatedData; // validatedData is returned by API validator + async handler(ctx) { + const { userId } = ctx.validatedData; - ctx.body = {}; // action result sent to the client -} + const companies = await companyService.find({ userId }); -export default (router: Router) => { - // see Rest API validator - router.get('/companies', validateMiddleware(schema), handler); -}; + return companies; // returned value becomes ctx.body + }, +}); ``` \ No newline at end of file diff --git a/docs/api-reference/api-limitations.mdx b/docs/api-reference/api-limitations.mdx index e404e4d06..9470895c2 100644 --- a/docs/api-reference/api-limitations.mdx +++ b/docs/api-reference/api-limitations.mdx @@ -6,7 +6,7 @@ description: "To keep things simple and maintainable we enforce some limitations ## Resource updates ### Rule -**Every** entity update should stay within a resource folder. Direct database updates are allowed in data services, handlers and actions. +**Every** entity update should stay within a resource folder. Direct database updates are allowed in data services, handlers and endpoints. ### Explanation This restriction makes sure that entity updates are not exposed outside the resource. This enables the discoverability of all updates and simplifies resource changes. diff --git a/docs/api-reference/data-service.mdx b/docs/api-reference/data-service.mdx index 94d318f0d..12586a39b 100644 --- a/docs/api-reference/data-service.mdx +++ b/docs/api-reference/data-service.mdx @@ -6,23 +6,40 @@ title: "Data service" **Data Service** β€” is a layer that has two functions: database updates and domain functions. Database updates encapsulate the logic of updating and reading data in a database (also known as Repository Pattern in DDD). Domain functions use database updates to perform domain changes (e.x. `changeUserEmail`, `updateCredentials`, etc). For simplicity, we break the single responsibility pattern here. Data Service is usually named as `entity.service` (e.x. `user.service`). - ## Examples ```typescript -import _ from 'lodash'; import db from 'db'; -import constants from 'app.constants'; +import { DATABASE_DOCUMENTS } from 'app-constants'; import schema from './user.schema'; -import { User } from './user.types'; -const service = db.createService('users', { schema }); +const service = db.createService(DATABASE_DOCUMENTS.USERS, { + schemaValidator: (obj) => schema.parseAsync(obj), +}); -async function createInvitationToUser(email: string, companyId: string): Promise { +async function createInvitationToUser(email: string, companyId: string) { // the logic } -export default Object.assign(service, { - createInvitationToUser, +export default Object.assign(service, { + createInvitationToUser, }); -``` \ No newline at end of file +``` + +## Service API Quick Reference + +`db.createService` returns a `@paralect/node-mongo` Service. Key methods: +- `find(filter, { page, perPage }, { sort })` β†’ `{ results, pagesCount, count }` +- `findOne(filter)`, `insertOne(doc)`, `updateOne(filter, updateFn)`, `deleteSoft(filter)` +- `exists(filter)`, `distinct(field, filter)`, `countDocuments(filter)` +- `atomic.updateOne(filter, update)` β€” raw MongoDB update (bypass schema validator) +- `createIndex(keys, options?)` β€” call at module level in the service file + +### Soft Deletes + +`service.deleteSoft(filter)` sets `deletedOn` timestamp instead of removing. +All `find`/`findOne` queries auto-exclude `deletedOn !== null`. + + +The collection name must be registered in `packages/app-constants/src/api.constants.ts` β†’ `DATABASE_DOCUMENTS`. + \ No newline at end of file diff --git a/docs/api-reference/event-handler.mdx b/docs/api-reference/event-handler.mdx index af7bc7339..b285bc62c 100644 --- a/docs/api-reference/event-handler.mdx +++ b/docs/api-reference/event-handler.mdx @@ -5,7 +5,7 @@ title: "Event handler" ## Overview -**Event handler** β€” is a simple function that receives event as an argument and performs required logic. All event handlers should be stored in the /handlers folder within resource. Handler name should include event name e.x. `user.created.handler.ts`. That helps find all places were event is used. Direct database updates of the current resource entity are allowed within handler. +**Event handler** β€” is a simple function that receives event as an argument and performs required logic. Event handlers should be stored in a `.handler.ts` file at the resource root (e.g. `resources/users/users.handler.ts`). The handler file must be imported as a side-effect in the resource's `index.ts` barrel file (e.g. `import './users.handler'`). ## Examples diff --git a/docs/api-reference/events.mdx b/docs/api-reference/events.mdx index 26b34d095..921e76082 100644 --- a/docs/api-reference/events.mdx +++ b/docs/api-reference/events.mdx @@ -45,12 +45,12 @@ There are three types of events: }; ``` -- entity.removed event (e.x. user.removed). +- entity.deleted event (e.x. user.deleted). Ship uses soft deletes (`deleteSoft`) which set a `deletedOn` timestamp. ```typescript { _id: string, createdOn: Date, - type: 'user.removed', + type: 'user.deleted', userId: string, companyId: string, data: { diff --git a/docs/api-reference/middlewares.mdx b/docs/api-reference/middlewares.mdx index 8bf6ded40..ec03bdf88 100644 --- a/docs/api-reference/middlewares.mdx +++ b/docs/api-reference/middlewares.mdx @@ -31,27 +31,26 @@ The `rateLimitMiddleware` function accepts an options object with the following ### Example ```typescript -import Router from '@koa/router'; - -import { rateLimitMiddleware, validateMiddleware } from 'middlewares'; - -async function handler(ctx: AppKoaContext) { - // Your handler logic here - ctx.body = { success: true }; -} - -export default (router: Router) => { - router.post( - '/send-email', +import createEndpoint from 'routes/createEndpoint'; +import { rateLimitMiddleware } from 'middlewares'; + +export default createEndpoint({ + method: 'post', + path: '/send-email', + schema, + middlewares: [ rateLimitMiddleware({ limitDuration: 300, // 5 minutes requestsPerDuration: 5, // 5 requests per 5 minutes errorMessage: 'Too many emails sent. Please try again later.', }), - validateMiddleware(schema), - handler, - ); -}; + ], + + async handler(ctx) { + // Your handler logic here + return { success: true }; + }, +}); ``` ### Common Use Cases @@ -78,11 +77,11 @@ If validation fails, it automatically throws a `400` error with detailed field-l ### Example ```typescript -import Router from '@koa/router'; import { z } from 'zod'; +import createEndpoint from 'routes/createEndpoint'; + import { AppKoaContext } from 'types'; -import { validateMiddleware } from 'middlewares'; // Define your schema const schema = z.object({ @@ -102,11 +101,18 @@ async function handler(ctx: AppKoaContext) { ctx.body = { email, firstName, lastName, age }; } -export default (router: Router) => { - router.post('/users', validateMiddleware(schema), handler); -}; +export default createEndpoint({ + method: 'post', + path: '/users', + schema, + handler, +}); ``` + +When a `schema` is provided to `createEndpoint`, validation is applied automatically β€” there is no need to manually call `validateMiddleware`. + + ### Error Response Format When validation fails, the middleware returns a structured error response with field-specific error messages: diff --git a/docs/api-reference/overview.mdx b/docs/api-reference/overview.mdx index 8387191f0..d5e570ca3 100644 --- a/docs/api-reference/overview.mdx +++ b/docs/api-reference/overview.mdx @@ -29,17 +29,23 @@ Here is the resource structure example: ```shell /resource - /actions - get.ts + /endpoints + list.ts create.ts - ... - index.ts + update.ts + remove.ts + resource.schema.ts resource.service.ts - resource.routes.ts + resource.handler.ts # optional: eventBus side effects + index.ts # barrel: export service, import handler ``` ## Routing -Ship's API uses a structured routing system built on [Koa](https://koajs.com/) that organizes endpoints into three categories: **public**, **private**, and **admin** routes. All requests pass through global middlewares for authentication, error handling, and request processing. +Ship's API uses **automatic route discovery**. Endpoints are auto-registered based on their file location β€” just place files in `resources//endpoints/` and each file that default-exports `createEndpoint({...})` is automatically mounted. + +- Resource name = folder name = URL prefix (`resources/projects/` β†’ `/projects/*`). +- No manual route registration is needed. +- Every endpoint requires authentication by default unless `isPublic` is in the `middlewares` array. Learn more about the routing architecture in the [Routing](/api-reference/routing/overview) section. diff --git a/docs/api-reference/routing/middlewares.mdx b/docs/api-reference/routing/middlewares.mdx index 9477a3396..3c14e8d60 100644 --- a/docs/api-reference/routing/middlewares.mdx +++ b/docs/api-reference/routing/middlewares.mdx @@ -98,18 +98,47 @@ Ensures user is authenticated by checking if `ctx.state.user` exists. Returns `4 **Usage:** +With auto-discovery routing, `auth` is applied automatically to all endpoints by default. To make an endpoint public (skip auth), include the `isPublic` middleware in the `middlewares` array: + ```typescript -app.use(mount('/account', compose([auth, accountRoutes.privateRoutes]))); +import isPublic from 'middlewares/isPublic'; +import createEndpoint from 'routes/createEndpoint'; + +export default createEndpoint({ + method: 'get', + path: '/health', + middlewares: [isPublic], + async handler(ctx) { + ctx.body = { status: 'ok' }; + }, +}); ``` + +`isPublic` is a no-op middleware used as a sentinel β€” the route registration checks for it by reference identity and skips `auth` when present. + + ### adminAuth Validates admin access by checking the `x-admin-key` header against the `ADMIN_KEY` environment variable. Returns `401` if invalid. **Usage:** +Use `isAdmin` middleware in your endpoint: + ```typescript -app.use(mount('/admin/users', compose([adminAuth, userRoutes.adminRoutes]))); +import isAdmin from 'middlewares/isAdmin'; +import createEndpoint from 'routes/createEndpoint'; + +export default createEndpoint({ + method: 'get', + path: '/users', + middlewares: [isAdmin], + async handler(ctx) { + // Admin-only logic + ctx.body = { users: [] }; + }, +}); ``` **Making admin requests:** diff --git a/docs/api-reference/routing/overview.mdx b/docs/api-reference/routing/overview.mdx index f29a34c79..97a31be3f 100644 --- a/docs/api-reference/routing/overview.mdx +++ b/docs/api-reference/routing/overview.mdx @@ -2,99 +2,68 @@ title: "Overview" --- -Ship's API routing system is built on [Koa](https://koajs.com/) and organizes routes into three categories: **public**, **private**, and **admin** routes. All routes pass through global middlewares before reaching their handlers. +Ship's API routing system is built on [Koa](https://koajs.com/) with **automatic route discovery**. Endpoints are auto-registered from `resources//endpoints/` β€” no manual route files needed. All routes pass through global middlewares before reaching their handlers. ## Request Flow ```mermaid flowchart TD A[Incoming Request] --> B[Global Middlewares] - B --> C{Route Type?} - C -->|Public| D[Public Routes] - C -->|Private| E[auth middleware] - C -->|Admin| F[adminAuth middleware] - E --> G[Private Routes] - F --> H[Admin Routes] - D --> I[Route Handler] - G --> I - H --> I + B --> C{Has isPublic?} + C -->|Yes| D[Skip auth] + C -->|No| E[auth middleware] + C -->|Has isAdmin| F[adminAuth middleware] + E --> G[validate if schema] + D --> G + F --> G + G --> H[Custom middlewares] + H --> I[Handler] I --> J[Response] ``` -## Route Definition +## Auto-Discovery -Routes are defined in `/api/src/routes/index.ts`: +Routes register automatically. Each file in `resources//endpoints/` that default-exports `createEndpoint({...})` is mounted at `//`. -```typescript /api/src/routes/index.ts -const defineRoutes = (app: AppKoa) => { - // Global middlewares (applied to all routes) - app.use(attachCustomErrors); - app.use(attachCustomProperties); - app.use(routeErrorHandler); - app.use(extractTokens); - app.use(tryToAttachUser); +```typescript resources/projects/endpoints/list.ts +import createEndpoint from 'routes/createEndpoint'; - // Route registration - publicRoutes(app); - privateRoutes(app); - adminRoutes(app); -}; -``` - -Global middlewares run for every request. See [Routing Middlewares](/api-reference/routing/middlewares) for details. - -## Route Types - -### Public Routes - -Accessible without authentication. Defined in `/api/src/routes/public.routes.ts`. - -**Examples:** -- `GET /health` - Health check -- `POST /account/sign-up` - User registration -- `POST /account/sign-in` - User authentication - -### Private Routes - -Require user authentication via the `auth` middleware. Defined in `/api/src/routes/private.routes.ts`. +export default createEndpoint({ + method: 'get', + path: '/', -```typescript -// Private routes use auth middleware -app.use(mount('/account', compose([auth, accountRoutes.privateRoutes]))); + async handler(ctx) { + // GET /projects/ + return { projects: [] }; + }, +}); ``` -**Examples:** -- `GET /account` - Get current user account -- `PUT /account` - Update user profile -- `GET /users` - List users +- **Resource name = URL prefix**: `resources/projects/` β†’ `/projects/*` +- **No manual registration** β€” just place files in `endpoints/` +- Check startup logs for: `[routes] METHOD /resource/path` -### Admin Routes +## Auth Default -Require admin authentication via the `adminAuth` middleware (validates `x-admin-key` header). Defined in `/api/src/routes/admin.routes.ts`. +Every endpoint requires authentication **unless** `isPublic` is in the `middlewares` array. `isPublic` is a sentinel reference β€” the route system checks `middleware === isPublic` by identity. ```typescript -// Admin routes use adminAuth middleware -app.use(mount('/admin/users', compose([adminAuth, userRoutes.adminRoutes]))); +import createEndpoint from 'routes/createEndpoint'; +import isPublic from 'middlewares/isPublic'; + +export default createEndpoint({ + method: 'post', + path: '/sign-up', + schema, + middlewares: [isPublic], + + async handler(ctx) { + // accessible without auth + }, +}); ``` -**Examples:** -- `GET /admin/users` - Admin user management -- `PUT /admin/users/:id` - Admin user updates - -## Route Mounting - -Ship uses two Koa utilities: - -- **koa-mount** - Mount routes at a specific path prefix -- **koa-compose** - Compose multiple middlewares together - -```typescript -// Mount routes with prefix -app.use(mount('/account', accountRoutes.publicRoutes)); - -// Compose auth middleware with routes -app.use(mount('/account', compose([auth, accountRoutes.privateRoutes]))); -``` +For admin endpoints, use `isAdmin` middleware which checks the `x-admin-key` header against `config.ADMIN_KEY`. ## Authentication Flow diff --git a/docs/api-reference/testing.mdx b/docs/api-reference/testing.mdx index 4ced50b4b..1135c0f14 100644 --- a/docs/api-reference/testing.mdx +++ b/docs/api-reference/testing.mdx @@ -117,7 +117,7 @@ Add test scripts to your `apps/api/package.json`: Tests should be placed next to the code they are testing inside a `tests/` folder. Use `*.spec.ts` suffixes and standardize by unit type: -- `.action.spec.ts` β€” for action handler + validator (HTTP via supertest) +- `.endpoint.spec.ts` β€” for endpoint handler + validator (HTTP via supertest) - `.service.spec.ts` β€” for data/service layer - `.validator.spec.ts` β€” for standalone schema/validators @@ -125,12 +125,12 @@ Tests should be placed next to the code they are testing inside a `tests/` folde ```text apps/api/src/resources/user/ -β”œβ”€β”€ actions/ +β”œβ”€β”€ endpoints/ β”‚ β”œβ”€β”€ create.ts β”‚ └── tests/ -β”‚ └── create.action.spec.ts +β”‚ └── create.endpoint.spec.ts β”œβ”€β”€ user.service.ts -β”œβ”€β”€ user.routes.ts +β”œβ”€β”€ user.handler.ts └── tests/ β”œβ”€β”€ user.service.spec.ts └── factories/ @@ -208,7 +208,7 @@ describe('user service', () => { Test your API endpoints: -```typescript sign-up.action.spec.ts +```typescript sign-up.endpoint.spec.ts import app from 'app'; import request from 'supertest'; @@ -312,101 +312,3 @@ jest.mock('@aws-sdk/client-s3', () => ({ ``` ---- -title: "Testing" ---- - -## Overview - -In Ship testing settled through [Jest](https://jestjs.io/) framework and [MongoDB memory server](https://github.com/nodkz/mongodb-memory-server#available-options) with possibility running them in CI/CD pipeline. MongoDB's memory server allows connecting to the MongoDB server and running integration tests isolated. - -Tests should be placed in the `tests` directory specified for each resource from the `resources` folder and have next naming format `user.service.spec.ts`. - -```markdown apps/api/src/resources/user/tests/user.service.spec.ts -resources/ - user/ - tests/ - user.service.spec.ts -``` - -Run tests and linter. - -```shell -pnpm run test -``` - -Run only tests. - -```shell -pnpm run test:unit -``` - -## Example - -```typescript -import { Database } from '@paralect/node-mongo'; - -import { DATABASE_DOCUMENTS } from 'app-constants'; - -import { User } from 'types'; -import { userSchema } from 'schemas'; - -const database = new Database(process.env.MONGO_URL as string); - -const userService = database.createService(DATABASE_DOCUMENTS.USERS, { - schemaValidator: (obj) => userSchema.parseAsync(obj), -}); - -describe('User service', () => { - beforeAll(async () => { - await database.connect(); - }); - - it('should insert doc to collection', async () => { - const mockUser = { _id: '12q', name: 'John' }; - - await userService.insertOne(mockUser); - - const insertedUser = await userService.findOne({ _id: mockUser._id }); - - expect(insertedUser).toEqual(mockUser); - }); - - afterAll(async () => { - await database.close(); - }); -}); -``` - -## GitHub Actions - -By default, tests run for each pull request to the `main` branch through the `run-tests.yml` workflow. - -```yaml .github/workflows/run-tests.yml -name: run-tests - -on: - pull_request: - branches: - - main - -jobs: - test: - runs-on: ubuntu-latest - strategy: - matrix: - node-version: [ 16.x ] - steps: - - uses: actions/checkout@v2 - - name: Test api using jest - uses: actions/setup-node@v3 - with: - node-version: ${{ matrix.node-version }} - cache: 'npm' - - run: npm install - - run: npm test -``` - - -To set up pull request rejection if tests failed visit `Settings > Branches` tab in your repository. Then add the branch [protection rule](https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule) "Require status checks to pass before merging". - diff --git a/docs/api-reference/workflow.mdx b/docs/api-reference/workflow.mdx index 30ab41b7e..0bea3b9b1 100644 --- a/docs/api-reference/workflow.mdx +++ b/docs/api-reference/workflow.mdx @@ -4,7 +4,7 @@ title: "Workflow" ## Overview -`Workflow` β€” is a complex business operation that requires two or more data services to be used together. If a workflow is simple enough and used only in one place β€” it can be defined right in the Rest API action. If not β€” it should be placed into the β€˜workflowName.workflow’ file. A most common workflow example is a `signup.workflow` that exposes `createUserAccount` function and used when new user signs up or receive an invite. +`Workflow` β€” is a complex business operation that requires two or more data services to be used together. If a workflow is simple enough and used only in one place β€” it can be defined right in the endpoint handler. If not β€” it should be placed into the β€˜workflowName.workflow’ file. A most common workflow example is a `signup.workflow` that exposes `createUserAccount` function and used when new user signs up or receive an invite. ## Examples @@ -26,13 +26,13 @@ const signup = async ({ let signedUpUser = null; await companyService.withTransaction(async (session: any) => { const companyId = companyService.generateId(); - await companyService.create({ + await companyService.insertOne({ _id: companyId, name: '', }, { session }); - signedUpUser = await userService.create({ + signedUpUser = await userService.insertOne({ _id: userId, companyId, email, diff --git a/docs/architecture.mdx b/docs/architecture.mdx index 3299761d2..6f8529113 100644 --- a/docs/architecture.mdx +++ b/docs/architecture.mdx @@ -5,7 +5,7 @@ description: "Every technological decision is driven by simplicity. We believe t ## Overview -Our technological choices based on the following main tools: [Next.js](https://nextjs.org/), [Tanstack Query](https://tanstack.com/query/latest/), [React Hook Form](https://react-hook-form.com/), [Mantine UI](https://mantine.dev/), [Koa.js](https://koajs.com/), [Socket.IO](https://socket.io/), [MongoDB](https://www.mongodb.com/), [Turborepo](https://turbo.build/repo/docs), [Docker](https://www.docker.com/), [Kubernetes](https://kubernetes.io/), [GitHub Actions](https://github.com/features/actions) and [TypeScript](https://www.typescriptlang.org/). +Our technological choices based on the following main tools: [Next.js](https://nextjs.org/), [Tanstack Query](https://tanstack.com/query/latest/), [React Hook Form](https://react-hook-form.com/), [Tailwind CSS](https://tailwindcss.com/), [shadcn/ui](https://ui.shadcn.com/), [Koa.js](https://koajs.com/), [Socket.IO](https://socket.io/), [MongoDB](https://www.mongodb.com/), [Turborepo](https://turbo.build/repo/docs), [Docker](https://www.docker.com/), [Kubernetes](https://kubernetes.io/), [GitHub Actions](https://github.com/features/actions) and [TypeScript](https://www.typescriptlang.org/). On a high-level Ship consist of the following parts: diff --git a/docs/contribution-guide.mdx b/docs/contribution-guide.mdx index 84c969f64..322c21422 100644 --- a/docs/contribution-guide.mdx +++ b/docs/contribution-guide.mdx @@ -68,13 +68,13 @@ Documentation will be opened on [http://localhost:4100](http://localhost:4100) i ## Packages -Within the `/package` folder, you'll find two essential packages: `create-ship-app` and `node-mongo`. +Within the `/packages` folder, you'll find two essential packages: `create-ship-app` and `node-mongo`. **create-ship-app** is simple CLI tool for bootstrapping Ship applications. Downloads actual template from Ship monorepo and configures it to run. -Learn more in the [documentation](/packages/create-ship-app.mdx). +Learn more in the [documentation](/packages/create-ship-app). **node-mongo** is lightweight reactive extension to official Node.js MongoDB [driver](https://mongodb.github.io/node-mongodb-native/4.10/). -It's used in the Ship template, and you can find details in the [documentation](/packages/node-mongo.mdx). +It's used in the Ship template, and you can find details in the [documentation](/packages/node-mongo). ## Ship template structure @@ -85,9 +85,9 @@ Let's explore the structure: - **.github** - contains scripts for Github actions. - **.husky** - contains a script that runs before committing and checks for ESLint errors. - **.vscode** - VS Code settings. -- **apps** - contains [API](/api-reference/overview.mdx) and [WEB](/web/overview.mdx). +- **apps** - contains [API](/api-reference/overview) and [WEB](/web/overview). - **bin** - contains scripts for setting up and starting the project. -- **packages** - contains packages with shared code. Find more details about package sharing in our [documentation](/package-sharing/overview.mdx). +- **packages** - contains packages with shared code (`app-constants`, `shared`, `mailer`, config packages). Find more details about package sharing in our [documentation](/package-sharing/overview). ### How to run Ship template diff --git a/docs/deployment/kubernetes/overview.mdx b/docs/deployment/kubernetes/overview.mdx index 4a3c23951..9c9f4a15c 100644 --- a/docs/deployment/kubernetes/overview.mdx +++ b/docs/deployment/kubernetes/overview.mdx @@ -156,7 +156,7 @@ Services are parts of your application packaged as Helm Charts. |[**Scheduler**](https://github.com/paralect/ship/blob/main/template/apps/api/src/scheduler)|Service that runs cron jobs|Pod| |[**Migrator**](https://github.com/paralect/ship/blob/main/template/apps/api/src/migrator)|Service that migrates database schema. It deploys before api through Helm pre-upgrade [hook](https://helm.sh/docs/topics/charts_hooks/)|Job| -To deploy services in the cluster manually you need to set cluster authorization credentials inside [config](https://github.com/paralect/ship/blob/main/examples/base/deploy/script/src/config.js) and run deployment [script](https://github.com/paralect/ship/blob/main/examples/base/deploy/script/src/index.js). +To deploy services in the cluster manually you need to set cluster authorization credentials and run the deployment script. ```shell deploy/script/src node index @@ -170,7 +170,7 @@ When you will configure GitHub Secrets in your repo, GitHub Actions will automat You can check the required secrets inside [workflow](https://github.com/paralect/ship/tree/main/deploy/digital-ocean/.github/workflows) files. -If you are adding new service, you need to configure it in [**app**](https://github.com/paralect/ship/blob/main/examples/base/deploy/app) and [**script**](https://github.com/paralect/ship/blob/main/examples/base/deploy/script/src) folders. +If you are adding new service, you need to configure it in the [**app**](https://github.com/paralect/ship/blob/main/deploy/digital-ocean/deploy/app) folder. You can do it following the example from neighboring services. @@ -191,8 +191,7 @@ bash deploy-dependencies.sh ``` -If you are adding new dependency, you need to create separate folder inside [**dependencies**](https://github.com/paralect/ship/blob/main/examples/base/deploy/dependencies) folder and configure new Chart. -Also, you need to add new dependency in [**deploy-dependencies.sh**](https://github.com/paralect/ship/blob/main/examples/base/deploy/bin/deploy-dependencies.sh) script. +If you are adding new dependency, you need to create separate folder inside [**dependencies**](https://github.com/paralect/ship/blob/main/deploy/digital-ocean/deploy/dependencies) folder and configure new Chart. You can do it following the example from neighboring dependencies. diff --git a/docs/docs.json b/docs/docs.json index 5891359da..51f969d4e 100644 --- a/docs/docs.json +++ b/docs/docs.json @@ -83,36 +83,7 @@ } ] }, - "retool", - { - "group": "Examples", - "pages": [ - "examples/overview", - { - "group": "Stripe subscriptions", - "pages": [ - "examples/stripe-subscriptions/overview", - "examples/stripe-subscriptions/account", - { - "group": "API", - "pages": [ - "examples/stripe-subscriptions/api/overview", - "examples/stripe-subscriptions/api/subscriptions", - "examples/stripe-subscriptions/api/payments" - ] - } - ] - }, - { - "group": "API Public Docs", - "pages": [ - "examples/api-public-docs/overview", - "examples/api-public-docs/usage", - "examples/api-public-docs/how-it-works" - ] - } - ] - } + "retool" ] }, { diff --git a/docs/examples/api-public-docs/how-it-works.mdx b/docs/examples/api-public-docs/how-it-works.mdx deleted file mode 100644 index 9641daaeb..000000000 --- a/docs/examples/api-public-docs/how-it-works.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: "How it Works" ---- - -When you're calling `registerDocs` function, we add config in Registry. You can register docs in any part of application. -This config is written with this [standard](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#serverObject) in mind. -This registry contains all actions that gathered inside API. To retrieve these docs in open api format, you can call `docsService.getDocs` function. - -For advanced usage cases, you can reference to this [documentation](https://github.com/asteasolutions/zod-to-openapi) \ No newline at end of file diff --git a/docs/examples/api-public-docs/overview.mdx b/docs/examples/api-public-docs/overview.mdx deleted file mode 100644 index e2eb7554b..000000000 --- a/docs/examples/api-public-docs/overview.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Overview" ---- - -Keeping your public API up to date can be a cumbersome task that requires manually updating files. Our solution eliminates this hassle by allowing you to document your code itself, so you can focus on development without worrying about API updates. - -The example demonstrates how to add Api public docs and the components included in the Ship to build a web application that supports documentation of API with Open API specification. -The example includes documentation and sample code that will help the developer in the process of integrating with the Ship template. - -[Example with code](https://github.com/paralect/ship/tree/main/examples/public-docs) \ No newline at end of file diff --git a/docs/examples/api-public-docs/usage.mdx b/docs/examples/api-public-docs/usage.mdx deleted file mode 100644 index cc47736f9..000000000 --- a/docs/examples/api-public-docs/usage.mdx +++ /dev/null @@ -1,148 +0,0 @@ ---- -title: "Usage" ---- - -Just add `docsService.registerDocs` in your code. For example -```typescript -// resources/account/actions/sign-up/doc.ts -const config: RouteExtendedConfig = { - private: false, - tags: [resourceName], - method: 'post', - path: `/${resourceName}/sign-up`, - summary: 'Sign up', - request: {}, - responses: {}, -}; -export default config; - -// resources/account/actions/sign-up/index.ts -import docConfig from './doc'; - -export default (router: AppRouter) => { - docsService.registerDocs(docConfig); - - router.post('/sign-up', validateMiddleware(schema), validator, handler); -}; -``` - -Here we just added `/account/sign-up` path to open api specification. Later on we will learn how to customise it. -To look at result you can launch application and make call to api endpoint with `/docs/json` path. E.g. `http://localhost:3002/docs/json` if you're using local server. -It will return you json specification in [Open API standard](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#serverObject). -You can use tools like [Swagger Editor](https://editor-next.swagger.io/) to see it in pretty editor. - - -In order to add body, params or query, you can add zod schema inside `request` property. -E.g. for body it will look like that: - -```typescript -// schemas/empty.schema.ts -export const EmptySchema = docsService.registerSchema('EmptyObject', z.object({})); - -// resources/account/actions/sign-up/schema.ts -export const schema = z.object({ - firstName: z.string().min(1, 'Please enter First name').max(100), - lastName: z.string().min(1, 'Please enter Last name').max(100), - email: z.email('Email format is incorrect.').min(1, 'Please enter email'), - password: z.string().regex( - PASSWORD_REGEXP, - 'The password must contain 6 or more characters with at least one letter (a-z) and one number (0-9).', - ), -}); - -// resources/account/actions/sign-up/doc.ts -import { resourceName } from 'resources/account/constants'; -import { schema } from './schema'; -import { EmptySchema } from 'schemas/empty.schema'; - -const config: RouteExtendedConfig = { - private: false, - tags: [resourceName], - method: 'post', - path: `/${resourceName}/sign-up`, - summary: 'Sign up', - request: { - body: { content: { 'application/json': { schema } } }, - }, - responses: { - 200: { - description: 'Empty data.', - content: { - 'application/json': { - schema: EmptySchema, - }, - }, - }, - }, -}; - -export default config; -``` - -Here we also added details inside `responses` property to let api user know what we might expect from there. For that we have used `docsService.registerSchema` function. For more details you can look at this [documentation](https://github.com/asteasolutions/zod-to-openapi) - - -For query, it will look like that: -```typescript -// resources/account/actions/verify-email/schema.ts -export const schema = z.object({ - token: z.string().min(1, 'Token is required'), -}); - -// resources/account/actions/verify-email/doc.ts -import { resourceName } from 'resources/account/constants'; -import { schema } from './schema'; - -const config: RouteExtendedConfig = { - private: false, - tags: [resourceName], - method: 'get', - path: `/${resourceName}/verify-email`, - summary: 'Verify email', - request: { - query: schema, - }, - responses: { - 302: { - description: 'Redirect to web app', - }, - }, -}; - -export default config; -``` - -Also, there is an option to make the endpoint secure. Just set the `private` property to `true`, and it will add JWT authorization to this endpoint. -If your auth method is not JWT, then there is built-in `cookie-auth` strategy. To update set it, you can set `authType` in config. -```typescript -// resources/account/actions/verify-email/doc.ts -import { resourceName } from 'resources/account/constants'; -import { schema } from './schema'; - -const config: RouteExtendedConfig = { - private: false, - authType: 'cookieAuth', - tags: [resourceName], - method: 'get', - path: `/${resourceName}/verify-email`, - summary: 'Verify email', - request: { - query: schema, - }, - responses: { - 302: { - description: 'Redirect to web app', - }, - }, -}; - -export default config; -``` -If you need other strategies, please look at `docs.service.ts` file. There will be option to extend methods like that: -```typescript -registry.registerComponent('securitySchemes', 'customAuth', { - type: 'apiKey', - in: 'cookie', - name: 'JSESSIONID', -}); -``` \ No newline at end of file diff --git a/docs/examples/overview.mdx b/docs/examples/overview.mdx deleted file mode 100644 index c1dd6e973..000000000 --- a/docs/examples/overview.mdx +++ /dev/null @@ -1,15 +0,0 @@ ---- -title: "Overview" ---- - - -It's the draft version of **Examples** documentation, the articles contains some deprecated details. This section will be refactored and actualized soon ✨. - - -The example section in the Ship documentation provides developers with a set of working examples that demonstrate how to use the various services and components that are included in the Ship. -The examples are designed to help developers get up and running with the boilerplate quickly and efficiently! - -## List of examples - -- **[Stripe Subscriptions](/examples/stripe-subscriptions/overview)** -- **[Public Docs](/examples/api-public-docs/overview)** diff --git a/docs/examples/stripe-subscriptions/account.mdx b/docs/examples/stripe-subscriptions/account.mdx deleted file mode 100644 index dbc878148..000000000 --- a/docs/examples/stripe-subscriptions/account.mdx +++ /dev/null @@ -1,60 +0,0 @@ ---- -title: 'Stripe account' ---- - -## Api keys - -Navigate to the `Developers` tab [link](https://dashboard.stripe.com/test/developers) and select `API keys` in the left sidebar. -Here you can find two keys - public and secret. - -Public key is required by the client-side stripe library (for example - a payment form to purchase a product or add a card for later use). -(Ship uses client-side stripe library to display add card form) - -Secret key is used to interract with stripe using application's server. - -Copy them and store in web's (public key) configs and server's configs (secret key) - -![Stripe create product form](/images/web/stripe/stripe-api-keys.png) - -## Webhooks - -Webhooks allow stripe to communicate with your server by sending plain POST requests on every event, that happens on stripe. During adding a new webhook you can select which events should be sent to the server. - -Start creating a new webhook by clicking on the `+ Add endpoint` button. -Type URL of the endpoint, responsible for listening for the stripe events (Default ship URL is `HTTPS:///webhook/stripe`). -Add events that you want to listen to. Ship listens for the following events - - -- `setup_intent.succeeded` - Triggers when a customer adds a new card using stripe form on the web application. -- `customer.subscription.create` - Triggers when a customer's subscription created -- `payment_method.attached` - Triggers when a customer adds a new card during the payment process on stripe checkout page -- `customer.subscription.updated` - Triggers when a customer's subscription changes -- `customer.subscription.deleted` - Triggers when a customer's subscription is deleted. - -![Stripe create webhook form](/images/web/stripe/stripe-webhook-create.png) - -Navigate to the created webhook and reveal webhook secret. Copy this value to API config's - -![Stripe webhook details page](/images/web/stripe/stripe-webhook-key.png) - -For local development, you can use Stripe CLI to forward events on your localhost - [link](https://stripe.com/docs/stripe-cli) - -## Subscription products - -Navigate to the product tab [link](https://dashboard.stripe.com/test/products) and press the Button `+ Add product` in the top right corner. - -Add product name and, optionally, description and image. -Next, add price information. To create a basic subscription with recurring payments, select pricing model `Standard pricing`, add price and currency, select `Recurring` option below the price, and select Billing period. - -Stripe allows to setup several prices for product. Ship uses subscripti ons with two payment periods - monthly and yearly, therefore stripe product should has two prices. Click the button `+ Add another price` at the bottom and fill in the second form. Make sure prices have `Monthly` and `Yearly` billing periods - -![Stripe create product form](/images/web/stripe/stripe-product-create.png) - -Open created product detailed view. Here you can find information about prices, logs and events, related to this product. -Purchase operation requires price ids of the product. Copy them and store them in the application's config - -![Stripe product details page](/images/web/stripe/stripe-product-details.png) diff --git a/docs/examples/stripe-subscriptions/api/overview.mdx b/docs/examples/stripe-subscriptions/api/overview.mdx deleted file mode 100644 index 6ed839fd0..000000000 --- a/docs/examples/stripe-subscriptions/api/overview.mdx +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: "Overview" ---- - -This section contains list of stripe api calls, used in the application with brief description of each. - diff --git a/docs/examples/stripe-subscriptions/api/payments.mdx b/docs/examples/stripe-subscriptions/api/payments.mdx deleted file mode 100644 index e40471e7a..000000000 --- a/docs/examples/stripe-subscriptions/api/payments.mdx +++ /dev/null @@ -1,71 +0,0 @@ ---- -title: "Payments" ---- - - -## POST /payments/create-setup-intent - -Generates a one-time secret key to allow the web application to communicate with stripe directly - -Returns `clientSecret` token, used by `@stripe/react-stripe-js` components. - -Stripe call snippet - -```typescript -const setupIntent = await stripeService.setupIntents.create({ - customer: user.stripeId, - payment_method_types: ['card'], -}); -``` - -Parameters description - - -| Parameter | type | Description | -| ------------- | ------------- | ------------- | -| customer | string | id of the stripe customer | -| payment_method_types | array | The list of payment method types that this SetupIntent is allowed to set up | - -More information about stripe `SetupIntent` object - [link](https://stripe.com/docs/api/setup_intents/object) - -## GET /payments/payment-information - -Returns customer's billing details, balance on stripe account and card information (last 4 digits, expiration date and brand) - -Stripe call snippet - -```typescript -const paymentInformation = await stripeService.customers.retrieve(user.stripeId, { - expand: ['invoice_settings.default_payment_method'], -}); -``` -Parameters description - - -| Parameter | type | Description | -| ------------- | ------------- | ------------- | -| stripeId | string | id of the stripe customer | -| expand | array | By default, stripe returns only the if of the related object (default_payment_method in this case). Those objects can be expanded inline with the expand request parameter. | - -More information about stripe `Customer` object - [link](https://stripe.com/docs/api/customers/object) - -## GET /payments/get-history - -Returns a list of the customer's charges. The charges are returned in sorted order, with the most recent charges appearing first. - -Query params - - -| Parameter | type | Description | -| ------------- | ------------- | ------------- | -| cursorId | string | A cursor for use in pagination. starting_after is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with obj_foo, your subsequent call can include starting_after=obj_foo in order to fetch the next page of the list. | -| direction | string | A direction of pagination. Used to determine which parameter `starting_after` or `ending_before` should be passed to the stripe call | -| perPage | string | A limit on the number of objects to be returned | - -Stripe call snippet - -```typescript -const charges = await stripeService.charges.list({ - limit: perPage, - customer: user.stripeId as string, - starting_after: cursorId, -}); -``` - -More information about stripe `Charge` object - [link](https://stripe.com/docs/api/charges/object) - -More information about stripe pagination - [link](https://stripe.com/docs/api/pagination) \ No newline at end of file diff --git a/docs/examples/stripe-subscriptions/api/subscriptions.mdx b/docs/examples/stripe-subscriptions/api/subscriptions.mdx deleted file mode 100644 index 53a04f6b0..000000000 --- a/docs/examples/stripe-subscriptions/api/subscriptions.mdx +++ /dev/null @@ -1,198 +0,0 @@ ---- -title: 'Subscriptions' ---- - -## POST /subscriptions/subscribe - -Generates subscription for customer and returns a link to checkout session where user can review payment details, provides payment information, and purchase a subscription. - -Body params - - -| Parameter | type | Description | -| --------- | ------ | -------------------------------- | -| priceId | string | Id of the price for subscription | - -Returns `checkoutLink` url with checkout form. - -Stripe call snippet - - -```typescript - const session = await stripeService.checkout.sessions.create({ - mode: 'subscription', - customer: user.stripeId, - line_items: [{ - quantity: 1, - price: priceId, - }], - success_url: `${config.webUrl}?subscriptionPlan=${priceId}`, - cancel_url: config.WEB_URL, - }); -``` - -Parameters description - - -| Parameter | type | Description | -| ---------------------------------------- | --------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | -| mode | string | The mode of the Checkout Session. For subscription it should be set to `subscription` | -| customer | string | id of the stripe customer. if `undefined`, stripe will ask for the user's email and create a new customer upon purchasing | -| line_items | array | Array with information about items that will be included in checkout session | -|
  • quantity
  • price
|
  • number
  • string
|
  • Amount of items (usually 1 for subscription)
  • id of the specific price of the product
| -| success_url | string | The URL to which Stripe should send customers when payment or setup is complete | -| cancel_url | string | The URL the customer will be directed to if they decide to cancel payment and return to your website | - -More information about stripe checkout object - [link](https://stripe.com/docs/api/checkout/sessions) - -## POST /subscriptions/cancel-subscription - -Cancels prolongation of a customer’s subscription. The customer will not be charged again for the subscription. - -Stripe call snippet - - -```typescript - stripeService.subscriptions.update(user.subscription?.subscriptionId as string, { - cancel_at_period_end: true, - }); -``` - -Parameters description - - -| Parameter | type | Description | -| -------------------- | ------- | ------------------------------------------------------------------------------------ | -| customer | string | id of the stripe customer | -| cancel_at_period_end | boolean | Indicating whether this subscription should cancel at the end of the current period. | - -More information about subscription update - [link](https://stripe.com/docs/api/subscriptions/update) - -## POST /subscriptions/upgrade - -Changes customer's subscription plan (billing period or subscription plan) - -Body params - - -| Parameter | type | Description | -| --------- | ------ | -------------------------------- | -| priceId | string | Id of the price for subscription | - -Stripe call snippet - - -```typescript - const subscriptionDetails = await stripeService.subscriptions.retrieve(subscriptionId); - - const items = [{ - id: subscriptionDetails.items.data[0].id, - price: priceId, - }]; - - await stripeService.subscriptions.update(subscriptionId, { - proration_behavior: 'always_invoice', - cancel_at_period_end: false, - items, - }); -``` - -Parameters description - - -| Parameter | type | Description | -| ---------------------------------- | --------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| subscriptionId | string | id of the customer's active subscription | -| proration_behavior | string | Determines how to handle prorations when the billing cycle changes (switching plan in this case). parameter `Always_invoice` is used to charge the customer immediately | -| cancel_at_period_end | string | Boolean indicating whether this subscription should cancel at the end of the current period. | -| items | array | array with information about subscription items | -|
  • id
  • price
|
  • string
  • string
|
  • id of the customer's active subscription
  • id of the specific price of the product
| - -More information about subscription update - [link](https://stripe.com/docs/api/subscriptions/update) - -## GET /subscriptions/current - -Returns detailes subscription information along with pending invoice - -Stripe call snippet - - -```typescript - const product = await stripeService.products.retrieve(user.subscription?.productId); -``` - -| Parameter | type | Description | -| --------- | ------ | -------------------------------- | -| productId | string | id of the product (subscription) | - -More information about products - [link](https://stripe.com/docs/api/products) - -```typescript - const pendingInvoice = await stripeService.invoices.retrieveUpcoming({ - subscription: user.subscription?.subscriptionId, - }); -``` - -| Parameter | type | Description | -| ------------ | ------ | ---------------------------------------- | -| subscription | string | id of the customer's active subscription | - -More information about invoices - [link](https://stripe.com/docs/api/invoices) - -## GET /subscriptions/preview-upgrade - -Returns invoice with billing information of subscription upgrade/downgrade - -Query params - - -| Parameter | type | Description | -| --------- | ------ | -------------------------------- | -| priceId | string | Id of the price for subscription | - -Returns invoice with payment details - -Code snippet - - -```typescript - if (priceId === 'price_0') { - items = [{ - id: subscriptionDetails.items.data[0].id, - price_data: { - currency: 'USD', - product: user.subscription?.productId, - recurring: { - interval: subscriptionDetails.items.data[0].price.recurring?.interval, - interval_count: 1, - }, - unit_amount: 0, - }, - }]; - } else { - items = [{ - id: subscriptionDetails.items.data[0].id, - price: priceId, - }]; - } - - const invoice = await stripeService.invoices.retrieveUpcoming({ - customer: user.stripeId || undefined, - subscription: user.subscription?.subscriptionId, - subscription_items: items, - subscription_proration_behavior: 'always_invoice', - }); -``` - -Parameters description - - -| Parameter | type | Description | -| ---------------------------------- | --------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| customer | string | id of the stripe customer | -| subscription | string | id of customer's active subscription | -| subscription_proration_behavior | string | Determines how to handle prorations when the billing cycle changes (e.g., when switching plans, resetting billing_cycle_anchor=now, or starting a trial), or if an item’s quantity changes. | -| subscription_items | array | array with information about subscription items | -|
  • id
  • price
|
  • string
  • string
|
  • id of the customer's active subscription
  • id of the specific price of the product
| - -In case the customer chooses free plan, we need to send a custom price object to stripe with unit_amount set to 0 in order to receive invoice with empty products and information about a refund for canceled subscription - -Price data parameters - - -| Parameter | type | Description | -| ------------------------------------------------- | --------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| currency | string | Three-letter ISO currency code, in lowercase. | -| product | string | id of subscription product | -| recurring | object | The recurring components of a price such as interval and interval_count | -|
  • interval
  • interval_count
|
  • string
  • number
|
  • Specifies billing frequency. Either day, week, month or year.
  • The number of intervals between subscription billings
| -| unit_amount | number | A positive integer in cents (or 0 for a free price) representing how much to charge. | - -More information about previewing upcoming invoices - [link](https://stripe.com/docs/api/invoices/upcoming) diff --git a/docs/examples/stripe-subscriptions/overview.mdx b/docs/examples/stripe-subscriptions/overview.mdx deleted file mode 100644 index c2458d997..000000000 --- a/docs/examples/stripe-subscriptions/overview.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "Overview" ---- - -The example demonstrates how to use the Stripe API and the components included in the Ship to build a web application that supports subscription-based billing. -The example includes documentation and sample code that will help the developer in the process of integrating Stripe subscriptions with the Ship template. - -[Example with code](https://github.com/paralect/ship/tree/main/examples/stripe-subscriptions) \ No newline at end of file diff --git a/docs/git-hooks.mdx b/docs/git-hooks.mdx index dab849710..574baba6e 100644 --- a/docs/git-hooks.mdx +++ b/docs/git-hooks.mdx @@ -79,7 +79,7 @@ When any `.ts` file is staged, runs on **entire project**: ### Packages -All shared packages (`schemas`, `mailer`, `app-types`, etc.) have similar lint-staged configurations tailored to their file types. +All shared packages (`app-constants`, `shared`, `mailer`, etc.) have similar lint-staged configurations tailored to their file types. ## Customization diff --git a/docs/introduction.mdx b/docs/introduction.mdx index 1cf79e851..0e60ffd06 100644 --- a/docs/introduction.mdx +++ b/docs/introduction.mdx @@ -40,7 +40,7 @@ This command will create everything you need to develop, launch locally and depl ### Launch your project -We use [Turborepo](https://turborepo.org/docs) for managing monorepo. To run infra and all services -- just run: `npm start` πŸš€ +We use [Turborepo](https://turborepo.org/docs) for managing monorepo. To run infra and all services -- just run: `pnpm start` πŸš€ ### Learn key concepts diff --git a/docs/migrator.mdx b/docs/migrator.mdx index 0cb1522fd..3eba6aeaa 100644 --- a/docs/migrator.mdx +++ b/docs/migrator.mdx @@ -89,12 +89,12 @@ So to re-run failed one, you simply start to migrate the process again. For development: ``` -npm run migrate-dev +pnpm run migrate-dev ``` For production: ``` -npm run migrate +pnpm run migrate ``` ## How to check failed migration logs diff --git a/docs/package-sharing/overview.mdx b/docs/package-sharing/overview.mdx index cd8c3b1e8..9b567a612 100644 --- a/docs/package-sharing/overview.mdx +++ b/docs/package-sharing/overview.mdx @@ -3,19 +3,22 @@ title: "Overview" --- Ship is monorepo, so it lets you share your code across applications to minimize duplications and reduce errors. -All shared code are inside **packages/** folder. +All shared code is inside the **packages/** folder. -By default, packages include app-constants, app-types, enums, schemas and mailer. Learn more about the **mailer** package [here](/mailer). +By default, packages include `app-constants`, `shared`, `mailer`, and config packages. Learn more about the **mailer** package [here](/mailer). ```shell /packages /app-constants - /app-types - /enums + /shared /mailer - /schemas + /eslint-config + /prettier-config + /tsconfig ``` +The **shared** package is special β€” it contains an auto-generated typed API client that bridges `apps/api` and `apps/web`. Schemas from API resources are automatically copied to `packages/shared/src/schemas/` during codegen. Run `pnpm --filter shared generate` after any API endpoint or schema change. + ## Installation We've included all essential packages in your apps. @@ -23,13 +26,11 @@ If you want to add more packages, head to the `package.json` file, and in the de ```json apps/web/package.json "dependencies": { - "app-constants": "workspace:*", - "app-types": "workspace:*", - "schemas": "workspace:*", + "shared": "workspace:*", }, ``` - The **enums** package comes with **app-types**, so no separate import is needed. + The **shared** package provides the typed API client, constants, types, enums, and schemas β€” so a single import covers most shared needs. You can read more about **package sharing** in [Turborepo documentation](https://turbo.build/repo/docs/handbook/sharing-code/internal-packages). diff --git a/docs/package-sharing/schemas.mdx b/docs/package-sharing/schemas.mdx index 8234b58ac..526a0bc26 100644 --- a/docs/package-sharing/schemas.mdx +++ b/docs/package-sharing/schemas.mdx @@ -4,21 +4,21 @@ title: "Schemas" ## Overview -Schemas package contains **data schemas** for the applications, including resource schemas. +Data schemas are defined inside each API resource folder (e.g. `apps/api/src/resources/users/users.schema.ts`). They are **auto-copied** to `packages/shared/src/schemas/` during codegen (`pnpm --filter shared generate`). -**Data schema** β€” is a Zod schema that defines shape of the entity. It must strictly define all fields. Resource schema is defined in entity.schema file e.x. `user.schema`. +**Data schema** β€” is a Zod 4 schema that defines shape of the entity. It extends `dbSchema` from `resources/base.schema.ts` which provides `_id`, `createdOn`, `updatedOn`, and `deletedOn` fields. ```typescript import { z } from 'zod'; -import dbSchema from './db.schema'; +import dbSchema from 'resources/base.schema'; const schema = dbSchema.extend({ firstName: z.string(), lastName: z.string(), fullName: z.string(), - email: z.string(), + email: z.email(), passwordHash: z.string().nullable().optional(), isEmailVerified: z.boolean().default(false), @@ -37,22 +37,24 @@ const schema = dbSchema.extend({ export default schema; ``` + +This repo uses **Zod 4**. Use `z.email()`, `z.url()`, `z.uuid()` instead of Zod 3's `z.string().email()`. + + ## Validation -Zod schemas simplify form validation in react-hook-form: +Zod schemas are used both server-side (in `createEndpoint` via the `schema` option) and client-side (via `useApiForm` or manual `zodResolver`): ```tsx import { z } from 'zod'; import { useForm } from 'react-hook-form'; import { zodResolver } from '@hookform/resolvers/zod'; -import { EMAIL_REGEX, PASSWORD_REGEX } from 'app-constants'; - const schema = z.object({ firstName: z.string().min(1, 'Please enter First name').max(100), lastName: z.string().min(1, 'Please enter Last name').max(100), - email: z.string().regex(EMAIL_REGEX, 'Email format is incorrect.'), - password: z.string().regex(PASSWORD_REGEX, 'The password must contain 6 or more characters with at least one letter (a-z) and one number (0-9).'), + email: z.email('Email format is incorrect.'), + password: z.string().min(6, 'Password must be at least 6 characters'), }); type SignUpParams = z.infer @@ -70,9 +72,9 @@ const SignUp = () => { export default SignUp; ``` -Additionally, data can be validated using the `saveParse` method: +Additionally, data can be validated using the `safeParse` method: ```typescript -const parsed = zodSchema.saveParse(data); +const parsed = zodSchema.safeParse(data); if (!parsed.success) { throw new Error('Invalid data'); diff --git a/docs/web/calling-api.mdx b/docs/web/calling-api.mdx index 4a576f10a..26c1c7012 100644 --- a/docs/web/calling-api.mdx +++ b/docs/web/calling-api.mdx @@ -4,48 +4,69 @@ title: "Calling API" ## Overview -Ship uses [TanStack Query](https://tanstack.com/query/latest) with our own axios library wrapper. -All queries are located in the `/resources` folder, organized into sub-folders for each resource. +Ship uses [TanStack Query](https://tanstack.com/query/latest) v5 with an auto-generated typed API client. +The typed client is generated from API endpoints via codegen β€” no manual hook creation needed. -TanStack Query helps easily fetch, cache, and update data. -Each API endpoint has a related React hook using TanStack Query. +Import the client from `services/api-client.service`: -When getting data with **apiService** in `services/api.service.ts`, no need to add the full endpoint URL. -The axios instance already has the base URL set. +```tsx +import { apiClient } from 'services/api-client.service'; +``` -If you need to make a request to a new endpoint, for example, for a `project` resource, -you need to add a new hook to `/resources/project/project.api.ts` +## Queries (GET) -## Examples +```tsx +import { useApiQuery } from 'hooks'; +import { apiClient } from 'services/api-client.service'; -```typescript resources/account/account.api.ts -export function useUpdate() { - const update = (data: T) => apiService.put("/account", data); +// Simple query +const { data, isLoading } = useApiQuery(apiClient.projects.list); - return useMutation(update); -} +// With parameters +const { data } = useApiQuery(apiClient.projects.list, { page: 1, perPage: 10 }); ``` -```typescript resources/user/user.api.ts -export function useList(params: T) { - const list = () => apiService.get("/users", params); +## Mutations (POST/PUT/DELETE) - interface UserListResponse { - count: number; - items: User[]; - totalPages: number; - } +```tsx +import { useApiMutation } from 'hooks'; - return useQuery(["users", params], list); -} +const { mutate, isPending } = useApiMutation(apiClient.projects.create); +mutate({ name: 'New Project' }, { onError: (e) => handleApiError(e, setError) }); ``` -```typescript pages/profile/index.page.tsx -type UpdateParams = z.infer; +## Dynamic Path Params + +`useApiMutation` binds `pathParams` at **hook level** β€” they're fixed for all `mutate()` calls. For dynamic IDs (e.g., deleting different items in a list), use `endpoint.call()` directly: + +```tsx +import queryClient from 'query-client'; -const { mutate: update, isLoading: isUpdateLoading } = accountApi.useUpdate(); +// βœ… Dynamic pathParams β€” use .call() +const handleDelete = async (id: string) => { + await apiClient.projects.remove.call({}, { pathParams: { id } }); + queryClient.invalidateQueries({ queryKey: [apiClient.projects.list.path] }); +}; + +// βœ… Fixed pathParams β€” hook level is fine +const { mutate: update } = useApiMutation(apiClient.projects.update, { + pathParams: { id: projectId }, +}); ``` -```typescript pages/home/index.tsx -const { data: users, isLoading: isUsersLoading } = userApi.useList(params); +## Query Invalidation + +```tsx +import queryClient from 'query-client'; + +queryClient.invalidateQueries({ queryKey: [apiClient.projects.list.path] }); +queryClient.setQueryData([apiClient.account.get.path], updatedData); ``` + +Query keys = `[endpoint.path, ...params]`. The first element is always the endpoint path string. + +## Error Handling + +`handleApiError(e, setError)` from `utils`: +- Maps server validation errors β†’ react-hook-form field errors +- Shows global errors via Sonner toast diff --git a/docs/web/forms.mdx b/docs/web/forms.mdx index 8a347c0fb..577d48ced 100644 --- a/docs/web/forms.mdx +++ b/docs/web/forms.mdx @@ -4,116 +4,103 @@ title: Forms ## Overview -We use the [react-hook-form](https://react-hook-form.com/) library along with [@hookform/resolvers](https://www.npmjs.com/package/@hookform/resolvers) to simplify the process of creating and managing forms. -This setup allows for the quick development of robust forms. +We use [react-hook-form](https://react-hook-form.com/) v7 with [Zod 4](https://zod.dev/) for form validation. +Ship provides a `useApiForm` hook that automatically resolves the Zod schema from a typed API endpoint. -### Form Schema +### useApiForm β€” Auto Schema Resolution -With [@hookform/resolvers](https://www.npmjs.com/package/@hookform/resolvers), you can validate your forms using a Zod schema. -Just write the schema and use it as a resolver in the `useForm` hook. -This approach not only validates your forms but also helps in creating perfectly typed forms by inferring types from the schema. +```tsx +import { useApiForm, useApiMutation } from 'hooks'; +import { apiClient } from 'services/api-client.service'; +import { handleApiError } from 'utils'; + +const form = useApiForm(apiClient.projects.create); // auto-resolves Zod schema +const { mutate } = useApiMutation(apiClient.projects.create); + +const onSubmit = form.handleSubmit((data) => + mutate(data, { onError: (e) => handleApiError(e, form.setError) }) +); +``` + +### Manual Form Setup + +You can also use `useForm` directly with a Zod schema: -Example of setting up a form with Zod schema: ```tsx import { useForm } from 'react-hook-form'; import { zodResolver } from '@hookform/resolvers/zod'; import { z } from 'zod'; -// Define your schema const schema = z.object({ firstName: z.string().min(1, 'Please enter First name').max(100), lastName: z.string().min(1, 'Please enter Last name').max(100), - email: z.string().regex(EMAIL_REGEX, 'Email format is incorrect.'), + email: z.email('Email format is incorrect.'), }); -// Infer type from schema type FormParams = z.infer; const Page = () => { - const { register, handleSubmit } = useForm({ + const { register, handleSubmit, formState: { errors } } = useForm({ resolver: zodResolver(schema), }); - - // Form handling code here }; ``` -### Error Handling -For error handling in forms, we use the `handle-error.util.ts` utility function. -This function parses error messages, sets them to the form fields' error states, or displays a global notification for general errors. - -Usage: -```tsx -import { useForm } from 'react-hook-form'; -import { handleError } from 'utils'; + +This repo uses **Zod 4**. Use `z.email()`, `z.url()`, `z.uuid()` instead of Zod 3's `z.string().email()`. + -const Page: NextPage = () => { - const { setError } = useForm(); - - // Submit function - const onSubmit = (data: SignUpParams) => signUp(data, { - onError: (e) => handleError(e, setError), - }); -} -``` - -#### Form usage +### Error Handling -Here is an example of how you can create a form: +Use `handleApiError(e, setError)` from `utils` to map server errors to form fields or show Sonner toasts: ```tsx -import { handleError } from 'utils'; -import { accountApi } from 'resources/account'; -import { useForm } from 'react-hook-form'; -import { zodResolver } from '@hookform/resolvers/zod'; -import { z } from 'zod'; +import { handleApiError } from 'utils'; -// Define your schema -const schema = z.object({ - // Schema details here +const onSubmit = (data) => mutate(data, { + onError: (e) => handleApiError(e, form.setError), }); +``` -// Infer type from schema -type SignUpParams = z.infer; - -const Page: NextPage = () => { - const { mutate: signUp, isLoading: isSignUpLoading } = accountApi.useSignUp(); - const { - register, - handleSubmit, - setError, - formState: { errors }, - } = useForm({ - resolver: zodResolver(schema), - }); +### Complete Form Example - // Submit function - const onSubmit = (data: SignUpParams) => signUp(data, { - onSuccess: (data) => { - // Handle success response - queryClient.setQueryData(['account'], data); - }, - onError: (e) => handleError(e, setError), - }); +```tsx +import Head from 'next/head'; +import { LayoutType, Page, ScopeType } from 'components'; +import { useApiForm, useApiMutation } from 'hooks'; +import { apiClient } from 'services/api-client.service'; +import { handleApiError } from 'utils'; +import { Button } from '@/components/ui/button'; +import { Input } from '@/components/ui/input'; + +const CreateProjectPage = () => { + const form = useApiForm(apiClient.projects.create); + const { mutate, isPending } = useApiMutation(apiClient.projects.create); + + const onSubmit = form.handleSubmit((data) => + mutate(data, { onError: (e) => handleApiError(e, form.setError) }) + ); - // Form rendering return ( -
- - - - + + + Create Project + +
+ + {form.formState.errors.name && ( +

{form.formState.errors.name.message}

+ )} + +
+
); }; -``` -By following these guidelines, you can effectively build and manage forms in our application, -ensuring a smooth user experience and robust form handling. \ No newline at end of file +export default CreateProjectPage; +``` \ No newline at end of file diff --git a/docs/web/overview.mdx b/docs/web/overview.mdx index b9fac8b5a..31fc16dda 100644 --- a/docs/web/overview.mdx +++ b/docs/web/overview.mdx @@ -7,21 +7,22 @@ It's crafted using a selection of advanced technologies and tools, making it a r The core technologies include: -- [Next.js](https://nextjs.org/): A React framework that supports features like server-side rendering, static site generation and routing. +- [Next.js](https://nextjs.org/) (Pages Router): A React framework that supports features like server-side rendering, static site generation and routing. - [TanStack Query](https://tanstack.com/query): A library for managing data fetching, caching, and updating in React apps. -- [React Hook Form](https://react-hook-form.com/) + [Zod](https://zod.dev/): Efficient form management and schema validation tools. -- [Mantine UI](https://mantine.dev/) + [Tabler](https://tabler-icons.io/): UI components and icons for responsive and accessible web interfaces. +- [React Hook Form](https://react-hook-form.com/) + [Zod 4](https://zod.dev/): Efficient form management and schema validation tools. +- [Tailwind CSS 4](https://tailwindcss.com/) + [shadcn/ui](https://ui.shadcn.com/): Utility-first CSS framework with accessible, customizable UI components. +- [lucide-react](https://lucide.dev/): Beautiful & consistent icon set. - [Typescript](https://www.typescriptlang.org/): JavaScript with syntax for types, enhancing scalability and maintainability. ## Web Starter Documentation Sections Explore the following sections for detailed information on different aspects of the Web Starter: -- [Styling](/web/styling): Focuses on the styling approach used in the application, detailing how to work with Mantine UI to create visually appealing interfaces. +- [Styling](/web/styling): Focuses on the styling approach using Tailwind CSS 4 and shadcn/ui, with `cn()` for conditional class merging and CSS variables for theming. - [Routing](/web/routing): Covers the routing mechanism within the application, explaining how to organize navigation flow. -- [Calling API](/web/calling-api): Dedicated to API interactions, this section explains how to effectively make requests to back-end services, manage responses, and handle errors using the provided API service utilities. -- [Forms](/web/forms): Discusses form management, highlighting the integration of React Hook Form and Zod for efficient form creation, validation, and handling user inputs. -- [Services](/web/services): Describes the various service layers used in the application, such as the API, socket, and analytics services, providing examples of how to implement and utilize these services for different functionalities. +- [Calling API](/web/calling-api): Dedicated to API interactions using the auto-generated typed API client, with `useApiQuery` and `useApiMutation` hooks for data fetching and mutations. +- [Forms](/web/forms): Discusses form management, highlighting the integration of React Hook Form and Zod 4 with `useApiForm` for automatic schema resolution. +- [Services](/web/services): Describes the various service layers used in the application, such as the API client, socket, and analytics services. - [Environment Variables](/web/environment-variables): Guides on managing environment-specific configurations, explaining the use of different `.env` files for development, staging, and production environments, and the importance of securing sensitive data. ## React TypeScript Cheatsheet diff --git a/docs/web/routing.mdx b/docs/web/routing.mdx index fa89c9e27..72ae8f64f 100644 --- a/docs/web/routing.mdx +++ b/docs/web/routing.mdx @@ -4,10 +4,9 @@ title: "Routing" Our application's routing is powered by [Next.js Pages router](https://nextjs.org/docs/pages), which is a standard for handling routes in Next.js applications. -## Configuration in `routes.ts` +## Page Configuration with `` -Each route in our application is configured in the `routes.ts` file, located in the root of the `routes` directory. -This file defines the structure and access levels of all routes using the `routesConfiguration` object. +Each page component declares its own scope and layout by wrapping its content in the `` component (imported from `components`). This co-locates route configuration with the page component itself β€” no central configuration file to maintain. ### Scope and Layout Types @@ -21,35 +20,49 @@ Routes are categorized into two scope types and layout types: - `MAIN`: Main layout for authenticated users. - `UNAUTHORIZED`: Layout for non-authenticated users or authentication pages. -### Route Configuration Example +### Page Configuration Example -Here's an example of how a private and a public route are configured: +Here's how a page declares its scope and layout: -- Private Route (Requires authentication): -```tsx src/routes.ts -[RoutePath.Profile]: { - scope: ScopeType.PRIVATE, - layout: LayoutType.MAIN, -} +- Private Page (Requires authentication): +```tsx src/pages/profile/index.page.tsx +import { Page, ScopeType, LayoutType } from 'components'; + +const Profile = () => { + return ( + +
Profile page
+
+ ); +}; + +export default Profile; ``` -- Public Route (Accessible without authentication): -```tsx src/routes.ts -[RoutePath.ForgotPassword]: { - scope: ScopeType.PUBLIC, - layout: LayoutType.UNAUTHORIZED, -}, +- Public Page (Accessible without authentication): +```tsx src/pages/forgot-password/index.page.tsx +import { Page, ScopeType, LayoutType } from 'components'; + +const ForgotPassword = () => { + return ( + +
Forgot password page
+
+ ); +}; + +export default ForgotPassword; ``` -## Page Configuration +## Page Component -The PageConfig (`/pages/_app/PageConfig/index.tsx` file) plays a crucial role in applying these configurations. -It uses the route configuration from `routes.ts` to determine the appropriate scope and layout for each page. +The `Page` component (`/pages/_app/PageConfig/index.tsx`, re-exported from `components`) handles scope and layout rendering. +Each page wraps its content in `` to declare its access requirements and layout. ### How It Works -- The `PageConfig` component, using the Next.js router, matches the current route against the `routesConfiguration`. -- Based on the route, it applies the designated scope and layout. +- Each page imports the `Page` component and wraps its returned JSX with the appropriate `scope` and `layout` props. +- Based on these props, the `Page` component applies the designated scope and layout. - For private routes, it redirects unauthenticated users to the sign-in page. - Conversely, for public routes, authenticated users are redirected to the home page. diff --git a/docs/web/services.mdx b/docs/web/services.mdx index b4b8f5d1f..7a5bf25e3 100644 --- a/docs/web/services.mdx +++ b/docs/web/services.mdx @@ -7,16 +7,20 @@ title: Services Services in our application are specific functionalities or data manipulations handled by objects, classes, or functions. You can add any service as needed for third-party API integrations or app metrics collection. -### API Service +### API Client **Description:** -The API Service, represented by the `ApiClient` class, enhances axios client for better error handling and easier configuration. +The API Client, represented by the `ApiClient` class in `packages/shared`, wraps axios with better error handling and typed endpoint support. The typed client is auto-generated from API endpoints. **Example Usage:** ```typescript -import { apiService } from 'services'; +import { apiClient } from 'services/api-client.service'; -// Making a GET request -const data = await apiService.get('/users', { sort: { createdOn: 'desc' } }); +// Using typed endpoints +const projects = await apiClient.projects.list.call({ page: 1, perPage: 10 }); + +// With useApiQuery hook +import { useApiQuery } from 'hooks'; +const { data, isLoading } = useApiQuery(apiClient.projects.list); ``` ### Socket Service diff --git a/docs/web/storybook.mdx b/docs/web/storybook.mdx index 5980cb49a..10ad795d2 100644 --- a/docs/web/storybook.mdx +++ b/docs/web/storybook.mdx @@ -9,14 +9,14 @@ Follow the official guides below to add them to your project. ## Official Setup Guides -- [Setup Mantine in Storybook Guide](https://mantine.dev/guides/storybook/) +- [Storybook Getting Started](https://storybook.js.org/docs/get-started) - [Chromatic GitHub Actions Guide](https://www.chromatic.com/docs/github-actions/) ## Project Conventions - **Stories Organization:** - Application components: `src/components` - - UI Kit (theme components): `src/theme/components` + - UI components (shadcn/ui wrappers): `src/components/ui` - **Storybook stories path config:** ```tsx .storybook/main.ts @@ -26,44 +26,40 @@ stories: [ titlePrefix: 'Application Components', }, { - directory: '../src/theme/components', + directory: '../src/components/ui', titlePrefix: 'UI Kit', }, ], ``` -## Example: Mantine Button Story +## Example: Button Story -```tsx src/theme/components/Button/index.stories.tsx -import { Button, ButtonProps } from '@mantine/core'; +```tsx src/components/ui/Button/index.stories.tsx +import { Button } from '@/components/ui/button'; import type { Meta, StoryObj } from '@storybook/react'; const meta = { component: Button, args: { children: 'Button', - variant: 'primary', - size: 'md', - loading: false, + variant: 'default', + size: 'default', }, argTypes: { variant: { - options: ['primary', 'outline'], + options: ['default', 'destructive', 'outline', 'secondary', 'ghost', 'link'], control: { type: 'radio' }, }, size: { - options: ['md', 'lg'], + options: ['default', 'sm', 'lg', 'icon'], control: { type: 'radio' }, }, - loading: { - control: { type: 'boolean' }, - }, }, } satisfies Meta; export default meta; -type Story = StoryObj; +type Story = StoryObj; export const Basic: Story = {}; ``` diff --git a/docs/web/styling.mdx b/docs/web/styling.mdx index f57248d00..2315cda51 100644 --- a/docs/web/styling.mdx +++ b/docs/web/styling.mdx @@ -2,40 +2,60 @@ title: "Styling" --- -Ship aims for efficiency and convenience in styling by leveraging the [Mantine UI](https://v6.mantine.dev/) library. -Mantine UI offers a wide range of customizable components and hooks that facilitate the creation of visually appealing and functional interfaces. +Ship uses **Tailwind CSS 4** for utility-first styling and **shadcn/ui** (New York style, no RSC) for accessible, customizable UI components. -### Theme Configuration (`theme/index.ts`) +### Tailwind CSS -Our application's design system is built on top of Mantine's [theme object](https://v6.mantine.dev/theming/theme-object/). -The theme object allows us to define global style properties that can be applied consistently across web application. +All styling is done with Tailwind utility classes. No CSS modules, no styled-components. -### Custom Components (`components/index.js`) +- **Mobile-first**: Use `sm:`, `md:`, `lg:` breakpoints. +- **Dark mode**: Use semantic CSS variables (`text-foreground`, `bg-background`, `text-muted-foreground`, `border`, etc.). +- **Theming**: `next-themes` (system/light/dark). Use CSS variables, not hardcoded colors. -We extend Mantine's components to create custom-styled versions specific to our application needs. +### Conditional Classes with `cn()` -Here's an example of how we extend the Mantine `Button` component: +Use `cn()` from `@/lib/utils` for conditional class merging: -- We set the default button size to 'large' (`lg`). +```tsx +import { cn } from '@/lib/utils'; -``` typescript theme/components/index.ts -import { Button } from '@mantine/core'; +
+``` + +### shadcn/ui Components + +UI primitives live in `src/components/ui/`. Add new components via: + +```shell +npx shadcn@latest add +``` + +Import them with the `@/` alias: -import classes from './index.module.css'; +```tsx +import { Button } from '@/components/ui/button'; +import { Input } from '@/components/ui/input'; +import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card'; +``` + + +**Don't modify shadcn/ui files** unless necessary. Wrap them instead with custom components. + + +### Icons -export default Button.extend({ - defaultProps: { - size: 'lg', - }, - classNames: { - label: classes.label, - }, -}); +Use [lucide-react](https://lucide.dev/) for icons: + +```tsx +import { Plus, Trash, Pencil } from 'lucide-react'; + + ``` -- Custom class names are applied for additional styling, defined in our `index.module.css`. -``` typescript theme/components/index.ts -.label { - font-weight: 500; -} -``` \ No newline at end of file +### Component Organization + +| Location | Scope | Import pattern | +| -------------------------- | -------------------- | --------------------------- | +| `src/components/ui/` | shadcn/ui primitives | `@/components/ui/button` | +| `src/components/` | Shared components | `'components'` (barrel) | +| `pages//components/` | Page-scoped | Relative import within page | \ No newline at end of file diff --git a/examples/prisma/.dockerignore b/examples/prisma/.dockerignore deleted file mode 100644 index 7422e1e90..000000000 --- a/examples/prisma/.dockerignore +++ /dev/null @@ -1,27 +0,0 @@ -# dependencies -/node_modules - -# testing -/coverage - -# production -/dist - -# edtiors -.idea -.vscode - -# misc -.DS_Store -.dev -.turbo -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# typescript -*.tsbuildinfo diff --git a/examples/prisma/.gitignore b/examples/prisma/.gitignore deleted file mode 100644 index 7422e1e90..000000000 --- a/examples/prisma/.gitignore +++ /dev/null @@ -1,27 +0,0 @@ -# dependencies -/node_modules - -# testing -/coverage - -# production -/dist - -# edtiors -.idea -.vscode - -# misc -.DS_Store -.dev -.turbo -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# typescript -*.tsbuildinfo diff --git a/examples/prisma/.npmrc b/examples/prisma/.npmrc deleted file mode 100644 index 609f49bda..000000000 --- a/examples/prisma/.npmrc +++ /dev/null @@ -1,4 +0,0 @@ -save-exact=true -package-import-method=copy -auto-install-peers=true -engine-strict=true diff --git a/examples/prisma/README.md b/examples/prisma/README.md deleted file mode 100644 index c6fcce4e0..000000000 --- a/examples/prisma/README.md +++ /dev/null @@ -1,39 +0,0 @@ -# [Documentation](https://ship.paralect.com/docs/introduction) - -## Starting Application with Turborepo πŸš€ - -To run the infrastructure and all services -- just run: -```sh -pnpm start -``` - -### Running Infra and Services Separately with Turborepo - -1. Start base infrastructure services in Docker containers: - ```sh - pnpm run infra - ``` -2. Run the services with Turborepo: - ```sh - pnpm run turbo-start - ``` - -## Using Ship with Docker - -To run the infrastructure and all services, execute: -```sh -pnpm run docker -``` - -### Running Infra and Services Separately with Docker - -1. Start base infrastructure services in Docker containers: - ```sh - pnpm run infra - ``` -2. Run the services you need: - ```sh - ./bin/start.sh api web - ``` - -You can also run infrastructure services separately using the `./bin/start.sh` bash script. diff --git a/examples/prisma/apps/api/.dockerignore b/examples/prisma/apps/api/.dockerignore deleted file mode 100644 index 924a89e08..000000000 --- a/examples/prisma/apps/api/.dockerignore +++ /dev/null @@ -1,23 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# production -/dist - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# typescript -*.tsbuildinfo diff --git a/examples/prisma/apps/api/.env.example b/examples/prisma/apps/api/.env.example deleted file mode 100644 index 39a0dd53b..000000000 --- a/examples/prisma/apps/api/.env.example +++ /dev/null @@ -1,47 +0,0 @@ -# Since the ".env" file is gitignored, you can use the ".env.example" file to -# build a new ".env" file when you clone the repo. Keep this file up-to-date -# when you add new variables to `.env`. - -# This file will be committed to version control, so make sure not to have any -# secrets in it. If you are cloning this repo, create a copy of this file named -# ".env" and populate it with your secrets. - -# When adding additional environment variables, the schema in "src/config/index.ts" -# should be updated accordingly. - -# If you are using Docker for the development process, -# you need to use the following variables for Redis: -# REDIS_URI=redis://:@redis:6379 - -# Redis -REDIS_URI=redis://:@localhost:6379 - -# Application URLs -API_URL=http://localhost:3001 -WEB_URL=http://localhost:3002 - -# Admin Key -# You can generate a new admin key on the command line with the following comand: -# openssl rand -base64 32 -# ADMIN_KEY= - -# Resend -# If you are using Resend for the development process, -# you need to use the following variables: -# https://resend.com/docs/introduction -# RESEND_API_KEY=... -# Link for emails testing: -# https://resend.com/docs/dashboard/emails/send-test-emails - -# Cloud storage -# If you are using DO Spaces, then you can use the following guide to configure cloud storage environments: -# https://docs.digitalocean.com/products/spaces/reference/s3-sdk-examples/ -# CLOUD_STORAGE_ENDPOINT=https://....digitaloceanspaces.com -# CLOUD_STORAGE_ACCESS_KEY_ID=... -# CLOUD_STORAGE_SECRET_ACCESS_KEY=.. -# CLOUD_STORAGE_BUCKET=... - -# Token secret -# You can generate a new Token secret on the command line with the following comand: -# openssl rand -base64 32 -# JWT_SECRET= diff --git a/examples/prisma/apps/api/.eslintignore b/examples/prisma/apps/api/.eslintignore deleted file mode 100644 index 924a89e08..000000000 --- a/examples/prisma/apps/api/.eslintignore +++ /dev/null @@ -1,23 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# production -/dist - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# typescript -*.tsbuildinfo diff --git a/examples/prisma/apps/api/.eslintrc.js b/examples/prisma/apps/api/.eslintrc.js deleted file mode 100644 index b08bd056f..000000000 --- a/examples/prisma/apps/api/.eslintrc.js +++ /dev/null @@ -1,5 +0,0 @@ -module.exports = { - root: true, - extends: ['custom/node'], - ignorePatterns: ['jest.config.js'], -}; diff --git a/examples/prisma/apps/api/.gitignore b/examples/prisma/apps/api/.gitignore deleted file mode 100644 index f9d6ffbfb..000000000 --- a/examples/prisma/apps/api/.gitignore +++ /dev/null @@ -1,28 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# production -/dist - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env -.env.* -!.env.example - -# typescript -*.tsbuildinfo diff --git a/examples/prisma/apps/api/.npmrc b/examples/prisma/apps/api/.npmrc deleted file mode 100644 index 9e8e12ac0..000000000 --- a/examples/prisma/apps/api/.npmrc +++ /dev/null @@ -1,3 +0,0 @@ -save-exact=true -package-import-method=copy -auto-install-peers=true diff --git a/examples/prisma/apps/api/.prettierignore b/examples/prisma/apps/api/.prettierignore deleted file mode 100644 index 124d28573..000000000 --- a/examples/prisma/apps/api/.prettierignore +++ /dev/null @@ -1,29 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# production -/dist - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# typescript -*.tsbuildinfo - -# docker -Dockerfile -Dockerfile.* - -.prettierignore diff --git a/examples/prisma/apps/api/.prettierrc.json b/examples/prisma/apps/api/.prettierrc.json deleted file mode 100644 index ba63a7c68..000000000 --- a/examples/prisma/apps/api/.prettierrc.json +++ /dev/null @@ -1 +0,0 @@ -"prettier-config-custom" diff --git a/examples/prisma/apps/api/Dockerfile b/examples/prisma/apps/api/Dockerfile deleted file mode 100644 index 67597eb5e..000000000 --- a/examples/prisma/apps/api/Dockerfile +++ /dev/null @@ -1,56 +0,0 @@ -# BUILDER - Stage 1 -FROM node:alpine AS builder -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund turbo@2.0.6 -COPY . . -RUN turbo prune --scope=api --docker - -# INSTALLER - Stage 2 -FROM node:alpine AS installer -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund pnpm@9.5.0 - -# First install the dependencies (as they change less often) -COPY --from=builder /app/out/pnpm-lock.yaml ./pnpm-lock.yaml -RUN pnpm fetch - -# Build the project and its dependencies -COPY --from=builder /app/out/pnpm-workspace.yaml ./pnpm-workspace.yaml -COPY --from=builder /app/out/full/ . -RUN pnpm install -r --prefer-offline --ignore-scripts -COPY --from=builder /app/out/full/turbo.json ./turbo.json - -# Generation prisma types -WORKDIR /app/packages/database/ -RUN npx prisma generate -WORKDIR /app - -# DEVELOPMENT - Stage 3 -FROM installer AS development -# Creation database entities -WORKDIR /app/packages/database -RUN npx prisma db push -WORKDIR /app -CMD pnpm turbo run dev --filter=api - -# RUNNER - Stage 4 -FROM node:alpine AS runner -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund ts-node@10.9.1 - -# Don't run production as root -RUN addgroup --system --gid 1001 app -RUN adduser --system --uid 1001 app -USER app - -COPY --from=installer /app . - -EXPOSE 3001 - -CMD ["ts-node", "apps/api/src/app.ts"] diff --git a/examples/prisma/apps/api/Dockerfile.scheduler b/examples/prisma/apps/api/Dockerfile.scheduler deleted file mode 100644 index 09cf38218..000000000 --- a/examples/prisma/apps/api/Dockerfile.scheduler +++ /dev/null @@ -1,51 +0,0 @@ -# BUILDER - Stage 1 -FROM node:22-alpine AS builder -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund turbo@2.0.6 -COPY . . -RUN turbo prune --scope=api --docker - -# INSTALLER - Stage 2 -FROM node:22-alpine AS installer -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund pnpm@9.5.0 - -# First install the dependencies (as they change less often) -COPY --from=builder /app/out/pnpm-lock.yaml ./pnpm-lock.yaml -RUN pnpm fetch - -# Build the project and its dependencies -COPY --from=builder /app/out/pnpm-workspace.yaml ./pnpm-workspace.yaml -COPY --from=builder /app/out/full/ . -RUN pnpm install -r --prefer-offline --ignore-scripts -COPY --from=builder /app/out/full/turbo.json ./turbo.json - -# DEVELOPMENT - Stage 3 -FROM installer AS development -# Generation prisma types -WORKDIR /app/packages/database -RUN npx prisma generate -WORKDIR /app -CMD pnpm turbo run dev --filter=api - -# RUNNER - Stage 4 -FROM node:22-alpine AS runner -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund ts-node@10.9.1 - -# Don't run production as root -RUN addgroup --system --gid 1001 app -RUN adduser --system --uid 1001 app -USER app - -COPY --from=installer /app . - -EXPOSE 3001 - -CMD ["ts-node", "apps/api/src/scheduler.ts"] diff --git a/examples/prisma/apps/api/README.md b/examples/prisma/apps/api/README.md deleted file mode 100644 index 191fb6efb..000000000 --- a/examples/prisma/apps/api/README.md +++ /dev/null @@ -1,59 +0,0 @@ -# API Component - -A fully featured [Koa.JS](https://koajs.com/) RESTful API starter application -designed to handle routine tasks, so you can focus on your product's business logic. - -For more detailed information, -refer to the [API section in Ship documentation](https://ship.paralect.com/docs/api-reference/overview). - -## Getting Started - -### Prerequisites - -Ensure you have a `.env` file. If not, create one by copying the `.env.example` file: - -```sh -cp .env.example .env -``` - -### Running the Application - -You can start the application in two ways: - -1. **Independent Start**: Navigate to the `api` folder and run: - ```sh - pnpm run dev - ``` -2. **Root Start**: From the root of the project, run: - ```sh - pnpm start - ``` - -## Features - -### Configuration and Management - -- **Config Management**: Configuration management with schema validation. -- **Logging**: Configured console logger for effective debugging. -- **Environment Handling**: Supports both development and production environments with Docker configuration. - -### Development Tools - -- **Automatic Restart**: Utilizes [tsx](https://tsx.is/) for automatic application restart on code changes. -- **Code Quality**: Enforces code linting with [ESLint](https://eslint.org/) and formatting with [Prettier](https://prettier.io/). -- **TypeScript Support**: Full support for TypeScript for a better development experience. - -### API and Authentication - -- **Account API**: Provides production-ready account functionalities including Sign Up, Sign In, Forgot Password, and Reset Password. -- **Authentication**: Implements access token-based authentication using [JWT](https://jwt.io/). - -### Data Handling - -- **Request Validation**: Simplified request data validation and sanitization with [Zod](https://zod.dev/). -- **Database**: Configuration for MongoDB, including migrations. - -### Communication and Scheduling - -- **WebSocket**: Integrated WebSocket server using [socket.io](https://socket.io/). -- **Scheduler**: Task scheduling based on cron jobs. diff --git a/examples/prisma/apps/api/jest.config.js b/examples/prisma/apps/api/jest.config.js deleted file mode 100644 index 24652ee74..000000000 --- a/examples/prisma/apps/api/jest.config.js +++ /dev/null @@ -1,17 +0,0 @@ -/** @type {import('jest').Config} */ -const config = { - preset: '@shelf/jest-mongodb', - verbose: true, - testEnvironment: 'node', - testMatch: ['**/?(*.)+(spec.ts)'], - transform: { - '^.+\\.(ts)$': 'ts-jest', - }, - watchPathIgnorePatterns: ['globalConfig'], - roots: [''], - modulePaths: ['src'], - moduleDirectories: ['node_modules'], - testTimeout: 10000, -}; - -module.exports = config; diff --git a/examples/prisma/apps/api/package.json b/examples/prisma/apps/api/package.json deleted file mode 100644 index 2ba4b42ca..000000000 --- a/examples/prisma/apps/api/package.json +++ /dev/null @@ -1,106 +0,0 @@ -{ - "name": "api", - "version": "1.0.0", - "description": "Koa.js API", - "author": "Paralect", - "license": "MIT", - "packageManager": "pnpm@9.5.0", - "scripts": { - "build": "tsc", - "dev": "NODE_ENV=development APP_ENV=development tsx watch --env-file=.env src/app.ts", - "start": "ts-node src/app.ts", - "migrate-dev": "cd packages/database && pnpm prisma migrate dev", - "migrate": "cd packages/database && pnpm prisma migrate deploy", - "schedule-dev": "NODE_ENV=development APP_ENV=development tsx watch --env-file=.env src/scheduler.ts", - "schedule": "ts-node src/scheduler.ts", - "test:unit": "jest --runInBand -c ./jest.config.js --collectCoverage false", - "tsc": "tsc --noEmit --watch", - "prettier": "prettier . --write --config .prettierrc.json", - "eslint": "eslint . --fix", - "precommit": "lint-staged" - }, - "dependencies": { - "@aws-sdk/client-s3": "3.540.0", - "@aws-sdk/lib-storage": "3.540.0", - "@aws-sdk/s3-request-presigner": "3.540.0", - "@koa/cors": "5.0.0", - "@koa/router": "13.0.0", - "@prisma/client": "6.3.0", - "@socket.io/redis-adapter": "8.1.0", - "@socket.io/redis-emitter": "5.1.0", - "app-constants": "workspace:*", - "app-types": "workspace:*", - "bcryptjs": "2.4.3", - "database": "workspace:*", - "dayjs": "1.11.10", - "dotenv": "16.0.3", - "google-auth-library": "8.7.0", - "ioredis": "5.3.2", - "jsonwebtoken": "9.0.0", - "koa": "2.14.1", - "koa-body": "6.0.1", - "koa-bodyparser": "4.3.0", - "koa-compose": "4.1.0", - "koa-helmet": "6.1.0", - "koa-logger": "3.2.1", - "koa-mount": "4.0.0", - "koa-qs": "3.0.0", - "koa-ratelimit": "5.0.1", - "lodash": "4.17.21", - "mailer": "workspace:*", - "mixpanel": "0.17.0", - "module-alias": "2.2.2", - "node-schedule": "2.1.1", - "npm": "9.6.1", - "prisma": "6.3.0", - "psl": "1.9.0", - "resend": "3.2.0", - "schemas": "workspace:*", - "socket.io": "4.6.1", - "winston": "3.8.2", - "zod": "3.21.4" - }, - "devDependencies": { - "@shelf/jest-mongodb": "4.2.0", - "@types/bcryptjs": "2.4.2", - "@types/jest": "29.5.12", - "@types/jsonwebtoken": "9.0.6", - "@types/koa": "2.13.5", - "@types/koa-bodyparser": "4.3.10", - "@types/koa-compose": "3.2.5", - "@types/koa-helmet": "6.0.4", - "@types/koa-logger": "3.1.2", - "@types/koa-mount": "4.0.2", - "@types/koa-ratelimit": "5.0.0", - "@types/koa__cors": "3.3.1", - "@types/koa__router": "12.0.0", - "@types/lodash": "4.14.191", - "@types/module-alias": "2.0.1", - "@types/node": "22.10.10", - "@types/node-schedule": "2.1.0", - "@types/psl": "1.1.0", - "database": "workspace:*", - "eslint": "8.56.0", - "eslint-config-custom": "workspace:*", - "jest": "29.7.0", - "lint-staged": "13.2.0", - "mongodb-memory-server": "8.12.0", - "prettier": "3.2.5", - "prettier-config-custom": "workspace:*", - "ts-jest": "29.1.2", - "ts-node": "10.9.1", - "tsconfig": "workspace:*", - "tsx": "4.20.4", - "typescript": "5.2.2" - }, - "lint-staged": { - "*.ts": [ - "eslint --fix", - "bash -c 'tsc --noEmit'", - "prettier --write" - ], - "!*.ts": [ - "prettier --write" - ] - } -} diff --git a/examples/prisma/apps/api/src/app.ts b/examples/prisma/apps/api/src/app.ts deleted file mode 100644 index 3bb4e7896..000000000 --- a/examples/prisma/apps/api/src/app.ts +++ /dev/null @@ -1,78 +0,0 @@ -// Allows requiring modules relative to /src folder, -// For example, require('lib/mongo/idGenerator') -// All options can be found here: https://gist.github.com/branneman/8048520 -import moduleAlias from 'module-alias'; -moduleAlias.addPath(__dirname); -moduleAlias(); // read aliases from package json - -import 'dotenv/config'; - -import cors from '@koa/cors'; -import http from 'http'; -import { koaBody } from 'koa-body'; - -import helmet from 'koa-helmet'; -import koaLogger from 'koa-logger'; -import qs from 'koa-qs'; - -import { socketService } from 'services'; -import routes from 'routes'; - -import config from 'config'; - -import ioEmitter from 'io-emitter'; -import redisClient, { redisErrorHandler } from 'redis-client'; - -import logger from 'logger'; - -import { AppKoa } from 'types'; - -const initKoa = () => { - const app = new AppKoa(); - - app.use(cors({ credentials: true })); - app.use(helmet()); - qs(app); - app.use(koaBody({ - multipart: true, - onError: (error, ctx) => { - const errText: string = error.stack || error.toString(); - - logger.warn(`Unable to parse request body. ${errText}`); - ctx.throw(422, 'Unable to parse request JSON.'); - }, - })); - app.use(koaLogger({ - transporter: (message, args) => { - const [, method, endpoint, status, time, length] = args; - - logger.http(message.trim(), { method, endpoint, status, time, length }); - }, - })); - - routes(app); - - return app; -}; - -const app = initKoa(); - -(async () => { - const server = http.createServer(app.callback()); - - if (config.REDIS_URI) { - await redisClient - .connect() - .then(() => { - ioEmitter.initClient(); - socketService(server); - }) - .catch(redisErrorHandler); - } - - server.listen(config.PORT, () => { - logger.info(`API server is listening on ${config.PORT} in ${config.APP_ENV} environment`); - }); -})(); - -export default app; diff --git a/examples/prisma/apps/api/src/config/index.ts b/examples/prisma/apps/api/src/config/index.ts deleted file mode 100644 index 1aaf5237f..000000000 --- a/examples/prisma/apps/api/src/config/index.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { z } from 'zod'; - -import { configUtil } from 'utils'; - -/** - * Specify your environment variables schema here. - * This way you can ensure the app isn't built with invalid env vars. - */ -const schema = z.object({ - APP_ENV: z.enum(['development', 'staging', 'production']).default('development'), - IS_DEV: z.preprocess(() => process.env.APP_ENV === 'development', z.boolean()), - PORT: z.coerce.number().optional().default(3001), - API_URL: z.string(), - WEB_URL: z.string(), - JWT_SECRET: z.string(), - REDIS_URI: z.string().optional(), - REDIS_ERRORS_POLICY: z.enum(['throw', 'log']).default('log'), - RESEND_API_KEY: z.string().optional(), - ADMIN_KEY: z.string().optional(), - MIXPANEL_API_KEY: z.string().optional(), - CLOUD_STORAGE_ENDPOINT: z.string().optional(), - CLOUD_STORAGE_BUCKET: z.string().optional(), - CLOUD_STORAGE_ACCESS_KEY_ID: z.string().optional(), - CLOUD_STORAGE_SECRET_ACCESS_KEY: z.string().optional(), - GOOGLE_CLIENT_ID: z.string().optional(), - GOOGLE_CLIENT_SECRET: z.string().optional(), -}); - -type Config = z.infer; - -const config = configUtil.validateConfig(schema); - -export default config; diff --git a/examples/prisma/apps/api/src/config/retool/users-management.json b/examples/prisma/apps/api/src/config/retool/users-management.json deleted file mode 100644 index 4e098ebeb..000000000 --- a/examples/prisma/apps/api/src/config/retool/users-management.json +++ /dev/null @@ -1,167 +0,0 @@ -{ - "uuid": "d0f48596-326b-11ed-b65c-47fd8dd25b08", - "page": { - "id": 93448628, - "data": { - "appState": "[\"~#iR\",[\"^ \",\"n\",\"appTemplate\",\"v\",[\"^ \",\"isFetching\",false,\"plugins\",[\"~#iOM\",[\"shadowLogin\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"shadowLogin\",\"type\",\"datasource\",\"subtype\",\"RESTQuery\",\"namespace\",null,\"resourceName\",\"bb8ab17c-b112-4444-b054-3067ca2b62dc\",\"resourceDisplayName\",\"shadowLogin\",\"template\",[\"^3\",[\"queryRefreshTime\",\"\",\"paginationLimit\",\"\",\"body\",\"[{\\\"key\\\":\\\"id\\\",\\\"value\\\":\\\"\\\\\\\"6315f482ec588c3bcb5b07a8\\\\\\\"\\\"}]\",\"lastReceivedFromResourceAt\",null,\"queryDisabledMessage\",\"\",\"successMessage\",\"\",\"queryDisabled\",\"\",\"playgroundQuerySaveId\",\"latest\",\"resourceNameOverride\",\"\",\"runWhenModelUpdates\",false,\"paginationPaginationField\",\"\",\"headers\",\"\",\"showFailureToaster\",true,\"paginationEnabled\",false,\"query\",\"admin/account/shadow-login\",\"playgroundQueryUuid\",\"\",\"playgroundQueryId\",null,\"error\",null,\"privateParams\",[\"~#iL\",[]],\"runWhenPageLoadsDelay\",\"\",\"data\",null,\"importedQueryInputs\",[\"^3\",[]],\"isImported\",false,\"showSuccessToaster\",true,\"cacheKeyTtl\",\"\",\"cookies\",\"\",\"metadata\",null,\"changesetObject\",\"\",\"errorTransformer\",\"// The variable 'data' allows you to reference the request's data in the transformer. \\n// example: return data.find(element => element.isError)\\nreturn data.error\",\"confirmationMessage\",null,\"isFetching\",false,\"changeset\",\"\",\"rawData\",null,\"queryTriggerDelay\",\"0\",\"resourceTypeOverride\",\"\",\"watchedParams\",[\"^:\",[]],\"enableErrorTransformer\",false,\"showLatestVersionUpdatedWarning\",false,\"paginationDataField\",\"\",\"timestamp\",0,\"importedQueryDefaults\",[\"^3\",[]],\"enableTransformer\",false,\"showUpdateSetValueDynamicallyToggle\",true,\"runWhenPageLoads\",false,\"transformer\",\"// type your code here\\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\\nreturn data\",\"events\",[\"^:\",[]],\"queryTimeout\",\"10000\",\"requireConfirmation\",false,\"type\",\"POST\",\"queryFailureConditions\",\"\",\"changesetIsObject\",false,\"enableCaching\",false,\"allowedGroups\",[\"^:\",[]],\"bodyType\",\"json\",\"queryThrottleTime\",\"750\",\"updateSetValueDynamically\",false,\"notificationDuration\",\"\"]],\"style\",null,\"position2\",null,\"mobilePosition2\",null,\"mobileAppPosition\",null,\"tabIndex\",null,\"container\",\"\",\"createdAt\",\"~m1662967609500\",\"updatedAt\",\"~m1662977816251\",\"folder\",\"apiUser\",\"screen\",null]]],\"list\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"list\",\"^4\",\"datasource\",\"^5\",\"NoSqlQuery\",\"^6\",null,\"^7\",\"a968b944-81f3-45be-9acc-e92dd5356d4a\",\"^8\",null,\"^9\",[\"^3\",[\"queryRefreshTime\",\"\",\"method\",\"find\",\"lastReceivedFromResourceAt\",null,\"aggregation\",\"\",\"queryDisabledMessage\",\"\",\"successMessage\",\"\",\"queryDisabled\",\"\",\"playgroundQuerySaveId\",\"latest\",\"resourceNameOverride\",\"\",\"runWhenModelUpdates\",true,\"showFailureToaster\",true,\"query\",\"{{searchQuery.value}}\",\"playgroundQueryUuid\",\"\",\"playgroundQueryId\",null,\"error\",null,\"update\",\"\",\"privateParams\",[\"^:\",[]],\"runWhenPageLoadsDelay\",\"\",\"useRawCollectionName\",false,\"data\",null,\"operations\",\"\",\"importedQueryInputs\",[\"^3\",[]],\"isImported\",false,\"showSuccessToaster\",true,\"cacheKeyTtl\",\"\",\"projection\",\"{passwordHash: 0 }\",\"metadata\",null,\"changesetObject\",\"\",\"errorTransformer\",\"// The variable 'data' allows you to reference the request's data in the transformer. \\n// example: return data.find(element => element.isError)\\nreturn data.error\",\"confirmationMessage\",null,\"isFetching\",false,\"changeset\",\"\",\"rawData\",null,\"queryTriggerDelay\",\"0\",\"resourceTypeOverride\",null,\"watchedParams\",[\"^:\",[]],\"enableErrorTransformer\",false,\"sortBy\",\"\",\"showLatestVersionUpdatedWarning\",false,\"timestamp\",0,\"importedQueryDefaults\",[\"^3\",[]],\"enableTransformer\",false,\"showUpdateSetValueDynamicallyToggle\",true,\"runWhenPageLoads\",false,\"transformer\",\"// type your code here\\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\\nreturn data\",\"events\",[\"^:\",[]],\"insert\",\"\",\"queryTimeout\",\"10000\",\"field\",\"\",\"requireConfirmation\",false,\"queryFailureConditions\",\"\",\"database\",\"\",\"changesetIsObject\",false,\"limit\",\"\",\"enableCaching\",false,\"allowedGroups\",[\"^:\",[]],\"options\",\"\",\"collection\",\"users\",\"skip\",\"\",\"queryThrottleTime\",\"750\",\"updateSetValueDynamically\",false,\"notificationDuration\",\"\"]],\"^;\",null,\"^<\",null,\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653827447242\",\"^B\",\"~m1653842042013\",\"^C\",\"dbUser\",\"^D\",null]]],\"searchQuery\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"searchQuery\",\"^4\",\"function\",\"^5\",\"Function\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"funcBody\",\"\\nconst escapeRegExp = (string) => {\\n return string.replace(/[.*+?^${}()|[\\\\]\\\\\\\\]/g, '\\\\\\\\$&'); // $& means the whole matched string\\n}\\n\\nconst regexQuery = {\\n $regex: `.*${escapeRegExp({{search_bar.value}})}.*`,\\n $options:'i'\\n}\\n\\nreturn {\\n $or: [\\n { _id: regexQuery },\\n { firstName: regexQuery },\\n { lastName: regexQuery },\\n { email: regexQuery },\\n ],\\n}\\n\\n\",\"value\",\"\"]],\"^;\",null,\"^<\",null,\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653831767909\",\"^B\",\"~m1653841921344\",\"^C\",\"dbUser\",\"^D\",null]]],\"update\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"update\",\"^4\",\"datasource\",\"^5\",\"RESTQuery\",\"^6\",null,\"^7\",\"2cb1c339-d07c-4308-92cd-78eeac59972e\",\"^8\",null,\"^9\",[\"^3\",[\"queryRefreshTime\",\"\",\"paginationLimit\",\"\",\"body\",\"[{\\\"key\\\":\\\"firstName\\\",\\\"value\\\":\\\"{{firstNameInput.value}}\\\"},{\\\"key\\\":\\\"lastName\\\",\\\"value\\\":\\\"{{lastNameInput.value}}\\\"},{\\\"key\\\":\\\"email\\\",\\\"value\\\":\\\"{{emailInput.value}}\\\"}]\",\"lastReceivedFromResourceAt\",null,\"queryDisabledMessage\",\"\",\"successMessage\",\"\",\"queryDisabled\",\"\",\"playgroundQuerySaveId\",\"latest\",\"resourceNameOverride\",\"\",\"runWhenModelUpdates\",false,\"paginationPaginationField\",\"\",\"headers\",\"\",\"showFailureToaster\",true,\"paginationEnabled\",false,\"query\",\"admin/users/{{usersTable.selectedRow.data._id}}\",\"playgroundQueryUuid\",\"\",\"playgroundQueryId\",null,\"error\",null,\"privateParams\",[\"^:\",[]],\"runWhenPageLoadsDelay\",\"\",\"data\",null,\"importedQueryInputs\",[\"^3\",[]],\"isImported\",false,\"showSuccessToaster\",true,\"cacheKeyTtl\",\"\",\"cookies\",\"\",\"metadata\",null,\"changesetObject\",\"\",\"errorTransformer\",\"// The variable 'data' allows you to reference the request's data in the transformer. \\n// example: return data.find(element => element.isError)\\nreturn data.error\",\"confirmationMessage\",null,\"isFetching\",false,\"changeset\",\"\",\"rawData\",null,\"queryTriggerDelay\",\"0\",\"resourceTypeOverride\",null,\"watchedParams\",[\"^:\",[]],\"enableErrorTransformer\",false,\"showLatestVersionUpdatedWarning\",false,\"paginationDataField\",\"\",\"timestamp\",0,\"importedQueryDefaults\",[\"^3\",[]],\"enableTransformer\",false,\"showUpdateSetValueDynamicallyToggle\",true,\"runWhenPageLoads\",false,\"transformer\",\"// type your code here\\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\\nreturn data\",\"events\",[\"^:\",[[\"^3\",[\"event\",\"success\",\"type\",\"script\",\"method\",\"run\",\"pluginId\",\"\",\"targetId\",null,\"params\",[\"^3\",[\"src\",\"userUpdateModal.close();\\nlist.trigger();\"]],\"waitType\",\"debounce\",\"waitMs\",\"0\"]]]],\"queryTimeout\",\"10000\",\"requireConfirmation\",false,\"type\",\"PUT\",\"queryFailureConditions\",\"\",\"changesetIsObject\",false,\"enableCaching\",false,\"allowedGroups\",[\"^:\",[]],\"bodyType\",\"json\",\"queryThrottleTime\",\"750\",\"updateSetValueDynamically\",false,\"notificationDuration\",\"\"]],\"^;\",null,\"^<\",null,\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653836736485\",\"^B\",\"~m1654498069760\",\"^C\",\"apiUser\",\"^D\",null]]],\"remove\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"remove\",\"^4\",\"datasource\",\"^5\",\"RESTQuery\",\"^6\",null,\"^7\",\"2cb1c339-d07c-4308-92cd-78eeac59972e\",\"^8\",null,\"^9\",[\"^3\",[\"queryRefreshTime\",\"\",\"paginationLimit\",\"\",\"body\",\"\",\"lastReceivedFromResourceAt\",null,\"queryDisabledMessage\",\"\",\"successMessage\",\"\",\"queryDisabled\",\"\",\"playgroundQuerySaveId\",\"latest\",\"resourceNameOverride\",\"\",\"runWhenModelUpdates\",false,\"paginationPaginationField\",\"\",\"headers\",\"\",\"showFailureToaster\",true,\"paginationEnabled\",false,\"query\",\"admin/users/{{usersTable.selectedRow.data._id}}\",\"playgroundQueryUuid\",\"\",\"playgroundQueryId\",null,\"error\",null,\"privateParams\",[\"^:\",[]],\"runWhenPageLoadsDelay\",\"\",\"data\",null,\"importedQueryInputs\",[\"^3\",[]],\"isImported\",false,\"showSuccessToaster\",true,\"cacheKeyTtl\",\"\",\"cookies\",\"\",\"metadata\",null,\"changesetObject\",\"\",\"errorTransformer\",\"// The variable 'data' allows you to reference the request's data in the transformer. \\n// example: return data.find(element => element.isError)\\nreturn data.error\",\"confirmationMessage\",null,\"isFetching\",false,\"changeset\",\"\",\"rawData\",null,\"queryTriggerDelay\",\"0\",\"resourceTypeOverride\",null,\"watchedParams\",[\"^:\",[]],\"enableErrorTransformer\",false,\"showLatestVersionUpdatedWarning\",false,\"paginationDataField\",\"\",\"timestamp\",0,\"importedQueryDefaults\",[\"^3\",[]],\"enableTransformer\",false,\"showUpdateSetValueDynamicallyToggle\",true,\"runWhenPageLoads\",false,\"transformer\",\"// type your code here\\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\\nreturn data\",\"events\",[\"^:\",[[\"^3\",[\"event\",\"success\",\"type\",\"script\",\"method\",\"run\",\"pluginId\",\"\",\"targetId\",null,\"params\",[\"^3\",[\"src\",\"list.trigger()\"]],\"waitType\",\"debounce\",\"waitMs\",\"0\"]]]],\"queryTimeout\",\"10000\",\"requireConfirmation\",false,\"type\",\"DELETE\",\"queryFailureConditions\",\"\",\"changesetIsObject\",false,\"enableCaching\",false,\"allowedGroups\",[\"^:\",[]],\"bodyType\",\"json\",\"queryThrottleTime\",\"750\",\"updateSetValueDynamically\",false,\"notificationDuration\",\"\"]],\"^;\",null,\"^<\",null,\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653840309251\",\"^B\",\"~m1654498060079\",\"^C\",\"apiUser\",\"^D\",null]]],\"verifyEmail\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"verifyEmail\",\"^4\",\"datasource\",\"^5\",\"RESTQuery\",\"^6\",null,\"^7\",\"2cb1c339-d07c-4308-92cd-78eeac59972e\",\"^8\",null,\"^9\",[\"^3\",[\"queryRefreshTime\",\"\",\"paginationLimit\",\"\",\"body\",\"\",\"lastReceivedFromResourceAt\",null,\"queryDisabledMessage\",\"\",\"successMessage\",\"\",\"queryDisabled\",\"\",\"playgroundQuerySaveId\",\"latest\",\"resourceNameOverride\",\"\",\"runWhenModelUpdates\",false,\"paginationPaginationField\",\"\",\"headers\",\"\",\"showFailureToaster\",true,\"paginationEnabled\",false,\"query\",\"account/verify-email/?token={{usersTable.selectedRow.data.signupToken}}\",\"playgroundQueryUuid\",\"\",\"playgroundQueryId\",null,\"error\",null,\"privateParams\",[\"^:\",[]],\"runWhenPageLoadsDelay\",\"\",\"data\",null,\"importedQueryInputs\",[\"^3\",[]],\"isImported\",false,\"showSuccessToaster\",true,\"cacheKeyTtl\",\"\",\"cookies\",\"\",\"metadata\",null,\"changesetObject\",\"\",\"errorTransformer\",\"// The variable 'data' allows you to reference the request's data in the transformer. \\n// example: return data.find(element => element.isError)\\nreturn data.error\",\"confirmationMessage\",null,\"isFetching\",false,\"changeset\",\"\",\"rawData\",null,\"queryTriggerDelay\",\"0\",\"resourceTypeOverride\",null,\"watchedParams\",[\"^:\",[]],\"enableErrorTransformer\",false,\"showLatestVersionUpdatedWarning\",false,\"paginationDataField\",\"\",\"timestamp\",0,\"importedQueryDefaults\",[\"^3\",[]],\"enableTransformer\",false,\"showUpdateSetValueDynamicallyToggle\",true,\"runWhenPageLoads\",false,\"transformer\",\"// type your code here\\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\\nreturn data\",\"events\",[\"^:\",[[\"^3\",[\"event\",\"success\",\"type\",\"script\",\"method\",\"run\",\"pluginId\",\"\",\"targetId\",null,\"params\",[\"^3\",[\"src\",\"list.trigger()\"]],\"waitType\",\"debounce\",\"waitMs\",\"0\"]],[\"^3\",[\"event\",\"failure\",\"type\",\"script\",\"method\",\"run\",\"pluginId\",\"\",\"targetId\",null,\"params\",[\"^3\",[\"src\",\"list.trigger()\"]],\"waitType\",\"debounce\",\"waitMs\",\"0\"]]]],\"queryTimeout\",\"10000\",\"requireConfirmation\",false,\"type\",\"GET\",\"queryFailureConditions\",\"\",\"changesetIsObject\",false,\"enableCaching\",false,\"allowedGroups\",[\"^:\",[]],\"bodyType\",\"json\",\"queryThrottleTime\",\"750\",\"updateSetValueDynamically\",false,\"notificationDuration\",\"\"]],\"^;\",null,\"^<\",null,\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653838337897\",\"^B\",\"~m1653842008069\",\"^C\",\"apiUser\",\"^D\",null]]],\"welcomeText\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"welcomeText\",\"^4\",\"widget\",\"^5\",\"TextWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"heightType\",\"auto\",\"horizontalAlign\",\"left\",\"hidden\",false,\"imageWidth\",\"fit\",\"showInEditor\",false,\"verticalAlign\",\"bottom\",\"_defaultValue\",\"\",\"tooltipText\",\"\",\"value\",\"#### Users Management\",\"disableMarkdown\",false,\"overflowType\",\"scroll\",\"maintainSpaceWhenHidden\",false]],\"^;\",null,\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"\",\"rowGroup\",\"body\",\"subcontainer\",\"header\",\"row\",0,\"col\",0,\"height\",0.6,\"width\",4,\"tabNum\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653827091457\",\"^B\",\"~m1653834455274\",\"^C\",\"\",\"^D\",null]]],\"usersTable\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"usersTable\",\"^4\",\"widget\",\"^5\",\"TableWidget\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"showCustomButton\",true,\"sortMappedValue\",[\"^3\",[]],\"_filteredSortedRenderedDataWithTypes\",null,\"heightType\",\"fixed\",\"normalizedData\",null,\"rowHeight\",\"standard\",\"saveChangesDisabled\",\"\",\"columnTypeProperties\",[\"^3\",[]],\"columnWidths\",[\"^:\",[]],\"showSummaryFooter\",false,\"disableRowSelectInteraction\",false,\"columnWidthsMobile\",[\"^:\",[]],\"hasNextAfterCursor\",\"\",\"columnTypeSpecificExtras\",[\"^3\",[]],\"onRowAdded\",\"\",\"columnHeaderNames\",[\"^3\",[]],\"alwaysShowPaginator\",false,\"columnColors\",[\"^3\",[\"lastName\",\"\",\"signupToken\",\"\",\"createdOn\",\"\",\"passwordHash\",\"\",\"deletedOn\",\"\",\"lastRequest\",\"\",\"isEmailVerified\",\"\",\"_id\",\"\",\"updatedOn\",\"\",\"firstName\",\"\",\"email\",\"\"]],\"columnFrozenAlignments\",[\"^3\",[]],\"allowMultiRowSelect\",false,\"columnFormats\",[\"^3\",[]],\"columnRestrictedEditing\",[\"^3\",[]],\"showFilterButton\",true,\"_columnVisibility\",[\"^3\",[\"lastRequest\",true,\"signupToken\",false]],\"_columnSummaryTypes\",[\"^3\",[]],\"_columnsWithLegacyBackgroundColor\",[\"~#iOS\",[]],\"showAddRowButton\",false,\"_unfilteredSelectedIndex\",null,\"nextBeforeCursor\",\"\",\"columnVisibility\",[\"^3\",[]],\"selectedPageIndex\",\"0\",\"applyDynamicSettingsToColumnOrder\",true,\"rowColor\",[],\"actionButtonColumnName\",\"Actions\",\"resetAfterSave\",true,\"filterStackType\",\"and\",\"downloadRawData\",false,\"showFetchingIndicator\",true,\"serverPaginated\",false,\"data\",\"{{list.data}}\",\"displayedData\",null,\"actionButtons\",[\"^:\",[]],\"actionButtonSelectsRow\",true,\"selectRowByDefault\",true,\"defaultSortByColumn\",\"\",\"paginationOffset\",0,\"columnAlignment\",[\"^3\",[]],\"columnSummaries\",[\"^ \"],\"showBoxShadow\",true,\"sortedDesc\",false,\"customButtonName\",\"\",\"columnMappersRenderAsHTML\",[\"^3\",[]],\"showRefreshButton\",true,\"pageSize\",\"20\",\"useDynamicColumnSettings\",false,\"actionButtonPosition\",\"left\",\"dynamicRowHeights\",false,\"bulkUpdateAction\",\"\",\"afterCursor\",\"\",\"onCustomButtonPressQueryName\",\"\",\"changeSet\",[\"^ \"],\"sortedColumn\",\"\",\"_columnSummaryValues\",[\"^3\",[]],\"checkboxRowSelect\",true,\"_compatibilityMode\",false,\"showColumnBorders\",false,\"clearSelectionLabel\",\"Clear selection\",\"_renderedDataWithTypes\",null,\"columnAllowOverflow\",[\"^3\",[]],\"beforeCursor\",\"\",\"serverPaginationType\",\"limitOffsetBased\",\"onRowSelect\",\"\",\"showDownloadButton\",true,\"selectedIndex\",null,\"defaultSortDescending\",false,\"_sortedDisplayedDataIndices\",null,\"dynamicColumnSettings\",null,\"totalRowCount\",\"\",\"recordUpdates\",[],\"newRow\",null,\"emptyMessage\",\"No rows found\",\"columnEditable\",[\"^3\",[\"_id\",false,\"firstName\",false,\"lastRequest\",false,\"updatedOn\",false]],\"_viewerColumnSummaryTypes\",[\"^ \"],\"filters\",[],\"displayedDataIndices\",null,\"disableSorting\",[\"^3\",[]],\"columnMappers\",[\"^3\",[]],\"showClearSelection\",false,\"doubleClickToEdit\",true,\"overflowType\",\"pagination\",\"_reverseSortedDisplayedDataIndices\",null,\"showTableBorder\",true,\"selectedCell\",[\"^ \",\"index\",null,\"data\",null,\"columnName\",null],\"columns\",[\"^:\",[]],\"defaultSelectedRow\",\"first\",\"freezeActionButtonColumns\",false,\"sort\",null,\"_columns\",[\"^:\",[]],\"sortByRawValue\",[\"^3\",[]],\"calculatedColumns\",[\"^:\",[]],\"selectedRow\",[\"^ \",\"^K\",null,\"^L\",null],\"showPaginationOnTop\",false,\"_reverseDisplayedDataIndices\",null,\"nextAfterCursor\",\"\",\"useCompactMode\",false]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"\",\"^E\",\"body\",\"^F\",\"\",\"row\",2.3999999999999995,\"col\",0,\"^G\",10.399999999999999,\"^H\",8,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653828995649\",\"^B\",\"~m1654498035519\",\"^C\",\"\",\"^D\",null]]],\"search_bar\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"search_bar\",\"^4\",\"widget\",\"^5\",\"TextInputWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"spellCheck\",false,\"readOnly\",false,\"iconAfter\",\"\",\"showCharacterCount\",false,\"autoComplete\",false,\"maxLength\",null,\"hidden\",false,\"customValidation\",\"\",\"patternType\",\"\",\"hideValidationMessage\",false,\"textBefore\",\"\",\"validationMessage\",\"\",\"textAfter\",\"\",\"showInEditor\",false,\"_defaultValue\",\"\",\"showClear\",false,\"pattern\",\"\",\"tooltipText\",\"\",\"labelAlign\",\"left\",\"formDataKey\",\"{{ self.id }}\",\"value\",\"\",\"labelCaption\",\"\",\"labelWidth\",\"33\",\"autoFill\",\"\",\"placeholder\",\"Search by name, email or _id\",\"label\",\"\",\"_validate\",false,\"labelWidthUnit\",\"%\",\"invalid\",false,\"iconBefore\",\"\",\"minLength\",null,\"inputTooltip\",\"\",\"events\",[\"^3\",[]],\"autoCapitalize\",\"none\",\"loading\",false,\"disabled\",false,\"labelPosition\",\"left\",\"labelWrap\",false,\"maintainSpaceWhenHidden\",false,\"required\",false]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"\",\"^E\",\"body\",\"^F\",\"\",\"row\",0.7999999999999999,\"col\",0,\"^G\",1,\"^H\",4,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653830224018\",\"^B\",\"~m1653830294498\",\"^C\",\"\",\"^D\",null]]],\"container1\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"container1\",\"^4\",\"widget\",\"^5\",\"ContainerWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"_disabledByIndex\",[\"^:\",[\"\"]],\"heightType\",\"auto\",\"currentViewKey\",null,\"iconByIndex\",[],\"clickable\",false,\"_iconByIndex\",[\"^:\",[\"\"]],\"hidden\",\"\",\"showHeader\",true,\"hoistFetching\",true,\"views\",[],\"showInEditor\",false,\"tooltipText\",\"\",\"hiddenByIndex\",[],\"_hiddenByIndex\",[\"^:\",[\"\"]],\"currentViewIndex\",null,\"_hasMigratedNestedItems\",true,\"transition\",\"none\",\"itemMode\",\"static\",\"_tooltipByIndex\",[\"^:\",[\"\"]],\"tooltipByIndex\",[],\"showFooter\",false,\"_viewKeys\",[\"^:\",[\"View 1\"]],\"events\",[\"^3\",[]],\"_ids\",[\"^:\",[\"6af98\"]],\"viewKeys\",[],\"iconPositionByIndex\",[],\"_iconPositionByIndex\",[\"^:\",[\"\"]],\"loading\",false,\"overflowType\",\"scroll\",\"disabled\",false,\"_labels\",[\"^:\",[\"\"]],\"disabledByIndex\",[],\"maintainSpaceWhenHidden\",false,\"showBody\",true,\"labels\",[]]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"\",\"^E\",\"body\",\"^F\",\"\",\"row\",2.400000000000001,\"col\",8,\"^G\",10.4,\"^H\",4,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653833745012\",\"^B\",\"~m1653833745012\",\"^C\",\"\",\"^D\",null]]],\"containerTitle1\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"containerTitle1\",\"^4\",\"widget\",\"^5\",\"TextWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"heightType\",\"auto\",\"horizontalAlign\",\"left\",\"hidden\",false,\"imageWidth\",\"fit\",\"showInEditor\",false,\"verticalAlign\",\"center\",\"_defaultValue\",\"\",\"tooltipText\",\"\",\"value\",\"#### {{usersTable.selectedRow.data.firstName}} {{usersTable.selectedRow.data.lastName}} \",\"disableMarkdown\",false,\"overflowType\",\"scroll\",\"maintainSpaceWhenHidden\",false]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"container1\",\"^E\",\"header\",\"^F\",\"\",\"row\",0.20000000000000012,\"col\",0,\"^G\",0.8,\"^H\",8,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653833745583\",\"^B\",\"~m1653838314223\",\"^C\",\"\",\"^D\",null]]],\"keyValue1\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"keyValue1\",\"^4\",\"widget\",\"^5\",\"KeyValueMapWidget\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"rowHeaderNames\",[\"^3\",[]],\"rowFormats\",[\"^3\",[]],\"valueTitle\",\"Value\",\"data\",\"{{usersTable.selectedRow.data}}\",\"prevRowMappers\",[\"^3\",[]],\"rowMappersRenderAsHTML\",[\"^3\",[]],\"rowVisibility\",[\"^3\",[\"a\",true,\"lastName\",true,\"signupToken\",true,\"b\",true,\"c\",true,\"createdOn\",true,\"deletedOn\",true,\"lastRequest\",true,\"isEmailVerified\",true,\"_id\",true,\"updatedOn\",true,\"firstName\",true,\"email\",true]],\"prevRowFormats\",[\"^3\",[]],\"rowMappers\",[\"^3\",[]],\"rows\",[\"^:\",[\"a\",\"b\",\"c\",\"_id\",\"firstName\",\"lastName\",\"email\",\"isEmailVerified\",\"createdOn\",\"updatedOn\",\"lastRequest\",\"signupToken\",\"deletedOn\"]],\"keyTitle\",\"Key\"]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"container1\",\"^E\",\"body\",\"^F\",\"6af98\",\"row\",0,\"col\",0,\"^G\",8.4,\"^H\",12,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653833745869\",\"^B\",\"~m1654498035544\",\"^C\",\"\",\"^D\",null]]],\"userActions\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"userActions\",\"^4\",\"widget\",\"^5\",\"DropdownButtonWidget\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"_disabledByIndex\",[\"^:\",[\"\",\"{{usersTable.selectedRow.data.isEmailVerified}}\",\"\",false]],\"horizontalAlign\",\"stretch\",\"_values\",[\"^:\",[\"\",\"\",\"\",\"Action 4\"]],\"iconByIndex\",[],\"iconPosition\",\"left\",\"clickable\",false,\"_iconByIndex\",[\"^:\",[\"\",\"\",\"\",\"\"]],\"hidden\",false,\"data\",[],\"text\",\"Menu\",\"_fallbackTextByIndex\",[\"^:\",[\"\",\"\",\"\",\"\"]],\"showInEditor\",false,\"tooltipText\",\"\",\"hiddenByIndex\",[],\"_hiddenByIndex\",[\"^:\",[\"\",\"\",\"\",false]],\"_captionByIndex\",[\"^:\",[\"\",\"\",\"\",\"\"]],\"styleVariant\",\"outline\",\"_hasMigratedNestedItems\",true,\"captionByIndex\",[],\"itemMode\",\"static\",\"_tooltipByIndex\",[\"^:\",[\"\",\"\",\"\",\"\"]],\"_colorByIndex\",[\"^:\",[\"\",\"\",\"\",\"\"]],\"tooltipByIndex\",[],\"icon\",\"\",\"events\",[\"^:\",[[\"^3\",[\"event\",\"click\",\"type\",\"datasource\",\"method\",\"trigger\",\"pluginId\",\"shadowLogin\",\"targetId\",\"1faf9\",\"params\",[\"^3\",[]],\"waitType\",\"debounce\",\"waitMs\",\"0\"]],[\"^3\",[\"event\",\"click\",\"type\",\"datasource\",\"method\",\"trigger\",\"pluginId\",\"remove\",\"targetId\",\"d452d\",\"params\",[\"^3\",[]],\"waitType\",\"debounce\",\"waitMs\",\"0\"]],[\"^3\",[\"event\",\"click\",\"type\",\"datasource\",\"method\",\"trigger\",\"pluginId\",\"verifyEmail\",\"targetId\",\"ccb37\",\"params\",[\"^3\",[]],\"waitType\",\"debounce\",\"waitMs\",\"0\"]],[\"^3\",[\"event\",\"click\",\"type\",\"widget\",\"method\",\"open\",\"pluginId\",\"userUpdateModal\",\"targetId\",\"59b6e\",\"params\",[\"^3\",[]],\"waitType\",\"debounce\",\"waitMs\",\"0\"]]]],\"_ids\",[\"^:\",[\"59b6e\",\"ccb37\",\"d452d\",\"1faf9\"]],\"overlayMaxHeight\",375,\"disabled\",false,\"_labels\",[\"^:\",[\"Update\",\"Verify Email\",\"Remove\",\"Shadow login\"]],\"disabledByIndex\",[],\"maintainSpaceWhenHidden\",false,\"_imageByIndex\",[\"^:\",[\"\",\"\",\"\",\"\"]],\"labels\",[]]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"container1\",\"^E\",\"header\",\"^F\",\"\",\"row\",0.2,\"col\",9,\"^G\",0.8,\"^H\",3,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653833840942\",\"^B\",\"~m1662970504941\",\"^C\",\"\",\"^D\",null]]],\"userUpdateModal\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"userUpdateModal\",\"^4\",\"widget\",\"^5\",\"ModalWidget\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"opened\",false,\"modalOverflowType\",\"scroll\",\"hidden\",\"true\",\"onModalClose\",\"\",\"modalHeightType\",\"fixed\",\"tooltipText\",\"\",\"modalHeight\",\"\",\"onModalOpen\",\"\",\"modalWidth\",\"\",\"closeOnOutsideClick\",true,\"loading\",\"\",\"disabled\",\"\",\"buttonText\",\"Open Modal\"]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"\",\"^E\",\"body\",\"^F\",\"\",\"row\",13.399999999999999,\"col\",8,\"^G\",1,\"^H\",4,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653834649657\",\"^B\",\"~m1653834683865\",\"^C\",\"\",\"^D\",null]]],\"updateUserForm\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"updateUserForm\",\"^4\",\"widget\",\"^5\",\"FormWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"disableSubmit\",false,\"heightType\",\"auto\",\"resetAfterSubmit\",true,\"submitting\",false,\"hidden\",false,\"data\",[\"^ \"],\"showHeader\",true,\"hoistFetching\",true,\"initialData\",null,\"showInEditor\",false,\"tooltipText\",\"\",\"style\",[\"^3\",[\"border\",\"\"]],\"invalid\",false,\"showFooter\",true,\"events\",[\"^:\",[[\"^3\",[\"event\",\"submit\",\"type\",\"datasource\",\"method\",\"trigger\",\"pluginId\",\"update\",\"targetId\",null,\"params\",[\"^3\",[]],\"waitType\",\"debounce\",\"waitMs\",\"0\"]]]],\"loading\",false,\"overflowType\",\"scroll\",\"disabled\",false,\"requireValidation\",true,\"maintainSpaceWhenHidden\",false,\"showBody\",true]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"userUpdateModal\",\"^E\",\"body\",\"^F\",\"\",\"row\",0,\"col\",0,\"^G\",0.2,\"^H\",12,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653834910846\",\"^B\",\"~m1653841961694\",\"^C\",\"\",\"^D\",null]]],\"formTitle1\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"formTitle1\",\"^4\",\"widget\",\"^5\",\"TextWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"heightType\",\"auto\",\"horizontalAlign\",\"left\",\"hidden\",false,\"imageWidth\",\"fit\",\"showInEditor\",false,\"verticalAlign\",\"center\",\"_defaultValue\",\"\",\"tooltipText\",\"\",\"value\",\"#### Update {{ usersTable.selectedRow.data.firstName}} {{usersTable.selectedRow.data.lastName}}\",\"disableMarkdown\",false,\"overflowType\",\"scroll\",\"maintainSpaceWhenHidden\",false]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"updateUserForm\",\"^E\",\"header\",\"^F\",\"\",\"row\",0,\"col\",0,\"^G\",0.6,\"^H\",12,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653834911218\",\"^B\",\"~m1653838314310\",\"^C\",\"\",\"^D\",null]]],\"formButton1\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"formButton1\",\"^4\",\"widget\",\"^5\",\"ButtonWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"horizontalAlign\",\"stretch\",\"clickable\",false,\"iconAfter\",\"\",\"submitTargetId\",\"updateUserForm\",\"hidden\",false,\"text\",\"Submit\",\"showInEditor\",false,\"tooltipText\",\"\",\"submit\",true,\"iconBefore\",\"\",\"events\",[\"^3\",[]],\"loading\",false,\"loaderPosition\",\"auto\",\"disabled\",false,\"maintainSpaceWhenHidden\",false]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"updateUserForm\",\"^E\",\"footer\",\"^F\",\"\",\"row\",0.40000000000000036,\"col\",8,\"^G\",1,\"^H\",4,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653834911337\",\"^B\",\"~m1653835572234\",\"^C\",\"\",\"^D\",null]]],\"firstNameInput\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"firstNameInput\",\"^4\",\"widget\",\"^5\",\"TextInputWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"spellCheck\",false,\"readOnly\",false,\"iconAfter\",\"\",\"showCharacterCount\",false,\"autoComplete\",false,\"maxLength\",null,\"hidden\",false,\"customValidation\",\"\",\"patternType\",\"\",\"hideValidationMessage\",false,\"textBefore\",\"\",\"validationMessage\",\"\",\"textAfter\",\"\",\"showInEditor\",false,\"_defaultValue\",\"\",\"showClear\",false,\"pattern\",\"\",\"tooltipText\",\"\",\"labelAlign\",\"left\",\"formDataKey\",\"{{ self.id }}\",\"value\",\"{{usersTable.selectedRow.data.firstName}}\",\"labelCaption\",\"\",\"labelWidth\",\"33\",\"autoFill\",\"\",\"placeholder\",\"Enter value\",\"label\",\"First Name\",\"_validate\",false,\"labelWidthUnit\",\"%\",\"invalid\",false,\"iconBefore\",\"\",\"minLength\",null,\"inputTooltip\",\"\",\"events\",[\"^3\",[]],\"autoCapitalize\",\"none\",\"loading\",false,\"disabled\",false,\"labelPosition\",\"left\",\"labelWrap\",false,\"maintainSpaceWhenHidden\",false,\"required\",false]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"updateUserForm\",\"^E\",\"body\",\"^F\",\"\",\"row\",0,\"col\",0,\"^G\",1,\"^H\",10,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653835222740\",\"^B\",\"~m1653838314340\",\"^C\",\"\",\"^D\",null]]],\"lastNameInput\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"lastNameInput\",\"^4\",\"widget\",\"^5\",\"TextInputWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"spellCheck\",false,\"readOnly\",false,\"iconAfter\",\"\",\"showCharacterCount\",false,\"autoComplete\",false,\"maxLength\",null,\"hidden\",false,\"customValidation\",\"\",\"patternType\",\"\",\"hideValidationMessage\",false,\"textBefore\",\"\",\"validationMessage\",\"\",\"textAfter\",\"\",\"showInEditor\",false,\"_defaultValue\",\"\",\"showClear\",false,\"pattern\",\"\",\"tooltipText\",\"\",\"labelAlign\",\"left\",\"formDataKey\",\"{{ self.id }}\",\"value\",\" {{usersTable.selectedRow.data.lastName}}\",\"labelCaption\",\"\",\"labelWidth\",\"33\",\"autoFill\",\"\",\"placeholder\",\"Enter value\",\"label\",\"Last Name\",\"_validate\",false,\"labelWidthUnit\",\"%\",\"invalid\",false,\"iconBefore\",\"\",\"minLength\",null,\"inputTooltip\",\"\",\"events\",[\"^3\",[]],\"autoCapitalize\",\"none\",\"loading\",false,\"disabled\",false,\"labelPosition\",\"left\",\"labelWrap\",false,\"maintainSpaceWhenHidden\",false,\"required\",false]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"updateUserForm\",\"^E\",\"body\",\"^F\",\"\",\"row\",1,\"col\",0,\"^G\",1,\"^H\",10,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653835244433\",\"^B\",\"~m1653838314371\",\"^C\",\"\",\"^D\",null]]],\"emailInput\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"emailInput\",\"^4\",\"widget\",\"^5\",\"TextInputWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"spellCheck\",false,\"readOnly\",false,\"iconAfter\",\"\",\"showCharacterCount\",false,\"autoComplete\",false,\"maxLength\",null,\"hidden\",false,\"customValidation\",\"\",\"patternType\",\"email\",\"hideValidationMessage\",false,\"textBefore\",\"\",\"validationMessage\",\"\",\"textAfter\",\"\",\"showInEditor\",false,\"_defaultValue\",\"\",\"showClear\",false,\"pattern\",\"\",\"tooltipText\",\"\",\"labelAlign\",\"left\",\"formDataKey\",\"{{ self.id }}\",\"value\",\"{{usersTable.selectedRow.data.email}}\",\"labelCaption\",\"\",\"labelWidth\",\"33\",\"autoFill\",\"\",\"placeholder\",\"you@example.com\",\"label\",\"Email\",\"_validate\",false,\"labelWidthUnit\",\"%\",\"invalid\",false,\"iconBefore\",\"bold/mail-send-envelope\",\"minLength\",null,\"inputTooltip\",\"\",\"events\",[\"^3\",[]],\"autoCapitalize\",\"none\",\"loading\",false,\"disabled\",false,\"labelPosition\",\"left\",\"labelWrap\",false,\"maintainSpaceWhenHidden\",false,\"required\",false]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"updateUserForm\",\"^E\",\"body\",\"^F\",\"\",\"row\",2,\"col\",0,\"^G\",1,\"^H\",10,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653836295252\",\"^B\",\"~m1653838314403\",\"^C\",\"\",\"^D\",null]]],\"$main\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"$main\",\"^4\",\"frame\",\"^5\",\"Frame\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"type\",\"main\",\"sticky\",false]],\"^;\",[\"^3\",[]],\"^<\",null,\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1662967417421\",\"^B\",\"~m1662967417421\",\"^C\",\"\",\"^D\",null]]],\"$header\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"$header\",\"^4\",\"frame\",\"^5\",\"Frame\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"type\",\"header\",\"sticky\",true]],\"^;\",[\"^3\",[]],\"^<\",null,\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1662967417421\",\"^B\",\"~m1662967417421\",\"^C\",\"\",\"^D\",null]]]]],\"^A\",null,\"version\",\"2.99.1\",\"appThemeId\",null,\"preloadedAppJavaScript\",null,\"preloadedAppJSLinks\",[],\"testEntities\",[],\"tests\",[],\"appStyles\",\"\",\"responsiveLayoutDisabled\",false,\"loadingIndicatorsDisabled\",false,\"urlFragmentDefinitions\",[\"^:\",[]],\"pageLoadValueOverrides\",[\"^:\",[]],\"customDocumentTitle\",\"\",\"customDocumentTitleEnabled\",false,\"customShortcuts\",[],\"isGlobalWidget\",false,\"isMobileApp\",false,\"multiScreenMobileApp\",false,\"folders\",[\"^:\",[\"dbUser\",\"apiUser\"]],\"queryStatusVisibility\",true,\"markdownLinkBehavior\",\"never\",\"inAppRetoolPillAppearance\",\"NO_OVERRIDE\",\"rootScreen\",null,\"instrumentationEnabled\",false,\"experimentalPerfFeatures\",[\"^ \",\"batchCommitModelEnabled\",false,\"skipDepCycleCheckingEnabled\",false,\"serverDepGraphEnabled\",false,\"useRuntimeV2\",false],\"experimentalDataTabEnabled\",false]]]" - }, - "changesRecord": [ - { - "type": "DATASOURCE_TYPE_CHANGE", - "payload": { - "newType": "RESTQuery", - "pluginId": "shadowLogin", - "resourceName": "bb8ab17c-b112-4444-b054-3067ca2b62dc" - } - }, - { - "type": "WIDGET_TEMPLATE_UPDATE", - "payload": { - "plugin": { - "id": "shadowLogin", - "type": "datasource", - "style": null, - "folder": "apiUser", - "screen": null, - "subtype": "RESTQuery", - "tabIndex": null, - "template": { - "body": "", - "data": null, - "type": "GET", - "error": null, - "query": "", - "events": [], - "cookies": "", - "headers": "", - "rawData": null, - "bodyType": "json", - "metadata": null, - "changeset": "", - "timestamp": 0, - "isFetching": false, - "isImported": false, - "cacheKeyTtl": "", - "transformer": "// type your code here\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\nreturn data", - "queryTimeout": "10000", - "allowedGroups": [], - "enableCaching": false, - "privateParams": [], - "queryDisabled": "", - "watchedParams": [], - "successMessage": "", - "changesetObject": "", - "paginationLimit": "", - "errorTransformer": "// The variable 'data' allows you to reference the request's data in the transformer. \n// example: return data.find(element => element.isError)\nreturn data.error", - "queryRefreshTime": "", - "runWhenPageLoads": false, - "changesetIsObject": false, - "enableTransformer": false, - "paginationEnabled": false, - "queryThrottleTime": "750", - "queryTriggerDelay": "0", - "showFailureToaster": true, - "showSuccessToaster": true, - "importedQueryInputs": {}, - "paginationDataField": "", - "playgroundQueryUuid": "", - "requireConfirmation": false, - "runWhenModelUpdates": true, - "notificationDuration": "", - "queryDisabledMessage": "", - "resourceNameOverride": "", - "importedQueryDefaults": {}, - "playgroundQuerySaveId": "latest", - "runWhenPageLoadsDelay": "", - "enableErrorTransformer": false, - "queryFailureConditions": "", - "paginationPaginationField": "", - "updateSetValueDynamically": false, - "showLatestVersionUpdatedWarning": false, - "showUpdateSetValueDynamicallyToggle": true - }, - "container": "", - "createdAt": "2022-09-12T07:26:49.500Z", - "namespace": null, - "position2": null, - "updatedAt": "2022-09-12T10:14:09.072Z", - "resourceName": "bb8ab17c-b112-4444-b054-3067ca2b62dc", - "mobilePosition2": null, - "mobileAppPosition": null, - "resourceDisplayName": null - }, - "update": { - "body": "[{\"key\":\"id\",\"value\":\"\\\"6315f482ec588c3bcb5b07a8\\\"\"}]", - "data": null, - "type": "POST", - "error": null, - "query": "admin/account/shadow-login", - "events": [], - "cookies": "", - "headers": "", - "rawData": null, - "bodyType": "json", - "metadata": null, - "changeset": "", - "timestamp": 0, - "isFetching": false, - "isImported": false, - "cacheKeyTtl": "", - "transformer": "// type your code here\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\nreturn data", - "queryTimeout": "10000", - "allowedGroups": [], - "enableCaching": false, - "privateParams": [], - "queryDisabled": "", - "watchedParams": [], - "successMessage": "", - "changesetObject": "", - "paginationLimit": "", - "errorTransformer": "// The variable 'data' allows you to reference the request's data in the transformer. \n// example: return data.find(element => element.isError)\nreturn data.error", - "queryRefreshTime": "", - "runWhenPageLoads": false, - "changesetIsObject": false, - "enableTransformer": false, - "paginationEnabled": false, - "playgroundQueryId": null, - "queryThrottleTime": "750", - "queryTriggerDelay": "0", - "showFailureToaster": true, - "showSuccessToaster": true, - "confirmationMessage": null, - "importedQueryInputs": {}, - "paginationDataField": "", - "playgroundQueryUuid": "", - "requireConfirmation": false, - "runWhenModelUpdates": false, - "notificationDuration": "", - "queryDisabledMessage": "", - "resourceNameOverride": "", - "resourceTypeOverride": "", - "importedQueryDefaults": {}, - "playgroundQuerySaveId": "latest", - "runWhenPageLoadsDelay": "", - "enableErrorTransformer": false, - "queryFailureConditions": "", - "paginationPaginationField": "", - "updateSetValueDynamically": false, - "lastReceivedFromResourceAt": null, - "showLatestVersionUpdatedWarning": false, - "showUpdateSetValueDynamicallyToggle": true - }, - "widgetId": "shadowLogin", - "shouldRecalculateTemplate": true - }, - "isUserTriggered": true - } - ], - "gitSha": null, - "checksum": null, - "createdAt": "2022-09-12T10:16:56.671Z", - "updatedAt": "2022-09-12T10:16:56.671Z", - "pageId": 1427949, - "userId": 403318, - "branchId": null - }, - "modules": {} -} diff --git a/examples/prisma/apps/api/src/environment.d.ts b/examples/prisma/apps/api/src/environment.d.ts deleted file mode 100644 index ed41676e4..000000000 --- a/examples/prisma/apps/api/src/environment.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -declare global { - namespace NodeJS { - interface ProcessEnv { - APP_ENV: 'development' | 'staging' | 'production'; - NODE_ENV: 'development' | 'staging' | 'production'; - PORT?: number; - PWD: string; - } - } -} - -// If this file has no import/export statements (i.e. is a script), -// convert it into a module by adding an empty export statement. -export {}; diff --git a/examples/prisma/apps/api/src/globals.d.ts b/examples/prisma/apps/api/src/globals.d.ts deleted file mode 100644 index 6cff76614..000000000 --- a/examples/prisma/apps/api/src/globals.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -/* eslint-disable no-var, vars-on-top */ -import type { Logger } from 'winston'; - -declare global { - var logger: Logger; -} diff --git a/examples/prisma/apps/api/src/io-emitter.ts b/examples/prisma/apps/api/src/io-emitter.ts deleted file mode 100644 index 9fbe82721..000000000 --- a/examples/prisma/apps/api/src/io-emitter.ts +++ /dev/null @@ -1,40 +0,0 @@ -import { Emitter } from '@socket.io/redis-emitter'; - -import redisClient, { redisErrorHandler } from 'redis-client'; - -import logger from 'logger'; - -let emitter: Emitter | null = null; - -const publish = (roomId: string | string[], eventName: string, data: unknown) => { - if (emitter === null) { - redisErrorHandler(new Error('[Socket.IO] Emitter is not initialized.')); - - return; - } - - logger.debug(`[Socket.IO] Published [${eventName}] event to ${roomId}, the data is:`); - logger.debug(data); - - emitter.to(roomId).emit(eventName, data); -}; - -const initClient = () => { - const subClient = redisClient.duplicate(); - - subClient.on('error', redisErrorHandler); - - emitter = new Emitter(subClient); -}; - -const getUserRoomId = (userId: string) => `user-${userId}`; - -export default { - initClient, - publish, - publishToUser: (userId: string, eventName: string, data: unknown): void => { - const roomId = getUserRoomId(userId); - - publish(roomId, eventName, data); - }, -}; diff --git a/examples/prisma/apps/api/src/koa-qs.d.ts b/examples/prisma/apps/api/src/koa-qs.d.ts deleted file mode 100644 index a7c773b2d..000000000 --- a/examples/prisma/apps/api/src/koa-qs.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import AppKoa from 'types'; - -declare namespace koaQs { - type ParseMode = 'extended' | 'strict' | 'first'; -} - -declare function koaQs(app: AppKoa, mode?: koaQs.ParseMode): AppKoa; - -export = koaQs; diff --git a/examples/prisma/apps/api/src/logger.ts b/examples/prisma/apps/api/src/logger.ts deleted file mode 100644 index 4223775ef..000000000 --- a/examples/prisma/apps/api/src/logger.ts +++ /dev/null @@ -1,54 +0,0 @@ -import _ from 'lodash'; -import winston from 'winston'; - -import config from 'config'; - -const formatToPrettyJson = winston.format.printf(({ level, message }) => { - if (_.isPlainObject(message)) { - message = JSON.stringify(message, null, 4); - } - - return `${level}: ${message}`; -}); - -const getFormat = (isDev: boolean) => { - if (isDev) { - return winston.format.combine( - winston.format.colorize({ - colors: { - http: 'cyan', - }, - }), - winston.format.splat(), - winston.format.simple(), - formatToPrettyJson, - ); - } - - return winston.format.combine( - winston.format.errors({ stack: true }), - winston.format.timestamp(), - winston.format.splat(), - winston.format.json(), - ); -}; - -const createConsoleLogger = (isDev = false) => { - const transports: winston.transport[] = [ - new winston.transports.Console({ - level: isDev ? 'debug' : 'verbose', - }), - ]; - - return winston.createLogger({ - exitOnError: false, - transports, - format: getFormat(isDev), - }); -}; - -const consoleLogger = createConsoleLogger(config?.IS_DEV ?? process.env.APP_ENV === 'development'); - -global.logger = consoleLogger; - -export default consoleLogger; diff --git a/examples/prisma/apps/api/src/middlewares/index.ts b/examples/prisma/apps/api/src/middlewares/index.ts deleted file mode 100644 index 6e6fe8221..000000000 --- a/examples/prisma/apps/api/src/middlewares/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -import rateLimitMiddleware from './rate-limit.middleware'; -import validateMiddleware from './validate.middleware'; - -export { rateLimitMiddleware, validateMiddleware }; diff --git a/examples/prisma/apps/api/src/middlewares/rate-limit.middleware.ts b/examples/prisma/apps/api/src/middlewares/rate-limit.middleware.ts deleted file mode 100644 index 4c9ebd756..000000000 --- a/examples/prisma/apps/api/src/middlewares/rate-limit.middleware.ts +++ /dev/null @@ -1,40 +0,0 @@ -import { ParameterizedContext } from 'koa'; -import koaRateLimit, { MiddlewareOptions } from 'koa-ratelimit'; - -import config from 'config'; - -import redisClient from 'redis-client'; - -import { AppKoaContextState } from 'types'; - -const rateLimit = ( - limitDuration = 1000 * 60, // 60 sec - requestsPerDuration = 10, - errorMessage: string | undefined = 'Looks like you are moving too fast. Retry again in few minutes.', -): ReturnType => { - const isRedisAvailable = !!config.REDIS_URI; - - let dbOptions: Pick = { - driver: 'memory', - db: new Map(), - }; - - if (isRedisAvailable) { - dbOptions = { - driver: 'redis', - db: redisClient, - }; - } - - return koaRateLimit({ - ...dbOptions, - duration: limitDuration, - max: requestsPerDuration, - id: (ctx: ParameterizedContext) => ctx.state?.user?.id?.toString() || ctx.ip, - errorMessage, - disableHeader: false, - throw: true, - }); -}; - -export default rateLimit; diff --git a/examples/prisma/apps/api/src/middlewares/validate.middleware.ts b/examples/prisma/apps/api/src/middlewares/validate.middleware.ts deleted file mode 100644 index c41facd9a..000000000 --- a/examples/prisma/apps/api/src/middlewares/validate.middleware.ts +++ /dev/null @@ -1,36 +0,0 @@ -import { ZodError, ZodIssue, ZodSchema } from 'zod'; - -import { AppKoaContext, Next, ValidationErrors } from 'types'; - -const formatError = (zodError: ZodError): ValidationErrors => { - const errors: ValidationErrors = {}; - - zodError.issues.forEach((error: ZodIssue) => { - const key = error.path.join('.'); - - if (!errors[key]) { - errors[key] = []; - } - - (errors[key] as string[]).push(error.message); - }); - - return errors; -}; - -const validate = (schema: ZodSchema) => async (ctx: AppKoaContext, next: Next) => { - const result = await schema.safeParseAsync({ - ...ctx.request.body, - ...ctx.request.files, - ...ctx.query, - ...ctx.params, - }); - - if (!result.success) ctx.throw(400, { clientErrors: formatError(result.error) }); - - ctx.validatedData = result.data; - - await next(); -}; - -export default validate; diff --git a/examples/prisma/apps/api/src/redis-client.ts b/examples/prisma/apps/api/src/redis-client.ts deleted file mode 100644 index d3c06af20..000000000 --- a/examples/prisma/apps/api/src/redis-client.ts +++ /dev/null @@ -1,30 +0,0 @@ -import { Redis } from 'ioredis'; - -import config from 'config'; - -import logger from 'logger'; - -const client = new Redis(config.REDIS_URI as string, { - lazyConnect: true, - retryStrategy: (times) => { - if (times > 20) return null; - - return Math.max(Math.min(Math.exp(times), 15_000), 1_000); - }, -}); - -export const redisErrorHandler = (error: Error) => { - const errorMessage = `[Redis] ${error.stack || error}`; - - if (config.REDIS_ERRORS_POLICY === 'throw') { - throw new Error(errorMessage); - } else { - logger.error(errorMessage); - } -}; - -client.on('error', redisErrorHandler); - -client.on('connect', () => logger.info('[Redis] Connection established successfully.')); - -export default client; diff --git a/examples/prisma/apps/api/src/resources/account/account.routes.ts b/examples/prisma/apps/api/src/resources/account/account.routes.ts deleted file mode 100644 index d1763d68a..000000000 --- a/examples/prisma/apps/api/src/resources/account/account.routes.ts +++ /dev/null @@ -1,36 +0,0 @@ -import { routeUtil } from 'utils'; - -import forgotPassword from './actions/forgot-password'; -import get from './actions/get'; -import google from './actions/google'; -import resendEmail from './actions/resend-email'; -import resetPassword from './actions/reset-password'; -import shadowLogin from './actions/shadow-login'; -import signIn from './actions/sign-in'; -import signOut from './actions/sign-out'; -import signUp from './actions/sign-up'; -import update from './actions/update'; -import verifyEmail from './actions/verify-email'; -import verifyResetToken from './actions/verify-reset-token'; - -const publicRoutes = routeUtil.getRoutes([ - signUp, - signIn, - signOut, - verifyEmail, - forgotPassword, - resetPassword, - verifyResetToken, - resendEmail, - google, -]); - -const privateRoutes = routeUtil.getRoutes([get, update]); - -const adminRoutes = routeUtil.getRoutes([shadowLogin]); - -export default { - publicRoutes, - privateRoutes, - adminRoutes, -}; diff --git a/examples/prisma/apps/api/src/resources/account/account.utils.ts b/examples/prisma/apps/api/src/resources/account/account.utils.ts deleted file mode 100644 index c31ed38b5..000000000 --- a/examples/prisma/apps/api/src/resources/account/account.utils.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { cloudStorageService } from 'services'; - -import { BackendFile, User } from 'types'; - -export const removeAvatar = async (user: User) => { - if (user.avatarUrl) { - const fileKey = cloudStorageService.getFileKey(user.avatarUrl); - - await cloudStorageService.deleteObject(fileKey); - } -}; - -export const uploadAvatar = async (user: User, file: BackendFile, customFileName?: string): Promise => { - await removeAvatar(user); - - const fileName = customFileName || `${user.id}-${Date.now()}-${file.originalFilename}`; - - const { location: avatarUrl } = await cloudStorageService.uploadPublic(`avatars/${fileName}`, file); - - if (!avatarUrl) { - throw new Error("An error occurred while uploading the user's avatar"); - } - - return avatarUrl; -}; diff --git a/examples/prisma/apps/api/src/resources/account/actions/forgot-password.ts b/examples/prisma/apps/api/src/resources/account/actions/forgot-password.ts deleted file mode 100644 index 889bf92e4..000000000 --- a/examples/prisma/apps/api/src/resources/account/actions/forgot-password.ts +++ /dev/null @@ -1,59 +0,0 @@ -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; -import { emailService } from 'services'; -import { securityUtil } from 'utils'; - -import config from 'config'; - -import { forgotPasswordSchema } from 'schemas'; -import { AppKoaContext, AppRouter, ForgotPasswordParams, Next, Template, User } from 'types'; - -interface ValidatedData extends ForgotPasswordParams { - user: User; -} - -async function validator(ctx: AppKoaContext, next: Next) { - const user = await userService.findUnique({ where: { email: ctx.validatedData.email } }); - - if (!user) { - ctx.status = 204; - return; - } - - ctx.validatedData.user = user; - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.validatedData; - - let { resetPasswordToken } = user; - - if (!resetPasswordToken) { - resetPasswordToken = await securityUtil.generateSecureToken(); - - await userService.update({ - where: { id: user.id }, - data: { resetPasswordToken }, - }); - } - - const resetPasswordUrl = `${config.API_URL}/account/verify-reset-token?token=${resetPasswordToken}&email=${encodeURIComponent(user.email)}`; - - await emailService.sendTemplate({ - to: user.email, - subject: 'Password Reset Request for Ship', - template: Template.RESET_PASSWORD, - params: { - firstName: user.firstName, - href: resetPasswordUrl, - }, - }); - - ctx.status = 204; -} - -export default (router: AppRouter) => { - router.post('/forgot-password', validateMiddleware(forgotPasswordSchema), validator, handler); -}; diff --git a/examples/prisma/apps/api/src/resources/account/actions/get.ts b/examples/prisma/apps/api/src/resources/account/actions/get.ts deleted file mode 100644 index 938fe04e4..000000000 --- a/examples/prisma/apps/api/src/resources/account/actions/get.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { userService } from 'resources/user'; - -import { AppKoaContext, AppRouter } from 'types'; - -async function handler(ctx: AppKoaContext) { - ctx.body = { - ...userService.getPublic(ctx.state.user), - isShadow: ctx.state.isShadow, - }; -} - -export default (router: AppRouter) => { - router.get('/', handler); -}; diff --git a/examples/prisma/apps/api/src/resources/account/actions/google.ts b/examples/prisma/apps/api/src/resources/account/actions/google.ts deleted file mode 100644 index c7a53ec91..000000000 --- a/examples/prisma/apps/api/src/resources/account/actions/google.ts +++ /dev/null @@ -1,76 +0,0 @@ -import { userService } from 'resources/user'; - -import { authService, googleService } from 'services'; - -import config from 'config'; - -import { AppKoaContext, AppRouter } from 'types'; - -const getOAuthUrl = async (ctx: AppKoaContext) => { - const areCredentialsExist = config.GOOGLE_CLIENT_ID && config.GOOGLE_CLIENT_SECRET; - - ctx.assertClientError(areCredentialsExist, { - global: 'Setup Google OAuth credentials on API', - }); - - ctx.redirect(googleService.oAuthURL); -}; - -const signInGoogleWithCode = async (ctx: AppKoaContext) => { - const { code } = ctx.request.query; - - const { isValid, payload } = await googleService.exchangeCodeForToken(code); - - ctx.assertError(isValid && payload && !(payload instanceof Error), `Exchange code for token error: ${payload}`); - - const user = await userService.findUnique({ - where: { email: payload.email }, - }); - - let userChanged; - - if (user) { - if (!user.isGoogleAuth) { - userChanged = await userService.update({ - where: { id: user.id }, - data: { - isGoogleAuth: true, - }, - }); - } - - const userUpdated = userChanged || user; - - await Promise.all([userService.updateLastRequest(userUpdated.id), authService.setTokens(ctx, userUpdated.id)]); - - ctx.redirect(config.WEB_URL); - } - - const { givenName: firstName = '', familyName = '', email = '', picture: avatarUrl } = payload; - - const lastName = familyName; - const fullName = lastName ? `${firstName} ${lastName}` : firstName; - - const newUser = await userService.create({ - data: { - firstName, - lastName, - fullName, - email, - isEmailVerified: true, - avatarUrl, - isGoogleAuth: true, - }, - }); - - if (newUser) { - await Promise.all([userService.updateLastRequest(newUser.id), authService.setTokens(ctx, newUser.id)]); - } - - ctx.redirect(config.WEB_URL); -}; - -export default (router: AppRouter) => { - router.get('/sign-in/google/auth', getOAuthUrl); - router.get('/sign-in/google', signInGoogleWithCode); -}; diff --git a/examples/prisma/apps/api/src/resources/account/actions/resend-email.ts b/examples/prisma/apps/api/src/resources/account/actions/resend-email.ts deleted file mode 100644 index 14e94d442..000000000 --- a/examples/prisma/apps/api/src/resources/account/actions/resend-email.ts +++ /dev/null @@ -1,60 +0,0 @@ -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; -import { emailService } from 'services'; -import { securityUtil } from 'utils'; - -import config from 'config'; - -import { resendEmailSchema } from 'schemas'; -import { AppKoaContext, AppRouter, Next, ResendEmailParams, Template, User } from 'types'; - -interface ValidatedData extends ResendEmailParams { - user: User; -} - -async function validator(ctx: AppKoaContext, next: Next) { - const { email } = ctx.validatedData; - - const user = await userService.findUnique({ - where: { email }, - }); - - if (!user) { - ctx.status = 204; - return; - } - - ctx.validatedData.user = user; - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.validatedData; - - const resetPasswordToken = await securityUtil.generateSecureToken(); - - const resetPasswordUrl = `${config.API_URL}/account/verify-reset-token?token=${resetPasswordToken}&email=${encodeURIComponent(user.email)}`; - - await Promise.all([ - userService.update({ - where: { id: user.id }, - data: { resetPasswordToken }, - }), - emailService.sendTemplate({ - to: user.email, - subject: 'Password Reset Request for Ship', - template: Template.RESET_PASSWORD, - params: { - firstName: user.firstName, - href: resetPasswordUrl, - }, - }), - ]); - - ctx.status = 204; -} - -export default (router: AppRouter) => { - router.post('/resend-email', validateMiddleware(resendEmailSchema), validator, handler); -}; diff --git a/examples/prisma/apps/api/src/resources/account/actions/reset-password.ts b/examples/prisma/apps/api/src/resources/account/actions/reset-password.ts deleted file mode 100644 index e3d80af3d..000000000 --- a/examples/prisma/apps/api/src/resources/account/actions/reset-password.ts +++ /dev/null @@ -1,54 +0,0 @@ -import { tokenService } from 'resources/token'; -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; -import { securityUtil } from 'utils'; - -import { resetPasswordSchema } from 'schemas'; -import { AppKoaContext, AppRouter, Next, ResetPasswordParams, User } from 'types'; -import { database } from 'database'; - -interface ValidatedData extends ResetPasswordParams { - user: User; -} - -async function validator(ctx: AppKoaContext, next: Next) { - const { token } = ctx.validatedData; - - const user = await userService.findUnique({ - where: { resetPasswordToken: token }, - }); - - if (!user) { - ctx.status = 204; - return; - } - - ctx.validatedData.user = user; - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user, password } = ctx.validatedData; - - const passwordHash = await securityUtil.getHash(password); - - await database.$transaction(async (tx) => { - await Promise.all([ - userService.update({ - where: { id: user.id }, - data: { - passwordHash, - resetPasswordToken: null, - }, - }), - tokenService.invalidateUserTokens(user.id, tx), - ]); - }); - - ctx.status = 204; -} - -export default (router: AppRouter) => { - router.put('/reset-password', validateMiddleware(resetPasswordSchema), validator, handler); -}; diff --git a/examples/prisma/apps/api/src/resources/account/actions/shadow-login.ts b/examples/prisma/apps/api/src/resources/account/actions/shadow-login.ts deleted file mode 100644 index 5cfc95f36..000000000 --- a/examples/prisma/apps/api/src/resources/account/actions/shadow-login.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { z } from 'zod'; - -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; -import { authService } from 'services'; - -import config from 'config'; - -import { AppKoaContext, AppRouter, Next, User } from 'types'; - -const schema = z.object({ - id: z.string().min(1, 'User ID is required'), -}); - -interface ValidatedData extends z.infer { - user: User; -} - -async function validator(ctx: AppKoaContext, next: Next) { - const { id } = ctx.validatedData; - - const user = await userService.findUnique({ - where: { id: +id }, - }); - - ctx.assertClientError(user, { id: 'User does not exist' }); - - ctx.validatedData.user = user; - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.validatedData; - - await authService.setTokens(ctx, user.id, true); - - ctx.redirect(config.WEB_URL); -} - -export default (router: AppRouter) => { - router.post('/shadow-login', validateMiddleware(schema), validator, handler); -}; diff --git a/examples/prisma/apps/api/src/resources/account/actions/sign-in.ts b/examples/prisma/apps/api/src/resources/account/actions/sign-in.ts deleted file mode 100644 index dc66a6da6..000000000 --- a/examples/prisma/apps/api/src/resources/account/actions/sign-in.ts +++ /dev/null @@ -1,47 +0,0 @@ -import { userService } from 'resources/user'; - -import { rateLimitMiddleware, validateMiddleware } from 'middlewares'; -import { authService } from 'services'; -import { securityUtil } from 'utils'; - -import { signInSchema } from 'schemas'; -import { AppKoaContext, AppRouter, Next, SignInParams, User } from 'types'; - -interface ValidatedData extends SignInParams { - user: User; -} - -async function validator(ctx: AppKoaContext, next: Next) { - const { email, password } = ctx.validatedData; - - const user = await userService.findFirst({ where: { email } }); - - ctx.assertClientError(user && user.passwordHash, { - credentials: 'The email or password you have entered is invalid', - }); - - const isPasswordMatch = await securityUtil.compareTextWithHash(password, user.passwordHash); - - ctx.assertClientError(isPasswordMatch, { - credentials: 'The email or password you have entered is invalid', - }); - - ctx.assertClientError(user.isEmailVerified, { - email: 'Please verify your email to sign in', - }); - - ctx.validatedData.user = user; - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.validatedData; - - await Promise.all([userService.updateLastRequest(user.id), authService.setTokens(ctx, user.id)]); - - ctx.body = userService.getPublic(user); -} - -export default (router: AppRouter) => { - router.post('/sign-in', rateLimitMiddleware(), validateMiddleware(signInSchema), validator, handler); -}; diff --git a/examples/prisma/apps/api/src/resources/account/actions/sign-out.ts b/examples/prisma/apps/api/src/resources/account/actions/sign-out.ts deleted file mode 100644 index 217babea1..000000000 --- a/examples/prisma/apps/api/src/resources/account/actions/sign-out.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { authService } from 'services'; - -import { AppKoaContext, AppRouter } from 'types'; - -const handler = async (ctx: AppKoaContext) => { - await authService.unsetTokens(ctx); - - ctx.status = 204; -}; - -export default (router: AppRouter) => { - router.post('/sign-out', handler); -}; diff --git a/examples/prisma/apps/api/src/resources/account/actions/sign-up.ts b/examples/prisma/apps/api/src/resources/account/actions/sign-up.ts deleted file mode 100644 index 8d7abdd25..000000000 --- a/examples/prisma/apps/api/src/resources/account/actions/sign-up.ts +++ /dev/null @@ -1,65 +0,0 @@ -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; -import { analyticsService, emailService } from 'services'; -import { securityUtil } from 'utils'; - -import config from 'config'; - -import { signUpSchema } from 'schemas'; -import { AppKoaContext, AppRouter, Next, SignUpParams, Template } from 'types'; - -async function validator(ctx: AppKoaContext, next: Next) { - const { email } = ctx.validatedData; - - const isUserExists = await userService.count({ where: { email } }); - - ctx.assertClientError(!isUserExists, { - email: 'User with this email is already registered', - }); - - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { firstName, lastName, email, password } = ctx.validatedData; - - const [hash, signupToken] = await Promise.all([securityUtil.getHash(password), securityUtil.generateSecureToken()]); - - const user = await userService.create({ - data: { - email, - firstName, - lastName, - fullName: `${firstName} ${lastName}`, - passwordHash: hash.toString(), - signupToken, - }, - }); - - analyticsService.track('New user created', { - firstName, - lastName, - }); - - await emailService.sendTemplate({ - to: user.email, - subject: 'Please Confirm Your Email Address for Ship', - template: Template.VERIFY_EMAIL, - params: { - firstName: user.firstName, - href: `${config.API_URL}/account/verify-email?token=${signupToken}`, - }, - }); - - if (config.IS_DEV) { - ctx.body = { signupToken }; - return; - } - - ctx.status = 204; -} - -export default (router: AppRouter) => { - router.post('/sign-up', validateMiddleware(signUpSchema), validator, handler); -}; diff --git a/examples/prisma/apps/api/src/resources/account/actions/update.ts b/examples/prisma/apps/api/src/resources/account/actions/update.ts deleted file mode 100644 index 4fcc5b716..000000000 --- a/examples/prisma/apps/api/src/resources/account/actions/update.ts +++ /dev/null @@ -1,62 +0,0 @@ -import _ from 'lodash'; - -import { accountUtils } from 'resources/account'; -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; -import { securityUtil } from 'utils'; - -import { updateUserSchema } from 'schemas'; -import { AppKoaContext, AppRouter, Next, UpdateUserParamsBackend, User } from 'types'; - -interface ValidatedData extends UpdateUserParamsBackend { - passwordHash?: string | null; -} - -async function validator(ctx: AppKoaContext, next: Next) { - const { user } = ctx.state; - const { password } = ctx.validatedData; - - if (_.isEmpty(ctx.validatedData)) { - ctx.body = userService.getPublic(user); - - return; - } - - if (password) { - ctx.validatedData.passwordHash = await securityUtil.getHash(password); - - delete ctx.validatedData.password; - } - - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { avatar } = ctx.validatedData; - const { user } = ctx.state; - - const nonEmptyValues = _.pickBy(ctx.validatedData, (value) => !_.isUndefined(value)); - const updateData: Partial = _.omit(nonEmptyValues, 'avatar'); - - if (avatar === '') { - await accountUtils.removeAvatar(user); - - updateData.avatarUrl = null; - } - - if (avatar && typeof avatar !== 'string') { - updateData.avatarUrl = await accountUtils.uploadAvatar(user, avatar); - } - - ctx.body = await userService - .update({ - where: { id: user.id }, - data: updateData, - }) - .then(userService.getPublic); -} - -export default (router: AppRouter) => { - router.put('/', validateMiddleware(updateUserSchema), validator, handler); -}; diff --git a/examples/prisma/apps/api/src/resources/account/actions/verify-email.ts b/examples/prisma/apps/api/src/resources/account/actions/verify-email.ts deleted file mode 100644 index c58598962..000000000 --- a/examples/prisma/apps/api/src/resources/account/actions/verify-email.ts +++ /dev/null @@ -1,63 +0,0 @@ -import { z } from 'zod'; - -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; -import { authService, emailService } from 'services'; - -import config from 'config'; - -import { AppKoaContext, AppRouter, Next, Template, User } from 'types'; - -const schema = z.object({ - token: z.string().min(1, 'Token is required'), -}); - -interface ValidatedData extends z.infer { - user: User; -} - -async function validator(ctx: AppKoaContext, next: Next) { - const user = await userService.findFirst({ - where: { signupToken: ctx.validatedData.token }, - }); - - if (!user) { - ctx.redirect(`${config.WEB_URL}/sign-in`); - - return; - } - - ctx.validatedData.user = user; - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.validatedData; - - await userService.update({ - where: { id: user.id }, - data: { - isEmailVerified: true, - signupToken: null, - }, - }); - - await Promise.all([userService.updateLastRequest(user.id), authService.setTokens(ctx, user.id)]); - - await emailService.sendTemplate({ - to: user.email, - subject: 'Welcome to Ship Community!', - template: Template.SIGN_UP_WELCOME, - params: { - firstName: user.firstName, - href: `${config.WEB_URL}/sign-in`, - }, - }); - - ctx.redirect(config.WEB_URL); -} - -export default (router: AppRouter) => { - router.get('/verify-email', validateMiddleware(schema), validator, handler); -}; diff --git a/examples/prisma/apps/api/src/resources/account/actions/verify-reset-token.ts b/examples/prisma/apps/api/src/resources/account/actions/verify-reset-token.ts deleted file mode 100644 index 712e76a6a..000000000 --- a/examples/prisma/apps/api/src/resources/account/actions/verify-reset-token.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { z } from 'zod'; - -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; - -import config from 'config'; - -import { EMAIL_REGEX } from 'app-constants'; -import { AppKoaContext, AppRouter, User } from 'types'; - -const schema = z.object({ - email: z.string().toLowerCase().regex(EMAIL_REGEX, 'Email format is incorrect.'), - token: z.string().min(1, 'Token is required'), -}); - -interface ValidatedData extends z.infer { - user: User; -} - -async function validator(ctx: AppKoaContext) { - const { email, token } = ctx.validatedData; - - const user = await userService.findFirst({ - where: { resetPasswordToken: token }, - }); - - const redirectUrl = user - ? `${config.WEB_URL}/reset-password?token=${token}` - : `${config.WEB_URL}/expire-token?email=${email}`; - - ctx.redirect(redirectUrl); -} - -export default (router: AppRouter) => { - router.get('/verify-reset-token', validateMiddleware(schema), validator); -}; diff --git a/examples/prisma/apps/api/src/resources/account/index.ts b/examples/prisma/apps/api/src/resources/account/index.ts deleted file mode 100644 index 054ff439a..000000000 --- a/examples/prisma/apps/api/src/resources/account/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -import accountRoutes from './account.routes'; -import * as accountUtils from './account.utils'; - -export { accountRoutes, accountUtils }; diff --git a/examples/prisma/apps/api/src/resources/token/index.ts b/examples/prisma/apps/api/src/resources/token/index.ts deleted file mode 100644 index 7d6d240b5..000000000 --- a/examples/prisma/apps/api/src/resources/token/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -import tokenService from './token.service'; - -export { tokenService }; diff --git a/examples/prisma/apps/api/src/resources/token/token.service.ts b/examples/prisma/apps/api/src/resources/token/token.service.ts deleted file mode 100644 index efe77d682..000000000 --- a/examples/prisma/apps/api/src/resources/token/token.service.ts +++ /dev/null @@ -1,50 +0,0 @@ -import { securityUtil } from 'utils'; - -import { TOKEN_SECURITY_LENGTH } from 'app-constants'; -import { database, Prisma, TokenType } from 'database'; - -const createToken = async (userId: number, type: TokenType, isShadow?: boolean) => { - const value = await securityUtil.generateSecureToken(TOKEN_SECURITY_LENGTH); - - return database.token.create({ - data: { - type, - value, - userId, - isShadow, - }, - }); -}; - -const createAuthTokens = async (user: { userId: number; isShadow?: boolean }) => { - const accessTokenEntity = await createToken(user.userId, TokenType.ACCESS, user.isShadow); - - return { - accessToken: accessTokenEntity.value, - }; -}; - -const findTokenByValue = async (token: string) => - database.token.findFirst({ - where: { value: token }, - select: { userId: true, isShadow: true }, - }); - -const removeAuthTokens = async (accessToken: string) => - database.token.deleteMany({ - where: { - value: accessToken, - }, - }); - -const invalidateUserTokens = async (userId: number, tx?: Prisma.TransactionClient) => { - const client = tx || database; - return client.token.deleteMany({ where: { userId } }); -}; - -export default Object.assign(database, { - createAuthTokens, - findTokenByValue, - removeAuthTokens, - invalidateUserTokens, -}); diff --git a/examples/prisma/apps/api/src/resources/user/actions/list.ts b/examples/prisma/apps/api/src/resources/user/actions/list.ts deleted file mode 100644 index c8356747f..000000000 --- a/examples/prisma/apps/api/src/resources/user/actions/list.ts +++ /dev/null @@ -1,98 +0,0 @@ -import { z } from 'zod'; - -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; - -import { paginationSchema } from 'schemas'; -import { AppKoaContext, AppRouter, NestedKeys, User } from 'types'; - -const schema = paginationSchema.extend({ - filter: z - .object({ - createdAt: z - .object({ - startDate: z.coerce.date().optional(), - endDate: z.coerce.date().optional(), - }) - .optional(), - }) - .optional(), - sort: z - .object({ - firstName: z.enum(['asc', 'desc']).optional(), - lastName: z.enum(['asc', 'desc']).optional(), - createdAt: z.enum(['asc', 'desc']).default('asc'), - }) - .default({}), -}); - -type ValidatedData = z.infer; - -async function handler(ctx: AppKoaContext) { - - const { perPage, page, sort, searchValue, filter } = ctx.validatedData; - - const filterOptions = []; - - if (searchValue) { - const searchFields: NestedKeys[] = ['firstName', 'lastName', 'email']; - - filterOptions.push({ - OR: searchFields.map((field) => ({ - [field]: { - contains: searchValue, - mode: 'insensitive', - }, - })), - }); - } - - if (filter) { - const { createdAt, ...otherFilters } = filter; - - if (createdAt) { - const { startDate, endDate } = createdAt; - - filterOptions.push({ - createdAt: { - ...(startDate && { gte: startDate }), - ...(endDate && { lt: endDate }), - }, - }); - } - - Object.entries(otherFilters).forEach(([key, value]) => { - filterOptions.push({ [key]: value }); - }); - } - - const orderBy = Object.entries(sort).map(([key, value]) => ({ - [key]: value, - })); - - const [results, count] = await Promise.all([ - userService.findMany({ - where: { - AND: filterOptions, - }, - skip: (page - 1) * perPage, - take: perPage, - orderBy, - }), - userService.count({ - where: { - AND: filterOptions, - } - })]); - - ctx.body = { - results: results.map(userService.getPublic), - count: results.length, - pagesCount: count, - }; -} - -export default (router: AppRouter) => { - router.get('/', validateMiddleware(schema), handler); -}; diff --git a/examples/prisma/apps/api/src/resources/user/actions/remove.ts b/examples/prisma/apps/api/src/resources/user/actions/remove.ts deleted file mode 100644 index 6bbe8bc77..000000000 --- a/examples/prisma/apps/api/src/resources/user/actions/remove.ts +++ /dev/null @@ -1,30 +0,0 @@ -import { userService } from 'resources/user'; - -import { AppKoaContext, AppRouter, Next } from 'types'; - -type ValidatedData = never; -type Request = { - params: { - id: string; - }; -}; - -async function validator(ctx: AppKoaContext, next: Next) { - const isUserExists = await userService.count({ where: { id: +ctx.request.params.id } }); - - ctx.assertError(isUserExists, 'User not found'); - - await next(); -} - -async function handler(ctx: AppKoaContext) { - await userService.delete({ - where: { id: +ctx.request.params.id }, - }); - - ctx.status = 204; -} - -export default (router: AppRouter) => { - router.delete('/:id', validator, handler); -}; diff --git a/examples/prisma/apps/api/src/resources/user/actions/update.ts b/examples/prisma/apps/api/src/resources/user/actions/update.ts deleted file mode 100644 index 59ee5c195..000000000 --- a/examples/prisma/apps/api/src/resources/user/actions/update.ts +++ /dev/null @@ -1,44 +0,0 @@ -import { z } from 'zod'; - -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; - -import { EMAIL_REGEX } from 'app-constants'; -import { AppKoaContext, AppRouter, Next } from 'types'; - -const schema = z.object({ - firstName: z.string().min(1, 'Please enter First name').max(100), - lastName: z.string().min(1, 'Please enter Last name').max(100), - email: z.string().toLowerCase().regex(EMAIL_REGEX, 'Email format is incorrect.'), -}); - -type ValidatedData = z.infer; -type Request = { - params: { - id: string; - }; -}; - -async function validator(ctx: AppKoaContext, next: Next) { - const isUserExists = await userService.count({ - where: { id: +ctx.request.params.id }, - }); - - ctx.assertError(isUserExists, 'User not found'); - - await next(); -} - -async function handler(ctx: AppKoaContext) { - const updatedUser = await userService.update({ - where: { id: +ctx.request.params.id }, - data: ctx.validatedData, - }); - - ctx.body = userService.getPublic(updatedUser); -} - -export default (router: AppRouter) => { - router.put('/:id', validator, validateMiddleware(schema), handler); -}; diff --git a/examples/prisma/apps/api/src/resources/user/index.ts b/examples/prisma/apps/api/src/resources/user/index.ts deleted file mode 100644 index d242c7778..000000000 --- a/examples/prisma/apps/api/src/resources/user/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -import userRoutes from './user.routes'; -import userService from './user.service'; - - -export { userRoutes, userService }; diff --git a/examples/prisma/apps/api/src/resources/user/tests/user.service.spec.ts b/examples/prisma/apps/api/src/resources/user/tests/user.service.spec.ts deleted file mode 100644 index afa4dd793..000000000 --- a/examples/prisma/apps/api/src/resources/user/tests/user.service.spec.ts +++ /dev/null @@ -1,36 +0,0 @@ -import { database } from 'database'; - -describe('User service', () => { - beforeAll(async () => { - await database.$connect(); - }); - - beforeEach(async () => { - await database.user.deleteMany({}); - }); - - it('should create user', async () => { - const mockUser = { - id: 123, - firstName: 'John', - lastName: 'Smith', - fullName: 'John Smith', - email: 'smith@example.com', - isEmailVerified: false, - }; - - await database.user.create({ - data: mockUser, - }); - - const insertedUser = await database.user.findUnique({ - where: { id: mockUser.id }, - }); - - expect(insertedUser).not.toBeNull(); - }); - - afterAll(async () => { - await database.$disconnect(); - }); -}); diff --git a/examples/prisma/apps/api/src/resources/user/user.routes.ts b/examples/prisma/apps/api/src/resources/user/user.routes.ts deleted file mode 100644 index 36504e198..000000000 --- a/examples/prisma/apps/api/src/resources/user/user.routes.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { routeUtil } from 'utils'; - -import list from './actions/list'; -import remove from './actions/remove'; -import update from './actions/update'; - -const publicRoutes = routeUtil.getRoutes([]); - -const privateRoutes = routeUtil.getRoutes([list]); - -const adminRoutes = routeUtil.getRoutes([list, update, remove]); - -export default { - publicRoutes, - privateRoutes, - adminRoutes, -}; diff --git a/examples/prisma/apps/api/src/resources/user/user.service.ts b/examples/prisma/apps/api/src/resources/user/user.service.ts deleted file mode 100644 index 1e19005e3..000000000 --- a/examples/prisma/apps/api/src/resources/user/user.service.ts +++ /dev/null @@ -1,19 +0,0 @@ -import _ from 'lodash'; - -import { User } from 'types'; -import { database } from 'database'; - -const updateLastRequest = async (id: number) => - database.user.update({ - where: { id }, - data: { lastRequest: new Date() }, - }); - -const privateFields = ['passwordHash', 'signupToken', 'resetPasswordToken']; - -const getPublic = (user: User) => _.omit(user, privateFields); - -export default Object.assign(database.user, { - updateLastRequest, - getPublic, -}); diff --git a/examples/prisma/apps/api/src/routes/admin.routes.ts b/examples/prisma/apps/api/src/routes/admin.routes.ts deleted file mode 100644 index 3a5b77be2..000000000 --- a/examples/prisma/apps/api/src/routes/admin.routes.ts +++ /dev/null @@ -1,14 +0,0 @@ -import compose from 'koa-compose'; -import mount from 'koa-mount'; - -import { accountRoutes } from 'resources/account'; -import { userRoutes } from 'resources/user'; - -import { AppKoa } from 'types'; - -import adminAuth from './middlewares/admin-auth.middleware'; - -export default (app: AppKoa) => { - app.use(mount('/admin/account', compose([adminAuth, accountRoutes.adminRoutes]))); - app.use(mount('/admin/users', compose([adminAuth, userRoutes.adminRoutes]))); -}; diff --git a/examples/prisma/apps/api/src/routes/index.ts b/examples/prisma/apps/api/src/routes/index.ts deleted file mode 100644 index 8f71b12df..000000000 --- a/examples/prisma/apps/api/src/routes/index.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { AppKoa } from 'types'; - -import attachCustomErrors from './middlewares/attach-custom-errors.middleware'; -import attachCustomProperties from './middlewares/attach-custom-properties.middleware'; -import extractTokens from './middlewares/extract-tokens.middleware'; -import routeErrorHandler from './middlewares/route-error-handler.middleware'; -import tryToAttachUser from './middlewares/try-to-attach-user.middleware'; -import adminRoutes from './admin.routes'; -import privateRoutes from './private.routes'; -import publicRoutes from './public.routes'; - -const defineRoutes = (app: AppKoa) => { - app.use(attachCustomErrors); - app.use(attachCustomProperties); - app.use(routeErrorHandler); - app.use(extractTokens); - app.use(tryToAttachUser); - - publicRoutes(app); - privateRoutes(app); - adminRoutes(app); -}; - -export default defineRoutes; diff --git a/examples/prisma/apps/api/src/routes/middlewares/admin-auth.middleware.ts b/examples/prisma/apps/api/src/routes/middlewares/admin-auth.middleware.ts deleted file mode 100644 index f4f7b895e..000000000 --- a/examples/prisma/apps/api/src/routes/middlewares/admin-auth.middleware.ts +++ /dev/null @@ -1,17 +0,0 @@ -import config from 'config'; - -import { AppKoaContext, Next } from 'types'; - -const adminAuth = (ctx: AppKoaContext, next: Next) => { - const adminKey = ctx.header['x-admin-key']; - - if (config.ADMIN_KEY && config.ADMIN_KEY === adminKey) { - return next(); - } - - ctx.status = 401; - - return null; -}; - -export default adminAuth; diff --git a/examples/prisma/apps/api/src/routes/middlewares/attach-custom-errors.middleware.ts b/examples/prisma/apps/api/src/routes/middlewares/attach-custom-errors.middleware.ts deleted file mode 100644 index bc3d4567f..000000000 --- a/examples/prisma/apps/api/src/routes/middlewares/attach-custom-errors.middleware.ts +++ /dev/null @@ -1,26 +0,0 @@ -import _ from 'lodash'; - -import { AppKoaContext, CustomErrors, Next, ValidationErrors } from 'types'; - -const formatError = (customError: CustomErrors): ValidationErrors => { - const errors: ValidationErrors = {}; - - Object.keys(customError).forEach((key) => { - errors[key] = _.isArray(customError[key]) ? customError[key] : [customError[key]]; - }); - - return errors; -}; - -const attachCustomErrors = async (ctx: AppKoaContext, next: Next) => { - ctx.throwError = (message, status = 400) => ctx.throw(status, { message }); - ctx.assertError = (condition, message, status = 400) => ctx.assert(condition, status, { message }); - - ctx.throwClientError = (errors, status = 400) => ctx.throw(status, { clientErrors: formatError(errors) }); - ctx.assertClientError = (condition, errors, status = 400) => - ctx.assert(condition, status, { clientErrors: formatError(errors) }); - - await next(); -}; - -export default attachCustomErrors; diff --git a/examples/prisma/apps/api/src/routes/middlewares/route-error-handler.middleware.ts b/examples/prisma/apps/api/src/routes/middlewares/route-error-handler.middleware.ts deleted file mode 100644 index d49c42569..000000000 --- a/examples/prisma/apps/api/src/routes/middlewares/route-error-handler.middleware.ts +++ /dev/null @@ -1,53 +0,0 @@ -import { userService } from 'resources/user'; - -import config from 'config'; - -import logger from 'logger'; - -import { AppKoaContext, Next, ValidationErrors } from 'types'; - -interface CustomError extends Error { - status?: number; - clientErrors?: ValidationErrors; -} - -const routeErrorHandler = async (ctx: AppKoaContext, next: Next) => { - try { - await next(); - } catch (error) { - if (typeof error === 'object' && error !== null && 'message' in error) { - const typedError = error as CustomError; - - const clientError = typedError.clientErrors; - const serverError = { global: typedError.message || 'Unknown error' }; - - const errors = clientError || serverError; - - let loggerMetadata = {}; - - if (!config.IS_DEV) { - loggerMetadata = { - requestBody: ctx.request.body, - requestQuery: ctx.request.query, - user: userService.getPublic(ctx.state.user), - }; - } - - logger.error(JSON.stringify(errors, null, 4), loggerMetadata); - - if (serverError && config.APP_ENV === 'production') { - serverError.global = 'Something went wrong'; - } - - ctx.status = typedError.status || 500; - ctx.body = { errors }; - } else { - logger.error(`An unexpected error type was caught. Error: ${JSON.stringify(error)}`); - - ctx.status = 500; - ctx.body = { errors: { global: 'An unexpected error occurred' } }; - } - } -}; - -export default routeErrorHandler; diff --git a/examples/prisma/apps/api/src/routes/middlewares/try-to-attach-user.middleware.ts b/examples/prisma/apps/api/src/routes/middlewares/try-to-attach-user.middleware.ts deleted file mode 100644 index 20ead0a54..000000000 --- a/examples/prisma/apps/api/src/routes/middlewares/try-to-attach-user.middleware.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { tokenService } from 'resources/token'; -import { userService } from 'resources/user'; - -import { AppKoaContext, Next } from 'types'; - -const tryToAttachUser = async (ctx: AppKoaContext, next: Next) => { - const { accessToken } = ctx.state; - - const userData = await tokenService.findTokenByValue(accessToken); - - if (userData) { - const user = await userService.findUnique({ - where: { id: userData.userId }, - }); - if (user) { - await userService.updateLastRequest(userData.userId); - - ctx.state.user = user; - ctx.state.isShadow = userData.isShadow ?? false; - } - } - - return next(); -}; - -export default tryToAttachUser; diff --git a/examples/prisma/apps/api/src/routes/private.routes.ts b/examples/prisma/apps/api/src/routes/private.routes.ts deleted file mode 100644 index 39d09c5d6..000000000 --- a/examples/prisma/apps/api/src/routes/private.routes.ts +++ /dev/null @@ -1,14 +0,0 @@ -import compose from 'koa-compose'; -import mount from 'koa-mount'; - -import { accountRoutes } from 'resources/account'; -import { userRoutes } from 'resources/user'; - -import { AppKoa } from 'types'; - -import auth from './middlewares/auth.middleware'; - -export default (app: AppKoa) => { - app.use(mount('/account', compose([auth, accountRoutes.privateRoutes]))); - app.use(mount('/users', compose([auth, userRoutes.privateRoutes]))); -}; diff --git a/examples/prisma/apps/api/src/routes/public.routes.ts b/examples/prisma/apps/api/src/routes/public.routes.ts deleted file mode 100644 index e8639188d..000000000 --- a/examples/prisma/apps/api/src/routes/public.routes.ts +++ /dev/null @@ -1,15 +0,0 @@ -import mount from 'koa-mount'; - -import { accountRoutes } from 'resources/account'; - -import { AppKoa, AppRouter } from 'types'; - -const healthCheckRouter = new AppRouter(); -healthCheckRouter.get('/health', (ctx) => { - ctx.status = 200; -}); - -export default (app: AppKoa) => { - app.use(healthCheckRouter.routes()); - app.use(mount('/account', accountRoutes.publicRoutes)); -}; diff --git a/examples/prisma/apps/api/src/scheduler.ts b/examples/prisma/apps/api/src/scheduler.ts deleted file mode 100644 index 501849ab4..000000000 --- a/examples/prisma/apps/api/src/scheduler.ts +++ /dev/null @@ -1,15 +0,0 @@ -// allows to require modules relative to /src folder -// for example: require('lib/mongo/idGenerator') -// all options can be found here: https://gist.github.com/branneman/8048520 -import moduleAlias from 'module-alias'; // read aliases from package json -moduleAlias.addPath(__dirname); -moduleAlias(); - -import 'dotenv/config'; - -import logger from 'logger'; - -import 'scheduler/cron'; -import 'scheduler/handlers/action.example.handler'; - -logger.info('[Scheduler] Server has been started'); diff --git a/examples/prisma/apps/api/src/scheduler/cron/index.ts b/examples/prisma/apps/api/src/scheduler/cron/index.ts deleted file mode 100644 index 18c48037c..000000000 --- a/examples/prisma/apps/api/src/scheduler/cron/index.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { EventEmitter } from 'events'; -import schedule from 'node-schedule'; - -const eventEmitter = new EventEmitter(); - -schedule.scheduleJob('* * * * *', () => { - eventEmitter.emit('cron:every-minute'); -}); - -schedule.scheduleJob('0 * * * *', () => { - eventEmitter.emit('cron:every-hour'); -}); - -export default eventEmitter; diff --git a/examples/prisma/apps/api/src/scheduler/handlers/action.example.handler.ts b/examples/prisma/apps/api/src/scheduler/handlers/action.example.handler.ts deleted file mode 100644 index f9f92772f..000000000 --- a/examples/prisma/apps/api/src/scheduler/handlers/action.example.handler.ts +++ /dev/null @@ -1,19 +0,0 @@ -import cron from 'scheduler/cron'; - -import config from 'config'; - -import logger from 'logger'; - -const schedule = { - development: 'cron:every-minute', - staging: 'cron:every-minute', - production: 'cron:every-hour', -}; - -cron.on(schedule[config.APP_ENV], async () => { - try { - // Scheduler logic - } catch (error) { - logger.error(error); - } -}); diff --git a/examples/prisma/apps/api/src/services/analytics/analytics.service.ts b/examples/prisma/apps/api/src/services/analytics/analytics.service.ts deleted file mode 100644 index 8bf51c148..000000000 --- a/examples/prisma/apps/api/src/services/analytics/analytics.service.ts +++ /dev/null @@ -1,24 +0,0 @@ -import Mixpanel from 'mixpanel'; - -import config from 'config'; - -import logger from 'logger'; - -const mixpanel = config.MIXPANEL_API_KEY ? Mixpanel.init(config.MIXPANEL_API_KEY, { debug: config.IS_DEV }) : null; - -const track = (event: string, data = {}) => { - if (!mixpanel) { - logger.error('[Mixpanel] The analytics service was not initialized'); - return; - } - - try { - mixpanel.track(event, data); - } catch (e) { - logger.error(e); - } -}; - -export default { - track, -}; diff --git a/examples/prisma/apps/api/src/services/auth/auth.helper.ts b/examples/prisma/apps/api/src/services/auth/auth.helper.ts deleted file mode 100644 index 9fb177d18..000000000 --- a/examples/prisma/apps/api/src/services/auth/auth.helper.ts +++ /dev/null @@ -1,33 +0,0 @@ -import psl from 'psl'; -import url from 'url'; - -import config from 'config'; - -import { COOKIES, TOKEN_SECURITY_EXPIRES_IN } from 'app-constants'; -import { AppKoaContext } from 'types'; - -export const setTokenCookies = ({ ctx, accessToken }: { ctx: AppKoaContext; accessToken: string }) => { - const parsedUrl = url.parse(config.WEB_URL); - - if (!parsedUrl.hostname) { - return; - } - - const parsed = psl.parse(parsedUrl.hostname) as psl.ParsedDomain; - const cookiesDomain = parsed.domain || undefined; - - ctx.cookies.set(COOKIES.ACCESS_TOKEN, accessToken, { - httpOnly: true, - domain: cookiesDomain, - expires: new Date(Date.now() + TOKEN_SECURITY_EXPIRES_IN * 1000), // seconds to milliseconds - }); -}; - -export const unsetTokenCookies = (ctx: AppKoaContext) => { - ctx.cookies.set(COOKIES.ACCESS_TOKEN, null); -}; - -export default { - setTokenCookies, - unsetTokenCookies, -}; diff --git a/examples/prisma/apps/api/src/services/auth/auth.service.ts b/examples/prisma/apps/api/src/services/auth/auth.service.ts deleted file mode 100644 index 7e7b8a5f2..000000000 --- a/examples/prisma/apps/api/src/services/auth/auth.service.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { tokenService } from 'resources/token'; - -import { AppKoaContext } from 'types'; - -import cookieHelper from './auth.helper'; - -const setTokens = async (ctx: AppKoaContext, userId: number, isShadow?: boolean) => { - const { accessToken } = await tokenService.createAuthTokens({ userId, isShadow }); - - if (accessToken) { - cookieHelper.setTokenCookies({ - ctx, - accessToken, - }); - } -}; - -const unsetTokens = async (ctx: AppKoaContext) => { - await tokenService.removeAuthTokens(ctx.state.accessToken); - - cookieHelper.unsetTokenCookies(ctx); -}; - -export default { - setTokens, - unsetTokens, -}; diff --git a/examples/prisma/apps/api/src/services/cloud-storage/cloud-storage.helper.ts b/examples/prisma/apps/api/src/services/cloud-storage/cloud-storage.helper.ts deleted file mode 100644 index 18a89038d..000000000 --- a/examples/prisma/apps/api/src/services/cloud-storage/cloud-storage.helper.ts +++ /dev/null @@ -1,8 +0,0 @@ -export const getFileKey = (url: string | null | undefined) => { - if (!url) return ''; - - const decodedUrl = decodeURI(url); - const { pathname } = new URL(decodedUrl); - - return pathname.substring(1); -}; diff --git a/examples/prisma/apps/api/src/services/cloud-storage/cloud-storage.service.ts b/examples/prisma/apps/api/src/services/cloud-storage/cloud-storage.service.ts deleted file mode 100644 index bb7f13783..000000000 --- a/examples/prisma/apps/api/src/services/cloud-storage/cloud-storage.service.ts +++ /dev/null @@ -1,120 +0,0 @@ -import { - CompleteMultipartUploadCommandOutput, - CopyObjectCommand, - CopyObjectCommandOutput, - DeleteObjectCommand, - DeleteObjectCommandOutput, - GetObjectCommand, - GetObjectOutput, - S3Client, -} from '@aws-sdk/client-s3'; -import { PutObjectCommandInput } from '@aws-sdk/client-s3/dist-types/commands/PutObjectCommand'; -import { Upload } from '@aws-sdk/lib-storage'; -import { getSignedUrl } from '@aws-sdk/s3-request-presigner'; -import fs from 'fs/promises'; - -import { caseUtil } from 'utils'; - -import config from 'config'; - -import { BackendFile, ToCamelCase } from 'types'; - -import * as helpers from './cloud-storage.helper'; - -const client = new S3Client({ - forcePathStyle: false, // Configures to use subdomain/virtual calling format. - region: 'us-east-1', // To successfully create a new bucket, this SDK requires the region to be us-east-1 - endpoint: config.CLOUD_STORAGE_ENDPOINT, - credentials: { - accessKeyId: config.CLOUD_STORAGE_ACCESS_KEY_ID as string, - secretAccessKey: config.CLOUD_STORAGE_SECRET_ACCESS_KEY as string, - }, -}); - -const bucket = config.CLOUD_STORAGE_BUCKET; - -type UploadOutput = ToCamelCase; - -const upload = async (fileName: string, file: BackendFile): Promise => { - const params: PutObjectCommandInput = { - Bucket: bucket, - ContentType: file.mimetype as string, - Body: await fs.readFile(file.filepath as string), - Key: fileName, - ACL: 'private', - }; - - const multipartUpload = new Upload({ - client, - params, - }); - - return multipartUpload.done().then((value) => caseUtil.toCamelCase(value)); -}; - -const uploadPublic = async (fileName: string, file: BackendFile): Promise => { - const params: PutObjectCommandInput = { - Bucket: bucket, - ContentType: file.mimetype as string, - Body: await fs.readFile(file.filepath as string), - Key: fileName, - ACL: 'public-read', - }; - - const multipartUpload = new Upload({ - client, - params, - }); - - return multipartUpload.done().then((value) => caseUtil.toCamelCase(value)); -}; - -const getSignedDownloadUrl = (fileName: string): Promise => { - const command = new GetObjectCommand({ - Bucket: bucket, - Key: fileName, - }); - - return getSignedUrl(client, command, { expiresIn: 1800 }); -}; - -const getObject = (fileName: string): Promise => { - const command = new GetObjectCommand({ - Bucket: bucket, - Key: fileName, - }); - - return client.send(command); -}; - -type CopyOutput = ToCamelCase; - -const copyObject = async (filePath: string, copyFilePath: string): Promise => { - const command = new CopyObjectCommand({ - Bucket: bucket, - CopySource: encodeURI(`${bucket}/${copyFilePath}`), - Key: filePath, - }); - - return client.send(command).then((value) => caseUtil.toCamelCase(value)); -}; - -type DeleteOutput = ToCamelCase; - -const deleteObject = async (fileName: string): Promise => { - const command = new DeleteObjectCommand({ - Bucket: bucket, - Key: fileName, - }); - - return client.send(command).then((value) => caseUtil.toCamelCase(value)); -}; - -export default Object.assign(helpers, { - upload, - uploadPublic, - getObject, - copyObject, - deleteObject, - getSignedDownloadUrl, -}); diff --git a/examples/prisma/apps/api/src/services/email/email.service.ts b/examples/prisma/apps/api/src/services/email/email.service.ts deleted file mode 100644 index 84ad63c66..000000000 --- a/examples/prisma/apps/api/src/services/email/email.service.ts +++ /dev/null @@ -1,56 +0,0 @@ -import { renderEmailHtml, Template } from 'mailer'; -import { Resend } from 'resend'; - -import config from 'config'; - -import logger from 'logger'; - -import { EmailServiceConstructorProps, From, SendTemplateParams } from './email.types'; - -class EmailService { - resend?: Resend; - - apiKey: string | undefined; - - from: From; - - constructor({ apiKey, from }: EmailServiceConstructorProps) { - this.apiKey = apiKey; - this.from = from; - - if (apiKey) this.resend = new Resend(apiKey); - } - - async sendTemplate({ to, subject, template, params, attachments }: SendTemplateParams) { - if (!this.resend) { - logger.error('[Resend] API key is not provided'); - logger.debug('[Resend] Email data:'); - logger.debug({ subject, template, params }); - - return null; - } - - const html = await renderEmailHtml({ template, params }); - - return this.resend.emails - .send({ - from: `${this.from.name} <${this.from.email}>`, - to, - subject, - html, - attachments, - }) - .then(() => { - logger.debug(`[Resend] Sent email to ${to}.`); - logger.debug({ subject, template, params }); - }); - } -} - -export default new EmailService({ - apiKey: config.RESEND_API_KEY, - from: { - email: 'no-reply@ship.paralect.com', - name: 'Ship', - }, -}); diff --git a/examples/prisma/apps/api/src/services/email/email.types.ts b/examples/prisma/apps/api/src/services/email/email.types.ts deleted file mode 100644 index 0d10102d8..000000000 --- a/examples/prisma/apps/api/src/services/email/email.types.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { Template, TemplateProps } from 'mailer'; - -export type From = { - email: string; - name: string; -}; - -export interface EmailServiceConstructorProps { - apiKey: string | undefined; - from: From; -} - -interface Attachment { - /** Content of an attached file. */ - content?: string | Buffer; - /** Name of attached file. */ - filename?: string | false | undefined; - /** Path where the attachment file is hosted */ - path?: string; -} - -export interface SendTemplateParams { - to: string | string[]; - subject: string; - template: T; - params: TemplateProps[T]; - attachments?: Attachment[]; -} diff --git a/examples/prisma/apps/api/src/services/google/google.service.ts b/examples/prisma/apps/api/src/services/google/google.service.ts deleted file mode 100644 index b102127d9..000000000 --- a/examples/prisma/apps/api/src/services/google/google.service.ts +++ /dev/null @@ -1,61 +0,0 @@ -import { OAuth2Client, TokenPayload } from 'google-auth-library'; -import _ from 'lodash'; - -import { caseUtil } from 'utils'; - -import config from 'config'; - -import { ToCamelCase } from 'types'; - -const client = new OAuth2Client( - config.GOOGLE_CLIENT_ID, - config.GOOGLE_CLIENT_SECRET, - `${config.API_URL}/account/sign-in/google`, -); - -const oAuthURL = client.generateAuthUrl({ - access_type: 'offline', - scope: ['email', 'profile'], - include_granted_scopes: true, -}); - -type ConvertedPayload = ToCamelCase | undefined; - -type ExchangeResponse = { - isValid: boolean; - payload: ConvertedPayload | Error | null; -}; - -const exchangeCodeForToken = async (code?: string | string[] | undefined): Promise => { - if (!code || _.isArray(code)) { - return { isValid: false, payload: new Error('Code not found') }; - } - - try { - const { tokens } = await client.getToken(code); - - if (!tokens.id_token) { - return { isValid: false, payload: new Error('ID token not found') }; - } - - const loginTicket = await client.verifyIdToken({ - idToken: tokens.id_token, - audience: config.GOOGLE_CLIENT_ID, - }); - - const payload = caseUtil.toCamelCase(loginTicket.getPayload()); - - return { isValid: true, payload }; - } catch (e) { - if (e instanceof Error) { - return { isValid: false, payload: e }; - } - - return { isValid: false, payload: new Error(`Unknown error: ${e}`) }; - } -}; - -export default { - oAuthURL, - exchangeCodeForToken, -}; diff --git a/examples/prisma/apps/api/src/services/index.ts b/examples/prisma/apps/api/src/services/index.ts deleted file mode 100644 index b16215d8f..000000000 --- a/examples/prisma/apps/api/src/services/index.ts +++ /dev/null @@ -1,8 +0,0 @@ -import analyticsService from './analytics/analytics.service'; -import authService from './auth/auth.service'; -import cloudStorageService from './cloud-storage/cloud-storage.service'; -import emailService from './email/email.service'; -import googleService from './google/google.service'; -import socketService from './socket/socket.service'; - -export { analyticsService, authService, cloudStorageService, emailService, googleService, socketService }; diff --git a/examples/prisma/apps/api/src/services/socket/socket.helper.ts b/examples/prisma/apps/api/src/services/socket/socket.helper.ts deleted file mode 100644 index 2671aa324..000000000 --- a/examples/prisma/apps/api/src/services/socket/socket.helper.ts +++ /dev/null @@ -1,31 +0,0 @@ -const getCookie = (cookieString: string, name: string) => { - const value = `; ${cookieString}`; - const parts = value.split(`; ${name}=`); - if (parts && parts.length === 2) { - const part = parts.pop(); - if (!part) { - return null; - } - - return part.split(';').shift(); - } - - return null; -}; - -const checkAccessToRoom = (roomId: string, data: { userId: string }) => { - const [roomType, ...rest] = roomId.split('-'); - const id = rest.join('-'); - - switch (roomType) { - case 'user': - return id === data.userId; - default: - return false; - } -}; - -export default { - getCookie, - checkAccessToRoom, -}; diff --git a/examples/prisma/apps/api/src/services/socket/socket.service.ts b/examples/prisma/apps/api/src/services/socket/socket.service.ts deleted file mode 100644 index 384a61cff..000000000 --- a/examples/prisma/apps/api/src/services/socket/socket.service.ts +++ /dev/null @@ -1,59 +0,0 @@ -import { createAdapter } from '@socket.io/redis-adapter'; -import http from 'http'; -import { Server } from 'socket.io'; - -import { tokenService } from 'resources/token'; - -import pubClient, { redisErrorHandler } from 'redis-client'; - -import logger from 'logger'; - -import { COOKIES } from 'app-constants'; - -import socketHelper from './socket.helper'; - -export default (server: http.Server) => { - const io = new Server(server); - - const subClient = pubClient.duplicate(); - - subClient.on('error', redisErrorHandler); - - io.adapter(createAdapter(pubClient, subClient)); - - logger.info('[Socket.io] Server initialized successfully.'); - - io.use(async (socket, next) => { - if (!socket.handshake.headers.cookie) return next(new Error('Cookie not found')); - - const accessToken = socketHelper.getCookie(socket.handshake.headers.cookie, COOKIES.ACCESS_TOKEN); - - if (typeof accessToken === 'string') { - const tokenData = await tokenService.findTokenByValue(accessToken); - if (tokenData) { - socket.data = { - userId: tokenData.userId, - }; - - return next(); - } - } - - return next(new Error('Token is invalid')); - }); - - io.on('connection', (socket) => { - socket.on('subscribe', (roomId: string) => { - const { userId } = socket.data; - const hasAccessToRoom = socketHelper.checkAccessToRoom(roomId, { userId }); - - if (hasAccessToRoom) { - socket.join(roomId); - } - }); - - socket.on('unsubscribe', (roomId) => { - socket.leave(roomId); - }); - }); -}; diff --git a/examples/prisma/apps/api/src/types.ts b/examples/prisma/apps/api/src/types.ts deleted file mode 100644 index 89c5cef4d..000000000 --- a/examples/prisma/apps/api/src/types.ts +++ /dev/null @@ -1,38 +0,0 @@ -import Router from '@koa/router'; -import { User } from 'app-types'; -import Koa, { Next, ParameterizedContext, Request } from 'koa'; -import { Template } from 'mailer'; - -export * from 'app-types'; - -export type AppKoaContextState = { - user: User; - accessToken: string; - isShadow: boolean | null; -}; - -export type CustomErrors = { - [name: string]: string; -}; - -export interface AppKoaContext extends ParameterizedContext { - ctx: never; - request: Request & R; - validatedData: T & object; - throwError: (message: string, status?: number) => never; - assertError: (condition: unknown, message: string, status?: number) => asserts condition; - throwClientError: (errors: CustomErrors, status?: number) => never; - assertClientError: (condition: unknown, errors: CustomErrors, status?: number) => asserts condition; -} - -export class AppRouter extends Router {} - -export class AppKoa extends Koa {} - -export type AppRouterMiddleware = Router.Middleware; - -export type ValidationErrors = { - [name: string]: string[] | string; -}; - -export { Next, Template }; diff --git a/examples/prisma/apps/api/src/utils/case.util.ts b/examples/prisma/apps/api/src/utils/case.util.ts deleted file mode 100644 index 8c096c2d3..000000000 --- a/examples/prisma/apps/api/src/utils/case.util.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { camelCase, isArray, isObject, transform } from 'lodash'; - -type NonNullableObject = Record; - -export const toCamelCase = (object: T): T => { - if (object === null || object === undefined) { - return object; - } - - const transformObject = (input: NonNullableObject): NonNullableObject => - transform(input, (result: NonNullableObject, value, key) => { - const camelKey = camelCase(key); - - if (isObject(value) && !isArray(value)) { - result[camelKey] = transformObject(value as NonNullableObject); - } else if (isArray(value)) { - result[camelKey] = value.map((item) => (isObject(item) ? transformObject(item as NonNullableObject) : item)); - } else { - result[camelKey] = value; - } - }); - - return isObject(object) && !isArray(object) ? (transformObject(object as NonNullableObject) as T) : object; -}; diff --git a/examples/prisma/apps/api/src/utils/config.util.ts b/examples/prisma/apps/api/src/utils/config.util.ts deleted file mode 100644 index 3a3c46ae7..000000000 --- a/examples/prisma/apps/api/src/utils/config.util.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { ZodSchema } from 'zod'; - -const validateConfig = (schema: ZodSchema): T => { - const parsed = schema.safeParse(process.env); - - if (!parsed.success) { - // Allow the use of a console instance for logging before launching the application. - // eslint-disable-next-line no-console - console.error('❌ Invalid environment variables:', parsed.error.flatten().fieldErrors); - - throw new Error('Invalid environment variables'); - } - - return parsed.data; -}; - -export default { - validateConfig, -}; diff --git a/examples/prisma/apps/api/src/utils/index.ts b/examples/prisma/apps/api/src/utils/index.ts deleted file mode 100644 index e0535ebd6..000000000 --- a/examples/prisma/apps/api/src/utils/index.ts +++ /dev/null @@ -1,9 +0,0 @@ -import * as caseUtil from './case.util'; -import configUtil from './config.util'; -import objectUtil from './object.util'; -import promiseUtil from './promise.util'; -import routeUtil from './routes.util'; -import securityUtil from './security.util'; -import stringUtil from './string.util'; - -export { caseUtil, configUtil, objectUtil, promiseUtil, routeUtil, securityUtil, stringUtil }; diff --git a/examples/prisma/apps/api/src/utils/object.util.ts b/examples/prisma/apps/api/src/utils/object.util.ts deleted file mode 100644 index 7178079d9..000000000 --- a/examples/prisma/apps/api/src/utils/object.util.ts +++ /dev/null @@ -1,10 +0,0 @@ -import _ from 'lodash'; - -const flattenObject = (obj: object, path: string[] = []): Record => - _.isObject(obj) - ? Object.entries(obj).reduce((cur, [key, value]) => _.merge(cur, flattenObject(value, [...path, key])), {}) - : { [path.join('.')]: obj }; - -export default { - flattenObject, -}; diff --git a/examples/prisma/apps/api/src/utils/promise.util.ts b/examples/prisma/apps/api/src/utils/promise.util.ts deleted file mode 100644 index cc3614781..000000000 --- a/examples/prisma/apps/api/src/utils/promise.util.ts +++ /dev/null @@ -1,49 +0,0 @@ -import _ from 'lodash'; - -const promiseLimit = (documents: T[], limit: number, operator: (document: T) => Promise): Promise => { - const chunks = _.chunk(documents, limit); - - return chunks.reduce>(async (previousPromise, chunk) => { - await previousPromise; - - const operations = chunk.map(operator); - - await Promise.all(operations); - }, Promise.resolve()); -}; - -const promiseQueue = async ( - documents: T[], - limit: number, - operator: (document: T) => Promise, -): Promise => { - let activePromises = 0; - let currentIndex = 0; - - const runNext = async () => { - if (currentIndex >= documents.length || activePromises >= limit) { - return; - } - - activePromises += 1; - const task = operator(documents[(currentIndex += 1)]); - - task.finally(() => { - activePromises -= 1; - runNext(); - }); - - if (activePromises < limit) { - runNext(); - } - }; - - runNext(); - - await Promise.all(Array.from({ length: Math.min(limit, documents.length) }, runNext)); -}; - -export default { - promiseLimit, - promiseQueue, -}; diff --git a/examples/prisma/apps/api/src/utils/routes.util.ts b/examples/prisma/apps/api/src/utils/routes.util.ts deleted file mode 100644 index edf7f292d..000000000 --- a/examples/prisma/apps/api/src/utils/routes.util.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { AppRouter, AppRouterMiddleware } from 'types'; - -export type RegisterRouteFunc = (router: AppRouter) => void; - -const getRoutes = (routeFunctions: RegisterRouteFunc[]): AppRouterMiddleware => { - const router = new AppRouter(); - - routeFunctions.forEach((func: RegisterRouteFunc) => { - func(router); - }); - - return router.routes(); -}; - -export default { - getRoutes, -}; diff --git a/examples/prisma/apps/api/src/utils/security.util.ts b/examples/prisma/apps/api/src/utils/security.util.ts deleted file mode 100644 index 9371aabd8..000000000 --- a/examples/prisma/apps/api/src/utils/security.util.ts +++ /dev/null @@ -1,75 +0,0 @@ -import bcrypt from 'bcryptjs'; -import crypto from 'crypto'; -import jwt, { JwtPayload } from 'jsonwebtoken'; - -import config from 'config'; - -import { TOKEN_SECURITY_EXPIRES_IN } from 'app-constants'; - -/** - * @desc Generates random string, useful for creating secure tokens - * - * @return {string} - random string - */ -export const generateSecureToken = async (tokenLength = 48) => { - const buffer = crypto.randomBytes(tokenLength); - - return buffer.toString('hex'); -}; - -/** - * @desc Generate hash from any string. Could be used to generate a hash from password - * - * @param text {string} - a text to produce hash from - * @return {Promise} - a hash from input text - */ -export const getHash = (text: string) => bcrypt.hash(text, 10); - -/** - * @desc Compares if text and hash are equal - * - * @param text {string} - a text to compare with hash - * @param hash {string} - a hash to compare with text - * @return {Promise} - are hash and text equal - */ -export const compareTextWithHash = (text: string, hash: string) => bcrypt.compare(text, hash); - -/** - * @desc Generates a JWT token with a secret - * - * @param payload {object} - Payload to include in the token - * @param expiresIn {string | number} - Expiry time for the token - * @return {string} - JWT token - */ - -export const generateJwtToken = async (payload: T) => { - const secret = config.JWT_SECRET; - const expiresIn = TOKEN_SECURITY_EXPIRES_IN; - - return jwt.sign(payload, secret, { expiresIn }); -}; - -/** - * @desc Verifies a JWT token and returns the payload - * - * @param token {string} - JWT token to verify - * @return {object | null} - Decoded payload or null if verification fails - */ -export const verifyJwtToken = async (token: string): Promise<(T & JwtPayload) | null> => { - try { - const secret = config.JWT_SECRET; - - return jwt.verify(token, secret) as T; - } catch (error) { - logger.debug(`Token verification failed with error: ${error}`); - return null; - } -}; - -export default { - generateSecureToken, - getHash, - compareTextWithHash, - generateJwtToken, - verifyJwtToken, -}; diff --git a/examples/prisma/apps/api/src/utils/string.util.ts b/examples/prisma/apps/api/src/utils/string.util.ts deleted file mode 100644 index e1411ead3..000000000 --- a/examples/prisma/apps/api/src/utils/string.util.ts +++ /dev/null @@ -1,9 +0,0 @@ -const escapeRegExpString = (searchString: string): RegExp => { - const escapedString = searchString.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); - - return new RegExp(escapedString, 'gi'); -}; - -export default { - escapeRegExpString, -}; diff --git a/examples/prisma/apps/api/tsconfig.json b/examples/prisma/apps/api/tsconfig.json deleted file mode 100644 index 96a3785f2..000000000 --- a/examples/prisma/apps/api/tsconfig.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "extends": "tsconfig/nodejs.json", - "compilerOptions": { - "rootDir": ".", - "baseUrl": "src", - "jsx": "react" // for using Mailer - }, - "include": ["**/*.ts", "**/*.json"] -} diff --git a/examples/prisma/apps/web/.dockerignore b/examples/prisma/apps/web/.dockerignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/prisma/apps/web/.dockerignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/prisma/apps/web/.env.development b/examples/prisma/apps/web/.env.development deleted file mode 100644 index e6f6638aa..000000000 --- a/examples/prisma/apps/web/.env.development +++ /dev/null @@ -1,9 +0,0 @@ -# When adding additional environment variables, the schema in "src/config/index.ts" -# should be updated accordingly. - -NEXT_PUBLIC_API_URL=http://localhost:3001 -NEXT_PUBLIC_WS_URL=http://localhost:3001 -NEXT_PUBLIC_WEB_URL=http://localhost:3002 - -# Mixpanel -# NEXT_PUBLIC_MIXPANEL_API_KEY=... diff --git a/examples/prisma/apps/web/.env.production b/examples/prisma/apps/web/.env.production deleted file mode 100644 index 4bd4d0ee5..000000000 --- a/examples/prisma/apps/web/.env.production +++ /dev/null @@ -1,9 +0,0 @@ -# When adding additional environment variables, the schema in "src/config/index.ts" -# should be updated accordingly. - -NEXT_PUBLIC_API_URL=https://api.demo.ship.paralect.com -NEXT_PUBLIC_WS_URL=https://api.demo.ship.paralect.com -NEXT_PUBLIC_WEB_URL=https://demo.ship.paralect.com - -# Mixpanel -# NEXT_PUBLIC_MIXPANEL_API_KEY=... diff --git a/examples/prisma/apps/web/.env.staging b/examples/prisma/apps/web/.env.staging deleted file mode 100644 index ee4b731bc..000000000 --- a/examples/prisma/apps/web/.env.staging +++ /dev/null @@ -1,9 +0,0 @@ -# When adding additional environment variables, the schema in "src/config/index.ts" -# should be updated accordingly. - -NEXT_PUBLIC_API_URL=https://api.staging.ship.paralect.com -NEXT_PUBLIC_WS_URL=https://api.staging.ship.paralect.com -NEXT_PUBLIC_WEB_URL=https://staging.ship.paralect.com - -# Mixpanel -# NEXT_PUBLIC_MIXPANEL_API_KEY=... diff --git a/examples/prisma/apps/web/.eslintignore b/examples/prisma/apps/web/.eslintignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/prisma/apps/web/.eslintignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/prisma/apps/web/.eslintrc.js b/examples/prisma/apps/web/.eslintrc.js deleted file mode 100644 index edff7e224..000000000 --- a/examples/prisma/apps/web/.eslintrc.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = { - root: true, - extends: ['custom/next'], -}; diff --git a/examples/prisma/apps/web/.gitignore b/examples/prisma/apps/web/.gitignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/prisma/apps/web/.gitignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/prisma/apps/web/.npmrc b/examples/prisma/apps/web/.npmrc deleted file mode 100644 index 9e8e12ac0..000000000 --- a/examples/prisma/apps/web/.npmrc +++ /dev/null @@ -1,3 +0,0 @@ -save-exact=true -package-import-method=copy -auto-install-peers=true diff --git a/examples/prisma/apps/web/.prettierignore b/examples/prisma/apps/web/.prettierignore deleted file mode 100644 index f5d5171f3..000000000 --- a/examples/prisma/apps/web/.prettierignore +++ /dev/null @@ -1,38 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo - -# docker -Dockerfile - -.prettierignore diff --git a/examples/prisma/apps/web/.prettierrc.json b/examples/prisma/apps/web/.prettierrc.json deleted file mode 100644 index ba63a7c68..000000000 --- a/examples/prisma/apps/web/.prettierrc.json +++ /dev/null @@ -1 +0,0 @@ -"prettier-config-custom" diff --git a/examples/prisma/apps/web/.storybook/main.ts b/examples/prisma/apps/web/.storybook/main.ts deleted file mode 100644 index 35114da01..000000000 --- a/examples/prisma/apps/web/.storybook/main.ts +++ /dev/null @@ -1,18 +0,0 @@ -import type { StorybookConfig } from '@storybook/nextjs'; - -const config: StorybookConfig = { - framework: '@storybook/nextjs', - addons: ['@storybook/addon-controls', '@storybook/addon-styling-webpack', 'storybook-dark-mode'], - stories: [ - { - directory: '../src/components', - titlePrefix: 'Application Components', - }, - { - directory: '../src/theme/components', - titlePrefix: 'UI Kit', - }, - ], -}; - -export default config; diff --git a/examples/prisma/apps/web/.storybook/preview.tsx b/examples/prisma/apps/web/.storybook/preview.tsx deleted file mode 100644 index af43c204e..000000000 --- a/examples/prisma/apps/web/.storybook/preview.tsx +++ /dev/null @@ -1,27 +0,0 @@ -import '@mantine/core/styles.css'; - -import { ReactNode, useEffect } from 'react'; -import { addons } from '@storybook/preview-api'; -import { DARK_MODE_EVENT_NAME } from 'storybook-dark-mode'; -import { MantineProvider, useMantineColorScheme } from '@mantine/core'; - -import theme from '../src/theme'; - -const channel = addons.getChannel(); - -const ColorSchemeWrapper = ({ children }: { children: ReactNode }) => { - const { setColorScheme } = useMantineColorScheme(); - const handleColorScheme = (value: boolean) => setColorScheme(value ? 'dark' : 'light'); - - useEffect(() => { - channel.on(DARK_MODE_EVENT_NAME, handleColorScheme); - return () => channel.off(DARK_MODE_EVENT_NAME, handleColorScheme); - }, [channel]); - - return <>{children}; -}; - -export const decorators = [ - (renderStory: any) => {renderStory()}, - (renderStory: any) => {renderStory()}, -]; diff --git a/examples/prisma/apps/web/.stylelintrc.json b/examples/prisma/apps/web/.stylelintrc.json deleted file mode 100644 index 4ea6506d9..000000000 --- a/examples/prisma/apps/web/.stylelintrc.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "extends": ["stylelint-config-standard-scss"], - "rules": { - "custom-property-pattern": null, - "selector-class-pattern": null, - "scss/no-duplicate-mixins": null, - "declaration-empty-line-before": null, - "declaration-block-no-redundant-longhand-properties": null, - "alpha-value-notation": null, - "custom-property-empty-line-before": null, - "property-no-vendor-prefix": null, - "color-function-notation": null, - "length-zero-no-unit": null, - "selector-not-notation": null, - "no-descending-specificity": null, - "comment-empty-line-before": null, - "scss/at-mixin-pattern": null, - "scss/at-rule-no-unknown": null, - "value-keyword-case": null, - "media-feature-range-notation": null, - "selector-pseudo-class-no-unknown": [ - true, - { - "ignorePseudoClasses": ["global"] - } - ] - } -} diff --git a/examples/prisma/apps/web/Dockerfile b/examples/prisma/apps/web/Dockerfile deleted file mode 100644 index 05db5d39a..000000000 --- a/examples/prisma/apps/web/Dockerfile +++ /dev/null @@ -1,64 +0,0 @@ -# BUILDER - Stage 1 -FROM node:alpine AS builder -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund turbo@2.0.6 -COPY . . -RUN turbo prune --scope=web --docker - -# INSTALLER - Stage 2 -FROM node:alpine AS installer -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund pnpm@9.5.0 - -# First install the dependencies (as they change less often) -COPY --from=builder /app/out/pnpm-lock.yaml ./pnpm-lock.yaml -RUN pnpm fetch - -# Build the project and its dependencies -COPY --from=builder /app/out/pnpm-workspace.yaml ./pnpm-workspace.yaml -COPY --from=builder /app/out/full/ . -RUN pnpm install -r --prefer-offline --ignore-scripts -COPY --from=builder /app/out/full/turbo.json ./turbo.json - -# Generation prisma types -WORKDIR /app/packages/database -RUN npx prisma generate -WORKDIR /app - -# DEVELOPMENT - Stage 3 -FROM installer AS development -CMD pnpm turbo run dev --filter=web - -# APP_BUILDER - Stage 4 -FROM installer AS app_builder - -ARG APP_ENV -ENV NEXT_PUBLIC_APP_ENV=$APP_ENV - -RUN pnpm turbo run build --filter=web... - -# RUNNER - Stage 5 -FROM node:alpine AS runner -WORKDIR /app - -# Don't run production as root -RUN addgroup --system --gid 1001 nodejs -RUN adduser --system --uid 1001 nextjs -USER nextjs - -COPY --from=app_builder /app/apps/web/next.config.js . -COPY --from=app_builder /app/apps/web/package.json . - -# Automatically leverage output traces to reduce image size -# https://nextjs.org/docs/advanced-features/output-file-tracing -COPY --from=app_builder --chown=nextjs:nodejs /app/apps/web/.next/standalone ./ -COPY --from=app_builder --chown=nextjs:nodejs /app/apps/web/.next/static ./apps/web/.next/static -COPY --from=app_builder --chown=nextjs:nodejs /app/apps/web/public ./apps/web/public - -EXPOSE 3002 - -CMD ["node", "apps/web/server.js"] diff --git a/examples/prisma/apps/web/README.md b/examples/prisma/apps/web/README.md deleted file mode 100644 index 3246606b4..000000000 --- a/examples/prisma/apps/web/README.md +++ /dev/null @@ -1,51 +0,0 @@ -# Web Component - -This is a [Next.js](https://nextjs.org/) web application starter, -designed to streamline the development of web frontends by addressing common setup and infrastructure tasks, -allowing developers to focus on unique features and business logic. - -For more detailed information, -refer to the [API section in Ship documentation](https://ship.paralect.com/docs/web/overview). - -## Getting Started - -### Running the Application - -You can start the application in two ways: - -1. **Independent Start**: Navigate to the `web` folder and run: - ```sh - pnpm run dev - ``` -2. **Root Start**: From the root of the project, run: - ```sh - pnpm start - ``` - -## Features - -### Styling - -- Leverage [Mantine](https://mantine.dev/) for robust UI development. Detailed styling guide available [here](https://ship.paralect.com/docs/web/styling). - -### API Interactions - -- Manage API calls efficiently using [Axios](https://axios-http.com/) and handle server state with [@tanstack/react-query](https://tanstack.com/query). Details on API interactions are [here](https://ship.paralect.com/docs/web/calling-api). - -### Form Handling - -- Implement forms using [React Hook Form](https://react-hook-form.com/) integrated with [Zod](https://zod.dev/) for schema validation. Explore more on form handling [here](https://ship.paralect.com/docs/web/forms). - -### Services - -- Use built-in service architecture for clean separation of concerns. Service implementation details can be found [here](https://ship.paralect.com/docs/web/services). - -### Environment Variables - -- Secure and manage application configuration using environment-specific `.env` files. Learn about managing environment variables [here](https://ship.paralect.com/docs/web/environment-variables). - -## Development Tools - -- **Storybook**: Develop UI components in isolation with [Storybook](https://storybook.js.org/), enhancing UI consistency and speeding up the development process. -- **Linting and Formatting**: Enforce coding standards using [ESLint](https://eslint.org/) and [Prettier](https://prettier.io/). -- **TypeScript**: Leverage TypeScript for safer and more reliable coding thanks to static type checking. diff --git a/examples/prisma/apps/web/next-env.d.ts b/examples/prisma/apps/web/next-env.d.ts deleted file mode 100644 index a4a7b3f5c..000000000 --- a/examples/prisma/apps/web/next-env.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -/// -/// - -// NOTE: This file should not be edited -// see https://nextjs.org/docs/pages/building-your-application/configuring/typescript for more information. diff --git a/examples/prisma/apps/web/next.config.js b/examples/prisma/apps/web/next.config.js deleted file mode 100644 index 270e81583..000000000 --- a/examples/prisma/apps/web/next.config.js +++ /dev/null @@ -1,40 +0,0 @@ -const dotenv = require('dotenv-flow'); -const { join } = require('path'); - -const dotenvConfig = dotenv.config({ - node_env: process.env.NEXT_PUBLIC_APP_ENV, - silent: true, -}); - -/** @type {import('next').NextConfig} */ -module.exports = { - env: dotenvConfig.parsed, - webpack(config) { - config.module.rules.push({ - test: /\.svg$/, - use: ['@svgr/webpack'], - }); - - return config; - }, - reactStrictMode: true, - output: 'standalone', - experimental: { - // this includes files from the monorepo base two directories up - outputFileTracingRoot: join(__dirname, '../../'), - }, - pageExtensions: ['page.tsx', 'api.ts'], - transpilePackages: ['app-constants', 'schemas', 'types'], - i18n: { - locales: ['en-US'], - defaultLocale: 'en-US', - }, - images: { - remotePatterns: [ - { - protocol: 'https', - hostname: '**.digitaloceanspaces.com', - }, - ], - }, -}; diff --git a/examples/prisma/apps/web/package.json b/examples/prisma/apps/web/package.json deleted file mode 100644 index 92138093e..000000000 --- a/examples/prisma/apps/web/package.json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "name": "web", - "version": "1.0.0", - "description": "Next.js web", - "author": "Paralect", - "license": "MIT", - "scripts": { - "build": "next build", - "dev": "next dev -p 3002", - "start": "next start -p 3002", - "storybook": "storybook dev -p 6006", - "build-storybook": "storybook build", - "tsc": "tsc --noEmit --watch", - "prettier": "prettier . --write --config .prettierrc.json", - "eslint": "eslint . --fix", - "precommit": "lint-staged" - }, - "dependencies": { - "@hookform/resolvers": "3.3.4", - "@mantine/core": "7.15.1", - "@mantine/dates": "7.15.1", - "@mantine/dropzone": "7.15.1", - "@mantine/hooks": "7.15.1", - "@mantine/modals": "7.15.1", - "@mantine/next": "6.0.22", - "@mantine/notifications": "7.15.1", - "@svgr/webpack": "8.1.0", - "@tabler/icons-react": "3.10.0", - "@tanstack/react-query": "5.50.1", - "@tanstack/react-table": "8.19.2", - "app-constants": "workspace:*", - "app-types": "workspace:*", - "axios": "1.7.2", - "clsx": "2.1.1", - "dayjs": "1.11.10", - "dotenv-flow": "4.1.0", - "lodash": "4.17.21", - "mixpanel-browser": "2.53.0", - "next": "14.2.10", - "object-to-formdata": "4.5.1", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-hook-form": "7.52.1", - "schemas": "workspace:*", - "socket.io-client": "4.7.5", - "zod": "3.21.4" - }, - "devDependencies": { - "@storybook/addon-controls": "8.4.7", - "@storybook/addon-styling-webpack": "1.0.1", - "@storybook/nextjs": "8.4.7", - "@storybook/preview-api": "8.4.7", - "@storybook/react": "8.4.7", - "@tanstack/react-query-devtools": "5.50.1", - "@types/lodash": "4.17.6", - "@types/mixpanel-browser": "2.49.0", - "@types/node": "22.10.10", - "@types/react": "18.3.3", - "@types/react-dom": "18.3.0", - "eslint": "8.56.0", - "eslint-config-custom": "workspace:*", - "lint-staged": "15.2.7", - "postcss": "8.4.47", - "postcss-preset-mantine": "1.17.0", - "postcss-simple-vars": "7.0.1", - "prettier": "3.3.2", - "prettier-config-custom": "workspace:*", - "storybook": "8.4.7", - "storybook-dark-mode": "4.0.2", - "stylelint": "16.10.0", - "stylelint-config-standard-scss": "13.1.0", - "tsconfig": "workspace:*", - "typescript": "5.2.2" - }, - "lint-staged": { - "*.{ts,tsx}": [ - "eslint --fix", - "bash -c 'tsc --noEmit'", - "prettier --write" - ], - "*.css": [ - "stylelint --fix", - "prettier --write" - ], - "!(*.css|*.ts|*.tsx)": [ - "prettier --write" - ] - } -} diff --git a/examples/prisma/apps/web/postcss.config.js b/examples/prisma/apps/web/postcss.config.js deleted file mode 100644 index bfba0ddfa..000000000 --- a/examples/prisma/apps/web/postcss.config.js +++ /dev/null @@ -1,14 +0,0 @@ -module.exports = { - plugins: { - 'postcss-preset-mantine': {}, - 'postcss-simple-vars': { - variables: { - 'mantine-breakpoint-xs': '36em', - 'mantine-breakpoint-sm': '48em', - 'mantine-breakpoint-md': '62em', - 'mantine-breakpoint-lg': '75em', - 'mantine-breakpoint-xl': '88em', - }, - }, - }, -}; diff --git a/examples/prisma/apps/web/public/favicon.ico b/examples/prisma/apps/web/public/favicon.ico deleted file mode 100644 index 49a2d8994..000000000 Binary files a/examples/prisma/apps/web/public/favicon.ico and /dev/null differ diff --git a/examples/prisma/apps/web/public/icons/google.svg b/examples/prisma/apps/web/public/icons/google.svg deleted file mode 100644 index 4cb6a2dfa..000000000 --- a/examples/prisma/apps/web/public/icons/google.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/examples/prisma/apps/web/public/icons/index.ts b/examples/prisma/apps/web/public/icons/index.ts deleted file mode 100644 index 2ef4d1762..000000000 --- a/examples/prisma/apps/web/public/icons/index.ts +++ /dev/null @@ -1 +0,0 @@ -export { default as GoogleIcon } from './google.svg'; diff --git a/examples/prisma/apps/web/public/images/index.ts b/examples/prisma/apps/web/public/images/index.ts deleted file mode 100644 index 04bfdf9d1..000000000 --- a/examples/prisma/apps/web/public/images/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { default as LogoImage } from './logo.svg'; -export { default as ShipLightImage } from './ship-light.svg'; diff --git a/examples/prisma/apps/web/public/images/logo.svg b/examples/prisma/apps/web/public/images/logo.svg deleted file mode 100644 index 15cab7c8e..000000000 --- a/examples/prisma/apps/web/public/images/logo.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/examples/prisma/apps/web/public/images/ship-flight.svg b/examples/prisma/apps/web/public/images/ship-flight.svg deleted file mode 100644 index dfea4a722..000000000 --- a/examples/prisma/apps/web/public/images/ship-flight.svg +++ /dev/null @@ -1,216 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/prisma/apps/web/public/images/ship-light.svg b/examples/prisma/apps/web/public/images/ship-light.svg deleted file mode 100644 index f7250afb1..000000000 --- a/examples/prisma/apps/web/public/images/ship-light.svg +++ /dev/null @@ -1,50 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/prisma/apps/web/public/images/ship.svg b/examples/prisma/apps/web/public/images/ship.svg deleted file mode 100644 index f242c2bf7..000000000 --- a/examples/prisma/apps/web/public/images/ship.svg +++ /dev/null @@ -1,242 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/prisma/apps/web/public/robots.txt b/examples/prisma/apps/web/public/robots.txt deleted file mode 100644 index f6e6d1d41..000000000 --- a/examples/prisma/apps/web/public/robots.txt +++ /dev/null @@ -1,2 +0,0 @@ -User-Agent: * -Allow: / diff --git a/examples/prisma/apps/web/src/components/Table/EmptyState/index.tsx b/examples/prisma/apps/web/src/components/Table/EmptyState/index.tsx deleted file mode 100644 index 7883f2098..000000000 --- a/examples/prisma/apps/web/src/components/Table/EmptyState/index.tsx +++ /dev/null @@ -1,17 +0,0 @@ -import { FC } from 'react'; -import { Center, CenterProps, Text, TextProps } from '@mantine/core'; - -interface EmptyStateProps extends CenterProps { - text?: string; - textProps?: TextProps; -} - -const EmptyState: FC = ({ text, textProps, ...rest }) => ( -
- - {text || 'No results found, try to adjust your search.'} - -
-); - -export default EmptyState; diff --git a/examples/prisma/apps/web/src/components/Table/LoadingState/index.tsx b/examples/prisma/apps/web/src/components/Table/LoadingState/index.tsx deleted file mode 100644 index 9c9da9797..000000000 --- a/examples/prisma/apps/web/src/components/Table/LoadingState/index.tsx +++ /dev/null @@ -1,17 +0,0 @@ -import { FC } from 'react'; -import { Skeleton, SkeletonProps, Stack, StackProps } from '@mantine/core'; - -interface LoadingStateProps extends StackProps { - skeletonProps?: SkeletonProps; - rowsCount?: number; -} - -const LoadingState: FC = ({ rowsCount = 3, skeletonProps, ...rest }) => ( - - {Array.from(Array(rowsCount), (i) => ( - - ))} - -); - -export default LoadingState; diff --git a/examples/prisma/apps/web/src/components/Table/Pagination/index.tsx b/examples/prisma/apps/web/src/components/Table/Pagination/index.tsx deleted file mode 100644 index 44bb20762..000000000 --- a/examples/prisma/apps/web/src/components/Table/Pagination/index.tsx +++ /dev/null @@ -1,37 +0,0 @@ -import { FC } from 'react'; -import { Group, Pagination as MantinePagination, PaginationProps as MantinePaginationProps, Text } from '@mantine/core'; - -import { useTableContext } from 'contexts'; - -interface PaginationProps extends Omit { - totalCount?: number; -} - -const Pagination: FC = ({ totalCount, ...rest }) => { - const table = useTableContext(); - - if (!table) return null; - - const pageCount = table.getPageCount(); - const currentPage = table.getState().pagination.pageIndex; - - if (pageCount === 1) return null; - - return ( - - {totalCount && ( - - Showing {table.getRowModel().rows.length} of {totalCount} results - - )} - - table.setPageIndex(v - 1)} - {...rest} - /> - - ); -}; -export default Pagination; diff --git a/examples/prisma/apps/web/src/components/Table/Tbody/index.module.css b/examples/prisma/apps/web/src/components/Table/Tbody/index.module.css deleted file mode 100644 index 73b3ddb6c..000000000 --- a/examples/prisma/apps/web/src/components/Table/Tbody/index.module.css +++ /dev/null @@ -1,8 +0,0 @@ -.tr { - cursor: pointer; - transition: background-color 0.2s ease-in-out; - - @mixin hover { - background-color: var(--mantine-color-gray-0); - } -} diff --git a/examples/prisma/apps/web/src/components/Table/Tbody/index.tsx b/examples/prisma/apps/web/src/components/Table/Tbody/index.tsx deleted file mode 100644 index da79e4d7a..000000000 --- a/examples/prisma/apps/web/src/components/Table/Tbody/index.tsx +++ /dev/null @@ -1,39 +0,0 @@ -import { Table } from '@mantine/core'; -import { flexRender, RowData } from '@tanstack/react-table'; -import cx from 'clsx'; - -import { useTableContext } from 'contexts'; - -import classes from './index.module.css'; - -interface TbodyProps { - onRowClick?: (value: T) => void; -} - -const Tbody = ({ onRowClick }: TbodyProps) => { - const table = useTableContext(); - - if (!table) return null; - - const { rows } = table.getRowModel(); - - return ( - - {rows.map((row) => ( - onRowClick && onRowClick(row.original)} - className={cx({ - [classes.tr]: !!onRowClick, - })} - > - {row.getVisibleCells().map((cell) => ( - {flexRender(cell.column.columnDef.cell, cell.getContext())} - ))} - - ))} - - ); -}; - -export default Tbody; diff --git a/examples/prisma/apps/web/src/components/Table/Thead/index.module.css b/examples/prisma/apps/web/src/components/Table/Thead/index.module.css deleted file mode 100644 index 8d88c9e08..000000000 --- a/examples/prisma/apps/web/src/components/Table/Thead/index.module.css +++ /dev/null @@ -1,8 +0,0 @@ -.header-button { - width: 100%; - display: flex; - line-height: 16px; - font-weight: 600; - font-size: 14px; - justify-content: space-between; -} diff --git a/examples/prisma/apps/web/src/components/Table/Thead/index.tsx b/examples/prisma/apps/web/src/components/Table/Thead/index.tsx deleted file mode 100644 index 566a2f680..000000000 --- a/examples/prisma/apps/web/src/components/Table/Thead/index.tsx +++ /dev/null @@ -1,68 +0,0 @@ -import { FC } from 'react'; -import { Table, UnstyledButton } from '@mantine/core'; -import { IconArrowsSort, IconSortAscending, IconSortDescending } from '@tabler/icons-react'; -import { flexRender, SortDirection } from '@tanstack/react-table'; - -import { useTableContext } from 'contexts'; - -import classes from './index.module.css'; - -interface SortIconProps { - state: false | SortDirection; -} - -const SortIcon: FC = ({ state }) => { - const iconSize = 16; - - switch (state) { - case 'asc': - return ; - case 'desc': - return ; - case false: - return ; - default: - return null; - } -}; - -const Thead = () => { - const table = useTableContext(); - - if (!table) return null; - - const headerGroups = table.getHeaderGroups(); - - return ( - - {headerGroups.map((headerGroup) => ( - - {headerGroup.headers.map((header) => { - const isSortable = header.column.getCanSort(); - - const headerContent = flexRender(header.column.columnDef.header, header.getContext()); - const columnSize = header.column.columnDef.size; - const columnWidth = columnSize ? `${columnSize}%` : 'auto'; - - return ( - - {!header.isPlaceholder && - (isSortable ? ( - - {headerContent} - - - - ) : ( - headerContent - ))} - - ); - })} - - ))} - - ); -}; - -export default Thead; diff --git a/examples/prisma/apps/web/src/components/Table/index.tsx b/examples/prisma/apps/web/src/components/Table/index.tsx deleted file mode 100644 index c7fb50694..000000000 --- a/examples/prisma/apps/web/src/components/Table/index.tsx +++ /dev/null @@ -1,119 +0,0 @@ -import { ComponentType, useEffect, useMemo, useState } from 'react'; -import { Paper, Stack, Table as TableContainer, TableProps as TableContainerProps } from '@mantine/core'; -import { useSetState } from '@mantine/hooks'; -import { - ColumnDef, - getCoreRowModel, - getSortedRowModel, - PaginationState, - RowData, - SortDirection, - SortingState, - Table as TanstackTable, - useReactTable, -} from '@tanstack/react-table'; - -import { TableContext } from 'contexts'; - -import TableEmptyState from './EmptyState'; -import TableLoadingState from './LoadingState'; -import Pagination from './Pagination'; -import Tbody from './Tbody'; -import Thead from './Thead'; - -type SortingFieldsState = Record; - -interface TableProps { - data?: T[]; - totalCount?: number; - columns: ColumnDef[]; - pageCount?: number; - page?: number; - perPage?: number; - isLoading?: boolean; - onSortingChange?: (sort: SortingFieldsState) => void; - onPageChange?: (page: number) => void; - onRowClick?: (value: T) => void; - tableContainerProps?: TableContainerProps; - EmptyState?: ComponentType; - LoadingState?: ComponentType; -} - -const Table = ({ - data = [], - totalCount = data?.length || 0, - columns, - pageCount, - page = 1, - perPage = 10, - isLoading, - onSortingChange, - onPageChange, - onRowClick, - tableContainerProps, - EmptyState = TableEmptyState, - LoadingState = TableLoadingState, -}: TableProps) => { - const [pagination, setPagination] = useSetState({ - pageIndex: (page && page - 1) || 0, - pageSize: perPage, - }); - const [sorting, setSorting] = useState([]); - - const table = useReactTable({ - data, - // disable column sorting and reset size by default. - columns: columns.map((c) => ({ ...c, enableSorting: c.enableSorting || false, size: 0 })), - state: { - pagination, - sorting, - }, - onPaginationChange: setPagination, - pageCount: pageCount || (totalCount ? Math.ceil((totalCount || 0) / perPage) : -1), - manualPagination: true, - onSortingChange: setSorting, - manualSorting: true, - getCoreRowModel: getCoreRowModel(), - getSortedRowModel: getSortedRowModel(), - }); - - useEffect(() => { - if (onSortingChange) { - onSortingChange( - sorting.reduce((acc, value) => { - acc[value.id] = value.desc ? 'desc' : 'asc'; - - return acc; - }, {}), - ); - } - }, [sorting]); - - useEffect(() => { - if (onPageChange) onPageChange(pagination.pageIndex + 1); - }, [pagination]); - - return ( - table as TanstackTable, [table])}> - {isLoading && } - - {!isLoading && - (totalCount > 0 ? ( - - - - - onRowClick={onRowClick} /> - - - - - - ) : ( - - ))} - - ); -}; - -export default Table; diff --git a/examples/prisma/apps/web/src/components/index.ts b/examples/prisma/apps/web/src/components/index.ts deleted file mode 100644 index 56abcd12f..000000000 --- a/examples/prisma/apps/web/src/components/index.ts +++ /dev/null @@ -1 +0,0 @@ -export { default as Table } from './Table'; diff --git a/examples/prisma/apps/web/src/config/index.ts b/examples/prisma/apps/web/src/config/index.ts deleted file mode 100644 index 31fea9cb2..000000000 --- a/examples/prisma/apps/web/src/config/index.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { z } from 'zod'; - -import { validateConfig } from 'utils/config.util'; - -/** - * Specify your client-side environment variables schema here. - * This way you can ensure the app isn't built with invalid env vars. - * To expose them to the client, prefix them with `NEXT_PUBLIC_`. - */ -const schema = z.object({ - APP_ENV: z.enum(['development', 'staging', 'production']).default('development'), - IS_DEV: z.preprocess(() => process.env.APP_ENV === 'development', z.boolean()), - API_URL: z.string(), - WS_URL: z.string(), - WEB_URL: z.string(), - MIXPANEL_API_KEY: z.string().optional(), -}); - -type Config = z.infer; - -/** - * You can't destruct `process.env` as a regular object in the Next.js edge runtimes (e.g. - * middlewares) or client-side, so we need to destruct manually. - */ -const processEnv = { - APP_ENV: process.env.NEXT_PUBLIC_APP_ENV, - API_URL: process.env.NEXT_PUBLIC_API_URL, - WS_URL: process.env.NEXT_PUBLIC_WS_URL, - WEB_URL: process.env.NEXT_PUBLIC_WEB_URL, - MIXPANEL_API_KEY: process.env.NEXT_PUBLIC_MIXPANEL_API_KEY, -} as Record; - -const config = validateConfig(schema, processEnv); - -export default config; diff --git a/examples/prisma/apps/web/src/contexts/index.ts b/examples/prisma/apps/web/src/contexts/index.ts deleted file mode 100644 index 6823013a9..000000000 --- a/examples/prisma/apps/web/src/contexts/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './table.context'; diff --git a/examples/prisma/apps/web/src/contexts/table.context.ts b/examples/prisma/apps/web/src/contexts/table.context.ts deleted file mode 100644 index 5253a2393..000000000 --- a/examples/prisma/apps/web/src/contexts/table.context.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { createContext, useContext } from 'react'; -import { RowData, Table } from '@tanstack/react-table'; - -export const TableContext = createContext | undefined>(undefined); - -export const useTableContext = () => useContext(TableContext) as Table; diff --git a/examples/prisma/apps/web/src/pages/404/index.page.tsx b/examples/prisma/apps/web/src/pages/404/index.page.tsx deleted file mode 100644 index 13bded869..000000000 --- a/examples/prisma/apps/web/src/pages/404/index.page.tsx +++ /dev/null @@ -1,30 +0,0 @@ -import { NextPage } from 'next'; -import Head from 'next/head'; -import { useRouter } from 'next/router'; -import { Button, Stack, Text, Title } from '@mantine/core'; - -import { RoutePath } from 'routes'; - -const NotFound: NextPage = () => { - const { replace } = useRouter(); - - return ( - <> - - Page not found - - - - Oops! The page is not found. - - - The page you are looking for may have been removed, or the link you followed may be broken. - - - - - - ); -}; - -export default NotFound; diff --git a/examples/prisma/apps/web/src/pages/_app.page.tsx b/examples/prisma/apps/web/src/pages/_app.page.tsx deleted file mode 100644 index 13e897fc8..000000000 --- a/examples/prisma/apps/web/src/pages/_app.page.tsx +++ /dev/null @@ -1,3 +0,0 @@ -import App from 'pages/_app'; - -export default App; diff --git a/examples/prisma/apps/web/src/pages/_app/PageConfig/MainLayout/Header/components/MenuToggle/index.tsx b/examples/prisma/apps/web/src/pages/_app/PageConfig/MainLayout/Header/components/MenuToggle/index.tsx deleted file mode 100644 index e5b5f8513..000000000 --- a/examples/prisma/apps/web/src/pages/_app/PageConfig/MainLayout/Header/components/MenuToggle/index.tsx +++ /dev/null @@ -1,23 +0,0 @@ -import { forwardRef } from 'react'; -import { Avatar, UnstyledButton, useMantineTheme } from '@mantine/core'; - -import { accountApi } from 'resources/account'; - -const MenuToggle = forwardRef((props, ref) => { - const { primaryColor } = useMantineTheme(); - - const { data: account } = accountApi.useGet(); - - if (!account) return null; - - return ( - - - {account.firstName.charAt(0)} - {account.lastName.charAt(0)} - - - ); -}); - -export default MenuToggle; diff --git a/examples/prisma/apps/web/src/pages/_app/PageConfig/MainLayout/Header/components/ShadowLoginBanner/index.tsx b/examples/prisma/apps/web/src/pages/_app/PageConfig/MainLayout/Header/components/ShadowLoginBanner/index.tsx deleted file mode 100644 index 2ee752db5..000000000 --- a/examples/prisma/apps/web/src/pages/_app/PageConfig/MainLayout/Header/components/ShadowLoginBanner/index.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import { FC } from 'react'; -import { Center, Text } from '@mantine/core'; - -interface ShadowLoginBannerProps { - email: string; -} - -const ShadowLoginBanner: FC = ({ email }) => ( -
- - You currently under the shadow login as{' '} - - {email} - - -
-); - -export default ShadowLoginBanner; diff --git a/examples/prisma/apps/web/src/pages/_app/PageConfig/MainLayout/Header/components/UserMenu/index.tsx b/examples/prisma/apps/web/src/pages/_app/PageConfig/MainLayout/Header/components/UserMenu/index.tsx deleted file mode 100644 index 1c33e37bd..000000000 --- a/examples/prisma/apps/web/src/pages/_app/PageConfig/MainLayout/Header/components/UserMenu/index.tsx +++ /dev/null @@ -1,34 +0,0 @@ -import { FC } from 'react'; -import Link from 'next/link'; -import { Menu } from '@mantine/core'; -import { IconLogout, IconUserCircle } from '@tabler/icons-react'; - -import { accountApi } from 'resources/account'; - -import { RoutePath } from 'routes'; - -import MenuToggle from '../MenuToggle'; - -const UserMenu: FC = () => { - const { mutate: signOut } = accountApi.useSignOut(); - - return ( - - - - - - - }> - Profile settings - - - signOut()} leftSection={}> - Log out - - - - ); -}; - -export default UserMenu; diff --git a/examples/prisma/apps/web/src/pages/_app/PageConfig/MainLayout/Header/index.tsx b/examples/prisma/apps/web/src/pages/_app/PageConfig/MainLayout/Header/index.tsx deleted file mode 100644 index fc668adea..000000000 --- a/examples/prisma/apps/web/src/pages/_app/PageConfig/MainLayout/Header/index.tsx +++ /dev/null @@ -1,34 +0,0 @@ -import { FC, memo } from 'react'; -import Link from 'next/link'; -import { Anchor, AppShell, Group } from '@mantine/core'; - -import { accountApi } from 'resources/account'; - -import { LogoImage } from 'public/images'; - -import { RoutePath } from 'routes'; - -import ShadowLoginBanner from './components/ShadowLoginBanner'; -import UserMenu from './components/UserMenu'; - -const Header: FC = () => { - const { data: account } = accountApi.useGet(); - - if (!account) return null; - - return ( - - {account.isShadow && } - - - - - - - - - - ); -}; - -export default memo(Header); diff --git a/examples/prisma/apps/web/src/pages/_app/PageConfig/MainLayout/index.tsx b/examples/prisma/apps/web/src/pages/_app/PageConfig/MainLayout/index.tsx deleted file mode 100644 index 4d36b5747..000000000 --- a/examples/prisma/apps/web/src/pages/_app/PageConfig/MainLayout/index.tsx +++ /dev/null @@ -1,28 +0,0 @@ -import { FC, ReactElement } from 'react'; -import { AppShell, Stack } from '@mantine/core'; - -import { accountApi } from 'resources/account'; - -import Header from './Header'; - -interface MainLayoutProps { - children: ReactElement; -} - -const MainLayout: FC = ({ children }) => { - const { data: account } = accountApi.useGet(); - - if (!account) return null; - - return ( - -
- - - {children} - - - ); -}; - -export default MainLayout; diff --git a/examples/prisma/apps/web/src/pages/_app/PageConfig/PrivateScope/index.tsx b/examples/prisma/apps/web/src/pages/_app/PageConfig/PrivateScope/index.tsx deleted file mode 100644 index d6c02c669..000000000 --- a/examples/prisma/apps/web/src/pages/_app/PageConfig/PrivateScope/index.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import { FC, ReactElement, useEffect } from 'react'; - -import { socketService } from 'services'; - -interface PrivateScopeProps { - children: ReactElement; -} - -const PrivateScope: FC = ({ children }) => { - useEffect(() => { - socketService.connect(); - - return () => socketService.disconnect(); - }, []); - - return children; -}; - -export default PrivateScope; diff --git a/examples/prisma/apps/web/src/pages/_app/PageConfig/UnauthorizedLayout/index.tsx b/examples/prisma/apps/web/src/pages/_app/PageConfig/UnauthorizedLayout/index.tsx deleted file mode 100644 index 793418127..000000000 --- a/examples/prisma/apps/web/src/pages/_app/PageConfig/UnauthorizedLayout/index.tsx +++ /dev/null @@ -1,18 +0,0 @@ -import { FC, ReactElement } from 'react'; -import { Center, Image, SimpleGrid } from '@mantine/core'; - -interface UnauthorizedLayoutProps { - children: ReactElement; -} - -const UnauthorizedLayout: FC = ({ children }) => ( - - App Info - -
- {children} -
-
-); - -export default UnauthorizedLayout; diff --git a/examples/prisma/apps/web/src/pages/_app/PageConfig/index.tsx b/examples/prisma/apps/web/src/pages/_app/PageConfig/index.tsx deleted file mode 100644 index 65d4d6177..000000000 --- a/examples/prisma/apps/web/src/pages/_app/PageConfig/index.tsx +++ /dev/null @@ -1,66 +0,0 @@ -import { FC, Fragment, ReactElement, useEffect } from 'react'; -import { useRouter } from 'next/router'; - -import { accountApi } from 'resources/account'; - -import { analyticsService } from 'services'; - -import { LayoutType, RoutePath, routesConfiguration, ScopeType } from 'routes'; -import config from 'config'; - -import MainLayout from './MainLayout'; -import PrivateScope from './PrivateScope'; -import UnauthorizedLayout from './UnauthorizedLayout'; - -import 'resources/user/user.handlers'; - -const layoutToComponent = { - [LayoutType.MAIN]: MainLayout, - [LayoutType.UNAUTHORIZED]: UnauthorizedLayout, -}; - -const scopeToComponent = { - [ScopeType.PUBLIC]: Fragment, - [ScopeType.PRIVATE]: PrivateScope, -}; - -interface PageConfigProps { - children: ReactElement; -} - -const PageConfig: FC = ({ children }) => { - const { route, push } = useRouter(); - - const { data: account, isLoading: isAccountLoading, isSuccess, isError } = accountApi.useGet(); - - useEffect(() => { - if (!isSuccess || !isError || !config.MIXPANEL_API_KEY) return; - - analyticsService.init(); - analyticsService.setUser(account); - }, [isSuccess, isError]); - - if (isAccountLoading) return null; - - const { scope, layout } = routesConfiguration[route as RoutePath] || {}; - const Scope = scope ? scopeToComponent[scope] : Fragment; - const Layout = layout ? layoutToComponent[layout] : Fragment; - - if (scope === ScopeType.PRIVATE && !account) { - push(RoutePath.SignIn); - return null; - } - - if (scope === ScopeType.PUBLIC && account) { - push(RoutePath.Home); - return null; - } - - return ( - - {children} - - ); -}; - -export default PageConfig; diff --git a/examples/prisma/apps/web/src/pages/_app/index.tsx b/examples/prisma/apps/web/src/pages/_app/index.tsx deleted file mode 100644 index b5fe993b6..000000000 --- a/examples/prisma/apps/web/src/pages/_app/index.tsx +++ /dev/null @@ -1,42 +0,0 @@ -import { FC } from 'react'; -import { AppProps } from 'next/app'; -import Head from 'next/head'; -import { MantineProvider } from '@mantine/core'; -import { ModalsProvider } from '@mantine/modals'; -import { Notifications } from '@mantine/notifications'; -import { QueryClientProvider } from '@tanstack/react-query'; -import { ReactQueryDevtools } from '@tanstack/react-query-devtools'; - -import theme from 'theme'; - -import queryClient from 'query-client'; - -import PageConfig from './PageConfig'; - -import '@mantine/core/styles.layer.css'; -import '@mantine/dates/styles.layer.css'; -import '@mantine/notifications/styles.layer.css'; -import '@mantine/dropzone/styles.layer.css'; - -const App: FC = ({ Component, pageProps }) => ( - <> - - Ship - - - - - - - - - - - - - - - -); - -export default App; diff --git a/examples/prisma/apps/web/src/pages/_document.page.tsx b/examples/prisma/apps/web/src/pages/_document.page.tsx deleted file mode 100644 index d85a4f7c8..000000000 --- a/examples/prisma/apps/web/src/pages/_document.page.tsx +++ /dev/null @@ -1,3 +0,0 @@ -import Document from 'pages/_document'; - -export default Document; diff --git a/examples/prisma/apps/web/src/pages/_document/index.tsx b/examples/prisma/apps/web/src/pages/_document/index.tsx deleted file mode 100644 index f5e27e81a..000000000 --- a/examples/prisma/apps/web/src/pages/_document/index.tsx +++ /dev/null @@ -1,17 +0,0 @@ -import { Head, Html, Main, NextScript } from 'next/document'; -import { ColorSchemeScript } from '@mantine/core'; - -const Document = () => ( - - - - - - -
- - - -); - -export default Document; diff --git a/examples/prisma/apps/web/src/pages/api/example.api.ts b/examples/prisma/apps/web/src/pages/api/example.api.ts deleted file mode 100644 index 038fcc951..000000000 --- a/examples/prisma/apps/web/src/pages/api/example.api.ts +++ /dev/null @@ -1,6 +0,0 @@ -// https://nextjs.org/docs/api-routes/introduction -import { NextApiRequest, NextApiResponse } from 'next'; - -export default function handler(req: NextApiRequest, res: NextApiResponse) { - res.status(200).json({ name: 'John Doe' }); -} diff --git a/examples/prisma/apps/web/src/pages/expire-token/index.page.tsx b/examples/prisma/apps/web/src/pages/expire-token/index.page.tsx deleted file mode 100644 index b86aabcf2..000000000 --- a/examples/prisma/apps/web/src/pages/expire-token/index.page.tsx +++ /dev/null @@ -1,72 +0,0 @@ -import { useState } from 'react'; -import { NextPage } from 'next'; -import Head from 'next/head'; -import { useRouter } from 'next/router'; -import { Button, Stack, Text, Title } from '@mantine/core'; - -import { accountApi } from 'resources/account'; - -import { handleApiError } from 'utils'; - -import { RoutePath } from 'routes'; - -const ExpireToken: NextPage = () => { - const router = useRouter(); - - const { email } = router.query; - - const [isSent, setSent] = useState(false); - - const { mutate: resendEmail, isPending: isResendEmailPending } = accountApi.useResendEmail(); - - if (!email || Array.isArray(email)) { - router.push(RoutePath.SignIn); - return null; - } - - const onSubmit = () => - resendEmail( - { email }, - { - onSuccess: () => setSent(true), - onError: (e) => handleApiError(e), - }, - ); - - if (isSent) { - return ( - <> - - Password reset link expired - - - - Reset link has been sent - Reset link sent successfully - - - - - ); - } - - return ( - <> - - Password reset link expired - - - - Password reset link expired - - Sorry, your password reset link has expired. Click the button below to get a new one. - - - - - ); -}; - -export default ExpireToken; diff --git a/examples/prisma/apps/web/src/pages/forgot-password/index.page.tsx b/examples/prisma/apps/web/src/pages/forgot-password/index.page.tsx deleted file mode 100644 index 63b9f91c5..000000000 --- a/examples/prisma/apps/web/src/pages/forgot-password/index.page.tsx +++ /dev/null @@ -1,102 +0,0 @@ -import { useState } from 'react'; -import { NextPage } from 'next'; -import Head from 'next/head'; -import Link from 'next/link'; -import { useRouter } from 'next/router'; -import { Anchor, Button, Group, Stack, Text, TextInput, Title } from '@mantine/core'; -import { zodResolver } from '@hookform/resolvers/zod'; -import { useForm } from 'react-hook-form'; - -import { accountApi } from 'resources/account'; - -import { handleApiError } from 'utils'; - -import { RoutePath } from 'routes'; - -import { forgotPasswordSchema } from 'schemas'; -import { ForgotPasswordParams } from 'types'; - -const ForgotPassword: NextPage = () => { - const router = useRouter(); - - const [email, setEmail] = useState(''); - - const { mutate: forgotPassword, isPending: isForgotPasswordPending } = accountApi.useForgotPassword(); - - const { - register, - handleSubmit, - setError, - formState: { errors }, - } = useForm({ - resolver: zodResolver(forgotPasswordSchema), - }); - - const onSubmit = (data: ForgotPasswordParams) => - forgotPassword(data, { - onSuccess: () => setEmail(data.email), - onError: (e) => handleApiError(e, setError), - }); - - if (email) { - return ( - <> - - Forgot password - - - Reset link has been sent - - - A link to reset your password has just been sent to{' '} - - {email} - - . Please check your email inbox and follow the directions to reset your password. - - - - - - ); - } - - return ( - <> - - Forgot password - - - - Forgot Password - - Please enter your email and we'll send a link to reset your password. - -
- - - - - -
- - - Have an account? - - Sign in - - -
- - ); -}; - -export default ForgotPassword; diff --git a/examples/prisma/apps/web/src/pages/home/components/Filters/index.tsx b/examples/prisma/apps/web/src/pages/home/components/Filters/index.tsx deleted file mode 100644 index 86e879a4f..000000000 --- a/examples/prisma/apps/web/src/pages/home/components/Filters/index.tsx +++ /dev/null @@ -1,100 +0,0 @@ -import { FC, useLayoutEffect, useState } from 'react'; -import { ActionIcon, ComboboxItem, Group, Select, TextInput } from '@mantine/core'; -import { DatePickerInput, DatesRangeValue } from '@mantine/dates'; -import { useDebouncedValue, useInputState, useSetState } from '@mantine/hooks'; -import { IconSearch, IconSelector, IconX } from '@tabler/icons-react'; -import { set } from 'lodash'; - -import { UsersListParams } from 'resources/user'; - -const selectOptions: ComboboxItem[] = [ - { - value: 'newest', - label: 'Newest', - }, - { - value: 'oldest', - label: 'Oldest', - }, -]; - -interface FiltersProps { - setParams: ReturnType>[1]; -} - -const Filters: FC = ({ setParams }) => { - const [search, setSearch] = useInputState(''); - const [sortBy, setSortBy] = useState(selectOptions[0].value); - const [filterDate, setFilterDate] = useState(); - - const [debouncedSearch] = useDebouncedValue(search, 500); - - const handleSort = (value: string | null) => { - setSortBy(value); - - setParams((old) => set(old, 'sort.createdAt', value === 'newest' ? 'desc' : 'asc')); - }; - - const handleFilter = ([startDate, endDate]: DatesRangeValue) => { - setFilterDate([startDate, endDate]); - - if (!startDate) { - setParams({ filter: undefined }); - } - - if (endDate) { - setParams({ - filter: { - createdAt: { startDate, endDate }, - }, - }); - } - }; - - useLayoutEffect(() => { - setParams({ searchValue: debouncedSearch }); - }, [debouncedSearch]); - - return ( - - - } - rightSection={ - search && ( - setSearch('')}> - - - ) - } - /> - - } - withinPortal={false} - transitionProps={{ - transition: 'pop-bottom-right', - duration: 210, - timingFunction: 'ease-out', - }} - sx={{ width: '200px' }} - /> - - - - - - - - - {isListLoading && ( - <> - {[1, 2, 3].map((item) => ( - - ))} - - )} - {data?.items.length ? ( - - ) : ( - - - No results found, try to adjust your search. - - - )} - - - ); -}; - -export default Home; diff --git a/examples/public-docs/apps/web/src/pages/index.page.tsx b/examples/public-docs/apps/web/src/pages/index.page.tsx deleted file mode 100644 index f43a82a81..000000000 --- a/examples/public-docs/apps/web/src/pages/index.page.tsx +++ /dev/null @@ -1,3 +0,0 @@ -import Home from 'pages/home'; - -export default Home; diff --git a/examples/public-docs/apps/web/src/pages/profile/components/PhotoUpload/index.tsx b/examples/public-docs/apps/web/src/pages/profile/components/PhotoUpload/index.tsx deleted file mode 100644 index aa353abae..000000000 --- a/examples/public-docs/apps/web/src/pages/profile/components/PhotoUpload/index.tsx +++ /dev/null @@ -1,112 +0,0 @@ -import { memo, useState } from 'react'; -import { Group, Text, Button, Stack } from '@mantine/core'; -import { Dropzone, FileWithPath } from '@mantine/dropzone'; -import { IconPencil, IconPlus } from '@tabler/icons-react'; - -import { handleError } from 'utils'; -import { accountApi } from 'resources/account'; - -import { useStyles } from './styles'; - -const PhotoUpload = () => { - const [errorMessage, setErrorMessage] = useState(null); - const { classes, cx } = useStyles(); - - const { data: account } = accountApi.useGet(); - - const { mutate: uploadProfilePhoto } = accountApi.useUploadAvatar(); - const { mutate: removeProfilePhoto } = accountApi.useRemoveAvatar(); - - if (!account) return null; - - const isFileSizeCorrect = (file: any) => { - const oneMBinBytes = 1048576; - if ((file.size / oneMBinBytes) > 2) { - setErrorMessage('Sorry, you cannot upload a file larger than 2 MB.'); - return false; - } - return true; - }; - - const isFileFormatCorrect = (file: FileWithPath) => { - if (['image/png', 'image/jpg', 'image/jpeg'].includes(file.type)) return true; - setErrorMessage('Sorry, you can only upload JPG, JPEG or PNG photos.'); - return false; - }; - - const handlePhotoUpload = async ([imageFile]: FileWithPath[]) => { - setErrorMessage(null); - - if (isFileFormatCorrect(imageFile) && isFileSizeCorrect(imageFile) && imageFile) { - const body = new FormData(); - body.append('file', imageFile, imageFile.name); - - uploadProfilePhoto(body, { - onError: (err) => handleError(err), - }); - } - }; - - const handlerPhotoRemove = async () => { - setErrorMessage(null); - removeProfilePhoto(); - }; - - return ( - <> - - - - - - - {account.avatarUrl && ( - - )} - - - Profile picture - - JPG, JPEG or PNG - Max size = 2MB - - - - - {!!errorMessage &&

{errorMessage}

} - - ); -}; - -export default memo(PhotoUpload); diff --git a/examples/public-docs/apps/web/src/pages/profile/components/PhotoUpload/styles.ts b/examples/public-docs/apps/web/src/pages/profile/components/PhotoUpload/styles.ts deleted file mode 100644 index 78d835352..000000000 --- a/examples/public-docs/apps/web/src/pages/profile/components/PhotoUpload/styles.ts +++ /dev/null @@ -1,87 +0,0 @@ -import { createStyles, getStylesRef } from '@mantine/core'; - -const BROWSE_BTN_SIZE = '88px'; - -export const useStyles = createStyles(({ - colors, - primaryColor, - other: { - transition: { speed, easing }, - }, -}) => ({ - dropzoneRoot: { - border: 'none', - borderRadius: 0, - padding: 0, - backgroundColor: 'transparent', - - [`&:hover .${getStylesRef('addIcon')}`]: { - color: colors.gray[5], - }, - - [`&:hover .${getStylesRef('browseButton')}`]: { - border: `1px dashed ${colors.gray[5]}`, - }, - - [`&:hover .${getStylesRef('innerAvatar')}`]: { - opacity: 1, - }, - }, - browseButton: { - ref: getStylesRef('browseButton'), - width: BROWSE_BTN_SIZE, - height: BROWSE_BTN_SIZE, - borderRadius: '50%', - border: `1px dashed ${colors[primaryColor][6]}`, - display: 'flex', - justifyContent: 'center', - alignItems: 'center', - transition: `all ${speed.fast} ${easing.easeInOut}`, - cursor: 'pointer', - }, - error: { - border: `1px dashed ${colors.red[5]}`, - }, - addIcon: { - ref: getStylesRef('addIcon'), - color: colors[primaryColor][6], - transition: `all ${speed.fast} ${easing.easeInOut}`, - }, - innerAvatar: { - ref: getStylesRef('innerAvatar'), - width: BROWSE_BTN_SIZE, - height: BROWSE_BTN_SIZE, - borderRadius: '50%', - background: '#10101099', - display: 'flex', - justifyContent: 'center', - alignItems: 'center', - color: colors.gray[2], - opacity: 0, - transition: `all ${speed.smooth} ${easing.easeInOut}`, - }, - text: { - width: '144px', - lineHeight: '24px', - color: colors.gray[6], - wordWrap: 'break-word', - }, - buttonContainer: { - display: 'flex', - alignItems: 'center', - }, - errorMessage: { - marginTop: '4px', - fontSize: '14px', - lineHeight: '17px', - color: colors.red[5], - }, - avatar: { - width: BROWSE_BTN_SIZE, - height: BROWSE_BTN_SIZE, - backgroundPosition: 'center', - backgroundSize: 'cover', - backgroundRepeat: 'no-repeat', - borderRadius: '50%', - }, -})); diff --git a/examples/public-docs/apps/web/src/pages/profile/index.page.tsx b/examples/public-docs/apps/web/src/pages/profile/index.page.tsx deleted file mode 100644 index f9622d573..000000000 --- a/examples/public-docs/apps/web/src/pages/profile/index.page.tsx +++ /dev/null @@ -1,128 +0,0 @@ -import { z } from 'zod'; -import { useForm } from 'react-hook-form'; -import { zodResolver } from '@hookform/resolvers/zod'; -import { useQueryClient } from 'react-query'; -import { showNotification } from '@mantine/notifications'; -import Head from 'next/head'; -import { NextPage } from 'next'; -import { - Button, - TextInput, - PasswordInput, - Stack, - Title, -} from '@mantine/core'; - -import { handleError } from 'utils'; -import { accountApi } from 'resources/account'; - -import PhotoUpload from './components/PhotoUpload'; - -const schema = z.object({ - firstName: z.string().min(1, 'Please enter First name').max(100), - lastName: z.string().min(1, 'Please enter Last name').max(100), - password: z.string().regex( - /^$|^(?=.*[a-z])(?=.*\d)[A-Za-z\d\W]{6,}$/g, - 'The password must contain 6 or more characters with at least one letter (a-z) and one number (0-9).', - ), -}); - -type UpdateParams = z.infer; - -const Profile: NextPage = () => { - const queryClient = useQueryClient(); - - const { data: account } = accountApi.useGet(); - - const { - register, - handleSubmit, - setError, - formState: { errors }, - } = useForm({ - resolver: zodResolver(schema), - defaultValues: { - firstName: account?.firstName, - lastName: account?.lastName, - }, - }); - - const { - mutate: updateCurrent, - isLoading: isUpdateLoading, - } = accountApi.useUpdate(); - - const onSubmit = (submitData: UpdateParams) => updateCurrent(submitData, { - onSuccess: (data) => { - queryClient.setQueryData(['account'], data); - showNotification({ - title: 'Success', - message: 'Your profile has been successfully updated.', - color: 'green', - }); - }, - onError: (e) => handleError(e, setError), - }); - - return ( - <> - - Profile - - - Profile - -
- - - - - - - - -
- - ); -}; - -export default Profile; diff --git a/examples/public-docs/apps/web/src/pages/reset-password/index.page.tsx b/examples/public-docs/apps/web/src/pages/reset-password/index.page.tsx deleted file mode 100644 index cc6de09e8..000000000 --- a/examples/public-docs/apps/web/src/pages/reset-password/index.page.tsx +++ /dev/null @@ -1,118 +0,0 @@ -import { z } from 'zod'; -import { useState } from 'react'; -import { useRouter } from 'next/router'; -import { useForm } from 'react-hook-form'; -import { zodResolver } from '@hookform/resolvers/zod'; -import { - Stack, - Title, - Text, - Button, - PasswordInput, -} from '@mantine/core'; -import Head from 'next/head'; -import { NextPage } from 'next'; - -import { QueryParam } from 'types'; -import { RoutePath } from 'routes'; -import { handleError } from 'utils'; -import { accountApi } from 'resources/account'; -import { PASSWORD_REGEXP } from '../../constants'; - -const schema = z.object({ - password: z.string().regex( - PASSWORD_REGEXP, - 'The password must contain 6 or more characters with at least one letter (a-z) and one number (0-9).', - ), -}); - -type ResetPasswordParams = z.infer; - -const ResetPassword: NextPage = () => { - const router = useRouter(); - - const { token } = router.query; - const [isSubmitted, setSubmitted] = useState(false); - - const { - register, handleSubmit, formState: { errors }, - } = useForm({ - resolver: zodResolver(schema), - }); - - const { - mutate: resetPassword, - isLoading: isResetPasswordLoading, - } = accountApi.useResetPassword(); - - const onSubmit = ({ password }: ResetPasswordParams) => resetPassword({ - password, - token, - }, { - onSuccess: () => setSubmitted(true), - onError: (e) => handleError(e), - }); - - if (!token) { - return ( - - Invalid token - Sorry, your token is invalid. - - ); - } - - if (isSubmitted) { - return ( - <> - - Reset Password - - - Password has been updated - - Your password has been updated successfully. - You can now use your new password to sign in. - - - - - ); - } - - return ( - <> - - Reset Password - - - Reset Password - Please choose your new password -
- - - -
- - ); -}; - -export default ResetPassword; diff --git a/examples/public-docs/apps/web/src/pages/sign-in/index.page.tsx b/examples/public-docs/apps/web/src/pages/sign-in/index.page.tsx deleted file mode 100644 index a0326b38f..000000000 --- a/examples/public-docs/apps/web/src/pages/sign-in/index.page.tsx +++ /dev/null @@ -1,110 +0,0 @@ -import { z } from 'zod'; -import { useForm } from 'react-hook-form'; -import { zodResolver } from '@hookform/resolvers/zod'; -import Head from 'next/head'; -import { NextPage } from 'next'; -import { TextInput, PasswordInput, Button, Group, Stack, Title, Alert } from '@mantine/core'; -import { IconAlertCircle } from '@tabler/icons-react'; - -import { GoogleIcon } from 'public/icons'; - -import config from 'config'; -import { RoutePath } from 'routes'; -import { handleError } from 'utils'; -import { Link } from 'components'; - -import { accountApi } from 'resources/account'; - -const schema = z.object({ - email: z.string().min(1, 'Please enter email').email('Email format is incorrect.'), - password: z.string().min(1, 'Please enter password'), -}); - -type SignInParams = z.infer & { credentials?: string }; - -const SignIn: NextPage = () => { - const { - register, handleSubmit, formState: { errors }, setError, - } = useForm({ resolver: zodResolver(schema) }); - - const { mutate: signIn, isLoading: isSignInLoading } = accountApi.useSignIn(); - - const onSubmit = (data: SignInParams) => signIn(data, { - onError: (e) => handleError(e, setError), - }); - - return ( - <> - - Sign in - - - - Sign In -
- - - - {errors!.credentials && ( - } color="red"> - {errors.credentials.message} - - )} - - Forgot password? - - - - -
- - - - - Don’t have an account? - - Sign up - - - -
- - ); -}; - -export default SignIn; diff --git a/examples/public-docs/apps/web/src/pages/sign-up/index.page.tsx b/examples/public-docs/apps/web/src/pages/sign-up/index.page.tsx deleted file mode 100644 index e53733795..000000000 --- a/examples/public-docs/apps/web/src/pages/sign-up/index.page.tsx +++ /dev/null @@ -1,226 +0,0 @@ -import { z } from 'zod'; -import { useState, useEffect } from 'react'; -import { useForm } from 'react-hook-form'; -import { zodResolver } from '@hookform/resolvers/zod'; -import Head from 'next/head'; -import { NextPage } from 'next'; -import { - Button, - Stack, - TextInput, - PasswordInput, - Group, - Title, - Text, - Checkbox, - SimpleGrid, - Tooltip, -} from '@mantine/core'; - -import { GoogleIcon } from 'public/icons'; - -import config from 'config'; -import { RoutePath } from 'routes'; -import { handleError } from 'utils'; -import { Link } from 'components'; - -import { accountApi } from 'resources/account'; -import { PASSWORD_REGEXP } from '../../constants'; - -const schema = z.object({ - firstName: z.string().min(1, 'Please enter First name').max(100), - lastName: z.string().min(1, 'Please enter Last name').max(100), - email: z.string().min(1, 'Please enter email').email('Email format is incorrect.'), - password: z.string().regex( - PASSWORD_REGEXP, - 'The password must contain 6 or more characters with at least one letter (a-z) and one number (0-9).', - ), -}); - -type SignUpParams = z.infer; - -const passwordRules = [ - { - title: 'Be 6-50 characters', - done: false, - }, - { - title: 'Have at least one letter', - done: false, - }, - { - title: 'Have at least one number', - done: false, - }, -]; - -const SignUp: NextPage = () => { - const [email, setEmail] = useState(''); - const [registered, setRegistered] = useState(false); - const [signupToken, setSignupToken] = useState(); - - const [passwordRulesData, setPasswordRulesData] = useState(passwordRules); - const [opened, setOpened] = useState(false); - - const { - register, - handleSubmit, - setError, - watch, - formState: { errors }, - } = useForm({ - resolver: zodResolver(schema), - }); - - const passwordValue = watch('password', ''); - - useEffect(() => { - const updatedPasswordRulesData = [...passwordRules]; - - updatedPasswordRulesData[0].done = passwordValue.length >= 6 && passwordValue.length <= 50; - updatedPasswordRulesData[1].done = /[a-zA-Z]/.test(passwordValue); - updatedPasswordRulesData[2].done = /\d/.test(passwordValue); - - setPasswordRulesData(updatedPasswordRulesData); - }, [passwordValue]); - - const { mutate: signUp, isLoading: isSignUpLoading } = accountApi.useSignUp(); - - const onSubmit = (data: SignUpParams) => signUp(data, { - onSuccess: (response: any) => { - if (response.signupToken) setSignupToken(response.signupToken); - - setRegistered(true); - setEmail(data.email); - }, - onError: (e) => handleError(e, setError), - }); - - const label = ( - - Password must: - {passwordRulesData.map((ruleData) => ( - - ))} - - ); - - if (registered) { - return ( - <> - - Sign up - - - Thanks! - ({ color: colors.gray[5] })}> - Please follow the instructions from the email to complete a sign up process. - We sent an email with a confirmation link to - {' '} - {email} - - {signupToken && ( -
- You look like a cool developer. - {' '} - - Verify email - -
- )} -
- - ); - } - - return ( - <> - - Sign up - - - - Sign Up -
- - - - - - setOpened(true)} - onBlur={() => setOpened(false)} - error={errors.password?.message} - /> - - - - -
- - - - Have an account? - - Sign In - - - -
- - ); -}; - -export default SignUp; diff --git a/examples/public-docs/apps/web/src/query-client.ts b/examples/public-docs/apps/web/src/query-client.ts deleted file mode 100644 index e5faa2ac1..000000000 --- a/examples/public-docs/apps/web/src/query-client.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { QueryClient } from 'react-query'; - -const queryClient = new QueryClient({ - defaultOptions: { - queries: { - refetchOnWindowFocus: false, - refetchOnReconnect: false, - retry: false, - keepPreviousData: true, - }, - }, -}); - -export default queryClient; diff --git a/examples/public-docs/apps/web/src/resources/account/account.api.ts b/examples/public-docs/apps/web/src/resources/account/account.api.ts deleted file mode 100644 index 64efaf88b..000000000 --- a/examples/public-docs/apps/web/src/resources/account/account.api.ts +++ /dev/null @@ -1,86 +0,0 @@ -import { useMutation, useQuery } from 'react-query'; - -import queryClient from 'query-client'; -import { apiService } from 'services'; - -import { userTypes } from 'resources/user'; - -export function useSignIn() { - const signIn = (data: T) => apiService.post('/account/sign-in', data); - - return useMutation(signIn, { - onSuccess: (data) => { - queryClient.setQueryData(['account'], data); - }, - }); -} - -export function useSignOut() { - const signOut = () => apiService.post('/account/sign-out'); - - return useMutation(signOut, { - onSuccess: () => { - queryClient.setQueryData(['account'], null); - }, - }); -} - -export function useSignUp() { - const signUp = (data: T) => apiService.post('/account/sign-up', data); - - interface SignUpResponse { - signupToken: string; - } - - return useMutation(signUp); -} - -export function useForgotPassword() { - const forgotPassword = (data: T) => apiService.post('/account/forgot-password', data); - - return useMutation<{}, unknown, T>(forgotPassword); -} - -export function useResetPassword() { - const resetPassword = (data: T) => apiService.put('/account/reset-password', data); - - return useMutation<{}, unknown, T>(resetPassword); -} - -export function useResendEmail() { - const resendEmail = (data: T) => apiService.post('/account/resend-email', data); - - return useMutation<{}, unknown, T>(resendEmail); -} - -export function useGet(options? : {}) { - const get = () => apiService.get('/account'); - - return useQuery(['account'], get, options); -} - -export function useUpdate() { - const update = (data: T) => apiService.put('/account', data); - - return useMutation(update); -} - -export function useUploadAvatar() { - const uploadAvatar = (data: T) => apiService.post('/account/avatar', data); - - return useMutation(uploadAvatar, { - onSuccess: (data) => { - queryClient.setQueryData(['account'], data); - }, - }); -} - -export function useRemoveAvatar() { - const removeAvatar = () => apiService.delete('/account/avatar'); - - return useMutation(removeAvatar, { - onSuccess: (data) => { - queryClient.setQueryData(['account'], data); - }, - }); -} diff --git a/examples/public-docs/apps/web/src/resources/account/index.ts b/examples/public-docs/apps/web/src/resources/account/index.ts deleted file mode 100644 index 89a67ced3..000000000 --- a/examples/public-docs/apps/web/src/resources/account/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -import * as accountApi from './account.api'; - -export { - accountApi, -}; diff --git a/examples/public-docs/apps/web/src/resources/doc/doc.api.ts b/examples/public-docs/apps/web/src/resources/doc/doc.api.ts deleted file mode 100644 index aad60623a..000000000 --- a/examples/public-docs/apps/web/src/resources/doc/doc.api.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { useQuery } from 'react-query'; - -import { apiService } from 'services'; - -export function useGetDocsJson() { - const getDocsJson = () => apiService.get('/docs/json'); - - return useQuery(['docs'], getDocsJson); -} diff --git a/examples/public-docs/apps/web/src/resources/doc/index.ts b/examples/public-docs/apps/web/src/resources/doc/index.ts deleted file mode 100644 index 6e644ce39..000000000 --- a/examples/public-docs/apps/web/src/resources/doc/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -import * as docApi from './doc.api'; - -export { - docApi, -}; diff --git a/examples/public-docs/apps/web/src/resources/user/index.ts b/examples/public-docs/apps/web/src/resources/user/index.ts deleted file mode 100644 index c0d527add..000000000 --- a/examples/public-docs/apps/web/src/resources/user/index.ts +++ /dev/null @@ -1,7 +0,0 @@ -import * as userApi from './user.api'; -import * as userTypes from './user.types'; - -export { - userApi, - userTypes, -}; diff --git a/examples/public-docs/apps/web/src/resources/user/user.api.ts b/examples/public-docs/apps/web/src/resources/user/user.api.ts deleted file mode 100644 index b86158c1b..000000000 --- a/examples/public-docs/apps/web/src/resources/user/user.api.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { useQuery } from 'react-query'; - -import { apiService } from 'services'; - -import { User } from './user.types'; - -export function useList(params: T) { - const list = () => apiService.get('/users', params); - - interface UserListResponse { - count: number; - items: User[]; - totalPages: number; - } - - return useQuery(['users', params], list); -} diff --git a/examples/public-docs/apps/web/src/resources/user/user.handlers.ts b/examples/public-docs/apps/web/src/resources/user/user.handlers.ts deleted file mode 100644 index 23f55aa09..000000000 --- a/examples/public-docs/apps/web/src/resources/user/user.handlers.ts +++ /dev/null @@ -1,20 +0,0 @@ -import queryClient from 'query-client'; -import { apiService, socketService } from 'services'; - -import { User } from './user.types'; - -apiService.on('error', (error: any) => { - if (error.status === 401) { - queryClient.setQueryData(['account'], null); - } -}); - -socketService.on('connect', () => { - const account = queryClient.getQueryData(['account']) as User; - - socketService.emit('subscribe', `user-${account._id}`); -}); - -socketService.on('user:updated', (data: User) => { - queryClient.setQueryData(['account'], data); -}); diff --git a/examples/public-docs/apps/web/src/resources/user/user.types.ts b/examples/public-docs/apps/web/src/resources/user/user.types.ts deleted file mode 100644 index 0a96f582b..000000000 --- a/examples/public-docs/apps/web/src/resources/user/user.types.ts +++ /dev/null @@ -1,20 +0,0 @@ -export interface User { - _id: string; - createdOn?: Date; - updatedOn?: Date; - lastRequest?: Date; - deletedOn?: Date | null; - firstName: string; - lastName: string; - fullName: string; - email: string; - passwordHash: string; - isEmailVerified: boolean; - isShadow: boolean | null; - signupToken: string | null; - resetPasswordToken?: string | null; - avatarUrl?: string | null; - oauth?: { - google: boolean - }; -} diff --git a/examples/public-docs/apps/web/src/routes.ts b/examples/public-docs/apps/web/src/routes.ts deleted file mode 100644 index 835f4df6e..000000000 --- a/examples/public-docs/apps/web/src/routes.ts +++ /dev/null @@ -1,71 +0,0 @@ -export enum ScopeType { - PUBLIC = 'PUBLIC', - PRIVATE = 'PRIVATE', -} - -export enum LayoutType { - MAIN = 'MAIN', - UNAUTHORIZED = 'UNAUTHORIZED', -} - -export enum RoutePath { - // Private paths - Home = '/', - Profile = '/profile', - - // Auth paths - SignIn = '/sign-in', - SignUp = '/sign-up', - ForgotPassword = '/forgot-password', - ResetPassword = '/reset-password', - ExpireToken = '/expire-token', - - NotFound = '/404', - - Docs = '/docs', -} - -type RoutesConfiguration = { - [routePath in RoutePath]: { - scope?: ScopeType; - layout?: LayoutType; - }; -}; - -export const routesConfiguration: RoutesConfiguration = { - // Private routes - [RoutePath.Home]: { - scope: ScopeType.PRIVATE, - layout: LayoutType.MAIN, - }, - [RoutePath.Profile]: { - scope: ScopeType.PRIVATE, - layout: LayoutType.MAIN, - }, - - // Auth routes - [RoutePath.SignIn]: { - scope: ScopeType.PUBLIC, - layout: LayoutType.UNAUTHORIZED, - }, - [RoutePath.SignUp]: { - scope: ScopeType.PUBLIC, - layout: LayoutType.UNAUTHORIZED, - }, - [RoutePath.ForgotPassword]: { - scope: ScopeType.PUBLIC, - layout: LayoutType.UNAUTHORIZED, - }, - [RoutePath.ResetPassword]: { - scope: ScopeType.PUBLIC, - layout: LayoutType.UNAUTHORIZED, - }, - [RoutePath.ExpireToken]: { - scope: ScopeType.PUBLIC, - layout: LayoutType.UNAUTHORIZED, - }, - - [RoutePath.NotFound]: {}, - - [RoutePath.Docs]: {}, -}; diff --git a/examples/public-docs/apps/web/src/services/analytics.service.ts b/examples/public-docs/apps/web/src/services/analytics.service.ts deleted file mode 100644 index 73a914de3..000000000 --- a/examples/public-docs/apps/web/src/services/analytics.service.ts +++ /dev/null @@ -1,26 +0,0 @@ -import environmentConfig from 'config'; -import mixpanel from 'mixpanel-browser'; -import { User } from 'resources/user/user.types'; - -export const init = () => { - mixpanel.init(environmentConfig.mixpanel.apiKey, { debug: process.env.NEXT_PUBLIC_APP_ENV === 'development' }); -}; - -export const setUser = (user: User | undefined) => { - mixpanel.identify(user?._id); - - if (user) { - mixpanel.people.set({ - firstName: user.firstName, - lastName: user.lastName, - }); - } -}; - -export const track = (event: string, data = {}) => { - try { - mixpanel.track(event, data); - } catch (e) { - console.error(e); //eslint-disable-line - } -}; diff --git a/examples/public-docs/apps/web/src/services/api.service.ts b/examples/public-docs/apps/web/src/services/api.service.ts deleted file mode 100644 index a4dd64785..000000000 --- a/examples/public-docs/apps/web/src/services/api.service.ts +++ /dev/null @@ -1,126 +0,0 @@ -// eslint-disable-next-line max-classes-per-file -import axios, { AxiosInstance, AxiosRequestConfig, AxiosResponse } from 'axios'; - -import config from 'config'; - -export class ApiError extends Error { - __proto__: ApiError; - - data: any; - - status: number; - - constructor(data: any, status = 500, statusText = 'Internal Server Error') { - super(`${status} ${statusText}`); - - this.constructor = ApiError; - this.__proto__ = ApiError.prototype; // eslint-disable-line no-proto - - this.name = this.constructor.name; - this.data = data; - this.status = status; - - if (Error.captureStackTrace) { - Error.captureStackTrace(this, this.constructor); - } - } - - inspect() { - return this.stack; - } -} -const throwApiError = ({ - status, - statusText, - data, -}: any) => { - console.error(`API Error: ${status} ${statusText}`, data); //eslint-disable-line - throw new ApiError(data, status, statusText); -}; - -class ApiClient { - _api: AxiosInstance; - - _handlers: Map; - - constructor(axiosConfig: AxiosRequestConfig) { - this._handlers = new Map(); - - this._api = axios.create(axiosConfig); - this._api.interceptors.response.use( - (response: AxiosResponse) => response.data, - (error) => { - if (axios.isCancel(error)) { - // eslint-disable-next-line @typescript-eslint/no-throw-literal - throw error; - } - // Axios Network Error & Timeout error dont have 'response' field - // https://github.com/axios/axios/issues/383 - const errorResponse = error.response || { - status: error.code, - statusText: error.message, - data: error.data, - }; - - const errorHandlers = this._handlers.get('error') || []; - errorHandlers.forEach((handler: any) => { - handler(errorResponse); - }); - - return throwApiError(errorResponse); - }, - ); - } - - get(url: string, params: any = {}, requestConfig: AxiosRequestConfig = {}): Promise { - return this._api({ - method: 'get', - url, - params, - ...requestConfig, - }); - } - - post(url: string, data: any = {}, requestConfig: AxiosRequestConfig = {}): Promise { - return this._api({ - method: 'post', - url, - data, - ...requestConfig, - }); - } - - put(url: string, data: any = {}, requestConfig: AxiosRequestConfig = {}): Promise { - return this._api({ - method: 'put', - url, - data, - ...requestConfig, - }); - } - - delete(url: string, data: any = {}, requestConfig: AxiosRequestConfig = {}): Promise { - return this._api({ - method: 'delete', - url, - data, - ...requestConfig, - }); - } - - on(event: string, handler: (...args: any[]) => void) { - if (this._handlers.has(event)) { - this._handlers.get(event).add(handler); - } else { - this._handlers.set(event, new Set([handler])); - } - - return () => this._handlers.get(event).remove(handler); - } -} - -export default new ApiClient({ - baseURL: config.apiUrl, - withCredentials: true, - responseType: 'json', -}); diff --git a/examples/public-docs/apps/web/src/services/index.ts b/examples/public-docs/apps/web/src/services/index.ts deleted file mode 100644 index 2d7af77f5..000000000 --- a/examples/public-docs/apps/web/src/services/index.ts +++ /dev/null @@ -1,9 +0,0 @@ -import * as analyticsService from './analytics.service'; -import * as socketService from './socket.service'; -import apiService from './api.service'; - -export { - analyticsService, - socketService, - apiService, -}; diff --git a/examples/public-docs/apps/web/src/services/socket.service.ts b/examples/public-docs/apps/web/src/services/socket.service.ts deleted file mode 100644 index deb3f83a5..000000000 --- a/examples/public-docs/apps/web/src/services/socket.service.ts +++ /dev/null @@ -1,32 +0,0 @@ -import io from 'socket.io-client'; - -import config from 'config'; - -const socket = io(config.wsUrl, { - transports: ['websocket'], - autoConnect: false, -}); - -export const connect = async () => { - socket.open(); -}; - -export const disconnect = () => { - socket.disconnect(); -}; - -export const emit = (event: string, ...args: any[]) => { - socket.emit(event, ...args); -}; - -export const on = (event: string, callback: (...args: any[]) => void) => { - socket.on(event, callback); -}; - -export const off = (event: string, callback: (...args: any[]) => void) => { - socket.off(event, callback); -}; - -export const connected = () => socket.connected; - -export const disconnected = () => socket.disconnected; diff --git a/examples/public-docs/apps/web/src/services/socket.signalr.service.ts b/examples/public-docs/apps/web/src/services/socket.signalr.service.ts deleted file mode 100644 index 3864c9050..000000000 --- a/examples/public-docs/apps/web/src/services/socket.signalr.service.ts +++ /dev/null @@ -1,32 +0,0 @@ -import { HubConnectionBuilder, HubConnectionState } from '@microsoft/signalr'; - -import config from 'config'; - -const connection = new HubConnectionBuilder() - .withUrl(config.wsUrl) - .withAutomaticReconnect() - .build(); - -export const connect = async () => { - await connection.start(); -}; - -export const disconnect = async () => { - await connection.stop(); -}; - -export const emit = async (event: string, ...args: any[]) => { - await connection.invoke(event, ...args); -}; - -export const on = (event: string, callback: (...args: any[]) => void) => { - connection.on(event, callback); -}; - -export const off = (event: string, callback: (...args: any[]) => void) => { - connection.off(event, callback); -}; - -export const connected = () => connection.state === HubConnectionState.Connected; - -export const disconnected = () => connection.state !== HubConnectionState.Connected; diff --git a/examples/public-docs/apps/web/src/theme/globalStyles.ts b/examples/public-docs/apps/web/src/theme/globalStyles.ts deleted file mode 100644 index 7dbf025a2..000000000 --- a/examples/public-docs/apps/web/src/theme/globalStyles.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { CSSObject, MantineTheme } from '@mantine/core'; - -export const globalStyles = (theme: MantineTheme): CSSObject => ({ - '*, *::before, *::after': { - boxSizing: 'border-box', - }, - - body: { - ...theme.fn.fontStyles(), - }, -}); diff --git a/examples/public-docs/apps/web/src/theme/ship-theme.ts b/examples/public-docs/apps/web/src/theme/ship-theme.ts deleted file mode 100644 index 0b70b217d..000000000 --- a/examples/public-docs/apps/web/src/theme/ship-theme.ts +++ /dev/null @@ -1,105 +0,0 @@ -import { MantineTheme, MantineThemeOverride } from '@mantine/core'; - -const shipTheme: MantineThemeOverride = { - fontFamily: 'Roboto, sans-serif', - fontFamilyMonospace: 'monospace', - headings: { - fontFamily: 'Roboto, sans-serif', - fontWeight: 600, - }, - lineHeight: 1.45, - primaryColor: 'blue', - primaryShade: 6, - other: { - transition: { - speed: { - fast: '200ms', - smooth: '300ms', - slow: '400ms', - slowest: '1000ms', - }, - easing: { - linear: 'linear', - ease: 'ease', - easeIn: 'ease-in', - easeOut: 'ease-out', - easeInOut: 'ease-in-out', - easeInBack: 'cubic-bezier(0.82,-0.2, 0.32, 1.84)', - easeOutBack: 'cubic-bezier(0.5,-1.18, 0.51, 1.11)', - easeInOutBack: 'cubic-bezier(.64,-0.56,.34,1.55)', - }, - }, - }, - components: { - Button: { - defaultProps: { size: 'lg' }, - styles: () => ({ - label: { - fontWeight: 500, - }, - }), - }, - TextInput: { - defaultProps: { - size: 'lg', - }, - styles: (theme: MantineTheme) => ({ - input: { - fontSize: '16px', - - '&::placeholder, &:disabled, &:disabled::placeholder': { - color: '#6d747b !important', - }, - }, - invalid: { - color: theme.colors.gray[9], - - '&, &:focus-within': { - borderColor: theme.colors.red[6], - }, - }, - label: { - fontSize: '18px', - fontWeight: 600, - }, - }), - }, - PasswordInput: { - defaultProps: { size: 'lg' }, - styles: (theme: MantineTheme) => ({ - root: { - input: { - fontSize: '16px !important', - - '&::placeholder': { - color: '#6d747b', - }, - }, - }, - label: { - fontSize: '18px', - fontWeight: 600, - }, - invalid: { - input: { - '&::placeholder': { - color: theme.colors.red[6], - }, - }, - }, - }), - }, - Select: { - defaultProps: { size: 'md' }, - }, - Image: { - styles: () => ({ - image: { - objectPosition: 'left !important', - }, - }), - }, - }, -}; - -export default shipTheme; diff --git a/examples/public-docs/apps/web/src/types/index.ts b/examples/public-docs/apps/web/src/types/index.ts deleted file mode 100644 index 2ed982482..000000000 --- a/examples/public-docs/apps/web/src/types/index.ts +++ /dev/null @@ -1 +0,0 @@ -export type QueryParam = string | string[] | undefined; diff --git a/examples/public-docs/apps/web/src/utils/handle-error.util.ts b/examples/public-docs/apps/web/src/utils/handle-error.util.ts deleted file mode 100644 index 8930e6450..000000000 --- a/examples/public-docs/apps/web/src/utils/handle-error.util.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { showNotification } from '@mantine/notifications'; -import { UseFormSetError } from 'react-hook-form'; - -export default function handleError(e: any, setError?: UseFormSetError) { - const { errors: { global, ...errors } } = e.data; - - if (global) { - showNotification({ - title: 'Error', - message: global, - color: 'red', - }); - } - - if (setError) { - Object.keys(errors).forEach((key) => { - const message = errors[key].join(' '); - - setError(key, { message }, { shouldFocus: true }); - }); - } -} diff --git a/examples/public-docs/apps/web/src/utils/index.ts b/examples/public-docs/apps/web/src/utils/index.ts deleted file mode 100644 index ecc77d01b..000000000 --- a/examples/public-docs/apps/web/src/utils/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -import handleError from './handle-error.util'; - -export { - handleError, -}; diff --git a/examples/public-docs/apps/web/tsconfig.json b/examples/public-docs/apps/web/tsconfig.json deleted file mode 100644 index 19d018652..000000000 --- a/examples/public-docs/apps/web/tsconfig.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "compilerOptions": { - "rootDir": ".", - "baseUrl": "src", - "paths": { - "public/*": ["../public/*"] - }, - "target": "es5", - "lib": ["dom", "dom.iterable", "esnext"], - "allowJs": true, - "skipLibCheck": true, - "strict": true, - "forceConsistentCasingInFileNames": true, - "noEmit": true, - "esModuleInterop": true, - "module": "esnext", - "moduleResolution": "node", - "resolveJsonModule": true, - "isolatedModules": true, - "jsx": "preserve", - "incremental": true - }, - "include": ["next-env.d.ts", "types.d.ts", "**/*.ts", "**/*.tsx", "next.config.js"], - "exclude": ["node_modules"], - } diff --git a/examples/public-docs/bin/run-all.sh b/examples/public-docs/bin/run-all.sh deleted file mode 100755 index 59b03d979..000000000 --- a/examples/public-docs/bin/run-all.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh -npm run infra | -while read line; -do - if [[ ${line} =~ "Replication done" ]] - then - echo $line - npm run turbo-start & - else echo $line - fi; -done diff --git a/examples/public-docs/bin/setup.sh b/examples/public-docs/bin/setup.sh deleted file mode 100755 index 6ffa16454..000000000 --- a/examples/public-docs/bin/setup.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/usr/bin/env bash -set -e - -command="rs.initiate({ _id: '$REPLICA_SET_NAME', members: [{ _id: 0, host: '$HOST:$PORT' }]})" - -for i in $(seq 1 20); do - if [[ $i -eq 20 ]]; then - echo "Replication failed" - exit 1 - fi - - echo "Replication attempt" - - if [[ $USERNAME ]]; then - mongo "$HOST":"$PORT" --authenticationDatabase "admin" -u "$USERNAME" -p "$PASSWORD" --quiet --eval "$command" && break - else - mongo "$HOST":"$PORT" --quiet --eval "$command" && break - fi - - sleep 2 -done - -echo "Replication done" - -[[ $IMMORTAL ]] && while true; do sleep 1; done - -exit 0 diff --git a/examples/public-docs/bin/start.sh b/examples/public-docs/bin/start.sh deleted file mode 100755 index 5049c94d3..000000000 --- a/examples/public-docs/bin/start.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh -export DOCKER_CLIENT_TIMEOUT=600 -export COMPOSE_HTTP_TIMEOUT=600 -Green='\033[0;32m' -Color_Off='\033[0m' - -echo 'You can start services independently' -echo $Green'./bin/start.sh api migrator scheduler web' - -echo $Color_Off -docker-compose up --build "$@" diff --git a/examples/public-docs/docker-compose.yml b/examples/public-docs/docker-compose.yml deleted file mode 100644 index 69f14cac9..000000000 --- a/examples/public-docs/docker-compose.yml +++ /dev/null @@ -1,133 +0,0 @@ -version: '3.6' -services: - mongo: - container_name: ship-mongo - image: mongo:4.4 - entrypoint: - - bash - - -c - - | - cp /config/mongo-keyfile /config/keyfile - chmod 400 /config/keyfile - chown mongodb -R /config/keyfile - exec docker-entrypoint.sh $$@ - command: mongod --replSet rs --bind_ip_all --keyFile config/keyfile --quiet --logpath /dev/null - environment: - - MONGO_INITDB_ROOT_USERNAME=root - - MONGO_INITDB_ROOT_PASSWORD=root - networks: - - ship - ports: - - 27017:27017 - volumes: - - /var/run/docker.sock:/var/run/docker.sock - - ./apps/api/src/config/mongo-keyfile:/config/mongo-keyfile - - type: volume - source: mongodb - target: /data/db - - type: volume - source: mongodb-cfg - target: /data/configdb - # mongo-replicator creates a replica set for transactions support - mongo-replicator: - container_name: ship-mongo-replicator - image: mongo:4.4 - entrypoint: - - bash - - -c - - | - chmod +x /setup.sh - bash /setup.sh - volumes: - - ./bin/setup.sh:/setup.sh - environment: - - HOST=mongo - - PORT=27017 - - USERNAME=root - - PASSWORD=root - - REPLICA_SET_NAME=rs - networks: - - ship - depends_on: - - mongo - redis: - container_name: ship-redis - image: redis:5.0.5 - command: redis-server --appendonly yes - hostname: redis - networks: - - ship - ports: - - 6379:6379 - api: - container_name: ship-api - build: - context: . - dockerfile: ./apps/api/Dockerfile - target: development - args: - NODE_ENV: development - APP_ENV: development-docker - networks: - - ship - volumes: - - ./apps/api/src:/app/apps/api/src - ports: - - 3001:3001 - depends_on: - - redis - - mongo-replicator - migrator: - container_name: ship-migrator - build: - context: . - dockerfile: ./apps/api/Dockerfile.migrator - target: development - args: - NODE_ENV: development - APP_ENV: development-docker - networks: - - ship - volumes: - - ./apps/api/src:/app/apps/api/src - depends_on: - - mongo-replicator - scheduler: - container_name: ship-scheduler - build: - context: . - dockerfile: ./apps/api/Dockerfile.scheduler - target: development - args: - NODE_ENV: development - APP_ENV: development - networks: - - ship - volumes: - - ./apps/api/src:/app/apps/api/src - depends_on: - - mongo-replicator - web: - container_name: ship-web - build: - context: . - dockerfile: ./apps/web/Dockerfile - target: development - args: - NODE_ENV: development - APP_ENV: development - volumes: - - ./apps/web/src:/app/apps/web/src - - ./apps/web/public:/app/apps/web/public - networks: - - ship - ports: - - 3002:3002 - -networks: - ship: - name: ship-network - -volumes: - mongodb: - mongodb-cfg: diff --git a/examples/public-docs/package.json b/examples/public-docs/package.json deleted file mode 100644 index 92eccaaa5..000000000 --- a/examples/public-docs/package.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "name": "ship", - "scripts": { - "infra": "bash ./bin/start.sh mongo redis mongo-replicator", - "turbo-start": "turbo run development", - "docker": "bash ./bin/start.sh", - "start": "bash ./bin/run-all.sh", - "prepare": "husky install" - }, - "devDependencies": { - "husky": "8.0.3", - "react": "18.2.0", - "react-dom": "18.2.0", - "turbo": "1.8.3" - }, - "optionalDependencies": { - "@next/swc-android-arm64": "13.2.4", - "@next/swc-darwin-arm64": "13.2.4", - "@next/swc-darwin-x64": "13.2.4", - "@next/swc-linux-arm-gnueabihf": "13.2.4", - "@next/swc-linux-arm64-gnu": "13.2.4", - "@next/swc-linux-arm64-musl": "13.2.4", - "@next/swc-linux-x64-gnu": "13.2.4", - "@next/swc-linux-x64-musl": "13.2.4", - "@next/swc-win32-arm64-msvc": "13.2.4", - "@next/swc-win32-ia32-msvc": "13.2.4", - "@next/swc-win32-x64-msvc": "13.2.4", - "turbo-android-arm64": "1.4.7", - "turbo-darwin-64": "1.8.3", - "turbo-darwin-arm64": "1.8.3", - "turbo-freebsd-64": "1.4.7", - "turbo-freebsd-arm64": "1.4.7", - "turbo-linux-32": "1.4.7", - "turbo-linux-64": "1.8.3", - "turbo-linux-arm": "1.4.7", - "turbo-linux-arm64": "1.8.3", - "turbo-linux-mips64le": "1.4.7", - "turbo-linux-ppc64le": "1.4.7", - "turbo-windows-32": "1.4.7", - "turbo-windows-64": "1.8.3", - "turbo-windows-arm64": "1.8.3" - } -} diff --git a/examples/public-docs/packages/.gitkeep b/examples/public-docs/packages/.gitkeep deleted file mode 100644 index e69de29bb..000000000 diff --git a/examples/public-docs/pnpm-lock.yaml b/examples/public-docs/pnpm-lock.yaml deleted file mode 100644 index 36e7dbb8f..000000000 --- a/examples/public-docs/pnpm-lock.yaml +++ /dev/null @@ -1,23497 +0,0 @@ -lockfileVersion: '9.0' - -settings: - autoInstallPeers: true - excludeLinksFromLockfile: false - -importers: - - .: - optionalDependencies: - '@next/swc-android-arm64': - specifier: 13.2.4 - version: 13.2.4 - '@next/swc-darwin-arm64': - specifier: 13.2.4 - version: 13.2.4 - '@next/swc-darwin-x64': - specifier: 13.2.4 - version: 13.2.4 - '@next/swc-linux-arm-gnueabihf': - specifier: 13.2.4 - version: 13.2.4 - '@next/swc-linux-arm64-gnu': - specifier: 13.2.4 - version: 13.2.4 - '@next/swc-linux-arm64-musl': - specifier: 13.2.4 - version: 13.2.4 - '@next/swc-linux-x64-gnu': - specifier: 13.2.4 - version: 13.2.4 - '@next/swc-linux-x64-musl': - specifier: 13.2.4 - version: 13.2.4 - '@next/swc-win32-arm64-msvc': - specifier: 13.2.4 - version: 13.2.4 - '@next/swc-win32-ia32-msvc': - specifier: 13.2.4 - version: 13.2.4 - '@next/swc-win32-x64-msvc': - specifier: 13.2.4 - version: 13.2.4 - turbo-android-arm64: - specifier: 1.4.7 - version: 1.4.7 - turbo-darwin-64: - specifier: 1.8.3 - version: 1.8.3 - turbo-darwin-arm64: - specifier: 1.8.3 - version: 1.8.3 - turbo-freebsd-64: - specifier: 1.4.7 - version: 1.4.7 - turbo-freebsd-arm64: - specifier: 1.4.7 - version: 1.4.7 - turbo-linux-32: - specifier: 1.4.7 - version: 1.4.7 - turbo-linux-64: - specifier: 1.8.3 - version: 1.8.3 - turbo-linux-arm: - specifier: 1.4.7 - version: 1.4.7 - turbo-linux-arm64: - specifier: 1.8.3 - version: 1.8.3 - turbo-linux-mips64le: - specifier: 1.4.7 - version: 1.4.7 - turbo-linux-ppc64le: - specifier: 1.4.7 - version: 1.4.7 - turbo-windows-32: - specifier: 1.4.7 - version: 1.4.7 - turbo-windows-64: - specifier: 1.8.3 - version: 1.8.3 - turbo-windows-arm64: - specifier: 1.8.3 - version: 1.8.3 - devDependencies: - husky: - specifier: 8.0.3 - version: 8.0.3 - react: - specifier: 18.2.0 - version: 18.2.0 - react-dom: - specifier: 18.2.0 - version: 18.2.0(react@18.2.0) - turbo: - specifier: 1.8.3 - version: 1.8.3 - - apps/api: - dependencies: - '@asteasolutions/zod-to-openapi': - specifier: 4.6.0 - version: 4.6.0(zod@3.21.4) - '@aws-sdk/client-s3': - specifier: 3.289.0 - version: 3.289.0 - '@aws-sdk/lib-storage': - specifier: 3.289.0 - version: 3.289.0(@aws-sdk/abort-controller@3.289.0)(@aws-sdk/client-s3@3.289.0) - '@aws-sdk/s3-request-presigner': - specifier: 3.289.0 - version: 3.289.0 - '@koa/cors': - specifier: 4.0.0 - version: 4.0.0 - '@koa/multer': - specifier: 3.0.2 - version: 3.0.2(multer@1.4.5-lts.1) - '@koa/router': - specifier: 12.0.0 - version: 12.0.0 - '@paralect/node-mongo': - specifier: 3.1.2 - version: 3.1.2 - '@sendgrid/mail': - specifier: 7.7.0 - version: 7.7.0 - '@socket.io/redis-adapter': - specifier: 8.1.0 - version: 8.1.0(socket.io-adapter@2.5.2) - '@socket.io/redis-emitter': - specifier: 5.1.0 - version: 5.1.0 - bcryptjs: - specifier: 2.4.3 - version: 2.4.3 - dotenv: - specifier: 16.0.3 - version: 16.0.3 - google-auth-library: - specifier: 8.7.0 - version: 8.7.0 - handlebars: - specifier: 4.7.7 - version: 4.7.7 - koa: - specifier: 2.14.1 - version: 2.14.1 - koa-bodyparser: - specifier: 4.3.0 - version: 4.3.0 - koa-compose: - specifier: 4.1.0 - version: 4.1.0 - koa-helmet: - specifier: 6.1.0 - version: 6.1.0 - koa-logger: - specifier: 3.2.1 - version: 3.2.1 - koa-mount: - specifier: 4.0.0 - version: 4.0.0 - koa-qs: - specifier: 3.0.0 - version: 3.0.0 - lodash: - specifier: 4.17.21 - version: 4.17.21 - mixpanel: - specifier: 0.17.0 - version: 0.17.0 - mjml: - specifier: 4.13.0 - version: 4.13.0 - module-alias: - specifier: 2.2.2 - version: 2.2.2 - moment: - specifier: 2.29.4 - version: 2.29.4 - moment-duration-format: - specifier: 2.3.2 - version: 2.3.2 - multer: - specifier: 1.4.5-lts.1 - version: 1.4.5-lts.1 - node-schedule: - specifier: 2.1.1 - version: 2.1.1 - nodemon: - specifier: 2.0.21 - version: 2.0.21 - npm: - specifier: 9.6.1 - version: 9.6.1 - psl: - specifier: 1.9.0 - version: 1.9.0 - redis: - specifier: 4.6.5 - version: 4.6.5 - socket.io: - specifier: 4.6.1 - version: 4.6.1 - ts-node: - specifier: 10.9.1 - version: 10.9.1(@types/node@18.15.1)(typescript@4.9.5) - winston: - specifier: 3.8.2 - version: 3.8.2 - zod: - specifier: 3.21.4 - version: 3.21.4 - devDependencies: - '@shelf/jest-mongodb': - specifier: 4.1.7 - version: 4.1.7(jest-environment-node@29.5.0)(mongodb@4.14.0) - '@types/bcryptjs': - specifier: 2.4.2 - version: 2.4.2 - '@types/jest': - specifier: 29.4.0 - version: 29.4.0 - '@types/koa': - specifier: 2.13.5 - version: 2.13.5 - '@types/koa-bodyparser': - specifier: 4.3.10 - version: 4.3.10 - '@types/koa-compose': - specifier: 3.2.5 - version: 3.2.5 - '@types/koa-helmet': - specifier: 6.0.4 - version: 6.0.4 - '@types/koa-logger': - specifier: 3.1.2 - version: 3.1.2 - '@types/koa-mount': - specifier: 4.0.2 - version: 4.0.2 - '@types/koa-qs': - specifier: 2.0.0 - version: 2.0.0 - '@types/koa__cors': - specifier: 3.3.1 - version: 3.3.1 - '@types/koa__multer': - specifier: 2.0.4 - version: 2.0.4 - '@types/koa__router': - specifier: 12.0.0 - version: 12.0.0 - '@types/lodash': - specifier: 4.14.191 - version: 4.14.191 - '@types/module-alias': - specifier: 2.0.1 - version: 2.0.1 - '@types/node': - specifier: 18.15.1 - version: 18.15.1 - '@types/node-schedule': - specifier: 2.1.0 - version: 2.1.0 - '@types/psl': - specifier: 1.1.0 - version: 1.1.0 - '@typescript-eslint/eslint-plugin': - specifier: 5.54.1 - version: 5.54.1(@typescript-eslint/parser@5.54.1)(eslint@8.36.0)(typescript@4.9.5) - '@typescript-eslint/parser': - specifier: 5.54.1 - version: 5.54.1(eslint@8.36.0)(typescript@4.9.5) - eslint: - specifier: 8.36.0 - version: 8.36.0 - eslint-config-airbnb-base: - specifier: 15.0.0 - version: 15.0.0(eslint-plugin-import@2.27.5)(eslint@8.36.0) - eslint-config-airbnb-typescript: - specifier: 17.0.0 - version: 17.0.0(@typescript-eslint/eslint-plugin@5.54.1)(@typescript-eslint/parser@5.54.1)(eslint-plugin-import@2.27.5)(eslint@8.36.0) - eslint-plugin-import: - specifier: 2.27.5 - version: 2.27.5(@typescript-eslint/parser@5.54.1)(eslint-import-resolver-typescript@3.5.3)(eslint@8.36.0) - jest: - specifier: 29.5.0 - version: 29.5.0(@types/node@18.15.1)(ts-node@10.9.1) - lint-staged: - specifier: 13.2.0 - version: 13.2.0 - mongodb-memory-server: - specifier: 8.12.0 - version: 8.12.0 - npm-run-all: - specifier: 4.1.5 - version: 4.1.5 - ts-jest: - specifier: 29.0.5 - version: 29.0.5(@babel/core@7.21.0)(jest@29.5.0)(typescript@4.9.5) - typescript: - specifier: 4.9.5 - version: 4.9.5 - - apps/web: - dependencies: - '@hookform/resolvers': - specifier: 2.9.11 - version: 2.9.11(react-hook-form@7.43.5) - '@mantine/core': - specifier: 6.0.1 - version: 6.0.1(@emotion/react@11.10.6)(@mantine/hooks@6.0.1)(@types/react@18.0.28)(react-dom@18.2.0)(react@18.2.0) - '@mantine/dates': - specifier: 6.0.1 - version: 6.0.1(@mantine/core@6.0.1)(@mantine/hooks@6.0.1)(dayjs@1.11.7)(react@18.2.0) - '@mantine/dropzone': - specifier: 6.0.1 - version: 6.0.1(@mantine/core@6.0.1)(@mantine/hooks@6.0.1)(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': - specifier: 6.0.1 - version: 6.0.1(react@18.2.0) - '@mantine/modals': - specifier: 6.0.1 - version: 6.0.1(@mantine/core@6.0.1)(@mantine/hooks@6.0.1)(react-dom@18.2.0)(react@18.2.0) - '@mantine/next': - specifier: 6.0.1 - version: 6.0.1(@emotion/react@11.10.6)(@emotion/server@11.10.0)(next@13.2.4)(react-dom@18.2.0)(react@18.2.0) - '@mantine/notifications': - specifier: 6.0.1 - version: 6.0.1(@mantine/core@6.0.1)(@mantine/hooks@6.0.1)(react-dom@18.2.0)(react@18.2.0) - '@microsoft/signalr': - specifier: 7.0.3 - version: 7.0.3 - '@svgr/webpack': - specifier: 6.5.1 - version: 6.5.1 - '@tabler/icons-react': - specifier: 2.10.0 - version: 2.10.0(react@18.2.0) - '@tanstack/react-table': - specifier: 8.7.9 - version: 8.7.9(react-dom@18.2.0)(react@18.2.0) - axios: - specifier: 1.3.4 - version: 1.3.4 - dayjs: - specifier: 1.11.7 - version: 1.11.7 - lodash: - specifier: 4.17.21 - version: 4.17.21 - mixpanel-browser: - specifier: 2.45.0 - version: 2.45.0 - next: - specifier: 13.2.4 - version: 13.2.4(@babel/core@7.21.0)(react-dom@18.2.0)(react@18.2.0) - react: - specifier: 18.2.0 - version: 18.2.0 - react-dom: - specifier: 18.2.0 - version: 18.2.0(react@18.2.0) - react-hook-form: - specifier: 7.43.5 - version: 7.43.5(react@18.2.0) - react-query: - specifier: 3.39.3 - version: 3.39.3(react-dom@18.2.0)(react@18.2.0) - socket.io-client: - specifier: 4.6.1 - version: 4.6.1 - swagger-ui-react: - specifier: 4.18.3 - version: 4.18.3(@types/react-dom@18.0.11)(@types/react@18.0.28)(react-dom@18.2.0)(react@18.2.0) - zod: - specifier: 3.21.4 - version: 3.21.4 - devDependencies: - '@babel/core': - specifier: 7.21.0 - version: 7.21.0 - '@react-theming/storybook-addon': - specifier: 1.1.10 - version: 1.1.10(@storybook/addons@6.5.16)(@storybook/react@6.5.16)(@storybook/theming@6.5.16)(react-dom@18.2.0)(react@18.2.0) - '@storybook/addon-actions': - specifier: 6.5.16 - version: 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/addon-essentials': - specifier: 6.5.16 - version: 6.5.16(@babel/core@7.21.0)(@storybook/builder-webpack5@6.5.16)(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)(webpack@5.75.0) - '@storybook/addon-links': - specifier: 6.5.16 - version: 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/builder-webpack5': - specifier: 6.5.16 - version: 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/manager-webpack5': - specifier: 6.5.16 - version: 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/react': - specifier: 6.5.16 - version: 6.5.16(@babel/core@7.21.0)(@storybook/builder-webpack5@6.5.16)(@storybook/manager-webpack5@6.5.16)(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(require-from-string@2.0.2)(typescript@4.9.5) - '@types/mixpanel-browser': - specifier: 2.38.1 - version: 2.38.1 - '@types/node': - specifier: 18.15.1 - version: 18.15.1 - '@types/qs': - specifier: 6.9.7 - version: 6.9.7 - '@types/react': - specifier: 18.0.28 - version: 18.0.28 - '@types/react-dom': - specifier: 18.0.11 - version: 18.0.11 - '@typescript-eslint/eslint-plugin': - specifier: 5.54.1 - version: 5.54.1(@typescript-eslint/parser@5.54.1)(eslint@8.36.0)(typescript@4.9.5) - '@typescript-eslint/parser': - specifier: 5.54.1 - version: 5.54.1(eslint@8.36.0)(typescript@4.9.5) - babel-loader: - specifier: 9.1.2 - version: 9.1.2(@babel/core@7.21.0)(webpack@5.75.0) - chromatic: - specifier: 6.17.1 - version: 6.17.1 - css-loader: - specifier: 6.7.3 - version: 6.7.3(webpack@5.75.0) - eslint: - specifier: 8.36.0 - version: 8.36.0 - eslint-config-airbnb: - specifier: 19.0.4 - version: 19.0.4(eslint-plugin-import@2.27.5)(eslint-plugin-jsx-a11y@6.7.1)(eslint-plugin-react-hooks@4.6.0)(eslint-plugin-react@7.32.2)(eslint@8.36.0) - eslint-config-airbnb-typescript: - specifier: 17.0.0 - version: 17.0.0(@typescript-eslint/eslint-plugin@5.54.1)(@typescript-eslint/parser@5.54.1)(eslint-plugin-import@2.27.5)(eslint@8.36.0) - eslint-config-next: - specifier: 13.2.4 - version: 13.2.4(eslint@8.36.0)(typescript@4.9.5) - lint-staged: - specifier: 13.2.0 - version: 13.2.0 - style-loader: - specifier: 3.3.1 - version: 3.3.1(webpack@5.75.0) - typescript: - specifier: 4.9.5 - version: 4.9.5 - -packages: - - '@ampproject/remapping@2.2.0': - resolution: {integrity: sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==} - engines: {node: '>=6.0.0'} - - '@arcanis/slice-ansi@1.1.1': - resolution: {integrity: sha512-xguP2WR2Dv0gQ7Ykbdb7BNCnPnIPB94uTi0Z2NvkRBEnhbwjOQ7QyQKJXrVQg4qDpiD9hA5l5cCwy/z2OXgc3w==} - - '@asteasolutions/zod-to-openapi@4.6.0': - resolution: {integrity: sha512-23tcf85OI7ESnZPvBO8Ob39eJbFvfex13HDrrrpIXVytHcqKiiiJMNrYUwDJrVPYm6Wl12vdpYwSYDGi1quk/Q==} - peerDependencies: - zod: ^3.20.2 - - '@aws-crypto/crc32@3.0.0': - resolution: {integrity: sha512-IzSgsrxUcsrejQbPVilIKy16kAT52EwB6zSaI+M3xxIhKh5+aldEyvI+z6erM7TCLB2BJsFrtHjp6/4/sr+3dA==} - - '@aws-crypto/crc32c@3.0.0': - resolution: {integrity: sha512-ENNPPManmnVJ4BTXlOjAgD7URidbAznURqD0KvfREyc4o20DPYdEldU1f5cQ7Jbj0CJJSPaMIk/9ZshdB3210w==} - - '@aws-crypto/ie11-detection@3.0.0': - resolution: {integrity: sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==} - - '@aws-crypto/sha1-browser@3.0.0': - resolution: {integrity: sha512-NJth5c997GLHs6nOYTzFKTbYdMNA6/1XlKVgnZoaZcQ7z7UJlOgj2JdbHE8tiYLS3fzXNCguct77SPGat2raSw==} - - '@aws-crypto/sha256-browser@3.0.0': - resolution: {integrity: sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==} - - '@aws-crypto/sha256-js@3.0.0': - resolution: {integrity: sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==} - - '@aws-crypto/supports-web-crypto@3.0.0': - resolution: {integrity: sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==} - - '@aws-crypto/util@3.0.0': - resolution: {integrity: sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==} - - '@aws-sdk/abort-controller@3.272.0': - resolution: {integrity: sha512-s2TV3phapcTwZNr4qLxbfuQuE9ZMP4RoJdkvRRCkKdm6jslsWLJf2Zlcxti/23hOlINUMYv2iXE2pftIgWGdpg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/abort-controller@3.289.0': - resolution: {integrity: sha512-Xakz8EeTl0Q3KaWRdCaRQrrYxBAkQGj6eeT+DVmMLMz4gzTcSHwvfR5tVBIPHk4+IjboJJKM5l1xAZ90AGFPAQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/chunked-blob-reader-native@3.208.0': - resolution: {integrity: sha512-JeOZ95PW+fJ6bbuqPySYqLqHk1n4+4ueEEraJsiUrPBV0S1ZtyvOGHcnGztKUjr2PYNaiexmpWuvUve9K12HRA==} - - '@aws-sdk/chunked-blob-reader@3.188.0': - resolution: {integrity: sha512-zkPRFZZPL3eH+kH86LDYYXImiClA1/sW60zYOjse9Pgka+eDJlvBN6hcYxwDEKjcwATYiSRR1aVQHcfCinlGXg==} - - '@aws-sdk/client-cognito-identity@3.272.0': - resolution: {integrity: sha512-uMjRWcNvX7SoGaVn0mXWD43+Z1awPahQwGW3riDLfXHZdOgw2oFDhD3Jg5jQ8OzQLUfDvArhE3WyZwlS4muMuQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/client-s3@3.289.0': - resolution: {integrity: sha512-6D1XkUAdAYfyVDkYJ3fKxYpMiEx0kzc0JBRfU3PeZkPUm4NRPrS1UvKeE3wPzsSErNVyWNgmDAIZ9fZsHPkLvQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/client-sso-oidc@3.272.0': - resolution: {integrity: sha512-ECcXu3xoa1yggnGKMTh29eWNHiF/wC6r5Uqbla22eOOosyh0+Z6lkJ3JUSLOUKCkBXA4Cs/tJL9UDFBrKbSlvA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/client-sso-oidc@3.289.0': - resolution: {integrity: sha512-+09EK4aWdNjF+5+nK6Dmlwx3es8NTkyABTOj9H4eKB90rXQVX8PjoaFhK/b+NcNKDxgb1E6k6evZEpAb8dYQHg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/client-sso@3.272.0': - resolution: {integrity: sha512-xn9a0IGONwQIARmngThoRhF1lLGjHAD67sUaShgIMaIMc6ipVYN6alWG1VuUpoUQ6iiwMEt0CHdfCyLyUV/fTA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/client-sso@3.289.0': - resolution: {integrity: sha512-GIpxPaEwqXC+P8wH+G4mIDnxYFJ+2SyYTrnoxb4OUH+gAkU6tybgvsv0fy+jsVD6GAWPdfU1AYk2ZjofdFiHeA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/client-sts@3.272.0': - resolution: {integrity: sha512-kigxCxURp3WupufGaL/LABMb7UQfzAQkKcj9royizL3ItJ0vw5kW/JFrPje5IW1mfLgdPF7PI9ShOjE0fCLTqA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/client-sts@3.289.0': - resolution: {integrity: sha512-n+8zDCzk0NvCIXX3MGS8RV/+/MkJso0jkqkPOgPcS8Kf7Zbjlx8FyeGQ5LS7HjhCDk+jExH/s9h1kd3sL1pHQA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/config-resolver@3.272.0': - resolution: {integrity: sha512-Dr4CffRVNsOp3LRNdpvcH6XuSgXOSLblWliCy/5I86cNl567KVMxujVx6uPrdTXYs2h1rt3MNl6jQGnAiJeTbw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/config-resolver@3.289.0': - resolution: {integrity: sha512-QYrBJeFJwx9wL73xMJgSTS6zY5SQh0tbZXpVlSZcNDuOufsu5zdcZZCOp0I20yGf8zxKX59u7O73OUlppkk+Wg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-cognito-identity@3.272.0': - resolution: {integrity: sha512-rVx0rtQjbiYCM0nah2rB/2ut2YJYPpRr1AbW/Hd4r/PI+yiusrmXAwuT4HIW2yr34zsQMPi1jZ3WHN9Rn9mzlg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-env@3.272.0': - resolution: {integrity: sha512-QI65NbLnKLYHyTYhXaaUrq6eVsCCrMUb05WDA7+TJkWkjXesovpjc8vUKgFiLSxmgKmb2uOhHNcDyObKMrYQFw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-env@3.289.0': - resolution: {integrity: sha512-h4yNEW2ZJATKVxL0Bvz/WWXUmBr+AhsTyjUNge734306lXNG5/FM7zYp2v6dSQWt02WwBXyfkP3lr+A0n4rHyA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-imds@3.272.0': - resolution: {integrity: sha512-wwAfVY1jTFQEfxVfdYD5r5ieYGl+0g4nhekVxNMqE8E1JeRDd18OqiwAflzpgBIqxfqvCUkf+vl5JYyacMkNAQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-imds@3.289.0': - resolution: {integrity: sha512-SIl+iLQpDR6HA9CKTebui7NLop5GxnCkufbM3tbSqrQcPcEfYLOwXpu5gpKO2unQzRykCoyRVia1lr7Pc9Hgdg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-ini@3.272.0': - resolution: {integrity: sha512-iE3CDzK5NcupHYjfYjBdY1JCy8NLEoRUsboEjG0i0gy3S3jVpDeVHX1dLVcL/slBFj6GiM7SoNV/UfKnJf3Gaw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-ini@3.289.0': - resolution: {integrity: sha512-kvNUn3v4FTRRiqCOXl46v51VTGOM76j5Szcrhkk9qeFW6zt4iFodp6tQ4ynDtDxYxOvjuEfm3ii1YN5nkI1uKA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-node@3.272.0': - resolution: {integrity: sha512-FI8uvwM1IxiRSvbkdKv8DZG5vxU3ezaseTaB1fHWTxEUFb0pWIoHX9oeOKer9Fj31SOZTCNAaYFURbSRuZlm/w==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-node@3.289.0': - resolution: {integrity: sha512-05CYPGnk5cDiOQDIaXNVibNOwQdI34MDiL17YkSfPv779A+uq4vqg/aBfL41BDJjr1gSGgyvVhlcUdBKnlp93Q==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-process@3.272.0': - resolution: {integrity: sha512-hiCAjWWm2PeBFp5cjkxqyam/XADjiS+e7GzwC34TbZn3LisS0uoweLojj9tD11NnnUhyhbLteUvu5+rotOLwrg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-process@3.289.0': - resolution: {integrity: sha512-t39CJHj1/f2DcRbEUSJ1ixwDsgaElDpJPynn59MOdNnrSh5bYuYmkrum/GYXYSsk+HoSK21JvwgvjnrkA9WZKQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-sso@3.272.0': - resolution: {integrity: sha512-hwYaulyiU/7chKKFecxCeo0ls6Dxs7h+5EtoYcJJGvfpvCncyOZF35t00OAsCd3Wo7HkhhgfpGdb6dmvCNQAZQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-sso@3.289.0': - resolution: {integrity: sha512-8+DjOqj5JCpVdT4EJtdfis6OioAdiDKM1mvgDTG8R43MSThc+RGfzqaDJQdM+8+hzkYhxYfyI9XB0H+X3rDNsA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-web-identity@3.272.0': - resolution: {integrity: sha512-ImrHMkcgneGa/HadHAQXPwOrX26sAKuB8qlMxZF/ZCM2B55u8deY+ZVkVuraeKb7YsahMGehPFOfRAF6mvFI5Q==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-web-identity@3.289.0': - resolution: {integrity: sha512-jZ9hQvr0I7Z2DekDtZytViYn7zNNJG06N0CinAJzzvreAQ1I61rU7mhaWc05jhBSdeA3f82XoDAgxqY4xIh9pQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-providers@3.272.0': - resolution: {integrity: sha512-ucd6Xq6aBMf+nM4uz5zkjL11mwaE5BV1Q4hkulaGu2v1dRA8n6zhLJk/sb4hOJ7leelqMJMErlbQ2T3MkYvlJQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/eventstream-codec@3.289.0': - resolution: {integrity: sha512-WtiQpJFp9ssEVCxmr0VU1p+aSYYnxPyLwMakgqFIUM+XlJLmkML2iNmhUrR5+Ei4W5E7jPrGLq/40IKjkp9eYw==} - - '@aws-sdk/eventstream-serde-browser@3.289.0': - resolution: {integrity: sha512-CcgQxrMyeZgh1exvbmEr7Q4KB2wHaeHBgk3kKC97Oi9EF/LyCjErfJ0WZoljdJOywIdbF/qFpZEUCarKFpaUpA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/eventstream-serde-config-resolver@3.289.0': - resolution: {integrity: sha512-VWXGrgBYdOXQ9xKA7BeUeOOYq2bDDS2XZY/firM/JpRLAelILxDMK0cU3W+0QIF+k9X3f/PGfBp3PPoh7qJvXw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/eventstream-serde-node@3.289.0': - resolution: {integrity: sha512-vkA73eHdykB95nIv3MZnayDCqqzKLHQlL8TenwaTLu1LYvY4qf86wc2tgjzcK7DMt5PoB1Ghez41pLcbahhduA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/eventstream-serde-universal@3.289.0': - resolution: {integrity: sha512-FVIB81tWfi2LRJGvFvcSYiSPPhlitDjFLxD3qsvGgoir+6wkZYBB689CtjaSvsp2QCPQNQIPZvtkKdjbNVvIeg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/fetch-http-handler@3.272.0': - resolution: {integrity: sha512-1Qhm9e0RbS1Xf4CZqUbQyUMkDLd7GrsRXWIvm9b86/vgeV8/WnjO3CMue9D51nYgcyQORhYXv6uVjAYCWbUExA==} - - '@aws-sdk/fetch-http-handler@3.289.0': - resolution: {integrity: sha512-tksh2GnDV1JaI+NO9x+pgyB3VNwjnUdtoMcFGmTDm1TrcPNj0FLX2hLiunlVG7fFMfGLXC2aco0sUra5/5US9Q==} - - '@aws-sdk/hash-blob-browser@3.289.0': - resolution: {integrity: sha512-wilQXmgFp5DuDkivJdLMN6bzhd0Hc8On2P2SNhpntO2U4jb5vJoTYPZB/Bip4LHWetLAZ/rf0OzsSew0rQb/gw==} - - '@aws-sdk/hash-node@3.272.0': - resolution: {integrity: sha512-40dwND+iAm3VtPHPZu7/+CIdVJFk2s0cWZt1lOiMPMSXycSYJ45wMk7Lly3uoqRx0uWfFK5iT2OCv+fJi5jTng==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/hash-node@3.289.0': - resolution: {integrity: sha512-fL7Pt4LU+tluHn0+BSIFVD2ZVJ5fuXvd1hQt4aTYrgkna1RR5v55Hdy2rNrp/syrkyE+Wv92S3hgZ7ZTBeXFZA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/hash-stream-node@3.289.0': - resolution: {integrity: sha512-MuSGX2z8LXFs74jKc5DSr5PzIhoGRv7e8ThdKaM+PgnFE6DYI32LgeB+V37F/bz2vqOu4XQimkkbn4K6+NuveQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/invalid-dependency@3.272.0': - resolution: {integrity: sha512-ysW6wbjl1Y78txHUQ/Tldj2Rg1BI7rpMO9B9xAF6yAX3mQ7t6SUPQG/ewOGvH2208NBIl3qP5e/hDf0Q6r/1iw==} - - '@aws-sdk/invalid-dependency@3.289.0': - resolution: {integrity: sha512-VpXadvpqXFUA8gBH6TAAJzsKfEQ4IvsiD7d9b2B+jw1YtaPFTqEEuDjN6ngpad8PCPCNWl8CI6oBCdMOK+L48A==} - - '@aws-sdk/is-array-buffer@3.201.0': - resolution: {integrity: sha512-UPez5qLh3dNgt0DYnPD/q0mVJY84rA17QE26hVNOW3fAji8W2wrwrxdacWOxyXvlxWsVRcKmr+lay1MDqpAMfg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/lib-storage@3.289.0': - resolution: {integrity: sha512-W7ZFcHmBVLH3XH4lJvr44DoEJ9PdbydSl1zZf+8HlLwyYl9xtfKlzdYnGQIC6yweBFo2tsb7OGZfG7rSWmBKkw==} - engines: {node: '>=14.0.0'} - peerDependencies: - '@aws-sdk/abort-controller': ^3.0.0 - '@aws-sdk/client-s3': ^3.0.0 - - '@aws-sdk/md5-js@3.289.0': - resolution: {integrity: sha512-8GU6V0aJJ0kcWD9UncJJZ5z3H4Dj62dbgpEW590XZwGC6MJ8/OtIlearAdGmNNSsKkAyEY0xiWiasDWstQLmuQ==} - - '@aws-sdk/middleware-bucket-endpoint@3.289.0': - resolution: {integrity: sha512-FeXSY1BdJDzUlRDaWMaX9YuvgIHhZ1fq/gLLpz4pBBms3jnBfi5mw20cFbJH9zZs6orh8XfmAfgKbdQ8cl0SYA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-content-length@3.272.0': - resolution: {integrity: sha512-sAbDZSTNmLX+UTGwlUHJBWy0QGQkiClpHwVFXACon+aG0ySLNeRKEVYs6NCPYldw4cj6hveLUn50cX44ukHErw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-content-length@3.289.0': - resolution: {integrity: sha512-D7vGeuaAzKiq0aFPwme1Xy4x69Jn4v0YJ3Xa4J+keNep0yZ9LfU5KSngqsxeTefCqS+2tdaArkBN2VdexmPagw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-endpoint@3.272.0': - resolution: {integrity: sha512-Dk3JVjj7SxxoUKv3xGiOeBksvPtFhTDrVW75XJ98Ymv8gJH5L1sq4hIeJAHRKogGiRFq2J73mnZSlM9FVXEylg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-endpoint@3.289.0': - resolution: {integrity: sha512-nxaQFOG1IurwCHWP22RxgTFZdILsdBg6wbg4GeFpNBtE3bi0zIUYKrUhpdRr/pZyGAboD1oD9iQtxuGb/M6f+w==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-expect-continue@3.289.0': - resolution: {integrity: sha512-q+bL5q/DxagBIakLQjrVfoBVWsE8JjaanCvVRL6y1+cDL6zzaY7vlJjKOvlfa0hlUA++9PcUkYWqO1APUDCyfQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-flexible-checksums@3.289.0': - resolution: {integrity: sha512-73ElHNAoTTb0M3aQ0agCbVrk5V7wH5ol81eqtHZxe8WlNH87GdzzgmKLVos0gs1EczQ6THmlldSjYrKKd+V2hw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-host-header@3.272.0': - resolution: {integrity: sha512-Q8K7bMMFZnioUXpxn57HIt4p+I63XaNAawMLIZ5B4F2piyukbQeM9q2XVKMGwqLvijHR8CyP5nHrtKqVuINogQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-host-header@3.289.0': - resolution: {integrity: sha512-yFBOKvKBnITO08JCx+65vXPe9Uo4gZuth/ka9v5swa4wtV8AP+kkOwFrNxSi2iAFLJ4Mg21vGQceeL0bErF6KQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-location-constraint@3.289.0': - resolution: {integrity: sha512-VCfxBCCSw5keEqpTo9g1igB7CPnKajAKUPLIukaEV4jAG9C4p71/uGYinLBIWNGXtkq0LdD2CDusD5kVhTIkMg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-logger@3.272.0': - resolution: {integrity: sha512-u2SQ0hWrFwxbxxYMG5uMEgf01pQY5jauK/LYWgGIvuCmFgiyRQQP3oN7kkmsxnS9MWmNmhbyQguX2NY02s5e9w==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-logger@3.289.0': - resolution: {integrity: sha512-c5W7AlOdoyTXRoNl2yOVkhbTjp8tX0z65GDb3+/1yYcv+GRtz67WMZscWMQJwEfdCLdDE2GtBe+t2xyFGnmJvA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-recursion-detection@3.272.0': - resolution: {integrity: sha512-Gp/eKWeUWVNiiBdmUM2qLkBv+VLSJKoWAO+aKmyxxwjjmWhE0FrfA1NQ1a3g+NGMhRbAfQdaYswRAKsul70ISg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-recursion-detection@3.289.0': - resolution: {integrity: sha512-r2NrfnTG0UZRXeFjoyapAake7b1rUo6SC52/UV4Pdm8cHoYMmljnaGLjiAfzt6vWv6cSVCJq1r28Ne4slAoMAg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-retry@3.272.0': - resolution: {integrity: sha512-pCGvHM7C76VbO/dFerH+Vwf7tGv7j+e+eGrvhQ35mRghCtfIou/WMfTZlD1TNee93crrAQQVZKjtW3dMB3WCzg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-retry@3.289.0': - resolution: {integrity: sha512-Su+iGv5mrFjVCXJmjohX00o3HzkwnhY0TDhIltgolB6ZfOqy3Dfopjj21OWtqY9VYCUiLGC4KRfeb2feyrz5BA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-sdk-s3@3.289.0': - resolution: {integrity: sha512-Vvg5dwaQVQpAxC0jjGn6OQKq6CgAD5fmy6B2ydXVFeUCp9OTEsNI8xcbKJuUmscuXpcgwv168gs0rYyVJPXqwg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-sdk-sts@3.272.0': - resolution: {integrity: sha512-VvYPg7LrDIjUOWueSzo2wBzcNG7dw+cmzV6zAKaLxf0RC5jeAP4hE0OzDiiZfDrjNghEzgq/V+0NO+LewqYL9Q==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-sdk-sts@3.289.0': - resolution: {integrity: sha512-9WzUVPEqJcvggGCk9JHXnwhj7fjuMXE/JM3gx7eMSStJCcK+3BARZ1RZnggUN4vN9iTSzdA+r0OpC1XnUGKB2g==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-serde@3.272.0': - resolution: {integrity: sha512-kW1uOxgPSwtXPB5rm3QLdWomu42lkYpQL94tM1BjyFOWmBLO2lQhk5a7Dw6HkTozT9a+vxtscLChRa6KZe61Hw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-serde@3.289.0': - resolution: {integrity: sha512-pygC+LsEBVAxOzfoxA9jgvqfO1PLivh8s2Yr/aNQOwx49fmTHMvPwRYUGDV38Du6bRYcKI6nxYqkbJFkQkRESQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-signing@3.272.0': - resolution: {integrity: sha512-4LChFK4VAR91X+dupqM8fQqYhFGE0G4Bf9rQlVTgGSbi2KUOmpqXzH0/WKE228nKuEhmH8+Qd2VPSAE2JcyAUA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-signing@3.289.0': - resolution: {integrity: sha512-9SLATNvibxg4hpr4ldU18LwB6AVzovONWeJLt49FKISz7ZwGF6WVJYUMWeScj4+Z51Gozi7+pUIaFn7i6N3UbA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-ssec@3.289.0': - resolution: {integrity: sha512-5hBv5bk6fJXhxl0YZoX2+UyPkka+YaZHx2WLDVGnV3C/KlRPEhq0K/BfESx3ruB4hZfZKDC/EDlPaS4BKy5Rew==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-stack@3.272.0': - resolution: {integrity: sha512-jhwhknnPBGhfXAGV5GXUWfEhDFoP/DN8MPCO2yC5OAxyp6oVJ8lTPLkZYMTW5VL0c0eG44dXpF4Ib01V+PlDrQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-stack@3.289.0': - resolution: {integrity: sha512-3rWx+UkV//dv/cLIrXmzIa+FZcn6n76JevGHYCTReiRpcvv+xECxgXH2crMYtzbu05WdxGYD6P0IP5tMwH0yXA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-user-agent@3.272.0': - resolution: {integrity: sha512-Qy7/0fsDJxY5l0bEk7WKDfqb4Os/sCAgFR2zEvrhDtbkhYPf72ysvg/nRUTncmCbo8tOok4SJii2myk8KMfjjw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-user-agent@3.289.0': - resolution: {integrity: sha512-XPhB9mgko66BouyxA+7z7SjUaNHyr58Xe/OB8GII5R/JiR3A/lpc8+jm9gEEpjEI/HpF8jLFDnTMbgabVAHOeA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/node-config-provider@3.272.0': - resolution: {integrity: sha512-YYCIBh9g1EQo7hm2l22HX5Yr9RoPQ2RCvhzKvF1n1e8t1QH4iObQrYUtqHG4khcm64Cft8C5MwZmgzHbya5Z6Q==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/node-config-provider@3.289.0': - resolution: {integrity: sha512-rR41c3Y7MYEP8TG9X1whHyrXEXOZzi4blSDqeJflwtNt3r3HvErGZiNBdVv368ycPPuu1YRSqTkgOYNCv02vlw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/node-http-handler@3.272.0': - resolution: {integrity: sha512-VrW9PjhhngeyYp4yGYPe5S0vgZH6NwU3Po9xAgayUeE37Inr7LS1YteFMHdpgsUUeNXnh7d06CXqHo1XjtqOKA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/node-http-handler@3.289.0': - resolution: {integrity: sha512-zKknSaOY2GNmqH/eoZndmQWoEKhYPV0qRZtAMxuS3DVI5fipBipNzbVBaXrHRjxARx7/VLWnvNArchRoHfOlmw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/property-provider@3.272.0': - resolution: {integrity: sha512-V1pZTaH5eqpAt8O8CzbItHhOtzIfFuWymvwZFkAtwKuaHpnl7jjrTouV482zoq8AD/fF+VVSshwBKYA7bhidIw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/property-provider@3.289.0': - resolution: {integrity: sha512-Raf4lTWPTmEGFV7Lkbfet2n/4Ybz5vQiiU45l56kgIQA88mLUuE4dshgNsM0Zb2rflsTaiN1JR2+RS/8lNtI8A==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/protocol-http@3.272.0': - resolution: {integrity: sha512-4JQ54v5Yn08jspNDeHo45CaSn1CvTJqS1Ywgr79eU6jBExtguOWv6LNtwVSBD9X37v88iqaxt8iu1Z3pZZAJeg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/protocol-http@3.289.0': - resolution: {integrity: sha512-/2jOQ3MJZx1xk6BHEOW47ItGo1tgA9cP9a2saYneon05VIV6OuYefO5pG2G0nPnImTbff++N7aioXe5XKrnorw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/querystring-builder@3.272.0': - resolution: {integrity: sha512-ndo++7GkdCj5tBXE6rGcITpSpZS4PfyV38wntGYAlj9liL1omk3bLZRY6uzqqkJpVHqbg2fD7O2qHNItzZgqhw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/querystring-builder@3.289.0': - resolution: {integrity: sha512-llJCS8mAJfBYBjkKeriRmBuDr2jIozrMWhJOkz95SQGFsx1sKBPQMMOV6zunwhQux8bjtjf5wYiR1TM2jNUKqQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/querystring-parser@3.272.0': - resolution: {integrity: sha512-5oS4/9n6N1LZW9tI3qq/0GnCuWoOXRgcHVB+AJLRBvDbEe+GI+C/xK1tKLsfpDNgsQJHc4IPQoIt4megyZ/1+A==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/querystring-parser@3.289.0': - resolution: {integrity: sha512-84zXKXIYtnTCrez/gGZIGuqfUJezzaOMm7BQwnOnq/sN21ou63jF3Q+tIMhLO/EvDcvmxEOlUXN1kfMQcjEjSw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/s3-request-presigner@3.289.0': - resolution: {integrity: sha512-XhEsodn9dXmx9lKaplnHPyebfYumgvafHFvJVOltPyQf4Xt7KGocyEsviuN0HsNhWeE0/q6boPU38ruQbxawuw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/service-error-classification@3.272.0': - resolution: {integrity: sha512-REoltM1LK9byyIufLqx9znhSolPcHQgVHIA2S0zu5sdt5qER4OubkLAXuo4MBbisUTmh8VOOvIyUb5ijZCXq1w==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/service-error-classification@3.289.0': - resolution: {integrity: sha512-+d1Vlb45Bs2gbTmXpRCGQrX4AQDETjA5sx1zLvq1NZGSnTX6LdroYPtXu3dRWJwDHHQpCMN/XfFN8jTw0IzBOg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/shared-ini-file-loader@3.272.0': - resolution: {integrity: sha512-lzFPohp5sy2XvwFjZIzLVCRpC0i5cwBiaXmFzXYQZJm6FSCszHO4ax+m9yrtlyVFF/2YPWl+/bzNthy4aJtseA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/shared-ini-file-loader@3.289.0': - resolution: {integrity: sha512-XG9Pfn3itf3Z0p6nY6UuMVMhzZb+oX7L28oyby8REl8BAwfPkcziLxXlZsBHf6KcgYDG1R6z945hvIwZhJbjvA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/signature-v4-multi-region@3.289.0': - resolution: {integrity: sha512-hA5PngNnvXLtfp5Bxp6zs+qE/bQDcsfRi7avOwAdVvH/GwEgz9sEQ6BhaAszR697arVLvHk2Q8VcrbrNTA0CwA==} - engines: {node: '>=14.0.0'} - peerDependencies: - '@aws-sdk/signature-v4-crt': ^3.118.0 - peerDependenciesMeta: - '@aws-sdk/signature-v4-crt': - optional: true - - '@aws-sdk/signature-v4@3.272.0': - resolution: {integrity: sha512-pWxnHG1NqJWMwlhJ6NHNiUikOL00DHROmxah6krJPMPq4I3am2KY2Rs/8ouWhnEXKaHAv4EQhSALJ+7Mq5S4/A==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/signature-v4@3.289.0': - resolution: {integrity: sha512-IQyYHx3zp7PHxFA17YDb6WVx8ejXDxrsnKspFXgZQyoZOPfReqWQs32dcJYXff/IdSzxjwOpwBFbmIt2vbdKnQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/smithy-client@3.272.0': - resolution: {integrity: sha512-pvdleJ3kaRvyRw2pIZnqL85ZlWBOZrPKmR9I69GCvlyrfdjRBhbSjIEZ+sdhZudw0vdHxq25AGoLUXhofVLf5Q==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/smithy-client@3.289.0': - resolution: {integrity: sha512-miPMdnv4Ivv8RN65LJ9dxzkQNHn9Tp9wzZJXwBcPqGdXyRlkWSuIOIIhhAqQoV9R9ByeshnCWBpwqlITIjNPVw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/token-providers@3.272.0': - resolution: {integrity: sha512-0GISJ4IKN2rXvbSddB775VjBGSKhYIGQnAdMqbvxi9LB6pSvVxcH9aIL28G0spiuL+dy3yGQZ8RlJPAyP9JW9A==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/token-providers@3.289.0': - resolution: {integrity: sha512-fzvGIfJNoLR5g24ok8cRwc9AMLXoEOyfi+eHocAF6eyfe0NWlQtpsmLe7XXx5I9yZ51lclzV49rEz9ynp243RA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/types@3.272.0': - resolution: {integrity: sha512-MmmL6vxMGP5Bsi+4wRx4mxYlU/LX6M0noOXrDh/x5FfG7/4ZOar/nDxqDadhJtNM88cuWVHZWY59P54JzkGWmA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/types@3.289.0': - resolution: {integrity: sha512-wwUC+VwoNlEkgDzK/aJG3+zeMcYRcYFQV4mbZaicYdp3v8hmkUkJUhyxuZYl/FmY46WG+DYv+/Y3NilgfsE+Wg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/url-parser@3.272.0': - resolution: {integrity: sha512-vX/Tx02PlnQ/Kgtf5TnrNDHPNbY+amLZjW0Z1d9vzAvSZhQ4i9Y18yxoRDIaDTCNVRDjdhV8iuctW+05PB5JtQ==} - - '@aws-sdk/url-parser@3.289.0': - resolution: {integrity: sha512-rbtW3O6UBX+eWR/+UiCDNFUVwN8hp82JPy+NGv3NeOvRjBsxkKmcH4UJTHDIeT+suqTDNEdV5nz438u3dHdHrQ==} - - '@aws-sdk/util-arn-parser@3.208.0': - resolution: {integrity: sha512-QV4af+kscova9dv4VuHOgH8wEr/IIYHDGcnyVtkUEqahCejWr1Kuk+SBK0xMwnZY5LSycOtQ8aeqHOn9qOjZtA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-base64@3.208.0': - resolution: {integrity: sha512-PQniZph5A6N7uuEOQi+1hnMz/FSOK/8kMFyFO+4DgA1dZ5pcKcn5wiFwHkcTb/BsgVqQa3Jx0VHNnvhlS8JyTg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-body-length-browser@3.188.0': - resolution: {integrity: sha512-8VpnwFWXhnZ/iRSl9mTf+VKOX9wDE8QtN4bj9pBfxwf90H1X7E8T6NkiZD3k+HubYf2J94e7DbeHs7fuCPW5Qg==} - - '@aws-sdk/util-body-length-node@3.208.0': - resolution: {integrity: sha512-3zj50e5g7t/MQf53SsuuSf0hEELzMtD8RX8C76f12OSRo2Bca4FLLYHe0TZbxcfQHom8/hOaeZEyTyMogMglqg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-buffer-from@3.208.0': - resolution: {integrity: sha512-7L0XUixNEFcLUGPeBF35enCvB9Xl+K6SQsmbrPk1P3mlV9mguWSDQqbOBwY1Ir0OVbD6H/ZOQU7hI/9RtRI0Zw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-config-provider@3.208.0': - resolution: {integrity: sha512-DSRqwrERUsT34ug+anlMBIFooBEGwM8GejC7q00Y/9IPrQy50KnG5PW2NiTjuLKNi7pdEOlwTSEocJE15eDZIg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-create-request@3.289.0': - resolution: {integrity: sha512-Xdb8xHWNv6ihbh1qscinG7uD6/AVbUUgybMJFBiMsElB9FY6l5BSgYbmEuiWeZfT90W9HMvM2bnwNpFKAaDupw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-defaults-mode-browser@3.272.0': - resolution: {integrity: sha512-W8ZVJSZRuUBg8l0JEZzUc+9fKlthVp/cdE+pFeF8ArhZelOLCiaeCrMaZAeJusaFzIpa6cmOYQAjtSMVyrwRtg==} - engines: {node: '>= 10.0.0'} - - '@aws-sdk/util-defaults-mode-browser@3.289.0': - resolution: {integrity: sha512-sYrDwjX3s54cvGq69PJpP2vDpJ5BJXhg2KEHbK92Qr2AUqMUgidwZCw4oBaIqKDXcPIrjmhod31s3tTfYmtTMQ==} - engines: {node: '>= 10.0.0'} - - '@aws-sdk/util-defaults-mode-node@3.272.0': - resolution: {integrity: sha512-U0NTcbMw6KFk7uz/avBmfxQSTREEiX6JDMH68oN/3ux4AICd2I4jHyxnloSWGuiER1FxZf1dEJ8ZTwy8Ibl21Q==} - engines: {node: '>= 10.0.0'} - - '@aws-sdk/util-defaults-mode-node@3.289.0': - resolution: {integrity: sha512-PsP40+9peN7kpEmQ2GhEAGwUwD9F/R/BI/1kzjW0nbBsMrTnkUnlZlaitwpBX/OWNV/YZTdVAOvD50j/ACyXlg==} - engines: {node: '>= 10.0.0'} - - '@aws-sdk/util-endpoints@3.272.0': - resolution: {integrity: sha512-c4MPUaJt2G6gGpoiwIOqDfUa98c1J63RpYvf/spQEKOtC/tF5Gfqlxuq8FnAl5lHnrqj1B9ZXLLxFhHtDR0IiQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-endpoints@3.289.0': - resolution: {integrity: sha512-PmsgqL9jdNTz3p0eW83nZZGcngAdoIWidXCc32G5tIIYvJutdgkiObAaydtXaMgk5CRvjenngFf6Zg9JyVHOLQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-format-url@3.289.0': - resolution: {integrity: sha512-cd23NnxDAUDfceW0QoMXWhUFj/7C69YqpWhNW/kFXA8XmIbidA9lVtM6WKRQQmr+VIKdQAbcmWvG2xN7VcXxzA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-hex-encoding@3.201.0': - resolution: {integrity: sha512-7t1vR1pVxKx0motd3X9rI3m/xNp78p3sHtP5yo4NP4ARpxyJ0fokBomY8ScaH2D/B+U5o9ARxldJUdMqyBlJcA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-locate-window@3.208.0': - resolution: {integrity: sha512-iua1A2+P7JJEDHVgvXrRJSvsnzG7stYSGQnBVphIUlemwl6nN5D+QrgbjECtrbxRz8asYFHSzhdhECqN+tFiBg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-middleware@3.272.0': - resolution: {integrity: sha512-Abw8m30arbwxqmeMMha5J11ESpHUNmCeSqSzE8/C4B8jZQtHY4kq7f+upzcNIQ11lsd+uzBEzNG3+dDRi0XOJQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-middleware@3.289.0': - resolution: {integrity: sha512-hw3WHQU9Wk7a1H3x+JhwMA4ECCleeuNlob3fXSYJmXgvZyuWfpMYZi4iSkqoWGFAXYpAtZZLIu45iIcd7F296g==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-retry@3.272.0': - resolution: {integrity: sha512-Ngha5414LR4gRHURVKC9ZYXsEJhMkm+SJ+44wlzOhavglfdcKKPUsibz5cKY1jpUV7oKECwaxHWpBB8r6h+hOg==} - engines: {node: '>= 14.0.0'} - - '@aws-sdk/util-retry@3.289.0': - resolution: {integrity: sha512-noFn++ZKH11ExTBqUU/b9wsOjqxYlDnN/8xq+9oCsyBnEZztVgM/AM3WP5qBPRskk1WzDprID5fb5V87113Uug==} - engines: {node: '>= 14.0.0'} - - '@aws-sdk/util-stream-browser@3.289.0': - resolution: {integrity: sha512-IepwbO/fQPEJraHCf5Erfe+kjBjZQf2v4ibTFokJjuF4mRKxsm5VFlwYeK01OJcYg6xTvssjQm1Ys/79bwIPeQ==} - - '@aws-sdk/util-stream-node@3.289.0': - resolution: {integrity: sha512-cavBo119eoOeQIpy5aaJimw8RBBlnWZK8WEVqeCLjxdEkmXTgVbVmd7biOv2ULu0ANH0LUs1AdTAIDEKP0BtTA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-uri-escape@3.201.0': - resolution: {integrity: sha512-TeTWbGx4LU2c5rx0obHeDFeO9HvwYwQtMh1yniBz00pQb6Qt6YVOETVQikRZ+XRQwEyCg/dA375UplIpiy54mA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-user-agent-browser@3.272.0': - resolution: {integrity: sha512-Lp5QX5bH6uuwBlIdr7w7OAcAI50ttyskb++yUr9i+SPvj6RI2dsfIBaK4mDg1qUdM5LeUdvIyqwj3XHjFKAAvA==} - - '@aws-sdk/util-user-agent-browser@3.289.0': - resolution: {integrity: sha512-BDXYgNzzz2iNPTkl9MQf7pT4G80V6O6ICwJyH93a5EEdljl7oPrt8i4MS5S0BDAWx58LqjWtVw98GOZfy5BYhw==} - - '@aws-sdk/util-user-agent-node@3.272.0': - resolution: {integrity: sha512-ljK+R3l+Q1LIHrcR+Knhk0rmcSkfFadZ8V+crEGpABf/QUQRg7NkZMsoe814tfBO5F7tMxo8wwwSdaVNNHtoRA==} - engines: {node: '>=14.0.0'} - peerDependencies: - aws-crt: '>=1.0.0' - peerDependenciesMeta: - aws-crt: - optional: true - - '@aws-sdk/util-user-agent-node@3.289.0': - resolution: {integrity: sha512-f32g9KS7pwO6FQ9N1CtqQPIS6jhvwv/y0+NHNoo9zLTBH0jol3+C2ELIE3N1wB6xvwhsdPqR3WuOiNiCiv8YAQ==} - engines: {node: '>=14.0.0'} - peerDependencies: - aws-crt: '>=1.0.0' - peerDependenciesMeta: - aws-crt: - optional: true - - '@aws-sdk/util-utf8-browser@3.259.0': - resolution: {integrity: sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw==} - - '@aws-sdk/util-utf8@3.254.0': - resolution: {integrity: sha512-14Kso/eIt5/qfIBmhEL9L1IfyUqswjSTqO2mY7KOzUZ9SZbwn3rpxmtkhmATkRjD7XIlLKaxBkI7tU9Zjzj8Kw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-waiter@3.289.0': - resolution: {integrity: sha512-HyTEJR8cVor9FS48I2ArMLAs7LJLz6Rkb/0dvudVw84zjNofRgoYQLoZFJHSsiUzVLd7jaaxidC9FKK3lqGz1g==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/xml-builder@3.201.0': - resolution: {integrity: sha512-brRdB1wwMgjWEnOQsv7zSUhIQuh7DEicrfslAqHop4S4FtSI3GQAShpQqgOpMTNFYcpaWKmE/Y1MJmNY7xLCnw==} - engines: {node: '>=14.0.0'} - - '@babel/code-frame@7.18.6': - resolution: {integrity: sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==} - engines: {node: '>=6.9.0'} - - '@babel/compat-data@7.21.0': - resolution: {integrity: sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==} - engines: {node: '>=6.9.0'} - - '@babel/core@7.12.9': - resolution: {integrity: sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==} - engines: {node: '>=6.9.0'} - - '@babel/core@7.21.0': - resolution: {integrity: sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA==} - engines: {node: '>=6.9.0'} - - '@babel/generator@7.21.1': - resolution: {integrity: sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-annotate-as-pure@7.18.6': - resolution: {integrity: sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-builder-binary-assignment-operator-visitor@7.18.9': - resolution: {integrity: sha512-yFQ0YCHoIqarl8BCRwBL8ulYUaZpz3bNsA7oFepAzee+8/+ImtADXNOmO5vJvsPff3qi+hvpkY/NYBTrBQgdNw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-compilation-targets@7.20.7': - resolution: {integrity: sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-create-class-features-plugin@7.21.0': - resolution: {integrity: sha512-Q8wNiMIdwsv5la5SPxNYzzkPnjgC0Sy0i7jLkVOCdllu/xcVNkr3TeZzbHBJrj+XXRqzX5uCyCoV9eu6xUG7KQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-create-regexp-features-plugin@7.21.0': - resolution: {integrity: sha512-N+LaFW/auRSWdx7SHD/HiARwXQju1vXTW4fKr4u5SgBUTm51OKEjKgj+cs00ggW3kEvNqwErnlwuq7Y3xBe4eg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-define-polyfill-provider@0.1.5': - resolution: {integrity: sha512-nXuzCSwlJ/WKr8qxzW816gwyT6VZgiJG17zR40fou70yfAcqjoNyTLl/DQ+FExw5Hx5KNqshmN8Ldl/r2N7cTg==} - peerDependencies: - '@babel/core': ^7.4.0-0 - - '@babel/helper-define-polyfill-provider@0.3.3': - resolution: {integrity: sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==} - peerDependencies: - '@babel/core': ^7.4.0-0 - - '@babel/helper-environment-visitor@7.18.9': - resolution: {integrity: sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-explode-assignable-expression@7.18.6': - resolution: {integrity: sha512-eyAYAsQmB80jNfg4baAtLeWAQHfHFiR483rzFK+BhETlGZaQC9bsfrugfXDCbRHLQbIA7U5NxhhOxN7p/dWIcg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-function-name@7.21.0': - resolution: {integrity: sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-hoist-variables@7.18.6': - resolution: {integrity: sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==} - engines: {node: '>=6.9.0'} - - '@babel/helper-member-expression-to-functions@7.21.0': - resolution: {integrity: sha512-Muu8cdZwNN6mRRNG6lAYErJ5X3bRevgYR2O8wN0yn7jJSnGDu6eG59RfT29JHxGUovyfrh6Pj0XzmR7drNVL3Q==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-imports@7.18.6': - resolution: {integrity: sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-transforms@7.21.0': - resolution: {integrity: sha512-eD/JQ21IG2i1FraJnTMbUarAUkA7G988ofehG5MDCRXaUU91rEBJuCeSoou2Sk1y4RbLYXzqEg1QLwEmRU4qcQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-optimise-call-expression@7.18.6': - resolution: {integrity: sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-plugin-utils@7.10.4': - resolution: {integrity: sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==} - - '@babel/helper-plugin-utils@7.20.2': - resolution: {integrity: sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-remap-async-to-generator@7.18.9': - resolution: {integrity: sha512-dI7q50YKd8BAv3VEfgg7PS7yD3Rtbi2J1XMXaalXO0W0164hYLnh8zpjRS0mte9MfVp/tltvr/cfdXPvJr1opA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-replace-supers@7.20.7': - resolution: {integrity: sha512-vujDMtB6LVfNW13jhlCrp48QNslK6JXi7lQG736HVbHz/mbf4Dc7tIRh1Xf5C0rF7BP8iiSxGMCmY6Ci1ven3A==} - engines: {node: '>=6.9.0'} - - '@babel/helper-simple-access@7.20.2': - resolution: {integrity: sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-skip-transparent-expression-wrappers@7.20.0': - resolution: {integrity: sha512-5y1JYeNKfvnT8sZcK9DVRtpTbGiomYIHviSP3OQWmDPU3DeH4a1ZlT/N2lyQ5P8egjcRaT/Y9aNqUxK0WsnIIg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-split-export-declaration@7.18.6': - resolution: {integrity: sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-string-parser@7.19.4': - resolution: {integrity: sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-identifier@7.19.1': - resolution: {integrity: sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-option@7.21.0': - resolution: {integrity: sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-wrap-function@7.20.5': - resolution: {integrity: sha512-bYMxIWK5mh+TgXGVqAtnu5Yn1un+v8DDZtqyzKRLUzrh70Eal2O3aZ7aPYiMADO4uKlkzOiRiZ6GX5q3qxvW9Q==} - engines: {node: '>=6.9.0'} - - '@babel/helpers@7.21.0': - resolution: {integrity: sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==} - engines: {node: '>=6.9.0'} - - '@babel/highlight@7.18.6': - resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==} - engines: {node: '>=6.9.0'} - - '@babel/parser@7.21.1': - resolution: {integrity: sha512-JzhBFpkuhBNYUY7qs+wTzNmyCWUHEaAFpQQD2YfU1rPL38/L43Wvid0fFkiOCnHvsGncRZgEPyGnltABLcVDTg==} - engines: {node: '>=6.0.0'} - hasBin: true - - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.18.6': - resolution: {integrity: sha512-Dgxsyg54Fx1d4Nge8UnvTrED63vrwOdPmyvPzlNN/boaliRP54pm3pGzZD1SJUwrBA+Cs/xdG8kXX6Mn/RfISQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.20.7': - resolution: {integrity: sha512-sbr9+wNE5aXMBBFBICk01tt7sBf2Oc9ikRFEcem/ZORup9IMUdNhW7/wVLEbbtlWOsEubJet46mHAL2C8+2jKQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.13.0 - - '@babel/plugin-proposal-async-generator-functions@7.20.7': - resolution: {integrity: sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-proposal-class-properties@7.18.6': - resolution: {integrity: sha512-cumfXOF0+nzZrrN8Rf0t7M+tF6sZc7vhQwYQck9q1/5w2OExlD+b4v4RpMJFaV1Z7WcDRgO6FqvxqxGlwo+RHQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-proposal-class-static-block@7.21.0': - resolution: {integrity: sha512-XP5G9MWNUskFuP30IfFSEFB0Z6HzLIUcjYM4bYOPHXl7eiJ9HFv8tWj6TXTN5QODiEhDZAeI4hLok2iHFFV4hw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.12.0 - - '@babel/plugin-proposal-decorators@7.21.0': - resolution: {integrity: sha512-MfgX49uRrFUTL/HvWtmx3zmpyzMMr4MTj3d527MLlr/4RTT9G/ytFFP7qet2uM2Ve03b+BkpWUpK+lRXnQ+v9w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-proposal-dynamic-import@7.18.6': - resolution: {integrity: sha512-1auuwmK+Rz13SJj36R+jqFPMJWyKEDd7lLSdOj4oJK0UTgGueSAtkrCvz9ewmgyU/P941Rv2fQwZJN8s6QruXw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-proposal-export-default-from@7.18.10': - resolution: {integrity: sha512-5H2N3R2aQFxkV4PIBUR/i7PUSwgTZjouJKzI8eKswfIjT0PhvzkPn0t0wIS5zn6maQuvtT0t1oHtMUz61LOuow==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-proposal-export-namespace-from@7.18.9': - resolution: {integrity: sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-proposal-json-strings@7.18.6': - resolution: {integrity: sha512-lr1peyn9kOdbYc0xr0OdHTZ5FMqS6Di+H0Fz2I/JwMzGmzJETNeOFq2pBySw6X/KFL5EWDjlJuMsUGRFb8fQgQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-proposal-logical-assignment-operators@7.20.7': - resolution: {integrity: sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-proposal-nullish-coalescing-operator@7.18.6': - resolution: {integrity: sha512-wQxQzxYeJqHcfppzBDnm1yAY0jSRkUXR2z8RePZYrKwMKgMlE8+Z6LUno+bd6LvbGh8Gltvy74+9pIYkr+XkKA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-proposal-numeric-separator@7.18.6': - resolution: {integrity: sha512-ozlZFogPqoLm8WBr5Z8UckIoE4YQ5KESVcNudyXOR8uqIkliTEgJ3RoketfG6pmzLdeZF0H/wjE9/cCEitBl7Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-proposal-object-rest-spread@7.12.1': - resolution: {integrity: sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-proposal-object-rest-spread@7.20.7': - resolution: {integrity: sha512-d2S98yCiLxDVmBmE8UjGcfPvNEUbA1U5q5WxaWFUGRzJSVAZqm5W6MbPct0jxnegUZ0niLeNX+IOzEs7wYg9Dg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-proposal-optional-catch-binding@7.18.6': - resolution: {integrity: sha512-Q40HEhs9DJQyaZfUjjn6vE8Cv4GmMHCYuMGIWUnlxH6400VGxOuwWsPt4FxXxJkC/5eOzgn0z21M9gMT4MOhbw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-proposal-optional-chaining@7.21.0': - resolution: {integrity: sha512-p4zeefM72gpmEe2fkUr/OnOXpWEf8nAgk7ZYVqqfFiyIG7oFfVZcCrU64hWn5xp4tQ9LkV4bTIa5rD0KANpKNA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-proposal-private-methods@7.18.6': - resolution: {integrity: sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-proposal-private-property-in-object@7.21.0': - resolution: {integrity: sha512-ha4zfehbJjc5MmXBlHec1igel5TJXXLDDRbuJ4+XT2TJcyD9/V1919BA8gMvsdHcNMBy4WBUBiRb3nw/EQUtBw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-proposal-unicode-property-regex@7.18.6': - resolution: {integrity: sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==} - engines: {node: '>=4'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-async-generators@7.8.4': - resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-bigint@7.8.3': - resolution: {integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-class-properties@7.12.13': - resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-class-static-block@7.14.5': - resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-decorators@7.21.0': - resolution: {integrity: sha512-tIoPpGBR8UuM4++ccWN3gifhVvQu7ZizuR1fklhRJrd5ewgbkUS+0KVFeWWxELtn18NTLoW32XV7zyOgIAiz+w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-dynamic-import@7.8.3': - resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-export-default-from@7.18.6': - resolution: {integrity: sha512-Kr//z3ujSVNx6E9z9ih5xXXMqK07VVTuqPmqGe6Mss/zW5XPeLZeSDZoP9ab/hT4wPKqAgjl2PnhPrcpk8Seew==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-export-namespace-from@7.8.3': - resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-flow@7.18.6': - resolution: {integrity: sha512-LUbR+KNTBWCUAqRG9ex5Gnzu2IOkt8jRJbHHXFT9q+L9zm7M/QQbEqXyw1n1pohYvOyWC8CjeyjrSaIwiYjK7A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-import-assertions@7.20.0': - resolution: {integrity: sha512-IUh1vakzNoWalR8ch/areW7qFopR2AEw03JlG7BbrDqmQ4X3q9uuipQwSGrUn7oGiemKjtSLDhNtQHzMHr1JdQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-import-meta@7.10.4': - resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-json-strings@7.8.3': - resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-jsx@7.12.1': - resolution: {integrity: sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-jsx@7.18.6': - resolution: {integrity: sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-logical-assignment-operators@7.10.4': - resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3': - resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-numeric-separator@7.10.4': - resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-object-rest-spread@7.8.3': - resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-optional-catch-binding@7.8.3': - resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-optional-chaining@7.8.3': - resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-private-property-in-object@7.14.5': - resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-top-level-await@7.14.5': - resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-typescript@7.20.0': - resolution: {integrity: sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-arrow-functions@7.20.7': - resolution: {integrity: sha512-3poA5E7dzDomxj9WXWwuD6A5F3kc7VXwIJO+E+J8qtDtS+pXPAhrgEyh+9GBwBgPq1Z+bB+/JD60lp5jsN7JPQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-async-to-generator@7.20.7': - resolution: {integrity: sha512-Uo5gwHPT9vgnSXQxqGtpdufUiWp96gk7yiP4Mp5bm1QMkEmLXBO7PAGYbKoJ6DhAwiNkcHFBol/x5zZZkL/t0Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-block-scoped-functions@7.18.6': - resolution: {integrity: sha512-ExUcOqpPWnliRcPqves5HJcJOvHvIIWfuS4sroBUenPuMdmW+SMHDakmtS7qOo13sVppmUijqeTv7qqGsvURpQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-block-scoping@7.21.0': - resolution: {integrity: sha512-Mdrbunoh9SxwFZapeHVrwFmri16+oYotcZysSzhNIVDwIAb1UV+kvnxULSYq9J3/q5MDG+4X6w8QVgD1zhBXNQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-classes@7.21.0': - resolution: {integrity: sha512-RZhbYTCEUAe6ntPehC4hlslPWosNHDox+vAs4On/mCLRLfoDVHf6hVEd7kuxr1RnHwJmxFfUM3cZiZRmPxJPXQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-computed-properties@7.20.7': - resolution: {integrity: sha512-Lz7MvBK6DTjElHAmfu6bfANzKcxpyNPeYBGEafyA6E5HtRpjpZwU+u7Qrgz/2OR0z+5TvKYbPdphfSaAcZBrYQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-destructuring@7.20.7': - resolution: {integrity: sha512-Xwg403sRrZb81IVB79ZPqNQME23yhugYVqgTxAhT99h485F4f+GMELFhhOsscDUB7HCswepKeCKLn/GZvUKoBA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-dotall-regex@7.18.6': - resolution: {integrity: sha512-6S3jpun1eEbAxq7TdjLotAsl4WpQI9DxfkycRcKrjhQYzU87qpXdknpBg/e+TdcMehqGnLFi7tnFUBR02Vq6wg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-duplicate-keys@7.18.9': - resolution: {integrity: sha512-d2bmXCtZXYc59/0SanQKbiWINadaJXqtvIQIzd4+hNwkWBgyCd5F/2t1kXoUdvPMrxzPvhK6EMQRROxsue+mfw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-exponentiation-operator@7.18.6': - resolution: {integrity: sha512-wzEtc0+2c88FVR34aQmiz56dxEkxr2g8DQb/KfaFa1JYXOFVsbhvAonFN6PwVWj++fKmku8NP80plJ5Et4wqHw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-flow-strip-types@7.21.0': - resolution: {integrity: sha512-FlFA2Mj87a6sDkW4gfGrQQqwY/dLlBAyJa2dJEZ+FHXUVHBflO2wyKvg+OOEzXfrKYIa4HWl0mgmbCzt0cMb7w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-for-of@7.21.0': - resolution: {integrity: sha512-LlUYlydgDkKpIY7mcBWvyPPmMcOphEyYA27Ef4xpbh1IiDNLr0kZsos2nf92vz3IccvJI25QUwp86Eo5s6HmBQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-function-name@7.18.9': - resolution: {integrity: sha512-WvIBoRPaJQ5yVHzcnJFor7oS5Ls0PYixlTYE63lCj2RtdQEl15M68FXQlxnG6wdraJIXRdR7KI+hQ7q/9QjrCQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-literals@7.18.9': - resolution: {integrity: sha512-IFQDSRoTPnrAIrI5zoZv73IFeZu2dhu6irxQjY9rNjTT53VmKg9fenjvoiOWOkJ6mm4jKVPtdMzBY98Fp4Z4cg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-member-expression-literals@7.18.6': - resolution: {integrity: sha512-qSF1ihLGO3q+/g48k85tUjD033C29TNTVB2paCwZPVmOsjn9pClvYYrM2VeJpBY2bcNkuny0YUyTNRyRxJ54KA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-modules-amd@7.20.11': - resolution: {integrity: sha512-NuzCt5IIYOW0O30UvqktzHYR2ud5bOWbY0yaxWZ6G+aFzOMJvrs5YHNikrbdaT15+KNO31nPOy5Fim3ku6Zb5g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-modules-commonjs@7.20.11': - resolution: {integrity: sha512-S8e1f7WQ7cimJQ51JkAaDrEtohVEitXjgCGAS2N8S31Y42E+kWwfSz83LYz57QdBm7q9diARVqanIaH2oVgQnw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-modules-systemjs@7.20.11': - resolution: {integrity: sha512-vVu5g9BPQKSFEmvt2TA4Da5N+QVS66EX21d8uoOihC+OCpUoGvzVsXeqFdtAEfVa5BILAeFt+U7yVmLbQnAJmw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-modules-umd@7.18.6': - resolution: {integrity: sha512-dcegErExVeXcRqNtkRU/z8WlBLnvD4MRnHgNs3MytRO1Mn1sHRyhbcpYbVMGclAqOjdW+9cfkdZno9dFdfKLfQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-named-capturing-groups-regex@7.20.5': - resolution: {integrity: sha512-mOW4tTzi5iTLnw+78iEq3gr8Aoq4WNRGpmSlrogqaiCBoR1HFhpU4JkpQFOHfeYx3ReVIFWOQJS4aZBRvuZ6mA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/plugin-transform-new-target@7.18.6': - resolution: {integrity: sha512-DjwFA/9Iu3Z+vrAn+8pBUGcjhxKguSMlsFqeCKbhb9BAV756v0krzVK04CRDi/4aqmk8BsHb4a/gFcaA5joXRw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-object-super@7.18.6': - resolution: {integrity: sha512-uvGz6zk+pZoS1aTZrOvrbj6Pp/kK2mp45t2B+bTDre2UgsZZ8EZLSJtUg7m/no0zOJUWgFONpB7Zv9W2tSaFlA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-parameters@7.20.7': - resolution: {integrity: sha512-WiWBIkeHKVOSYPO0pWkxGPfKeWrCJyD3NJ53+Lrp/QMSZbsVPovrVl2aWZ19D/LTVnaDv5Ap7GJ/B2CTOZdrfA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-property-literals@7.18.6': - resolution: {integrity: sha512-cYcs6qlgafTud3PAzrrRNbQtfpQ8+y/+M5tKmksS9+M1ckbH6kzY8MrexEM9mcA6JDsukE19iIRvAyYl463sMg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-constant-elements@7.20.2': - resolution: {integrity: sha512-KS/G8YI8uwMGKErLFOHS/ekhqdHhpEloxs43NecQHVgo2QuQSyJhGIY1fL8UGl9wy5ItVwwoUL4YxVqsplGq2g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-display-name@7.18.6': - resolution: {integrity: sha512-TV4sQ+T013n61uMoygyMRm+xf04Bd5oqFpv2jAEQwSZ8NwQA7zeRPg1LMVg2PWi3zWBz+CLKD+v5bcpZ/BS0aA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-jsx-development@7.18.6': - resolution: {integrity: sha512-SA6HEjwYFKF7WDjWcMcMGUimmw/nhNRDWxr+KaLSCrkD/LMDBvWRmHAYgE1HDeF8KUuI8OAu+RT6EOtKxSW2qA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-jsx@7.21.0': - resolution: {integrity: sha512-6OAWljMvQrZjR2DaNhVfRz6dkCAVV+ymcLUmaf8bccGOHn2v5rHJK3tTpij0BuhdYWP4LLaqj5lwcdlpAAPuvg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-pure-annotations@7.18.6': - resolution: {integrity: sha512-I8VfEPg9r2TRDdvnHgPepTKvuRomzA8+u+nhY7qSI1fR2hRNebasZEETLyM5mAUr0Ku56OkXJ0I7NHJnO6cJiQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-regenerator@7.20.5': - resolution: {integrity: sha512-kW/oO7HPBtntbsahzQ0qSE3tFvkFwnbozz3NWFhLGqH75vLEg+sCGngLlhVkePlCs3Jv0dBBHDzCHxNiFAQKCQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-reserved-words@7.18.6': - resolution: {integrity: sha512-oX/4MyMoypzHjFrT1CdivfKZ+XvIPMFXwwxHp/r0Ddy2Vuomt4HDFGmft1TAY2yiTKiNSsh3kjBAzcM8kSdsjA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-shorthand-properties@7.18.6': - resolution: {integrity: sha512-eCLXXJqv8okzg86ywZJbRn19YJHU4XUa55oz2wbHhaQVn/MM+XhukiT7SYqp/7o00dg52Rj51Ny+Ecw4oyoygw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-spread@7.20.7': - resolution: {integrity: sha512-ewBbHQ+1U/VnH1fxltbJqDeWBU1oNLG8Dj11uIv3xVf7nrQu0bPGe5Rf716r7K5Qz+SqtAOVswoVunoiBtGhxw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-sticky-regex@7.18.6': - resolution: {integrity: sha512-kfiDrDQ+PBsQDO85yj1icueWMfGfJFKN1KCkndygtu/C9+XUfydLC8Iv5UYJqRwy4zk8EcplRxEOeLyjq1gm6Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-template-literals@7.18.9': - resolution: {integrity: sha512-S8cOWfT82gTezpYOiVaGHrCbhlHgKhQt8XH5ES46P2XWmX92yisoZywf5km75wv5sYcXDUCLMmMxOLCtthDgMA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-typeof-symbol@7.18.9': - resolution: {integrity: sha512-SRfwTtF11G2aemAZWivL7PD+C9z52v9EvMqH9BuYbabyPuKUvSWks3oCg6041pT925L4zVFqaVBeECwsmlguEw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-typescript@7.21.0': - resolution: {integrity: sha512-xo///XTPp3mDzTtrqXoBlK9eiAYW3wv9JXglcn/u1bi60RW11dEUxIgA8cbnDhutS1zacjMRmAwxE0gMklLnZg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-unicode-escapes@7.18.10': - resolution: {integrity: sha512-kKAdAI+YzPgGY/ftStBFXTI1LZFju38rYThnfMykS+IXy8BVx+res7s2fxf1l8I35DV2T97ezo6+SGrXz6B3iQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-unicode-regex@7.18.6': - resolution: {integrity: sha512-gE7A6Lt7YLnNOL3Pb9BNeZvi+d8l7tcRrG4+pwJjK9hD2xX4mEvjlQW60G9EEmfXVYRPv9VRQcyegIVHCql/AA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/preset-env@7.20.2': - resolution: {integrity: sha512-1G0efQEWR1EHkKvKHqbG+IN/QdgwfByUpM5V5QroDzGV2t3S/WXNQd693cHiHTlCFMpr9B6FkPFXDA2lQcKoDg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/preset-flow@7.18.6': - resolution: {integrity: sha512-E7BDhL64W6OUqpuyHnSroLnqyRTcG6ZdOBl1OKI/QK/HJfplqK/S3sq1Cckx7oTodJ5yOXyfw7rEADJ6UjoQDQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/preset-modules@0.1.5': - resolution: {integrity: sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/preset-react@7.18.6': - resolution: {integrity: sha512-zXr6atUmyYdiWRVLOZahakYmOBHtWc2WGCkP8PYTgZi0iJXDY2CN180TdrIW4OGOAdLc7TifzDIvtx6izaRIzg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/preset-typescript@7.21.0': - resolution: {integrity: sha512-myc9mpoVA5m1rF8K8DgLEatOYFDpwC+RkMkjZ0Du6uI62YvDe8uxIEYVs/VCdSJ097nlALiU/yBC7//3nI+hNg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/register@7.21.0': - resolution: {integrity: sha512-9nKsPmYDi5DidAqJaQooxIhsLJiNMkGr8ypQ8Uic7cIox7UCDsM7HuUGxdGT7mSDTYbqzIdsOWzfBton/YJrMw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/regjsgen@0.8.0': - resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} - - '@babel/runtime-corejs3@7.21.5': - resolution: {integrity: sha512-FRqFlFKNazWYykft5zvzuEl1YyTDGsIRrjV9rvxvYkUC7W/ueBng1X68Xd6uRMzAaJ0xMKn08/wem5YS1lpX8w==} - engines: {node: '>=6.9.0'} - - '@babel/runtime@7.21.0': - resolution: {integrity: sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==} - engines: {node: '>=6.9.0'} - - '@babel/template@7.20.7': - resolution: {integrity: sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==} - engines: {node: '>=6.9.0'} - - '@babel/traverse@7.21.0': - resolution: {integrity: sha512-Xdt2P1H4LKTO8ApPfnO1KmzYMFpp7D/EinoXzLYN/cHcBNrVCAkAtGUcXnHXrl/VGktureU6fkQrHSBE2URfoA==} - engines: {node: '>=6.9.0'} - - '@babel/types@7.21.0': - resolution: {integrity: sha512-uR7NWq2VNFnDi7EYqiRz2Jv/VQIu38tu64Zy8TX2nQFQ6etJ9V/Rr2msW8BS132mum2rL645qpDrLtAJtVpuow==} - engines: {node: '>=6.9.0'} - - '@base2/pretty-print-object@1.0.1': - resolution: {integrity: sha512-4iri8i1AqYHJE2DstZYkyEprg6Pq6sKx3xn5FpySk9sNhH7qN2LLlHJCfDTZRILNwQNPD7mATWM0TBui7uC1pA==} - - '@bcoe/v8-coverage@0.2.3': - resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} - - '@braintree/sanitize-url@6.0.2': - resolution: {integrity: sha512-Tbsj02wXCbqGmzdnXNk0SOF19ChhRU70BsroIi4Pm6Ehp56in6vch94mfbdQ17DozxkL3BAVjbZ4Qc1a0HFRAg==} - - '@cnakazawa/watch@1.0.4': - resolution: {integrity: sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==} - engines: {node: '>=0.1.95'} - hasBin: true - - '@codemirror/autocomplete@0.19.15': - resolution: {integrity: sha512-GQWzvvuXxNUyaEk+5gawbAD8s51/v2Chb++nx0e2eGWrphWk42isBtzOMdc3DxrxrZtPZ55q2ldNp+6G8KJLIQ==} - - '@codemirror/basic-setup@0.19.3': - resolution: {integrity: sha512-2hfO+QDk/HTpQzeYk1NyL1G9D5L7Sj78dtaQP8xBU42DKU9+OBPF5MdjLYnxP0jKzm6IfQfsLd89fnqW3rBVfQ==} - deprecated: In version 6.0, this package has been renamed to just 'codemirror' - - '@codemirror/closebrackets@0.19.2': - resolution: {integrity: sha512-ClMPzPcPP0eQiDcVjtVPl6OLxgdtZSYDazsvT0AKl70V1OJva0eHgl4/6kCW3RZ0pb2n34i9nJz4eXCmK+TYDA==} - deprecated: As of 0.20.0, this package has been merged into @codemirror/autocomplete - - '@codemirror/commands@0.19.8': - resolution: {integrity: sha512-65LIMSGUGGpY3oH6mzV46YWRrgao6NmfJ+AuC7jNz3K5NPnH6GCV1H5I6SwOFyVbkiygGyd0EFwrWqywTBD1aw==} - - '@codemirror/comment@0.19.1': - resolution: {integrity: sha512-uGKteBuVWAC6fW+Yt8u27DOnXMT/xV4Ekk2Z5mRsiADCZDqYvryrJd6PLL5+8t64BVyocwQwNfz1UswYS2CtFQ==} - deprecated: As of 0.20.0, this package has been merged into @codemirror/commands - - '@codemirror/fold@0.19.4': - resolution: {integrity: sha512-0SNSkRSOa6gymD6GauHa3sxiysjPhUC0SRVyTlvL52o0gz9GHdc8kNqNQskm3fBtGGOiSriGwF/kAsajRiGhVw==} - deprecated: As of 0.20.0, this package has been merged into @codemirror/language - - '@codemirror/gutter@0.19.9': - resolution: {integrity: sha512-PFrtmilahin1g6uL27aG5tM/rqR9DZzZYZsIrCXA5Uc2OFTFqx4owuhoU9hqfYxHp5ovfvBwQ+txFzqS4vog6Q==} - deprecated: As of 0.20.0, this package has been merged into @codemirror/view - - '@codemirror/highlight@0.19.8': - resolution: {integrity: sha512-v/lzuHjrYR8MN2mEJcUD6fHSTXXli9C1XGYpr+ElV6fLBIUhMTNKR3qThp611xuWfXfwDxeL7ppcbkM/MzPV3A==} - deprecated: As of 0.20.0, this package has been split between @lezer/highlight and @codemirror/language - - '@codemirror/history@0.19.2': - resolution: {integrity: sha512-unhP4t3N2smzmHoo/Yio6ueWi+il8gm9VKrvi6wlcdGH5fOfVDNkmjHQ495SiR+EdOG35+3iNebSPYww0vN7ow==} - deprecated: As of 0.20.0, this package has been merged into @codemirror/commands - - '@codemirror/lang-javascript@0.19.7': - resolution: {integrity: sha512-DL9f3JLqOEHH9cIwEqqjnP5bkjdVXeECksLtV+/MbPm+l4H+AG+PkwZaJQ2oR1GfPZKh8MVSIE94aGWNkJP8WQ==} - - '@codemirror/language@0.19.10': - resolution: {integrity: sha512-yA0DZ3RYn2CqAAGW62VrU8c4YxscMQn45y/I9sjBlqB1e2OTQLg4CCkMBuMSLXk4xaqjlsgazeOQWaJQOKfV8Q==} - - '@codemirror/legacy-modes@0.19.1': - resolution: {integrity: sha512-vYPLsD/ON+3SXhlGj9Qb3fpFNNU3Ya/AtDiv/g3OyqVzhh5vs5rAnOvk8xopGWRwppdhlNPD9VyXjiOmZUQtmQ==} - - '@codemirror/lint@0.19.6': - resolution: {integrity: sha512-Pbw1Y5kHVs2J+itQ0uez3dI4qY9ApYVap7eNfV81x1/3/BXgBkKfadaw0gqJ4h4FDG7OnJwb0VbPsjJQllHjaA==} - - '@codemirror/matchbrackets@0.19.4': - resolution: {integrity: sha512-VFkaOKPNudAA5sGP1zikRHCEKU0hjYmkKpr04pybUpQvfTvNJXlReCyP0rvH/1iEwAGPL990ZTT+QrLdu4MeEA==} - deprecated: As of 0.20.0, this package has been merged into @codemirror/language - - '@codemirror/panel@0.19.1': - resolution: {integrity: sha512-sYeOCMA3KRYxZYJYn5PNlt9yNsjy3zTNTrbYSfVgjgL9QomIVgOJWPO5hZ2sTN8lufO6lw0vTBsIPL9MSidmBg==} - deprecated: As of 0.20.0, this package has been merged into @codemirror/view - - '@codemirror/rangeset@0.19.9': - resolution: {integrity: sha512-V8YUuOvK+ew87Xem+71nKcqu1SXd5QROMRLMS/ljT5/3MCxtgrRie1Cvild0G/Z2f1fpWxzX78V0U4jjXBorBQ==} - deprecated: As of 0.20.0, this package has been merged into @codemirror/state - - '@codemirror/rectangular-selection@0.19.2': - resolution: {integrity: sha512-AXK/p5eGwFJ9GJcLfntqN4dgY+XiIF7eHfXNQJX5HhQLSped2wJE6WuC1rMEaOlcpOqlb9mrNi/ZdUjSIj9mbA==} - deprecated: As of 0.20.0, this package has been merged into @codemirror/view - - '@codemirror/search@0.19.10': - resolution: {integrity: sha512-qjubm69HJixPBWzI6HeEghTWOOD8NXiHOTRNvdizqs8xWRuFChq9zkjD3XiAJ7GXSTzCuQJnAP9DBBGCLq4ZIA==} - - '@codemirror/state@0.19.9': - resolution: {integrity: sha512-psOzDolKTZkx4CgUqhBQ8T8gBc0xN5z4gzed109aF6x7D7umpDRoimacI/O6d9UGuyl4eYuDCZmDFr2Rq7aGOw==} - - '@codemirror/stream-parser@0.19.9': - resolution: {integrity: sha512-WTmkEFSRCetpk8xIOvV2yyXdZs3DgYckM0IP7eFi4ewlxWnJO/H4BeJZLs4wQaydWsAqTQoDyIwNH1BCzK5LUQ==} - deprecated: As of 0.20.0, this package has been merged into @codemirror/language - - '@codemirror/text@0.19.6': - resolution: {integrity: sha512-T9jnREMIygx+TPC1bOuepz18maGq/92q2a+n4qTqObKwvNMg+8cMTslb8yxeEDEq7S3kpgGWxgO1UWbQRij0dA==} - deprecated: As of 0.20.0, this package has been merged into @codemirror/state - - '@codemirror/theme-one-dark@0.19.0': - resolution: {integrity: sha512-Xlk68ARreanFveE+KvZJY4HxecNr+VKDOR61O8l3kzlQ0qvxNXA0KAp1xu4p32pA9jzJqJi5haIgdfWSZogXZg==} - - '@codemirror/tooltip@0.19.16': - resolution: {integrity: sha512-zxKDHryUV5/RS45AQL+wOeN+i7/l81wK56OMnUPoTSzCWNITfxHn7BToDsjtrRKbzHqUxKYmBnn/4hPjpZ4WJQ==} - deprecated: As of 0.20.0, this package has been merged into @codemirror/view - - '@codemirror/view@0.19.48': - resolution: {integrity: sha512-0eg7D2Nz4S8/caetCTz61rK0tkHI17V/d15Jy0kLOT8dTLGGNJUponDnW28h2B6bERmPlVHKh8MJIr5OCp1nGw==} - - '@colors/colors@1.5.0': - resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} - engines: {node: '>=0.1.90'} - - '@cspotcode/source-map-support@0.8.1': - resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} - engines: {node: '>=12'} - - '@dabh/diagnostics@2.0.3': - resolution: {integrity: sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==} - - '@discoveryjs/json-ext@0.5.7': - resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==} - engines: {node: '>=10.0.0'} - - '@emotion/babel-plugin@11.10.6': - resolution: {integrity: sha512-p2dAqtVrkhSa7xz1u/m9eHYdLi+en8NowrmXeF/dKtJpU8lCWli8RUAati7NcSl0afsBott48pdnANuD0wh9QQ==} - - '@emotion/cache@11.10.5': - resolution: {integrity: sha512-dGYHWyzTdmK+f2+EnIGBpkz1lKc4Zbj2KHd4cX3Wi8/OWr5pKslNjc3yABKH4adRGCvSX4VDC0i04mrrq0aiRA==} - - '@emotion/hash@0.9.0': - resolution: {integrity: sha512-14FtKiHhy2QoPIzdTcvh//8OyBlknNs2nXRwIhG904opCby3l+9Xaf/wuPvICBF0rc1ZCNBd3nKe9cd2mecVkQ==} - - '@emotion/memoize@0.8.0': - resolution: {integrity: sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA==} - - '@emotion/react@11.10.6': - resolution: {integrity: sha512-6HT8jBmcSkfzO7mc+N1L9uwvOnlcGoix8Zn7srt+9ga0MjREo6lRpuVX0kzo6Jp6oTqDhREOFsygN6Ew4fEQbw==} - peerDependencies: - '@types/react': '*' - react: '>=16.8.0' - peerDependenciesMeta: - '@types/react': - optional: true - - '@emotion/serialize@1.1.1': - resolution: {integrity: sha512-Zl/0LFggN7+L1liljxXdsVSVlg6E/Z/olVWpfxUTxOAmi8NU7YoeWeLfi1RmnB2TATHoaWwIBRoL+FvAJiTUQA==} - - '@emotion/server@11.10.0': - resolution: {integrity: sha512-MTvJ21JPo9aS02GdjFW4nhdwOi2tNNpMmAM/YED0pkxzjDNi5WbiTwXqaCnvLc2Lr8NFtjhT0az1vTJyLIHYcw==} - peerDependencies: - '@emotion/css': ^11.0.0-rc.0 - peerDependenciesMeta: - '@emotion/css': - optional: true - - '@emotion/sheet@1.2.1': - resolution: {integrity: sha512-zxRBwl93sHMsOj4zs+OslQKg/uhF38MB+OMKoCrVuS0nyTkqnau+BM3WGEoOptg9Oz45T/aIGs1qbVAsEFo3nA==} - - '@emotion/unitless@0.8.0': - resolution: {integrity: sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw==} - - '@emotion/use-insertion-effect-with-fallbacks@1.0.0': - resolution: {integrity: sha512-1eEgUGmkaljiBnRMTdksDV1W4kUnmwgp7X9G8B++9GYwl1lUdqSndSriIrTJ0N7LQaoauY9JJ2yhiOYK5+NI4A==} - peerDependencies: - react: '>=16.8.0' - - '@emotion/utils@1.2.0': - resolution: {integrity: sha512-sn3WH53Kzpw8oQ5mgMmIzzyAaH2ZqFEbozVVBSYp538E06OSE6ytOp7pRAjNQR+Q/orwqdQYJSe2m3hCOeznkw==} - - '@emotion/weak-memoize@0.3.0': - resolution: {integrity: sha512-AHPmaAx+RYfZz0eYu6Gviiagpmiyw98ySSlQvCUhVGDRtDFe4DBS0x1bSjdF3gqUDYOczB+yYvBTtEylYSdRhg==} - - '@eslint-community/eslint-utils@4.2.0': - resolution: {integrity: sha512-gB8T4H4DEfX2IV9zGDJPOBgP1e/DbfCPDTtEqUMckpvzS1OYtva8JdFYBqMwYk7xAQ429WGF/UPqn8uQ//h2vQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - - '@eslint-community/regexpp@4.4.0': - resolution: {integrity: sha512-A9983Q0LnDGdLPjxyXQ00sbV+K+O+ko2Dr+CZigbHWtX9pNfxlaBkMR8X1CztI73zuEyEBXTVjx7CE+/VSwDiQ==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - - '@eslint/eslintrc@2.0.1': - resolution: {integrity: sha512-eFRmABvW2E5Ho6f5fHLqgena46rOj7r7OKHYfLElqcBfGFHHpjBhivyi5+jOEQuSpdc/1phIZJlbC2te+tZNIw==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - '@eslint/js@8.36.0': - resolution: {integrity: sha512-lxJ9R5ygVm8ZWgYdUweoq5ownDlJ4upvoWmO4eLxBYHdMo+vZ/Rx0EN6MbKWDJOSUGrqJy2Gt+Dyv/VKml0fjg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - '@floating-ui/core@1.2.2': - resolution: {integrity: sha512-FaO9KVLFnxknZaGWGmNtjD2CVFuc0u4yeGEofoyXO2wgRA7fLtkngT6UB0vtWQWuhH3iMTZZ/Y89CMeyGfn8pA==} - - '@floating-ui/dom@1.2.3': - resolution: {integrity: sha512-lK9cZUrHSJLMVAdCvDqs6Ug8gr0wmqksYiaoj/bxj2gweRQkSuhg2/V6Jswz2KiQ0RAULbqw1oQDJIMpQ5GfGA==} - - '@floating-ui/react-dom@1.3.0': - resolution: {integrity: sha512-htwHm67Ji5E/pROEAr7f8IKFShuiCKHwUC/UY4vC3I5jiSvGFAYnSYiZO5MlGmads+QqvUkR9ANHEguGrDv72g==} - peerDependencies: - react: '>=16.8.0' - react-dom: '>=16.8.0' - - '@floating-ui/react@0.19.2': - resolution: {integrity: sha512-JyNk4A0Ezirq8FlXECvRtQOX/iBe5Ize0W/pLkrZjfHW9GUV7Xnq6zm6fyZuQzaHHqEnVizmvlA96e1/CkZv+w==} - peerDependencies: - react: '>=16.8.0' - react-dom: '>=16.8.0' - - '@focus-reactive/react-yaml@1.1.2': - resolution: {integrity: sha512-X9/rmfuDHR+beDym2206RsD5m/5EfH26vVuGVbLXy7+BunPcVBRqwe2WbvCyoHloMUX7Ccp2xrLwmmPrvZ9hrA==} - peerDependencies: - react: '*' - - '@gar/promisify@1.1.3': - resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==} - - '@hookform/resolvers@2.9.11': - resolution: {integrity: sha512-bA3aZ79UgcHj7tFV7RlgThzwSSHZgvfbt2wprldRkYBcMopdMvHyO17Wwp/twcJasNFischFfS7oz8Katz8DdQ==} - peerDependencies: - react-hook-form: ^7.0.0 - - '@humanwhocodes/config-array@0.11.8': - resolution: {integrity: sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==} - engines: {node: '>=10.10.0'} - - '@humanwhocodes/module-importer@1.0.1': - resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} - engines: {node: '>=12.22'} - - '@humanwhocodes/object-schema@1.2.1': - resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} - - '@icons/material@0.2.4': - resolution: {integrity: sha512-QPcGmICAPbGLGb6F/yNf/KzKqvFx8z5qx3D1yFqVAjoFmXK35EgyW+cJ57Te3CNsmzblwtzakLGFqHPqrfb4Tw==} - peerDependencies: - react: '*' - - '@istanbuljs/load-nyc-config@1.1.0': - resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} - engines: {node: '>=8'} - - '@istanbuljs/schema@0.1.3': - resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} - engines: {node: '>=8'} - - '@jest/console@29.5.0': - resolution: {integrity: sha512-NEpkObxPwyw/XxZVLPmAGKE89IQRp4puc6IQRPru6JKd1M3fW9v1xM1AnzIJE65hbCkzQAdnL8P47e9hzhiYLQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/core@29.5.0': - resolution: {integrity: sha512-28UzQc7ulUrOQw1IsN/kv1QES3q2kkbl/wGslyhAclqZ/8cMdB5M68BffkIdSJgKBUt50d3hbwJ92XESlE7LiQ==} - 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 - - '@jest/environment@29.5.0': - resolution: {integrity: sha512-5FXw2+wD29YU1d4I2htpRX7jYnAyTRjP2CsXQdo9SAM8g3ifxWPSV0HnClSn71xwctr0U3oZIIH+dtbfmnbXVQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/expect-utils@29.4.3': - resolution: {integrity: sha512-/6JWbkxHOP8EoS8jeeTd9dTfc9Uawi+43oLKHfp6zzux3U2hqOOVnV3ai4RpDYHOccL6g+5nrxpoc8DmJxtXVQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/expect-utils@29.5.0': - resolution: {integrity: sha512-fmKzsidoXQT2KwnrwE0SQq3uj8Z763vzR8LnLBwC2qYWEFpjX8daRsk6rHUM1QvNlEW/UJXNXm59ztmJJWs2Mg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/expect@29.5.0': - resolution: {integrity: sha512-PueDR2HGihN3ciUNGr4uelropW7rqUfTiOn+8u0leg/42UhblPxHkfoh0Ruu3I9Y1962P3u2DY4+h7GVTSVU6g==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/fake-timers@29.5.0': - resolution: {integrity: sha512-9ARvuAAQcBwDAqOnglWq2zwNIRUDtk/SCkp/ToGEhFv5r86K21l+VEs0qNTaXtyiY0lEePl3kylijSYJQqdbDg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/globals@29.5.0': - resolution: {integrity: sha512-S02y0qMWGihdzNbUiqSAiKSpSozSuHX5UYc7QbnHP+D9Lyw8DgGGCinrN9uSuHPeKgSSzvPom2q1nAtBvUsvPQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/reporters@29.5.0': - resolution: {integrity: sha512-D05STXqj/M8bP9hQNSICtPqz97u7ffGzZu+9XLucXhkOFBqKcXe04JLZOgIekOxdb73MAoBUFnqvf7MCpKk5OA==} - 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 - - '@jest/schemas@29.4.3': - resolution: {integrity: sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/source-map@29.4.3': - resolution: {integrity: sha512-qyt/mb6rLyd9j1jUts4EQncvS6Yy3PM9HghnNv86QBlV+zdL2inCdK1tuVlL+J+lpiw2BI67qXOrX3UurBqQ1w==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/test-result@29.5.0': - resolution: {integrity: sha512-fGl4rfitnbfLsrfx1uUpDEESS7zM8JdgZgOCQuxQvL1Sn/I6ijeAVQWGfXI9zb1i9Mzo495cIpVZhA0yr60PkQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/test-sequencer@29.5.0': - resolution: {integrity: sha512-yPafQEcKjkSfDXyvtgiV4pevSeyuA6MQr6ZIdVkWJly9vkqjnFfcfhRQqpD5whjoU8EORki752xQmjaqoFjzMQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/transform@26.6.2': - resolution: {integrity: sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA==} - engines: {node: '>= 10.14.2'} - - '@jest/transform@29.5.0': - resolution: {integrity: sha512-8vbeZWqLJOvHaDfeMuoHITGKSz5qWc9u04lnWrQE3VyuSw604PzQM824ZeX9XSjUCeDiE3GuxZe5UKa8J61NQw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/types@26.6.2': - resolution: {integrity: sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==} - engines: {node: '>= 10.14.2'} - - '@jest/types@29.5.0': - resolution: {integrity: sha512-qbu7kN6czmVRc3xWFQcAN03RAUamgppVUdXrvl1Wr3jlNF93o9mJbGcDWrwGB6ht44u7efB1qCFgVQmca24Uog==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jridgewell/gen-mapping@0.1.1': - resolution: {integrity: sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==} - engines: {node: '>=6.0.0'} - - '@jridgewell/gen-mapping@0.3.2': - resolution: {integrity: sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==} - engines: {node: '>=6.0.0'} - - '@jridgewell/resolve-uri@3.1.0': - resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} - engines: {node: '>=6.0.0'} - - '@jridgewell/set-array@1.1.2': - resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} - engines: {node: '>=6.0.0'} - - '@jridgewell/source-map@0.3.2': - resolution: {integrity: sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==} - - '@jridgewell/sourcemap-codec@1.4.14': - resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} - - '@jridgewell/trace-mapping@0.3.17': - resolution: {integrity: sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==} - - '@jridgewell/trace-mapping@0.3.9': - resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} - - '@koa/cors@4.0.0': - resolution: {integrity: sha512-Y4RrbvGTlAaa04DBoPBWJqDR5gPj32OOz827ULXfgB1F7piD1MB/zwn8JR2LAnvdILhxUbXbkXGWuNVsFuVFCQ==} - engines: {node: '>= 14.0.0'} - - '@koa/multer@3.0.2': - resolution: {integrity: sha512-Q6WfPpE06mJWyZD1fzxM6zWywaoo+zocAn2YA9QYz4RsecoASr1h/kSzG0c5seDpFVKCMZM9raEfuM7XfqbRLw==} - engines: {node: '>= 8'} - peerDependencies: - multer: '*' - - '@koa/router@12.0.0': - resolution: {integrity: sha512-cnnxeKHXlt7XARJptflGURdJaO+ITpNkOHmQu7NHmCoRinPbyvFzce/EG/E8Zy81yQ1W9MoSdtklc3nyaDReUw==} - engines: {node: '>= 12'} - - '@lezer/common@0.15.12': - resolution: {integrity: sha512-edfwCxNLnzq5pBA/yaIhwJ3U3Kz8VAUOTRg0hhxaizaI1N+qxV7EXDv/kLCkLeq2RzSFvxexlaj5Mzfn2kY0Ig==} - - '@lezer/javascript@0.15.3': - resolution: {integrity: sha512-8jA2NpOfpWwSPZxRhd9BxK2ZPvGd7nLE3LFTJ5AbMhXAzMHeMjneV6GEVd7dAIee85dtap0jdb6bgOSO0+lfwA==} - - '@lezer/lr@0.15.8': - resolution: {integrity: sha512-bM6oE6VQZ6hIFxDNKk8bKPa14hqFrV07J/vHGOeiAbJReIaQXmkVb6xQu4MR+JBTLa5arGRyAAjJe1qaQt3Uvg==} - - '@mantine/core@6.0.1': - resolution: {integrity: sha512-RJ0gnEOMQu9qGV9bZxb4FrHe3UT2GjVokzZ91C/Ht8DTu8Ar1uUch45+VsqI67JG2ceHykOMvsDWgAulCUKBNg==} - peerDependencies: - '@mantine/hooks': 6.0.1 - react: '>=16.8.0' - react-dom: '>=16.8.0' - - '@mantine/dates@6.0.1': - resolution: {integrity: sha512-ZoKrlEN0YF96Jxr7bFSwZtYm+OSWdc/x8MHFaVmqsN4xkW0WFdv9WyWPLYW+GCeSrw5jcj+XC3dWEY2g/RCacw==} - peerDependencies: - '@mantine/core': 6.0.1 - '@mantine/hooks': 6.0.1 - dayjs: '>=1.0.0' - react: '>=16.8.0' - - '@mantine/dropzone@6.0.1': - resolution: {integrity: sha512-9wbLgT4/yGB6BFyPoEdBgl8rHCQvoEMIfyTDlevGZfc990JpDOtXIId7ORWNsFjwcVv0OyDxcbSiAB+mDKgjkQ==} - peerDependencies: - '@mantine/core': 6.0.1 - '@mantine/hooks': 6.0.1 - react: '>=16.8.0' - react-dom: '>=16.8.0' - - '@mantine/hooks@6.0.1': - resolution: {integrity: sha512-D3zWNPMrmjBbns0krXCE5FyWNmrKosYqD+J4/yyBrngvN6XMlmqfUr4C6ofndRrpZHxyshEJgVYLvB5h2bioGQ==} - peerDependencies: - react: '>=16.8.0' - - '@mantine/modals@6.0.1': - resolution: {integrity: sha512-uMtGDI3sPygQV5VOLIuNa8Y7gmylZN82BAWy8KoCduVn5Fbby/t6ILz7OVJEp8Ob+IL9CZZYvQRtnHQ0zLjq8g==} - peerDependencies: - '@mantine/core': 6.0.1 - '@mantine/hooks': 6.0.1 - react: '>=16.8.0' - react-dom: '>=16.8.0' - - '@mantine/next@6.0.1': - resolution: {integrity: sha512-+7Mb79V+ah/XhVmOTQ6tlg0ZHZhweTgryQO9u87wD8KMxuuNhdNLZq27E8390PTXHhxFO93T7k4WbQqIXQOkUg==} - peerDependencies: - next: '*' - react: '>=16.8.0' - react-dom: '>=16.8.0' - - '@mantine/notifications@6.0.1': - resolution: {integrity: sha512-IZpaQD9qPf2vZHa4kvRfEC/pg3NnTHUiIJVvZm0zWJDXB/klZtxSSbcnmp18Pv5vZlpUZXgIb5JE1exeFiPz1g==} - peerDependencies: - '@mantine/core': 6.0.1 - '@mantine/hooks': 6.0.1 - react: '>=16.8.0' - react-dom: '>=16.8.0' - - '@mantine/ssr@6.0.1': - resolution: {integrity: sha512-qAQEqkVZ6uirdlZzD4ia3yW7PSxITkLjuqHMgabUbfk383xko3MAcdoUHz9cufpB8w+qJzuqUUR9D7mkJCChzQ==} - peerDependencies: - '@emotion/react': '>=11.9.0' - '@emotion/server': '>=11.4.0' - react: '>=16.8.0' - react-dom: '>=16.8.0' - - '@mantine/styles@6.0.1': - resolution: {integrity: sha512-5hY5Tt0v8GzJ4PSuE9DHlHMmzFi2Vs/l9nVc5feut0vp7GqDvoSMH+gBvsMIIsgGif+nhdztvdpv1aI0YRZgtA==} - peerDependencies: - '@emotion/react': '>=11.9.0' - react: '>=16.8.0' - react-dom: '>=16.8.0' - - '@mantine/utils@6.0.1': - resolution: {integrity: sha512-uEN457ELHpKXS4qNAcL5OR9dFOjeFngWRZJVAPkLafWBJuLd2qmdLvKLgUVyt+cMVFtcjnu6rGVOite1+dtaFw==} - peerDependencies: - react: '>=16.8.0' - - '@mdx-js/mdx@1.6.22': - resolution: {integrity: sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA==} - - '@mdx-js/react@1.6.22': - resolution: {integrity: sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==} - peerDependencies: - react: ^16.13.1 || ^17.0.0 - - '@mdx-js/util@1.6.22': - resolution: {integrity: sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==} - - '@microsoft/signalr@7.0.3': - resolution: {integrity: sha512-gQbrCQxvC/djy+/GBHFpNnAqubGLe0Hrp3ZO8x8NRGAU8jhj3QcHuxhq6N5Z3A0zI6IE/fMfX2xSheQxOwA3ZA==} - - '@mrmlnc/readdir-enhanced@2.2.1': - resolution: {integrity: sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==} - engines: {node: '>=4'} - - '@next/env@13.2.4': - resolution: {integrity: sha512-+Mq3TtpkeeKFZanPturjcXt+KHfKYnLlX6jMLyCrmpq6OOs4i1GqBOAauSkii9QeKCMTYzGppar21JU57b/GEA==} - - '@next/eslint-plugin-next@13.2.4': - resolution: {integrity: sha512-ck1lI+7r1mMJpqLNa3LJ5pxCfOB1lfJncKmRJeJxcJqcngaFwylreLP7da6Rrjr6u2gVRTfmnkSkjc80IiQCwQ==} - - '@next/swc-android-arm-eabi@13.2.4': - resolution: {integrity: sha512-DWlalTSkLjDU11MY11jg17O1gGQzpRccM9Oes2yTqj2DpHndajrXHGxj9HGtJ+idq2k7ImUdJVWS2h2l/EDJOw==} - engines: {node: '>= 10'} - cpu: [arm] - os: [android] - - '@next/swc-android-arm64@13.2.4': - resolution: {integrity: sha512-sRavmUImUCf332Gy+PjIfLkMhiRX1Ez4SI+3vFDRs1N5eXp+uNzjFUK/oLMMOzk6KFSkbiK/3Wt8+dHQR/flNg==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [android] - - '@next/swc-darwin-arm64@13.2.4': - resolution: {integrity: sha512-S6vBl+OrInP47TM3LlYx65betocKUUlTZDDKzTiRDbsRESeyIkBtZ6Qi5uT2zQs4imqllJznVjFd1bXLx3Aa6A==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [darwin] - - '@next/swc-darwin-x64@13.2.4': - resolution: {integrity: sha512-a6LBuoYGcFOPGd4o8TPo7wmv5FnMr+Prz+vYHopEDuhDoMSHOnC+v+Ab4D7F0NMZkvQjEJQdJS3rqgFhlZmKlw==} - engines: {node: '>= 10'} - cpu: [x64] - os: [darwin] - - '@next/swc-freebsd-x64@13.2.4': - resolution: {integrity: sha512-kkbzKVZGPaXRBPisoAQkh3xh22r+TD+5HwoC5bOkALraJ0dsOQgSMAvzMXKsN3tMzJUPS0tjtRf1cTzrQ0I5vQ==} - engines: {node: '>= 10'} - cpu: [x64] - os: [freebsd] - - '@next/swc-linux-arm-gnueabihf@13.2.4': - resolution: {integrity: sha512-7qA1++UY0fjprqtjBZaOA6cas/7GekpjVsZn/0uHvquuITFCdKGFCsKNBx3S0Rpxmx6WYo0GcmhNRM9ru08BGg==} - engines: {node: '>= 10'} - cpu: [arm] - os: [linux] - - '@next/swc-linux-arm64-gnu@13.2.4': - resolution: {integrity: sha512-xzYZdAeq883MwXgcwc72hqo/F/dwUxCukpDOkx/j1HTq/J0wJthMGjinN9wH5bPR98Mfeh1MZJ91WWPnZOedOg==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - - '@next/swc-linux-arm64-musl@13.2.4': - resolution: {integrity: sha512-8rXr3WfmqSiYkb71qzuDP6I6R2T2tpkmf83elDN8z783N9nvTJf2E7eLx86wu2OJCi4T05nuxCsh4IOU3LQ5xw==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - - '@next/swc-linux-x64-gnu@13.2.4': - resolution: {integrity: sha512-Ngxh51zGSlYJ4EfpKG4LI6WfquulNdtmHg1yuOYlaAr33KyPJp4HeN/tivBnAHcZkoNy0hh/SbwDyCnz5PFJQQ==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - - '@next/swc-linux-x64-musl@13.2.4': - resolution: {integrity: sha512-gOvwIYoSxd+j14LOcvJr+ekd9fwYT1RyMAHOp7znA10+l40wkFiMONPLWiZuHxfRk+Dy7YdNdDh3ImumvL6VwA==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - - '@next/swc-win32-arm64-msvc@13.2.4': - resolution: {integrity: sha512-q3NJzcfClgBm4HvdcnoEncmztxrA5GXqKeiZ/hADvC56pwNALt3ngDC6t6qr1YW9V/EPDxCYeaX4zYxHciW4Dw==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [win32] - - '@next/swc-win32-ia32-msvc@13.2.4': - resolution: {integrity: sha512-/eZ5ncmHUYtD2fc6EUmAIZlAJnVT2YmxDsKs1Ourx0ttTtvtma/WKlMV5NoUsyOez0f9ExLyOpeCoz5aj+MPXw==} - engines: {node: '>= 10'} - cpu: [ia32] - os: [win32] - - '@next/swc-win32-x64-msvc@13.2.4': - resolution: {integrity: sha512-0MffFmyv7tBLlji01qc0IaPP/LVExzvj7/R5x1Jph1bTAIj4Vu81yFQWHHQAP6r4ff9Ukj1mBK6MDNVXm7Tcvw==} - engines: {node: '>= 10'} - cpu: [x64] - os: [win32] - - '@nodelib/fs.scandir@2.1.5': - resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} - engines: {node: '>= 8'} - - '@nodelib/fs.stat@1.1.3': - resolution: {integrity: sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==} - engines: {node: '>= 6'} - - '@nodelib/fs.stat@2.0.5': - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} - engines: {node: '>= 8'} - - '@nodelib/fs.walk@1.2.8': - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} - engines: {node: '>= 8'} - - '@npmcli/fs@1.1.1': - resolution: {integrity: sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==} - - '@npmcli/move-file@1.1.2': - resolution: {integrity: sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==} - engines: {node: '>=10'} - deprecated: This functionality has been moved to @npmcli/fs - - '@paralect/node-mongo@3.1.2': - resolution: {integrity: sha512-Q3IsC4Pl0PvX9nuguz1JFuVPcGKT9KmrOmip/uquiotMjcW0kMIwopNoTSV0A9jaY44XYku4tAudkMS9jubUcg==} - engines: {node: '>=12.0.0'} - - '@pkgr/utils@2.3.1': - resolution: {integrity: sha512-wfzX8kc1PMyUILA+1Z/EqoE4UCXGy0iRGMhPwdfae1+f0OXlLqCk+By+aMzgJBzR9AzS4CDizioG6Ss1gvAFJw==} - engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} - - '@pmmmwh/react-refresh-webpack-plugin@0.5.10': - resolution: {integrity: sha512-j0Ya0hCFZPd4x40qLzbhGsh9TMtdb+CJQiso+WxLOPNasohq9cc5SNUcwsZaRH6++Xh91Xkm/xHCkuIiIu0LUA==} - engines: {node: '>= 10.13'} - peerDependencies: - '@types/webpack': 4.x || 5.x - react-refresh: '>=0.10.0 <1.0.0' - sockjs-client: ^1.4.0 - type-fest: '>=0.17.0 <4.0.0' - webpack: '>=4.43.0 <6.0.0' - webpack-dev-server: 3.x || 4.x - webpack-hot-middleware: 2.x - webpack-plugin-serve: 0.x || 1.x - peerDependenciesMeta: - '@types/webpack': - optional: true - sockjs-client: - optional: true - type-fest: - optional: true - webpack-dev-server: - optional: true - webpack-hot-middleware: - optional: true - webpack-plugin-serve: - optional: true - - '@radix-ui/number@1.0.0': - resolution: {integrity: sha512-Ofwh/1HX69ZfJRiRBMTy7rgjAzHmwe4kW9C9Y99HTRUcYLUuVT0KESFj15rPjRgKJs20GPq8Bm5aEDJ8DuA3vA==} - - '@radix-ui/primitive@1.0.0': - resolution: {integrity: sha512-3e7rn8FDMin4CgeL7Z/49smCA3rFYY3Ha2rUQ7HRWFadS5iCRw08ZgVT1LaNTCNqgvrUiyczLflrVrF0SRQtNA==} - - '@radix-ui/react-compose-refs@1.0.0': - resolution: {integrity: sha512-0KaSv6sx787/hK3eF53iOkiSLwAGlFMx5lotrqD2pTjB18KbybKoEIgkNZTKC60YECDQTKGTRcDBILwZVqVKvA==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - - '@radix-ui/react-context@1.0.0': - resolution: {integrity: sha512-1pVM9RfOQ+n/N5PJK33kRSKsr1glNxomxONs5c49MliinBY6Yw2Q995qfBUUo0/Mbg05B/sGA0gkgPI7kmSHBg==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - - '@radix-ui/react-direction@1.0.0': - resolution: {integrity: sha512-2HV05lGUgYcA6xgLQ4BKPDmtL+QbIZYH5fCOTAOOcJ5O0QbWS3i9lKaurLzliYUDhORI2Qr3pyjhJh44lKA3rQ==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - - '@radix-ui/react-presence@1.0.0': - resolution: {integrity: sha512-A+6XEvN01NfVWiKu38ybawfHsBjWum42MRPnEuqPsBZ4eV7e/7K321B5VgYMPv3Xx5An6o1/l9ZuDBgmcmWK3w==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - - '@radix-ui/react-primitive@1.0.1': - resolution: {integrity: sha512-fHbmislWVkZaIdeF6GZxF0A/NH/3BjrGIYj+Ae6eTmTCr7EB0RQAAVEiqsXK6p3/JcRqVSBQoceZroj30Jj3XA==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - - '@radix-ui/react-scroll-area@1.0.2': - resolution: {integrity: sha512-k8VseTxI26kcKJaX0HPwkvlNBPTs56JRdYzcZ/vzrNUkDlvXBy8sMc7WvCpYzZkHgb+hd72VW9MqkqecGtuNgg==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - - '@radix-ui/react-slot@1.0.1': - resolution: {integrity: sha512-avutXAFL1ehGvAXtPquu0YK5oz6ctS474iM3vNGQIkswrVhdrS52e3uoMQBzZhNRAIE0jBnUyXWNmSjGHhCFcw==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - - '@radix-ui/react-use-callback-ref@1.0.0': - resolution: {integrity: sha512-GZtyzoHz95Rhs6S63D2t/eqvdFCm7I+yHMLVQheKM7nBD8mbZIt+ct1jz4536MDnaOGKIxynJ8eHTkVGVVkoTg==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - - '@radix-ui/react-use-layout-effect@1.0.0': - resolution: {integrity: sha512-6Tpkq+R6LOlmQb1R5NNETLG0B4YP0wc+klfXafpUCj6JGyaUc8il7/kUZ7m59rGbXGczE9Bs+iz2qloqsZBduQ==} - peerDependencies: - react: ^16.8 || ^17.0 || ^18.0 - - '@reach/component-component@0.1.3': - resolution: {integrity: sha512-a1USH7L3bEfDdPN4iNZGvMEFuBfkdG+QNybeyDv8RloVFgZYRoM+KGXyy2KOfEnTUM8QWDRSROwaL3+ts5Angg==} - peerDependencies: - prop-types: ^15.6.2 - react: ^16.4.0 - react-dom: ^16.4.0 - - '@reach/observe-rect@1.2.0': - resolution: {integrity: sha512-Ba7HmkFgfQxZqqaeIWWkNK0rEhpxVQHIoVyW1YDSkGsGIXzcaW4deC8B0pZrNSSyLTdIk7y+5olKt5+g0GmFIQ==} - - '@reach/rect@0.2.1': - resolution: {integrity: sha512-aZ9RsNHDMQ3zETonikqu9/85iXxj+LPqZ9Gr9UAncj3AufYmGeWG3XG6b37B+7ORH+mkhVpLU2ZlIWxmOe9Cqg==} - peerDependencies: - prop-types: ^15.6.2 - react: ^16.8.0 - react-dom: ^16.8.0 - - '@react-theming/flatten@0.1.1': - resolution: {integrity: sha512-cieWCbO4xTgl8/LAUTEgiafEiFIcheARteyxXddnUHm/+7POCmRvSE/woHGXlVH7dFBlCbI4y/e5ikMzwBA3CA==} - - '@react-theming/storybook-addon@1.1.10': - resolution: {integrity: sha512-7DHwzPIY4nerTqkUgyQ70IqPSHMycnYgJsYQMAVkT8dsQPuQUUKz2UVjqD0HkPMw3JA+wQuSvY9BpJap5z7fqQ==} - peerDependencies: - '@storybook/react': '*' - '@storybook/theming': '*' - react: '*' - - '@react-theming/theme-name@1.0.3': - resolution: {integrity: sha512-5tYnKIG3wUJ3GTX50ldeU+nxLTEU8WXEGsHk8mWeG9XGC4VxKIp2gSqS6B/opCGmfuIFm459Dtru8PSuEXiJJg==} - - '@react-theming/theme-swatch@1.0.0': - resolution: {integrity: sha512-tOzDTUbFB5uQLMVHJ4fXWYZ4i7JIKjyrS7SlHDoscRZqM69lmT+s9fSZoD1/InTdX0M7Jh8thXF0SzeoxnD1/Q==} - peerDependencies: - react: ^16.8.6 || ^17.0.0 - - '@redis/bloom@1.2.0': - resolution: {integrity: sha512-HG2DFjYKbpNmVXsa0keLHp/3leGJz1mjh09f2RLGGLQZzSHpkmZWuwJbAvo3QcRY8p80m5+ZdXZdYOSBLlp7Cg==} - peerDependencies: - '@redis/client': ^1.0.0 - - '@redis/client@1.5.6': - resolution: {integrity: sha512-dFD1S6je+A47Lj22jN/upVU2fj4huR7S9APd7/ziUXsIXDL+11GPYti4Suv5y8FuXaN+0ZG4JF+y1houEJ7ToA==} - engines: {node: '>=14'} - - '@redis/graph@1.1.0': - resolution: {integrity: sha512-16yZWngxyXPd+MJxeSr0dqh2AIOi8j9yXKcKCwVaKDbH3HTuETpDVPcLujhFYVPtYrngSco31BUcSa9TH31Gqg==} - peerDependencies: - '@redis/client': ^1.0.0 - - '@redis/json@1.0.4': - resolution: {integrity: sha512-LUZE2Gdrhg0Rx7AN+cZkb1e6HjoSKaeeW8rYnt89Tly13GBI5eP4CwDVr+MY8BAYfCg4/N15OUrtLoona9uSgw==} - peerDependencies: - '@redis/client': ^1.0.0 - - '@redis/search@1.1.2': - resolution: {integrity: sha512-/cMfstG/fOh/SsE+4/BQGeuH/JJloeWuH+qJzM8dbxuWvdWibWAOAHHCZTMPhV3xIlH4/cUEIA8OV5QnYpaVoA==} - peerDependencies: - '@redis/client': ^1.0.0 - - '@redis/time-series@1.0.4': - resolution: {integrity: sha512-ThUIgo2U/g7cCuZavucQTQzA9g9JbDDY2f64u3AbAoz/8vE2lt2U37LamDUVChhaDA3IRT9R6VvJwqnUfTJzng==} - peerDependencies: - '@redis/client': ^1.0.0 - - '@rushstack/eslint-patch@1.2.0': - resolution: {integrity: sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg==} - - '@sendgrid/client@7.7.0': - resolution: {integrity: sha512-SxH+y8jeAQSnDavrTD0uGDXYIIkFylCo+eDofVmZLQ0f862nnqbC3Vd1ej6b7Le7lboyzQF6F7Fodv02rYspuA==} - engines: {node: 6.* || 8.* || >=10.*} - - '@sendgrid/helpers@7.7.0': - resolution: {integrity: sha512-3AsAxfN3GDBcXoZ/y1mzAAbKzTtUZ5+ZrHOmWQ279AuaFXUNCh9bPnRpN504bgveTqoW+11IzPg3I0WVgDINpw==} - engines: {node: '>= 6.0.0'} - - '@sendgrid/mail@7.7.0': - resolution: {integrity: sha512-5+nApPE9wINBvHSUxwOxkkQqM/IAAaBYoP9hw7WwgDNQPxraruVqHizeTitVtKGiqWCKm2mnjh4XGN3fvFLqaw==} - engines: {node: 6.* || 8.* || >=10.*} - - '@shelf/jest-mongodb@4.1.7': - resolution: {integrity: sha512-1sQXHmEirGL+apuOGEt6dkySsgq5SmIGj7uKWYZ6VWch7kg7imCn4CrbfHgotRoiS6QRRIIVBfMdpv7g3XoEMg==} - engines: {node: '>=16'} - peerDependencies: - jest-environment-node: 27.x.x || 28.x || 29.x - mongodb: 3.x.x || 4.x || 5.x - - '@sinclair/typebox@0.25.23': - resolution: {integrity: sha512-VEB8ygeP42CFLWyAJhN5OklpxUliqdNEUcXb4xZ/CINqtYGTjL5ukluKdKzQ0iWdUxyQ7B0539PAUhHKrCNWSQ==} - - '@sindresorhus/is@4.6.0': - resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} - engines: {node: '>=10'} - - '@sinonjs/commons@2.0.0': - resolution: {integrity: sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==} - - '@sinonjs/fake-timers@10.0.2': - resolution: {integrity: sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw==} - - '@snyk/dep-graph@2.5.0': - resolution: {integrity: sha512-wFKHAhsD1VBfESiuN2nHHeulEYAAod1Z4E/2t+ztsiJ5DCeD0pSXtJizdp2PhMZ0cFFce8ln3NO8xBhl+C4H+Q==} - engines: {node: '>=10'} - - '@snyk/graphlib@2.1.9-patch.3': - resolution: {integrity: sha512-bBY9b9ulfLj0v2Eer0yFYa3syVeIxVKl2EpxSrsVeT4mjA0CltZyHsF0JjoaGXP27nItTdJS5uVsj1NA+3aE+Q==} - - '@socket.io/component-emitter@3.1.0': - resolution: {integrity: sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==} - - '@socket.io/redis-adapter@8.1.0': - resolution: {integrity: sha512-8nGMKcQ+DWpgefxA/Pi25aLajVilRPKwu29mZXu5cT+WGVYItcCkfMr4RsMmyYXUyJf00mN+7WinVLihmJwpXA==} - engines: {node: '>=10.0.0'} - peerDependencies: - socket.io-adapter: ^2.4.0 - - '@socket.io/redis-emitter@5.1.0': - resolution: {integrity: sha512-QQUFPBq6JX7JIuM/X1811ymKlAfwufnQ8w6G2/59Jaqp09hdF1GJ/+e8eo/XdcmT0TqkvcSa2TT98ggTXa5QYw==} - - '@storybook/addon-actions@6.5.16': - resolution: {integrity: sha512-aADjilFmuD6TNGz2CRPSupnyiA/IGkPJHDBTqMpsDXTUr8xnuD122xkIhg6UxmCM2y1c+ncwYXy3WPK2xXK57g==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - react: - optional: true - react-dom: - optional: true - - '@storybook/addon-backgrounds@6.5.16': - resolution: {integrity: sha512-t7qooZ892BruhilFmzYPbysFwpULt/q4zYXNSmKVbAYta8UVvitjcU4F18p8FpWd9WvhiTr0SDlyhNZuzvDfug==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - react: - optional: true - react-dom: - optional: true - - '@storybook/addon-controls@6.5.16': - resolution: {integrity: sha512-kShSGjq1MjmmyL3l8i+uPz6yddtf82mzys0l82VKtcuyjrr5944wYFJ5NTXMfZxrO/U6FeFsfuFZE/k6ex3EMg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - react: - optional: true - react-dom: - optional: true - - '@storybook/addon-devkit@1.4.2': - resolution: {integrity: sha512-ggy34eCzmiKOwgV7xYNjlPClGpmtnYODPJv0vkCKiDyPeVLHocq2UZ7ZkOhQ5GO7TM7aLeeC1JBS00tZId9oLA==} - peerDependencies: - '@storybook/addons': '*' - '@storybook/react': '*' - react: '*' - react-dom: '*' - - '@storybook/addon-docs@6.5.16': - resolution: {integrity: sha512-QM9WDZG9P02UvbzLu947a8ZngOrQeAKAT8jCibQFM/+RJ39xBlfm8rm+cQy3dm94wgtjmVkA3mKGOV/yrrsddg==} - peerDependencies: - '@storybook/mdx2-csf': ^0.0.3 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@storybook/mdx2-csf': - optional: true - react: - optional: true - react-dom: - optional: true - - '@storybook/addon-essentials@6.5.16': - resolution: {integrity: sha512-TeoMr6tEit4Pe91GH6f8g/oar1P4M0JL9S6oMcFxxrhhtOGO7XkWD5EnfyCx272Ok2VYfE58FNBTGPNBVIqYKQ==} - peerDependencies: - '@babel/core': ^7.9.6 - '@storybook/angular': '*' - '@storybook/builder-manager4': '*' - '@storybook/builder-manager5': '*' - '@storybook/builder-webpack4': '*' - '@storybook/builder-webpack5': '*' - '@storybook/html': '*' - '@storybook/vue': '*' - '@storybook/vue3': '*' - '@storybook/web-components': '*' - lit: '*' - lit-html: '*' - react: '*' - react-dom: '*' - svelte: '*' - sveltedoc-parser: '*' - vue: '*' - webpack: '*' - peerDependenciesMeta: - '@storybook/angular': - optional: true - '@storybook/builder-manager4': - optional: true - '@storybook/builder-manager5': - optional: true - '@storybook/builder-webpack4': - optional: true - '@storybook/builder-webpack5': - optional: true - '@storybook/html': - optional: true - '@storybook/vue': - optional: true - '@storybook/vue3': - optional: true - '@storybook/web-components': - optional: true - lit: - optional: true - lit-html: - optional: true - react: - optional: true - react-dom: - optional: true - svelte: - optional: true - sveltedoc-parser: - optional: true - vue: - optional: true - webpack: - optional: true - - '@storybook/addon-links@6.5.16': - resolution: {integrity: sha512-P/mmqK57NGXnR0i3d/T5B0rIt0Lg8Yq+qionRr3LK3AwG/4yGnYt4GNomLEknn/eEwABYq1Q/Z1aOpgIhNdq5A==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - react: - optional: true - react-dom: - optional: true - - '@storybook/addon-measure@6.5.16': - resolution: {integrity: sha512-DMwnXkmM2L6POTh4KaOWvOAtQ2p9Tr1UUNxz6VXiN5cKFohpCs6x0txdLU5WN8eWIq0VFsO7u5ZX34CGCc6gCg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - react: - optional: true - react-dom: - optional: true - - '@storybook/addon-outline@6.5.16': - resolution: {integrity: sha512-0du96nha4qltexO0Xq1xB7LeRSbqjC9XqtZLflXG7/X3ABoPD2cXgOV97eeaXUodIyb2qYBbHUfftBeA75x0+w==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - react: - optional: true - react-dom: - optional: true - - '@storybook/addon-toolbars@6.5.16': - resolution: {integrity: sha512-y3PuUKiwOWrAvqx1YdUvArg0UaAwmboXFeR2bkrowk1xcT+xnRO3rML4npFeUl26OQ1FzwxX/cw6nknREBBLEA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - react: - optional: true - react-dom: - optional: true - - '@storybook/addon-viewport@6.5.16': - resolution: {integrity: sha512-1Vyqf1U6Qng6TXlf4SdqUKyizlw1Wn6+qW8YeA2q1lbkJqn3UlnHXIp8Q0t/5q1dK5BFtREox3+jkGwbJrzkmA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - react: - optional: true - react-dom: - optional: true - - '@storybook/addons@6.5.16': - resolution: {integrity: sha512-p3DqQi+8QRL5k7jXhXmJZLsE/GqHqyY6PcoA1oNTJr0try48uhTGUOYkgzmqtDaa/qPFO5LP+xCPzZXckGtquQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@storybook/api@6.5.16': - resolution: {integrity: sha512-HOsuT8iomqeTMQJrRx5U8nsC7lJTwRr1DhdD0SzlqL4c80S/7uuCy4IZvOt4sYQjOzW5fOo/kamcoBXyLproTA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@storybook/builder-webpack4@6.5.16': - resolution: {integrity: sha512-YqDIrVNsUo8r9xc6AxsYDLxVYtMgl5Bxk+8/h1adsOko+jAFhdg6hOcAVxEmoSI0TMASOOVMFlT2hr23ppN2rQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@storybook/builder-webpack5@6.5.16': - resolution: {integrity: sha512-kh8Sofm1sbijaHDWtm0sXabqACHVFjikU/fIkkW786kpjoPIPIec1a+hrLgDsZxMU3I7XapSOaCFzWt6FjVXjg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@storybook/channel-postmessage@6.5.16': - resolution: {integrity: sha512-fZZSN29dsUArWOx7e7lTdMA9+7zijVwCwbvi2Fo4fqhRLh1DsTb/VXfz1FKMCWAjNlcX7QQvV25tnxbqsD6lyw==} - - '@storybook/channel-websocket@6.5.16': - resolution: {integrity: sha512-wJg2lpBjmRC2GJFzmhB9kxlh109VE58r/0WhFtLbwKvPqsvGf82xkBEl6BtBCvIQ4stzYnj/XijjA8qSi2zpOg==} - - '@storybook/channels@6.5.16': - resolution: {integrity: sha512-VylzaWQZaMozEwZPJdyJoz+0jpDa8GRyaqu9TGG6QGv+KU5POoZaGLDkRE7TzWkyyP0KQLo80K99MssZCpgSeg==} - - '@storybook/client-api@6.5.16': - resolution: {integrity: sha512-i3UwkzzUFw8I+E6fOcgB5sc4oU2fhvaKnqC1mpd9IYGJ9JN9MnGIaVl3Ko28DtFItu/QabC9JsLIJVripFLktQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@storybook/client-logger@6.5.16': - resolution: {integrity: sha512-pxcNaCj3ItDdicPTXTtmYJE3YC1SjxFrBmHcyrN+nffeNyiMuViJdOOZzzzucTUG0wcOOX8jaSyak+nnHg5H1Q==} - - '@storybook/components@6.5.16': - resolution: {integrity: sha512-LzBOFJKITLtDcbW9jXl0/PaG+4xAz25PK8JxPZpIALbmOpYWOAPcO6V9C2heX6e6NgWFMUxjplkULEk9RCQMNA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@storybook/core-client@6.5.16': - resolution: {integrity: sha512-14IRaDrVtKrQ+gNWC0wPwkCNfkZOKghYV/swCUnQX3rP99defsZK8Hc7xHIYoAiOP5+sc3sweRAxgmFiJeQ1Ig==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - typescript: '*' - webpack: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@storybook/core-common@6.5.16': - resolution: {integrity: sha512-2qtnKP3TTOzt2cp6LXKRTh7XrI9z5VanMnMTgeoFcA5ebnndD4V6BExQUdYPClE/QooLx6blUWNgS9dFEpjSqQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@storybook/core-events@6.5.16': - resolution: {integrity: sha512-qMZQwmvzpH5F2uwNUllTPg6eZXr2OaYZQRRN8VZJiuorZzDNdAFmiVWMWdkThwmyLEJuQKXxqCL8lMj/7PPM+g==} - - '@storybook/core-server@6.5.16': - resolution: {integrity: sha512-/3NPfmNyply395Dm0zaVZ8P9aruwO+tPx4D6/jpw8aqrRSwvAMndPMpoMCm0NXcpSm5rdX+Je4S3JW6JcggFkA==} - peerDependencies: - '@storybook/builder-webpack5': '*' - '@storybook/manager-webpack5': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - typescript: '*' - peerDependenciesMeta: - '@storybook/builder-webpack5': - optional: true - '@storybook/manager-webpack5': - optional: true - typescript: - optional: true - - '@storybook/core@6.5.16': - resolution: {integrity: sha512-CEF3QFTsm/VMnMKtRNr4rRdLeIkIG0g1t26WcmxTdSThNPBd8CsWzQJ7Jqu7CKiut+MU4A1LMOwbwCE5F2gmyA==} - peerDependencies: - '@storybook/builder-webpack5': '*' - '@storybook/manager-webpack5': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - typescript: '*' - webpack: '*' - peerDependenciesMeta: - '@storybook/builder-webpack5': - optional: true - '@storybook/manager-webpack5': - optional: true - typescript: - optional: true - - '@storybook/csf-tools@6.5.16': - resolution: {integrity: sha512-+WD4sH/OwAfXZX3IN6/LOZ9D9iGEFcN+Vvgv9wOsLRgsAZ10DG/NK6c1unXKDM/ogJtJYccNI8Hd+qNE/GFV6A==} - peerDependencies: - '@storybook/mdx2-csf': ^0.0.3 - peerDependenciesMeta: - '@storybook/mdx2-csf': - optional: true - - '@storybook/csf@0.0.2--canary.4566f4d.1': - resolution: {integrity: sha512-9OVvMVh3t9znYZwb0Svf/YQoxX2gVOeQTGe2bses2yj+a3+OJnCrUF3/hGv6Em7KujtOdL2LL+JnG49oMVGFgQ==} - - '@storybook/docs-tools@6.5.16': - resolution: {integrity: sha512-o+rAWPRGifjBF5xZzTKOqnHN3XQWkl0QFJYVDIiJYJrVll7ExCkpEq/PahOGzIBBV+tpMstJgmKM3lr/lu/jmg==} - - '@storybook/manager-webpack4@6.5.16': - resolution: {integrity: sha512-5VJZwmQU6AgdsBPsYdu886UKBHQ9SJEnFMaeUxKEclXk+iRsmbzlL4GHKyVd6oGX/ZaecZtcHPR6xrzmA4Ziew==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@storybook/manager-webpack5@6.5.16': - resolution: {integrity: sha512-OtxXv8JCe0r/0rE5HxaFicsNsXA+fqZxzokxquFFgrYf/1Jg4d7QX6/pG5wINF+5qInJfVkRG6xhPzv1s5bk9Q==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@storybook/mdx1-csf@0.0.1': - resolution: {integrity: sha512-4biZIWWzoWlCarMZmTpqcJNgo/RBesYZwGFbQeXiGYsswuvfWARZnW9RE9aUEMZ4XPn7B1N3EKkWcdcWe/K2tg==} - - '@storybook/node-logger@6.5.16': - resolution: {integrity: sha512-YjhBKrclQtjhqFNSO+BZK+RXOx6EQypAELJKoLFaawg331e8VUfvUuRCNB3fcEWp8G9oH13PQQte0OTjLyyOYg==} - - '@storybook/postinstall@6.5.16': - resolution: {integrity: sha512-08K2q+qN6pqyPW7PHLCZ5G5Xa6Wosd6t0F16PQ4abX2ItlJLabVoJN5mZ0gm/aeLTjD8QYr8IDvacu4eXh0SVA==} - - '@storybook/preview-web@6.5.16': - resolution: {integrity: sha512-IJnvfe2sKCfk7apN9Fu9U8qibbarrPX5JB55ZzK1amSHVmSDuYk5MIMc/U3NnSQNnvd1DO5v/zMcGgj563hrtg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@storybook/react-docgen-typescript-plugin@1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0': - resolution: {integrity: sha512-eVg3BxlOm2P+chijHBTByr90IZVUtgRW56qEOLX7xlww2NBuKrcavBlcmn+HH7GIUktquWkMPtvy6e0W0NgA5w==} - peerDependencies: - typescript: '>= 3.x' - webpack: '>= 4' - - '@storybook/react@6.5.16': - resolution: {integrity: sha512-cBtNlOzf/MySpNLBK22lJ8wFU22HnfTB2xJyBk7W7Zi71Lm7Uxkhv1Pz8HdiQndJ0SlsAAQOWjQYsSZsGkZIaA==} - engines: {node: '>=10.13.0'} - hasBin: true - peerDependencies: - '@babel/core': ^7.11.5 - '@storybook/builder-webpack4': '*' - '@storybook/builder-webpack5': '*' - '@storybook/manager-webpack4': '*' - '@storybook/manager-webpack5': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - require-from-string: ^2.0.2 - typescript: '*' - peerDependenciesMeta: - '@babel/core': - optional: true - '@storybook/builder-webpack4': - optional: true - '@storybook/builder-webpack5': - optional: true - '@storybook/manager-webpack4': - optional: true - '@storybook/manager-webpack5': - optional: true - typescript: - optional: true - - '@storybook/router@6.5.16': - resolution: {integrity: sha512-ZgeP8a5YV/iuKbv31V8DjPxlV4AzorRiR8OuSt/KqaiYXNXlOoQDz/qMmiNcrshrfLpmkzoq7fSo4T8lWo2UwQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@storybook/semver@7.3.2': - resolution: {integrity: sha512-SWeszlsiPsMI0Ps0jVNtH64cI5c0UF3f7KgjVKJoNP30crQ6wUSddY2hsdeczZXEKVJGEn50Q60flcGsQGIcrg==} - engines: {node: '>=10'} - hasBin: true - - '@storybook/source-loader@6.5.16': - resolution: {integrity: sha512-fyVl4jrM/5JLrb48aqXPu7sTsmySQaVGFp1zfeqvPPlJRFMastDrePm5XGPN7Qjv1wsKmpuBvuweFKOT1pru3g==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@storybook/store@6.5.16': - resolution: {integrity: sha512-g+bVL5hmMq/9cM51K04e37OviUPHT0rHHrRm5wj/hrf18Kd9120b3sxdQ5Dc+HZ292yuME0n+cyrQPTYx9Epmw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@storybook/telemetry@6.5.16': - resolution: {integrity: sha512-CWr5Uko1l9jJW88yTXsZTj/3GTabPvw0o7pDPOXPp8JRZiJTxv1JFaFCafhK9UzYbgcRuGfCC8kEWPZims7iKA==} - - '@storybook/theming@6.5.16': - resolution: {integrity: sha512-hNLctkjaYLRdk1+xYTkC1mg4dYz2wSv6SqbLpcKMbkPHTE0ElhddGPHQqB362md/w9emYXNkt1LSMD8Xk9JzVQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@storybook/ui@6.5.16': - resolution: {integrity: sha512-rHn/n12WM8BaXtZ3IApNZCiS+C4Oc5+Lkl4MoctX8V7QSml0SxZBB5hsJ/AiWkgbRxjQpa/L/Nt7/Qw0FjTH/A==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@svgr/babel-plugin-add-jsx-attribute@6.5.1': - resolution: {integrity: sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@svgr/babel-plugin-remove-jsx-attribute@6.5.0': - resolution: {integrity: sha512-8zYdkym7qNyfXpWvu4yq46k41pyNM9SOstoWhKlm+IfdCE1DdnRKeMUPsWIEO/DEkaWxJ8T9esNdG3QwQ93jBA==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@svgr/babel-plugin-remove-jsx-empty-expression@6.5.0': - resolution: {integrity: sha512-NFdxMq3xA42Kb1UbzCVxplUc0iqSyM9X8kopImvFnB+uSDdzIHOdbs1op8ofAvVRtbg4oZiyRl3fTYeKcOe9Iw==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@svgr/babel-plugin-replace-jsx-attribute-value@6.5.1': - resolution: {integrity: sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@svgr/babel-plugin-svg-dynamic-title@6.5.1': - resolution: {integrity: sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@svgr/babel-plugin-svg-em-dimensions@6.5.1': - resolution: {integrity: sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@svgr/babel-plugin-transform-react-native-svg@6.5.1': - resolution: {integrity: sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@svgr/babel-plugin-transform-svg-component@6.5.1': - resolution: {integrity: sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==} - engines: {node: '>=12'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@svgr/babel-preset@6.5.1': - resolution: {integrity: sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==} - engines: {node: '>=10'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@svgr/core@6.5.1': - resolution: {integrity: sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==} - engines: {node: '>=10'} - - '@svgr/hast-util-to-babel-ast@6.5.1': - resolution: {integrity: sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==} - engines: {node: '>=10'} - - '@svgr/plugin-jsx@6.5.1': - resolution: {integrity: sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==} - engines: {node: '>=10'} - peerDependencies: - '@svgr/core': ^6.0.0 - - '@svgr/plugin-svgo@6.5.1': - resolution: {integrity: sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==} - engines: {node: '>=10'} - peerDependencies: - '@svgr/core': '*' - - '@svgr/webpack@6.5.1': - resolution: {integrity: sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==} - engines: {node: '>=10'} - - '@swagger-api/apidom-ast@0.69.3': - resolution: {integrity: sha512-orGw/gihk7RmorxibwalthDS58B7QaEBd31fK+/aFx6QqEO1tEO35F850BiL2B5C8TaK8C2Tey01AZTXCxYmfw==} - - '@swagger-api/apidom-core@0.69.3': - resolution: {integrity: sha512-EIQiJUuT/V9nGkHOYYFP0QNgAW7Y4QwrQzldDzy9ltcHbOKY3TNh/QzYvO0+HvKSv9W7u7WTMH/kaRaSsaZsGw==} - - '@swagger-api/apidom-json-pointer@0.69.3': - resolution: {integrity: sha512-VYXqLY8f2fkaS/d+vVQEMEOEZRXAgGm5tCMx4C7uaU+wC+SKPH/zTh+qElbkaXQr4nfLjbphBsHh31doCyBEjw==} - - '@swagger-api/apidom-ns-api-design-systems@0.69.3': - resolution: {integrity: sha512-oTwIG8LyKnU4/m8BtAOc+X572+nH4gjxITYtw0L8f4a8Iv1b8LHS0KRzG7c/LVUGtMijpv3aBKPV6QvWhjrrtg==} - - '@swagger-api/apidom-ns-asyncapi-2@0.69.3': - resolution: {integrity: sha512-98HgNbZWqPHqf+EyXs/GcAnayA08/mfN7YlXIRRIys+rll4M/1b+ap+BkTnJ+le3Kra7DhIQ8ucQuEJ+Ik1Sxg==} - - '@swagger-api/apidom-ns-json-schema-draft-4@0.69.3': - resolution: {integrity: sha512-/tMeoz1IHEblc3OwWC812NQFLITOnexjGVujG5Wvsr9ZnTkRb+0g7CbXuooujwfcEY+++o2+kCUgy4SBQFIIlQ==} - - '@swagger-api/apidom-ns-json-schema-draft-6@0.69.3': - resolution: {integrity: sha512-B/6zPFYW1xE66Uc/jOdZVZMEe0+444heTMlpGJGejTy6pNRxCTOsv+B63QzctJv410dHPxGeMRZMeff9wQPBDA==} - - '@swagger-api/apidom-ns-json-schema-draft-7@0.69.3': - resolution: {integrity: sha512-EkgPlKPQZ3XBkbxAFh2lXsLcyIwRikARFD3RlupsKjAHVFbH7cImbPxb+MnjacfwgVreMk34OWuXqjnGZ8lG1Q==} - - '@swagger-api/apidom-ns-openapi-3-0@0.69.3': - resolution: {integrity: sha512-iScwP+SzX8SJMrgChZbdS60Ode/zXfesNaDA+HkNBLbfSrri4/C5FTB0gfWOG0gCGPq+1K5dHlgLrEgogfAARw==} - - '@swagger-api/apidom-ns-openapi-3-1@0.69.3': - resolution: {integrity: sha512-J+yIsTBTn7rzfj+vaCXRRdOCrL4kxwnS3P/h4lXb82EZnPU/EbJi+C0LK7O24/vXpeBVRr+OpDfnhpospanMJg==} - - '@swagger-api/apidom-parser-adapter-api-design-systems-json@0.69.3': - resolution: {integrity: sha512-y8xOaSaZVphITajH12T1EHLuZB9kw79DTdQRYoMC+BqZQbsPv3/mLWXS1STQU9oR/PZBA9FJcgAFdThaRgi8UA==} - - '@swagger-api/apidom-parser-adapter-api-design-systems-yaml@0.69.3': - resolution: {integrity: sha512-zMc+Dy7zl7cT8YduaUEpvLkRDVfZp8jZ1v13VjueX/VhsSXK0DW+OX/Mc8CU1Qx6Gg6tUMKxqmILdXZwxCrh6Q==} - - '@swagger-api/apidom-parser-adapter-asyncapi-json-2@0.69.3': - resolution: {integrity: sha512-BbsBxxZxTMX2rKgVKJtqPoAsER0JvCe1pt3NUBLuQssugvpwaqimIsKC65dwspHFGSn0CVdBKA4n/XhZ3aT7tw==} - - '@swagger-api/apidom-parser-adapter-asyncapi-yaml-2@0.69.3': - resolution: {integrity: sha512-lae39qaKrkls+iVzYuc9CUyCbRl80wNK8iBWriSVETv5IwlVS6wywtTxCqtzcpd5K+m9KqXAlSkd+Z2AS9cWuQ==} - - '@swagger-api/apidom-parser-adapter-json@0.69.3': - resolution: {integrity: sha512-Z1CqG9OcV4WVESdQ1D0s5JUa2jeF8hpw4RupMDJ4lRoKTVeIDS5Qb7OOhIGeKpK2DgMep9SN2ULYJdgldPtq/A==} - - '@swagger-api/apidom-parser-adapter-openapi-json-3-0@0.69.3': - resolution: {integrity: sha512-f5Xby5hAGy4VujkV74UA61UkSVRsNzhcBaW0IIapVVepFEclfU7J3dGvfkMIXv5Bg0infGeKddIUZUY61JN88w==} - - '@swagger-api/apidom-parser-adapter-openapi-json-3-1@0.69.3': - resolution: {integrity: sha512-Yq3k/d89Nmf+ePD5EIIkhXNti2Ru5XMqOXDbNQGKHH00e252Q+c+QF2A7Pgdy0xP3oA9OoYTGHLtL0ncmzYB9A==} - - '@swagger-api/apidom-parser-adapter-openapi-yaml-3-0@0.69.3': - resolution: {integrity: sha512-X4Qtg/0n0l2leWBBZC8+7Kj6eP3pqB4WCWlacoWuldz8WBDBuffTBmTV/qe6gKdI4DW6mX5ovxDf+tz2tr0ppQ==} - - '@swagger-api/apidom-parser-adapter-openapi-yaml-3-1@0.69.3': - resolution: {integrity: sha512-ZW/2T92HZT2RQOPW1VOa78VyDYD5wwR9EGNKXBsfMCnl0zVHwhwwkn/GgsYS0VDk56t43ww5DHM976q4ukF6Ew==} - - '@swagger-api/apidom-parser-adapter-yaml-1-2@0.69.3': - resolution: {integrity: sha512-HJ/OiXnVoUshwKrfaHDq4LfKeKxBsa6Bmo8NVdSZiRfeA1Y/fAx9mWW5xSzTADxmc6yA2MevnfIoq7W0NX6SSQ==} - - '@swagger-api/apidom-reference@0.69.3': - resolution: {integrity: sha512-dimoVsW4COR4TUTgOqTnXSZAIdYOepIudWOvca2fGOcXg85eBMS4xJlNHx1095Fm664y5y8DVxIYe1oLu9gjVA==} - - '@swc/helpers@0.4.14': - resolution: {integrity: sha512-4C7nX/dvpzB7za4Ql9K81xK3HPxCpHMgwTZVyf+9JQ6VUbn9jjZVN7/Nkdz/Ugzs2CSjqnL/UPXroiVBVHUWUw==} - - '@szmarczak/http-timer@4.0.6': - resolution: {integrity: sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==} - engines: {node: '>=10'} - - '@tabler/icons-react@2.10.0': - resolution: {integrity: sha512-cWJPhPv7QG89OByVaMc3cs0mY9yIHf4ctoRrjQ4+uXjna2xx0SkwfXAtgt8UhRnp/b47Pr3h59P8Vojw49d2jA==} - peerDependencies: - react: ^16.5.1 || ^17.0.0 || ^18.0.0 - - '@tabler/icons@2.10.0': - resolution: {integrity: sha512-rj9xrHTSw7bPpylx8g9xhhUgO9NYKX1wGnGrMaFS5CQ9KS+jhwhKFqbZaQKhXNhpvI0cLEEW6GaRXdrC3iBs1A==} - - '@tanstack/react-table@8.7.9': - resolution: {integrity: sha512-6MbbQn5AupSOkek1+6IYu+1yZNthAKTRZw9tW92Vi6++iRrD1GbI3lKTjJalf8lEEKOqapPzQPE20nywu0PjCA==} - engines: {node: '>=12'} - peerDependencies: - react: '>=16' - react-dom: '>=16' - - '@tanstack/table-core@8.7.9': - resolution: {integrity: sha512-4RkayPMV1oS2SKDXfQbFoct1w5k+pvGpmX18tCXMofK/VDRdA2hhxfsQlMvsJ4oTX8b0CI4Y3GDKn5T425jBCw==} - engines: {node: '>=12'} - - '@trysound/sax@0.2.0': - resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==} - engines: {node: '>=10.13.0'} - - '@tsconfig/node10@1.0.9': - resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==} - - '@tsconfig/node12@1.0.11': - resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} - - '@tsconfig/node14@1.0.3': - resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} - - '@tsconfig/node16@1.0.3': - resolution: {integrity: sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==} - - '@types/accepts@1.3.5': - resolution: {integrity: sha512-jOdnI/3qTpHABjM5cx1Hc0sKsPoYCp+DP/GJRGtDlPd7fiV9oXGGIcjW/ZOxLIvjGz8MA+uMZI9metHlgqbgwQ==} - - '@types/babel__core@7.20.0': - resolution: {integrity: sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==} - - '@types/babel__generator@7.6.4': - resolution: {integrity: sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==} - - '@types/babel__template@7.4.1': - resolution: {integrity: sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==} - - '@types/babel__traverse@7.18.3': - resolution: {integrity: sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==} - - '@types/bcryptjs@2.4.2': - resolution: {integrity: sha512-LiMQ6EOPob/4yUL66SZzu6Yh77cbzJFYll+ZfaPiPPFswtIlA/Fs1MzdKYA7JApHU49zQTbJGX3PDmCpIdDBRQ==} - - '@types/body-parser@1.19.2': - resolution: {integrity: sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==} - - '@types/cacheable-request@6.0.3': - resolution: {integrity: sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==} - - '@types/connect@3.4.35': - resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==} - - '@types/content-disposition@0.5.5': - resolution: {integrity: sha512-v6LCdKfK6BwcqMo+wYW05rLS12S0ZO0Fl4w1h4aaZMD7bqT3gVUns6FvLJKGZHQmYn3SX55JWGpziwJRwVgutA==} - - '@types/cookie@0.4.1': - resolution: {integrity: sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==} - - '@types/cookies@0.7.7': - resolution: {integrity: sha512-h7BcvPUogWbKCzBR2lY4oqaZbO3jXZksexYJVFvkrFeLgbZjQkU4x8pRq6eg2MHXQhY0McQdqmmsxRWlVAHooA==} - - '@types/cors@2.8.13': - resolution: {integrity: sha512-RG8AStHlUiV5ysZQKq97copd2UmVYw3/pRMLefISZ3S1hK104Cwm7iLQ3fTKx+lsUH2CE8FlLaYeEA2LSeqYUA==} - - '@types/emscripten@1.39.6': - resolution: {integrity: sha512-H90aoynNhhkQP6DRweEjJp5vfUVdIj7tdPLsu7pq89vODD/lcugKfZOsfgwpvM6XUewEp2N5dCg1Uf3Qe55Dcg==} - - '@types/eslint-scope@3.7.4': - resolution: {integrity: sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==} - - '@types/eslint@8.21.1': - resolution: {integrity: sha512-rc9K8ZpVjNcLs8Fp0dkozd5Pt2Apk1glO4Vgz8ix1u6yFByxfqo5Yavpy65o+93TAe24jr7v+eSBtFLvOQtCRQ==} - - '@types/estree@0.0.51': - resolution: {integrity: sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==} - - '@types/express-serve-static-core@4.17.33': - resolution: {integrity: sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==} - - '@types/express@4.17.17': - resolution: {integrity: sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==} - - '@types/glob@7.2.0': - resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==} - - '@types/glob@8.0.1': - resolution: {integrity: sha512-8bVUjXZvJacUFkJXHdyZ9iH1Eaj5V7I8c4NdH5sQJsdXkqT4CA5Dhb4yb4VE/3asyx4L9ayZr1NIhTsWHczmMw==} - - '@types/graceful-fs@4.1.6': - resolution: {integrity: sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==} - - '@types/hast@2.3.4': - resolution: {integrity: sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==} - - '@types/hoist-non-react-statics@3.3.1': - resolution: {integrity: sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==} - - '@types/html-minifier-terser@5.1.2': - resolution: {integrity: sha512-h4lTMgMJctJybDp8CQrxTUiiYmedihHWkjnF/8Pxseu2S6Nlfcy8kwboQ8yejh456rP2yWoEVm1sS/FVsfM48w==} - - '@types/html-minifier-terser@6.1.0': - resolution: {integrity: sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==} - - '@types/http-assert@1.5.3': - resolution: {integrity: sha512-FyAOrDuQmBi8/or3ns4rwPno7/9tJTijVW6aQQjK02+kOQ8zmoNg2XJtAuQhvQcy1ASJq38wirX5//9J1EqoUA==} - - '@types/http-cache-semantics@4.0.1': - resolution: {integrity: sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==} - - '@types/http-errors@2.0.1': - resolution: {integrity: sha512-/K3ds8TRAfBvi5vfjuz8y6+GiAYBZ0x4tXv1Av6CWBWn0IlADc+ZX9pMq7oU0fNQPnBwIZl3rmeLp6SBApbxSQ==} - - '@types/is-function@1.0.1': - resolution: {integrity: sha512-A79HEEiwXTFtfY+Bcbo58M2GRYzCr9itHWzbzHVFNEYCcoU/MMGwYYf721gBrnhpj1s6RGVVha/IgNFnR0Iw/Q==} - - '@types/istanbul-lib-coverage@2.0.4': - resolution: {integrity: sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==} - - '@types/istanbul-lib-report@3.0.0': - resolution: {integrity: sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==} - - '@types/istanbul-reports@3.0.1': - resolution: {integrity: sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==} - - '@types/jest@29.4.0': - resolution: {integrity: sha512-VaywcGQ9tPorCX/Jkkni7RWGFfI11whqzs8dvxF41P17Z+z872thvEvlIbznjPJ02kl1HMX3LmLOonsj2n7HeQ==} - - '@types/json-schema@7.0.11': - resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==} - - '@types/json5@0.0.29': - resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} - - '@types/keygrip@1.0.2': - resolution: {integrity: sha512-GJhpTepz2udxGexqos8wgaBx4I/zWIDPh/KOGEwAqtuGDkOUJu5eFvwmdBX4AmB8Odsr+9pHCQqiAqDL/yKMKw==} - - '@types/keyv@3.1.4': - resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} - - '@types/koa-bodyparser@4.3.10': - resolution: {integrity: sha512-6ae05pjhmrmGhUR8GYD5qr5p9LTEMEGfGXCsK8VaSL+totwigm8+H/7MHW7K4854CMeuwRAubT8qcc/EagaeIA==} - - '@types/koa-compose@3.2.5': - resolution: {integrity: sha512-B8nG/OoE1ORZqCkBVsup/AKcvjdgoHnfi4pZMn5UwAPCbhk/96xyv284eBYW8JlQbQ7zDmnpFr68I/40mFoIBQ==} - - '@types/koa-helmet@6.0.4': - resolution: {integrity: sha512-cSmbgKkUauVqQWPFKXEsJTcuLfkxJggXlbgeiqIeZwTz3aQpyJktrWjhOkpD7Iq5Lcq1G9TTKlj0pFZWIg6EbQ==} - - '@types/koa-logger@3.1.2': - resolution: {integrity: sha512-sioTA1xlKYiIgryANWPRHBkG3XGbWftw9slWADUPC+qvPIY/yRLSrhvX7zkJwMrntub5dPO0GuAoyGGf0yitfQ==} - - '@types/koa-mount@4.0.2': - resolution: {integrity: sha512-XnuGwV8bzw22nv2WqOs5a8wCHR2VgSnLLLuBQPzNTmhyiAvH0O6c+994rQVbMaBuwQJKefUInkvKoKuk+21uew==} - - '@types/koa-qs@2.0.0': - resolution: {integrity: sha512-cBfbUvW70JsU2FCgUCFOoretdvayGzRJ2vEyNQbnZ7vb2pZ/QA+gcNzE6nVxxCcrcnRtGB7tXIRHqHPXS51utA==} - - '@types/koa@2.13.5': - resolution: {integrity: sha512-HSUOdzKz3by4fnqagwthW/1w/yJspTgppyyalPVbgZf8jQWvdIXcVW5h2DGtw4zYntOaeRGx49r1hxoPWrD4aA==} - - '@types/koa__cors@3.3.1': - resolution: {integrity: sha512-aFGYhTFW7651KhmZZ05VG0QZJre7QxBxDj2LF1lf6GA/wSXEfKVAJxiQQWzRV4ZoMzQIO8vJBXKsUcRuvYK9qw==} - - '@types/koa__multer@2.0.4': - resolution: {integrity: sha512-WRkshXhE5rpYFUbbtAjyMhdOOSdbu1XX+2AQlRNM6AZtgxd0/WXMU4lrP7e9tk5HWVTWbx8DOOsVBmfHjSGJ4w==} - - '@types/koa__router@12.0.0': - resolution: {integrity: sha512-S6eHyZyoWCZLNHyy8j0sMW85cPrpByCbGGU2/BO4IzGiI87aHJ92lZh4E9xfsM9DcbCT469/OIqyC0sSJXSIBQ==} - - '@types/lodash@4.14.191': - resolution: {integrity: sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ==} - - '@types/mdast@3.0.10': - resolution: {integrity: sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==} - - '@types/mime@3.0.1': - resolution: {integrity: sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==} - - '@types/minimatch@5.1.2': - resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==} - - '@types/mixpanel-browser@2.38.1': - resolution: {integrity: sha512-XzQbwgiOPsFXUQnjz3vSwcwrvJDbQ35bCiwa/1VXGrHvU1ti9+eqO1GY91DShzkEzKkkEEkxfNshS5dbBZqd7w==} - - '@types/module-alias@2.0.1': - resolution: {integrity: sha512-DN/CCT1HQG6HquBNJdLkvV+4v5l/oEuwOHUPLxI+Eub0NED+lk0YUfba04WGH90EINiUrNgClkNnwGmbICeWMQ==} - - '@types/node-fetch@2.6.2': - resolution: {integrity: sha512-DHqhlq5jeESLy19TYhLakJ07kNumXWjcDdxXsLUMJZ6ue8VZJj4kLPQVE/2mdHh3xZziNF1xppu5lwmS53HR+A==} - - '@types/node-schedule@2.1.0': - resolution: {integrity: sha512-NiTwl8YN3v/1YCKrDFSmCTkVxFDylueEqsOFdgF+vPsm+AlyJKGAo5yzX1FiOxPsZiN6/r8gJitYx2EaSuBmmg==} - - '@types/node@13.13.52': - resolution: {integrity: sha512-s3nugnZumCC//n4moGGe6tkNMyYEdaDBitVjwPxXmR5lnMG5dHePinH2EdxkG3Rh1ghFHHixAG4NJhpJW1rthQ==} - - '@types/node@16.18.12': - resolution: {integrity: sha512-vzLe5NaNMjIE3mcddFVGlAXN1LEWueUsMsOJWaT6wWMJGyljHAWHznqfnKUQWGzu7TLPrGvWdNAsvQYW+C0xtw==} - - '@types/node@18.15.1': - resolution: {integrity: sha512-U2TWca8AeHSmbpi314QBESRk7oPjSZjDsR+c+H4ECC1l+kFgpZf8Ydhv3SJpPy51VyZHHqxlb6mTTqYNNRVAIw==} - - '@types/normalize-package-data@2.4.1': - resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==} - - '@types/npmlog@4.1.4': - resolution: {integrity: sha512-WKG4gTr8przEZBiJ5r3s8ZIAoMXNbOgQ+j/d5O4X3x6kZJRLNvyUJuUK/KoG3+8BaOHPhp2m7WC6JKKeovDSzQ==} - - '@types/parse-json@4.0.0': - resolution: {integrity: sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==} - - '@types/parse5@5.0.3': - resolution: {integrity: sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==} - - '@types/prettier@2.7.2': - resolution: {integrity: sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==} - - '@types/pretty-hrtime@1.0.1': - resolution: {integrity: sha512-VjID5MJb1eGKthz2qUerWT8+R4b9N+CHvGCzg9fn4kWZgaF9AhdYikQio3R7wV8YY1NsQKPaCwKz1Yff+aHNUQ==} - - '@types/prop-types@15.7.5': - resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==} - - '@types/psl@1.1.0': - resolution: {integrity: sha512-HhZnoLAvI2koev3czVPzBNRYvdrzJGLjQbWZhqFmS9Q6a0yumc5qtfSahBGb5g+6qWvA8iiQktqGkwoIXa/BNQ==} - - '@types/qs@6.9.7': - resolution: {integrity: sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==} - - '@types/ramda@0.29.0': - resolution: {integrity: sha512-TY9eKsklU43CmAbFJPKDUyBjleZ4EFAkbJeQRF4e8byGkOw1CjDcwg5EGa0Bgf0Kgs9BE9OU4UzQWnQDHnvMtA==} - - '@types/range-parser@1.2.4': - resolution: {integrity: sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==} - - '@types/react-dom@18.0.11': - resolution: {integrity: sha512-O38bPbI2CWtgw/OoQoY+BRelw7uysmXbWvw3nLWO21H1HSh+GOlqPuXshJfjmpNlKiiSDG9cc1JZAaMmVdcTlw==} - - '@types/react@18.0.28': - resolution: {integrity: sha512-RD0ivG1kEztNBdoAK7lekI9M+azSnitIn85h4iOiaLjaTrMjzslhaqCGaI4IyCJ1RljWiLCEu4jyrLLgqxBTew==} - - '@types/responselike@1.0.0': - resolution: {integrity: sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==} - - '@types/scheduler@0.16.2': - resolution: {integrity: sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==} - - '@types/semver@7.3.13': - resolution: {integrity: sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==} - - '@types/serve-static@1.15.0': - resolution: {integrity: sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==} - - '@types/source-list-map@0.1.2': - resolution: {integrity: sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==} - - '@types/stack-utils@2.0.1': - resolution: {integrity: sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==} - - '@types/tapable@1.0.8': - resolution: {integrity: sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ==} - - '@types/tmp@0.2.3': - resolution: {integrity: sha512-dDZH/tXzwjutnuk4UacGgFRwV+JSLaXL1ikvidfJprkb7L9Nx1njcRHHmi3Dsvt7pgqqTEeucQuOrWHPFgzVHA==} - - '@types/treeify@1.0.0': - resolution: {integrity: sha512-ONpcZAEYlbPx4EtJwfTyCDQJGUpKf4sEcuySdCVjK5Fj/3vHp5HII1fqa1/+qrsLnpYELCQTfVW/awsGJePoIg==} - - '@types/triple-beam@1.3.2': - resolution: {integrity: sha512-txGIh+0eDFzKGC25zORnswy+br1Ha7hj5cMVwKIU7+s0U2AxxJru/jZSMU6OC9MJWP6+pc/hc6ZjyZShpsyY2g==} - - '@types/uglify-js@3.17.1': - resolution: {integrity: sha512-GkewRA4i5oXacU/n4MA9+bLgt5/L3F1mKrYvFGm7r2ouLXhRKjuWwo9XHNnbx6WF3vlGW21S3fCvgqxvxXXc5g==} - - '@types/unist@2.0.6': - resolution: {integrity: sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==} - - '@types/use-sync-external-store@0.0.3': - resolution: {integrity: sha512-EwmlvuaxPNej9+T4v5AuBPJa2x2UOJVdjCtDHgcDqitUeOtjnJKJ+apYjVcAoBEMjKW1VVFGZLUb5+qqa09XFA==} - - '@types/webidl-conversions@7.0.0': - resolution: {integrity: sha512-xTE1E+YF4aWPJJeUzaZI5DRntlkY3+BCVJi0axFptnjGmAoWxkyREIh/XMrfxVLejwQxMCfDXdICo0VLxThrog==} - - '@types/webpack-env@1.18.0': - resolution: {integrity: sha512-56/MAlX5WMsPVbOg7tAxnYvNYMMWr/QJiIp6BxVSW3JJXUVzzOn64qW8TzQyMSqSUFM2+PVI4aUHcHOzIz/1tg==} - - '@types/webpack-sources@3.2.0': - resolution: {integrity: sha512-Ft7YH3lEVRQ6ls8k4Ff1oB4jN6oy/XmU6tQISKdhfh+1mR+viZFphS6WL0IrtDOzvefmJg5a0s7ZQoRXwqTEFg==} - - '@types/webpack@4.41.33': - resolution: {integrity: sha512-PPajH64Ft2vWevkerISMtnZ8rTs4YmRbs+23c402J0INmxDKCrhZNvwZYtzx96gY2wAtXdrK1BS2fiC8MlLr3g==} - - '@types/whatwg-url@8.2.2': - resolution: {integrity: sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==} - - '@types/yargs-parser@21.0.0': - resolution: {integrity: sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==} - - '@types/yargs@15.0.15': - resolution: {integrity: sha512-IziEYMU9XoVj8hWg7k+UJrXALkGFjWJhn5QFEv9q4p+v40oZhSuC135M38st8XPjICL7Ey4TV64ferBGUoJhBg==} - - '@types/yargs@17.0.22': - resolution: {integrity: sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==} - - '@typescript-eslint/eslint-plugin@5.54.1': - resolution: {integrity: sha512-a2RQAkosH3d3ZIV08s3DcL/mcGc2M/UC528VkPULFxR9VnVPT8pBu0IyBAJJmVsCmhVfwQX1v6q+QGnmSe1bew==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - '@typescript-eslint/parser': ^5.0.0 - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/parser@5.54.1': - resolution: {integrity: sha512-8zaIXJp/nG9Ff9vQNh7TI+C3nA6q6iIsGJ4B4L6MhZ7mHnTMR4YP5vp2xydmFXIy8rpyIVbNAG44871LMt6ujg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/scope-manager@5.54.1': - resolution: {integrity: sha512-zWKuGliXxvuxyM71UA/EcPxaviw39dB2504LqAmFDjmkpO8qNLHcmzlh6pbHs1h/7YQ9bnsO8CCcYCSA8sykUg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - '@typescript-eslint/type-utils@5.54.1': - resolution: {integrity: sha512-WREHsTz0GqVYLIbzIZYbmUUr95DKEKIXZNH57W3s+4bVnuF1TKe2jH8ZNH8rO1CeMY3U4j4UQeqPNkHMiGem3g==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: '*' - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/types@5.54.1': - resolution: {integrity: sha512-G9+1vVazrfAfbtmCapJX8jRo2E4MDXxgm/IMOF4oGh3kq7XuK3JRkOg6y2Qu1VsTRmWETyTkWt1wxy7X7/yLkw==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - '@typescript-eslint/typescript-estree@5.54.1': - resolution: {integrity: sha512-bjK5t+S6ffHnVwA0qRPTZrxKSaFYocwFIkZx5k7pvWfsB1I57pO/0M0Skatzzw1sCkjJ83AfGTL0oFIFiDX3bg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/utils@5.54.1': - resolution: {integrity: sha512-IY5dyQM8XD1zfDe5X8jegX6r2EVU5o/WJnLu/znLPWCBF7KNGC+adacXnt5jEYS9JixDcoccI6CvE4RCjHMzCQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - - '@typescript-eslint/visitor-keys@5.54.1': - resolution: {integrity: sha512-q8iSoHTgwCfgcRJ2l2x+xCbu8nBlRAlsQ33k24Adj8eoVBE0f8dUeI+bAa8F84Mv05UGbAx57g2zrRsYIooqQg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - '@usulpro/react-json-view@2.0.1': - resolution: {integrity: sha512-X8Ik4JmZF2Cu7vZTJQwHIbDqNaJEUEGZmdAPxKe4Ed+Xa3dyVTAeA9ea/nTNCzKRTZBIxvJFXvibpglpJ136BA==} - peerDependencies: - react: ^16.0.0 || ^15.5.4 - react-dom: ^16.0.0 || ^15.5.4 - - '@webassemblyjs/ast@1.11.1': - resolution: {integrity: sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==} - - '@webassemblyjs/ast@1.9.0': - resolution: {integrity: sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==} - - '@webassemblyjs/floating-point-hex-parser@1.11.1': - resolution: {integrity: sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==} - - '@webassemblyjs/floating-point-hex-parser@1.9.0': - resolution: {integrity: sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==} - - '@webassemblyjs/helper-api-error@1.11.1': - resolution: {integrity: sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==} - - '@webassemblyjs/helper-api-error@1.9.0': - resolution: {integrity: sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==} - - '@webassemblyjs/helper-buffer@1.11.1': - resolution: {integrity: sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==} - - '@webassemblyjs/helper-buffer@1.9.0': - resolution: {integrity: sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==} - - '@webassemblyjs/helper-code-frame@1.9.0': - resolution: {integrity: sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==} - - '@webassemblyjs/helper-fsm@1.9.0': - resolution: {integrity: sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==} - - '@webassemblyjs/helper-module-context@1.9.0': - resolution: {integrity: sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==} - - '@webassemblyjs/helper-numbers@1.11.1': - resolution: {integrity: sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==} - - '@webassemblyjs/helper-wasm-bytecode@1.11.1': - resolution: {integrity: sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==} - - '@webassemblyjs/helper-wasm-bytecode@1.9.0': - resolution: {integrity: sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==} - - '@webassemblyjs/helper-wasm-section@1.11.1': - resolution: {integrity: sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==} - - '@webassemblyjs/helper-wasm-section@1.9.0': - resolution: {integrity: sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==} - - '@webassemblyjs/ieee754@1.11.1': - resolution: {integrity: sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==} - - '@webassemblyjs/ieee754@1.9.0': - resolution: {integrity: sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==} - - '@webassemblyjs/leb128@1.11.1': - resolution: {integrity: sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==} - - '@webassemblyjs/leb128@1.9.0': - resolution: {integrity: sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==} - - '@webassemblyjs/utf8@1.11.1': - resolution: {integrity: sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==} - - '@webassemblyjs/utf8@1.9.0': - resolution: {integrity: sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==} - - '@webassemblyjs/wasm-edit@1.11.1': - resolution: {integrity: sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==} - - '@webassemblyjs/wasm-edit@1.9.0': - resolution: {integrity: sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==} - - '@webassemblyjs/wasm-gen@1.11.1': - resolution: {integrity: sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==} - - '@webassemblyjs/wasm-gen@1.9.0': - resolution: {integrity: sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==} - - '@webassemblyjs/wasm-opt@1.11.1': - resolution: {integrity: sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==} - - '@webassemblyjs/wasm-opt@1.9.0': - resolution: {integrity: sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==} - - '@webassemblyjs/wasm-parser@1.11.1': - resolution: {integrity: sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==} - - '@webassemblyjs/wasm-parser@1.9.0': - resolution: {integrity: sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==} - - '@webassemblyjs/wast-parser@1.9.0': - resolution: {integrity: sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==} - - '@webassemblyjs/wast-printer@1.11.1': - resolution: {integrity: sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==} - - '@webassemblyjs/wast-printer@1.9.0': - resolution: {integrity: sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==} - - '@xtuc/ieee754@1.2.0': - resolution: {integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==} - - '@xtuc/long@4.2.2': - resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==} - - '@yarnpkg/core@2.4.0': - resolution: {integrity: sha512-FYjcPNTfDfMKLFafQPt49EY28jnYC82Z2S7oMwLPUh144BL8v8YXzb4aCnFyi5nFC5h2kcrJfZh7+Pm/qvCqGw==} - engines: {node: '>=10.19.0'} - - '@yarnpkg/fslib@2.10.1': - resolution: {integrity: sha512-pVMLtOYu87N5y5G2lyPNYTY2JbTco99v7nGFI34Blx01Ct9LmoKVOc91vnLOYIMMljKr1c8xs1O2UamRdMG5Pg==} - engines: {node: '>=12 <14 || 14.2 - 14.9 || >14.10.0'} - - '@yarnpkg/json-proxy@2.1.1': - resolution: {integrity: sha512-meUiCAgCYpXTH1qJfqfz+dX013ohW9p2dKfwIzUYAFutH+lsz1eHPBIk72cuCV84adh9gX6j66ekBKH/bIhCQw==} - engines: {node: '>=12 <14 || 14.2 - 14.9 || >14.10.0'} - - '@yarnpkg/libzip@2.2.4': - resolution: {integrity: sha512-QP0vUP+w0d7Jlo7jqTnlRChSnIB/dOF7nJFLD/gsPvFIHsVWLQQuAiolOcXQUD2hezLD1mQd2qb0yOKqPYRcfQ==} - engines: {node: '>=12 <14 || 14.2 - 14.9 || >14.10.0'} - - '@yarnpkg/lockfile@1.1.0': - resolution: {integrity: sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==} - - '@yarnpkg/parsers@2.5.1': - resolution: {integrity: sha512-KtYN6Ez3x753vPF9rETxNTPnPjeaHY11Exlpqb4eTII7WRlnGiZ5rvvQBau4R20Ik5KBv+vS3EJEcHyCunwzzw==} - engines: {node: '>=12 <14 || 14.2 - 14.9 || >14.10.0'} - - '@yarnpkg/pnp@2.3.2': - resolution: {integrity: sha512-JdwHu1WBCISqJEhIwx6Hbpe8MYsYbkGMxoxolkDiAeJ9IGEe08mQcbX1YmUDV1ozSWlm9JZE90nMylcDsXRFpA==} - engines: {node: '>=10.19.0'} - - '@yarnpkg/shell@2.4.1': - resolution: {integrity: sha512-oNNJkH8ZI5uwu0dMkJf737yMSY1WXn9gp55DqSA5wAOhKvV5DJTXFETxkVgBQhO6Bow9tMGSpvowTMD/oAW/9g==} - engines: {node: '>=10.19.0'} - hasBin: true - - abbrev@1.1.1: - resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} - - abort-controller@3.0.0: - resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} - engines: {node: '>=6.5'} - - accepts@1.3.8: - resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} - engines: {node: '>= 0.6'} - - acorn-import-assertions@1.8.0: - resolution: {integrity: sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==} - peerDependencies: - acorn: ^8 - - acorn-jsx@5.3.2: - resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} - peerDependencies: - acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - - acorn-walk@7.2.0: - resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==} - engines: {node: '>=0.4.0'} - - acorn-walk@8.2.0: - resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==} - engines: {node: '>=0.4.0'} - - acorn@6.4.2: - resolution: {integrity: sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==} - engines: {node: '>=0.4.0'} - hasBin: true - - acorn@7.4.1: - resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==} - engines: {node: '>=0.4.0'} - hasBin: true - - acorn@8.8.2: - resolution: {integrity: sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==} - engines: {node: '>=0.4.0'} - hasBin: true - - address@1.2.2: - resolution: {integrity: sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==} - engines: {node: '>= 10.0.0'} - - agent-base@6.0.2: - resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} - engines: {node: '>= 6.0.0'} - - aggregate-error@3.1.0: - resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} - engines: {node: '>=8'} - - airbnb-js-shims@2.2.1: - resolution: {integrity: sha512-wJNXPH66U2xjgo1Zwyjf9EydvJ2Si94+vSdk6EERcBfB2VZkeltpqIats0cqIZMLCXP3zcyaUKGYQeIBT6XjsQ==} - - ajv-errors@1.0.1: - resolution: {integrity: sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==} - peerDependencies: - ajv: '>=5.0.0' - - ajv-formats@2.1.1: - resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==} - peerDependencies: - ajv: ^8.0.0 - peerDependenciesMeta: - ajv: - optional: true - - ajv-keywords@3.5.2: - resolution: {integrity: sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==} - peerDependencies: - ajv: ^6.9.1 - - ajv-keywords@5.1.0: - resolution: {integrity: sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==} - peerDependencies: - ajv: ^8.8.2 - - ajv@6.12.6: - resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} - - ajv@8.12.0: - resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==} - - ansi-align@3.0.1: - resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} - - ansi-colors@3.2.4: - resolution: {integrity: sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==} - engines: {node: '>=6'} - - ansi-colors@4.1.3: - resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} - engines: {node: '>=6'} - - ansi-escapes@4.3.2: - resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} - engines: {node: '>=8'} - - ansi-html-community@0.0.8: - resolution: {integrity: sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==} - engines: {'0': node >= 0.8.0} - hasBin: true - - ansi-regex@2.1.1: - resolution: {integrity: sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==} - engines: {node: '>=0.10.0'} - - ansi-regex@5.0.1: - resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} - engines: {node: '>=8'} - - ansi-regex@6.0.1: - resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} - engines: {node: '>=12'} - - ansi-styles@3.2.1: - resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} - engines: {node: '>=4'} - - ansi-styles@4.3.0: - resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} - engines: {node: '>=8'} - - ansi-styles@5.2.0: - resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} - engines: {node: '>=10'} - - ansi-styles@6.2.1: - resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} - engines: {node: '>=12'} - - ansi-to-html@0.6.15: - resolution: {integrity: sha512-28ijx2aHJGdzbs+O5SNQF65r6rrKYnkuwTYm8lZlChuoJ9P1vVzIpWO20sQTqTPDXYp6NFwk326vApTtLVFXpQ==} - engines: {node: '>=8.0.0'} - hasBin: true - - any-promise@1.3.0: - resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} - - anymatch@2.0.0: - resolution: {integrity: sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==} - - anymatch@3.1.3: - resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} - engines: {node: '>= 8'} - - app-root-dir@1.0.2: - resolution: {integrity: sha512-jlpIfsOoNoafl92Sz//64uQHGSyMrD2vYG5d8o2a4qGvyNCvXur7bzIsWtAC/6flI2RYAp3kv8rsfBtaLm7w0g==} - - append-field@1.0.0: - resolution: {integrity: sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw==} - - aproba@1.2.0: - resolution: {integrity: sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==} - - aproba@2.0.0: - resolution: {integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==} - - are-we-there-yet@1.1.7: - resolution: {integrity: sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==} - - are-we-there-yet@2.0.0: - resolution: {integrity: sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==} - engines: {node: '>=10'} - - arg@4.1.3: - resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} - - argparse@1.0.10: - resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} - - argparse@2.0.1: - resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} - - aria-hidden@1.2.3: - resolution: {integrity: sha512-xcLxITLe2HYa1cnYnwCjkOO1PqUHQpozB8x9AR0OgWN2woOBi5kSDVxKfd0b7sb1hw5qFeJhXm9H1nu3xSfLeQ==} - engines: {node: '>=10'} - - aria-query@5.1.3: - resolution: {integrity: sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==} - - arr-diff@4.0.0: - resolution: {integrity: sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==} - engines: {node: '>=0.10.0'} - - arr-flatten@1.1.0: - resolution: {integrity: sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==} - engines: {node: '>=0.10.0'} - - arr-union@3.1.0: - resolution: {integrity: sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==} - engines: {node: '>=0.10.0'} - - array-find-index@1.0.2: - resolution: {integrity: sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==} - engines: {node: '>=0.10.0'} - - array-flatten@1.1.1: - resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==} - - array-includes@3.1.6: - resolution: {integrity: sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==} - engines: {node: '>= 0.4'} - - array-union@1.0.2: - resolution: {integrity: sha512-Dxr6QJj/RdU/hCaBjOfxW+q6lyuVE6JFWIrAUpuOOhoJJoQ99cUn3igRaHVB5P9WrgFVN0FfArM3x0cueOU8ng==} - engines: {node: '>=0.10.0'} - - array-union@2.1.0: - resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} - engines: {node: '>=8'} - - array-uniq@1.0.3: - resolution: {integrity: sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==} - engines: {node: '>=0.10.0'} - - array-unique@0.3.2: - resolution: {integrity: sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==} - engines: {node: '>=0.10.0'} - - array.prototype.flat@1.3.1: - resolution: {integrity: sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==} - engines: {node: '>= 0.4'} - - array.prototype.flatmap@1.3.1: - resolution: {integrity: sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==} - engines: {node: '>= 0.4'} - - array.prototype.map@1.0.5: - resolution: {integrity: sha512-gfaKntvwqYIuC7mLLyv2wzZIJqrRhn5PZ9EfFejSx6a78sV7iDsGpG9P+3oUPtm1Rerqm6nrKS4FYuTIvWfo3g==} - engines: {node: '>= 0.4'} - - array.prototype.reduce@1.0.5: - resolution: {integrity: sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q==} - engines: {node: '>= 0.4'} - - array.prototype.tosorted@1.1.1: - resolution: {integrity: sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==} - - arrify@2.0.1: - resolution: {integrity: sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==} - engines: {node: '>=8'} - - asap@2.0.6: - resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==} - - asn1.js@5.4.1: - resolution: {integrity: sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==} - - assert@1.5.0: - resolution: {integrity: sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==} - - assign-symbols@1.0.0: - resolution: {integrity: sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==} - engines: {node: '>=0.10.0'} - - ast-types-flow@0.0.7: - resolution: {integrity: sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==} - - ast-types@0.14.2: - resolution: {integrity: sha512-O0yuUDnZeQDL+ncNGlJ78BiO4jnYI3bvMsD5prT0/nsgijG/LpNBIr63gTjVTNsiGkgQhiyCShTgxt8oXOrklA==} - engines: {node: '>=4'} - - astral-regex@2.0.0: - resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} - engines: {node: '>=8'} - - async-each@1.0.6: - resolution: {integrity: sha512-c646jH1avxr+aVpndVMeAfYw7wAa6idufrlN3LPA4PmKS0QEGp6PIC9nwz0WQkkvBGAMEki3pFdtxaF39J9vvg==} - - async-mutex@0.3.2: - resolution: {integrity: sha512-HuTK7E7MT7jZEh1P9GtRW9+aTWiDWWi9InbZ5hjxrnRa39KS4BW04+xLBhYNS2aXhHUIKZSw3gj4Pn1pj+qGAA==} - - async@3.2.4: - resolution: {integrity: sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==} - - asynckit@0.4.0: - resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} - - at-least-node@1.0.0: - resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==} - engines: {node: '>= 4.0.0'} - - atob@2.1.2: - resolution: {integrity: sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==} - engines: {node: '>= 4.5.0'} - hasBin: true - - attr-accept@2.2.2: - resolution: {integrity: sha512-7prDjvt9HmqiZ0cl5CRjtS84sEyhsHP2coDkaZKRKVfCDo9s7iw7ChVmar78Gu9pC4SoR/28wFu/G5JJhTnqEg==} - engines: {node: '>=4'} - - autolinker@3.16.2: - resolution: {integrity: sha512-JiYl7j2Z19F9NdTmirENSUUIIL/9MytEWtmzhfmsKPCp9E+G35Y0UNCMoM9tFigxT59qSc8Ml2dlZXOCVTYwuA==} - - autoprefixer@9.8.8: - resolution: {integrity: sha512-eM9d/swFopRt5gdJ7jrpCwgvEMIayITpojhkkSMRsFHYuH5bkSQ4p/9qTEHtmNudUZh22Tehu7I6CxAW0IXTKA==} - hasBin: true - - available-typed-arrays@1.0.5: - resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} - engines: {node: '>= 0.4'} - - axe-core@4.6.3: - resolution: {integrity: sha512-/BQzOX780JhsxDnPpH4ZiyrJAzcd8AfzFPkv+89veFSr1rcMjuq2JDCwypKaPeB6ljHp9KjXhPpjgCvQlWYuqg==} - engines: {node: '>=4'} - - axios@0.26.1: - resolution: {integrity: sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==} - - axios@1.3.4: - resolution: {integrity: sha512-toYm+Bsyl6VC5wSkfkbbNB6ROv7KY93PEBBL6xyDczaIHasAiv4wPqQ/c4RjoQzipxRD2W5g21cOqQulZ7rHwQ==} - - axios@1.3.6: - resolution: {integrity: sha512-PEcdkk7JcdPiMDkvM4K6ZBRYq9keuVJsToxm2zQIM70Qqo2WHTdJZMXcG9X+RmRp2VPNUQC8W1RAGbgt6b1yMg==} - - axobject-query@3.1.1: - resolution: {integrity: sha512-goKlv8DZrK9hUh975fnHzhNIO4jUnFCfv/dszV5VwUGDFjI6vQ2VwoyjYjYNEbBE8AH87TduWP5uyDR1D+Iteg==} - - babel-jest@29.5.0: - resolution: {integrity: sha512-mA4eCDh5mSo2EcA9xQjVTpmbbNk32Zb3Q3QFQsNhaK56Q+yoXowzFodLux30HRgyOho5rsQ6B0P9QpMkvvnJ0Q==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - peerDependencies: - '@babel/core': ^7.8.0 - - babel-loader@8.2.5: - resolution: {integrity: sha512-OSiFfH89LrEMiWd4pLNqGz4CwJDtbs2ZVc+iGu2HrkRfPxId9F2anQj38IxWpmRfsUY0aBZYi1EFcd3mhtRMLQ==} - engines: {node: '>= 8.9'} - peerDependencies: - '@babel/core': ^7.0.0 - webpack: '>=2' - - babel-loader@9.1.2: - resolution: {integrity: sha512-mN14niXW43tddohGl8HPu5yfQq70iUThvFL/4QzESA7GcZoC0eVOhvWdQ8+3UlSjaDE9MVtsW9mxDY07W7VpVA==} - engines: {node: '>= 14.15.0'} - peerDependencies: - '@babel/core': ^7.12.0 - webpack: '>=5' - - babel-plugin-add-react-displayname@0.0.5: - resolution: {integrity: sha512-LY3+Y0XVDYcShHHorshrDbt4KFWL4bSeniCtl4SYZbask+Syngk1uMPCeN9+nSiZo6zX5s0RTq/J9Pnaaf/KHw==} - - babel-plugin-apply-mdx-type-prop@1.6.22: - resolution: {integrity: sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ==} - peerDependencies: - '@babel/core': ^7.11.6 - - babel-plugin-extract-import-names@1.6.22: - resolution: {integrity: sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==} - - babel-plugin-istanbul@6.1.1: - resolution: {integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==} - engines: {node: '>=8'} - - babel-plugin-jest-hoist@29.5.0: - resolution: {integrity: sha512-zSuuuAlTMT4mzLj2nPnUm6fsE6270vdOfnpbJ+RmruU75UhLFvL0N2NgI7xpeS7NaB6hGqmd5pVpGTDYvi4Q3w==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - babel-plugin-macros@3.1.0: - resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==} - engines: {node: '>=10', npm: '>=6'} - - babel-plugin-named-exports-order@0.0.2: - resolution: {integrity: sha512-OgOYHOLoRK+/mvXU9imKHlG6GkPLYrUCvFXG/CM93R/aNNO8pOOF4aS+S8CCHMDQoNSeiOYEZb/G6RwL95Jktw==} - - babel-plugin-polyfill-corejs2@0.3.3: - resolution: {integrity: sha512-8hOdmFYFSZhqg2C/JgLUQ+t52o5nirNwaWM2B9LWteozwIvM14VSwdsCAUET10qT+kmySAlseadmfeeSWFCy+Q==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - babel-plugin-polyfill-corejs3@0.1.7: - resolution: {integrity: sha512-u+gbS9bbPhZWEeyy1oR/YaaSpod/KDT07arZHb80aTpl8H5ZBq+uN1nN9/xtX7jQyfLdPfoqI4Rue/MQSWJquw==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - babel-plugin-polyfill-corejs3@0.6.0: - resolution: {integrity: sha512-+eHqR6OPcBhJOGgsIar7xoAB1GcSwVUA3XjAd7HJNzOXT4wv6/H7KIdA/Nc60cvUlDbKApmqNvD1B1bzOt4nyA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - babel-plugin-polyfill-regenerator@0.4.1: - resolution: {integrity: sha512-NtQGmyQDXjQqQ+IzRkBVwEOz9lQ4zxAQZgoAYEtU9dJjnl1Oc98qnN7jcp+bE7O7aYzVpavXE3/VKXNzUbh7aw==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - babel-plugin-react-docgen@4.2.1: - resolution: {integrity: sha512-UQ0NmGHj/HAqi5Bew8WvNfCk8wSsmdgNd8ZdMjBCICtyCJCq9LiqgqvjCYe570/Wg7AQArSq1VQ60Dd/CHN7mQ==} - - babel-preset-current-node-syntax@1.0.1: - resolution: {integrity: sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==} - peerDependencies: - '@babel/core': ^7.0.0 - - babel-preset-jest@29.5.0: - resolution: {integrity: sha512-JOMloxOqdiBSxMAzjRaH023/vvcaSaec49zvg+2LmNsktC7ei39LTJGw02J+9uUtTZUq6xbLyJ4dxe9sSmIuAg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - peerDependencies: - '@babel/core': ^7.0.0 - - bail@1.0.5: - resolution: {integrity: sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==} - - balanced-match@1.0.2: - resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - - base16@1.0.0: - resolution: {integrity: sha512-pNdYkNPiJUnEhnfXV56+sQy8+AaPcG3POZAUnwr4EeqCUZFz4u2PePbo3e5Gj4ziYPCWGUZT9RHisvJKnwFuBQ==} - - base64-js@1.5.1: - resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} - - base64id@2.0.0: - resolution: {integrity: sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==} - engines: {node: ^4.5.0 || >= 5.9} - - base@0.11.2: - resolution: {integrity: sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==} - engines: {node: '>=0.10.0'} - - bcryptjs@2.4.3: - resolution: {integrity: sha512-V/Hy/X9Vt7f3BbPJEi8BdVFMByHi+jNXrYkW3huaybV/kQ0KJg0Y6PkEMbn+zeT+i+SiKZ/HMqJGIIt4LZDqNQ==} - - better-opn@2.1.1: - resolution: {integrity: sha512-kIPXZS5qwyKiX/HcRvDYfmBQUa8XP17I0mYZZ0y4UhpYOSvtsLHDYqmomS+Mj20aDvD3knEiQ0ecQy2nhio3yA==} - engines: {node: '>8.0.0'} - - big-integer@1.6.51: - resolution: {integrity: sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==} - engines: {node: '>=0.6'} - - big.js@5.2.2: - resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==} - - bignumber.js@9.1.1: - resolution: {integrity: sha512-pHm4LsMJ6lzgNGVfZHjMoO8sdoRhOzOH4MLmY65Jg70bpxCKu5iOHNJyfF6OyvYw7t8Fpf35RuzUyqnQsj8Vig==} - - binary-extensions@1.13.1: - resolution: {integrity: sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==} - engines: {node: '>=0.10.0'} - - binary-extensions@2.2.0: - resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} - engines: {node: '>=8'} - - bindings@1.5.0: - resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} - - binjumper@0.1.4: - resolution: {integrity: sha512-Gdxhj+U295tIM6cO4bJO1jsvSjBVHNpj2o/OwW7pqDEtaqF6KdOxjtbo93jMMKAkP7+u09+bV8DhSqjIv4qR3w==} - engines: {node: '>=10.12.0'} - - bl@4.1.0: - resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} - - bluebird@3.7.2: - resolution: {integrity: sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==} - - bn.js@4.12.0: - resolution: {integrity: sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==} - - bn.js@5.2.1: - resolution: {integrity: sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==} - - body-parser@1.20.1: - resolution: {integrity: sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==} - engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} - - boolbase@1.0.0: - resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} - - bowser@2.11.0: - resolution: {integrity: sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==} - - boxen@5.1.2: - resolution: {integrity: sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==} - engines: {node: '>=10'} - - bplist-parser@0.1.1: - resolution: {integrity: sha512-2AEM0FXy8ZxVLBuqX0hqt1gDwcnz2zygEkQ6zaD5Wko/sB9paUNwlpawrFtKeHUAQUOzjVy9AO4oeonqIHKA9Q==} - - brace-expansion@1.1.11: - resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} - - brace-expansion@2.0.1: - resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} - - braces@2.3.2: - resolution: {integrity: sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==} - engines: {node: '>=0.10.0'} - - braces@3.0.2: - resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} - engines: {node: '>=8'} - - broadcast-channel@3.7.0: - resolution: {integrity: sha512-cIAKJXAxGJceNZGTZSBzMxzyOn72cVgPnKx4dc6LRjQgbaJUQqhy5rzL3zbMxkMWsGKkv2hSFkPRMEXfoMZ2Mg==} - - brorand@1.1.0: - resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==} - - browser-assert@1.2.1: - resolution: {integrity: sha512-nfulgvOR6S4gt9UKCeGJOuSGBPGiFT6oQ/2UBnvTY/5aQ1PnksW72fhZkM30DzoRRv2WpwZf1vHHEr3mtuXIWQ==} - - browserify-aes@1.2.0: - resolution: {integrity: sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==} - - browserify-cipher@1.0.1: - resolution: {integrity: sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==} - - browserify-des@1.0.2: - resolution: {integrity: sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==} - - browserify-rsa@4.1.0: - resolution: {integrity: sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==} - - browserify-sign@4.2.1: - resolution: {integrity: sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==} - - browserify-zlib@0.2.0: - resolution: {integrity: sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==} - - browserslist@4.21.5: - resolution: {integrity: sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - - bs-logger@0.2.6: - resolution: {integrity: sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==} - engines: {node: '>= 6'} - - bser@2.1.1: - resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==} - - bson@4.7.2: - resolution: {integrity: sha512-Ry9wCtIZ5kGqkJoi6aD8KjxFZEx78guTQDnpXWiNthsxzrxAK/i8E6pCHAIZTbaEFWcOCvbecMukfK7XUvyLpQ==} - engines: {node: '>=6.9.0'} - - buffer-crc32@0.2.13: - resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==} - - buffer-equal-constant-time@1.0.1: - resolution: {integrity: sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==} - - buffer-from@0.1.2: - resolution: {integrity: sha512-RiWIenusJsmI2KcvqQABB83tLxCByE3upSP8QU3rJDMVFGPWLvPQJt/O1Su9moRWeH7d+Q2HYb68f6+v+tw2vg==} - - buffer-from@1.1.2: - resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} - - buffer-xor@1.0.3: - resolution: {integrity: sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==} - - buffer@4.9.2: - resolution: {integrity: sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==} - - buffer@5.6.0: - resolution: {integrity: sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==} - - buffer@5.7.1: - resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} - - builtin-status-codes@3.0.0: - resolution: {integrity: sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==} - - busboy@1.6.0: - resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} - engines: {node: '>=10.16.0'} - - bytes@3.0.0: - resolution: {integrity: sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==} - engines: {node: '>= 0.8'} - - bytes@3.1.2: - resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} - engines: {node: '>= 0.8'} - - c8@7.13.0: - resolution: {integrity: sha512-/NL4hQTv1gBL6J6ei80zu3IiTrmePDKXKXOTLpHvcIWZTVYQlDhVWjjWvkhICylE8EwwnMVzDZugCvdx0/DIIA==} - engines: {node: '>=10.12.0'} - hasBin: true - - cacache@12.0.4: - resolution: {integrity: sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==} - - cacache@15.3.0: - resolution: {integrity: sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==} - engines: {node: '>= 10'} - - cache-base@1.0.1: - resolution: {integrity: sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==} - engines: {node: '>=0.10.0'} - - cache-content-type@1.0.1: - resolution: {integrity: sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA==} - engines: {node: '>= 6.0.0'} - - cacheable-lookup@5.0.4: - resolution: {integrity: sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==} - engines: {node: '>=10.6.0'} - - cacheable-request@7.0.2: - resolution: {integrity: sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==} - engines: {node: '>=8'} - - call-bind@1.0.2: - resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} - - call-me-maybe@1.0.2: - resolution: {integrity: sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==} - - callsites@3.1.0: - resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} - engines: {node: '>=6'} - - camel-case@3.0.0: - resolution: {integrity: sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w==} - - camel-case@4.1.2: - resolution: {integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==} - - camelcase-css@2.0.1: - resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} - engines: {node: '>= 6'} - - camelcase-keys@2.1.0: - resolution: {integrity: sha512-bA/Z/DERHKqoEOrp+qeGKw1QlvEQkGZSc0XaY6VnTxZr+Kv1G5zFwttpjv8qxZ/sBPT4nthwZaAcsAZTJlSKXQ==} - engines: {node: '>=0.10.0'} - - camelcase@2.1.1: - resolution: {integrity: sha512-DLIsRzJVBQu72meAKPkWQOLcujdXT32hwdfnkI1frSiSRMK1MofjKHf+MEx0SB6fjEFXL8fBDv1dKymBlOp4Qw==} - engines: {node: '>=0.10.0'} - - camelcase@5.3.1: - resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==} - engines: {node: '>=6'} - - camelcase@6.3.0: - resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} - engines: {node: '>=10'} - - caniuse-lite@1.0.30001457: - resolution: {integrity: sha512-SDIV6bgE1aVbK6XyxdURbUE89zY7+k1BBBaOwYwkNCglXlel/E7mELiHC64HQ+W0xSKlqWhV9Wh7iHxUjMs4fA==} - - capture-exit@2.0.0: - resolution: {integrity: sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==} - engines: {node: 6.* || 8.* || >= 10.*} - - case-sensitive-paths-webpack-plugin@2.4.0: - resolution: {integrity: sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw==} - engines: {node: '>=4'} - - ccount@1.1.0: - resolution: {integrity: sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==} - - chalk@2.4.2: - resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} - engines: {node: '>=4'} - - chalk@3.0.0: - resolution: {integrity: sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==} - engines: {node: '>=8'} - - chalk@4.1.2: - resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} - engines: {node: '>=10'} - - chalk@5.2.0: - resolution: {integrity: sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==} - engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} - - char-regex@1.0.2: - resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==} - engines: {node: '>=10'} - - character-entities-legacy@1.1.4: - resolution: {integrity: sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==} - - character-entities@1.2.4: - resolution: {integrity: sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==} - - character-reference-invalid@1.1.4: - resolution: {integrity: sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==} - - cheerio-select@1.6.0: - resolution: {integrity: sha512-eq0GdBvxVFbqWgmCm7M3XGs1I8oLy/nExUnh6oLqmBditPO9AqQJrkslDpMun/hZ0yyTs8L0m85OHp4ho6Qm9g==} - - cheerio@1.0.0-rc.10: - resolution: {integrity: sha512-g0J0q/O6mW8z5zxQ3A8E8J1hUgp4SMOvEoW/x84OwyHKe/Zccz83PVT4y5Crcr530FV6NgmKI1qvGTKVl9XXVw==} - engines: {node: '>= 6'} - - chokidar@2.1.8: - resolution: {integrity: sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==} - deprecated: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies - - chokidar@3.5.3: - resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} - engines: {node: '>= 8.10.0'} - - chownr@1.1.4: - resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} - - chownr@2.0.0: - resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} - engines: {node: '>=10'} - - chromatic@6.17.1: - resolution: {integrity: sha512-CKCIV+QiNsQUHaZu2uQkm9A140Fd9sPgf61IsbJCwPspb97tHxs6hbqzf1QjaJJL37G6UqR3u12bzPld7JB96w==} - hasBin: true - - chrome-trace-event@1.0.3: - resolution: {integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==} - engines: {node: '>=6.0'} - - ci-info@2.0.0: - resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==} - - ci-info@3.8.0: - resolution: {integrity: sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==} - engines: {node: '>=8'} - - cipher-base@1.0.4: - resolution: {integrity: sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==} - - cjs-module-lexer@1.2.2: - resolution: {integrity: sha512-cOU9usZw8/dXIXKtwa8pM0OTJQuJkxMN6w30csNRUerHfeQ5R6U3kkU/FtJeIf3M202OHfY2U8ccInBG7/xogA==} - - class-utils@0.3.6: - resolution: {integrity: sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==} - engines: {node: '>=0.10.0'} - - classnames@2.3.2: - resolution: {integrity: sha512-CSbhY4cFEJRe6/GQzIk5qXZ4Jeg5pcsP7b5peFSDpffpe1cqjASH/n9UTjBwOp6XpMSTwQ8Za2K5V02ueA7Tmw==} - - clean-css@4.2.4: - resolution: {integrity: sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==} - engines: {node: '>= 4.0'} - - clean-css@5.3.2: - resolution: {integrity: sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==} - engines: {node: '>= 10.0'} - - clean-stack@2.2.0: - resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} - engines: {node: '>=6'} - - cli-boxes@2.2.1: - resolution: {integrity: sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==} - engines: {node: '>=6'} - - cli-cursor@3.1.0: - resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} - engines: {node: '>=8'} - - cli-table3@0.6.3: - resolution: {integrity: sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==} - engines: {node: 10.* || >= 12.*} - - cli-truncate@2.1.0: - resolution: {integrity: sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==} - engines: {node: '>=8'} - - cli-truncate@3.1.0: - resolution: {integrity: sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - client-only@0.0.1: - resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} - - clipanion@2.6.2: - resolution: {integrity: sha512-0tOHJNMF9+4R3qcbBL+4IxLErpaYSYvzs10aXuECDbZdJOuJHdagJMAqvLdeaUQTI/o2uSCDRpet6ywDiKOAYw==} - - cliui@7.0.4: - resolution: {integrity: sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==} - - cliui@8.0.1: - resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} - engines: {node: '>=12'} - - clone-deep@4.0.1: - resolution: {integrity: sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==} - engines: {node: '>=6'} - - clone-response@1.0.3: - resolution: {integrity: sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==} - - clsx@1.1.1: - resolution: {integrity: sha512-6/bPho624p3S2pMyvP5kKBPXnI3ufHLObBFCfgx+LkeR5lg2XYy2hqZqUf45ypD8COn2bhgGJSUE+l5dhNBieA==} - engines: {node: '>=6'} - - cluster-key-slot@1.1.2: - resolution: {integrity: sha512-RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA==} - engines: {node: '>=0.10.0'} - - co-body@6.1.0: - resolution: {integrity: sha512-m7pOT6CdLN7FuXUcpuz/8lfQ/L77x8SchHCF4G0RBTJO20Wzmhn5Sp4/5WsKy8OSpifBSUrmg83qEqaDHdyFuQ==} - - co@4.6.0: - resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==} - engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'} - - code-point-at@1.1.0: - resolution: {integrity: sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==} - engines: {node: '>=0.10.0'} - - collapse-white-space@1.0.6: - resolution: {integrity: sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==} - - collect-v8-coverage@1.0.1: - resolution: {integrity: sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==} - - collection-visit@1.0.0: - resolution: {integrity: sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==} - engines: {node: '>=0.10.0'} - - color-convert@1.9.3: - resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} - - color-convert@2.0.1: - resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} - engines: {node: '>=7.0.0'} - - color-name-list@4.15.0: - resolution: {integrity: sha512-4P3pFob8w6LNnku94oIacj8suCfhOLmY+25bmfoOwqFtuhLTD4Oux+/aUBdZLcvLK3fHrBe6XrzAU2IbwoWnQA==} - engines: {node: '>=8', npm: '>=5'} - - color-name@1.1.3: - resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} - - color-name@1.1.4: - resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} - - color-parse@1.4.2: - resolution: {integrity: sha512-RI7s49/8yqDj3fECFZjUI1Yi0z/Gq1py43oNJivAIIDSyJiOZLfYCRQEgn8HEVAj++PcRe8AnL2XF0fRJ3BTnA==} - - color-rgba@2.4.0: - resolution: {integrity: sha512-Nti4qbzr/z2LbUWySr7H9dk3Rl7gZt7ihHAxlgT4Ho90EXWkjtkL1avTleu9yeGuqrt/chxTB6GKK8nZZ6V0+Q==} - - color-space@2.0.0: - resolution: {integrity: sha512-Bu8P/usGNuVWushjxcuaGSkhT+L2KX0cvgMGMTF0KJ7lFeqonhsntT68d6Yu3uwZzCmbF7KTB9EV67AGcUXhJw==} - - color-string@1.9.1: - resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} - - color-stringify@1.2.1: - resolution: {integrity: sha512-DMEEe6iVahjHKTYCywfkLRArls2WopRc3e6ucR/HEL5eeF2v708bc5MumOn2VWblTyJrCIBpjRSzTbmNtlMcxA==} - - color-support@1.1.3: - resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==} - hasBin: true - - color@3.2.1: - resolution: {integrity: sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==} - - colorette@1.4.0: - resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==} - - colorette@2.0.19: - resolution: {integrity: sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==} - - colorspace@1.1.4: - resolution: {integrity: sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==} - - combined-stream@1.0.8: - resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} - engines: {node: '>= 0.8'} - - comma-separated-tokens@1.0.8: - resolution: {integrity: sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==} - - commander@10.0.0: - resolution: {integrity: sha512-zS5PnTI22FIRM6ylNW8G4Ap0IEOyk62fhLSD0+uHRT9McRCLGpkVNvao4bjimpK/GShynyQkFFxHhwMcETmduA==} - engines: {node: '>=14'} - - commander@2.20.3: - resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} - - commander@4.1.1: - resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} - engines: {node: '>= 6'} - - commander@5.1.0: - resolution: {integrity: sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==} - engines: {node: '>= 6'} - - commander@6.2.1: - resolution: {integrity: sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==} - engines: {node: '>= 6'} - - commander@7.2.0: - resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} - engines: {node: '>= 10'} - - commander@8.3.0: - resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} - engines: {node: '>= 12'} - - common-path-prefix@3.0.0: - resolution: {integrity: sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==} - - commondir@1.0.1: - resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} - - component-emitter@1.3.0: - resolution: {integrity: sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==} - - compressible@2.0.18: - resolution: {integrity: sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==} - engines: {node: '>= 0.6'} - - compression@1.7.4: - resolution: {integrity: sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==} - engines: {node: '>= 0.8.0'} - - concat-map@0.0.1: - resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} - - concat-stream@1.6.2: - resolution: {integrity: sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==} - engines: {'0': node >= 0.8} - - config-chain@1.1.13: - resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==} - - confusing-browser-globals@1.0.11: - resolution: {integrity: sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==} - - console-browserify@1.2.0: - resolution: {integrity: sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==} - - console-control-strings@1.1.0: - resolution: {integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==} - - constants-browserify@1.0.0: - resolution: {integrity: sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==} - - content-disposition@0.5.4: - resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} - engines: {node: '>= 0.6'} - - content-type@1.0.5: - resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} - engines: {node: '>= 0.6'} - - convert-source-map@1.9.0: - resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} - - convert-source-map@2.0.0: - resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - - cookie-signature@1.0.6: - resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==} - - cookie@0.4.2: - resolution: {integrity: sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==} - engines: {node: '>= 0.6'} - - cookie@0.5.0: - resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==} - engines: {node: '>= 0.6'} - - cookies@0.8.0: - resolution: {integrity: sha512-8aPsApQfebXnuI+537McwYsDtjVxGm8gTIzQI3FDW6t5t/DAhERxtnbEPN/8RX+uZthoz4eCOgloXaE5cYyNow==} - engines: {node: '>= 0.8'} - - copy-concurrently@1.0.5: - resolution: {integrity: sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==} - - copy-descriptor@0.1.1: - resolution: {integrity: sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==} - engines: {node: '>=0.10.0'} - - copy-to-clipboard@3.3.3: - resolution: {integrity: sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==} - - copy-to@2.0.1: - resolution: {integrity: sha512-3DdaFaU/Zf1AnpLiFDeNCD4TOWe3Zl2RZaTzUvWiIk5ERzcCodOE20Vqq4fzCbNoHURFHT4/us/Lfq+S2zyY4w==} - - core-js-compat@3.28.0: - resolution: {integrity: sha512-myzPgE7QodMg4nnd3K1TDoES/nADRStM8Gpz0D6nhkwbmwEnE0ZGJgoWsvQ722FR8D7xS0n0LV556RcEicjTyg==} - - core-js-pure@3.28.0: - resolution: {integrity: sha512-DSOVleA9/v3LNj/vFxAPfUHttKTzrB2RXhAPvR5TPXn4vrra3Z2ssytvRyt8eruJwAfwAiFADEbrjcRdcvPLQQ==} - - core-js@3.28.0: - resolution: {integrity: sha512-GiZn9D4Z/rSYvTeg1ljAIsEqFm0LaN9gVtwDCrKL80zHtS31p9BAjmTxVqTQDMpwlMolJZOFntUG2uwyj7DAqw==} - - core-util-is@1.0.3: - resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} - - cors@2.8.5: - resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==} - engines: {node: '>= 0.10'} - - cosmiconfig@6.0.0: - resolution: {integrity: sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==} - engines: {node: '>=8'} - - cosmiconfig@7.1.0: - resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} - engines: {node: '>=10'} - - cp-file@7.0.0: - resolution: {integrity: sha512-0Cbj7gyvFVApzpK/uhCtQ/9kE9UnYpxMzaq5nQQC/Dh4iaj5fxp7iEFIullrYwzj8nf0qnsI1Qsx34hAeAebvw==} - engines: {node: '>=8'} - - cpy@8.1.2: - resolution: {integrity: sha512-dmC4mUesv0OYH2kNFEidtf/skUwv4zePmGeepjyyJ0qTo5+8KhA1o99oIAwVVLzQMAeDJml74d6wPPKb6EZUTg==} - engines: {node: '>=8'} - - create-ecdh@4.0.4: - resolution: {integrity: sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==} - - create-hash@1.2.0: - resolution: {integrity: sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==} - - create-hmac@1.1.7: - resolution: {integrity: sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==} - - create-require@1.1.1: - resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} - - crelt@1.0.5: - resolution: {integrity: sha512-+BO9wPPi+DWTDcNYhr/W90myha8ptzftZT+LwcmUbbok0rcP/fequmFYCw8NMoH7pkAZQzU78b3kYrlua5a9eA==} - - cron-parser@4.8.1: - resolution: {integrity: sha512-jbokKWGcyU4gl6jAfX97E1gDpY12DJ1cLJZmoDzaAln/shZ+S3KBFBuA2Q6WeUN4gJf/8klnV1EfvhA2lK5IRQ==} - engines: {node: '>=12.0.0'} - - cross-fetch@3.1.5: - resolution: {integrity: sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==} - - cross-spawn@6.0.5: - resolution: {integrity: sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==} - engines: {node: '>=4.8'} - - cross-spawn@7.0.3: - resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} - engines: {node: '>= 8'} - - crypto-browserify@3.12.0: - resolution: {integrity: sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==} - - css-color-names@0.0.4: - resolution: {integrity: sha512-zj5D7X1U2h2zsXOAM8EyUREBnnts6H+Jm+d1M2DbiQQcUtnqgQsMrdo8JW9R80YFUmIdBZeMu5wvYM7hcgWP/Q==} - - css-loader@3.6.0: - resolution: {integrity: sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ==} - engines: {node: '>= 8.9.0'} - peerDependencies: - webpack: ^4.0.0 || ^5.0.0 - - css-loader@5.2.7: - resolution: {integrity: sha512-Q7mOvpBNBG7YrVGMxRxcBJZFL75o+cH2abNASdibkj/fffYD8qWbInZrD0S9ccI6vZclF3DsHE7njGlLtaHbhg==} - engines: {node: '>= 10.13.0'} - peerDependencies: - webpack: ^4.27.0 || ^5.0.0 - - css-loader@6.7.3: - resolution: {integrity: sha512-qhOH1KlBMnZP8FzRO6YCH9UHXQhVMcEGLyNdb7Hv2cpcmJbW0YrddO+tG1ab5nT41KpHIYGsbeHqxB9xPu1pKQ==} - engines: {node: '>= 12.13.0'} - peerDependencies: - webpack: ^5.0.0 - - css-select@4.3.0: - resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==} - - css-tree@1.1.3: - resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==} - engines: {node: '>=8.0.0'} - - css-what@6.1.0: - resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} - engines: {node: '>= 6'} - - css.escape@1.5.1: - resolution: {integrity: sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==} - - cssesc@3.0.0: - resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} - engines: {node: '>=4'} - hasBin: true - - csso@4.2.0: - resolution: {integrity: sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==} - engines: {node: '>=8.0.0'} - - csstype@3.0.9: - resolution: {integrity: sha512-rpw6JPxK6Rfg1zLOYCSwle2GFOOsnjmDYDaBwEcwoOg4qlsIVCN789VkBZDJAGi4T07gI4YSutR43t9Zz4Lzuw==} - - csstype@3.1.1: - resolution: {integrity: sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==} - - currently-unhandled@0.4.1: - resolution: {integrity: sha512-/fITjgjGU50vjQ4FH6eUoYu+iUoUKIXws2hL15JJpIR+BbTxaXQsMuuyjtNh2WqsSBS5nsaZHFsFecyw5CCAng==} - engines: {node: '>=0.10.0'} - - cyclist@1.0.1: - resolution: {integrity: sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A==} - - damerau-levenshtein@1.0.8: - resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} - - dayjs@1.11.7: - resolution: {integrity: sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==} - - debug@2.6.9: - resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - debug@3.2.7: - resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - debug@4.3.4: - resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - decamelize@1.2.0: - resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} - engines: {node: '>=0.10.0'} - - decode-uri-component@0.2.2: - resolution: {integrity: sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==} - engines: {node: '>=0.10'} - - decompress-response@4.2.1: - resolution: {integrity: sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==} - engines: {node: '>=8'} - - decompress-response@6.0.0: - resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} - engines: {node: '>=10'} - - dedent@0.7.0: - resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==} - - deep-equal@1.0.1: - resolution: {integrity: sha512-bHtC0iYvWhyaTzvV3CZgPeZQqCOBGyGsVV7v4eevpdkLHfiSrXUdBG+qAuSz4RI70sszvjQ1QSZ98An1yNwpSw==} - - deep-equal@2.2.0: - resolution: {integrity: sha512-RdpzE0Hv4lhowpIUKKMJfeH6C1pXdtT1/it80ubgWqwI3qpuxUBpC1S4hnHg+zjnuOoDkzUtUCEEkG+XG5l3Mw==} - - deep-extend@0.6.0: - resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} - engines: {node: '>=4.0.0'} - - deep-is@0.1.4: - resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} - - deepmerge@4.3.0: - resolution: {integrity: sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==} - engines: {node: '>=0.10.0'} - - default-browser-id@1.0.4: - resolution: {integrity: sha512-qPy925qewwul9Hifs+3sx1ZYn14obHxpkX+mPD369w4Rzg+YkJBgi3SOvwUq81nWSjqGUegIgEPwD8u+HUnxlw==} - engines: {node: '>=0.10.0'} - hasBin: true - - defer-to-connect@2.0.1: - resolution: {integrity: sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==} - engines: {node: '>=10'} - - define-lazy-prop@2.0.0: - resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} - engines: {node: '>=8'} - - define-properties@1.2.0: - resolution: {integrity: sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==} - engines: {node: '>= 0.4'} - - define-property@0.2.5: - resolution: {integrity: sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==} - engines: {node: '>=0.10.0'} - - define-property@1.0.0: - resolution: {integrity: sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==} - engines: {node: '>=0.10.0'} - - define-property@2.0.2: - resolution: {integrity: sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==} - engines: {node: '>=0.10.0'} - - delayed-stream@1.0.0: - resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} - engines: {node: '>=0.4.0'} - - delegates@1.0.0: - resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==} - - denque@2.1.0: - resolution: {integrity: sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==} - engines: {node: '>=0.10'} - - depd@1.1.2: - resolution: {integrity: sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==} - engines: {node: '>= 0.6'} - - depd@2.0.0: - resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} - engines: {node: '>= 0.8'} - - des.js@1.0.1: - resolution: {integrity: sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==} - - destroy@1.2.0: - resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} - engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} - - detab@2.0.4: - resolution: {integrity: sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g==} - - detect-libc@1.0.3: - resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==} - engines: {node: '>=0.10'} - hasBin: true - - detect-newline@3.1.0: - resolution: {integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==} - engines: {node: '>=8'} - - detect-node-es@1.1.0: - resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==} - - detect-node@2.0.4: - resolution: {integrity: sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==} - - detect-node@2.1.0: - resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==} - - detect-package-manager@2.0.1: - resolution: {integrity: sha512-j/lJHyoLlWi6G1LDdLgvUtz60Zo5GEj+sVYtTVXnYLDPuzgC3llMxonXym9zIwhhUII8vjdw0LXxavpLqTbl1A==} - engines: {node: '>=12'} - - detect-port@1.5.1: - resolution: {integrity: sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ==} - hasBin: true - - diff-sequences@29.4.3: - resolution: {integrity: sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - diff@4.0.2: - resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} - engines: {node: '>=0.3.1'} - - diffie-hellman@5.0.3: - resolution: {integrity: sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==} - - dir-glob@2.2.2: - resolution: {integrity: sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==} - engines: {node: '>=4'} - - dir-glob@3.0.1: - resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} - engines: {node: '>=8'} - - doctrine@2.1.0: - resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} - engines: {node: '>=0.10.0'} - - doctrine@3.0.0: - resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} - engines: {node: '>=6.0.0'} - - dom-converter@0.2.0: - resolution: {integrity: sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==} - - dom-helpers@5.2.1: - resolution: {integrity: sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==} - - dom-serializer@1.4.1: - resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==} - - dom-walk@0.1.2: - resolution: {integrity: sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==} - - domain-browser@1.2.0: - resolution: {integrity: sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==} - engines: {node: '>=0.4', npm: '>=1.2'} - - domelementtype@2.3.0: - resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} - - domhandler@3.3.0: - resolution: {integrity: sha512-J1C5rIANUbuYK+FuFL98650rihynUOEzRLxW+90bKZRWB6A1X1Tf82GxR1qAWLyfNPRvjqfip3Q5tdYlmAa9lA==} - engines: {node: '>= 4'} - - domhandler@4.3.1: - resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==} - engines: {node: '>= 4'} - - dompurify@3.0.2: - resolution: {integrity: sha512-B8c6JdiEpxAKnd8Dm++QQxJL4lfuc757scZtcapj6qjTjrQzyq5iAyznLKVvK+77eYNiFblHBlt7MM0fOeqoKw==} - - domutils@2.8.0: - resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==} - - dot-case@3.0.4: - resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==} - - dotenv-expand@5.1.0: - resolution: {integrity: sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==} - - dotenv@16.0.3: - resolution: {integrity: sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==} - engines: {node: '>=12'} - - dotenv@8.6.0: - resolution: {integrity: sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==} - engines: {node: '>=10'} - - drange@1.1.1: - resolution: {integrity: sha512-pYxfDYpued//QpnLIm4Avk7rsNtAtQkUES2cwAYSvD/wd2pKD71gN2Ebj3e7klzXwjocvE8c5vx/1fxwpqmSxA==} - engines: {node: '>=4'} - - duplexer2@0.1.4: - resolution: {integrity: sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==} - - duplexify@3.7.1: - resolution: {integrity: sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==} - - eastasianwidth@0.2.0: - resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - - ecdsa-sig-formatter@1.0.11: - resolution: {integrity: sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==} - - editorconfig@0.15.3: - resolution: {integrity: sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g==} - hasBin: true - - ee-first@1.1.1: - resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} - - electron-to-chromium@1.4.304: - resolution: {integrity: sha512-6c8M+ojPgDIXN2NyfGn8oHASXYnayj+gSEnGeLMKb9zjsySeVB/j7KkNAAG9yDcv8gNlhvFg5REa1N/kQU6pgA==} - - elliptic@6.5.4: - resolution: {integrity: sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==} - - emittery@0.13.1: - resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==} - engines: {node: '>=12'} - - emoji-regex@8.0.0: - resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} - - emoji-regex@9.2.2: - resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - - emojis-list@3.0.0: - resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==} - engines: {node: '>= 4'} - - enabled@2.0.0: - resolution: {integrity: sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==} - - encodeurl@1.0.2: - resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==} - engines: {node: '>= 0.8'} - - end-of-stream@1.1.0: - resolution: {integrity: sha512-EoulkdKF/1xa92q25PbjuDcgJ9RDHYU2Rs3SCIvs2/dSQ3BpmxneNHmA/M7fe60M3PrV7nNGTTNbkK62l6vXiQ==} - - end-of-stream@1.4.4: - resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} - - endent@2.1.0: - resolution: {integrity: sha512-r8VyPX7XL8U01Xgnb1CjZ3XV+z90cXIJ9JPE/R9SEC9vpw2P6CfsRPJmp20DppC5N7ZAMCmjYkJIa744Iyg96w==} - - engine.io-client@6.4.0: - resolution: {integrity: sha512-GyKPDyoEha+XZ7iEqam49vz6auPnNJ9ZBfy89f+rMMas8AuiMWOZ9PVzu8xb9ZC6rafUqiGHSCfu22ih66E+1g==} - - engine.io-parser@5.0.6: - resolution: {integrity: sha512-tjuoZDMAdEhVnSFleYPCtdL2GXwVTGtNjoeJd9IhIG3C1xs9uwxqRNEu5WpnDZCaozwVlK/nuQhpodhXSIMaxw==} - engines: {node: '>=10.0.0'} - - engine.io@6.4.1: - resolution: {integrity: sha512-JFYQurD/nbsA5BSPmbaOSLa3tSVj8L6o4srSwXXY3NqE+gGUNmmPTbhn8tjzcCtSqhFgIeqef81ngny8JM25hw==} - engines: {node: '>=10.0.0'} - - enhanced-resolve@4.5.0: - resolution: {integrity: sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==} - engines: {node: '>=6.9.0'} - - enhanced-resolve@5.12.0: - resolution: {integrity: sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==} - engines: {node: '>=10.13.0'} - - entities@2.2.0: - resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==} - - entities@3.0.1: - resolution: {integrity: sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==} - engines: {node: '>=0.12'} - - entities@4.4.0: - resolution: {integrity: sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==} - engines: {node: '>=0.12'} - - errno@0.1.8: - resolution: {integrity: sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==} - hasBin: true - - error-ex@1.3.2: - resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} - - error-stack-parser@2.1.4: - resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} - - es-abstract@1.21.1: - resolution: {integrity: sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==} - engines: {node: '>= 0.4'} - - es-array-method-boxes-properly@1.0.0: - resolution: {integrity: sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==} - - es-get-iterator@1.1.3: - resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==} - - es-module-lexer@0.9.3: - resolution: {integrity: sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==} - - es-set-tostringtag@2.0.1: - resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} - engines: {node: '>= 0.4'} - - es-shim-unscopables@1.0.0: - resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==} - - es-to-primitive@1.2.1: - resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} - engines: {node: '>= 0.4'} - - es5-shim@4.6.7: - resolution: {integrity: sha512-jg21/dmlrNQI7JyyA2w7n+yifSxBng0ZralnSfVZjoCawgNTCnS+yBCyVM9DL5itm7SUnDGgv7hcq2XCZX4iRQ==} - engines: {node: '>=0.4.0'} - - es6-shim@0.35.7: - resolution: {integrity: sha512-baZkUfTDSx7X69+NA8imbvGrsPfqH0MX7ADdIDjqwsI8lkTgLIiD2QWrUCSGsUQ0YMnSCA/4pNgSyXdnLHWf3A==} - - escalade@3.1.1: - resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} - engines: {node: '>=6'} - - escape-goat@3.0.0: - resolution: {integrity: sha512-w3PwNZJwRxlp47QGzhuEBldEqVHHhh8/tIPcl6ecf2Bou99cdAt0knihBV0Ecc7CGxYduXVBDheH1K2oADRlvw==} - engines: {node: '>=10'} - - escape-html@1.0.3: - resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} - - escape-string-regexp@1.0.5: - resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} - engines: {node: '>=0.8.0'} - - escape-string-regexp@2.0.0: - resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==} - engines: {node: '>=8'} - - escape-string-regexp@4.0.0: - resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} - engines: {node: '>=10'} - - escodegen@2.0.0: - resolution: {integrity: sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==} - engines: {node: '>=6.0'} - hasBin: true - - eslint-config-airbnb-base@15.0.0: - resolution: {integrity: sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig==} - engines: {node: ^10.12.0 || >=12.0.0} - peerDependencies: - eslint: ^7.32.0 || ^8.2.0 - eslint-plugin-import: ^2.25.2 - - eslint-config-airbnb-typescript@17.0.0: - resolution: {integrity: sha512-elNiuzD0kPAPTXjFWg+lE24nMdHMtuxgYoD30OyMD6yrW1AhFZPAg27VX7d3tzOErw+dgJTNWfRSDqEcXb4V0g==} - peerDependencies: - '@typescript-eslint/eslint-plugin': ^5.13.0 - '@typescript-eslint/parser': ^5.0.0 - eslint: ^7.32.0 || ^8.2.0 - eslint-plugin-import: ^2.25.3 - - eslint-config-airbnb@19.0.4: - resolution: {integrity: sha512-T75QYQVQX57jiNgpF9r1KegMICE94VYwoFQyMGhrvc+lB8YF2E/M/PYDaQe1AJcWaEgqLE+ErXV1Og/+6Vyzew==} - engines: {node: ^10.12.0 || ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^7.32.0 || ^8.2.0 - eslint-plugin-import: ^2.25.3 - eslint-plugin-jsx-a11y: ^6.5.1 - eslint-plugin-react: ^7.28.0 - eslint-plugin-react-hooks: ^4.3.0 - - eslint-config-next@13.2.4: - resolution: {integrity: sha512-lunIBhsoeqw6/Lfkd6zPt25w1bn0znLA/JCL+au1HoEpSb4/PpsOYsYtgV/q+YPsoKIOzFyU5xnb04iZnXjUvg==} - peerDependencies: - eslint: ^7.23.0 || ^8.0.0 - typescript: '>=3.3.1' - peerDependenciesMeta: - typescript: - optional: true - - eslint-import-resolver-node@0.3.7: - resolution: {integrity: sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA==} - - eslint-import-resolver-typescript@3.5.3: - resolution: {integrity: sha512-njRcKYBc3isE42LaTcJNVANR3R99H9bAxBDMNDr2W7yq5gYPxbU3MkdhsQukxZ/Xg9C2vcyLlDsbKfRDg0QvCQ==} - engines: {node: ^14.18.0 || >=16.0.0} - peerDependencies: - eslint: '*' - eslint-plugin-import: '*' - - eslint-module-utils@2.7.4: - resolution: {integrity: sha512-j4GT+rqzCoRKHwURX7pddtIPGySnX9Si/cgMI5ztrcqOPtk5dDEeZ34CQVPphnqkJytlc97Vuk05Um2mJ3gEQA==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: '*' - eslint-import-resolver-node: '*' - eslint-import-resolver-typescript: '*' - eslint-import-resolver-webpack: '*' - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - eslint: - optional: true - eslint-import-resolver-node: - optional: true - eslint-import-resolver-typescript: - optional: true - eslint-import-resolver-webpack: - optional: true - - eslint-plugin-import@2.27.5: - resolution: {integrity: sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - - eslint-plugin-jsx-a11y@6.7.1: - resolution: {integrity: sha512-63Bog4iIethyo8smBklORknVjB0T2dwB8Mr/hIC+fBS0uyHdYYpzM/Ed+YC8VxTjlXHEWFOdmgwcDn1U2L9VCA==} - engines: {node: '>=4.0'} - peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 - - eslint-plugin-react-hooks@4.6.0: - resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==} - engines: {node: '>=10'} - peerDependencies: - eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 - - eslint-plugin-react@7.32.2: - resolution: {integrity: sha512-t2fBMa+XzonrrNkyVirzKlvn5RXzzPwRHtMvLAtVZrt8oxgnTQaYbU6SXTOO1mwQgp1y5+toMSKInnzGr0Knqg==} - engines: {node: '>=4'} - peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 - - eslint-scope@4.0.3: - resolution: {integrity: sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==} - engines: {node: '>=4.0.0'} - - eslint-scope@5.1.1: - resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} - engines: {node: '>=8.0.0'} - - eslint-scope@7.1.1: - resolution: {integrity: sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - eslint-utils@3.0.0: - resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} - engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} - peerDependencies: - eslint: '>=5' - - eslint-visitor-keys@2.1.0: - resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} - engines: {node: '>=10'} - - eslint-visitor-keys@3.3.0: - resolution: {integrity: sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - eslint@8.36.0: - resolution: {integrity: sha512-Y956lmS7vDqomxlaaQAHVmeb4tNMp2FWIvU/RnU5BD3IKMD/MJPr76xdyr68P8tV1iNMvN2mRK0yy3c+UjL+bw==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - hasBin: true - - espree@9.5.0: - resolution: {integrity: sha512-JPbJGhKc47++oo4JkEoTe2wjy4fmMwvFpgJT9cQzmfXKp22Dr6Hf1tdCteLz1h0P3t+mGvWZ+4Uankvh8+c6zw==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - esprima@4.0.1: - resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} - engines: {node: '>=4'} - hasBin: true - - esquery@1.4.2: - resolution: {integrity: sha512-JVSoLdTlTDkmjFmab7H/9SL9qGSyjElT3myyKp7krqjVFQCDLmj1QFaCLRFBszBKI0XVZaiiXvuPIX3ZwHe1Ng==} - engines: {node: '>=0.10'} - - esrecurse@4.3.0: - resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} - engines: {node: '>=4.0'} - - estraverse@4.3.0: - resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} - engines: {node: '>=4.0'} - - estraverse@5.3.0: - resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} - engines: {node: '>=4.0'} - - estree-to-babel@3.2.1: - resolution: {integrity: sha512-YNF+mZ/Wu2FU/gvmzuWtYc8rloubL7wfXCTgouFrnjGVXPA/EeYYA7pupXWrb3Iv1cTBeSSxxJIbK23l4MRNqg==} - engines: {node: '>=8.3.0'} - - esutils@2.0.3: - resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} - engines: {node: '>=0.10.0'} - - etag@1.8.1: - resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} - engines: {node: '>= 0.6'} - - event-loop-spinner@2.2.0: - resolution: {integrity: sha512-KB44sV4Mv7uLIkJHJ5qhiZe5um6th2g57nHQL/uqnPHKP2IswoTRWUteEXTJQL4gW++1zqWUni+H2hGkP51c9w==} - - event-target-shim@5.0.1: - resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} - engines: {node: '>=6'} - - events@3.3.0: - resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} - engines: {node: '>=0.8.x'} - - eventsource@2.0.2: - resolution: {integrity: sha512-IzUmBGPR3+oUG9dUeXynyNmf91/3zUSJg1lCktzKw47OXuhco54U3r9B7O4XX+Rb1Itm9OZ2b0RkTs10bICOxA==} - engines: {node: '>=12.0.0'} - - evp_bytestokey@1.0.3: - resolution: {integrity: sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==} - - exec-sh@0.3.6: - resolution: {integrity: sha512-nQn+hI3yp+oD0huYhKwvYI32+JFeq+XkNcD1GAo3Y/MjxsfVGmrrzrnzjWiNY6f+pUCP440fThsFh5gZrRAU/w==} - - execa@1.0.0: - resolution: {integrity: sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==} - engines: {node: '>=6'} - - execa@5.1.1: - resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} - engines: {node: '>=10'} - - execa@7.1.0: - resolution: {integrity: sha512-T6nIJO3LHxUZ6ahVRaxXz9WLEruXLqdcluA+UuTptXmLM7nDAn9lx9IfkxPyzEL21583qSt4RmL44pO71EHaJQ==} - engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0} - - exit@0.1.2: - resolution: {integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==} - engines: {node: '>= 0.8.0'} - - expand-brackets@2.1.4: - resolution: {integrity: sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==} - engines: {node: '>=0.10.0'} - - expand-template@2.0.3: - resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} - engines: {node: '>=6'} - - expect@29.4.3: - resolution: {integrity: sha512-uC05+Q7eXECFpgDrHdXA4k2rpMyStAYPItEDLyQDo5Ta7fVkJnNA/4zh/OIVkVVNZ1oOK1PipQoyNjuZ6sz6Dg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - expect@29.5.0: - resolution: {integrity: sha512-yM7xqUrCO2JdpFo4XpM82t+PJBFybdqoQuJLDGeDX2ij8NZzqRHyu3Hp188/JX7SWqud+7t4MUdvcgGBICMHZg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - express@4.18.2: - resolution: {integrity: sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==} - engines: {node: '>= 0.10.0'} - - extend-shallow@2.0.1: - resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} - engines: {node: '>=0.10.0'} - - extend-shallow@3.0.2: - resolution: {integrity: sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==} - engines: {node: '>=0.10.0'} - - extend@3.0.2: - resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} - - extglob@2.0.4: - resolution: {integrity: sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==} - engines: {node: '>=0.10.0'} - - fast-deep-equal@3.1.3: - resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - - fast-glob@2.2.7: - resolution: {integrity: sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==} - engines: {node: '>=4.0.0'} - - fast-glob@3.2.12: - resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==} - engines: {node: '>=8.6.0'} - - fast-json-parse@1.0.3: - resolution: {integrity: sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw==} - - fast-json-patch@3.1.1: - resolution: {integrity: sha512-vf6IHUX2SBcA+5/+4883dsIjpBTqmfBjmYiWK1savxQmFk4JfBMLa7ynTYOs1Rolp/T1betJxHiGD3g1Mn8lUQ==} - - fast-json-stable-stringify@2.1.0: - resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} - - fast-levenshtein@2.0.6: - resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} - - fast-text-encoding@1.0.6: - resolution: {integrity: sha512-VhXlQgj9ioXCqGstD37E/HBeqEGV/qOD/kmbVG8h5xKBYvM1L3lR1Zn4555cQ8GkYbJa8aJSipLPndE1k6zK2w==} - - fast-xml-parser@4.0.11: - resolution: {integrity: sha512-4aUg3aNRR/WjQAcpceODG1C3x3lFANXRo8+1biqfieHmg9pyMt7qB4lQV/Ta6sJCTbA5vfD8fnA8S54JATiFUA==} - hasBin: true - - fast-xml-parser@4.1.2: - resolution: {integrity: sha512-CDYeykkle1LiA/uqQyNwYpFbyF6Axec6YapmpUP+/RHWIoR1zKjocdvNaTsxCxZzQ6v9MLXaSYm9Qq0thv0DHg==} - hasBin: true - - fastq@1.15.0: - resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} - - fault@1.0.4: - resolution: {integrity: sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==} - - fb-watchman@2.0.2: - resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==} - - fbemitter@3.0.0: - resolution: {integrity: sha512-KWKaceCwKQU0+HPoop6gn4eOHk50bBv/VxjJtGMfwmJt3D29JpN4H4eisCtIPA+a8GVBam+ldMMpMjJUvpDyHw==} - - fbjs-css-vars@1.0.2: - resolution: {integrity: sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==} - - fbjs@3.0.4: - resolution: {integrity: sha512-ucV0tDODnGV3JCnnkmoszb5lf4bNpzjv80K41wd4k798Etq+UYD0y0TIfalLjZoKgjive6/adkRnszwapiDgBQ==} - - fd-slicer@1.1.0: - resolution: {integrity: sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==} - - fecha@4.2.3: - resolution: {integrity: sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==} - - fetch-cookie@2.1.0: - resolution: {integrity: sha512-39+cZRbWfbibmj22R2Jy6dmTbAWC+oqun1f1FzQaNurkPDUP4C38jpeZbiXCR88RKRVDp8UcDrbFXkNhN+NjYg==} - - fetch-retry@5.0.4: - resolution: {integrity: sha512-LXcdgpdcVedccGg0AZqg+S8lX/FCdwXD92WNZ5k5qsb0irRhSFsBOpcJt7oevyqT2/C2nEE0zSFNdBEpj3YOSw==} - - figgy-pudding@3.5.2: - resolution: {integrity: sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==} - - file-entry-cache@6.0.1: - resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} - engines: {node: ^10.12.0 || >=12.0.0} - - file-loader@6.2.0: - resolution: {integrity: sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==} - engines: {node: '>= 10.13.0'} - peerDependencies: - webpack: ^4.0.0 || ^5.0.0 - - file-selector@0.6.0: - resolution: {integrity: sha512-QlZ5yJC0VxHxQQsQhXvBaC7VRJ2uaxTf+Tfpu4Z/OcVQJVpZO+DGU0rkoVW5ce2SccxugvpBJoMvUs59iILYdw==} - engines: {node: '>= 12'} - - file-system-cache@1.1.0: - resolution: {integrity: sha512-IzF5MBq+5CR0jXx5RxPe4BICl/oEhBSXKaL9fLhAXrIfIUS77Hr4vzrYyqYMHN6uTt+BOqi3fDCTjjEBCjERKw==} - - file-uri-to-path@1.0.0: - resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} - - fill-range@4.0.0: - resolution: {integrity: sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==} - engines: {node: '>=0.10.0'} - - fill-range@7.0.1: - resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} - engines: {node: '>=8'} - - finalhandler@1.2.0: - resolution: {integrity: sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==} - engines: {node: '>= 0.8'} - - find-cache-dir@2.1.0: - resolution: {integrity: sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==} - engines: {node: '>=6'} - - find-cache-dir@3.3.2: - resolution: {integrity: sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==} - engines: {node: '>=8'} - - find-root@1.1.0: - resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==} - - find-up@1.1.2: - resolution: {integrity: sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==} - engines: {node: '>=0.10.0'} - - find-up@3.0.0: - resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==} - engines: {node: '>=6'} - - find-up@4.1.0: - resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} - engines: {node: '>=8'} - - find-up@5.0.0: - resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} - engines: {node: '>=10'} - - find-yarn-workspace-root@2.0.0: - resolution: {integrity: sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==} - - fix-esm@1.0.1: - resolution: {integrity: sha512-EZtb7wPXZS54GaGxaWxMlhd1DUDCnAg5srlYdu/1ZVeW+7wwR3Tp59nu52dXByFs3MBRq+SByx1wDOJpRvLEXw==} - - flat-cache@3.0.4: - resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} - engines: {node: ^10.12.0 || >=12.0.0} - - flat@5.0.2: - resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} - hasBin: true - - flatted@3.2.7: - resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==} - - flush-write-stream@1.1.1: - resolution: {integrity: sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==} - - flux@4.0.3: - resolution: {integrity: sha512-yKAbrp7JhZhj6uiT1FTuVMlIAT1J4jqEyBpFApi1kxpGZCvacMVc/t1pMQyotqHhAgvoE3bNvAykhCo2CLjnYw==} - peerDependencies: - react: ^15.0.2 || ^16.0.0 || ^17.0.0 - - fn.name@1.1.0: - resolution: {integrity: sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==} - - follow-redirects@1.15.2: - resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==} - engines: {node: '>=4.0'} - peerDependencies: - debug: '*' - peerDependenciesMeta: - debug: - optional: true - - for-each@0.3.3: - resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} - - for-in@1.0.2: - resolution: {integrity: sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==} - engines: {node: '>=0.10.0'} - - foreground-child@2.0.0: - resolution: {integrity: sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==} - engines: {node: '>=8.0.0'} - - fork-ts-checker-webpack-plugin@4.1.6: - resolution: {integrity: sha512-DUxuQaKoqfNne8iikd14SAkh5uw4+8vNifp6gmA73yYNS6ywLIWSLD/n/mBzHQRpW3J7rbATEakmiA8JvkTyZw==} - engines: {node: '>=6.11.5', yarn: '>=1.0.0'} - peerDependencies: - eslint: '>= 6' - typescript: '>= 2.7' - vue-template-compiler: '*' - webpack: '>= 4' - peerDependenciesMeta: - eslint: - optional: true - vue-template-compiler: - optional: true - - fork-ts-checker-webpack-plugin@6.5.2: - resolution: {integrity: sha512-m5cUmF30xkZ7h4tWUgTAcEaKmUW7tfyUyTqNNOz7OxWJ0v1VWKTcOvH8FWHUwSjlW/356Ijc9vi3XfcPstpQKA==} - engines: {node: '>=10', yarn: '>=1.0.0'} - peerDependencies: - eslint: '>= 6' - typescript: '>= 2.7' - vue-template-compiler: '*' - webpack: '>= 4' - peerDependenciesMeta: - eslint: - optional: true - vue-template-compiler: - optional: true - - form-data-encoder@1.9.0: - resolution: {integrity: sha512-rahaRMkN8P8d/tgK/BLPX+WBVM27NbvdXBxqQujBtkDAIFspaRqN7Od7lfdGQA6KAD+f82fYCLBq1ipvcu8qLw==} - - form-data@3.0.1: - resolution: {integrity: sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==} - engines: {node: '>= 6'} - - form-data@4.0.0: - resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} - engines: {node: '>= 6'} - - format@0.2.2: - resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==} - engines: {node: '>=0.4.x'} - - formdata-node@4.4.1: - resolution: {integrity: sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==} - engines: {node: '>= 12.20'} - - forwarded@0.2.0: - resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} - engines: {node: '>= 0.6'} - - fragment-cache@0.2.1: - resolution: {integrity: sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==} - engines: {node: '>=0.10.0'} - - fresh@0.5.2: - resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} - engines: {node: '>= 0.6'} - - from2@2.3.0: - resolution: {integrity: sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==} - - fs-constants@1.0.0: - resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} - - fs-extra@10.1.0: - resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} - engines: {node: '>=12'} - - fs-extra@9.1.0: - resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==} - engines: {node: '>=10'} - - fs-minipass@2.1.0: - resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} - engines: {node: '>= 8'} - - fs-monkey@1.0.3: - resolution: {integrity: sha512-cybjIfiiE+pTWicSCLFHSrXZ6EilF30oh91FDP9S2B051prEa7QWfrVTQm10/dDpswBDXZugPa1Ogu8Yh+HV0Q==} - - fs-write-stream-atomic@1.0.10: - resolution: {integrity: sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA==} - - fs.realpath@1.0.0: - resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} - - fsevents@1.2.13: - resolution: {integrity: sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==} - engines: {node: '>= 4.0'} - os: [darwin] - deprecated: The v1 package contains DANGEROUS / INSECURE binaries. Upgrade to safe fsevents v2 - - fsevents@2.3.2: - resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} - os: [darwin] - - function-bind@1.1.1: - resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} - - function.prototype.name@1.1.5: - resolution: {integrity: sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==} - engines: {node: '>= 0.4'} - - functions-have-names@1.2.3: - resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} - - gauge@2.7.4: - resolution: {integrity: sha512-14x4kjc6lkD3ltw589k0NrPD6cCNTD6CWoVUNpB85+DrtONoZn+Rug6xZU5RvSC4+TZPxA5AnBibQYAvZn41Hg==} - - gauge@3.0.2: - resolution: {integrity: sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==} - engines: {node: '>=10'} - - gaxios@5.0.2: - resolution: {integrity: sha512-TjtV2AJOZoMQqRYoy5eM8cCQogYwazWNYLQ72QB0kwa6vHHruYkGmhhyrlzbmgNHK1dNnuP2WSH81urfzyN2Og==} - engines: {node: '>=12'} - - gcp-metadata@5.2.0: - resolution: {integrity: sha512-aFhhvvNycky2QyhG+dcfEdHBF0FRbYcf39s6WNHUDysKSrbJ5vuFbjydxBcmewtXeV248GP8dWT3ByPNxsyHCw==} - engines: {node: '>=12'} - - generic-pool@3.9.0: - resolution: {integrity: sha512-hymDOu5B53XvN4QT9dBmZxPX4CWhBPPLguTZ9MMFeFa/Kg0xWVfylOVNlJji/E7yTZWFd/q9GO5TxDLq156D7g==} - engines: {node: '>= 4'} - - gensync@1.0.0-beta.2: - resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} - engines: {node: '>=6.9.0'} - - get-caller-file@2.0.5: - resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} - engines: {node: 6.* || 8.* || >= 10.*} - - get-intrinsic@1.2.0: - resolution: {integrity: sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==} - - get-nonce@1.0.1: - resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==} - engines: {node: '>=6'} - - get-package-type@0.1.0: - resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==} - engines: {node: '>=8.0.0'} - - get-port@5.1.1: - resolution: {integrity: sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==} - engines: {node: '>=8'} - - get-stdin@4.0.1: - resolution: {integrity: sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw==} - engines: {node: '>=0.10.0'} - - get-stream@4.1.0: - resolution: {integrity: sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==} - engines: {node: '>=6'} - - get-stream@5.2.0: - resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} - engines: {node: '>=8'} - - get-stream@6.0.1: - resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} - engines: {node: '>=10'} - - get-symbol-description@1.0.0: - resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} - engines: {node: '>= 0.4'} - - get-tsconfig@4.4.0: - resolution: {integrity: sha512-0Gdjo/9+FzsYhXCEFueo2aY1z1tpXrxWZzP7k8ul9qt1U5o8rYJwTJYmaeHdrVosYIVYkOy2iwCJ9FdpocJhPQ==} - - get-value@2.0.6: - resolution: {integrity: sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==} - engines: {node: '>=0.10.0'} - - github-from-package@0.0.0: - resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} - - github-slugger@1.5.0: - resolution: {integrity: sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==} - - glob-parent@3.1.0: - resolution: {integrity: sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==} - - glob-parent@5.1.2: - resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} - engines: {node: '>= 6'} - - glob-parent@6.0.2: - resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} - engines: {node: '>=10.13.0'} - - glob-promise@3.4.0: - resolution: {integrity: sha512-q08RJ6O+eJn+dVanerAndJwIcumgbDdYiUT7zFQl3Wm1xD6fBKtah7H8ZJChj4wP+8C+QfeVy8xautR7rdmKEw==} - engines: {node: '>=4'} - peerDependencies: - glob: '*' - - glob-to-regexp@0.3.0: - resolution: {integrity: sha512-Iozmtbqv0noj0uDDqoL0zNq0VBEfK2YFoMAZoxJe4cwphvLR+JskfF30QhXHOR4m3KrE6NLRYw+U9MRXvifyig==} - - glob-to-regexp@0.4.1: - resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} - - glob@7.1.7: - resolution: {integrity: sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==} - - glob@7.2.3: - resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} - - glob@8.1.0: - resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} - engines: {node: '>=12'} - - global@4.4.0: - resolution: {integrity: sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==} - - globals@11.12.0: - resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} - engines: {node: '>=4'} - - globals@13.20.0: - resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==} - engines: {node: '>=8'} - - globalthis@1.0.3: - resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} - engines: {node: '>= 0.4'} - - globalyzer@0.1.0: - resolution: {integrity: sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==} - - globby@11.1.0: - resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} - engines: {node: '>=10'} - - globby@13.1.3: - resolution: {integrity: sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - globby@9.2.0: - resolution: {integrity: sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==} - engines: {node: '>=6'} - - globrex@0.1.2: - resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==} - - google-auth-library@8.7.0: - resolution: {integrity: sha512-1M0NG5VDIvJZEnstHbRdckLZESoJwguinwN8Dhae0j2ZKIQFIV63zxm6Fo6nM4xkgqUr2bbMtV5Dgo+Hy6oo0Q==} - engines: {node: '>=12'} - - google-p12-pem@4.0.1: - resolution: {integrity: sha512-WPkN4yGtz05WZ5EhtlxNDWPhC4JIic6G8ePitwUWy4l+XPVYec+a0j0Ts47PDtW59y3RwAhUd9/h9ZZ63px6RQ==} - engines: {node: '>=12.0.0'} - hasBin: true - - gopd@1.0.1: - resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} - - got@11.8.6: - resolution: {integrity: sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==} - engines: {node: '>=10.19.0'} - - graceful-fs@4.2.10: - resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} - - grapheme-splitter@1.0.4: - resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} - - gtoken@6.1.2: - resolution: {integrity: sha512-4ccGpzz7YAr7lxrT2neugmXQ3hP9ho2gcaityLVkiUecAiwiy60Ii8gRbZeOsXV19fYaRjgBSshs8kXw+NKCPQ==} - engines: {node: '>=12.0.0'} - - handlebars@4.7.7: - resolution: {integrity: sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA==} - engines: {node: '>=0.4.7'} - hasBin: true - - has-bigints@1.0.2: - resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} - - has-flag@3.0.0: - resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} - engines: {node: '>=4'} - - has-flag@4.0.0: - resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} - engines: {node: '>=8'} - - has-glob@1.0.0: - resolution: {integrity: sha512-D+8A457fBShSEI3tFCj65PAbT++5sKiFtdCdOam0gnfBgw9D277OERk+HM9qYJXmdVLZ/znez10SqHN0BBQ50g==} - engines: {node: '>=0.10.0'} - - has-property-descriptors@1.0.0: - resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} - - has-proto@1.0.1: - resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} - engines: {node: '>= 0.4'} - - has-symbols@1.0.3: - resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} - engines: {node: '>= 0.4'} - - has-tostringtag@1.0.0: - resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==} - engines: {node: '>= 0.4'} - - has-unicode@2.0.1: - resolution: {integrity: sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==} - - has-value@0.3.1: - resolution: {integrity: sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==} - engines: {node: '>=0.10.0'} - - has-value@1.0.0: - resolution: {integrity: sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==} - engines: {node: '>=0.10.0'} - - has-values@0.1.4: - resolution: {integrity: sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==} - engines: {node: '>=0.10.0'} - - has-values@1.0.0: - resolution: {integrity: sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==} - engines: {node: '>=0.10.0'} - - has@1.0.3: - resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} - engines: {node: '>= 0.4.0'} - - hash-base@3.1.0: - resolution: {integrity: sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==} - engines: {node: '>=4'} - - hash.js@1.1.7: - resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==} - - hast-to-hyperscript@9.0.1: - resolution: {integrity: sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==} - - hast-util-from-parse5@6.0.1: - resolution: {integrity: sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==} - - hast-util-parse-selector@2.2.5: - resolution: {integrity: sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==} - - hast-util-raw@6.0.1: - resolution: {integrity: sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==} - - hast-util-to-parse5@6.0.0: - resolution: {integrity: sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==} - - hastscript@6.0.0: - resolution: {integrity: sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==} - - he@1.2.0: - resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} - hasBin: true - - helmet@4.6.0: - resolution: {integrity: sha512-HVqALKZlR95ROkrnesdhbbZJFi/rIVSoNq6f3jA/9u6MIbTsPh3xZwihjeI5+DO/2sOV6HMHooXcEOuwskHpTg==} - engines: {node: '>=10.0.0'} - - hex-color-regex@1.1.0: - resolution: {integrity: sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==} - - highlight.js@10.7.3: - resolution: {integrity: sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==} - - hmac-drbg@1.0.1: - resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==} - - hoist-non-react-statics@3.3.2: - resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} - - hosted-git-info@2.8.9: - resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} - - hsl-regex@1.0.0: - resolution: {integrity: sha512-M5ezZw4LzXbBKMruP+BNANf0k+19hDQMgpzBIYnya//Al+fjNct9Wf3b1WedLqdEs2hKBvxq/jh+DsHJLj0F9A==} - - hsla-regex@1.0.0: - resolution: {integrity: sha512-7Wn5GMLuHBjZCb2bTmnDOycho0p/7UVaAeqXZGbHrBCl6Yd/xDhQJAXe6Ga9AXJH2I5zY1dEdYw2u1UptnSBJA==} - - html-dom-parser@1.2.0: - resolution: {integrity: sha512-2HIpFMvvffsXHFUFjso0M9LqM+1Lm22BF+Df2ba+7QHJXjk63pWChEnI6YG27eaWqUdfnh5/Vy+OXrNTtepRsg==} - - html-entities@2.3.3: - resolution: {integrity: sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==} - - html-escaper@2.0.2: - resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} - - html-minifier-terser@5.1.1: - resolution: {integrity: sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==} - engines: {node: '>=6'} - hasBin: true - - html-minifier-terser@6.1.0: - resolution: {integrity: sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==} - engines: {node: '>=12'} - hasBin: true - - html-minifier@4.0.0: - resolution: {integrity: sha512-aoGxanpFPLg7MkIl/DDFYtb0iWz7jMFGqFhvEDZga6/4QTjneiD8I/NXL1x5aaoCp7FSIT6h/OhykDdPsbtMig==} - engines: {node: '>=6'} - hasBin: true - - html-react-parser@1.4.12: - resolution: {integrity: sha512-nqYQzr4uXh67G9ejAG7djupTHmQvSTgjY83zbXLRfKHJ0F06751jXx6WKSFARDdXxCngo2/7H4Rwtfeowql4gQ==} - peerDependencies: - react: 0.14 || 15 || 16 || 17 || 18 - - html-tags@3.2.0: - resolution: {integrity: sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==} - engines: {node: '>=8'} - - html-tokenize@2.0.1: - resolution: {integrity: sha512-QY6S+hZ0f5m1WT8WffYN+Hg+xm/w5I8XeUcAq/ZYP5wVC8xbKi4Whhru3FtrAebD5EhBW8rmFzkDI6eCAuFe2w==} - hasBin: true - - html-void-elements@1.0.5: - resolution: {integrity: sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==} - - html-webpack-plugin@4.5.2: - resolution: {integrity: sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A==} - engines: {node: '>=6.9'} - peerDependencies: - webpack: ^4.0.0 || ^5.0.0 - - html-webpack-plugin@5.5.0: - resolution: {integrity: sha512-sy88PC2cRTVxvETRgUHFrL4No3UxvcH8G1NepGhqaTT+GXN2kTamqasot0inS5hXeg1cMbFDt27zzo9p35lZVw==} - engines: {node: '>=10.13.0'} - peerDependencies: - webpack: ^5.20.0 - - htmlparser2@4.1.0: - resolution: {integrity: sha512-4zDq1a1zhE4gQso/c5LP1OtrhYTncXNSpvJYtWJBtXAETPlMfi3IFNjGuQbYLuVY4ZR0QMqRVvo4Pdy9KLyP8Q==} - - htmlparser2@6.1.0: - resolution: {integrity: sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==} - - htmlparser2@7.2.0: - resolution: {integrity: sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==} - - http-assert@1.5.0: - resolution: {integrity: sha512-uPpH7OKX4H25hBmU6G1jWNaqJGpTXxey+YOUizJUAgu0AjLUeC8D73hTrhvDS5D+GJN1DN1+hhc/eF/wpxtp0w==} - engines: {node: '>= 0.8'} - - http-cache-semantics@4.1.1: - resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==} - - http-errors@1.8.1: - resolution: {integrity: sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==} - engines: {node: '>= 0.6'} - - http-errors@2.0.0: - resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==} - engines: {node: '>= 0.8'} - - http2-wrapper@1.0.3: - resolution: {integrity: sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==} - engines: {node: '>=10.19.0'} - - https-browserify@1.0.0: - resolution: {integrity: sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==} - - https-proxy-agent@5.0.0: - resolution: {integrity: sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==} - engines: {node: '>= 6'} - - https-proxy-agent@5.0.1: - resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} - engines: {node: '>= 6'} - - human-signals@2.1.0: - resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} - engines: {node: '>=10.17.0'} - - human-signals@4.3.0: - resolution: {integrity: sha512-zyzVyMjpGBX2+6cDVZeFPCdtOtdsxOeseRhB9tkQ6xXmGUNrcnBzdEKPy3VPNYz+4gy1oukVOXcrJCunSyc6QQ==} - engines: {node: '>=14.18.0'} - - humanize-number@0.0.2: - resolution: {integrity: sha512-un3ZAcNQGI7RzaWGZzQDH47HETM4Wrj6z6E4TId8Yeq9w5ZKUVB1nrT2jwFheTUjEmqcgTjXDc959jum+ai1kQ==} - - husky@8.0.3: - resolution: {integrity: sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==} - engines: {node: '>=14'} - hasBin: true - - iconv-lite@0.4.24: - resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} - engines: {node: '>=0.10.0'} - - icss-utils@4.1.1: - resolution: {integrity: sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==} - engines: {node: '>= 6'} - - icss-utils@5.1.0: - resolution: {integrity: sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - - ieee754@1.2.1: - resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} - - iferr@0.1.5: - resolution: {integrity: sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA==} - - ignore-by-default@1.0.1: - resolution: {integrity: sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==} - - ignore@4.0.6: - resolution: {integrity: sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==} - engines: {node: '>= 4'} - - ignore@5.2.4: - resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} - engines: {node: '>= 4'} - - immutable@3.8.2: - resolution: {integrity: sha512-15gZoQ38eYjEjxkorfbcgBKBL6R7T459OuK+CpcWt7O3KF4uPCx2tD0uFETlUDIyo+1789crbMhTvQBSR5yBMg==} - engines: {node: '>=0.10.0'} - - import-fresh@3.3.0: - resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} - engines: {node: '>=6'} - - import-local@3.1.0: - resolution: {integrity: sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==} - engines: {node: '>=8'} - hasBin: true - - imurmurhash@0.1.4: - resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} - engines: {node: '>=0.8.19'} - - indent-string@2.1.0: - resolution: {integrity: sha512-aqwDFWSgSgfRaEwao5lg5KEcVd/2a+D1rvoG7NdilmYz0NwRk6StWpWdz/Hpk34MKPpx7s8XxUqimfcQK6gGlg==} - engines: {node: '>=0.10.0'} - - indent-string@4.0.0: - resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} - engines: {node: '>=8'} - - infer-owner@1.0.4: - resolution: {integrity: sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==} - - inflation@2.0.0: - resolution: {integrity: sha512-m3xv4hJYR2oXw4o4Y5l6P5P16WYmazYof+el6Al3f+YlggGj6qT9kImBAnzDelRALnP5d3h4jGBPKzYCizjZZw==} - engines: {node: '>= 0.8.0'} - - inflight@1.0.6: - resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} - - inherits@2.0.1: - resolution: {integrity: sha512-8nWq2nLTAwd02jTqJExUYFSD/fKq6VH9Y/oG2accc/kdI0V98Bag8d5a4gi3XHz73rDWa2PvTtvcWYquKqSENA==} - - inherits@2.0.3: - resolution: {integrity: sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==} - - inherits@2.0.4: - resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} - - ini@1.3.8: - resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} - - inline-style-parser@0.1.1: - resolution: {integrity: sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==} - - internal-slot@1.0.5: - resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==} - engines: {node: '>= 0.4'} - - interpret@2.2.0: - resolution: {integrity: sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==} - engines: {node: '>= 0.10'} - - invariant@2.2.4: - resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} - - ip@2.0.0: - resolution: {integrity: sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==} - - ipaddr.js@1.9.1: - resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} - engines: {node: '>= 0.10'} - - is-absolute-url@3.0.3: - resolution: {integrity: sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==} - engines: {node: '>=8'} - - is-accessor-descriptor@0.1.6: - resolution: {integrity: sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A==} - engines: {node: '>=0.10.0'} - - is-accessor-descriptor@1.0.0: - resolution: {integrity: sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==} - engines: {node: '>=0.10.0'} - - is-alphabetical@1.0.4: - resolution: {integrity: sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==} - - is-alphanumerical@1.0.4: - resolution: {integrity: sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==} - - is-arguments@1.1.1: - resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} - engines: {node: '>= 0.4'} - - is-array-buffer@3.0.1: - resolution: {integrity: sha512-ASfLknmY8Xa2XtB4wmbz13Wu202baeA18cJBCeCy0wXUHZF0IPyVEXqKEcd+t2fNSLLL1vC6k7lxZEojNbISXQ==} - - is-arrayish@0.2.1: - resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} - - is-arrayish@0.3.2: - resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} - - is-bigint@1.0.4: - resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} - - is-binary-path@1.0.1: - resolution: {integrity: sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==} - engines: {node: '>=0.10.0'} - - is-binary-path@2.1.0: - resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} - engines: {node: '>=8'} - - is-boolean-object@1.1.2: - resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} - engines: {node: '>= 0.4'} - - is-buffer@1.1.6: - resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==} - - is-buffer@2.0.5: - resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} - engines: {node: '>=4'} - - is-callable@1.2.7: - resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} - engines: {node: '>= 0.4'} - - is-ci@2.0.0: - resolution: {integrity: sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==} - hasBin: true - - is-color-stop@1.1.0: - resolution: {integrity: sha512-H1U8Vz0cfXNujrJzEcvvwMDW9Ra+biSYA3ThdQvAnMLJkEHQXn6bWzLkxHtVYJ+Sdbx0b6finn3jZiaVe7MAHA==} - - is-core-module@2.11.0: - resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==} - - is-data-descriptor@0.1.4: - resolution: {integrity: sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg==} - engines: {node: '>=0.10.0'} - - is-data-descriptor@1.0.0: - resolution: {integrity: sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==} - engines: {node: '>=0.10.0'} - - is-date-object@1.0.5: - resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} - engines: {node: '>= 0.4'} - - is-decimal@1.0.4: - resolution: {integrity: sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==} - - is-descriptor@0.1.6: - resolution: {integrity: sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==} - engines: {node: '>=0.10.0'} - - is-descriptor@1.0.2: - resolution: {integrity: sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==} - engines: {node: '>=0.10.0'} - - is-docker@2.2.1: - resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} - engines: {node: '>=8'} - hasBin: true - - is-dom@1.1.0: - resolution: {integrity: sha512-u82f6mvhYxRPKpw8V1N0W8ce1xXwOrQtgGcxl6UCL5zBmZu3is/18K0rR7uFCnMDuAsS/3W54mGL4vsaFUQlEQ==} - - is-extendable@0.1.1: - resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==} - engines: {node: '>=0.10.0'} - - is-extendable@1.0.1: - resolution: {integrity: sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==} - engines: {node: '>=0.10.0'} - - is-extglob@2.1.1: - resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} - engines: {node: '>=0.10.0'} - - is-finite@1.1.0: - resolution: {integrity: sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==} - engines: {node: '>=0.10.0'} - - is-fullwidth-code-point@1.0.0: - resolution: {integrity: sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==} - engines: {node: '>=0.10.0'} - - is-fullwidth-code-point@3.0.0: - resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} - engines: {node: '>=8'} - - is-fullwidth-code-point@4.0.0: - resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==} - engines: {node: '>=12'} - - is-function@1.0.2: - resolution: {integrity: sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==} - - is-generator-fn@2.1.0: - resolution: {integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==} - engines: {node: '>=6'} - - is-generator-function@1.0.10: - resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} - engines: {node: '>= 0.4'} - - is-glob@3.1.0: - resolution: {integrity: sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==} - engines: {node: '>=0.10.0'} - - is-glob@4.0.3: - resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} - engines: {node: '>=0.10.0'} - - is-hexadecimal@1.0.4: - resolution: {integrity: sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==} - - is-map@2.0.2: - resolution: {integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==} - - is-negative-zero@2.0.2: - resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} - engines: {node: '>= 0.4'} - - is-number-object@1.0.7: - resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} - engines: {node: '>= 0.4'} - - is-number@3.0.0: - resolution: {integrity: sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==} - engines: {node: '>=0.10.0'} - - is-number@7.0.0: - resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} - engines: {node: '>=0.12.0'} - - is-object@1.0.2: - resolution: {integrity: sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA==} - - is-path-inside@3.0.3: - resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} - engines: {node: '>=8'} - - is-plain-obj@2.1.0: - resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} - engines: {node: '>=8'} - - is-plain-object@2.0.4: - resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==} - engines: {node: '>=0.10.0'} - - is-plain-object@5.0.0: - resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} - engines: {node: '>=0.10.0'} - - is-regex@1.1.4: - resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} - engines: {node: '>= 0.4'} - - is-set@2.0.2: - resolution: {integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==} - - is-shared-array-buffer@1.0.2: - resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} - - is-stream@1.1.0: - resolution: {integrity: sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==} - engines: {node: '>=0.10.0'} - - is-stream@2.0.1: - resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} - engines: {node: '>=8'} - - is-stream@3.0.0: - resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - is-string@1.0.7: - resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} - engines: {node: '>= 0.4'} - - is-symbol@1.0.4: - resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} - engines: {node: '>= 0.4'} - - is-typed-array@1.1.10: - resolution: {integrity: sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==} - engines: {node: '>= 0.4'} - - is-typedarray@1.0.0: - resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} - - is-utf8@0.2.1: - resolution: {integrity: sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==} - - is-weakmap@2.0.1: - resolution: {integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==} - - is-weakref@1.0.2: - resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} - - is-weakset@2.0.2: - resolution: {integrity: sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==} - - is-whitespace-character@1.0.4: - resolution: {integrity: sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==} - - is-window@1.0.2: - resolution: {integrity: sha512-uj00kdXyZb9t9RcAUAwMZAnkBUwdYGhYlt7djMXhfyhUCzwNba50tIiBKR7q0l7tdoBtFVw/3JmLY6fI3rmZmg==} - - is-windows@1.0.2: - resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} - engines: {node: '>=0.10.0'} - - is-word-character@1.0.4: - resolution: {integrity: sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==} - - is-wsl@1.1.0: - resolution: {integrity: sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==} - engines: {node: '>=4'} - - is-wsl@2.2.0: - resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} - engines: {node: '>=8'} - - is@3.3.0: - resolution: {integrity: sha512-nW24QBoPcFGGHJGUwnfpI7Yc5CdqWNdsyHQszVE/z2pKHXzh7FZ5GWhJqSyaQ9wMkQnsTx+kAI8bHlCX4tKdbg==} - - isarray@0.0.1: - resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==} - - isarray@1.0.0: - resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} - - isarray@2.0.5: - resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} - - isexe@2.0.0: - resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} - - isobject@2.1.0: - resolution: {integrity: sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==} - engines: {node: '>=0.10.0'} - - isobject@3.0.1: - resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==} - engines: {node: '>=0.10.0'} - - isobject@4.0.0: - resolution: {integrity: sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==} - engines: {node: '>=0.10.0'} - - isomorphic-unfetch@3.1.0: - resolution: {integrity: sha512-geDJjpoZ8N0kWexiwkX8F9NkTsXhetLPVbZFQ+JTW239QNOwvB0gniuR1Wc6f0AMTn7/mFGyXvHTifrCp/GH8Q==} - - istanbul-lib-coverage@3.2.0: - resolution: {integrity: sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==} - engines: {node: '>=8'} - - istanbul-lib-instrument@5.2.1: - resolution: {integrity: sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==} - engines: {node: '>=8'} - - istanbul-lib-report@3.0.0: - resolution: {integrity: sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==} - engines: {node: '>=8'} - - istanbul-lib-source-maps@4.0.1: - resolution: {integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==} - engines: {node: '>=10'} - - istanbul-reports@3.1.5: - resolution: {integrity: sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==} - engines: {node: '>=8'} - - iterate-iterator@1.0.2: - resolution: {integrity: sha512-t91HubM4ZDQ70M9wqp+pcNpu8OyJ9UAtXntT/Bcsvp5tZMnz9vRa+IunKXeI8AnfZMTv0jNuVEmGeLSMjVvfPw==} - - iterate-value@1.0.2: - resolution: {integrity: sha512-A6fMAio4D2ot2r/TYzr4yUWrmwNdsN5xL7+HUiyACE4DXm+q8HtPcnFTp+NnW3k4N05tZ7FVYFFb2CR13NxyHQ==} - - jest-changed-files@29.5.0: - resolution: {integrity: sha512-IFG34IUMUaNBIxjQXF/iu7g6EcdMrGRRxaUSw92I/2g2YC6vCdTltl4nHvt7Ci5nSJwXIkCu8Ka1DKF+X7Z1Ag==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-circus@29.5.0: - resolution: {integrity: sha512-gq/ongqeQKAplVxqJmbeUOJJKkW3dDNPY8PjhJ5G0lBRvu0e3EWGxGy5cI4LAGA7gV2UHCtWBI4EMXK8c9nQKA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-cli@29.5.0: - resolution: {integrity: sha512-L1KcP1l4HtfwdxXNFCL5bmUbLQiKrakMUriBEcc1Vfz6gx31ORKdreuWvmQVBit+1ss9NNR3yxjwfwzZNdQXJw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - hasBin: true - peerDependencies: - node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 - peerDependenciesMeta: - node-notifier: - optional: true - - jest-config@29.5.0: - resolution: {integrity: sha512-kvDUKBnNJPNBmFFOhDbm59iu1Fii1Q6SxyhXfvylq3UTHbg6o7j/g8k2dZyXWLvfdKB1vAPxNZnMgtKJcmu3kA==} - 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 - - jest-diff@29.4.3: - resolution: {integrity: sha512-YB+ocenx7FZ3T5O9lMVMeLYV4265socJKtkwgk/6YUz/VsEzYDkiMuMhWzZmxm3wDRQvayJu/PjkjjSkjoHsCA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-diff@29.5.0: - resolution: {integrity: sha512-LtxijLLZBduXnHSniy0WMdaHjmQnt3g5sa16W4p0HqukYTTsyTW3GD1q41TyGl5YFXj/5B2U6dlh5FM1LIMgxw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-docblock@29.4.3: - resolution: {integrity: sha512-fzdTftThczeSD9nZ3fzA/4KkHtnmllawWrXO69vtI+L9WjEIuXWs4AmyME7lN5hU7dB0sHhuPfcKofRsUb/2Fg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-each@29.5.0: - resolution: {integrity: sha512-HM5kIJ1BTnVt+DQZ2ALp3rzXEl+g726csObrW/jpEGl+CDSSQpOJJX2KE/vEg8cxcMXdyEPu6U4QX5eruQv5hA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-environment-node@29.5.0: - resolution: {integrity: sha512-ExxuIK/+yQ+6PRGaHkKewYtg6hto2uGCgvKdb2nfJfKXgZ17DfXjvbZ+jA1Qt9A8EQSfPnt5FKIfnOO3u1h9qw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-get-type@29.4.3: - resolution: {integrity: sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-haste-map@26.6.2: - resolution: {integrity: sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w==} - engines: {node: '>= 10.14.2'} - - jest-haste-map@29.5.0: - resolution: {integrity: sha512-IspOPnnBro8YfVYSw6yDRKh/TiCdRngjxeacCps1cQ9cgVN6+10JUcuJ1EabrgYLOATsIAigxA0rLR9x/YlrSA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-leak-detector@29.5.0: - resolution: {integrity: sha512-u9YdeeVnghBUtpN5mVxjID7KbkKE1QU4f6uUwuxiY0vYRi9BUCLKlPEZfDGR67ofdFmDz9oPAy2G92Ujrntmow==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-matcher-utils@29.4.3: - resolution: {integrity: sha512-TTciiXEONycZ03h6R6pYiZlSkvYgT0l8aa49z/DLSGYjex4orMUcafuLXYyyEDWB1RKglq00jzwY00Ei7yFNVg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-matcher-utils@29.5.0: - resolution: {integrity: sha512-lecRtgm/rjIK0CQ7LPQwzCs2VwW6WAahA55YBuI+xqmhm7LAaxokSB8C97yJeYyT+HvQkH741StzpU41wohhWw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-message-util@29.4.3: - resolution: {integrity: sha512-1Y8Zd4ZCN7o/QnWdMmT76If8LuDv23Z1DRovBj/vcSFNlGCJGoO8D1nJDw1AdyAGUk0myDLFGN5RbNeJyCRGCw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-message-util@29.5.0: - resolution: {integrity: sha512-Kijeg9Dag6CKtIDA7O21zNTACqD5MD/8HfIV8pdD94vFyFuer52SigdC3IQMhab3vACxXMiFk+yMHNdbqtyTGA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-mock@29.5.0: - resolution: {integrity: sha512-GqOzvdWDE4fAV2bWQLQCkujxYWL7RxjCnj71b5VhDAGOevB3qj3Ovg26A5NI84ZpODxyzaozXLOh2NCgkbvyaw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-pnp-resolver@1.2.3: - resolution: {integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==} - engines: {node: '>=6'} - peerDependencies: - jest-resolve: '*' - peerDependenciesMeta: - jest-resolve: - optional: true - - jest-regex-util@26.0.0: - resolution: {integrity: sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A==} - engines: {node: '>= 10.14.2'} - - jest-regex-util@29.4.3: - resolution: {integrity: sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-resolve-dependencies@29.5.0: - resolution: {integrity: sha512-sjV3GFr0hDJMBpYeUuGduP+YeCRbd7S/ck6IvL3kQ9cpySYKqcqhdLLC2rFwrcL7tz5vYibomBrsFYWkIGGjOg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-resolve@29.5.0: - resolution: {integrity: sha512-1TzxJ37FQq7J10jPtQjcc+MkCkE3GBpBecsSUWJ0qZNJpmg6m0D9/7II03yJulm3H/fvVjgqLh/k2eYg+ui52w==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-runner@29.5.0: - resolution: {integrity: sha512-m7b6ypERhFghJsslMLhydaXBiLf7+jXy8FwGRHO3BGV1mcQpPbwiqiKUR2zU2NJuNeMenJmlFZCsIqzJCTeGLQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-runtime@29.5.0: - resolution: {integrity: sha512-1Hr6Hh7bAgXQP+pln3homOiEZtCDZFqwmle7Ew2j8OlbkIu6uE3Y/etJQG8MLQs3Zy90xrp2C0BRrtPHG4zryw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-serializer@26.6.2: - resolution: {integrity: sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g==} - engines: {node: '>= 10.14.2'} - - jest-snapshot@29.5.0: - resolution: {integrity: sha512-x7Wolra5V0tt3wRs3/ts3S6ciSQVypgGQlJpz2rsdQYoUKxMxPNaoHMGJN6qAuPJqS+2iQ1ZUn5kl7HCyls84g==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-util@26.6.2: - resolution: {integrity: sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q==} - engines: {node: '>= 10.14.2'} - - jest-util@29.4.3: - resolution: {integrity: sha512-ToSGORAz4SSSoqxDSylWX8JzkOQR7zoBtNRsA7e+1WUX5F8jrOwaNpuh1YfJHJKDHXLHmObv5eOjejUd+/Ws+Q==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-util@29.5.0: - resolution: {integrity: sha512-RYMgG/MTadOr5t8KdhejfvUU82MxsCu5MF6KuDUHl+NuwzUt+Sm6jJWxTJVrDR1j5M/gJVCPKQEpWXY+yIQ6lQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-validate@29.5.0: - resolution: {integrity: sha512-pC26etNIi+y3HV8A+tUGr/lph9B18GnzSRAkPaaZJIE1eFdiYm6/CewuiJQ8/RlfHd1u/8Ioi8/sJ+CmbA+zAQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-watcher@29.5.0: - resolution: {integrity: sha512-KmTojKcapuqYrKDpRwfqcQ3zjMlwu27SYext9pt4GlF5FUgB+7XE1mcCnSm6a4uUpFyQIkb6ZhzZvHl+jiBCiA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-worker@26.6.2: - resolution: {integrity: sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==} - engines: {node: '>= 10.13.0'} - - jest-worker@27.5.1: - resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} - engines: {node: '>= 10.13.0'} - - jest-worker@29.5.0: - resolution: {integrity: sha512-NcrQnevGoSp4b5kg+akIpthoAFHxPBcb5P6mYPY0fUNT+sSvmtu6jlkEle3anczUKIKEbMxFimk9oTP/tpIPgA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest@29.5.0: - resolution: {integrity: sha512-juMg3he2uru1QoXX078zTa7pO85QyB9xajZc6bU+d9yEGwrKX6+vGmJQ3UdVZsvTEUARIdObzH68QItim6OSSQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - hasBin: true - peerDependencies: - node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 - peerDependenciesMeta: - node-notifier: - optional: true - - js-beautify@1.14.7: - resolution: {integrity: sha512-5SOX1KXPFKx+5f6ZrPsIPEY7NwKeQz47n3jm2i+XeHx9MoRsfQenlOP13FQhWvg8JRS0+XLO6XYUQ2GX+q+T9A==} - engines: {node: '>=10'} - hasBin: true - - js-file-download@0.4.12: - resolution: {integrity: sha512-rML+NkoD08p5Dllpjo0ffy4jRHeY6Zsapvr/W86N7E0yuzAO6qa5X9+xog6zQNlH102J7IXljNY2FtS6Lj3ucg==} - - js-sdsl@4.3.0: - resolution: {integrity: sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==} - - js-sha3@0.8.0: - resolution: {integrity: sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==} - - js-string-escape@1.0.1: - resolution: {integrity: sha512-Smw4xcfIQ5LVjAOuJCvN/zIodzA/BBSsluuoSykP+lUvScIi4U6RJLfwHet5cxFnCswUjISV8oAXaqaJDY3chg==} - engines: {node: '>= 0.8'} - - js-tokens@4.0.0: - resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - - js-yaml@3.14.1: - resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} - hasBin: true - - js-yaml@4.1.0: - resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} - hasBin: true - - jsesc@0.5.0: - resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} - hasBin: true - - jsesc@2.5.2: - resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} - engines: {node: '>=4'} - hasBin: true - - json-bigint@1.0.0: - resolution: {integrity: sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==} - - json-buffer@3.0.1: - resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} - - json-file-plus@3.3.1: - resolution: {integrity: sha512-wo0q1UuiV5NsDPQDup1Km8IwEeqe+olr8tkWxeJq9Bjtcp7DZ0l+yrg28fSC3DEtrE311mhTZ54QGS6oiqnZEA==} - engines: {node: '>= 0.4'} - - json-parse-better-errors@1.0.2: - resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==} - - json-parse-even-better-errors@2.3.1: - resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} - - json-schema-traverse@0.4.1: - resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} - - json-schema-traverse@1.0.0: - resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} - - json-stable-stringify-without-jsonify@1.0.1: - resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} - - json5@1.0.2: - resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} - hasBin: true - - json5@2.2.3: - resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} - engines: {node: '>=6'} - hasBin: true - - jsonfile@6.1.0: - resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} - - jsx-ast-utils@3.3.3: - resolution: {integrity: sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==} - engines: {node: '>=4.0'} - - juice@7.0.0: - resolution: {integrity: sha512-AjKQX31KKN+uJs+zaf+GW8mBO/f/0NqSh2moTMyvwBY+4/lXIYTU8D8I2h6BAV3Xnz6GGsbalUyFqbYMe+Vh+Q==} - engines: {node: '>=10.0.0'} - hasBin: true - - junk@3.1.0: - resolution: {integrity: sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ==} - engines: {node: '>=8'} - - jwa@2.0.0: - resolution: {integrity: sha512-jrZ2Qx916EA+fq9cEAeCROWPTfCwi1IVHqT2tapuqLEVVDKFDENFw1oL+MwrTvH6msKxsd1YTDVw6uKEcsrLEA==} - - jws@4.0.0: - resolution: {integrity: sha512-KDncfTmOZoOMTFG4mBlG0qUIOlc03fmzH+ru6RgYVZhPkyiy/92Owlt/8UEN+a4TXR1FQetfIpJE8ApdvdVxTg==} - - keygrip@1.1.0: - resolution: {integrity: sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==} - engines: {node: '>= 0.6'} - - keyv@4.5.2: - resolution: {integrity: sha512-5MHbFaKn8cNSmVW7BYnijeAVlE4cYA/SVkifVgrh7yotnfhKmjuXpDKjrABLnT0SfHWV21P8ow07OGfRrNDg8g==} - - kind-of@3.2.2: - resolution: {integrity: sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==} - engines: {node: '>=0.10.0'} - - kind-of@4.0.0: - resolution: {integrity: sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==} - engines: {node: '>=0.10.0'} - - kind-of@5.1.0: - resolution: {integrity: sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==} - engines: {node: '>=0.10.0'} - - kind-of@6.0.3: - resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} - engines: {node: '>=0.10.0'} - - klaw-sync@6.0.0: - resolution: {integrity: sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==} - - kleur@3.0.3: - resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} - engines: {node: '>=6'} - - klona@2.0.6: - resolution: {integrity: sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==} - engines: {node: '>= 8'} - - koa-bodyparser@4.3.0: - resolution: {integrity: sha512-uyV8G29KAGwZc4q/0WUAjH+Tsmuv9ImfBUF2oZVyZtaeo0husInagyn/JH85xMSxM0hEk/mbCII5ubLDuqW/Rw==} - engines: {node: '>=8.0.0'} - - koa-compose@4.1.0: - resolution: {integrity: sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw==} - - koa-convert@2.0.0: - resolution: {integrity: sha512-asOvN6bFlSnxewce2e/DK3p4tltyfC4VM7ZwuTuepI7dEQVcvpyFuBcEARu1+Hxg8DIwytce2n7jrZtRlPrARA==} - engines: {node: '>= 10'} - - koa-helmet@6.1.0: - resolution: {integrity: sha512-WymEv4qo/7ghh15t+1qTjvZBmZkmVlTtfnpe5oxn8m8mO2Q2rKJ3eMvWuQGW/6yVxN9+hQ75evuWcg3XBbFLbg==} - engines: {node: '>= 8.0.0'} - - koa-logger@3.2.1: - resolution: {integrity: sha512-MjlznhLLKy9+kG8nAXKJLM0/ClsQp/Or2vI3a5rbSQmgl8IJBQO0KI5FA70BvW+hqjtxjp49SpH2E7okS6NmHg==} - engines: {node: '>= 7.6.0'} - - koa-mount@4.0.0: - resolution: {integrity: sha512-rm71jaA/P+6HeCpoRhmCv8KVBIi0tfGuO/dMKicbQnQW/YJntJ6MnnspkodoA4QstMVEZArsCphmd0bJEtoMjQ==} - engines: {node: '>= 7.6.0'} - - koa-qs@3.0.0: - resolution: {integrity: sha512-05IB5KirwMs3heWW26iTz46HuMAtrlrRMus/aNH1BRDocLyF/099EtCB0MIfQpRuT0TISvaTsWwSy2gctIWiGA==} - engines: {node: '>= 8'} - - koa@2.14.1: - resolution: {integrity: sha512-USJFyZgi2l0wDgqkfD27gL4YGno7TfUkcmOe6UOLFOVuN+J7FwnNu4Dydl4CUQzraM1lBAiGed0M9OVJoT0Kqw==} - engines: {node: ^4.8.4 || ^6.10.1 || ^7.10.1 || >= 8.1.4} - - kuler@2.0.0: - resolution: {integrity: sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==} - - language-subtag-registry@0.3.22: - resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==} - - language-tags@1.0.5: - resolution: {integrity: sha512-qJhlO9cGXi6hBGKoxEG/sKZDAHD5Hnu9Hs4WbOY3pCWXDhw0N8x1NenNzm2EnNLkLkk7J2SdxAkDSbb6ftT+UQ==} - - lazy-universal-dotenv@3.0.1: - resolution: {integrity: sha512-prXSYk799h3GY3iOWnC6ZigYzMPjxN2svgjJ9shk7oMadSNX3wXy0B6F32PMJv7qtMnrIbUxoEHzbutvxR2LBQ==} - engines: {node: '>=6.0.0', npm: '>=6.0.0', yarn: '>=1.0.0'} - - leven@3.1.0: - resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==} - engines: {node: '>=6'} - - levn@0.3.0: - resolution: {integrity: sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==} - engines: {node: '>= 0.8.0'} - - levn@0.4.1: - resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} - engines: {node: '>= 0.8.0'} - - lilconfig@2.1.0: - resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} - engines: {node: '>=10'} - - lines-and-columns@1.2.4: - resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} - - lint-staged@13.2.0: - resolution: {integrity: sha512-GbyK5iWinax5Dfw5obm2g2ccUiZXNGtAS4mCbJ0Lv4rq6iEtfBSjOYdcbOtAIFtM114t0vdpViDDetjVTSd8Vw==} - engines: {node: ^14.13.1 || >=16.0.0} - hasBin: true - - listr2@5.0.8: - resolution: {integrity: sha512-mC73LitKHj9w6v30nLNGPetZIlfpUniNSsxxrbaPcWOjDb92SHPzJPi/t+v1YC/lxKz/AJ9egOjww0qUuFxBpA==} - engines: {node: ^14.13.1 || >=16.0.0} - peerDependencies: - enquirer: '>= 2.3.0 < 3' - peerDependenciesMeta: - enquirer: - optional: true - - load-json-file@1.1.0: - resolution: {integrity: sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A==} - engines: {node: '>=0.10.0'} - - load-json-file@4.0.0: - resolution: {integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==} - engines: {node: '>=4'} - - loader-runner@2.4.0: - resolution: {integrity: sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==} - engines: {node: '>=4.3.0 <5.0.0 || >=5.10'} - - loader-runner@4.3.0: - resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} - engines: {node: '>=6.11.5'} - - loader-utils@1.4.2: - resolution: {integrity: sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==} - engines: {node: '>=4.0.0'} - - loader-utils@2.0.4: - resolution: {integrity: sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==} - engines: {node: '>=8.9.0'} - - locate-path@3.0.0: - resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} - engines: {node: '>=6'} - - locate-path@5.0.0: - resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} - engines: {node: '>=8'} - - locate-path@6.0.0: - resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} - engines: {node: '>=10'} - - lodash-es@4.17.21: - resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} - - lodash.clone@4.5.0: - resolution: {integrity: sha512-GhrVeweiTD6uTmmn5hV/lzgCQhccwReIVRLHp7LT4SopOjqEZ5BbX8b5WWEtAKasjmy8hR7ZPwsYlxRCku5odg==} - - lodash.clonedeep@4.5.0: - resolution: {integrity: sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==} - - lodash.constant@3.0.0: - resolution: {integrity: sha512-X5XMrB+SdI1mFa81162NSTo/YNd23SLdLOLzcXTwS4inDZ5YCL8X67UFzZJAH4CqIa6R8cr56CShfA5K5MFiYQ==} - - lodash.curry@4.1.1: - resolution: {integrity: sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA==} - - lodash.debounce@4.0.8: - resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} - - lodash.filter@4.6.0: - resolution: {integrity: sha512-pXYUy7PR8BCLwX5mgJ/aNtyOvuJTdZAo9EQFUvMIYugqmJxnrYaANvTbgndOzHSCSR0wnlBBfRXJL5SbWxo3FQ==} - - lodash.flatmap@4.5.0: - resolution: {integrity: sha512-/OcpcAGWlrZyoHGeHh3cAoa6nGdX6QYtmzNP84Jqol6UEQQ2gIaU3H+0eICcjcKGl0/XF8LWOujNn9lffsnaOg==} - - lodash.flow@3.5.0: - resolution: {integrity: sha512-ff3BX/tSioo+XojX4MOsOMhJw0nZoUEF011LX8g8d3gvjVbxd89cCio4BCXronjxcTUIJUoqKEUA+n4CqvvRPw==} - - lodash.foreach@4.5.0: - resolution: {integrity: sha512-aEXTF4d+m05rVOAUG3z4vZZ4xVexLKZGF0lIxuHZ1Hplpk/3B6Z1+/ICICYRLm7c41Z2xiejbkCkJoTlypoXhQ==} - - lodash.has@4.5.2: - resolution: {integrity: sha512-rnYUdIo6xRCJnQmbVFEwcxF144erlD+M3YcJUVesflU9paQaE8p+fJDcIQrlMYbxoANFL+AB9hZrzSBBk5PL+g==} - - lodash.isempty@4.4.0: - resolution: {integrity: sha512-oKMuF3xEeqDltrGMfDxAPGIVMSSRv8tbRSODbrs4KGsRRLEhrW8N8Rd4DRgB2+621hY8A8XwwrTVhXWpxFvMzg==} - - lodash.isequal@4.5.0: - resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==} - - lodash.isfunction@3.0.9: - resolution: {integrity: sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw==} - - lodash.isundefined@3.0.1: - resolution: {integrity: sha512-MXB1is3s899/cD8jheYYE2V9qTHwKvt+npCwpD+1Sxm3Q3cECXCiYHjeHWXNwr6Q0SOBPrYUDxendrO6goVTEA==} - - lodash.keys@4.2.0: - resolution: {integrity: sha512-J79MkJcp7Df5mizHiVNpjoHXLi4HLjh9VLS/M7lQSGoQ+0oQ+lWEigREkqKyizPB1IawvQLLKY8mzEcm1tkyxQ==} - - lodash.map@4.6.0: - resolution: {integrity: sha512-worNHGKLDetmcEYDvh2stPCrrQRkP20E4l0iIS7F8EvzMqBBi7ltvFN5m1HvTf1P7Jk1txKhvFcmYsCr8O2F1Q==} - - lodash.memoize@4.1.2: - resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} - - lodash.merge@4.6.2: - resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} - - lodash.reduce@4.6.0: - resolution: {integrity: sha512-6raRe2vxCYBhpBu+B+TtNGUzah+hQjVdu3E17wfusjyrXBka2nBS8OH/gjVZ5PvHOhWmIZTYri09Z6n/QfnNMw==} - - lodash.size@4.2.0: - resolution: {integrity: sha512-wbu3SF1XC5ijqm0piNxw59yCbuUf2kaShumYBLWUrcCvwh6C8odz6SY/wGVzCWTQTFL/1Ygbvqg2eLtspUVVAQ==} - - lodash.topairs@4.3.0: - resolution: {integrity: sha512-qrRMbykBSEGdOgQLJJqVSdPWMD7Q+GJJ5jMRfQYb+LTLsw3tYVIabnCzRqTJb2WTo17PG5gNzXuFaZgYH/9SAQ==} - - lodash.transform@4.6.0: - resolution: {integrity: sha512-LO37ZnhmBVx0GvOU/caQuipEh4GN82TcWv3yHlebGDgOxbxiwwzW5Pcx2AcvpIv2WmvmSMoC492yQFNhy/l/UQ==} - - lodash.union@4.6.0: - resolution: {integrity: sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw==} - - lodash.uniq@4.5.0: - resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==} - - lodash.values@4.3.0: - resolution: {integrity: sha512-r0RwvdCv8id9TUblb/O7rYPwVy6lerCbcawrfdo9iC/1t1wsNMJknO79WNBgwkH0hIeJ08jmvvESbFpNb4jH0Q==} - - lodash@4.17.21: - resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} - - log-update@4.0.0: - resolution: {integrity: sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==} - engines: {node: '>=10'} - - logform@2.5.1: - resolution: {integrity: sha512-9FyqAm9o9NKKfiAKfZoYo9bGXXuwMkxQiQttkT4YjjVtQVIQtK6LmVtlxmCaFswo6N4AfEkHqZTV0taDtPotNg==} - - long-timeout@0.1.1: - resolution: {integrity: sha512-BFRuQUqc7x2NWxfJBCyUrN8iYUYznzL9JROmRz1gZ6KlOIgmoD+njPVbb+VNn2nGMKggMsK79iUNErillsrx7w==} - - loose-envify@1.4.0: - resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} - hasBin: true - - loud-rejection@1.6.0: - resolution: {integrity: sha512-RPNliZOFkqFumDhvYqOaNY4Uz9oJM2K9tC6JWsJJsNdhuONW4LQHRBpb0qf4pJApVffI5N39SwzWZJuEhfd7eQ==} - engines: {node: '>=0.10.0'} - - lower-case@1.1.4: - resolution: {integrity: sha512-2Fgx1Ycm599x+WGpIYwJOvsjmXFzTSc34IwDWALRA/8AopUKAVPwfJ+h5+f85BCp0PWmmJcWzEpxOpoXycMpdA==} - - lower-case@2.0.2: - resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} - - lowercase-keys@2.0.0: - resolution: {integrity: sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==} - engines: {node: '>=8'} - - lowlight@1.20.0: - resolution: {integrity: sha512-8Ktj+prEb1RoCPkEOrPMYUN/nCggB7qAWe3a7OpMjWQkh3l2RD5wKRQ+o8Q8YuI9RG/xs95waaI/E6ym/7NsTw==} - - lru-cache@4.1.5: - resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==} - - lru-cache@5.1.1: - resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} - - lru-cache@6.0.0: - resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} - engines: {node: '>=10'} - - luxon@3.3.0: - resolution: {integrity: sha512-An0UCfG/rSiqtAIiBPO0Y9/zAnHUZxAMiCpTd5h2smgsj7GGmcenvrvww2cqNA8/4A5ZrD1gJpHN2mIHZQF+Mg==} - engines: {node: '>=12'} - - make-dir@2.1.0: - resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==} - engines: {node: '>=6'} - - make-dir@3.1.0: - resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} - engines: {node: '>=8'} - - make-error@1.3.6: - resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} - - makeerror@1.0.12: - resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==} - - map-age-cleaner@0.1.3: - resolution: {integrity: sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==} - engines: {node: '>=6'} - - map-cache@0.2.2: - resolution: {integrity: sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==} - engines: {node: '>=0.10.0'} - - map-obj@1.0.1: - resolution: {integrity: sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==} - engines: {node: '>=0.10.0'} - - map-or-similar@1.5.0: - resolution: {integrity: sha512-0aF7ZmVon1igznGI4VS30yugpduQW3y3GkcgGJOp7d8x8QrizhigUxjI/m2UojsXXto+jLAH3KSz+xOJTiORjg==} - - map-visit@1.0.0: - resolution: {integrity: sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==} - engines: {node: '>=0.10.0'} - - markdown-escapes@1.0.4: - resolution: {integrity: sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==} - - match-sorter@6.3.1: - resolution: {integrity: sha512-mxybbo3pPNuA+ZuCUhm5bwNkXrJTbsk5VWbR5wiwz/GC6LIiegBGn2w3O08UG/jdbYLinw51fSQ5xNU1U3MgBw==} - - material-colors@1.2.6: - resolution: {integrity: sha512-6qE4B9deFBIa9YSpOc9O0Sgc43zTeVYbgDT5veRKSlB2+ZuHNoVVxA1L/ckMUayV9Ay9y7Z/SZCLcGteW9i7bg==} - - md5-file@5.0.0: - resolution: {integrity: sha512-xbEFXCYVWrSx/gEKS1VPlg84h/4L20znVIulKw6kMfmBUAZNAnF00eczz9ICMl+/hjQGo5KSXRxbL/47X3rmMw==} - engines: {node: '>=10.13.0'} - hasBin: true - - md5.js@1.3.5: - resolution: {integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==} - - mdast-squeeze-paragraphs@4.0.0: - resolution: {integrity: sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ==} - - mdast-util-definitions@4.0.0: - resolution: {integrity: sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==} - - mdast-util-to-hast@10.0.1: - resolution: {integrity: sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==} - - mdast-util-to-string@1.1.0: - resolution: {integrity: sha512-jVU0Nr2B9X3MU4tSK7JP1CMkSvOj7X5l/GboG1tKRw52lLF1x2Ju92Ms9tNetCcbfX3hzlM73zYo2NKkWSfF/A==} - - mdn-data@2.0.14: - resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} - - mdurl@1.0.1: - resolution: {integrity: sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==} - - media-typer@0.3.0: - resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} - engines: {node: '>= 0.6'} - - mem@8.1.1: - resolution: {integrity: sha512-qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA==} - engines: {node: '>=10'} - - memfs@3.4.13: - resolution: {integrity: sha512-omTM41g3Skpvx5dSYeZIbXKcXoAVc/AoMNwn9TKx++L/gaen/+4TTttmu8ZSch5vfVJ8uJvGbroTsIlslRg6lg==} - engines: {node: '>= 4.0.0'} - - memoizerific@1.11.3: - resolution: {integrity: sha512-/EuHYwAPdLtXwAwSZkh/Gutery6pD2KYd44oQLhAvQp/50mpyduZh8Q7PYHXTCJ+wuXxt7oij2LXyIJOOYFPog==} - - memory-fs@0.4.1: - resolution: {integrity: sha512-cda4JKCxReDXFXRqOHPQscuIYg1PvxbE2S2GP45rnwfEK+vZaXC8C1OFvdHIbgw0DLzowXGVoxLaAmlgRy14GQ==} - - memory-fs@0.5.0: - resolution: {integrity: sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==} - engines: {node: '>=4.3.0 <5.0.0 || >=5.10'} - - memory-pager@1.5.0: - resolution: {integrity: sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==} - - memorystream@0.3.1: - resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==} - engines: {node: '>= 0.10.0'} - - mensch@0.3.4: - resolution: {integrity: sha512-IAeFvcOnV9V0Yk+bFhYR07O3yNina9ANIN5MoXBKYJ/RLYPurd2d0yw14MDhpr9/momp0WofT1bPUh3hkzdi/g==} - - meow@3.7.0: - resolution: {integrity: sha512-TNdwZs0skRlpPpCUK25StC4VH+tP5GgeY1HQOOGP+lQ2xtdkN2VtT/5tiX9k3IWpkBPV9b3LsAWXn4GGi/PrSA==} - engines: {node: '>=0.10.0'} - - merge-descriptors@1.0.1: - resolution: {integrity: sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==} - - merge-stream@2.0.0: - resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} - - merge2@1.4.1: - resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} - engines: {node: '>= 8'} - - methods@1.1.2: - resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} - engines: {node: '>= 0.6'} - - microevent.ts@0.1.1: - resolution: {integrity: sha512-jo1OfR4TaEwd5HOrt5+tAZ9mqT4jmpNAusXtyfNzqVm9uiSYFZlKM1wYL4oU7azZW/PxQW53wM0S6OR1JHNa2g==} - - micromatch@3.1.10: - resolution: {integrity: sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==} - engines: {node: '>=0.10.0'} - - micromatch@4.0.5: - resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} - engines: {node: '>=8.6'} - - microseconds@0.2.0: - resolution: {integrity: sha512-n7DHHMjR1avBbSpsTBj6fmMGh2AGrifVV4e+WYc3Q9lO+xnSZ3NyhcBND3vzzatt05LFhoKFRxrIyklmLlUtyA==} - - miller-rabin@4.0.1: - resolution: {integrity: sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==} - hasBin: true - - mime-db@1.52.0: - resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} - engines: {node: '>= 0.6'} - - mime-types@2.1.35: - resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} - engines: {node: '>= 0.6'} - - mime@1.6.0: - resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==} - engines: {node: '>=4'} - hasBin: true - - mime@2.6.0: - resolution: {integrity: sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==} - engines: {node: '>=4.0.0'} - hasBin: true - - mimic-fn@2.1.0: - resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} - engines: {node: '>=6'} - - mimic-fn@3.1.0: - resolution: {integrity: sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==} - engines: {node: '>=8'} - - mimic-fn@4.0.0: - resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} - engines: {node: '>=12'} - - mimic-response@1.0.1: - resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==} - engines: {node: '>=4'} - - mimic-response@2.1.0: - resolution: {integrity: sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==} - engines: {node: '>=8'} - - mimic-response@3.1.0: - resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} - engines: {node: '>=10'} - - min-document@2.19.0: - resolution: {integrity: sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ==} - - min-indent@1.0.1: - resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} - engines: {node: '>=4'} - - minim@0.23.8: - resolution: {integrity: sha512-bjdr2xW1dBCMsMGGsUeqM4eFI60m94+szhxWys+B1ztIt6gWSfeGBdSVCIawezeHYLYn0j6zrsXdQS/JllBzww==} - engines: {node: '>=6'} - - minimalistic-assert@1.0.1: - resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} - - minimalistic-crypto-utils@1.0.1: - resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==} - - minimatch@3.1.2: - resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} - - minimatch@5.1.6: - resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} - engines: {node: '>=10'} - - minimatch@7.4.3: - resolution: {integrity: sha512-5UB4yYusDtkRPbRiy1cqZ1IpGNcJCGlEMG17RKzPddpyiPKoCdwohbED8g4QXT0ewCt8LTkQXuljsUfQ3FKM4A==} - engines: {node: '>=10'} - - minimist@1.2.8: - resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} - - minipass-collect@1.0.2: - resolution: {integrity: sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==} - engines: {node: '>= 8'} - - minipass-flush@1.0.5: - resolution: {integrity: sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==} - engines: {node: '>= 8'} - - minipass-pipeline@1.2.4: - resolution: {integrity: sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==} - engines: {node: '>=8'} - - minipass@3.3.6: - resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} - engines: {node: '>=8'} - - minipass@4.0.3: - resolution: {integrity: sha512-OW2r4sQ0sI+z5ckEt5c1Tri4xTgZwYDxpE54eqWlQloQRoWtXjqt9udJ5Z4dSv7wK+nfFI7FRXyCpBSft+gpFw==} - engines: {node: '>=8'} - - minizlib@2.1.2: - resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} - engines: {node: '>= 8'} - - mississippi@3.0.0: - resolution: {integrity: sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==} - engines: {node: '>=4.0.0'} - - mixin-deep@1.3.2: - resolution: {integrity: sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==} - engines: {node: '>=0.10.0'} - - mixpanel-browser@2.45.0: - resolution: {integrity: sha512-PQ1DaTk68yyYtLA0iejmzPA9iNDhT4uIZpqZjRTw7HWpYfl123fydHb2laKanaKjm8YDmrGGz3+xZ4Q6joogyg==} - - mixpanel@0.17.0: - resolution: {integrity: sha512-DY5WeOy/hmkPrNiiZugJpWR0iMuOwuj1a3u0bgwB2eUFRV6oIew/pIahhpawdbNjb+Bye4a8ID3gefeNPvL81g==} - engines: {node: '>=10.0'} - - mjml-accordion@4.13.0: - resolution: {integrity: sha512-E3yihZW5Oq2p+sWOcr8kWeRTROmiTYOGxB4IOxW/jTycdY07N3FX3e6vuh7Fv3rryHEUaydUQYto3ICVyctI7w==} - - mjml-body@4.13.0: - resolution: {integrity: sha512-S4HgwAuO9dEsyX9sr6WBf9/xr+H2ASVaLn22aurJm1S2Lvc1wifLPYBQgFmNdCjaesTCNtOMUDpG+Rbnavyaqg==} - - mjml-button@4.13.0: - resolution: {integrity: sha512-3y8IAHCCxh7ESHh1aOOqobZKUgyNxOKAGQ9TlJoyaLpsKUFzkN8nmrD0KXF0ADSuzvhMZ1CdRIJuZ5mjv2TwWQ==} - - mjml-carousel@4.13.0: - resolution: {integrity: sha512-ORSY5bEYlMlrWSIKI/lN0Tz3uGltWAjG8DQl2Yr3pwjwOaIzGE+kozrDf+T9xItfiIIbvKajef1dg7B7XgP0zg==} - - mjml-cli@4.13.0: - resolution: {integrity: sha512-kAZxpH0QqlTF/CcLzELgKw1ljKRxrmWJ310CJQhbPAxHvwQ/nIb+q82U+zRJAelRPPKjnOb+hSrMRqTgk9rH3w==} - hasBin: true - - mjml-column@4.13.0: - resolution: {integrity: sha512-O8FrWKK/bCy9XpKxrKRYWNdgWNaVd4TK4RqMeVI/I70IbnYnc1uf15jnsPMxCBSbT+NyXyk8k7fn099797uwpw==} - - mjml-core@4.13.0: - resolution: {integrity: sha512-kU5AoVTlZaXR/EDi3ix66xpzUe+kScYus71lBH/wo/B+LZW70GHE1AYWtsog5oJp1MuTHpMFTNuBD/wePeEgWg==} - - mjml-divider@4.13.0: - resolution: {integrity: sha512-ooPCwfmxEC+wJduqObYezMp7W5UCHjL9Y1LPB5FGna2FrOejgfd6Ix3ij8Wrmycmlol7E2N4D7c5NDH5DbRCJg==} - - mjml-group@4.13.0: - resolution: {integrity: sha512-U7E8m8aaoAE/dMqjqXPjjrKcwO36B4cquAy9ASldECrIZJBcpFYO6eYf5yLXrNCUM2P0id8pgVjrUq23s00L7Q==} - - mjml-head-attributes@4.13.0: - resolution: {integrity: sha512-haggCafno+0lQylxJStkINCVCPMwfTpwE6yjCHeGOpQl/TkoNmjNkDr7DEEbNTZbt4Ekg070lQFn7clDy38EoA==} - - mjml-head-breakpoint@4.13.0: - resolution: {integrity: sha512-D2iPDeUKQK1+rYSNa2HGOvgfPxZhNyndTG0iBEb/FxdGge2hbeDCZEN0mwDYE3wWB+qSBqlCuMI+Vr4pEjZbKg==} - - mjml-head-font@4.13.0: - resolution: {integrity: sha512-mYn8aWnbrEap5vX2b4662hkUv6WifcYzYn++Yi6OHrJQi55LpzcU+myAGpfQEXXrpU8vGwExMTFKsJq5n2Kaow==} - - mjml-head-html-attributes@4.13.0: - resolution: {integrity: sha512-m30Oro297+18Zou/1qYjagtmCOWtYXeoS38OABQ5zOSzMItE3TcZI9JNcOueIIWIyFCETe8StrTAKcQ2GHwsDw==} - - mjml-head-preview@4.13.0: - resolution: {integrity: sha512-v0K/NocjFCbaoF/0IMVNmiqov91HxqT07vNTEl0Bt9lKFrTKVC01m1S4K7AB78T/bEeJ/HwmNjr1+TMtVNGGow==} - - mjml-head-style@4.13.0: - resolution: {integrity: sha512-tBa33GL9Atn5bAM2UwE+uxv4rI29WgX/e5lXX+5GWlsb4thmiN6rxpFTNqBqWbBNRbZk4UEZF78M7Da8xC1ZGQ==} - - mjml-head-title@4.13.0: - resolution: {integrity: sha512-Mq0bjuZXJlwxfVcjuYihQcigZSDTKeQaG3nORR1D0jsOH2BXU4XgUK1UOcTXn2qCBIfRoIMq7rfzYs+L0CRhdw==} - - mjml-head@4.13.0: - resolution: {integrity: sha512-sL2qQuoVALXBCiemu4DPo9geDr8DuUdXVJxm+4nd6k5jpLCfSDmFlNhgSsLPzsYn7VEac3/sxsjLtomQ+6/BHg==} - - mjml-hero@4.13.0: - resolution: {integrity: sha512-aWEOScdrhyjwdKBWG4XQaElRHP8LU5PtktkpMeBXa4yxrxNs25qRnDqMNkjSrnnmFKWZmQ166tfboY6RBNf0UA==} - - mjml-image@4.13.0: - resolution: {integrity: sha512-agMmm2wRZTIrKwrUnYFlnAbtrKYSP0R2en+Vf92HPspAwmaw3/AeOW/QxmSiMhfGf+xsEJyzVvR/nd33jbT3sg==} - - mjml-migrate@4.13.0: - resolution: {integrity: sha512-I1euHiAyNpaz+B5vH+Z4T+hg/YtI5p3PqQ3/zTLv8gi24V6BILjTaftWhH5+3R/gQkQhH0NUaWNnRmds+Mq5DQ==} - hasBin: true - - mjml-navbar@4.13.0: - resolution: {integrity: sha512-0Oqyyk+OdtXfsjswRb/7Ql1UOjN4MbqFPKoyltJqtj+11MRpF5+Wjd74Dj9H7l81GFwkIB9OaP+ZMiD+TPECgg==} - - mjml-parser-xml@4.13.0: - resolution: {integrity: sha512-phljtI8DaW++q0aybR/Ykv9zCyP/jCFypxVNo26r2IQo//VYXyc7JuLZZT8N/LAI8lZcwbTVxQPBzJTmZ5IfwQ==} - - mjml-preset-core@4.13.0: - resolution: {integrity: sha512-gxzYaKkvUrHuzT1oqjEPSDtdmgEnN99Hf5f1r2CR5aMOB1x66EA3T8ATvF1o7qrBTVV4KMVlQem3IubMSYJZRw==} - - mjml-raw@4.13.0: - resolution: {integrity: sha512-JbBYxwX1a/zbqnCrlDCRNqov2xqUrMCaEdTHfqE2athj479aQXvLKFM20LilTMaClp/dR0yfvFLfFVrC5ej4FQ==} - - mjml-section@4.13.0: - resolution: {integrity: sha512-BLcqlhavtRakKtzDQPLv6Ae4Jt4imYWq/P0jo+Sjk7tP4QifgVA2KEQOirPK5ZUqw/lvK7Afhcths5rXZ2ItnQ==} - - mjml-social@4.13.0: - resolution: {integrity: sha512-zL2a7Wwsk8OXF0Bqu+1B3La1UPwdTMcEXptO8zdh2V5LL6Xb7Gfyvx6w0CmmBtG5IjyCtqaKy5wtrcpG9Hvjfg==} - - mjml-spacer@4.13.0: - resolution: {integrity: sha512-Acw4QJ0MJ38W4IewXuMX7hLaW1BZaln+gEEuTfrv0xwPdTxX1ILqz4r+s9mYMxYkIDLWMCjBvXyQK6aWlid13A==} - - mjml-table@4.13.0: - resolution: {integrity: sha512-UAWPVMaGReQhf776DFdiwdcJTIHTek3zzQ1pb+E7VlypEYgIpFvdUJ39UIiiflhqtdBATmHwKBOtePwU0MzFMg==} - - mjml-text@4.13.0: - resolution: {integrity: sha512-uDuraaQFdu+6xfuigCimbeznnOnJfwRdcCL1lTBTusTuEvW/5Va6m2D3mnMeEpl+bp4+cxesXIz9st6A9pcg5A==} - - mjml-validator@4.13.0: - resolution: {integrity: sha512-uURYfyQYtHJ6Qz/1A7/+E9ezfcoISoLZhYK3olsxKRViwaA2Mm8gy/J3yggZXnsUXWUns7Qymycm5LglLEIiQg==} - - mjml-wrapper@4.13.0: - resolution: {integrity: sha512-p/44JvHg04rAFR7QDImg8nZucEokIjFH6KJMHxsO0frJtLZ+IuakctzlZAADHsqiR52BwocDsXSa+o9SE2l6Ng==} - - mjml@4.13.0: - resolution: {integrity: sha512-OnFKESouLshz8DPFSb6M/dE8GkhiJnoy6LAam5TiLA1anAj24yQ2ZH388LtQoEkvTisqwiTmc9ejDh5ctnFaJQ==} - hasBin: true - - mkdirp-classic@0.5.3: - resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} - - mkdirp@0.5.6: - resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} - hasBin: true - - mkdirp@1.0.4: - resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} - engines: {node: '>=10'} - hasBin: true - - module-alias@2.2.2: - resolution: {integrity: sha512-A/78XjoX2EmNvppVWEhM2oGk3x4lLxnkEA4jTbaK97QKSDjkIoOsKQlfylt/d3kKKi596Qy3NP5XrXJ6fZIC9Q==} - - moment-duration-format@2.3.2: - resolution: {integrity: sha512-cBMXjSW+fjOb4tyaVHuaVE/A5TqkukDWiOfxxAjY+PEqmmBQlLwn+8OzwPiG3brouXKY5Un4pBjAeB6UToXHaQ==} - - moment@2.29.4: - resolution: {integrity: sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==} - - mongodb-connection-string-url@2.6.0: - resolution: {integrity: sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==} - - mongodb-memory-server-core@8.11.5: - resolution: {integrity: sha512-bhptlOruCEYrLofCbjACMoClgP1rFkhSNDzI/bbG/pUAg41UB00eaDPerYVvRf2jvOJqKF4+U9xqXiSvkbMvXw==} - engines: {node: '>=12.22.0'} - - mongodb-memory-server-core@8.12.0: - resolution: {integrity: sha512-p+4DbwMJAUqwv15w+WSFkFsGI9zjaUT0BJ1xkQd7sNkO8c9+3Ch5ZCH9AoTzbnNcvqHXj4rpj3VRJb8EZNMT3g==} - engines: {node: '>=12.22.0'} - - mongodb-memory-server@8.11.5: - resolution: {integrity: sha512-/yiw3L2TIMpi9I6GXg379k6d+RG3k+9V9o24kK5h+NBTtYLNuWa5iEvtce/O3jqhg6yo31T5XG2e/Hm4UwBM1A==} - engines: {node: '>=12.22.0'} - - mongodb-memory-server@8.12.0: - resolution: {integrity: sha512-F5BLfliNiLK4FwpXbh4+F3UjvIHVq/G9GPob+xJMLWywRfSfH23cLPEmPuqqqPpOI/ROztUdaeAz8sn6U74kuQ==} - engines: {node: '>=12.22.0'} - - mongodb@4.10.0: - resolution: {integrity: sha512-My2QxLTw0Cc1O9gih0mz4mqo145Jq4rLAQx0Glk/Ha9iYBzYpt4I2QFNRIh35uNFNfe8KFQcdwY1/HKxXBkinw==} - engines: {node: '>=12.9.0'} - - mongodb@4.14.0: - resolution: {integrity: sha512-coGKkWXIBczZPr284tYKFLg+KbGPPLlSbdgfKAb6QqCFt5bo5VFZ50O3FFzsw4rnkqjwT6D8Qcoo9nshYKM7Mg==} - engines: {node: '>=12.9.0'} - - move-concurrently@1.0.1: - resolution: {integrity: sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ==} - - ms@2.0.0: - resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} - - ms@2.1.1: - resolution: {integrity: sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==} - - ms@2.1.2: - resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} - - ms@2.1.3: - resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - - multer@1.4.5-lts.1: - resolution: {integrity: sha512-ywPWvcDMeH+z9gQq5qYHCCy+ethsk4goepZ45GLD63fOu0YcNecQxi64nDs3qluZB+murG3/D4dJ7+dGctcCQQ==} - engines: {node: '>= 6.0.0'} - - multipipe@1.0.2: - resolution: {integrity: sha512-6uiC9OvY71vzSGX8lZvSqscE7ft9nPupJ8fMjrCNRAUy2LREUW42UL+V/NTrogr6rFgRydUrCX4ZitfpSNkSCQ==} - - nan@2.17.0: - resolution: {integrity: sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==} - - nano-time@1.0.0: - resolution: {integrity: sha512-flnngywOoQ0lLQOTRNexn2gGSNuM9bKj9RZAWSzhQ+UJYaAFG9bac4DW9VHjUAzrOaIcajHybCTHe/bkvozQqA==} - - nanoid@3.3.4: - resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==} - engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} - hasBin: true - - nanomatch@1.2.13: - resolution: {integrity: sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==} - engines: {node: '>=0.10.0'} - - napi-build-utils@1.0.2: - resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==} - - natural-compare-lite@1.4.0: - resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} - - natural-compare@1.4.0: - resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} - - nearest-color@0.4.4: - resolution: {integrity: sha512-orhcaIORC10tf41Ld2wwlcC+FaAavHG87JHWB3eHH5p7v2k9Tzym2XNEZzLAm5YJwGv6Q38WWc7SOb+Qfu/4NQ==} - - negotiator@0.6.3: - resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} - engines: {node: '>= 0.6'} - - neo-async@2.6.2: - resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} - - nested-error-stacks@2.1.1: - resolution: {integrity: sha512-9iN1ka/9zmX1ZvLV9ewJYEk9h7RyRRtqdK0woXcqohu8EWIerfPUjYJPg0ULy0UqP7cslmdGc8xKDJcojlKiaw==} - - new-find-package-json@2.0.0: - resolution: {integrity: sha512-lDcBsjBSMlj3LXH2v/FW3txlh2pYTjmbOXPYJD93HI5EwuLzI11tdHSIpUMmfq/IOsldj4Ps8M8flhm+pCK4Ew==} - engines: {node: '>=12.22.0'} - - next@13.2.4: - resolution: {integrity: sha512-g1I30317cThkEpvzfXujf0O4wtaQHtDCLhlivwlTJ885Ld+eOgcz7r3TGQzeU+cSRoNHtD8tsJgzxVdYojFssw==} - engines: {node: '>=14.6.0'} - hasBin: true - peerDependencies: - '@opentelemetry/api': ^1.4.0 - fibers: '>= 3.1.0' - node-sass: ^6.0.0 || ^7.0.0 - react: ^18.2.0 - react-dom: ^18.2.0 - sass: ^1.3.0 - peerDependenciesMeta: - '@opentelemetry/api': - optional: true - fibers: - optional: true - node-sass: - optional: true - sass: - optional: true - - nice-try@1.0.5: - resolution: {integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==} - - no-case@2.3.2: - resolution: {integrity: sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==} - - no-case@3.0.4: - resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} - - node-abi@2.30.1: - resolution: {integrity: sha512-/2D0wOQPgaUWzVSVgRMx+trKJRC2UG4SUc4oCJoXx9Uxjtp0Vy3/kt7zcbxHF8+Z/pK3UloLWzBISg72brfy1w==} - - node-dir@0.1.17: - resolution: {integrity: sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg==} - engines: {node: '>= 0.10.5'} - - node-domexception@1.0.0: - resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==} - engines: {node: '>=10.5.0'} - - node-fetch@2.6.7: - resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==} - engines: {node: 4.x || >=6.0.0} - peerDependencies: - encoding: ^0.1.0 - peerDependenciesMeta: - encoding: - optional: true - - node-fetch@2.6.9: - resolution: {integrity: sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==} - engines: {node: 4.x || >=6.0.0} - peerDependencies: - encoding: ^0.1.0 - peerDependenciesMeta: - encoding: - optional: true - - node-forge@1.3.1: - resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==} - engines: {node: '>= 6.13.0'} - - node-int64@0.4.0: - resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==} - - node-libs-browser@2.2.1: - resolution: {integrity: sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==} - - node-releases@2.0.10: - resolution: {integrity: sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==} - - node-schedule@2.1.1: - resolution: {integrity: sha512-OXdegQq03OmXEjt2hZP33W2YPs/E5BcFQks46+G2gAxs4gHOIVD1u7EqlYLYSKsaIpyKCK9Gbk0ta1/gjRSMRQ==} - engines: {node: '>=6'} - - node.extend@2.0.2: - resolution: {integrity: sha512-pDT4Dchl94/+kkgdwyS2PauDFjZG0Hk0IcHIB+LkW27HLDtdoeMxHTxZh39DYbPP8UflWXWj9JcdDozF+YDOpQ==} - engines: {node: '>=0.4.0'} - - nodemon@2.0.21: - resolution: {integrity: sha512-djN/n2549DUtY33S7o1djRCd7dEm0kBnj9c7S9XVXqRUbuggN1MZH/Nqa+5RFQr63Fbefq37nFXAE9VU86yL1A==} - engines: {node: '>=8.10.0'} - hasBin: true - - nopt@1.0.10: - resolution: {integrity: sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg==} - hasBin: true - - nopt@6.0.0: - resolution: {integrity: sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==} - engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} - hasBin: true - - normalize-package-data@2.5.0: - resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} - - normalize-path@2.1.1: - resolution: {integrity: sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==} - engines: {node: '>=0.10.0'} - - normalize-path@3.0.0: - resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} - engines: {node: '>=0.10.0'} - - normalize-range@0.1.2: - resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} - engines: {node: '>=0.10.0'} - - normalize-url@6.1.0: - resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==} - engines: {node: '>=10'} - - notepack.io@3.0.1: - resolution: {integrity: sha512-TKC/8zH5pXIAMVQio2TvVDTtPRX+DJPHDqjRbxogtFiByHyzKmy96RA0JtCQJ+WouyyL4A10xomQzgbUT+1jCg==} - - npm-run-all@4.1.5: - resolution: {integrity: sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==} - engines: {node: '>= 4'} - hasBin: true - - npm-run-path@2.0.2: - resolution: {integrity: sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw==} - engines: {node: '>=4'} - - npm-run-path@4.0.1: - resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} - engines: {node: '>=8'} - - npm-run-path@5.1.0: - resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - npm@9.6.1: - resolution: {integrity: sha512-0H8CVfQmclQydUfM+WNhx4WY4sGNFC2+JsFMyaludklz8vL+tWqIB1oAXh+12yb8uta9y5p8fbc2f1d18aU6cQ==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - hasBin: true - bundledDependencies: - - '@isaacs/string-locale-compare' - - '@npmcli/arborist' - - '@npmcli/config' - - '@npmcli/map-workspaces' - - '@npmcli/package-json' - - '@npmcli/run-script' - - abbrev - - archy - - cacache - - chalk - - ci-info - - cli-columns - - cli-table3 - - columnify - - fastest-levenshtein - - fs-minipass - - glob - - graceful-fs - - hosted-git-info - - ini - - init-package-json - - is-cidr - - json-parse-even-better-errors - - libnpmaccess - - libnpmdiff - - libnpmexec - - libnpmfund - - libnpmhook - - libnpmorg - - libnpmpack - - libnpmpublish - - libnpmsearch - - libnpmteam - - libnpmversion - - make-fetch-happen - - minimatch - - minipass - - minipass-pipeline - - ms - - node-gyp - - nopt - - npm-audit-report - - npm-install-checks - - npm-package-arg - - npm-pick-manifest - - npm-profile - - npm-registry-fetch - - npm-user-validate - - npmlog - - p-map - - pacote - - parse-conflict-json - - proc-log - - qrcode-terminal - - read - - read-package-json - - read-package-json-fast - - semver - - ssri - - tar - - text-table - - tiny-relative-date - - treeverse - - validate-npm-package-name - - which - - write-file-atomic - - npmlog@4.1.2: - resolution: {integrity: sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==} - - npmlog@5.0.1: - resolution: {integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==} - - nth-check@2.1.1: - resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} - - num2fraction@1.2.2: - resolution: {integrity: sha512-Y1wZESM7VUThYY+4W+X4ySH2maqcA+p7UR+w8VWNWVAd6lwuXXWz/w/Cz43J/dI2I+PS6wD5N+bJUF+gjWvIqg==} - - number-is-nan@1.0.1: - resolution: {integrity: sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==} - engines: {node: '>=0.10.0'} - - object-assign@4.1.1: - resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} - engines: {node: '>=0.10.0'} - - object-copy@0.1.0: - resolution: {integrity: sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==} - engines: {node: '>=0.10.0'} - - object-hash@3.0.0: - resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} - engines: {node: '>= 6'} - - object-inspect@1.12.3: - resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} - - object-is@1.1.5: - resolution: {integrity: sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==} - engines: {node: '>= 0.4'} - - object-keys@0.4.0: - resolution: {integrity: sha512-ncrLw+X55z7bkl5PnUvHwFK9FcGuFYo9gtjws2XtSzL+aZ8tm830P60WJ0dSmFVaSalWieW5MD7kEdnXda9yJw==} - - object-keys@1.1.1: - resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} - engines: {node: '>= 0.4'} - - object-visit@1.0.1: - resolution: {integrity: sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==} - engines: {node: '>=0.10.0'} - - object.assign@4.1.4: - resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} - engines: {node: '>= 0.4'} - - object.entries@1.1.6: - resolution: {integrity: sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==} - engines: {node: '>= 0.4'} - - object.fromentries@2.0.6: - resolution: {integrity: sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==} - engines: {node: '>= 0.4'} - - object.getownpropertydescriptors@2.1.5: - resolution: {integrity: sha512-yDNzckpM6ntyQiGTik1fKV1DcVDRS+w8bvpWNCBanvH5LfRX9O8WTHqQzG4RZwRAM4I0oU7TV11Lj5v0g20ibw==} - engines: {node: '>= 0.8'} - - object.hasown@1.1.2: - resolution: {integrity: sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==} - - object.pick@1.3.0: - resolution: {integrity: sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==} - engines: {node: '>=0.10.0'} - - object.values@1.1.6: - resolution: {integrity: sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==} - engines: {node: '>= 0.4'} - - objectorarray@1.0.5: - resolution: {integrity: sha512-eJJDYkhJFFbBBAxeh8xW+weHlkI28n2ZdQV/J/DNfWfSKlGEf2xcfAbZTv3riEXHAhL9SVOTs2pRmXiSTf78xg==} - - oblivious-set@1.0.0: - resolution: {integrity: sha512-z+pI07qxo4c2CulUHCDf9lcqDlMSo72N/4rLUpRXf6fu+q8vjt8y0xS+Tlf8NTJDdTXHbdeO1n3MlbctwEoXZw==} - - on-finished@2.4.1: - resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} - engines: {node: '>= 0.8'} - - on-headers@1.0.2: - resolution: {integrity: sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==} - engines: {node: '>= 0.8'} - - once@1.3.3: - resolution: {integrity: sha512-6vaNInhu+CHxtONf3zw3vq4SP2DOQhjBvIa3rNcG0+P7eKWlYH6Peu7rHizSloRU2EwMz6GraLieis9Ac9+p1w==} - - once@1.4.0: - resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} - - one-time@1.0.0: - resolution: {integrity: sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==} - - onetime@5.1.2: - resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} - engines: {node: '>=6'} - - onetime@6.0.0: - resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} - engines: {node: '>=12'} - - only@0.0.2: - resolution: {integrity: sha512-Fvw+Jemq5fjjyWz6CpKx6w9s7xxqo3+JCyM0WXWeCSOboZ8ABkyvP8ID4CZuChA/wxSx+XSJmdOm8rGVyJ1hdQ==} - - open@7.4.2: - resolution: {integrity: sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==} - engines: {node: '>=8'} - - open@8.4.2: - resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==} - engines: {node: '>=12'} - - openapi3-ts@3.2.0: - resolution: {integrity: sha512-/ykNWRV5Qs0Nwq7Pc0nJ78fgILvOT/60OxEmB3v7yQ8a8Bwcm43D4diaYazG/KBn6czA+52XYy931WFLMCUeSg==} - - optionator@0.8.3: - resolution: {integrity: sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==} - engines: {node: '>= 0.8.0'} - - optionator@0.9.1: - resolution: {integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==} - engines: {node: '>= 0.8.0'} - - os-browserify@0.3.0: - resolution: {integrity: sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==} - - os-homedir@1.0.2: - resolution: {integrity: sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==} - engines: {node: '>=0.10.0'} - - os-tmpdir@1.0.2: - resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} - engines: {node: '>=0.10.0'} - - p-all@2.1.0: - resolution: {integrity: sha512-HbZxz5FONzz/z2gJfk6bFca0BCiSRF8jU3yCsWOen/vR6lZjfPOu/e7L3uFzTW1i0H8TlC3vqQstEJPQL4/uLA==} - engines: {node: '>=6'} - - p-cancelable@2.1.1: - resolution: {integrity: sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==} - engines: {node: '>=8'} - - p-defer@1.0.0: - resolution: {integrity: sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw==} - engines: {node: '>=4'} - - p-event@4.2.0: - resolution: {integrity: sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==} - engines: {node: '>=8'} - - p-filter@2.1.0: - resolution: {integrity: sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==} - engines: {node: '>=8'} - - p-finally@1.0.0: - resolution: {integrity: sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==} - engines: {node: '>=4'} - - p-limit@2.3.0: - resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} - engines: {node: '>=6'} - - p-limit@3.1.0: - resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} - engines: {node: '>=10'} - - p-locate@3.0.0: - resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==} - engines: {node: '>=6'} - - p-locate@4.1.0: - resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} - engines: {node: '>=8'} - - p-locate@5.0.0: - resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} - engines: {node: '>=10'} - - p-map@2.1.0: - resolution: {integrity: sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==} - engines: {node: '>=6'} - - p-map@3.0.0: - resolution: {integrity: sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==} - engines: {node: '>=8'} - - p-map@4.0.0: - resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} - engines: {node: '>=10'} - - p-timeout@3.2.0: - resolution: {integrity: sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==} - engines: {node: '>=8'} - - p-try@2.2.0: - resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} - engines: {node: '>=6'} - - packageurl-js@1.0.1: - resolution: {integrity: sha512-EtXC0kgLjy/C7S4SN3Kk1SDRWLzIn/LUK0gXlz3gsxDdpI0k7q8C3SASpV0pc+v0yADBTt5rWewq/flGdGxtoQ==} - - pako@1.0.11: - resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==} - - parallel-transform@1.2.0: - resolution: {integrity: sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==} - - param-case@2.1.1: - resolution: {integrity: sha512-eQE845L6ot89sk2N8liD8HAuH4ca6Vvr7VWAWwt7+kvvG5aBcPmmphQ68JsEG2qa9n1TykS2DLeMt363AAH8/w==} - - param-case@3.0.4: - resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==} - - parent-module@1.0.1: - resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} - engines: {node: '>=6'} - - parse-asn1@5.1.6: - resolution: {integrity: sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==} - - parse-entities@2.0.0: - resolution: {integrity: sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==} - - parse-json@2.2.0: - resolution: {integrity: sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==} - engines: {node: '>=0.10.0'} - - parse-json@4.0.0: - resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==} - engines: {node: '>=4'} - - parse-json@5.2.0: - resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} - engines: {node: '>=8'} - - parse5-htmlparser2-tree-adapter@6.0.1: - resolution: {integrity: sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==} - - parse5@6.0.1: - resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==} - - parseurl@1.3.3: - resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} - engines: {node: '>= 0.8'} - - pascal-case@3.1.2: - resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==} - - pascalcase@0.1.1: - resolution: {integrity: sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==} - engines: {node: '>=0.10.0'} - - passthrough-counter@1.0.0: - resolution: {integrity: sha512-Wy8PXTLqPAN0oEgBrlnsXPMww3SYJ44tQ8aVrGAI4h4JZYCS0oYqsPqtPR8OhJpv6qFbpbB7XAn0liKV7EXubA==} - - patch-package@6.5.1: - resolution: {integrity: sha512-I/4Zsalfhc6bphmJTlrLoOcAF87jcxko4q0qsv4bGcurbr8IskEOtdnt9iCmsQVGL1B+iUhSQqweyTLJfCF9rA==} - engines: {node: '>=10', npm: '>5'} - hasBin: true - - path-browserify@0.0.1: - resolution: {integrity: sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==} - - path-browserify@1.0.1: - resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} - - path-dirname@1.0.2: - resolution: {integrity: sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==} - - path-exists@2.1.0: - resolution: {integrity: sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==} - engines: {node: '>=0.10.0'} - - path-exists@3.0.0: - resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} - engines: {node: '>=4'} - - path-exists@4.0.0: - resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} - engines: {node: '>=8'} - - path-is-absolute@1.0.1: - resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} - engines: {node: '>=0.10.0'} - - path-key@2.0.1: - resolution: {integrity: sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==} - engines: {node: '>=4'} - - path-key@3.1.1: - resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} - engines: {node: '>=8'} - - path-key@4.0.0: - resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} - engines: {node: '>=12'} - - path-parse@1.0.7: - resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} - - path-to-regexp@0.1.7: - resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==} - - path-to-regexp@6.2.1: - resolution: {integrity: sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==} - - path-type@1.1.0: - resolution: {integrity: sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg==} - engines: {node: '>=0.10.0'} - - path-type@3.0.0: - resolution: {integrity: sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==} - engines: {node: '>=4'} - - path-type@4.0.0: - resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} - engines: {node: '>=8'} - - pbkdf2@3.1.2: - resolution: {integrity: sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==} - engines: {node: '>=0.12'} - - pend@1.2.0: - resolution: {integrity: sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==} - - picocolors@0.2.1: - resolution: {integrity: sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==} - - picocolors@1.0.0: - resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} - - picomatch@2.3.1: - resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} - engines: {node: '>=8.6'} - - pidtree@0.3.1: - resolution: {integrity: sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==} - engines: {node: '>=0.10'} - hasBin: true - - pidtree@0.6.0: - resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==} - engines: {node: '>=0.10'} - hasBin: true - - pify@2.3.0: - resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} - engines: {node: '>=0.10.0'} - - pify@3.0.0: - resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==} - engines: {node: '>=4'} - - pify@4.0.1: - resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} - engines: {node: '>=6'} - - pinkie-promise@2.0.1: - resolution: {integrity: sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==} - engines: {node: '>=0.10.0'} - - pinkie@2.0.4: - resolution: {integrity: sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==} - engines: {node: '>=0.10.0'} - - pirates@4.0.5: - resolution: {integrity: sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==} - engines: {node: '>= 6'} - - pkg-dir@3.0.0: - resolution: {integrity: sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==} - engines: {node: '>=6'} - - pkg-dir@4.2.0: - resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} - engines: {node: '>=8'} - - pkg-dir@5.0.0: - resolution: {integrity: sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==} - engines: {node: '>=10'} - - pluralize@7.0.0: - resolution: {integrity: sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==} - engines: {node: '>=4'} - - pnp-webpack-plugin@1.6.4: - resolution: {integrity: sha512-7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg==} - engines: {node: '>=6'} - - polished@4.2.2: - resolution: {integrity: sha512-Sz2Lkdxz6F2Pgnpi9U5Ng/WdWAUZxmHrNPoVlm3aAemxoy2Qy7LGjQg4uf8qKelDAUW94F4np3iH2YPf2qefcQ==} - engines: {node: '>=10'} - - posix-character-classes@0.1.1: - resolution: {integrity: sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==} - engines: {node: '>=0.10.0'} - - postcss-flexbugs-fixes@4.2.1: - resolution: {integrity: sha512-9SiofaZ9CWpQWxOwRh1b/r85KD5y7GgvsNt1056k6OYLvWUun0czCvogfJgylC22uJTwW1KzY3Gz65NZRlvoiQ==} - - postcss-loader@4.3.0: - resolution: {integrity: sha512-M/dSoIiNDOo8Rk0mUqoj4kpGq91gcxCfb9PoyZVdZ76/AuhxylHDYZblNE8o+EQ9AMSASeMFEKxZf5aU6wlx1Q==} - engines: {node: '>= 10.13.0'} - peerDependencies: - postcss: ^7.0.0 || ^8.0.1 - webpack: ^4.0.0 || ^5.0.0 - - postcss-modules-extract-imports@2.0.0: - resolution: {integrity: sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==} - engines: {node: '>= 6'} - - postcss-modules-extract-imports@3.0.0: - resolution: {integrity: sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - - postcss-modules-local-by-default@3.0.3: - resolution: {integrity: sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==} - engines: {node: '>= 6'} - - postcss-modules-local-by-default@4.0.0: - resolution: {integrity: sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - - postcss-modules-scope@2.2.0: - resolution: {integrity: sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==} - engines: {node: '>= 6'} - - postcss-modules-scope@3.0.0: - resolution: {integrity: sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - - postcss-modules-values@3.0.0: - resolution: {integrity: sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==} - - postcss-modules-values@4.0.0: - resolution: {integrity: sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - - postcss-selector-parser@6.0.11: - resolution: {integrity: sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==} - engines: {node: '>=4'} - - postcss-value-parser@4.2.0: - resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} - - postcss@7.0.39: - resolution: {integrity: sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==} - engines: {node: '>=6.0.0'} - - postcss@8.4.14: - resolution: {integrity: sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==} - engines: {node: ^10 || ^12 || >=14} - - postcss@8.4.21: - resolution: {integrity: sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==} - engines: {node: ^10 || ^12 || >=14} - - prebuild-install@6.1.4: - resolution: {integrity: sha512-Z4vpywnK1lBg+zdPCVCsKq0xO66eEV9rWo2zrROGGiRS4JtueBOdlB1FnY8lcy7JsUud/Q3ijUxyWN26Ika0vQ==} - engines: {node: '>=6'} - hasBin: true - - prelude-ls@1.1.2: - resolution: {integrity: sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==} - engines: {node: '>= 0.8.0'} - - prelude-ls@1.2.1: - resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} - engines: {node: '>= 0.8.0'} - - prettier@2.3.0: - resolution: {integrity: sha512-kXtO4s0Lz/DW/IJ9QdWhAf7/NmPWQXkFr/r/WkR3vyI+0v8amTDxiaQSLzs8NBlytfLWX/7uQUMIW677yLKl4w==} - engines: {node: '>=10.13.0'} - hasBin: true - - pretty-bytes@5.6.0: - resolution: {integrity: sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==} - engines: {node: '>=6'} - - pretty-error@2.1.2: - resolution: {integrity: sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==} - - pretty-error@4.0.0: - resolution: {integrity: sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==} - - pretty-format@29.4.3: - resolution: {integrity: sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - pretty-format@29.5.0: - resolution: {integrity: sha512-V2mGkI31qdttvTFX7Mt4efOqHXqJWMu4/r66Xh3Z3BwZaPfPJgp6/gbwoujRpPUtfEF6AUUWx3Jim3GCw5g/Qw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - pretty-hrtime@1.0.3: - resolution: {integrity: sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==} - engines: {node: '>= 0.8'} - - prismjs@1.27.0: - resolution: {integrity: sha512-t13BGPUlFDR7wRB5kQDG4jjl7XeuH6jbJGt11JHPL96qwsEHNX2+68tFXqc1/k+/jALsbSWJKUOT/hcYAZ5LkA==} - engines: {node: '>=6'} - - prismjs@1.29.0: - resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} - engines: {node: '>=6'} - - process-nextick-args@2.0.1: - resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} - - process@0.11.10: - resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} - engines: {node: '>= 0.6.0'} - - promise-deferred@2.0.3: - resolution: {integrity: sha512-n10XaoznCzLfyPFOlEE8iurezHpxrYzyjgq/1eW9Wk1gJwur/N7BdBmjJYJpqMeMcXK4wEbzo2EvZQcqjYcKUQ==} - engines: {node: '>= 0.4'} - - promise-inflight@1.0.1: - resolution: {integrity: sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==} - peerDependencies: - bluebird: '*' - peerDependenciesMeta: - bluebird: - optional: true - - promise.allsettled@1.0.6: - resolution: {integrity: sha512-22wJUOD3zswWFqgwjNHa1965LvqTX87WPu/lreY2KSd7SVcERfuZ4GfUaOnJNnvtoIv2yXT/W00YIGMetXtFXg==} - engines: {node: '>= 0.4'} - - promise.prototype.finally@3.1.4: - resolution: {integrity: sha512-nNc3YbgMfLzqtqvO/q5DP6RR0SiHI9pUPGzyDf1q+usTwCN2kjvAnJkBb7bHe3o+fFSBPpsGMoYtaSi+LTNqng==} - engines: {node: '>= 0.4'} - - promise@7.3.1: - resolution: {integrity: sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==} - - promiseback@2.0.3: - resolution: {integrity: sha512-VZXdCwS0ppVNTIRfNsCvVwJAaP2b+pxQF7lM8DMWfmpNWyTxB6O5YNbzs+8z0ki/KIBHKHk308NTIl4kJUem3w==} - engines: {node: '>= 0.4'} - - prompts@2.4.2: - resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} - engines: {node: '>= 6'} - - prop-types@15.8.1: - resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} - - property-information@5.6.0: - resolution: {integrity: sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==} - - proto-list@1.2.4: - resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==} - - proxy-addr@2.0.7: - resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} - engines: {node: '>= 0.10'} - - proxy-from-env@1.1.0: - resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} - - prr@1.0.1: - resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==} - - pseudomap@1.0.2: - resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} - - psl@1.9.0: - resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==} - - pstree.remy@1.1.8: - resolution: {integrity: sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==} - - public-encrypt@4.0.3: - resolution: {integrity: sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==} - - pump@2.0.1: - resolution: {integrity: sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==} - - pump@3.0.0: - resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} - - pumpify@1.5.1: - resolution: {integrity: sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==} - - punycode@1.3.2: - resolution: {integrity: sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==} - - punycode@1.4.1: - resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==} - - punycode@2.3.0: - resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} - engines: {node: '>=6'} - - pure-color@1.3.0: - resolution: {integrity: sha512-QFADYnsVoBMw1srW7OVKEYjG+MbIa49s54w1MA1EDY6r2r/sTcKKYqRX1f4GYvnXP7eN/Pe9HFcX+hwzmrXRHA==} - - pure-rand@6.0.1: - resolution: {integrity: sha512-t+x1zEHDjBwkDGY5v5ApnZ/utcd4XYDiJsaQQoptTXgUXX95sDg1elCdJghzicm7n2mbCBJ3uYWr6M22SO19rg==} - - qs@6.11.0: - resolution: {integrity: sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==} - engines: {node: '>=0.6'} - - querystring-es3@0.2.1: - resolution: {integrity: sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==} - engines: {node: '>=0.4.x'} - - querystring@0.2.0: - resolution: {integrity: sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==} - engines: {node: '>=0.4.x'} - deprecated: The querystring API is considered Legacy. new code should use the URLSearchParams API instead. - - querystringify@2.2.0: - resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==} - - queue-microtask@1.2.3: - resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} - - quick-lru@5.1.1: - resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} - engines: {node: '>=10'} - - ramda-adjunct@4.0.0: - resolution: {integrity: sha512-W/NiJAlZdwZ/iUkWEQQgRdH5Szqqet1WoVH9cdqDVjFbVaZHuJfJRvsxqHhvq6tZse+yVbFatLDLdVa30wBlGQ==} - engines: {node: '>=0.10.3'} - peerDependencies: - ramda: '>= 0.29.0' - - ramda@0.28.0: - resolution: {integrity: sha512-9QnLuG/kPVgWvMQ4aODhsBUFKOUmnbUnsSXACv+NCQZcHbeb+v8Lodp8OVxtRULN1/xOyYLLaL6npE6dMq5QTA==} - - ramda@0.29.0: - resolution: {integrity: sha512-BBea6L67bYLtdbOqfp8f58fPMqEwx0doL+pAi8TZyp2YWz8R9G8z9x75CZI8W+ftqhFHCpEX2cRnUUXK130iKA==} - - randexp@0.5.3: - resolution: {integrity: sha512-U+5l2KrcMNOUPYvazA3h5ekF80FHTUG+87SEAmHZmolh1M+i/WyTCxVzmi+tidIa1tM4BSe8g2Y/D3loWDjj+w==} - engines: {node: '>=4'} - - randombytes@2.1.0: - resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} - - randomfill@1.0.4: - resolution: {integrity: sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==} - - range-parser@1.2.1: - resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} - engines: {node: '>= 0.6'} - - raw-body@2.5.1: - resolution: {integrity: sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==} - engines: {node: '>= 0.8'} - - raw-loader@4.0.2: - resolution: {integrity: sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==} - engines: {node: '>= 10.13.0'} - peerDependencies: - webpack: ^4.0.0 || ^5.0.0 - - rc@1.2.8: - resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} - hasBin: true - - react-base16-styling@0.6.0: - resolution: {integrity: sha512-yvh/7CArceR/jNATXOKDlvTnPKPmGZz7zsenQ3jUwLzHkNUR0CvY3yGYJbWJ/nnxsL8Sgmt5cO3/SILVuPO6TQ==} - - react-color@2.19.3: - resolution: {integrity: sha512-LEeGE/ZzNLIsFWa1TMe8y5VYqr7bibneWmvJwm1pCn/eNmrabWDh659JSPn9BuaMpEfU83WTOJfnCcjDZwNQTA==} - peerDependencies: - react: '*' - - react-copy-to-clipboard@5.1.0: - resolution: {integrity: sha512-k61RsNgAayIJNoy9yDsYzDe/yAZAzEbEgcz3DZMhF686LEyukcE1hzurxe85JandPUG+yTfGVFzuEw3xt8WP/A==} - peerDependencies: - react: ^15.3.0 || 16 || 17 || 18 - - react-debounce-input@3.3.0: - resolution: {integrity: sha512-VEqkvs8JvY/IIZvh71Z0TC+mdbxERvYF33RcebnodlsUZ8RSgyKe2VWaHXv4+/8aoOgXLxWrdsYs2hDhcwbUgA==} - peerDependencies: - react: ^15.3.0 || 16 || 17 || 18 - - react-docgen-typescript@2.2.2: - resolution: {integrity: sha512-tvg2ZtOpOi6QDwsb3GZhOjDkkX0h8Z2gipvTg6OVMUyoYoURhEiRNePT8NZItTVCDh39JJHnLdfCOkzoLbFnTg==} - peerDependencies: - typescript: '>= 4.3.x' - - react-docgen@5.4.3: - resolution: {integrity: sha512-xlLJyOlnfr8lLEEeaDZ+X2J/KJoe6Nr9AzxnkdQWush5hz2ZSu66w6iLMOScMmxoSHWpWMn+k3v5ZiyCfcWsOA==} - engines: {node: '>=8.10.0'} - hasBin: true - - react-dom@18.2.0: - resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} - peerDependencies: - react: ^18.2.0 - - react-dropzone@14.2.3: - resolution: {integrity: sha512-O3om8I+PkFKbxCukfIR3QAGftYXDZfOE2N1mr/7qebQJHs7U+/RSL/9xomJNpRg9kM5h9soQSdf0Gc7OHF5Fug==} - engines: {node: '>= 10.13'} - peerDependencies: - react: '>= 16.8 || 18.0.0' - - react-element-to-jsx-string@14.3.4: - resolution: {integrity: sha512-t4ZwvV6vwNxzujDQ+37bspnLwA4JlgUPWhLjBJWsNIDceAf6ZKUTCjdm08cN6WeZ5pTMKiCJkmAYnpmR4Bm+dg==} - peerDependencies: - react: ^0.14.8 || ^15.0.1 || ^16.0.0 || ^17.0.1 - react-dom: ^0.14.8 || ^15.0.1 || ^16.0.0 || ^17.0.1 - - react-hook-form@7.43.5: - resolution: {integrity: sha512-YcaXhuFHoOPipu5pC7ckxrLrialiOcU91pKu8P+isAcXZyMgByUK9PkI9j5fENO4+6XU5PwWXRGMIFlk9u9UBQ==} - engines: {node: '>=12.22.0'} - peerDependencies: - react: ^16.8.0 || ^17 || ^18 - - react-immutable-proptypes@2.2.0: - resolution: {integrity: sha512-Vf4gBsePlwdGvSZoLSBfd4HAP93HDauMY4fDjXhreg/vg6F3Fj/MXDNyTbltPC/xZKmZc+cjLu3598DdYK6sgQ==} - peerDependencies: - immutable: '>=3.6.2' - - react-immutable-pure-component@2.2.2: - resolution: {integrity: sha512-vkgoMJUDqHZfXXnjVlG3keCxSO/U6WeDQ5/Sl0GK2cH8TOxEzQ5jXqDXHEL/jqk6fsNxV05oH5kD7VNMUE2k+A==} - peerDependencies: - immutable: '>= 2 || >= 4.0.0-rc' - react: '>= 16.6' - react-dom: '>= 16.6' - - react-inspector@5.1.1: - resolution: {integrity: sha512-GURDaYzoLbW8pMGXwYPDBIv6nqei4kK7LPRZ9q9HCZF54wqXz/dnylBp/kfE9XmekBhHvLDdcYeyIwSrvtOiWg==} - peerDependencies: - react: ^16.8.4 || ^17.0.0 - - react-inspector@6.0.1: - resolution: {integrity: sha512-cxKSeFTf7jpSSVddm66sKdolG90qURAX3g1roTeaN6x0YEbtWc8JpmFN9+yIqLNH2uEkYerWLtJZIXRIFuBKrg==} - peerDependencies: - react: ^16.8.4 || ^17.0.0 || ^18.0.0 - - react-is@16.13.1: - resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} - - react-is@17.0.2: - resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} - - react-is@18.2.0: - resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} - - react-lifecycles-compat@3.0.4: - resolution: {integrity: sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==} - - react-property@2.0.0: - resolution: {integrity: sha512-kzmNjIgU32mO4mmH5+iUyrqlpFQhF8K2k7eZ4fdLSOPFrD1XgEuSBv9LDEgxRXTMBqMd8ppT0x6TIzqE5pdGdw==} - - react-query@3.39.3: - resolution: {integrity: sha512-nLfLz7GiohKTJDuT4us4X3h/8unOh+00MLb2yJoGTPjxKs2bc1iDhkNx2bd5MKklXnOD3NrVZ+J2UXujA5In4g==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: '*' - react-native: '*' - peerDependenciesMeta: - react-dom: - optional: true - react-native: - optional: true - - react-redux@8.0.5: - resolution: {integrity: sha512-Q2f6fCKxPFpkXt1qNRZdEDLlScsDWyrgSj0mliK59qU6W5gvBiKkdMEG2lJzhd1rCctf0hb6EtePPLZ2e0m1uw==} - peerDependencies: - '@types/react': ^16.8 || ^17.0 || ^18.0 - '@types/react-dom': ^16.8 || ^17.0 || ^18.0 - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - react-native: '>=0.59' - redux: ^4 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - react-dom: - optional: true - react-native: - optional: true - redux: - optional: true - - react-refresh@0.11.0: - resolution: {integrity: sha512-F27qZr8uUqwhWZboondsPx8tnC3Ct3SxZA3V5WyEvujRyyNv0VYPhoBg1gZ8/MV5tubQp76Trw8lTv9hzRBa+A==} - engines: {node: '>=0.10.0'} - - react-remove-scroll-bar@2.3.4: - resolution: {integrity: sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - react-remove-scroll@2.5.5: - resolution: {integrity: sha512-ImKhrzJJsyXJfBZ4bzu8Bwpka14c/fQt0k+cyFp/PBhTfyDnU5hjOtM4AG/0AMyy8oKzOTR0lDgJIM7pYXI0kw==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - react-style-singleton@2.2.1: - resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - react-syntax-highlighter@15.5.0: - resolution: {integrity: sha512-+zq2myprEnQmH5yw6Gqc8lD55QHnpKaU8TOcFeC/Lg/MQSs8UknEA0JC4nTZGFAXC2J2Hyj/ijJ7NlabyPi2gg==} - peerDependencies: - react: '>= 0.14.0' - - react-textarea-autosize@6.1.0: - resolution: {integrity: sha512-F6bI1dgib6fSvG8so1HuArPUv+iVEfPliuLWusLF+gAKz0FbB4jLrWUrTAeq1afnPT2c9toEZYUdz/y1uKMy4A==} - peerDependencies: - react: '>=0.14.0 <17.0.0' - - react-textarea-autosize@8.3.4: - resolution: {integrity: sha512-CdtmP8Dc19xL8/R6sWvtknD/eCXkQr30dtvC4VmGInhRsfF8X/ihXCq6+9l9qbxmKRiq407/7z5fxE7cVWQNgQ==} - engines: {node: '>=10'} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - - react-transition-group@4.4.2: - resolution: {integrity: sha512-/RNYfRAMlZwDSr6z4zNKV6xu53/e2BuaBbGhbyYIXTrmgu/bGHzmqOs7mJSJBHy9Ud+ApHx3QjrkKSp1pxvlFg==} - peerDependencies: - react: '>=16.6.0' - react-dom: '>=16.6.0' - - react@18.2.0: - resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} - engines: {node: '>=0.10.0'} - - reactcss@1.2.3: - resolution: {integrity: sha512-KiwVUcFu1RErkI97ywr8nvx8dNOpT03rbnma0SSalTYjkrPYaEajR4a/MRt6DZ46K6arDRbWMNHF+xH7G7n/8A==} - peerDependencies: - react: '*' - - read-pkg-up@1.0.1: - resolution: {integrity: sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==} - engines: {node: '>=0.10.0'} - - read-pkg-up@7.0.1: - resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} - engines: {node: '>=8'} - - read-pkg@1.1.0: - resolution: {integrity: sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==} - engines: {node: '>=0.10.0'} - - read-pkg@3.0.0: - resolution: {integrity: sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==} - engines: {node: '>=4'} - - read-pkg@5.2.0: - resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} - engines: {node: '>=8'} - - readable-stream@1.0.34: - resolution: {integrity: sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==} - - readable-stream@2.3.7: - resolution: {integrity: sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==} - - readable-stream@3.6.0: - resolution: {integrity: sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==} - engines: {node: '>= 6'} - - readdirp@2.2.1: - resolution: {integrity: sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==} - engines: {node: '>=0.10'} - - readdirp@3.6.0: - resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} - engines: {node: '>=8.10.0'} - - redent@1.0.0: - resolution: {integrity: sha512-qtW5hKzGQZqKoh6JNSD+4lfitfPKGz42e6QwiRmPM5mmKtR0N41AbJRYu0xJi7nhOJ4WDgRkKvAk6tw4WIwR4g==} - engines: {node: '>=0.10.0'} - - redis@4.6.5: - resolution: {integrity: sha512-O0OWA36gDQbswOdUuAhRL6mTZpHFN525HlgZgDaVNgCJIAZR3ya06NTESb0R+TUZ+BFaDpz6NnnVvoMx9meUFg==} - - redux-immutable@4.0.0: - resolution: {integrity: sha512-SchSn/DWfGb3oAejd+1hhHx01xUoxY+V7TeK0BKqpkLKiQPVFf7DYzEaKmrEVxsWxielKfSK9/Xq66YyxgR1cg==} - peerDependencies: - immutable: ^3.8.1 || ^4.0.0-rc.1 - - redux@4.2.1: - resolution: {integrity: sha512-LAUYz4lc+Do8/g7aeRa8JkyDErK6ekstQaqWQrNRW//MY1TvCEpMtpTWvlQ+FPbWCx+Xixu/6SHt5N0HR+SB4w==} - - refractor@3.6.0: - resolution: {integrity: sha512-MY9W41IOWxxk31o+YvFCNyNzdkc9M20NoZK5vq6jkv4I/uh2zkWcfudj0Q1fovjUQJrNewS9NMzeTtqPf+n5EA==} - - regenerate-unicode-properties@10.1.0: - resolution: {integrity: sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==} - engines: {node: '>=4'} - - regenerate@1.4.2: - resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} - - regenerator-runtime@0.13.11: - resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} - - regenerator-transform@0.15.1: - resolution: {integrity: sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==} - - regex-not@1.0.2: - resolution: {integrity: sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==} - engines: {node: '>=0.10.0'} - - regexp.prototype.flags@1.4.3: - resolution: {integrity: sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==} - engines: {node: '>= 0.4'} - - regexpp@3.2.0: - resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==} - engines: {node: '>=8'} - - regexpu-core@5.3.1: - resolution: {integrity: sha512-nCOzW2V/X15XpLsK2rlgdwrysrBq+AauCn+omItIz4R1pIcmeot5zvjdmOBRLzEH/CkC6IxMJVmxDe3QcMuNVQ==} - engines: {node: '>=4'} - - regjsparser@0.9.1: - resolution: {integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==} - hasBin: true - - relateurl@0.2.7: - resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==} - engines: {node: '>= 0.10'} - - remark-external-links@8.0.0: - resolution: {integrity: sha512-5vPSX0kHoSsqtdftSHhIYofVINC8qmp0nctkeU9YoJwV3YfiBRiI6cbFRJ0oI/1F9xS+bopXG0m2KS8VFscuKA==} - - remark-footnotes@2.0.0: - resolution: {integrity: sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==} - - remark-mdx@1.6.22: - resolution: {integrity: sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==} - - remark-parse@8.0.3: - resolution: {integrity: sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==} - - remark-slug@6.1.0: - resolution: {integrity: sha512-oGCxDF9deA8phWvxFuyr3oSJsdyUAxMFbA0mZ7Y1Sas+emILtO+e5WutF9564gDsEN4IXaQXm5pFo6MLH+YmwQ==} - - remark-squeeze-paragraphs@4.0.0: - resolution: {integrity: sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==} - - remarkable@2.0.1: - resolution: {integrity: sha512-YJyMcOH5lrR+kZdmB0aJJ4+93bEojRZ1HGDn9Eagu6ibg7aVZhc3OWbbShRid+Q5eAfsEqWxpe+g5W5nYNfNiA==} - engines: {node: '>= 6.0.0'} - hasBin: true - - remove-accents@0.4.2: - resolution: {integrity: sha512-7pXIJqJOq5tFgG1A2Zxti3Ht8jJF337m4sowbuHsW30ZnkQFnDzy9qBNhgzX8ZLW4+UBcXiiR7SwR6pokHsxiA==} - - remove-trailing-separator@1.1.0: - resolution: {integrity: sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==} - - renderkid@2.0.7: - resolution: {integrity: sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==} - - renderkid@3.0.0: - resolution: {integrity: sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==} - - repeat-element@1.1.4: - resolution: {integrity: sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==} - engines: {node: '>=0.10.0'} - - repeat-string@1.6.1: - resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==} - engines: {node: '>=0.10'} - - repeating@2.0.1: - resolution: {integrity: sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A==} - engines: {node: '>=0.10.0'} - - require-directory@2.1.1: - resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} - engines: {node: '>=0.10.0'} - - require-from-string@2.0.2: - resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} - engines: {node: '>=0.10.0'} - - requires-port@1.0.0: - resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} - - reselect@4.1.8: - resolution: {integrity: sha512-ab9EmR80F/zQTMNeneUr4cv+jSwPJgIlvEmVwLerwrWVbpLlBuls9XHzIeTFy4cegU2NHBp3va0LKOzU5qFEYQ==} - - resolve-alpn@1.2.1: - resolution: {integrity: sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==} - - resolve-cwd@3.0.0: - resolution: {integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==} - engines: {node: '>=8'} - - resolve-from@4.0.0: - resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} - engines: {node: '>=4'} - - resolve-from@5.0.0: - resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} - engines: {node: '>=8'} - - resolve-url@0.2.1: - resolution: {integrity: sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==} - deprecated: https://github.com/lydell/resolve-url#deprecated - - resolve.exports@2.0.0: - resolution: {integrity: sha512-6K/gDlqgQscOlg9fSRpWstA8sYe8rbELsSTNpx+3kTrsVCzvSl0zIvRErM7fdl9ERWDsKnrLnwB+Ne89918XOg==} - engines: {node: '>=10'} - - resolve@1.22.1: - resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==} - hasBin: true - - resolve@2.0.0-next.4: - resolution: {integrity: sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==} - hasBin: true - - responselike@2.0.1: - resolution: {integrity: sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==} - - restore-cursor@3.1.0: - resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} - engines: {node: '>=8'} - - ret@0.1.15: - resolution: {integrity: sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==} - engines: {node: '>=0.12'} - - ret@0.2.2: - resolution: {integrity: sha512-M0b3YWQs7R3Z917WRQy1HHA7Ba7D8hvZg6UE5mLykJxQVE2ju0IXbGlaHPPlkY+WN7wFP+wUMXmBFA0aV6vYGQ==} - engines: {node: '>=4'} - - reusify@1.0.4: - resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} - engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - - rfdc@1.3.0: - resolution: {integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==} - - rgb-hex@3.0.0: - resolution: {integrity: sha512-8h7ZcwxCBDKvchSWbWngJuSCqJGQ6nDuLLg+QcRyQDbX9jMWt+PpPeXAhSla0GOooEomk3lCprUpGkMdsLjKyg==} - engines: {node: '>=8'} - - rgb-regex@1.0.1: - resolution: {integrity: sha512-gDK5mkALDFER2YLqH6imYvK6g02gpNGM4ILDZ472EwWfXZnC2ZEpoB2ECXTyOVUKuk/bPJZMzwQPBYICzP+D3w==} - - rgba-regex@1.0.0: - resolution: {integrity: sha512-zgn5OjNQXLUTdq8m17KdaicF6w89TZs8ZU8y0AYENIU6wG8GG6LLm0yLSiPY8DmaYmHdgRW8rnApjoT0fQRfMg==} - - rimraf@2.7.1: - resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==} - hasBin: true - - rimraf@3.0.2: - resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} - hasBin: true - - ripemd160@2.0.2: - resolution: {integrity: sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==} - - rsvp@4.8.5: - resolution: {integrity: sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==} - engines: {node: 6.* || >= 7.*} - - run-parallel@1.2.0: - resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} - - run-queue@1.0.3: - resolution: {integrity: sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg==} - - rxjs@7.8.0: - resolution: {integrity: sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==} - - safe-buffer@5.1.1: - resolution: {integrity: sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==} - - safe-buffer@5.1.2: - resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} - - safe-buffer@5.2.1: - resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - - safe-regex-test@1.0.0: - resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} - - safe-regex@1.1.0: - resolution: {integrity: sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==} - - safe-stable-stringify@2.4.2: - resolution: {integrity: sha512-gMxvPJYhP0O9n2pvcfYfIuYgbledAOJFcqRThtPRmjscaipiwcwPPKLytpVzMkG2HAN87Qmo2d4PtGiri1dSLA==} - engines: {node: '>=10'} - - safer-buffer@2.1.2: - resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} - - sane@4.1.0: - resolution: {integrity: sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==} - engines: {node: 6.* || 8.* || >= 10.*} - deprecated: some dependency vulnerabilities fixed, support for node < 10 dropped, and newer ECMAScript syntax/features added - hasBin: true - - saslprep@1.0.3: - resolution: {integrity: sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==} - engines: {node: '>=6'} - - scheduler@0.23.0: - resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} - - schema-utils@1.0.0: - resolution: {integrity: sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==} - engines: {node: '>= 4'} - - schema-utils@2.7.0: - resolution: {integrity: sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==} - engines: {node: '>= 8.9.0'} - - schema-utils@2.7.1: - resolution: {integrity: sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==} - engines: {node: '>= 8.9.0'} - - schema-utils@3.1.1: - resolution: {integrity: sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==} - engines: {node: '>= 10.13.0'} - - schema-utils@4.0.0: - resolution: {integrity: sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==} - engines: {node: '>= 12.13.0'} - - semver@5.7.1: - resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==} - hasBin: true - - semver@6.3.0: - resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==} - hasBin: true - - semver@7.0.0: - resolution: {integrity: sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==} - hasBin: true - - semver@7.3.8: - resolution: {integrity: sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==} - engines: {node: '>=10'} - hasBin: true - - send@0.18.0: - resolution: {integrity: sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==} - engines: {node: '>= 0.8.0'} - - serialize-error@8.1.0: - resolution: {integrity: sha512-3NnuWfM6vBYoy5gZFvHiYsVbafvI9vZv/+jlIigFn4oP4zjNPK3LhcY0xSCgeb1a5L8jO71Mit9LlNoi2UfDDQ==} - engines: {node: '>=10'} - - serialize-javascript@4.0.0: - resolution: {integrity: sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==} - - serialize-javascript@5.0.1: - resolution: {integrity: sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==} - - serialize-javascript@6.0.1: - resolution: {integrity: sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==} - - serve-favicon@2.5.0: - resolution: {integrity: sha512-FMW2RvqNr03x+C0WxTyu6sOv21oOjkq5j8tjquWccwa6ScNyGFOGJVpuS1NmTVGBAHS07xnSKotgf2ehQmf9iA==} - engines: {node: '>= 0.8.0'} - - serve-static@1.15.0: - resolution: {integrity: sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==} - engines: {node: '>= 0.8.0'} - - set-blocking@2.0.0: - resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} - - set-cookie-parser@2.5.1: - resolution: {integrity: sha512-1jeBGaKNGdEq4FgIrORu/N570dwoPYio8lSoYLWmX7sQ//0JY08Xh9o5pBcgmHQ/MbsYp/aZnOe1s1lIsbLprQ==} - - set-value@2.0.1: - resolution: {integrity: sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==} - engines: {node: '>=0.10.0'} - - setimmediate@1.0.5: - resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} - - setprototypeof@1.2.0: - resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} - - sha.js@2.4.11: - resolution: {integrity: sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==} - hasBin: true - - shallow-clone@3.0.1: - resolution: {integrity: sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==} - engines: {node: '>=8'} - - shebang-command@1.2.0: - resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} - engines: {node: '>=0.10.0'} - - shebang-command@2.0.0: - resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} - engines: {node: '>=8'} - - shebang-regex@1.0.0: - resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==} - engines: {node: '>=0.10.0'} - - shebang-regex@3.0.0: - resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} - engines: {node: '>=8'} - - shell-quote@1.7.2: - resolution: {integrity: sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==} - - short-unique-id@4.4.4: - resolution: {integrity: sha512-oLF1NCmtbiTWl2SqdXZQbo5KM1b7axdp0RgQLq8qCBBLoq+o3A5wmLrNM6bZIh54/a8BJ3l69kTXuxwZ+XCYuw==} - hasBin: true - - side-channel@1.0.4: - resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} - - sigmund@1.0.1: - resolution: {integrity: sha512-fCvEXfh6NWpm+YSuY2bpXb/VIihqWA6hLsgboC+0nl71Q7N7o2eaCW8mJa/NLvQhs6jpd3VZV4UiUQlV6+lc8g==} - - signal-exit@3.0.7: - resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} - - simple-concat@1.0.1: - resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} - - simple-get@3.1.1: - resolution: {integrity: sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==} - - simple-swizzle@0.2.2: - resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} - - simple-update-notifier@1.1.0: - resolution: {integrity: sha512-VpsrsJSUcJEseSbMHkrsrAVSdvVS5I96Qo1QAQ4FxQ9wXFcB+pjj7FB7/us9+GcgfW4ziHtYMc1J0PLczb55mg==} - engines: {node: '>=8.10.0'} - - sisteransi@1.0.5: - resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} - - slash@2.0.0: - resolution: {integrity: sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==} - engines: {node: '>=6'} - - slash@3.0.0: - resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} - engines: {node: '>=8'} - - slash@4.0.0: - resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} - engines: {node: '>=12'} - - slice-ansi@3.0.0: - resolution: {integrity: sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==} - engines: {node: '>=8'} - - slice-ansi@4.0.0: - resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==} - engines: {node: '>=10'} - - slice-ansi@5.0.0: - resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} - engines: {node: '>=12'} - - slick@1.12.2: - resolution: {integrity: sha512-4qdtOGcBjral6YIBCWJ0ljFSKNLz9KkhbWtuGvUyRowl1kxfuE1x/Z/aJcaiilpb3do9bl5K7/1h9XC5wWpY/A==} - - smart-buffer@4.2.0: - resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} - engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} - - snapdragon-node@2.1.1: - resolution: {integrity: sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==} - engines: {node: '>=0.10.0'} - - snapdragon-util@3.0.1: - resolution: {integrity: sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==} - engines: {node: '>=0.10.0'} - - snapdragon@0.8.2: - resolution: {integrity: sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==} - engines: {node: '>=0.10.0'} - - snyk-config@5.1.0: - resolution: {integrity: sha512-wqVMxUGqjjHX+MJrz0WHa/pJTDWU17aRv6cnI/6i7cq93J3TkkJZ8sjgvwCgP8cWX5wTHIlRuMV+IAd59K4X/g==} - - snyk-nodejs-lockfile-parser@1.48.0: - resolution: {integrity: sha512-kq4gVwL5V0SUatDxyyzbptKkaX4Ew9N3ZDNR5r7sqBRparY+U+xGuYBhTaJdweBUD+jkvs7rKO1JV1h0Z8c2ew==} - engines: {node: '>=10'} - hasBin: true - - socket.io-adapter@2.5.2: - resolution: {integrity: sha512-87C3LO/NOMc+eMcpcxUBebGjkpMDkNBS9tf7KJqcDsmL936EChtVva71Dw2q4tQcuVC+hAUy4an2NO/sYXmwRA==} - - socket.io-client@4.6.1: - resolution: {integrity: sha512-5UswCV6hpaRsNg5kkEHVcbBIXEYoVbMQaHJBXJCyEQ+CiFPV1NIOY0XOFWG4XR4GZcB8Kn6AsRs/9cy9TbqVMQ==} - engines: {node: '>=10.0.0'} - - socket.io-parser@4.2.2: - resolution: {integrity: sha512-DJtziuKypFkMMHCm2uIshOYC7QaylbtzQwiMYDuCKy3OPkjLzu4B2vAhTlqipRHHzrI0NJeBAizTK7X+6m1jVw==} - engines: {node: '>=10.0.0'} - - socket.io@4.6.1: - resolution: {integrity: sha512-KMcaAi4l/8+xEjkRICl6ak8ySoxsYG+gG6/XfRCPJPQ/haCRIJBTL4wIl8YCsmtaBovcAXGLOShyVWQ/FG8GZA==} - engines: {node: '>=10.0.0'} - - socks@2.7.1: - resolution: {integrity: sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==} - engines: {node: '>= 10.13.0', npm: '>= 3.0.0'} - - sorted-array-functions@1.3.0: - resolution: {integrity: sha512-2sqgzeFlid6N4Z2fUQ1cvFmTOLRi/sEDzSQ0OKYchqgoPmQBVyM3959qYx3fpS6Esef80KjmpgPeEr028dP3OA==} - - source-list-map@2.0.1: - resolution: {integrity: sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==} - - source-map-js@1.0.2: - resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} - engines: {node: '>=0.10.0'} - - source-map-resolve@0.5.3: - resolution: {integrity: sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==} - deprecated: See https://github.com/lydell/source-map-resolve#deprecated - - source-map-support@0.5.13: - resolution: {integrity: sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==} - - source-map-support@0.5.21: - resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} - - source-map-url@0.4.1: - resolution: {integrity: sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==} - deprecated: See https://github.com/lydell/source-map-url#deprecated - - source-map@0.5.7: - resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} - engines: {node: '>=0.10.0'} - - source-map@0.6.1: - resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} - engines: {node: '>=0.10.0'} - - source-map@0.7.4: - resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} - engines: {node: '>= 8'} - - space-separated-tokens@1.1.5: - resolution: {integrity: sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==} - - sparse-bitfield@3.0.3: - resolution: {integrity: sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==} - - spdx-correct@3.1.1: - resolution: {integrity: sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==} - - spdx-exceptions@2.3.0: - resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==} - - spdx-expression-parse@3.0.1: - resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} - - spdx-license-ids@3.0.12: - resolution: {integrity: sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==} - - split-string@3.1.0: - resolution: {integrity: sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==} - engines: {node: '>=0.10.0'} - - sprintf-js@1.0.3: - resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} - - ssri@6.0.2: - resolution: {integrity: sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==} - - ssri@8.0.1: - resolution: {integrity: sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==} - engines: {node: '>= 8'} - - stable@0.1.8: - resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==} - deprecated: 'Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility' - - stack-trace@0.0.10: - resolution: {integrity: sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==} - - stack-utils@2.0.6: - resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==} - engines: {node: '>=10'} - - stackframe@1.3.4: - resolution: {integrity: sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==} - - stampit@4.3.2: - resolution: {integrity: sha512-pE2org1+ZWQBnIxRPrBM2gVupkuDD0TTNIo1H6GdT/vO82NXli2z8lRE8cu/nBIHrcOCXFBAHpb9ZldrB2/qOA==} - - state-toggle@1.0.3: - resolution: {integrity: sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==} - - static-extend@0.1.2: - resolution: {integrity: sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==} - engines: {node: '>=0.10.0'} - - statuses@1.5.0: - resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==} - engines: {node: '>= 0.6'} - - statuses@2.0.1: - resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} - engines: {node: '>= 0.8'} - - stop-iteration-iterator@1.0.0: - resolution: {integrity: sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==} - engines: {node: '>= 0.4'} - - store2@2.14.2: - resolution: {integrity: sha512-siT1RiqlfQnGqgT/YzXVUNsom9S0H1OX+dpdGN1xkyYATo4I6sep5NmsRD/40s3IIOvlCq6akxkqG82urIZW1w==} - - stream-browserify@2.0.2: - resolution: {integrity: sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==} - - stream-browserify@3.0.0: - resolution: {integrity: sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==} - - stream-buffers@3.0.2: - resolution: {integrity: sha512-DQi1h8VEBA/lURbSwFtEHnSTb9s2/pwLEaFuNhXwy1Dx3Sa0lOuYT2yNUr4/j2fs8oCAMANtrZ5OrPZtyVs3MQ==} - engines: {node: '>= 0.10.0'} - - stream-each@1.2.3: - resolution: {integrity: sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==} - - stream-http@2.8.3: - resolution: {integrity: sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==} - - stream-shift@1.0.1: - resolution: {integrity: sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==} - - stream-to-array@2.3.0: - resolution: {integrity: sha512-UsZtOYEn4tWU2RGLOXr/o/xjRBftZRlG3dEWoaHr8j4GuypJ3isitGbVyjQKAuMu+xbiop8q224TjiZWc4XTZA==} - - stream-to-promise@2.2.0: - resolution: {integrity: sha512-HAGUASw8NT0k8JvIVutB2Y/9iBk7gpgEyAudXwNJmZERdMITGdajOa4VJfD/kNiA3TppQpTP4J+CtcHwdzKBAw==} - - streamsearch@1.1.0: - resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} - engines: {node: '>=10.0.0'} - - string-argv@0.3.1: - resolution: {integrity: sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==} - engines: {node: '>=0.6.19'} - - string-length@4.0.2: - resolution: {integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==} - engines: {node: '>=10'} - - string-width@1.0.2: - resolution: {integrity: sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==} - engines: {node: '>=0.10.0'} - - string-width@4.2.3: - resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} - engines: {node: '>=8'} - - string-width@5.1.2: - resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} - engines: {node: '>=12'} - - string.prototype.matchall@4.0.8: - resolution: {integrity: sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==} - - string.prototype.padend@3.1.4: - resolution: {integrity: sha512-67otBXoksdjsnXXRUq+KMVTdlVRZ2af422Y0aTyTjVaoQkGr3mxl2Bc5emi7dOQ3OGVVQQskmLEWwFXwommpNw==} - engines: {node: '>= 0.4'} - - string.prototype.padstart@3.1.4: - resolution: {integrity: sha512-XqOHj8horGsF+zwxraBvMTkBFM28sS/jHBJajh17JtJKA92qazidiQbLosV4UA18azvLOVKYo/E3g3T9Y5826w==} - engines: {node: '>= 0.4'} - - string.prototype.trimend@1.0.6: - resolution: {integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==} - - string.prototype.trimstart@1.0.6: - resolution: {integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==} - - string_decoder@0.10.31: - resolution: {integrity: sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==} - - string_decoder@1.1.1: - resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} - - string_decoder@1.3.0: - resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} - - strip-ansi@3.0.1: - resolution: {integrity: sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==} - engines: {node: '>=0.10.0'} - - strip-ansi@6.0.1: - resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} - engines: {node: '>=8'} - - strip-ansi@7.0.1: - resolution: {integrity: sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==} - engines: {node: '>=12'} - - strip-bom@2.0.0: - resolution: {integrity: sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==} - engines: {node: '>=0.10.0'} - - strip-bom@3.0.0: - resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} - engines: {node: '>=4'} - - strip-bom@4.0.0: - resolution: {integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==} - engines: {node: '>=8'} - - strip-eof@1.0.0: - resolution: {integrity: sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q==} - engines: {node: '>=0.10.0'} - - strip-final-newline@2.0.0: - resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} - engines: {node: '>=6'} - - strip-final-newline@3.0.0: - resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} - engines: {node: '>=12'} - - strip-indent@1.0.1: - resolution: {integrity: sha512-I5iQq6aFMM62fBEAIB/hXzwJD6EEZ0xEGCX2t7oXqaKPIRgt4WruAQ285BISgdkP+HLGWyeGmNJcpIwFeRYRUA==} - engines: {node: '>=0.10.0'} - hasBin: true - - strip-indent@3.0.0: - resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} - engines: {node: '>=8'} - - strip-json-comments@2.0.1: - resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} - engines: {node: '>=0.10.0'} - - strip-json-comments@3.1.1: - resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} - engines: {node: '>=8'} - - strnum@1.0.5: - resolution: {integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==} - - style-loader@1.3.0: - resolution: {integrity: sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==} - engines: {node: '>= 8.9.0'} - peerDependencies: - webpack: ^4.0.0 || ^5.0.0 - - style-loader@2.0.0: - resolution: {integrity: sha512-Z0gYUJmzZ6ZdRUqpg1r8GsaFKypE+3xAzuFeMuoHgjc9KZv3wMyCRjQIWEbhoFSq7+7yoHXySDJyyWQaPajeiQ==} - engines: {node: '>= 10.13.0'} - peerDependencies: - webpack: ^4.0.0 || ^5.0.0 - - style-loader@3.3.1: - resolution: {integrity: sha512-GPcQ+LDJbrcxHORTRes6Jy2sfvK2kS6hpSfI/fXhPt+spVzxF6LJ1dHLN9zIGmVaaP044YKaIatFaufENRiDoQ==} - engines: {node: '>= 12.13.0'} - peerDependencies: - webpack: ^5.0.0 - - style-mod@4.0.0: - resolution: {integrity: sha512-OPhtyEjyyN9x3nhPsu76f52yUGXiZcgvsrFVtvTkyGRQJ0XK+GPc6ov1z+lRpbeabka+MYEQxOYRnt5nF30aMw==} - - style-to-js@1.1.0: - resolution: {integrity: sha512-1OqefPDxGrlMwcbfpsTVRyzwdhr4W0uxYQzeA2F1CBc8WG04udg2+ybRnvh3XYL4TdHQrCahLtax2jc8xaE6rA==} - - style-to-object@0.3.0: - resolution: {integrity: sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==} - - styled-jsx@5.1.1: - resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} - engines: {node: '>= 12.0.0'} - peerDependencies: - '@babel/core': '*' - babel-plugin-macros: '*' - react: '>= 16.8.0 || 17.x.x || ^18.0.0-0' - peerDependenciesMeta: - '@babel/core': - optional: true - babel-plugin-macros: - optional: true - - stylis@4.1.3: - resolution: {integrity: sha512-GP6WDNWf+o403jrEp9c5jibKavrtLW+/qYGhFxFrG8maXhwTBI7gLLhiBb0o7uFccWN+EOS9aMO6cGHWAO07OA==} - - supports-color@5.5.0: - resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} - engines: {node: '>=4'} - - supports-color@7.2.0: - resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} - engines: {node: '>=8'} - - supports-color@8.1.1: - resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} - engines: {node: '>=10'} - - supports-preserve-symlinks-flag@1.0.0: - resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} - engines: {node: '>= 0.4'} - - svg-parser@2.0.4: - resolution: {integrity: sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==} - - svgo@2.8.0: - resolution: {integrity: sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==} - engines: {node: '>=10.13.0'} - hasBin: true - - swagger-client@3.19.7: - resolution: {integrity: sha512-5U4+tksrzVODZaLTtivzS9be6u7rX5ZSWFKDIYWsy8HCwt9FH1ANrrGpY1wDHydpOeaySbxMjMaqEM9cGWxOuQ==} - - swagger-ui-react@4.18.3: - resolution: {integrity: sha512-aOA/Ty1hKa5gXxWm+mqM+OQTz7VhGdwy4BGSwpy5iAm3oeacgpGJqOr6ySdqgV84KwzRAmW+5C5hK4Ss6xmODw==} - peerDependencies: - react: '>=17.0.0' - react-dom: '>=17.0.0' - - symbol.prototype.description@1.0.5: - resolution: {integrity: sha512-x738iXRYsrAt9WBhRCVG5BtIC3B7CUkFwbHW2zOvGtwM33s7JjrCDyq8V0zgMYVb5ymsL8+qkzzpANH63CPQaQ==} - engines: {node: '>= 0.11.15'} - - synchronous-promise@2.0.17: - resolution: {integrity: sha512-AsS729u2RHUfEra9xJrE39peJcc2stq2+poBXX8bcM08Y6g9j/i/PUzwNQqkaJde7Ntg1TO7bSREbR5sdosQ+g==} - - synckit@0.8.5: - resolution: {integrity: sha512-L1dapNV6vu2s/4Sputv8xGsCdAVlb5nRDMFU/E27D44l5U6cw1g0dGd45uLc+OXjNMmF4ntiMdCimzcjFKQI8Q==} - engines: {node: ^14.18.0 || >=16.0.0} - - tabbable@6.1.1: - resolution: {integrity: sha512-4kl5w+nCB44EVRdO0g/UGoOp3vlwgycUVtkk/7DPyeLZUCuNFFKCFG6/t/DgHLrUPHjrZg6s5tNm+56Q2B0xyg==} - - tapable@1.1.3: - resolution: {integrity: sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==} - engines: {node: '>=6'} - - tapable@2.2.1: - resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} - engines: {node: '>=6'} - - tar-fs@2.1.1: - resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==} - - tar-stream@2.2.0: - resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} - engines: {node: '>=6'} - - tar@6.1.13: - resolution: {integrity: sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==} - engines: {node: '>=10'} - - telejson@6.0.8: - resolution: {integrity: sha512-nerNXi+j8NK1QEfBHtZUN/aLdDcyupA//9kAboYLrtzZlPLpUfqbVGWb9zz91f/mIjRbAYhbgtnJHY8I1b5MBg==} - - terser-webpack-plugin@1.4.5: - resolution: {integrity: sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==} - engines: {node: '>= 6.9.0'} - peerDependencies: - webpack: ^4.0.0 - - terser-webpack-plugin@4.2.3: - resolution: {integrity: sha512-jTgXh40RnvOrLQNgIkwEKnQ8rmHjHK4u+6UBEi+W+FPmvb+uo+chJXntKe7/3lW5mNysgSWD60KyesnhW8D6MQ==} - engines: {node: '>= 10.13.0'} - peerDependencies: - webpack: ^4.0.0 || ^5.0.0 - - terser-webpack-plugin@5.3.6: - 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 - - terser@4.8.1: - resolution: {integrity: sha512-4GnLC0x667eJG0ewJTa6z/yXrbLGv80D9Ru6HIpCQmO+Q4PfEtBFi0ObSckqwL6VyQv/7ENJieXHo2ANmdQwgw==} - engines: {node: '>=6.0.0'} - hasBin: true - - terser@5.16.4: - resolution: {integrity: sha512-5yEGuZ3DZradbogeYQ1NaGz7rXVBDWujWlx1PT8efXO6Txn+eWbfKqB2bTDVmFXmePFkoLU6XI8UektMIEA0ug==} - engines: {node: '>=10'} - hasBin: true - - test-exclude@6.0.0: - resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} - engines: {node: '>=8'} - - text-hex@1.0.0: - resolution: {integrity: sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==} - - text-table@0.2.0: - resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} - - through2@0.4.2: - resolution: {integrity: sha512-45Llu+EwHKtAZYTPPVn3XZHBgakWMN3rokhEv5hu596XP+cNgplMg+Gj+1nmAvj+L0K7+N49zBKx5rah5u0QIQ==} - - through2@2.0.5: - resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==} - - through@2.3.8: - resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} - - timers-browserify@2.0.12: - resolution: {integrity: sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==} - engines: {node: '>=0.6.0'} - - tiny-glob@0.2.9: - resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==} - - tinycolor2@1.6.0: - resolution: {integrity: sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw==} - - tmp@0.0.33: - resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} - engines: {node: '>=0.6.0'} - - tmp@0.2.1: - resolution: {integrity: sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==} - engines: {node: '>=8.17.0'} - - tmpl@1.0.5: - resolution: {integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==} - - to-arraybuffer@1.0.1: - resolution: {integrity: sha512-okFlQcoGTi4LQBG/PgSYblw9VOyptsz2KJZqc6qtgGdes8VktzUQkj4BI2blit072iS8VODNcMA+tvnS9dnuMA==} - - to-fast-properties@2.0.0: - resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} - engines: {node: '>=4'} - - to-object-path@0.3.0: - resolution: {integrity: sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==} - engines: {node: '>=0.10.0'} - - to-regex-range@2.1.1: - resolution: {integrity: sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==} - engines: {node: '>=0.10.0'} - - to-regex-range@5.0.1: - resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} - engines: {node: '>=8.0'} - - to-regex@3.0.2: - resolution: {integrity: sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==} - engines: {node: '>=0.10.0'} - - toggle-selection@1.0.6: - resolution: {integrity: sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==} - - toidentifier@1.0.1: - resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} - engines: {node: '>=0.6'} - - touch@3.1.0: - resolution: {integrity: sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==} - hasBin: true - - tough-cookie@4.1.2: - resolution: {integrity: sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==} - engines: {node: '>=6'} - - tr46@0.0.3: - resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} - - tr46@3.0.0: - resolution: {integrity: sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==} - engines: {node: '>=12'} - - traverse@0.6.7: - resolution: {integrity: sha512-/y956gpUo9ZNCb99YjxG7OaslxZWHfCHAUUfshwqOXmxUIvqLjVO581BT+gM59+QV9tFe6/CGG53tsA1Y7RSdg==} - - tree-sitter-json@0.20.0: - resolution: {integrity: sha512-PteOLH+Tx6Bz4ZA/d40/DbkiSXXRM/gKahhHI8hQ1lWNfFvdknnz9k3Mz84ol5srRyLboJ8wp8GSkhZ6ht9EGQ==} - - tree-sitter-yaml@0.5.0: - resolution: {integrity: sha512-POJ4ZNXXSWIG/W4Rjuyg36MkUD4d769YRUGKRqN+sVaj/VCo6Dh6Pkssn1Rtewd5kybx+jT1BWMyWN0CijXnMA==} - - tree-sitter@0.20.1: - resolution: {integrity: sha512-Cmb8V0ocamHbgWMVhZIa+78k/7r8VCQ6+ePG8eYEAO7AccwWi06Ct4ATNiI94KwhIkRl0+OwZ42/5nk3GnEMpQ==} - - treeify@1.1.0: - resolution: {integrity: sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A==} - engines: {node: '>=0.6'} - - trim-newlines@1.0.0: - resolution: {integrity: sha512-Nm4cF79FhSTzrLKGDMi3I4utBtFv8qKy4sq1enftf2gMdpqI8oVQTAfySkTz5r49giVzDj88SVZXP4CeYQwjaw==} - engines: {node: '>=0.10.0'} - - trim-trailing-lines@1.1.4: - resolution: {integrity: sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==} - - trim@0.0.1: - resolution: {integrity: sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ==} - deprecated: Use String.prototype.trim() instead - - triple-beam@1.3.0: - resolution: {integrity: sha512-XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw==} - - trough@1.0.5: - resolution: {integrity: sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==} - - ts-dedent@2.2.0: - resolution: {integrity: sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==} - engines: {node: '>=6.10'} - - ts-jest@29.0.5: - resolution: {integrity: sha512-PL3UciSgIpQ7f6XjVOmbi96vmDHUqAyqDr8YxzopDqX3kfgYtX1cuNeBjP+L9sFXi6nzsGGA6R3fP3DDDJyrxA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - hasBin: true - peerDependencies: - '@babel/core': '>=7.0.0-beta.0 <8' - '@jest/types': ^29.0.0 - babel-jest: ^29.0.0 - esbuild: '*' - jest: ^29.0.0 - typescript: '>=4.3' - peerDependenciesMeta: - '@babel/core': - optional: true - '@jest/types': - optional: true - babel-jest: - optional: true - esbuild: - optional: true - - ts-node@10.9.1: - resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} - hasBin: true - peerDependencies: - '@swc/core': '>=1.2.50' - '@swc/wasm': '>=1.2.50' - '@types/node': '*' - typescript: '>=2.7' - peerDependenciesMeta: - '@swc/core': - optional: true - '@swc/wasm': - optional: true - - ts-pnp@1.2.0: - resolution: {integrity: sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw==} - engines: {node: '>=6'} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - ts-toolbelt@9.6.0: - resolution: {integrity: sha512-nsZd8ZeNUzukXPlJmTBwUAuABDe/9qtVDelJeT/qW0ow3ZS3BsQJtNkan1802aM9Uf68/Y8ljw86Hu0h5IUW3w==} - - tsconfig-paths@3.14.1: - resolution: {integrity: sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==} - - tslib@1.14.1: - resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} - - tslib@2.5.0: - resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==} - - tsscmp@1.0.6: - resolution: {integrity: sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==} - engines: {node: '>=0.6.x'} - - tsutils@3.21.0: - resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} - engines: {node: '>= 6'} - peerDependencies: - typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' - - tty-browserify@0.0.0: - resolution: {integrity: sha512-JVa5ijo+j/sOoHGjw0sxw734b1LhBkQ3bvUGNdxnVXDCX81Yx7TFgnZygxrIIWn23hbfTaMYLwRmAxFyDuFmIw==} - - tunnel-agent@0.6.0: - resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} - - tunnel@0.0.6: - resolution: {integrity: sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==} - engines: {node: '>=0.6.11 <=0.7.0 || >=0.7.3'} - - turbo-android-arm64@1.4.7: - resolution: {integrity: sha512-BtWtH8e8w1GhtYpGQmkcDS/AUzVZhQ4ZZN+qtUFei1wZD7VAdtJ9Wcsfi3WD+mXA6vtpIpRJVfQMcShr8l8ErA==} - cpu: [arm64] - os: [android] - - turbo-darwin-64@1.8.3: - resolution: {integrity: sha512-bLM084Wr17VAAY/EvCWj7+OwYHvI9s/NdsvlqGp8iT5HEYVimcornCHespgJS/yvZDfC+mX9EQkn3V2JmYgGGw==} - cpu: [x64] - os: [darwin] - - turbo-darwin-arm64@1.8.3: - resolution: {integrity: sha512-4oZjXtzakopMK110kue3z/hqu3WLv+eDLZOX1NGdo49gqca9BeD8GbH+sXpAp6tqyeuzpss+PIliVYuyt7LgbA==} - cpu: [arm64] - os: [darwin] - - turbo-freebsd-64@1.4.7: - resolution: {integrity: sha512-T5/osfbCh0rL53MFS5byFFfsR3vPMHIKIJ4fMMCNkoHsmFj2R0Pv53nqhEItogt0FJwCDHPyt7oBqO83H/AWQQ==} - cpu: [x64] - os: [freebsd] - - turbo-freebsd-arm64@1.4.7: - resolution: {integrity: sha512-PL+SaO78AUCas+YKj01UiS2rpmGcxz8XPmLdFWmq6PYjPX6GL5UBAc3pkBphIm0aTLZtsikoEul+JrwAuAy6UA==} - cpu: [arm64] - os: [freebsd] - - turbo-linux-32@1.4.7: - resolution: {integrity: sha512-dK94UwDzySMALoQtjBVVPbWJZP6xw3yHGuytM3q5p4kfMZPSA+rgNBn5T5Af2Rc7jxlLAsu5ODJ0SgIbWSF5Hg==} - cpu: [ia32] - os: [linux] - - turbo-linux-64@1.8.3: - resolution: {integrity: sha512-uvX2VKotf5PU14FCxJA5iHItPQno2JWzerMd+g3/h/Asay6dvxvtVjc39MQeGT0H5njSvzVKFkT+3/5q8lgOEg==} - cpu: [x64] - os: [linux] - - turbo-linux-arm64@1.8.3: - resolution: {integrity: sha512-E1p+oH3XKMaPS4rqWhYsL4j2Pzc0d/9P5KU7Kn1kqVLo2T3iRA7n2KVULEieUNE0nTH+aIJPXYXOpqCI5wFJaA==} - cpu: [arm64] - os: [linux] - - turbo-linux-arm@1.4.7: - resolution: {integrity: sha512-FTh4itdMNZ7IxGKknFnQ6iPO9vGGKqyySkCYLR01lnw6BTnKL9KuM9XUCBRyn7dNmHhAnqu1ZtVsBkH7CE7DEw==} - cpu: [arm] - os: [linux] - - turbo-linux-mips64le@1.4.7: - resolution: {integrity: sha512-756nG8dnPQVcnl9s70S4NQ43aJjpsnc2h0toktPO+9u2ayv9XTbIPvZLFsS55bDeYhodDGvxoB96W6Xnx01hyQ==} - cpu: [mipsel] - os: [linux] - - turbo-linux-ppc64le@1.4.7: - resolution: {integrity: sha512-VS2ofGN/XsafNGJdZ21UguURHb7KRG879yWLj59hO1d+0xXXQbx7ljsmEPOhiE4UjEdx4Ur6P44BhztTgDx9Og==} - cpu: [ppc64] - os: [linux] - - turbo-windows-32@1.4.7: - resolution: {integrity: sha512-M5GkZdA0CbJAOcR8SScM63CBV+NtX7qjhoNNOl0F99nGJ+rO3dH71CcM/rbhlz9SQzKQoX8rcuwZHe4r2HZAug==} - cpu: [ia32] - os: [win32] - - turbo-windows-64@1.8.3: - resolution: {integrity: sha512-cnzAytHtoLXd0J7aNzRpZFpL/GTjcBmkvAPlbOdf/Pl1iwS4qzGrudZQ+OM1lmLgLIfBPIavsGHBknTwTNib4A==} - cpu: [x64] - os: [win32] - - turbo-windows-arm64@1.8.3: - resolution: {integrity: sha512-ulIiItNm2w/zYJdD5/oAzjzNns1IjbpweRzpsE8tLXaWwo6+fnXXkyloUug0IUhcd2k6fJXfoiDZfygqpOVuXg==} - cpu: [arm64] - os: [win32] - - turbo@1.8.3: - resolution: {integrity: sha512-zGrkU1EuNFmkq6iky6LcMqD4h0OLE8XysVFxQWRIZbcTNnf0XAycbsbeEyiJpiWeqb7qtg2bVuY9EYcNoNhVuQ==} - hasBin: true - - type-check@0.3.2: - resolution: {integrity: sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==} - engines: {node: '>= 0.8.0'} - - type-check@0.4.0: - resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} - engines: {node: '>= 0.8.0'} - - type-detect@4.0.8: - resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} - engines: {node: '>=4'} - - type-fest@0.20.2: - resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} - engines: {node: '>=10'} - - type-fest@0.21.3: - resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} - engines: {node: '>=10'} - - type-fest@0.6.0: - resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} - engines: {node: '>=8'} - - type-fest@0.8.1: - resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} - engines: {node: '>=8'} - - type-is@1.6.18: - resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} - engines: {node: '>= 0.6'} - - typed-array-length@1.0.4: - resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} - - typedarray-to-buffer@3.1.5: - resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==} - - typedarray@0.0.6: - resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} - - types-ramda@0.29.2: - resolution: {integrity: sha512-HpLcR0ly2EfXQwG8VSI5ov6ml7PvtT+u+cp+7lZLu7q4nhnPDVW+rUTC1uy/SNs4aAyTUXri5M/LyhgvjEXJDg==} - - typescript@4.9.5: - resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==} - engines: {node: '>=4.2.0'} - hasBin: true - - ua-parser-js@0.7.33: - resolution: {integrity: sha512-s8ax/CeZdK9R/56Sui0WM6y9OFREJarMRHqLB2EwkovemBxNQ+Bqu8GAsUnVcXKgphb++ghr/B2BZx4mahujPw==} - - uglify-js@3.17.4: - resolution: {integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==} - engines: {node: '>=0.8.0'} - hasBin: true - - uid2@1.0.0: - resolution: {integrity: sha512-+I6aJUv63YAcY9n4mQreLUt0d4lvwkkopDNmpomkAUz0fAkEMV9pRWxN0EjhW1YfRhcuyHg2v3mwddCDW1+LFQ==} - engines: {node: '>= 4.0.0'} - - unbox-primitive@1.0.2: - resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} - - undefsafe@2.0.5: - resolution: {integrity: sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==} - - unfetch@4.2.0: - resolution: {integrity: sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA==} - - unherit@1.1.3: - resolution: {integrity: sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==} - - unicode-canonical-property-names-ecmascript@2.0.0: - resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} - engines: {node: '>=4'} - - unicode-match-property-ecmascript@2.0.0: - resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==} - engines: {node: '>=4'} - - unicode-match-property-value-ecmascript@2.1.0: - resolution: {integrity: sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==} - engines: {node: '>=4'} - - unicode-property-aliases-ecmascript@2.1.0: - resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==} - engines: {node: '>=4'} - - unified@9.2.0: - resolution: {integrity: sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==} - - union-value@1.0.1: - resolution: {integrity: sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==} - engines: {node: '>=0.10.0'} - - unique-filename@1.1.1: - resolution: {integrity: sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==} - - unique-slug@2.0.2: - resolution: {integrity: sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==} - - unist-builder@2.0.3: - resolution: {integrity: sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==} - - unist-util-generated@1.1.6: - resolution: {integrity: sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==} - - unist-util-is@4.1.0: - resolution: {integrity: sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==} - - unist-util-position@3.1.0: - resolution: {integrity: sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==} - - unist-util-remove-position@2.0.1: - resolution: {integrity: sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==} - - unist-util-remove@2.1.0: - resolution: {integrity: sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==} - - unist-util-stringify-position@2.0.3: - resolution: {integrity: sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==} - - unist-util-visit-parents@3.1.1: - resolution: {integrity: sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==} - - unist-util-visit@2.0.3: - resolution: {integrity: sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==} - - universalify@0.2.0: - resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==} - engines: {node: '>= 4.0.0'} - - universalify@2.0.0: - resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} - engines: {node: '>= 10.0.0'} - - unload@2.2.0: - resolution: {integrity: sha512-B60uB5TNBLtN6/LsgAf3udH9saB5p7gqJwcFfbOEZ8BcBHnGwCf6G/TGiEqkRAxX7zAFIUtzdrXQSdL3Q/wqNA==} - - unpipe@1.0.0: - resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} - engines: {node: '>= 0.8'} - - unraw@2.0.1: - resolution: {integrity: sha512-tdOvLfRzHolwYcHS6HIX860MkK9LQ4+oLuNwFYL7bpgTEO64PZrcQxkisgwJYCfF8sKiWLwwu1c83DvMkbefIQ==} - - unset-value@1.0.0: - resolution: {integrity: sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==} - engines: {node: '>=0.10.0'} - - untildify@2.1.0: - resolution: {integrity: sha512-sJjbDp2GodvkB0FZZcn7k6afVisqX5BZD7Yq3xp4nN2O15BBK0cLm3Vwn2vQaF7UDS0UUsrQMkkplmDI5fskig==} - engines: {node: '>=0.10.0'} - - upath@1.2.0: - resolution: {integrity: sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==} - engines: {node: '>=4'} - - update-browserslist-db@1.0.10: - resolution: {integrity: sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==} - hasBin: true - peerDependencies: - browserslist: '>= 4.21.0' - - upper-case@1.1.3: - resolution: {integrity: sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==} - - uri-js@4.4.1: - resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} - - urix@0.1.0: - resolution: {integrity: sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==} - deprecated: Please see https://github.com/lydell/urix#deprecated - - url-loader@4.1.1: - resolution: {integrity: sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==} - engines: {node: '>= 10.13.0'} - peerDependencies: - file-loader: '*' - webpack: ^4.0.0 || ^5.0.0 - peerDependenciesMeta: - file-loader: - optional: true - - url-parse@1.5.10: - resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==} - - url@0.11.0: - resolution: {integrity: sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==} - - use-callback-ref@1.3.0: - resolution: {integrity: sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - use-composed-ref@1.3.0: - resolution: {integrity: sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - - use-isomorphic-layout-effect@1.1.2: - resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} - peerDependencies: - '@types/react': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - use-latest@1.2.1: - resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} - peerDependencies: - '@types/react': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - use-sidecar@1.1.2: - resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.9.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - use-sync-external-store@1.2.0: - resolution: {integrity: sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - - use@3.1.1: - resolution: {integrity: sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==} - engines: {node: '>=0.10.0'} - - util-deprecate@1.0.2: - resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - - util.promisify@1.0.0: - resolution: {integrity: sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==} - - util@0.10.3: - resolution: {integrity: sha512-5KiHfsmkqacuKjkRkdV7SsfDJ2EGiPsK92s2MhNSY0craxjTdKTtqKsJaCWp4LW33ZZ0OPUv1WO/TFvNQRiQxQ==} - - util@0.11.1: - resolution: {integrity: sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==} - - utila@0.4.0: - resolution: {integrity: sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==} - - utils-merge@1.0.1: - resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} - engines: {node: '>= 0.4.0'} - - uuid-browser@3.1.0: - resolution: {integrity: sha512-dsNgbLaTrd6l3MMxTtouOCFw4CBFc/3a+GgYA2YyrJvyQ1u6q4pcu3ktLoUZ/VN/Aw9WsauazbgsgdfVWgAKQg==} - - uuid@3.4.0: - resolution: {integrity: sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==} - deprecated: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details. - hasBin: true - - uuid@8.3.2: - resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} - hasBin: true - - uuid@9.0.0: - resolution: {integrity: sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==} - hasBin: true - - v8-compile-cache-lib@3.0.1: - resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} - - v8-to-istanbul@9.1.0: - resolution: {integrity: sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA==} - engines: {node: '>=10.12.0'} - - valid-data-url@3.0.1: - resolution: {integrity: sha512-jOWVmzVceKlVVdwjNSenT4PbGghU0SBIizAev8ofZVgivk/TVHXSbNL8LP6M3spZvkR9/QolkyJavGSX5Cs0UA==} - engines: {node: '>=10'} - - validate-npm-package-license@3.0.4: - resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} - - vary@1.1.2: - resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} - engines: {node: '>= 0.8'} - - vfile-location@3.2.0: - resolution: {integrity: sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==} - - vfile-message@2.0.4: - resolution: {integrity: sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==} - - vfile@4.2.1: - resolution: {integrity: sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==} - - vm-browserify@1.1.2: - resolution: {integrity: sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==} - - w3c-keyname@2.2.6: - resolution: {integrity: sha512-f+fciywl1SJEniZHD6H+kUO8gOnwIr7f4ijKA6+ZvJFjeGi1r4PDLl53Ayud9O/rk64RqgoQine0feoeOU0kXg==} - - walker@1.0.8: - resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==} - - watchpack-chokidar2@2.0.1: - resolution: {integrity: sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww==} - - watchpack@1.7.5: - resolution: {integrity: sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==} - - watchpack@2.4.0: - resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==} - engines: {node: '>=10.13.0'} - - web-namespaces@1.1.4: - resolution: {integrity: sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==} - - web-resource-inliner@5.0.0: - resolution: {integrity: sha512-AIihwH+ZmdHfkJm7BjSXiEClVt4zUFqX4YlFAzjL13wLtDuUneSaFvDBTbdYRecs35SiU7iNKbMnN+++wVfb6A==} - engines: {node: '>=10.0.0'} - - web-streams-polyfill@4.0.0-beta.3: - resolution: {integrity: sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==} - engines: {node: '>= 14'} - - web-tree-sitter@0.20.7: - resolution: {integrity: sha512-flC9JJmTII9uAeeYpWF8hxDJ7bfY+leldQryetll8Nv4WgI+MXc6h7TiyAZASWl9uC9TvmfdgOjZn1DAQecb3A==} - - webidl-conversions@3.0.1: - resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} - - webidl-conversions@7.0.0: - resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} - engines: {node: '>=12'} - - webpack-dev-middleware@3.7.3: - resolution: {integrity: sha512-djelc/zGiz9nZj/U7PTBi2ViorGJXEWo/3ltkPbDyxCXhhEXkW0ce99falaok4TPj+AsxLiXJR0EBOb0zh9fKQ==} - engines: {node: '>= 6'} - peerDependencies: - webpack: ^4.0.0 || ^5.0.0 - - webpack-dev-middleware@4.3.0: - resolution: {integrity: sha512-PjwyVY95/bhBh6VUqt6z4THplYcsvQ8YNNBTBM873xLVmw8FLeALn0qurHbs9EmcfhzQis/eoqypSnZeuUz26w==} - engines: {node: '>= v10.23.3'} - peerDependencies: - webpack: ^4.0.0 || ^5.0.0 - - webpack-filter-warnings-plugin@1.2.1: - resolution: {integrity: sha512-Ez6ytc9IseDMLPo0qCuNNYzgtUl8NovOqjIq4uAU8LTD4uoa1w1KpZyyzFtLTEMZpkkOkLfL9eN+KGYdk1Qtwg==} - engines: {node: '>= 4.3 < 5.0.0 || >= 5.10'} - peerDependencies: - webpack: ^2.0.0 || ^3.0.0 || ^4.0.0 - - webpack-hot-middleware@2.25.3: - resolution: {integrity: sha512-IK/0WAHs7MTu1tzLTjio73LjS3Ov+VvBKQmE8WPlJutgG5zT6Urgq/BbAdRrHTRpyzK0dvAvFh1Qg98akxgZpA==} - - webpack-log@2.0.0: - resolution: {integrity: sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==} - engines: {node: '>= 6'} - - webpack-sources@1.4.3: - resolution: {integrity: sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==} - - webpack-sources@3.2.3: - resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==} - engines: {node: '>=10.13.0'} - - webpack-virtual-modules@0.2.2: - resolution: {integrity: sha512-kDUmfm3BZrei0y+1NTHJInejzxfhtU8eDj2M7OKb2IWrPFAeO1SOH2KuQ68MSZu9IGEHcxbkKKR1v18FrUSOmA==} - - webpack-virtual-modules@0.4.6: - resolution: {integrity: sha512-5tyDlKLqPfMqjT3Q9TAqf2YqjwmnUleZwzJi1A5qXnlBCdj2AtOJ6wAWdglTIDOPgOiOrXeBeFcsQ8+aGQ6QbA==} - - webpack@4.46.0: - resolution: {integrity: sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q==} - engines: {node: '>=6.11.5'} - hasBin: true - peerDependencies: - webpack-cli: '*' - webpack-command: '*' - peerDependenciesMeta: - webpack-cli: - optional: true - webpack-command: - optional: true - - webpack@5.75.0: - resolution: {integrity: sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==} - engines: {node: '>=10.13.0'} - hasBin: true - peerDependencies: - webpack-cli: '*' - peerDependenciesMeta: - webpack-cli: - optional: true - - whatwg-url@11.0.0: - resolution: {integrity: sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==} - engines: {node: '>=12'} - - whatwg-url@5.0.0: - resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} - - which-boxed-primitive@1.0.2: - resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} - - which-collection@1.0.1: - resolution: {integrity: sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==} - - which-typed-array@1.1.9: - resolution: {integrity: sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==} - engines: {node: '>= 0.4'} - - which@1.3.1: - resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} - hasBin: true - - which@2.0.2: - resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} - engines: {node: '>= 8'} - hasBin: true - - wide-align@1.1.5: - resolution: {integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==} - - widest-line@3.1.0: - resolution: {integrity: sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==} - engines: {node: '>=8'} - - winston-transport@4.5.0: - resolution: {integrity: sha512-YpZzcUzBedhlTAfJg6vJDlyEai/IFMIVcaEZZyl3UXIl4gmqRpU7AE89AHLkbzLUsv0NVmw7ts+iztqKxxPW1Q==} - engines: {node: '>= 6.4.0'} - - winston@3.8.2: - resolution: {integrity: sha512-MsE1gRx1m5jdTTO9Ld/vND4krP2To+lgDoMEHGGa4HIlAUyXJtfc7CxQcGXVyz2IBpw5hbFkj2b/AtUdQwyRew==} - engines: {node: '>= 12.0.0'} - - word-wrap@1.2.3: - resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==} - engines: {node: '>=0.10.0'} - - wordwrap@1.0.0: - resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} - - worker-farm@1.7.0: - resolution: {integrity: sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==} - - worker-rpc@0.1.1: - resolution: {integrity: sha512-P1WjMrUB3qgJNI9jfmpZ/htmBEjFh//6l/5y8SD9hg1Ef5zTTVVoRjTrTEzPrNBQvmhMxkoTsjOXN10GWU7aCg==} - - wrap-ansi@6.2.0: - resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} - engines: {node: '>=8'} - - wrap-ansi@7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} - - wrappy@1.0.2: - resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - - write-file-atomic@3.0.3: - resolution: {integrity: sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==} - - write-file-atomic@4.0.2: - resolution: {integrity: sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==} - engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} - - ws@7.5.9: - resolution: {integrity: sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==} - engines: {node: '>=8.3.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - - ws@8.11.0: - resolution: {integrity: sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==} - engines: {node: '>=10.0.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - - ws@8.12.1: - resolution: {integrity: sha512-1qo+M9Ba+xNhPB+YTWUlK6M17brTut5EXbcBaMRN5pH5dFrXz7lzz1ChFSUq3bOUl8yEvSenhHmYUNJxFzdJew==} - engines: {node: '>=10.0.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: '>=5.0.2' - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - - x-default-browser@0.4.0: - resolution: {integrity: sha512-7LKo7RtWfoFN/rHx1UELv/2zHGMx8MkZKDq1xENmOCTkfIqZJ0zZ26NEJX8czhnPXVcqS0ARjjfJB+eJ0/5Cvw==} - hasBin: true - - xml-but-prettier@1.0.1: - resolution: {integrity: sha512-C2CJaadHrZTqESlH03WOyw0oZTtoy2uEg6dSDF6YRg+9GnYNub53RRemLpnvtbHDFelxMx4LajiFsYeR6XJHgQ==} - - xml@1.0.1: - resolution: {integrity: sha512-huCv9IH9Tcf95zuYCsQraZtWnJvBtLVE0QHMOs8bWyZAFZNDcYjsPq1nEx8jKA9y+Beo9v+7OBPRisQTjinQMw==} - - xmlhttprequest-ssl@2.0.0: - resolution: {integrity: sha512-QKxVRxiRACQcVuQEYFsI1hhkrMlrXHPegbbd1yn9UHOmRxY+si12nQYzri3vbzt8VdTTRviqcKxcyllFas5z2A==} - engines: {node: '>=0.4.0'} - - xtend@2.1.2: - resolution: {integrity: sha512-vMNKzr2rHP9Dp/e1NQFnLQlwlhp9L/LfvnsVdHxN1f+uggyVI3i08uD14GPvCToPkdsRfyPqIyYGmIk58V98ZQ==} - engines: {node: '>=0.4'} - - xtend@4.0.2: - resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} - engines: {node: '>=0.4'} - - y18n@4.0.3: - resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==} - - y18n@5.0.8: - resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} - engines: {node: '>=10'} - - yallist@2.1.2: - resolution: {integrity: sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==} - - yallist@3.1.1: - resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} - - yallist@4.0.0: - resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - - yaml@1.10.2: - resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} - engines: {node: '>= 6'} - - yaml@2.2.1: - resolution: {integrity: sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw==} - engines: {node: '>= 14'} - - yaml@2.2.2: - resolution: {integrity: sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA==} - engines: {node: '>= 14'} - - yargs-parser@20.2.9: - resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} - engines: {node: '>=10'} - - yargs-parser@21.1.1: - resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} - engines: {node: '>=12'} - - yargs@16.2.0: - resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==} - engines: {node: '>=10'} - - yargs@17.7.0: - resolution: {integrity: sha512-dwqOPg5trmrre9+v8SUo2q/hAwyKoVfu8OC1xPHKJGNdxAvPl4sKxL4vBnh3bQz/ZvvGAFeA5H3ou2kcOY8sQQ==} - engines: {node: '>=12'} - - yauzl@2.10.0: - resolution: {integrity: sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==} - - ylru@1.3.2: - resolution: {integrity: sha512-RXRJzMiK6U2ye0BlGGZnmpwJDPgakn6aNQ0A7gHRbD4I0uvK4TW6UqkK1V0pp9jskjJBAXd3dRrbzWkqJ+6cxA==} - engines: {node: '>= 4.0.0'} - - yn@3.1.1: - resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} - engines: {node: '>=6'} - - yocto-queue@0.1.0: - resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} - engines: {node: '>=10'} - - zenscroll@4.0.2: - resolution: {integrity: sha512-jEA1znR7b4C/NnaycInCU6h/d15ZzCd1jmsruqOKnZP6WXQSMH3W2GL+OXbkruslU4h+Tzuos0HdswzRUk/Vgg==} - - zod@3.21.4: - resolution: {integrity: sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==} - - zwitch@1.0.5: - resolution: {integrity: sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==} - -snapshots: - - '@ampproject/remapping@2.2.0': - dependencies: - '@jridgewell/gen-mapping': 0.1.1 - '@jridgewell/trace-mapping': 0.3.17 - - '@arcanis/slice-ansi@1.1.1': - dependencies: - grapheme-splitter: 1.0.4 - - '@asteasolutions/zod-to-openapi@4.6.0(zod@3.21.4)': - dependencies: - openapi3-ts: 3.2.0 - zod: 3.21.4 - - '@aws-crypto/crc32@3.0.0': - dependencies: - '@aws-crypto/util': 3.0.0 - '@aws-sdk/types': 3.289.0 - tslib: 1.14.1 - - '@aws-crypto/crc32c@3.0.0': - dependencies: - '@aws-crypto/util': 3.0.0 - '@aws-sdk/types': 3.289.0 - tslib: 1.14.1 - - '@aws-crypto/ie11-detection@3.0.0': - dependencies: - tslib: 1.14.1 - - '@aws-crypto/sha1-browser@3.0.0': - dependencies: - '@aws-crypto/ie11-detection': 3.0.0 - '@aws-crypto/supports-web-crypto': 3.0.0 - '@aws-crypto/util': 3.0.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-locate-window': 3.208.0 - '@aws-sdk/util-utf8-browser': 3.259.0 - tslib: 1.14.1 - - '@aws-crypto/sha256-browser@3.0.0': - dependencies: - '@aws-crypto/ie11-detection': 3.0.0 - '@aws-crypto/sha256-js': 3.0.0 - '@aws-crypto/supports-web-crypto': 3.0.0 - '@aws-crypto/util': 3.0.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-locate-window': 3.208.0 - '@aws-sdk/util-utf8-browser': 3.259.0 - tslib: 1.14.1 - - '@aws-crypto/sha256-js@3.0.0': - dependencies: - '@aws-crypto/util': 3.0.0 - '@aws-sdk/types': 3.289.0 - tslib: 1.14.1 - - '@aws-crypto/supports-web-crypto@3.0.0': - dependencies: - tslib: 1.14.1 - - '@aws-crypto/util@3.0.0': - dependencies: - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-utf8-browser': 3.259.0 - tslib: 1.14.1 - - '@aws-sdk/abort-controller@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/abort-controller@3.289.0': - dependencies: - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/chunked-blob-reader-native@3.208.0': - dependencies: - '@aws-sdk/util-base64': 3.208.0 - tslib: 2.5.0 - - '@aws-sdk/chunked-blob-reader@3.188.0': - dependencies: - tslib: 2.5.0 - - '@aws-sdk/client-cognito-identity@3.272.0': - dependencies: - '@aws-crypto/sha256-browser': 3.0.0 - '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/client-sts': 3.272.0 - '@aws-sdk/config-resolver': 3.272.0 - '@aws-sdk/credential-provider-node': 3.272.0 - '@aws-sdk/fetch-http-handler': 3.272.0 - '@aws-sdk/hash-node': 3.272.0 - '@aws-sdk/invalid-dependency': 3.272.0 - '@aws-sdk/middleware-content-length': 3.272.0 - '@aws-sdk/middleware-endpoint': 3.272.0 - '@aws-sdk/middleware-host-header': 3.272.0 - '@aws-sdk/middleware-logger': 3.272.0 - '@aws-sdk/middleware-recursion-detection': 3.272.0 - '@aws-sdk/middleware-retry': 3.272.0 - '@aws-sdk/middleware-serde': 3.272.0 - '@aws-sdk/middleware-signing': 3.272.0 - '@aws-sdk/middleware-stack': 3.272.0 - '@aws-sdk/middleware-user-agent': 3.272.0 - '@aws-sdk/node-config-provider': 3.272.0 - '@aws-sdk/node-http-handler': 3.272.0 - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/smithy-client': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/url-parser': 3.272.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.272.0 - '@aws-sdk/util-defaults-mode-node': 3.272.0 - '@aws-sdk/util-endpoints': 3.272.0 - '@aws-sdk/util-retry': 3.272.0 - '@aws-sdk/util-user-agent-browser': 3.272.0 - '@aws-sdk/util-user-agent-node': 3.272.0 - '@aws-sdk/util-utf8': 3.254.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/client-s3@3.289.0': - dependencies: - '@aws-crypto/sha1-browser': 3.0.0 - '@aws-crypto/sha256-browser': 3.0.0 - '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/client-sts': 3.289.0 - '@aws-sdk/config-resolver': 3.289.0 - '@aws-sdk/credential-provider-node': 3.289.0 - '@aws-sdk/eventstream-serde-browser': 3.289.0 - '@aws-sdk/eventstream-serde-config-resolver': 3.289.0 - '@aws-sdk/eventstream-serde-node': 3.289.0 - '@aws-sdk/fetch-http-handler': 3.289.0 - '@aws-sdk/hash-blob-browser': 3.289.0 - '@aws-sdk/hash-node': 3.289.0 - '@aws-sdk/hash-stream-node': 3.289.0 - '@aws-sdk/invalid-dependency': 3.289.0 - '@aws-sdk/md5-js': 3.289.0 - '@aws-sdk/middleware-bucket-endpoint': 3.289.0 - '@aws-sdk/middleware-content-length': 3.289.0 - '@aws-sdk/middleware-endpoint': 3.289.0 - '@aws-sdk/middleware-expect-continue': 3.289.0 - '@aws-sdk/middleware-flexible-checksums': 3.289.0 - '@aws-sdk/middleware-host-header': 3.289.0 - '@aws-sdk/middleware-location-constraint': 3.289.0 - '@aws-sdk/middleware-logger': 3.289.0 - '@aws-sdk/middleware-recursion-detection': 3.289.0 - '@aws-sdk/middleware-retry': 3.289.0 - '@aws-sdk/middleware-sdk-s3': 3.289.0 - '@aws-sdk/middleware-serde': 3.289.0 - '@aws-sdk/middleware-signing': 3.289.0 - '@aws-sdk/middleware-ssec': 3.289.0 - '@aws-sdk/middleware-stack': 3.289.0 - '@aws-sdk/middleware-user-agent': 3.289.0 - '@aws-sdk/node-config-provider': 3.289.0 - '@aws-sdk/node-http-handler': 3.289.0 - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/signature-v4-multi-region': 3.289.0 - '@aws-sdk/smithy-client': 3.289.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/url-parser': 3.289.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.289.0 - '@aws-sdk/util-defaults-mode-node': 3.289.0 - '@aws-sdk/util-endpoints': 3.289.0 - '@aws-sdk/util-retry': 3.289.0 - '@aws-sdk/util-stream-browser': 3.289.0 - '@aws-sdk/util-stream-node': 3.289.0 - '@aws-sdk/util-user-agent-browser': 3.289.0 - '@aws-sdk/util-user-agent-node': 3.289.0 - '@aws-sdk/util-utf8': 3.254.0 - '@aws-sdk/util-waiter': 3.289.0 - '@aws-sdk/xml-builder': 3.201.0 - fast-xml-parser: 4.1.2 - tslib: 2.5.0 - transitivePeerDependencies: - - '@aws-sdk/signature-v4-crt' - - aws-crt - - '@aws-sdk/client-sso-oidc@3.272.0': - dependencies: - '@aws-crypto/sha256-browser': 3.0.0 - '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/config-resolver': 3.272.0 - '@aws-sdk/fetch-http-handler': 3.272.0 - '@aws-sdk/hash-node': 3.272.0 - '@aws-sdk/invalid-dependency': 3.272.0 - '@aws-sdk/middleware-content-length': 3.272.0 - '@aws-sdk/middleware-endpoint': 3.272.0 - '@aws-sdk/middleware-host-header': 3.272.0 - '@aws-sdk/middleware-logger': 3.272.0 - '@aws-sdk/middleware-recursion-detection': 3.272.0 - '@aws-sdk/middleware-retry': 3.272.0 - '@aws-sdk/middleware-serde': 3.272.0 - '@aws-sdk/middleware-stack': 3.272.0 - '@aws-sdk/middleware-user-agent': 3.272.0 - '@aws-sdk/node-config-provider': 3.272.0 - '@aws-sdk/node-http-handler': 3.272.0 - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/smithy-client': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/url-parser': 3.272.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.272.0 - '@aws-sdk/util-defaults-mode-node': 3.272.0 - '@aws-sdk/util-endpoints': 3.272.0 - '@aws-sdk/util-retry': 3.272.0 - '@aws-sdk/util-user-agent-browser': 3.272.0 - '@aws-sdk/util-user-agent-node': 3.272.0 - '@aws-sdk/util-utf8': 3.254.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/client-sso-oidc@3.289.0': - dependencies: - '@aws-crypto/sha256-browser': 3.0.0 - '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/config-resolver': 3.289.0 - '@aws-sdk/fetch-http-handler': 3.289.0 - '@aws-sdk/hash-node': 3.289.0 - '@aws-sdk/invalid-dependency': 3.289.0 - '@aws-sdk/middleware-content-length': 3.289.0 - '@aws-sdk/middleware-endpoint': 3.289.0 - '@aws-sdk/middleware-host-header': 3.289.0 - '@aws-sdk/middleware-logger': 3.289.0 - '@aws-sdk/middleware-recursion-detection': 3.289.0 - '@aws-sdk/middleware-retry': 3.289.0 - '@aws-sdk/middleware-serde': 3.289.0 - '@aws-sdk/middleware-stack': 3.289.0 - '@aws-sdk/middleware-user-agent': 3.289.0 - '@aws-sdk/node-config-provider': 3.289.0 - '@aws-sdk/node-http-handler': 3.289.0 - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/smithy-client': 3.289.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/url-parser': 3.289.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.289.0 - '@aws-sdk/util-defaults-mode-node': 3.289.0 - '@aws-sdk/util-endpoints': 3.289.0 - '@aws-sdk/util-retry': 3.289.0 - '@aws-sdk/util-user-agent-browser': 3.289.0 - '@aws-sdk/util-user-agent-node': 3.289.0 - '@aws-sdk/util-utf8': 3.254.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/client-sso@3.272.0': - dependencies: - '@aws-crypto/sha256-browser': 3.0.0 - '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/config-resolver': 3.272.0 - '@aws-sdk/fetch-http-handler': 3.272.0 - '@aws-sdk/hash-node': 3.272.0 - '@aws-sdk/invalid-dependency': 3.272.0 - '@aws-sdk/middleware-content-length': 3.272.0 - '@aws-sdk/middleware-endpoint': 3.272.0 - '@aws-sdk/middleware-host-header': 3.272.0 - '@aws-sdk/middleware-logger': 3.272.0 - '@aws-sdk/middleware-recursion-detection': 3.272.0 - '@aws-sdk/middleware-retry': 3.272.0 - '@aws-sdk/middleware-serde': 3.272.0 - '@aws-sdk/middleware-stack': 3.272.0 - '@aws-sdk/middleware-user-agent': 3.272.0 - '@aws-sdk/node-config-provider': 3.272.0 - '@aws-sdk/node-http-handler': 3.272.0 - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/smithy-client': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/url-parser': 3.272.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.272.0 - '@aws-sdk/util-defaults-mode-node': 3.272.0 - '@aws-sdk/util-endpoints': 3.272.0 - '@aws-sdk/util-retry': 3.272.0 - '@aws-sdk/util-user-agent-browser': 3.272.0 - '@aws-sdk/util-user-agent-node': 3.272.0 - '@aws-sdk/util-utf8': 3.254.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/client-sso@3.289.0': - dependencies: - '@aws-crypto/sha256-browser': 3.0.0 - '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/config-resolver': 3.289.0 - '@aws-sdk/fetch-http-handler': 3.289.0 - '@aws-sdk/hash-node': 3.289.0 - '@aws-sdk/invalid-dependency': 3.289.0 - '@aws-sdk/middleware-content-length': 3.289.0 - '@aws-sdk/middleware-endpoint': 3.289.0 - '@aws-sdk/middleware-host-header': 3.289.0 - '@aws-sdk/middleware-logger': 3.289.0 - '@aws-sdk/middleware-recursion-detection': 3.289.0 - '@aws-sdk/middleware-retry': 3.289.0 - '@aws-sdk/middleware-serde': 3.289.0 - '@aws-sdk/middleware-stack': 3.289.0 - '@aws-sdk/middleware-user-agent': 3.289.0 - '@aws-sdk/node-config-provider': 3.289.0 - '@aws-sdk/node-http-handler': 3.289.0 - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/smithy-client': 3.289.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/url-parser': 3.289.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.289.0 - '@aws-sdk/util-defaults-mode-node': 3.289.0 - '@aws-sdk/util-endpoints': 3.289.0 - '@aws-sdk/util-retry': 3.289.0 - '@aws-sdk/util-user-agent-browser': 3.289.0 - '@aws-sdk/util-user-agent-node': 3.289.0 - '@aws-sdk/util-utf8': 3.254.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/client-sts@3.272.0': - dependencies: - '@aws-crypto/sha256-browser': 3.0.0 - '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/config-resolver': 3.272.0 - '@aws-sdk/credential-provider-node': 3.272.0 - '@aws-sdk/fetch-http-handler': 3.272.0 - '@aws-sdk/hash-node': 3.272.0 - '@aws-sdk/invalid-dependency': 3.272.0 - '@aws-sdk/middleware-content-length': 3.272.0 - '@aws-sdk/middleware-endpoint': 3.272.0 - '@aws-sdk/middleware-host-header': 3.272.0 - '@aws-sdk/middleware-logger': 3.272.0 - '@aws-sdk/middleware-recursion-detection': 3.272.0 - '@aws-sdk/middleware-retry': 3.272.0 - '@aws-sdk/middleware-sdk-sts': 3.272.0 - '@aws-sdk/middleware-serde': 3.272.0 - '@aws-sdk/middleware-signing': 3.272.0 - '@aws-sdk/middleware-stack': 3.272.0 - '@aws-sdk/middleware-user-agent': 3.272.0 - '@aws-sdk/node-config-provider': 3.272.0 - '@aws-sdk/node-http-handler': 3.272.0 - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/smithy-client': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/url-parser': 3.272.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.272.0 - '@aws-sdk/util-defaults-mode-node': 3.272.0 - '@aws-sdk/util-endpoints': 3.272.0 - '@aws-sdk/util-retry': 3.272.0 - '@aws-sdk/util-user-agent-browser': 3.272.0 - '@aws-sdk/util-user-agent-node': 3.272.0 - '@aws-sdk/util-utf8': 3.254.0 - fast-xml-parser: 4.0.11 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/client-sts@3.289.0': - dependencies: - '@aws-crypto/sha256-browser': 3.0.0 - '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/config-resolver': 3.289.0 - '@aws-sdk/credential-provider-node': 3.289.0 - '@aws-sdk/fetch-http-handler': 3.289.0 - '@aws-sdk/hash-node': 3.289.0 - '@aws-sdk/invalid-dependency': 3.289.0 - '@aws-sdk/middleware-content-length': 3.289.0 - '@aws-sdk/middleware-endpoint': 3.289.0 - '@aws-sdk/middleware-host-header': 3.289.0 - '@aws-sdk/middleware-logger': 3.289.0 - '@aws-sdk/middleware-recursion-detection': 3.289.0 - '@aws-sdk/middleware-retry': 3.289.0 - '@aws-sdk/middleware-sdk-sts': 3.289.0 - '@aws-sdk/middleware-serde': 3.289.0 - '@aws-sdk/middleware-signing': 3.289.0 - '@aws-sdk/middleware-stack': 3.289.0 - '@aws-sdk/middleware-user-agent': 3.289.0 - '@aws-sdk/node-config-provider': 3.289.0 - '@aws-sdk/node-http-handler': 3.289.0 - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/smithy-client': 3.289.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/url-parser': 3.289.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.289.0 - '@aws-sdk/util-defaults-mode-node': 3.289.0 - '@aws-sdk/util-endpoints': 3.289.0 - '@aws-sdk/util-retry': 3.289.0 - '@aws-sdk/util-user-agent-browser': 3.289.0 - '@aws-sdk/util-user-agent-node': 3.289.0 - '@aws-sdk/util-utf8': 3.254.0 - fast-xml-parser: 4.1.2 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/config-resolver@3.272.0': - dependencies: - '@aws-sdk/signature-v4': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/util-config-provider': 3.208.0 - '@aws-sdk/util-middleware': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/config-resolver@3.289.0': - dependencies: - '@aws-sdk/signature-v4': 3.289.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-config-provider': 3.208.0 - '@aws-sdk/util-middleware': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/credential-provider-cognito-identity@3.272.0': - dependencies: - '@aws-sdk/client-cognito-identity': 3.272.0 - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/credential-provider-env@3.272.0': - dependencies: - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/credential-provider-env@3.289.0': - dependencies: - '@aws-sdk/property-provider': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/credential-provider-imds@3.272.0': - dependencies: - '@aws-sdk/node-config-provider': 3.272.0 - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/url-parser': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/credential-provider-imds@3.289.0': - dependencies: - '@aws-sdk/node-config-provider': 3.289.0 - '@aws-sdk/property-provider': 3.289.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/url-parser': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/credential-provider-ini@3.272.0': - dependencies: - '@aws-sdk/credential-provider-env': 3.272.0 - '@aws-sdk/credential-provider-imds': 3.272.0 - '@aws-sdk/credential-provider-process': 3.272.0 - '@aws-sdk/credential-provider-sso': 3.272.0 - '@aws-sdk/credential-provider-web-identity': 3.272.0 - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/shared-ini-file-loader': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/credential-provider-ini@3.289.0': - dependencies: - '@aws-sdk/credential-provider-env': 3.289.0 - '@aws-sdk/credential-provider-imds': 3.289.0 - '@aws-sdk/credential-provider-process': 3.289.0 - '@aws-sdk/credential-provider-sso': 3.289.0 - '@aws-sdk/credential-provider-web-identity': 3.289.0 - '@aws-sdk/property-provider': 3.289.0 - '@aws-sdk/shared-ini-file-loader': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/credential-provider-node@3.272.0': - dependencies: - '@aws-sdk/credential-provider-env': 3.272.0 - '@aws-sdk/credential-provider-imds': 3.272.0 - '@aws-sdk/credential-provider-ini': 3.272.0 - '@aws-sdk/credential-provider-process': 3.272.0 - '@aws-sdk/credential-provider-sso': 3.272.0 - '@aws-sdk/credential-provider-web-identity': 3.272.0 - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/shared-ini-file-loader': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/credential-provider-node@3.289.0': - dependencies: - '@aws-sdk/credential-provider-env': 3.289.0 - '@aws-sdk/credential-provider-imds': 3.289.0 - '@aws-sdk/credential-provider-ini': 3.289.0 - '@aws-sdk/credential-provider-process': 3.289.0 - '@aws-sdk/credential-provider-sso': 3.289.0 - '@aws-sdk/credential-provider-web-identity': 3.289.0 - '@aws-sdk/property-provider': 3.289.0 - '@aws-sdk/shared-ini-file-loader': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/credential-provider-process@3.272.0': - dependencies: - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/shared-ini-file-loader': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/credential-provider-process@3.289.0': - dependencies: - '@aws-sdk/property-provider': 3.289.0 - '@aws-sdk/shared-ini-file-loader': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/credential-provider-sso@3.272.0': - dependencies: - '@aws-sdk/client-sso': 3.272.0 - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/shared-ini-file-loader': 3.272.0 - '@aws-sdk/token-providers': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/credential-provider-sso@3.289.0': - dependencies: - '@aws-sdk/client-sso': 3.289.0 - '@aws-sdk/property-provider': 3.289.0 - '@aws-sdk/shared-ini-file-loader': 3.289.0 - '@aws-sdk/token-providers': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/credential-provider-web-identity@3.272.0': - dependencies: - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/credential-provider-web-identity@3.289.0': - dependencies: - '@aws-sdk/property-provider': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/credential-providers@3.272.0': - dependencies: - '@aws-sdk/client-cognito-identity': 3.272.0 - '@aws-sdk/client-sso': 3.272.0 - '@aws-sdk/client-sts': 3.272.0 - '@aws-sdk/credential-provider-cognito-identity': 3.272.0 - '@aws-sdk/credential-provider-env': 3.272.0 - '@aws-sdk/credential-provider-imds': 3.272.0 - '@aws-sdk/credential-provider-ini': 3.272.0 - '@aws-sdk/credential-provider-node': 3.272.0 - '@aws-sdk/credential-provider-process': 3.272.0 - '@aws-sdk/credential-provider-sso': 3.272.0 - '@aws-sdk/credential-provider-web-identity': 3.272.0 - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/shared-ini-file-loader': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/eventstream-codec@3.289.0': - dependencies: - '@aws-crypto/crc32': 3.0.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-hex-encoding': 3.201.0 - tslib: 2.5.0 - - '@aws-sdk/eventstream-serde-browser@3.289.0': - dependencies: - '@aws-sdk/eventstream-serde-universal': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/eventstream-serde-config-resolver@3.289.0': - dependencies: - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/eventstream-serde-node@3.289.0': - dependencies: - '@aws-sdk/eventstream-serde-universal': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/eventstream-serde-universal@3.289.0': - dependencies: - '@aws-sdk/eventstream-codec': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/fetch-http-handler@3.272.0': - dependencies: - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/querystring-builder': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/util-base64': 3.208.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/fetch-http-handler@3.289.0': - dependencies: - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/querystring-builder': 3.289.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-base64': 3.208.0 - tslib: 2.5.0 - - '@aws-sdk/hash-blob-browser@3.289.0': - dependencies: - '@aws-sdk/chunked-blob-reader': 3.188.0 - '@aws-sdk/chunked-blob-reader-native': 3.208.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/hash-node@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - '@aws-sdk/util-buffer-from': 3.208.0 - '@aws-sdk/util-utf8': 3.254.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/hash-node@3.289.0': - dependencies: - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-buffer-from': 3.208.0 - '@aws-sdk/util-utf8': 3.254.0 - tslib: 2.5.0 - - '@aws-sdk/hash-stream-node@3.289.0': - dependencies: - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-utf8': 3.254.0 - tslib: 2.5.0 - - '@aws-sdk/invalid-dependency@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/invalid-dependency@3.289.0': - dependencies: - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/is-array-buffer@3.201.0': - dependencies: - tslib: 2.5.0 - - '@aws-sdk/lib-storage@3.289.0(@aws-sdk/abort-controller@3.289.0)(@aws-sdk/client-s3@3.289.0)': - dependencies: - '@aws-sdk/abort-controller': 3.289.0 - '@aws-sdk/client-s3': 3.289.0 - '@aws-sdk/middleware-endpoint': 3.289.0 - '@aws-sdk/smithy-client': 3.289.0 - buffer: 5.6.0 - events: 3.3.0 - stream-browserify: 3.0.0 - tslib: 2.5.0 - - '@aws-sdk/md5-js@3.289.0': - dependencies: - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-utf8': 3.254.0 - tslib: 2.5.0 - - '@aws-sdk/middleware-bucket-endpoint@3.289.0': - dependencies: - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-arn-parser': 3.208.0 - '@aws-sdk/util-config-provider': 3.208.0 - tslib: 2.5.0 - - '@aws-sdk/middleware-content-length@3.272.0': - dependencies: - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-content-length@3.289.0': - dependencies: - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/middleware-endpoint@3.272.0': - dependencies: - '@aws-sdk/middleware-serde': 3.272.0 - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/signature-v4': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/url-parser': 3.272.0 - '@aws-sdk/util-config-provider': 3.208.0 - '@aws-sdk/util-middleware': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-endpoint@3.289.0': - dependencies: - '@aws-sdk/middleware-serde': 3.289.0 - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/signature-v4': 3.289.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/url-parser': 3.289.0 - '@aws-sdk/util-config-provider': 3.208.0 - '@aws-sdk/util-middleware': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/middleware-expect-continue@3.289.0': - dependencies: - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/middleware-flexible-checksums@3.289.0': - dependencies: - '@aws-crypto/crc32': 3.0.0 - '@aws-crypto/crc32c': 3.0.0 - '@aws-sdk/is-array-buffer': 3.201.0 - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-utf8': 3.254.0 - tslib: 2.5.0 - - '@aws-sdk/middleware-host-header@3.272.0': - dependencies: - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-host-header@3.289.0': - dependencies: - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/middleware-location-constraint@3.289.0': - dependencies: - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/middleware-logger@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-logger@3.289.0': - dependencies: - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/middleware-recursion-detection@3.272.0': - dependencies: - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-recursion-detection@3.289.0': - dependencies: - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/middleware-retry@3.272.0': - dependencies: - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/service-error-classification': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/util-middleware': 3.272.0 - '@aws-sdk/util-retry': 3.272.0 - tslib: 2.5.0 - uuid: 8.3.2 - optional: true - - '@aws-sdk/middleware-retry@3.289.0': - dependencies: - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/service-error-classification': 3.289.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-middleware': 3.289.0 - '@aws-sdk/util-retry': 3.289.0 - tslib: 2.5.0 - uuid: 8.3.2 - - '@aws-sdk/middleware-sdk-s3@3.289.0': - dependencies: - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-arn-parser': 3.208.0 - tslib: 2.5.0 - - '@aws-sdk/middleware-sdk-sts@3.272.0': - dependencies: - '@aws-sdk/middleware-signing': 3.272.0 - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/signature-v4': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-sdk-sts@3.289.0': - dependencies: - '@aws-sdk/middleware-signing': 3.289.0 - '@aws-sdk/property-provider': 3.289.0 - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/signature-v4': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/middleware-serde@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-serde@3.289.0': - dependencies: - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/middleware-signing@3.272.0': - dependencies: - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/signature-v4': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/util-middleware': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-signing@3.289.0': - dependencies: - '@aws-sdk/property-provider': 3.289.0 - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/signature-v4': 3.289.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-middleware': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/middleware-ssec@3.289.0': - dependencies: - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/middleware-stack@3.272.0': - dependencies: - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-stack@3.289.0': - dependencies: - tslib: 2.5.0 - - '@aws-sdk/middleware-user-agent@3.272.0': - dependencies: - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-user-agent@3.289.0': - dependencies: - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/node-config-provider@3.272.0': - dependencies: - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/shared-ini-file-loader': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/node-config-provider@3.289.0': - dependencies: - '@aws-sdk/property-provider': 3.289.0 - '@aws-sdk/shared-ini-file-loader': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/node-http-handler@3.272.0': - dependencies: - '@aws-sdk/abort-controller': 3.272.0 - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/querystring-builder': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/node-http-handler@3.289.0': - dependencies: - '@aws-sdk/abort-controller': 3.289.0 - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/querystring-builder': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/property-provider@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/property-provider@3.289.0': - dependencies: - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/protocol-http@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/protocol-http@3.289.0': - dependencies: - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/querystring-builder@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - '@aws-sdk/util-uri-escape': 3.201.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/querystring-builder@3.289.0': - dependencies: - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-uri-escape': 3.201.0 - tslib: 2.5.0 - - '@aws-sdk/querystring-parser@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/querystring-parser@3.289.0': - dependencies: - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/s3-request-presigner@3.289.0': - dependencies: - '@aws-sdk/middleware-endpoint': 3.289.0 - '@aws-sdk/middleware-sdk-s3': 3.289.0 - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/signature-v4-multi-region': 3.289.0 - '@aws-sdk/smithy-client': 3.289.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-create-request': 3.289.0 - '@aws-sdk/util-format-url': 3.289.0 - tslib: 2.5.0 - transitivePeerDependencies: - - '@aws-sdk/signature-v4-crt' - - '@aws-sdk/service-error-classification@3.272.0': - optional: true - - '@aws-sdk/service-error-classification@3.289.0': {} - - '@aws-sdk/shared-ini-file-loader@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/shared-ini-file-loader@3.289.0': - dependencies: - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/signature-v4-multi-region@3.289.0': - dependencies: - '@aws-sdk/protocol-http': 3.289.0 - '@aws-sdk/signature-v4': 3.289.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-arn-parser': 3.208.0 - tslib: 2.5.0 - - '@aws-sdk/signature-v4@3.272.0': - dependencies: - '@aws-sdk/is-array-buffer': 3.201.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/util-hex-encoding': 3.201.0 - '@aws-sdk/util-middleware': 3.272.0 - '@aws-sdk/util-uri-escape': 3.201.0 - '@aws-sdk/util-utf8': 3.254.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/signature-v4@3.289.0': - dependencies: - '@aws-sdk/is-array-buffer': 3.201.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-hex-encoding': 3.201.0 - '@aws-sdk/util-middleware': 3.289.0 - '@aws-sdk/util-uri-escape': 3.201.0 - '@aws-sdk/util-utf8': 3.254.0 - tslib: 2.5.0 - - '@aws-sdk/smithy-client@3.272.0': - dependencies: - '@aws-sdk/middleware-stack': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/smithy-client@3.289.0': - dependencies: - '@aws-sdk/middleware-stack': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/token-providers@3.272.0': - dependencies: - '@aws-sdk/client-sso-oidc': 3.272.0 - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/shared-ini-file-loader': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/token-providers@3.289.0': - dependencies: - '@aws-sdk/client-sso-oidc': 3.289.0 - '@aws-sdk/property-provider': 3.289.0 - '@aws-sdk/shared-ini-file-loader': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/types@3.272.0': - dependencies: - tslib: 2.5.0 - optional: true - - '@aws-sdk/types@3.289.0': - dependencies: - tslib: 2.5.0 - - '@aws-sdk/url-parser@3.272.0': - dependencies: - '@aws-sdk/querystring-parser': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/url-parser@3.289.0': - dependencies: - '@aws-sdk/querystring-parser': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/util-arn-parser@3.208.0': - dependencies: - tslib: 2.5.0 - - '@aws-sdk/util-base64@3.208.0': - dependencies: - '@aws-sdk/util-buffer-from': 3.208.0 - tslib: 2.5.0 - - '@aws-sdk/util-body-length-browser@3.188.0': - dependencies: - tslib: 2.5.0 - - '@aws-sdk/util-body-length-node@3.208.0': - dependencies: - tslib: 2.5.0 - - '@aws-sdk/util-buffer-from@3.208.0': - dependencies: - '@aws-sdk/is-array-buffer': 3.201.0 - tslib: 2.5.0 - - '@aws-sdk/util-config-provider@3.208.0': - dependencies: - tslib: 2.5.0 - - '@aws-sdk/util-create-request@3.289.0': - dependencies: - '@aws-sdk/middleware-stack': 3.289.0 - '@aws-sdk/smithy-client': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/util-defaults-mode-browser@3.272.0': - dependencies: - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/types': 3.272.0 - bowser: 2.11.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-defaults-mode-browser@3.289.0': - dependencies: - '@aws-sdk/property-provider': 3.289.0 - '@aws-sdk/types': 3.289.0 - bowser: 2.11.0 - tslib: 2.5.0 - - '@aws-sdk/util-defaults-mode-node@3.272.0': - dependencies: - '@aws-sdk/config-resolver': 3.272.0 - '@aws-sdk/credential-provider-imds': 3.272.0 - '@aws-sdk/node-config-provider': 3.272.0 - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-defaults-mode-node@3.289.0': - dependencies: - '@aws-sdk/config-resolver': 3.289.0 - '@aws-sdk/credential-provider-imds': 3.289.0 - '@aws-sdk/node-config-provider': 3.289.0 - '@aws-sdk/property-provider': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/util-endpoints@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-endpoints@3.289.0': - dependencies: - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/util-format-url@3.289.0': - dependencies: - '@aws-sdk/querystring-builder': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/util-hex-encoding@3.201.0': - dependencies: - tslib: 2.5.0 - - '@aws-sdk/util-locate-window@3.208.0': - dependencies: - tslib: 2.5.0 - - '@aws-sdk/util-middleware@3.272.0': - dependencies: - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-middleware@3.289.0': - dependencies: - tslib: 2.5.0 - - '@aws-sdk/util-retry@3.272.0': - dependencies: - '@aws-sdk/service-error-classification': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-retry@3.289.0': - dependencies: - '@aws-sdk/service-error-classification': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/util-stream-browser@3.289.0': - dependencies: - '@aws-sdk/fetch-http-handler': 3.289.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-base64': 3.208.0 - '@aws-sdk/util-hex-encoding': 3.201.0 - '@aws-sdk/util-utf8': 3.254.0 - tslib: 2.5.0 - - '@aws-sdk/util-stream-node@3.289.0': - dependencies: - '@aws-sdk/node-http-handler': 3.289.0 - '@aws-sdk/types': 3.289.0 - '@aws-sdk/util-buffer-from': 3.208.0 - tslib: 2.5.0 - - '@aws-sdk/util-uri-escape@3.201.0': - dependencies: - tslib: 2.5.0 - - '@aws-sdk/util-user-agent-browser@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - bowser: 2.11.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-user-agent-browser@3.289.0': - dependencies: - '@aws-sdk/types': 3.289.0 - bowser: 2.11.0 - tslib: 2.5.0 - - '@aws-sdk/util-user-agent-node@3.272.0': - dependencies: - '@aws-sdk/node-config-provider': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-user-agent-node@3.289.0': - dependencies: - '@aws-sdk/node-config-provider': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/util-utf8-browser@3.259.0': - dependencies: - tslib: 2.5.0 - - '@aws-sdk/util-utf8@3.254.0': - dependencies: - '@aws-sdk/util-buffer-from': 3.208.0 - tslib: 2.5.0 - - '@aws-sdk/util-waiter@3.289.0': - dependencies: - '@aws-sdk/abort-controller': 3.289.0 - '@aws-sdk/types': 3.289.0 - tslib: 2.5.0 - - '@aws-sdk/xml-builder@3.201.0': - dependencies: - tslib: 2.5.0 - - '@babel/code-frame@7.18.6': - dependencies: - '@babel/highlight': 7.18.6 - - '@babel/compat-data@7.21.0': {} - - '@babel/core@7.12.9': - dependencies: - '@babel/code-frame': 7.18.6 - '@babel/generator': 7.21.1 - '@babel/helper-module-transforms': 7.21.0 - '@babel/helpers': 7.21.0 - '@babel/parser': 7.21.1 - '@babel/template': 7.20.7 - '@babel/traverse': 7.21.0 - '@babel/types': 7.21.0 - convert-source-map: 1.9.0 - debug: 4.3.4 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - lodash: 4.17.21 - resolve: 1.22.1 - semver: 5.7.1 - source-map: 0.5.7 - transitivePeerDependencies: - - supports-color - - '@babel/core@7.21.0': - dependencies: - '@ampproject/remapping': 2.2.0 - '@babel/code-frame': 7.18.6 - '@babel/generator': 7.21.1 - '@babel/helper-compilation-targets': 7.20.7(@babel/core@7.21.0) - '@babel/helper-module-transforms': 7.21.0 - '@babel/helpers': 7.21.0 - '@babel/parser': 7.21.1 - '@babel/template': 7.20.7 - '@babel/traverse': 7.21.0 - '@babel/types': 7.21.0 - convert-source-map: 1.9.0 - debug: 4.3.4 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - semver: 6.3.0 - transitivePeerDependencies: - - supports-color - - '@babel/generator@7.21.1': - dependencies: - '@babel/types': 7.21.0 - '@jridgewell/gen-mapping': 0.3.2 - '@jridgewell/trace-mapping': 0.3.17 - jsesc: 2.5.2 - - '@babel/helper-annotate-as-pure@7.18.6': - dependencies: - '@babel/types': 7.21.0 - - '@babel/helper-builder-binary-assignment-operator-visitor@7.18.9': - dependencies: - '@babel/helper-explode-assignable-expression': 7.18.6 - '@babel/types': 7.21.0 - - '@babel/helper-compilation-targets@7.20.7(@babel/core@7.21.0)': - dependencies: - '@babel/compat-data': 7.21.0 - '@babel/core': 7.21.0 - '@babel/helper-validator-option': 7.21.0 - browserslist: 4.21.5 - lru-cache: 5.1.1 - semver: 6.3.0 - - '@babel/helper-create-class-features-plugin@7.21.0(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-annotate-as-pure': 7.18.6 - '@babel/helper-environment-visitor': 7.18.9 - '@babel/helper-function-name': 7.21.0 - '@babel/helper-member-expression-to-functions': 7.21.0 - '@babel/helper-optimise-call-expression': 7.18.6 - '@babel/helper-replace-supers': 7.20.7 - '@babel/helper-skip-transparent-expression-wrappers': 7.20.0 - '@babel/helper-split-export-declaration': 7.18.6 - transitivePeerDependencies: - - supports-color - - '@babel/helper-create-regexp-features-plugin@7.21.0(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-annotate-as-pure': 7.18.6 - regexpu-core: 5.3.1 - - '@babel/helper-define-polyfill-provider@0.1.5(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-compilation-targets': 7.20.7(@babel/core@7.21.0) - '@babel/helper-module-imports': 7.18.6 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/traverse': 7.21.0 - debug: 4.3.4 - lodash.debounce: 4.0.8 - resolve: 1.22.1 - semver: 6.3.0 - transitivePeerDependencies: - - supports-color - - '@babel/helper-define-polyfill-provider@0.3.3(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-compilation-targets': 7.20.7(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - debug: 4.3.4 - lodash.debounce: 4.0.8 - resolve: 1.22.1 - semver: 6.3.0 - transitivePeerDependencies: - - supports-color - - '@babel/helper-environment-visitor@7.18.9': {} - - '@babel/helper-explode-assignable-expression@7.18.6': - dependencies: - '@babel/types': 7.21.0 - - '@babel/helper-function-name@7.21.0': - dependencies: - '@babel/template': 7.20.7 - '@babel/types': 7.21.0 - - '@babel/helper-hoist-variables@7.18.6': - dependencies: - '@babel/types': 7.21.0 - - '@babel/helper-member-expression-to-functions@7.21.0': - dependencies: - '@babel/types': 7.21.0 - - '@babel/helper-module-imports@7.18.6': - dependencies: - '@babel/types': 7.21.0 - - '@babel/helper-module-transforms@7.21.0': - 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.21.0 - '@babel/types': 7.21.0 - transitivePeerDependencies: - - supports-color - - '@babel/helper-optimise-call-expression@7.18.6': - dependencies: - '@babel/types': 7.21.0 - - '@babel/helper-plugin-utils@7.10.4': {} - - '@babel/helper-plugin-utils@7.20.2': {} - - '@babel/helper-remap-async-to-generator@7.18.9(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-annotate-as-pure': 7.18.6 - '@babel/helper-environment-visitor': 7.18.9 - '@babel/helper-wrap-function': 7.20.5 - '@babel/types': 7.21.0 - transitivePeerDependencies: - - supports-color - - '@babel/helper-replace-supers@7.20.7': - dependencies: - '@babel/helper-environment-visitor': 7.18.9 - '@babel/helper-member-expression-to-functions': 7.21.0 - '@babel/helper-optimise-call-expression': 7.18.6 - '@babel/template': 7.20.7 - '@babel/traverse': 7.21.0 - '@babel/types': 7.21.0 - transitivePeerDependencies: - - supports-color - - '@babel/helper-simple-access@7.20.2': - dependencies: - '@babel/types': 7.21.0 - - '@babel/helper-skip-transparent-expression-wrappers@7.20.0': - dependencies: - '@babel/types': 7.21.0 - - '@babel/helper-split-export-declaration@7.18.6': - dependencies: - '@babel/types': 7.21.0 - - '@babel/helper-string-parser@7.19.4': {} - - '@babel/helper-validator-identifier@7.19.1': {} - - '@babel/helper-validator-option@7.21.0': {} - - '@babel/helper-wrap-function@7.20.5': - dependencies: - '@babel/helper-function-name': 7.21.0 - '@babel/template': 7.20.7 - '@babel/traverse': 7.21.0 - '@babel/types': 7.21.0 - transitivePeerDependencies: - - supports-color - - '@babel/helpers@7.21.0': - dependencies: - '@babel/template': 7.20.7 - '@babel/traverse': 7.21.0 - '@babel/types': 7.21.0 - transitivePeerDependencies: - - supports-color - - '@babel/highlight@7.18.6': - dependencies: - '@babel/helper-validator-identifier': 7.19.1 - chalk: 2.4.2 - js-tokens: 4.0.0 - - '@babel/parser@7.21.1': - dependencies: - '@babel/types': 7.21.0 - - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.20.7(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-skip-transparent-expression-wrappers': 7.20.0 - '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.21.0) - - '@babel/plugin-proposal-async-generator-functions@7.20.7(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-environment-visitor': 7.18.9 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-remap-async-to-generator': 7.18.9(@babel/core@7.21.0) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.21.0) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-proposal-class-properties@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-create-class-features-plugin': 7.21.0(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-proposal-class-static-block@7.21.0(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-create-class-features-plugin': 7.21.0(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.21.0) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-proposal-decorators@7.21.0(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-create-class-features-plugin': 7.21.0(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-replace-supers': 7.20.7 - '@babel/helper-split-export-declaration': 7.18.6 - '@babel/plugin-syntax-decorators': 7.21.0(@babel/core@7.21.0) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-proposal-dynamic-import@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.21.0) - - '@babel/plugin-proposal-export-default-from@7.18.10(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-export-default-from': 7.18.6(@babel/core@7.21.0) - - '@babel/plugin-proposal-export-namespace-from@7.18.9(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.21.0) - - '@babel/plugin-proposal-json-strings@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.21.0) - - '@babel/plugin-proposal-logical-assignment-operators@7.20.7(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.21.0) - - '@babel/plugin-proposal-nullish-coalescing-operator@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.21.0) - - '@babel/plugin-proposal-numeric-separator@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.21.0) - - '@babel/plugin-proposal-object-rest-spread@7.12.1(@babel/core@7.12.9)': - dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.12.9) - '@babel/plugin-transform-parameters': 7.20.7(@babel/core@7.12.9) - - '@babel/plugin-proposal-object-rest-spread@7.20.7(@babel/core@7.21.0)': - dependencies: - '@babel/compat-data': 7.21.0 - '@babel/core': 7.21.0 - '@babel/helper-compilation-targets': 7.20.7(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-transform-parameters': 7.20.7(@babel/core@7.21.0) - - '@babel/plugin-proposal-optional-catch-binding@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.21.0) - - '@babel/plugin-proposal-optional-chaining@7.21.0(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-skip-transparent-expression-wrappers': 7.20.0 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.21.0) - - '@babel/plugin-proposal-private-methods@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-create-class-features-plugin': 7.21.0(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-proposal-private-property-in-object@7.21.0(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-annotate-as-pure': 7.18.6 - '@babel/helper-create-class-features-plugin': 7.21.0(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.21.0) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-proposal-unicode-property-regex@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-create-regexp-features-plugin': 7.21.0(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-decorators@7.21.0(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-export-default-from@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-flow@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-import-assertions@7.20.0(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-jsx@7.12.1(@babel/core@7.12.9)': - dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-jsx@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.12.9)': - dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-typescript@7.20.0(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-arrow-functions@7.20.7(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-async-to-generator@7.20.7(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-module-imports': 7.18.6 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-remap-async-to-generator': 7.18.9(@babel/core@7.21.0) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-block-scoped-functions@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-block-scoping@7.21.0(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-classes@7.21.0(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-annotate-as-pure': 7.18.6 - '@babel/helper-compilation-targets': 7.20.7(@babel/core@7.21.0) - '@babel/helper-environment-visitor': 7.18.9 - '@babel/helper-function-name': 7.21.0 - '@babel/helper-optimise-call-expression': 7.18.6 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-replace-supers': 7.20.7 - '@babel/helper-split-export-declaration': 7.18.6 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-computed-properties@7.20.7(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/template': 7.20.7 - - '@babel/plugin-transform-destructuring@7.20.7(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-dotall-regex@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-create-regexp-features-plugin': 7.21.0(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-duplicate-keys@7.18.9(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-exponentiation-operator@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-builder-binary-assignment-operator-visitor': 7.18.9 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-flow-strip-types@7.21.0(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-flow': 7.18.6(@babel/core@7.21.0) - - '@babel/plugin-transform-for-of@7.21.0(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-function-name@7.18.9(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-compilation-targets': 7.20.7(@babel/core@7.21.0) - '@babel/helper-function-name': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-literals@7.18.9(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-member-expression-literals@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-modules-amd@7.20.11(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-module-transforms': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-modules-commonjs@7.20.11(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-module-transforms': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-simple-access': 7.20.2 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-modules-systemjs@7.20.11(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-hoist-variables': 7.18.6 - '@babel/helper-module-transforms': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-validator-identifier': 7.19.1 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-modules-umd@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-module-transforms': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-named-capturing-groups-regex@7.20.5(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-create-regexp-features-plugin': 7.21.0(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-new-target@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-object-super@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-replace-supers': 7.20.7 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-parameters@7.20.7(@babel/core@7.12.9)': - dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-parameters@7.20.7(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-property-literals@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-react-constant-elements@7.20.2(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-react-display-name@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-react-jsx-development@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/plugin-transform-react-jsx': 7.21.0(@babel/core@7.21.0) - - '@babel/plugin-transform-react-jsx@7.21.0(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-annotate-as-pure': 7.18.6 - '@babel/helper-module-imports': 7.18.6 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-jsx': 7.18.6(@babel/core@7.21.0) - '@babel/types': 7.21.0 - - '@babel/plugin-transform-react-pure-annotations@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-annotate-as-pure': 7.18.6 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-regenerator@7.20.5(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - regenerator-transform: 0.15.1 - - '@babel/plugin-transform-reserved-words@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-shorthand-properties@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-spread@7.20.7(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-skip-transparent-expression-wrappers': 7.20.0 - - '@babel/plugin-transform-sticky-regex@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-template-literals@7.18.9(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-typeof-symbol@7.18.9(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-typescript@7.21.0(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-create-class-features-plugin': 7.21.0(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-typescript': 7.20.0(@babel/core@7.21.0) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-unicode-escapes@7.18.10(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-transform-unicode-regex@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-create-regexp-features-plugin': 7.21.0(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/preset-env@7.20.2(@babel/core@7.21.0)': - dependencies: - '@babel/compat-data': 7.21.0 - '@babel/core': 7.21.0 - '@babel/helper-compilation-targets': 7.20.7(@babel/core@7.21.0) - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-validator-option': 7.21.0 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-proposal-async-generator-functions': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-proposal-class-static-block': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-proposal-dynamic-import': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-proposal-export-namespace-from': 7.18.9(@babel/core@7.21.0) - '@babel/plugin-proposal-json-strings': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-proposal-logical-assignment-operators': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-proposal-numeric-separator': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-proposal-object-rest-spread': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-proposal-optional-catch-binding': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-proposal-private-methods': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-proposal-private-property-in-object': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-proposal-unicode-property-regex': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.21.0) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.21.0) - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.21.0) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-import-assertions': 7.20.0(@babel/core@7.21.0) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.21.0) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.21.0) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.21.0) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.21.0) - '@babel/plugin-transform-arrow-functions': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-transform-async-to-generator': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-transform-block-scoped-functions': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-block-scoping': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-transform-classes': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-transform-computed-properties': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-transform-destructuring': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-transform-dotall-regex': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-duplicate-keys': 7.18.9(@babel/core@7.21.0) - '@babel/plugin-transform-exponentiation-operator': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-for-of': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-transform-function-name': 7.18.9(@babel/core@7.21.0) - '@babel/plugin-transform-literals': 7.18.9(@babel/core@7.21.0) - '@babel/plugin-transform-member-expression-literals': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-modules-amd': 7.20.11(@babel/core@7.21.0) - '@babel/plugin-transform-modules-commonjs': 7.20.11(@babel/core@7.21.0) - '@babel/plugin-transform-modules-systemjs': 7.20.11(@babel/core@7.21.0) - '@babel/plugin-transform-modules-umd': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-named-capturing-groups-regex': 7.20.5(@babel/core@7.21.0) - '@babel/plugin-transform-new-target': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-object-super': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-parameters': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-transform-property-literals': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-regenerator': 7.20.5(@babel/core@7.21.0) - '@babel/plugin-transform-reserved-words': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-shorthand-properties': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-spread': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-transform-sticky-regex': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-template-literals': 7.18.9(@babel/core@7.21.0) - '@babel/plugin-transform-typeof-symbol': 7.18.9(@babel/core@7.21.0) - '@babel/plugin-transform-unicode-escapes': 7.18.10(@babel/core@7.21.0) - '@babel/plugin-transform-unicode-regex': 7.18.6(@babel/core@7.21.0) - '@babel/preset-modules': 0.1.5(@babel/core@7.21.0) - '@babel/types': 7.21.0 - babel-plugin-polyfill-corejs2: 0.3.3(@babel/core@7.21.0) - babel-plugin-polyfill-corejs3: 0.6.0(@babel/core@7.21.0) - babel-plugin-polyfill-regenerator: 0.4.1(@babel/core@7.21.0) - core-js-compat: 3.28.0 - semver: 6.3.0 - transitivePeerDependencies: - - supports-color - - '@babel/preset-flow@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-validator-option': 7.21.0 - '@babel/plugin-transform-flow-strip-types': 7.21.0(@babel/core@7.21.0) - - '@babel/preset-modules@0.1.5(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-proposal-unicode-property-regex': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-dotall-regex': 7.18.6(@babel/core@7.21.0) - '@babel/types': 7.21.0 - esutils: 2.0.3 - - '@babel/preset-react@7.18.6(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-validator-option': 7.21.0 - '@babel/plugin-transform-react-display-name': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-react-jsx': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-transform-react-jsx-development': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-react-pure-annotations': 7.18.6(@babel/core@7.21.0) - - '@babel/preset-typescript@7.21.0(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-validator-option': 7.21.0 - '@babel/plugin-transform-typescript': 7.21.0(@babel/core@7.21.0) - transitivePeerDependencies: - - supports-color - - '@babel/register@7.21.0(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - clone-deep: 4.0.1 - find-cache-dir: 2.1.0 - make-dir: 2.1.0 - pirates: 4.0.5 - source-map-support: 0.5.21 - - '@babel/regjsgen@0.8.0': {} - - '@babel/runtime-corejs3@7.21.5': - dependencies: - core-js-pure: 3.28.0 - regenerator-runtime: 0.13.11 - - '@babel/runtime@7.21.0': - dependencies: - regenerator-runtime: 0.13.11 - - '@babel/template@7.20.7': - dependencies: - '@babel/code-frame': 7.18.6 - '@babel/parser': 7.21.1 - '@babel/types': 7.21.0 - - '@babel/traverse@7.21.0': - dependencies: - '@babel/code-frame': 7.18.6 - '@babel/generator': 7.21.1 - '@babel/helper-environment-visitor': 7.18.9 - '@babel/helper-function-name': 7.21.0 - '@babel/helper-hoist-variables': 7.18.6 - '@babel/helper-split-export-declaration': 7.18.6 - '@babel/parser': 7.21.1 - '@babel/types': 7.21.0 - debug: 4.3.4 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - - '@babel/types@7.21.0': - dependencies: - '@babel/helper-string-parser': 7.19.4 - '@babel/helper-validator-identifier': 7.19.1 - to-fast-properties: 2.0.0 - - '@base2/pretty-print-object@1.0.1': {} - - '@bcoe/v8-coverage@0.2.3': {} - - '@braintree/sanitize-url@6.0.2': {} - - '@cnakazawa/watch@1.0.4': - dependencies: - exec-sh: 0.3.6 - minimist: 1.2.8 - - '@codemirror/autocomplete@0.19.15': - dependencies: - '@codemirror/language': 0.19.10 - '@codemirror/state': 0.19.9 - '@codemirror/text': 0.19.6 - '@codemirror/tooltip': 0.19.16 - '@codemirror/view': 0.19.48 - '@lezer/common': 0.15.12 - - '@codemirror/basic-setup@0.19.3': - dependencies: - '@codemirror/autocomplete': 0.19.15 - '@codemirror/closebrackets': 0.19.2 - '@codemirror/commands': 0.19.8 - '@codemirror/comment': 0.19.1 - '@codemirror/fold': 0.19.4 - '@codemirror/gutter': 0.19.9 - '@codemirror/highlight': 0.19.8 - '@codemirror/history': 0.19.2 - '@codemirror/language': 0.19.10 - '@codemirror/lint': 0.19.6 - '@codemirror/matchbrackets': 0.19.4 - '@codemirror/rectangular-selection': 0.19.2 - '@codemirror/search': 0.19.10 - '@codemirror/state': 0.19.9 - '@codemirror/view': 0.19.48 - - '@codemirror/closebrackets@0.19.2': - dependencies: - '@codemirror/language': 0.19.10 - '@codemirror/rangeset': 0.19.9 - '@codemirror/state': 0.19.9 - '@codemirror/text': 0.19.6 - '@codemirror/view': 0.19.48 - - '@codemirror/commands@0.19.8': - dependencies: - '@codemirror/language': 0.19.10 - '@codemirror/matchbrackets': 0.19.4 - '@codemirror/state': 0.19.9 - '@codemirror/text': 0.19.6 - '@codemirror/view': 0.19.48 - '@lezer/common': 0.15.12 - - '@codemirror/comment@0.19.1': - dependencies: - '@codemirror/state': 0.19.9 - '@codemirror/text': 0.19.6 - '@codemirror/view': 0.19.48 - - '@codemirror/fold@0.19.4': - dependencies: - '@codemirror/gutter': 0.19.9 - '@codemirror/language': 0.19.10 - '@codemirror/rangeset': 0.19.9 - '@codemirror/state': 0.19.9 - '@codemirror/view': 0.19.48 - - '@codemirror/gutter@0.19.9': - dependencies: - '@codemirror/rangeset': 0.19.9 - '@codemirror/state': 0.19.9 - '@codemirror/view': 0.19.48 - - '@codemirror/highlight@0.19.8': - dependencies: - '@codemirror/language': 0.19.10 - '@codemirror/rangeset': 0.19.9 - '@codemirror/state': 0.19.9 - '@codemirror/view': 0.19.48 - '@lezer/common': 0.15.12 - style-mod: 4.0.0 - - '@codemirror/history@0.19.2': - dependencies: - '@codemirror/state': 0.19.9 - '@codemirror/view': 0.19.48 - - '@codemirror/lang-javascript@0.19.7': - dependencies: - '@codemirror/autocomplete': 0.19.15 - '@codemirror/highlight': 0.19.8 - '@codemirror/language': 0.19.10 - '@codemirror/lint': 0.19.6 - '@codemirror/state': 0.19.9 - '@codemirror/view': 0.19.48 - '@lezer/javascript': 0.15.3 - - '@codemirror/language@0.19.10': - dependencies: - '@codemirror/state': 0.19.9 - '@codemirror/text': 0.19.6 - '@codemirror/view': 0.19.48 - '@lezer/common': 0.15.12 - '@lezer/lr': 0.15.8 - - '@codemirror/legacy-modes@0.19.1': - dependencies: - '@codemirror/stream-parser': 0.19.9 - - '@codemirror/lint@0.19.6': - dependencies: - '@codemirror/gutter': 0.19.9 - '@codemirror/panel': 0.19.1 - '@codemirror/rangeset': 0.19.9 - '@codemirror/state': 0.19.9 - '@codemirror/tooltip': 0.19.16 - '@codemirror/view': 0.19.48 - crelt: 1.0.5 - - '@codemirror/matchbrackets@0.19.4': - dependencies: - '@codemirror/language': 0.19.10 - '@codemirror/state': 0.19.9 - '@codemirror/view': 0.19.48 - '@lezer/common': 0.15.12 - - '@codemirror/panel@0.19.1': - dependencies: - '@codemirror/state': 0.19.9 - '@codemirror/view': 0.19.48 - - '@codemirror/rangeset@0.19.9': - dependencies: - '@codemirror/state': 0.19.9 - - '@codemirror/rectangular-selection@0.19.2': - dependencies: - '@codemirror/state': 0.19.9 - '@codemirror/text': 0.19.6 - '@codemirror/view': 0.19.48 - - '@codemirror/search@0.19.10': - dependencies: - '@codemirror/panel': 0.19.1 - '@codemirror/rangeset': 0.19.9 - '@codemirror/state': 0.19.9 - '@codemirror/text': 0.19.6 - '@codemirror/view': 0.19.48 - crelt: 1.0.5 - - '@codemirror/state@0.19.9': - dependencies: - '@codemirror/text': 0.19.6 - - '@codemirror/stream-parser@0.19.9': - dependencies: - '@codemirror/highlight': 0.19.8 - '@codemirror/language': 0.19.10 - '@codemirror/state': 0.19.9 - '@codemirror/text': 0.19.6 - '@lezer/common': 0.15.12 - '@lezer/lr': 0.15.8 - - '@codemirror/text@0.19.6': {} - - '@codemirror/theme-one-dark@0.19.0': - dependencies: - '@codemirror/highlight': 0.19.8 - '@codemirror/state': 0.19.9 - '@codemirror/view': 0.19.48 - - '@codemirror/tooltip@0.19.16': - dependencies: - '@codemirror/state': 0.19.9 - '@codemirror/view': 0.19.48 - - '@codemirror/view@0.19.48': - dependencies: - '@codemirror/rangeset': 0.19.9 - '@codemirror/state': 0.19.9 - '@codemirror/text': 0.19.6 - style-mod: 4.0.0 - w3c-keyname: 2.2.6 - - '@colors/colors@1.5.0': {} - - '@cspotcode/source-map-support@0.8.1': - dependencies: - '@jridgewell/trace-mapping': 0.3.9 - - '@dabh/diagnostics@2.0.3': - dependencies: - colorspace: 1.1.4 - enabled: 2.0.0 - kuler: 2.0.0 - - '@discoveryjs/json-ext@0.5.7': {} - - '@emotion/babel-plugin@11.10.6': - dependencies: - '@babel/helper-module-imports': 7.18.6 - '@babel/runtime': 7.21.0 - '@emotion/hash': 0.9.0 - '@emotion/memoize': 0.8.0 - '@emotion/serialize': 1.1.1 - babel-plugin-macros: 3.1.0 - convert-source-map: 1.9.0 - escape-string-regexp: 4.0.0 - find-root: 1.1.0 - source-map: 0.5.7 - stylis: 4.1.3 - - '@emotion/cache@11.10.5': - dependencies: - '@emotion/memoize': 0.8.0 - '@emotion/sheet': 1.2.1 - '@emotion/utils': 1.2.0 - '@emotion/weak-memoize': 0.3.0 - stylis: 4.1.3 - - '@emotion/hash@0.9.0': {} - - '@emotion/memoize@0.8.0': {} - - '@emotion/react@11.10.6(@types/react@18.0.28)(react@18.2.0)': - dependencies: - '@babel/runtime': 7.21.0 - '@emotion/babel-plugin': 11.10.6 - '@emotion/cache': 11.10.5 - '@emotion/serialize': 1.1.1 - '@emotion/use-insertion-effect-with-fallbacks': 1.0.0(react@18.2.0) - '@emotion/utils': 1.2.0 - '@emotion/weak-memoize': 0.3.0 - '@types/react': 18.0.28 - hoist-non-react-statics: 3.3.2 - react: 18.2.0 - - '@emotion/serialize@1.1.1': - dependencies: - '@emotion/hash': 0.9.0 - '@emotion/memoize': 0.8.0 - '@emotion/unitless': 0.8.0 - '@emotion/utils': 1.2.0 - csstype: 3.1.1 - - '@emotion/server@11.10.0': - dependencies: - '@emotion/utils': 1.2.0 - html-tokenize: 2.0.1 - multipipe: 1.0.2 - through: 2.3.8 - - '@emotion/sheet@1.2.1': {} - - '@emotion/unitless@0.8.0': {} - - '@emotion/use-insertion-effect-with-fallbacks@1.0.0(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@emotion/utils@1.2.0': {} - - '@emotion/weak-memoize@0.3.0': {} - - '@eslint-community/eslint-utils@4.2.0(eslint@8.36.0)': - dependencies: - eslint: 8.36.0 - eslint-visitor-keys: 3.3.0 - - '@eslint-community/regexpp@4.4.0': {} - - '@eslint/eslintrc@2.0.1': - dependencies: - ajv: 6.12.6 - debug: 4.3.4 - espree: 9.5.0 - globals: 13.20.0 - ignore: 5.2.4 - import-fresh: 3.3.0 - js-yaml: 4.1.0 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color - - '@eslint/js@8.36.0': {} - - '@floating-ui/core@1.2.2': {} - - '@floating-ui/dom@1.2.3': - dependencies: - '@floating-ui/core': 1.2.2 - - '@floating-ui/react-dom@1.3.0(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@floating-ui/dom': 1.2.3 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@floating-ui/react@0.19.2(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@floating-ui/react-dom': 1.3.0(react-dom@18.2.0)(react@18.2.0) - aria-hidden: 1.2.3 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - tabbable: 6.1.1 - - '@focus-reactive/react-yaml@1.1.2(react@18.2.0)': - dependencies: - '@codemirror/basic-setup': 0.19.3 - '@codemirror/commands': 0.19.8 - '@codemirror/lang-javascript': 0.19.7 - '@codemirror/legacy-modes': 0.19.1 - '@codemirror/rangeset': 0.19.9 - '@codemirror/state': 0.19.9 - '@codemirror/stream-parser': 0.19.9 - '@codemirror/theme-one-dark': 0.19.0 - '@codemirror/tooltip': 0.19.16 - '@codemirror/view': 0.19.48 - js-yaml: 4.1.0 - react: 18.2.0 - - '@gar/promisify@1.1.3': {} - - '@hookform/resolvers@2.9.11(react-hook-form@7.43.5)': - dependencies: - react-hook-form: 7.43.5(react@18.2.0) - - '@humanwhocodes/config-array@0.11.8': - dependencies: - '@humanwhocodes/object-schema': 1.2.1 - debug: 4.3.4 - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color - - '@humanwhocodes/module-importer@1.0.1': {} - - '@humanwhocodes/object-schema@1.2.1': {} - - '@icons/material@0.2.4(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@istanbuljs/load-nyc-config@1.1.0': - dependencies: - camelcase: 5.3.1 - find-up: 4.1.0 - get-package-type: 0.1.0 - js-yaml: 3.14.1 - resolve-from: 5.0.0 - - '@istanbuljs/schema@0.1.3': {} - - '@jest/console@29.5.0': - dependencies: - '@jest/types': 29.5.0 - '@types/node': 18.15.1 - chalk: 4.1.2 - jest-message-util: 29.5.0 - jest-util: 29.5.0 - slash: 3.0.0 - - '@jest/core@29.5.0(ts-node@10.9.1)': - dependencies: - '@jest/console': 29.5.0 - '@jest/reporters': 29.5.0 - '@jest/test-result': 29.5.0 - '@jest/transform': 29.5.0 - '@jest/types': 29.5.0 - '@types/node': 18.15.1 - ansi-escapes: 4.3.2 - chalk: 4.1.2 - ci-info: 3.8.0 - exit: 0.1.2 - graceful-fs: 4.2.10 - jest-changed-files: 29.5.0 - jest-config: 29.5.0(@types/node@18.15.1)(ts-node@10.9.1) - jest-haste-map: 29.5.0 - jest-message-util: 29.5.0 - jest-regex-util: 29.4.3 - jest-resolve: 29.5.0 - jest-resolve-dependencies: 29.5.0 - jest-runner: 29.5.0 - jest-runtime: 29.5.0 - jest-snapshot: 29.5.0 - jest-util: 29.5.0 - jest-validate: 29.5.0 - jest-watcher: 29.5.0 - micromatch: 4.0.5 - pretty-format: 29.5.0 - slash: 3.0.0 - strip-ansi: 6.0.1 - transitivePeerDependencies: - - supports-color - - ts-node - - '@jest/environment@29.5.0': - dependencies: - '@jest/fake-timers': 29.5.0 - '@jest/types': 29.5.0 - '@types/node': 18.15.1 - jest-mock: 29.5.0 - - '@jest/expect-utils@29.4.3': - dependencies: - jest-get-type: 29.4.3 - - '@jest/expect-utils@29.5.0': - dependencies: - jest-get-type: 29.4.3 - - '@jest/expect@29.5.0': - dependencies: - expect: 29.5.0 - jest-snapshot: 29.5.0 - transitivePeerDependencies: - - supports-color - - '@jest/fake-timers@29.5.0': - dependencies: - '@jest/types': 29.5.0 - '@sinonjs/fake-timers': 10.0.2 - '@types/node': 18.15.1 - jest-message-util: 29.5.0 - jest-mock: 29.5.0 - jest-util: 29.5.0 - - '@jest/globals@29.5.0': - dependencies: - '@jest/environment': 29.5.0 - '@jest/expect': 29.5.0 - '@jest/types': 29.5.0 - jest-mock: 29.5.0 - transitivePeerDependencies: - - supports-color - - '@jest/reporters@29.5.0': - dependencies: - '@bcoe/v8-coverage': 0.2.3 - '@jest/console': 29.5.0 - '@jest/test-result': 29.5.0 - '@jest/transform': 29.5.0 - '@jest/types': 29.5.0 - '@jridgewell/trace-mapping': 0.3.17 - '@types/node': 18.15.1 - chalk: 4.1.2 - collect-v8-coverage: 1.0.1 - exit: 0.1.2 - glob: 7.2.3 - graceful-fs: 4.2.10 - istanbul-lib-coverage: 3.2.0 - istanbul-lib-instrument: 5.2.1 - istanbul-lib-report: 3.0.0 - istanbul-lib-source-maps: 4.0.1 - istanbul-reports: 3.1.5 - jest-message-util: 29.5.0 - jest-util: 29.5.0 - jest-worker: 29.5.0 - slash: 3.0.0 - string-length: 4.0.2 - strip-ansi: 6.0.1 - v8-to-istanbul: 9.1.0 - transitivePeerDependencies: - - supports-color - - '@jest/schemas@29.4.3': - dependencies: - '@sinclair/typebox': 0.25.23 - - '@jest/source-map@29.4.3': - dependencies: - '@jridgewell/trace-mapping': 0.3.17 - callsites: 3.1.0 - graceful-fs: 4.2.10 - - '@jest/test-result@29.5.0': - dependencies: - '@jest/console': 29.5.0 - '@jest/types': 29.5.0 - '@types/istanbul-lib-coverage': 2.0.4 - collect-v8-coverage: 1.0.1 - - '@jest/test-sequencer@29.5.0': - dependencies: - '@jest/test-result': 29.5.0 - graceful-fs: 4.2.10 - jest-haste-map: 29.5.0 - slash: 3.0.0 - - '@jest/transform@26.6.2': - dependencies: - '@babel/core': 7.21.0 - '@jest/types': 26.6.2 - babel-plugin-istanbul: 6.1.1 - chalk: 4.1.2 - convert-source-map: 1.9.0 - fast-json-stable-stringify: 2.1.0 - graceful-fs: 4.2.10 - jest-haste-map: 26.6.2 - jest-regex-util: 26.0.0 - jest-util: 26.6.2 - micromatch: 4.0.5 - pirates: 4.0.5 - slash: 3.0.0 - source-map: 0.6.1 - write-file-atomic: 3.0.3 - transitivePeerDependencies: - - supports-color - - '@jest/transform@29.5.0': - dependencies: - '@babel/core': 7.21.0 - '@jest/types': 29.5.0 - '@jridgewell/trace-mapping': 0.3.17 - babel-plugin-istanbul: 6.1.1 - chalk: 4.1.2 - convert-source-map: 2.0.0 - fast-json-stable-stringify: 2.1.0 - graceful-fs: 4.2.10 - jest-haste-map: 29.5.0 - jest-regex-util: 29.4.3 - jest-util: 29.5.0 - micromatch: 4.0.5 - pirates: 4.0.5 - slash: 3.0.0 - write-file-atomic: 4.0.2 - transitivePeerDependencies: - - supports-color - - '@jest/types@26.6.2': - dependencies: - '@types/istanbul-lib-coverage': 2.0.4 - '@types/istanbul-reports': 3.0.1 - '@types/node': 18.15.1 - '@types/yargs': 15.0.15 - chalk: 4.1.2 - - '@jest/types@29.5.0': - dependencies: - '@jest/schemas': 29.4.3 - '@types/istanbul-lib-coverage': 2.0.4 - '@types/istanbul-reports': 3.0.1 - '@types/node': 18.15.1 - '@types/yargs': 17.0.22 - chalk: 4.1.2 - - '@jridgewell/gen-mapping@0.1.1': - dependencies: - '@jridgewell/set-array': 1.1.2 - '@jridgewell/sourcemap-codec': 1.4.14 - - '@jridgewell/gen-mapping@0.3.2': - dependencies: - '@jridgewell/set-array': 1.1.2 - '@jridgewell/sourcemap-codec': 1.4.14 - '@jridgewell/trace-mapping': 0.3.17 - - '@jridgewell/resolve-uri@3.1.0': {} - - '@jridgewell/set-array@1.1.2': {} - - '@jridgewell/source-map@0.3.2': - dependencies: - '@jridgewell/gen-mapping': 0.3.2 - '@jridgewell/trace-mapping': 0.3.17 - - '@jridgewell/sourcemap-codec@1.4.14': {} - - '@jridgewell/trace-mapping@0.3.17': - dependencies: - '@jridgewell/resolve-uri': 3.1.0 - '@jridgewell/sourcemap-codec': 1.4.14 - - '@jridgewell/trace-mapping@0.3.9': - dependencies: - '@jridgewell/resolve-uri': 3.1.0 - '@jridgewell/sourcemap-codec': 1.4.14 - - '@koa/cors@4.0.0': - dependencies: - vary: 1.1.2 - - '@koa/multer@3.0.2(multer@1.4.5-lts.1)': - dependencies: - fix-esm: 1.0.1 - multer: 1.4.5-lts.1 - transitivePeerDependencies: - - supports-color - - '@koa/router@12.0.0': - dependencies: - http-errors: 2.0.0 - koa-compose: 4.1.0 - methods: 1.1.2 - path-to-regexp: 6.2.1 - - '@lezer/common@0.15.12': {} - - '@lezer/javascript@0.15.3': - dependencies: - '@lezer/lr': 0.15.8 - - '@lezer/lr@0.15.8': - dependencies: - '@lezer/common': 0.15.12 - - '@mantine/core@6.0.1(@emotion/react@11.10.6)(@mantine/hooks@6.0.1)(@types/react@18.0.28)(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@floating-ui/react': 0.19.2(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': 6.0.1(react@18.2.0) - '@mantine/styles': 6.0.1(@emotion/react@11.10.6)(react-dom@18.2.0)(react@18.2.0) - '@mantine/utils': 6.0.1(react@18.2.0) - '@radix-ui/react-scroll-area': 1.0.2(react-dom@18.2.0)(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - react-remove-scroll: 2.5.5(@types/react@18.0.28)(react@18.2.0) - react-textarea-autosize: 8.3.4(@types/react@18.0.28)(react@18.2.0) - transitivePeerDependencies: - - '@emotion/react' - - '@types/react' - - '@mantine/dates@6.0.1(@mantine/core@6.0.1)(@mantine/hooks@6.0.1)(dayjs@1.11.7)(react@18.2.0)': - dependencies: - '@mantine/core': 6.0.1(@emotion/react@11.10.6)(@mantine/hooks@6.0.1)(@types/react@18.0.28)(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': 6.0.1(react@18.2.0) - '@mantine/utils': 6.0.1(react@18.2.0) - dayjs: 1.11.7 - react: 18.2.0 - - '@mantine/dropzone@6.0.1(@mantine/core@6.0.1)(@mantine/hooks@6.0.1)(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@mantine/core': 6.0.1(@emotion/react@11.10.6)(@mantine/hooks@6.0.1)(@types/react@18.0.28)(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': 6.0.1(react@18.2.0) - '@mantine/utils': 6.0.1(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - react-dropzone: 14.2.3(react@18.2.0) - - '@mantine/hooks@6.0.1(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@mantine/modals@6.0.1(@mantine/core@6.0.1)(@mantine/hooks@6.0.1)(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@mantine/core': 6.0.1(@emotion/react@11.10.6)(@mantine/hooks@6.0.1)(@types/react@18.0.28)(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': 6.0.1(react@18.2.0) - '@mantine/utils': 6.0.1(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@mantine/next@6.0.1(@emotion/react@11.10.6)(@emotion/server@11.10.0)(next@13.2.4)(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@mantine/ssr': 6.0.1(@emotion/react@11.10.6)(@emotion/server@11.10.0)(react-dom@18.2.0)(react@18.2.0) - '@mantine/styles': 6.0.1(@emotion/react@11.10.6)(react-dom@18.2.0)(react@18.2.0) - next: 13.2.4(@babel/core@7.21.0)(react-dom@18.2.0)(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - transitivePeerDependencies: - - '@emotion/react' - - '@emotion/server' - - '@mantine/notifications@6.0.1(@mantine/core@6.0.1)(@mantine/hooks@6.0.1)(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@mantine/core': 6.0.1(@emotion/react@11.10.6)(@mantine/hooks@6.0.1)(@types/react@18.0.28)(react-dom@18.2.0)(react@18.2.0) - '@mantine/hooks': 6.0.1(react@18.2.0) - '@mantine/utils': 6.0.1(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - react-transition-group: 4.4.2(react-dom@18.2.0)(react@18.2.0) - - '@mantine/ssr@6.0.1(@emotion/react@11.10.6)(@emotion/server@11.10.0)(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@emotion/react': 11.10.6(@types/react@18.0.28)(react@18.2.0) - '@emotion/server': 11.10.0 - '@mantine/styles': 6.0.1(@emotion/react@11.10.6)(react-dom@18.2.0)(react@18.2.0) - html-react-parser: 1.4.12(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@mantine/styles@6.0.1(@emotion/react@11.10.6)(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@emotion/react': 11.10.6(@types/react@18.0.28)(react@18.2.0) - clsx: 1.1.1 - csstype: 3.0.9 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@mantine/utils@6.0.1(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@mdx-js/mdx@1.6.22': - dependencies: - '@babel/core': 7.12.9 - '@babel/plugin-syntax-jsx': 7.12.1(@babel/core@7.12.9) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.12.9) - '@mdx-js/util': 1.6.22 - babel-plugin-apply-mdx-type-prop: 1.6.22(@babel/core@7.12.9) - babel-plugin-extract-import-names: 1.6.22 - camelcase-css: 2.0.1 - detab: 2.0.4 - hast-util-raw: 6.0.1 - lodash.uniq: 4.5.0 - mdast-util-to-hast: 10.0.1 - remark-footnotes: 2.0.0 - remark-mdx: 1.6.22 - remark-parse: 8.0.3 - remark-squeeze-paragraphs: 4.0.0 - style-to-object: 0.3.0 - unified: 9.2.0 - unist-builder: 2.0.3 - unist-util-visit: 2.0.3 - transitivePeerDependencies: - - supports-color - - '@mdx-js/react@1.6.22(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@mdx-js/util@1.6.22': {} - - '@microsoft/signalr@7.0.3': - dependencies: - abort-controller: 3.0.0 - eventsource: 2.0.2 - fetch-cookie: 2.1.0 - node-fetch: 2.6.9 - ws: 7.5.9 - transitivePeerDependencies: - - bufferutil - - encoding - - utf-8-validate - - '@mrmlnc/readdir-enhanced@2.2.1': - dependencies: - call-me-maybe: 1.0.2 - glob-to-regexp: 0.3.0 - - '@next/env@13.2.4': {} - - '@next/eslint-plugin-next@13.2.4': - dependencies: - glob: 7.1.7 - - '@next/swc-android-arm-eabi@13.2.4': - optional: true - - '@next/swc-android-arm64@13.2.4': - optional: true - - '@next/swc-darwin-arm64@13.2.4': - optional: true - - '@next/swc-darwin-x64@13.2.4': - optional: true - - '@next/swc-freebsd-x64@13.2.4': - optional: true - - '@next/swc-linux-arm-gnueabihf@13.2.4': - optional: true - - '@next/swc-linux-arm64-gnu@13.2.4': - optional: true - - '@next/swc-linux-arm64-musl@13.2.4': - optional: true - - '@next/swc-linux-x64-gnu@13.2.4': - optional: true - - '@next/swc-linux-x64-musl@13.2.4': - optional: true - - '@next/swc-win32-arm64-msvc@13.2.4': - optional: true - - '@next/swc-win32-ia32-msvc@13.2.4': - optional: true - - '@next/swc-win32-x64-msvc@13.2.4': - optional: true - - '@nodelib/fs.scandir@2.1.5': - dependencies: - '@nodelib/fs.stat': 2.0.5 - run-parallel: 1.2.0 - - '@nodelib/fs.stat@1.1.3': {} - - '@nodelib/fs.stat@2.0.5': {} - - '@nodelib/fs.walk@1.2.8': - dependencies: - '@nodelib/fs.scandir': 2.1.5 - fastq: 1.15.0 - - '@npmcli/fs@1.1.1': - dependencies: - '@gar/promisify': 1.1.3 - semver: 7.3.8 - - '@npmcli/move-file@1.1.2': - dependencies: - mkdirp: 1.0.4 - rimraf: 3.0.2 - - '@paralect/node-mongo@3.1.2': - dependencies: - lodash: 4.17.21 - mongodb: 4.10.0 - - '@pkgr/utils@2.3.1': - dependencies: - cross-spawn: 7.0.3 - is-glob: 4.0.3 - open: 8.4.2 - picocolors: 1.0.0 - tiny-glob: 0.2.9 - tslib: 2.5.0 - - '@pmmmwh/react-refresh-webpack-plugin@0.5.10(react-refresh@0.11.0)(webpack@5.75.0)': - dependencies: - ansi-html-community: 0.0.8 - common-path-prefix: 3.0.0 - core-js-pure: 3.28.0 - error-stack-parser: 2.1.4 - find-up: 5.0.0 - html-entities: 2.3.3 - loader-utils: 2.0.4 - react-refresh: 0.11.0 - schema-utils: 3.1.1 - source-map: 0.7.4 - webpack: 5.75.0 - - '@radix-ui/number@1.0.0': - dependencies: - '@babel/runtime': 7.21.0 - - '@radix-ui/primitive@1.0.0': - dependencies: - '@babel/runtime': 7.21.0 - - '@radix-ui/react-compose-refs@1.0.0(react@18.2.0)': - dependencies: - '@babel/runtime': 7.21.0 - react: 18.2.0 - - '@radix-ui/react-context@1.0.0(react@18.2.0)': - dependencies: - '@babel/runtime': 7.21.0 - react: 18.2.0 - - '@radix-ui/react-direction@1.0.0(react@18.2.0)': - dependencies: - '@babel/runtime': 7.21.0 - react: 18.2.0 - - '@radix-ui/react-presence@1.0.0(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@babel/runtime': 7.21.0 - '@radix-ui/react-compose-refs': 1.0.0(react@18.2.0) - '@radix-ui/react-use-layout-effect': 1.0.0(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@radix-ui/react-primitive@1.0.1(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@babel/runtime': 7.21.0 - '@radix-ui/react-slot': 1.0.1(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@radix-ui/react-scroll-area@1.0.2(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@babel/runtime': 7.21.0 - '@radix-ui/number': 1.0.0 - '@radix-ui/primitive': 1.0.0 - '@radix-ui/react-compose-refs': 1.0.0(react@18.2.0) - '@radix-ui/react-context': 1.0.0(react@18.2.0) - '@radix-ui/react-direction': 1.0.0(react@18.2.0) - '@radix-ui/react-presence': 1.0.0(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-primitive': 1.0.1(react-dom@18.2.0)(react@18.2.0) - '@radix-ui/react-use-callback-ref': 1.0.0(react@18.2.0) - '@radix-ui/react-use-layout-effect': 1.0.0(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@radix-ui/react-slot@1.0.1(react@18.2.0)': - dependencies: - '@babel/runtime': 7.21.0 - '@radix-ui/react-compose-refs': 1.0.0(react@18.2.0) - react: 18.2.0 - - '@radix-ui/react-use-callback-ref@1.0.0(react@18.2.0)': - dependencies: - '@babel/runtime': 7.21.0 - react: 18.2.0 - - '@radix-ui/react-use-layout-effect@1.0.0(react@18.2.0)': - dependencies: - '@babel/runtime': 7.21.0 - react: 18.2.0 - - '@reach/component-component@0.1.3(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0)': - dependencies: - prop-types: 15.8.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@reach/observe-rect@1.2.0': {} - - '@reach/rect@0.2.1(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@reach/component-component': 0.1.3(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) - '@reach/observe-rect': 1.2.0 - prop-types: 15.8.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@react-theming/flatten@0.1.1': - dependencies: - color: 3.2.1 - color-convert: 2.0.1 - color-parse: 1.4.2 - color-rgba: 2.4.0 - color-string: 1.9.1 - color-stringify: 1.2.1 - flat: 5.0.2 - is-color-stop: 1.1.0 - rgb-hex: 3.0.0 - - '@react-theming/storybook-addon@1.1.10(@storybook/addons@6.5.16)(@storybook/react@6.5.16)(@storybook/theming@6.5.16)(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@codemirror/theme-one-dark': 0.19.0 - '@focus-reactive/react-yaml': 1.1.2(react@18.2.0) - '@react-theming/flatten': 0.1.1 - '@react-theming/theme-name': 1.0.3 - '@react-theming/theme-swatch': 1.0.0(react@18.2.0) - '@storybook/addon-devkit': 1.4.2(@storybook/addons@6.5.16)(@storybook/react@6.5.16)(react-dom@18.2.0)(react@18.2.0) - '@storybook/react': 6.5.16(@babel/core@7.21.0)(@storybook/builder-webpack5@6.5.16)(@storybook/manager-webpack5@6.5.16)(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(require-from-string@2.0.2)(typescript@4.9.5) - '@storybook/theming': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@usulpro/react-json-view': 2.0.1(react-dom@18.2.0)(react@18.2.0) - color-string: 1.9.1 - react: 18.2.0 - react-color: 2.19.3(react@18.2.0) - transitivePeerDependencies: - - '@storybook/addons' - - encoding - - react-dom - - '@react-theming/theme-name@1.0.3': - dependencies: - color-name-list: 4.15.0 - nearest-color: 0.4.4 - - '@react-theming/theme-swatch@1.0.0(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@redis/bloom@1.2.0(@redis/client@1.5.6)': - dependencies: - '@redis/client': 1.5.6 - - '@redis/client@1.5.6': - dependencies: - cluster-key-slot: 1.1.2 - generic-pool: 3.9.0 - yallist: 4.0.0 - - '@redis/graph@1.1.0(@redis/client@1.5.6)': - dependencies: - '@redis/client': 1.5.6 - - '@redis/json@1.0.4(@redis/client@1.5.6)': - dependencies: - '@redis/client': 1.5.6 - - '@redis/search@1.1.2(@redis/client@1.5.6)': - dependencies: - '@redis/client': 1.5.6 - - '@redis/time-series@1.0.4(@redis/client@1.5.6)': - dependencies: - '@redis/client': 1.5.6 - - '@rushstack/eslint-patch@1.2.0': {} - - '@sendgrid/client@7.7.0': - dependencies: - '@sendgrid/helpers': 7.7.0 - axios: 0.26.1 - transitivePeerDependencies: - - debug - - '@sendgrid/helpers@7.7.0': - dependencies: - deepmerge: 4.3.0 - - '@sendgrid/mail@7.7.0': - dependencies: - '@sendgrid/client': 7.7.0 - '@sendgrid/helpers': 7.7.0 - transitivePeerDependencies: - - debug - - '@shelf/jest-mongodb@4.1.7(jest-environment-node@29.5.0)(mongodb@4.14.0)': - dependencies: - debug: 4.3.4 - jest-environment-node: 29.5.0 - mongodb: 4.14.0 - mongodb-memory-server: 8.11.5 - transitivePeerDependencies: - - aws-crt - - supports-color - - '@sinclair/typebox@0.25.23': {} - - '@sindresorhus/is@4.6.0': {} - - '@sinonjs/commons@2.0.0': - dependencies: - type-detect: 4.0.8 - - '@sinonjs/fake-timers@10.0.2': - dependencies: - '@sinonjs/commons': 2.0.0 - - '@snyk/dep-graph@2.5.0': - dependencies: - event-loop-spinner: 2.2.0 - lodash.clone: 4.5.0 - lodash.constant: 3.0.0 - lodash.filter: 4.6.0 - lodash.foreach: 4.5.0 - lodash.isempty: 4.4.0 - lodash.isequal: 4.5.0 - lodash.isfunction: 3.0.9 - lodash.isundefined: 3.0.1 - lodash.map: 4.6.0 - lodash.reduce: 4.6.0 - lodash.size: 4.2.0 - lodash.transform: 4.6.0 - lodash.union: 4.6.0 - lodash.values: 4.3.0 - object-hash: 3.0.0 - packageurl-js: 1.0.1 - semver: 7.3.8 - tslib: 2.5.0 - - '@snyk/graphlib@2.1.9-patch.3': - dependencies: - lodash.clone: 4.5.0 - lodash.constant: 3.0.0 - lodash.filter: 4.6.0 - lodash.foreach: 4.5.0 - lodash.has: 4.5.2 - lodash.isempty: 4.4.0 - lodash.isfunction: 3.0.9 - lodash.isundefined: 3.0.1 - lodash.keys: 4.2.0 - lodash.map: 4.6.0 - lodash.reduce: 4.6.0 - lodash.size: 4.2.0 - lodash.transform: 4.6.0 - lodash.union: 4.6.0 - lodash.values: 4.3.0 - - '@socket.io/component-emitter@3.1.0': {} - - '@socket.io/redis-adapter@8.1.0(socket.io-adapter@2.5.2)': - dependencies: - debug: 4.3.4 - notepack.io: 3.0.1 - socket.io-adapter: 2.5.2 - uid2: 1.0.0 - transitivePeerDependencies: - - supports-color - - '@socket.io/redis-emitter@5.1.0': - dependencies: - debug: 4.3.4 - notepack.io: 3.0.1 - socket.io-parser: 4.2.2 - transitivePeerDependencies: - - supports-color - - '@storybook/addon-actions@6.5.16(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/api': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/client-logger': 6.5.16 - '@storybook/components': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/core-events': 6.5.16 - '@storybook/csf': 0.0.2--canary.4566f4d.1 - '@storybook/theming': 6.5.16(react-dom@18.2.0)(react@18.2.0) - core-js: 3.28.0 - fast-deep-equal: 3.1.3 - global: 4.4.0 - lodash: 4.17.21 - polished: 4.2.2 - prop-types: 15.8.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - react-inspector: 5.1.1(react@18.2.0) - regenerator-runtime: 0.13.11 - telejson: 6.0.8 - ts-dedent: 2.2.0 - util-deprecate: 1.0.2 - uuid-browser: 3.1.0 - - '@storybook/addon-backgrounds@6.5.16(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/api': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/client-logger': 6.5.16 - '@storybook/components': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/core-events': 6.5.16 - '@storybook/csf': 0.0.2--canary.4566f4d.1 - '@storybook/theming': 6.5.16(react-dom@18.2.0)(react@18.2.0) - core-js: 3.28.0 - global: 4.4.0 - memoizerific: 1.11.3 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - ts-dedent: 2.2.0 - util-deprecate: 1.0.2 - - '@storybook/addon-controls@6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)': - dependencies: - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/api': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/client-logger': 6.5.16 - '@storybook/components': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/core-common': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/csf': 0.0.2--canary.4566f4d.1 - '@storybook/node-logger': 6.5.16 - '@storybook/store': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/theming': 6.5.16(react-dom@18.2.0)(react@18.2.0) - core-js: 3.28.0 - lodash: 4.17.21 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - ts-dedent: 2.2.0 - transitivePeerDependencies: - - eslint - - supports-color - - typescript - - vue-template-compiler - - webpack-cli - - webpack-command - - '@storybook/addon-devkit@1.4.2(@storybook/addons@6.5.16)(@storybook/react@6.5.16)(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@reach/rect': 0.2.1(prop-types@15.8.1)(react-dom@18.2.0)(react@18.2.0) - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/core-events': 6.5.16 - '@storybook/react': 6.5.16(@babel/core@7.21.0)(@storybook/builder-webpack5@6.5.16)(@storybook/manager-webpack5@6.5.16)(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(require-from-string@2.0.2)(typescript@4.9.5) - '@storybook/theming': 6.5.16(react-dom@18.2.0)(react@18.2.0) - deep-equal: 2.2.0 - prop-types: 15.8.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@storybook/addon-docs@6.5.16(@babel/core@7.21.0)(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)(webpack@5.75.0)': - dependencies: - '@babel/plugin-transform-react-jsx': 7.21.0(@babel/core@7.21.0) - '@babel/preset-env': 7.20.2(@babel/core@7.21.0) - '@jest/transform': 26.6.2 - '@mdx-js/react': 1.6.22(react@18.2.0) - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/api': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/components': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/core-common': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/core-events': 6.5.16 - '@storybook/csf': 0.0.2--canary.4566f4d.1 - '@storybook/docs-tools': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/mdx1-csf': 0.0.1(@babel/core@7.21.0) - '@storybook/node-logger': 6.5.16 - '@storybook/postinstall': 6.5.16 - '@storybook/preview-web': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/source-loader': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/store': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/theming': 6.5.16(react-dom@18.2.0)(react@18.2.0) - babel-loader: 8.2.5(@babel/core@7.21.0)(webpack@5.75.0) - core-js: 3.28.0 - fast-deep-equal: 3.1.3 - global: 4.4.0 - lodash: 4.17.21 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - remark-external-links: 8.0.0 - remark-slug: 6.1.0 - ts-dedent: 2.2.0 - util-deprecate: 1.0.2 - transitivePeerDependencies: - - '@babel/core' - - eslint - - supports-color - - typescript - - vue-template-compiler - - webpack - - webpack-cli - - webpack-command - - '@storybook/addon-essentials@6.5.16(@babel/core@7.21.0)(@storybook/builder-webpack5@6.5.16)(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)(webpack@5.75.0)': - dependencies: - '@babel/core': 7.21.0 - '@storybook/addon-actions': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/addon-backgrounds': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/addon-controls': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/addon-docs': 6.5.16(@babel/core@7.21.0)(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)(webpack@5.75.0) - '@storybook/addon-measure': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/addon-outline': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/addon-toolbars': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/addon-viewport': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/api': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/builder-webpack5': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/core-common': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/node-logger': 6.5.16 - core-js: 3.28.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - ts-dedent: 2.2.0 - webpack: 5.75.0 - transitivePeerDependencies: - - '@storybook/mdx2-csf' - - eslint - - supports-color - - typescript - - vue-template-compiler - - webpack-cli - - webpack-command - - '@storybook/addon-links@6.5.16(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/client-logger': 6.5.16 - '@storybook/core-events': 6.5.16 - '@storybook/csf': 0.0.2--canary.4566f4d.1 - '@storybook/router': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@types/qs': 6.9.7 - core-js: 3.28.0 - global: 4.4.0 - prop-types: 15.8.1 - qs: 6.11.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - ts-dedent: 2.2.0 - - '@storybook/addon-measure@6.5.16(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/api': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/client-logger': 6.5.16 - '@storybook/components': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/core-events': 6.5.16 - '@storybook/csf': 0.0.2--canary.4566f4d.1 - core-js: 3.28.0 - global: 4.4.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@storybook/addon-outline@6.5.16(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/api': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/client-logger': 6.5.16 - '@storybook/components': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/core-events': 6.5.16 - '@storybook/csf': 0.0.2--canary.4566f4d.1 - core-js: 3.28.0 - global: 4.4.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - ts-dedent: 2.2.0 - - '@storybook/addon-toolbars@6.5.16(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/api': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/client-logger': 6.5.16 - '@storybook/components': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/theming': 6.5.16(react-dom@18.2.0)(react@18.2.0) - core-js: 3.28.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - - '@storybook/addon-viewport@6.5.16(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/api': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/client-logger': 6.5.16 - '@storybook/components': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/core-events': 6.5.16 - '@storybook/theming': 6.5.16(react-dom@18.2.0)(react@18.2.0) - core-js: 3.28.0 - global: 4.4.0 - memoizerific: 1.11.3 - prop-types: 15.8.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - - '@storybook/addons@6.5.16(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@storybook/api': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/channels': 6.5.16 - '@storybook/client-logger': 6.5.16 - '@storybook/core-events': 6.5.16 - '@storybook/csf': 0.0.2--canary.4566f4d.1 - '@storybook/router': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/theming': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@types/webpack-env': 1.18.0 - core-js: 3.28.0 - global: 4.4.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - - '@storybook/api@6.5.16(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@storybook/channels': 6.5.16 - '@storybook/client-logger': 6.5.16 - '@storybook/core-events': 6.5.16 - '@storybook/csf': 0.0.2--canary.4566f4d.1 - '@storybook/router': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/semver': 7.3.2 - '@storybook/theming': 6.5.16(react-dom@18.2.0)(react@18.2.0) - core-js: 3.28.0 - fast-deep-equal: 3.1.3 - global: 4.4.0 - lodash: 4.17.21 - memoizerific: 1.11.3 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - store2: 2.14.2 - telejson: 6.0.8 - ts-dedent: 2.2.0 - util-deprecate: 1.0.2 - - '@storybook/builder-webpack4@6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)': - dependencies: - '@babel/core': 7.21.0 - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/api': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/channel-postmessage': 6.5.16 - '@storybook/channels': 6.5.16 - '@storybook/client-api': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/client-logger': 6.5.16 - '@storybook/components': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/core-common': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/core-events': 6.5.16 - '@storybook/node-logger': 6.5.16 - '@storybook/preview-web': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/router': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/semver': 7.3.2 - '@storybook/store': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/theming': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/ui': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@types/node': 16.18.12 - '@types/webpack': 4.41.33 - autoprefixer: 9.8.8 - babel-loader: 8.2.5(@babel/core@7.21.0)(webpack@4.46.0) - case-sensitive-paths-webpack-plugin: 2.4.0 - core-js: 3.28.0 - css-loader: 3.6.0(webpack@4.46.0) - file-loader: 6.2.0(webpack@4.46.0) - find-up: 5.0.0 - fork-ts-checker-webpack-plugin: 4.1.6(eslint@8.36.0)(typescript@4.9.5)(webpack@4.46.0) - glob: 7.2.3 - glob-promise: 3.4.0(glob@7.2.3) - global: 4.4.0 - html-webpack-plugin: 4.5.2(webpack@4.46.0) - pnp-webpack-plugin: 1.6.4(typescript@4.9.5) - postcss: 7.0.39 - postcss-flexbugs-fixes: 4.2.1 - postcss-loader: 4.3.0(postcss@7.0.39)(webpack@4.46.0) - raw-loader: 4.0.2(webpack@4.46.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - stable: 0.1.8 - style-loader: 1.3.0(webpack@4.46.0) - terser-webpack-plugin: 4.2.3(webpack@4.46.0) - ts-dedent: 2.2.0 - typescript: 4.9.5 - url-loader: 4.1.1(file-loader@6.2.0)(webpack@4.46.0) - util-deprecate: 1.0.2 - webpack: 4.46.0 - webpack-dev-middleware: 3.7.3(webpack@4.46.0) - webpack-filter-warnings-plugin: 1.2.1(webpack@4.46.0) - webpack-hot-middleware: 2.25.3 - webpack-virtual-modules: 0.2.2 - transitivePeerDependencies: - - bluebird - - eslint - - supports-color - - vue-template-compiler - - webpack-cli - - webpack-command - - '@storybook/builder-webpack5@6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)': - dependencies: - '@babel/core': 7.21.0 - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/api': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/channel-postmessage': 6.5.16 - '@storybook/channels': 6.5.16 - '@storybook/client-api': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/client-logger': 6.5.16 - '@storybook/components': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/core-common': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/core-events': 6.5.16 - '@storybook/node-logger': 6.5.16 - '@storybook/preview-web': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/router': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/semver': 7.3.2 - '@storybook/store': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/theming': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@types/node': 16.18.12 - babel-loader: 8.2.5(@babel/core@7.21.0)(webpack@5.75.0) - babel-plugin-named-exports-order: 0.0.2 - browser-assert: 1.2.1 - case-sensitive-paths-webpack-plugin: 2.4.0 - core-js: 3.28.0 - css-loader: 5.2.7(webpack@5.75.0) - fork-ts-checker-webpack-plugin: 6.5.2(eslint@8.36.0)(typescript@4.9.5)(webpack@5.75.0) - glob: 7.2.3 - glob-promise: 3.4.0(glob@7.2.3) - html-webpack-plugin: 5.5.0(webpack@5.75.0) - path-browserify: 1.0.1 - process: 0.11.10 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - stable: 0.1.8 - style-loader: 2.0.0(webpack@5.75.0) - terser-webpack-plugin: 5.3.6(webpack@5.75.0) - ts-dedent: 2.2.0 - typescript: 4.9.5 - util-deprecate: 1.0.2 - webpack: 5.75.0 - webpack-dev-middleware: 4.3.0(webpack@5.75.0) - webpack-hot-middleware: 2.25.3 - webpack-virtual-modules: 0.4.6 - transitivePeerDependencies: - - '@swc/core' - - esbuild - - eslint - - supports-color - - uglify-js - - vue-template-compiler - - webpack-cli - - webpack-command - - '@storybook/channel-postmessage@6.5.16': - dependencies: - '@storybook/channels': 6.5.16 - '@storybook/client-logger': 6.5.16 - '@storybook/core-events': 6.5.16 - core-js: 3.28.0 - global: 4.4.0 - qs: 6.11.0 - telejson: 6.0.8 - - '@storybook/channel-websocket@6.5.16': - dependencies: - '@storybook/channels': 6.5.16 - '@storybook/client-logger': 6.5.16 - core-js: 3.28.0 - global: 4.4.0 - telejson: 6.0.8 - - '@storybook/channels@6.5.16': - dependencies: - core-js: 3.28.0 - ts-dedent: 2.2.0 - util-deprecate: 1.0.2 - - '@storybook/client-api@6.5.16(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/channel-postmessage': 6.5.16 - '@storybook/channels': 6.5.16 - '@storybook/client-logger': 6.5.16 - '@storybook/core-events': 6.5.16 - '@storybook/csf': 0.0.2--canary.4566f4d.1 - '@storybook/store': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@types/qs': 6.9.7 - '@types/webpack-env': 1.18.0 - core-js: 3.28.0 - fast-deep-equal: 3.1.3 - global: 4.4.0 - lodash: 4.17.21 - memoizerific: 1.11.3 - qs: 6.11.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - store2: 2.14.2 - synchronous-promise: 2.0.17 - ts-dedent: 2.2.0 - util-deprecate: 1.0.2 - - '@storybook/client-logger@6.5.16': - dependencies: - core-js: 3.28.0 - global: 4.4.0 - - '@storybook/components@6.5.16(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@storybook/client-logger': 6.5.16 - '@storybook/csf': 0.0.2--canary.4566f4d.1 - '@storybook/theming': 6.5.16(react-dom@18.2.0)(react@18.2.0) - core-js: 3.28.0 - memoizerific: 1.11.3 - qs: 6.11.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - util-deprecate: 1.0.2 - - '@storybook/core-client@6.5.16(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)(webpack@4.46.0)': - dependencies: - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/channel-postmessage': 6.5.16 - '@storybook/channel-websocket': 6.5.16 - '@storybook/client-api': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/client-logger': 6.5.16 - '@storybook/core-events': 6.5.16 - '@storybook/csf': 0.0.2--canary.4566f4d.1 - '@storybook/preview-web': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/store': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/ui': 6.5.16(react-dom@18.2.0)(react@18.2.0) - airbnb-js-shims: 2.2.1 - ansi-to-html: 0.6.15 - core-js: 3.28.0 - global: 4.4.0 - lodash: 4.17.21 - qs: 6.11.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - ts-dedent: 2.2.0 - typescript: 4.9.5 - unfetch: 4.2.0 - util-deprecate: 1.0.2 - webpack: 4.46.0 - - '@storybook/core-client@6.5.16(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)(webpack@5.75.0)': - dependencies: - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/channel-postmessage': 6.5.16 - '@storybook/channel-websocket': 6.5.16 - '@storybook/client-api': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/client-logger': 6.5.16 - '@storybook/core-events': 6.5.16 - '@storybook/csf': 0.0.2--canary.4566f4d.1 - '@storybook/preview-web': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/store': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/ui': 6.5.16(react-dom@18.2.0)(react@18.2.0) - airbnb-js-shims: 2.2.1 - ansi-to-html: 0.6.15 - core-js: 3.28.0 - global: 4.4.0 - lodash: 4.17.21 - qs: 6.11.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - ts-dedent: 2.2.0 - typescript: 4.9.5 - unfetch: 4.2.0 - util-deprecate: 1.0.2 - webpack: 5.75.0 - - '@storybook/core-common@6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)': - dependencies: - '@babel/core': 7.21.0 - '@babel/plugin-proposal-class-properties': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-proposal-decorators': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-proposal-export-default-from': 7.18.10(@babel/core@7.21.0) - '@babel/plugin-proposal-nullish-coalescing-operator': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-proposal-object-rest-spread': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-proposal-optional-chaining': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-proposal-private-methods': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-proposal-private-property-in-object': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-transform-arrow-functions': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-transform-block-scoping': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-transform-classes': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-transform-destructuring': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-transform-for-of': 7.21.0(@babel/core@7.21.0) - '@babel/plugin-transform-parameters': 7.20.7(@babel/core@7.21.0) - '@babel/plugin-transform-shorthand-properties': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-transform-spread': 7.20.7(@babel/core@7.21.0) - '@babel/preset-env': 7.20.2(@babel/core@7.21.0) - '@babel/preset-react': 7.18.6(@babel/core@7.21.0) - '@babel/preset-typescript': 7.21.0(@babel/core@7.21.0) - '@babel/register': 7.21.0(@babel/core@7.21.0) - '@storybook/node-logger': 6.5.16 - '@storybook/semver': 7.3.2 - '@types/node': 16.18.12 - '@types/pretty-hrtime': 1.0.1 - babel-loader: 8.2.5(@babel/core@7.21.0)(webpack@4.46.0) - babel-plugin-macros: 3.1.0 - babel-plugin-polyfill-corejs3: 0.1.7(@babel/core@7.21.0) - chalk: 4.1.2 - core-js: 3.28.0 - express: 4.18.2 - file-system-cache: 1.1.0 - find-up: 5.0.0 - fork-ts-checker-webpack-plugin: 6.5.2(eslint@8.36.0)(typescript@4.9.5)(webpack@4.46.0) - fs-extra: 9.1.0 - glob: 7.2.3 - handlebars: 4.7.7 - interpret: 2.2.0 - json5: 2.2.3 - lazy-universal-dotenv: 3.0.1 - picomatch: 2.3.1 - pkg-dir: 5.0.0 - pretty-hrtime: 1.0.3 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - resolve-from: 5.0.0 - slash: 3.0.0 - telejson: 6.0.8 - ts-dedent: 2.2.0 - typescript: 4.9.5 - util-deprecate: 1.0.2 - webpack: 4.46.0 - transitivePeerDependencies: - - eslint - - supports-color - - vue-template-compiler - - webpack-cli - - webpack-command - - '@storybook/core-events@6.5.16': - dependencies: - core-js: 3.28.0 - - '@storybook/core-server@6.5.16(@storybook/builder-webpack5@6.5.16)(@storybook/manager-webpack5@6.5.16)(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)': - dependencies: - '@discoveryjs/json-ext': 0.5.7 - '@storybook/builder-webpack4': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/builder-webpack5': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/core-client': 6.5.16(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)(webpack@4.46.0) - '@storybook/core-common': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/core-events': 6.5.16 - '@storybook/csf': 0.0.2--canary.4566f4d.1 - '@storybook/csf-tools': 6.5.16 - '@storybook/manager-webpack4': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/manager-webpack5': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/node-logger': 6.5.16 - '@storybook/semver': 7.3.2 - '@storybook/store': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/telemetry': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@types/node': 16.18.12 - '@types/node-fetch': 2.6.2 - '@types/pretty-hrtime': 1.0.1 - '@types/webpack': 4.41.33 - better-opn: 2.1.1 - boxen: 5.1.2 - chalk: 4.1.2 - cli-table3: 0.6.3 - commander: 6.2.1 - compression: 1.7.4 - core-js: 3.28.0 - cpy: 8.1.2 - detect-port: 1.5.1 - express: 4.18.2 - fs-extra: 9.1.0 - global: 4.4.0 - globby: 11.1.0 - ip: 2.0.0 - lodash: 4.17.21 - node-fetch: 2.6.9 - open: 8.4.2 - pretty-hrtime: 1.0.3 - prompts: 2.4.2 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - serve-favicon: 2.5.0 - slash: 3.0.0 - telejson: 6.0.8 - ts-dedent: 2.2.0 - typescript: 4.9.5 - util-deprecate: 1.0.2 - watchpack: 2.4.0 - webpack: 4.46.0 - ws: 8.12.1 - x-default-browser: 0.4.0 - transitivePeerDependencies: - - '@storybook/mdx2-csf' - - bluebird - - bufferutil - - encoding - - eslint - - supports-color - - utf-8-validate - - vue-template-compiler - - webpack-cli - - webpack-command - - '@storybook/core@6.5.16(@storybook/builder-webpack5@6.5.16)(@storybook/manager-webpack5@6.5.16)(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)(webpack@5.75.0)': - dependencies: - '@storybook/builder-webpack5': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/core-client': 6.5.16(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)(webpack@5.75.0) - '@storybook/core-server': 6.5.16(@storybook/builder-webpack5@6.5.16)(@storybook/manager-webpack5@6.5.16)(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/manager-webpack5': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - typescript: 4.9.5 - webpack: 5.75.0 - transitivePeerDependencies: - - '@storybook/mdx2-csf' - - bluebird - - bufferutil - - encoding - - eslint - - supports-color - - utf-8-validate - - vue-template-compiler - - webpack-cli - - webpack-command - - '@storybook/csf-tools@6.5.16': - dependencies: - '@babel/core': 7.21.0 - '@babel/generator': 7.21.1 - '@babel/parser': 7.21.1 - '@babel/plugin-transform-react-jsx': 7.21.0(@babel/core@7.21.0) - '@babel/preset-env': 7.20.2(@babel/core@7.21.0) - '@babel/traverse': 7.21.0 - '@babel/types': 7.21.0 - '@storybook/csf': 0.0.2--canary.4566f4d.1 - '@storybook/mdx1-csf': 0.0.1(@babel/core@7.21.0) - core-js: 3.28.0 - fs-extra: 9.1.0 - global: 4.4.0 - regenerator-runtime: 0.13.11 - ts-dedent: 2.2.0 - transitivePeerDependencies: - - supports-color - - '@storybook/csf@0.0.2--canary.4566f4d.1': - dependencies: - lodash: 4.17.21 - - '@storybook/docs-tools@6.5.16(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@babel/core': 7.21.0 - '@storybook/csf': 0.0.2--canary.4566f4d.1 - '@storybook/store': 6.5.16(react-dom@18.2.0)(react@18.2.0) - core-js: 3.28.0 - doctrine: 3.0.0 - lodash: 4.17.21 - regenerator-runtime: 0.13.11 - transitivePeerDependencies: - - react - - react-dom - - supports-color - - '@storybook/manager-webpack4@6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)': - dependencies: - '@babel/core': 7.21.0 - '@babel/plugin-transform-template-literals': 7.18.9(@babel/core@7.21.0) - '@babel/preset-react': 7.18.6(@babel/core@7.21.0) - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/core-client': 6.5.16(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)(webpack@4.46.0) - '@storybook/core-common': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/node-logger': 6.5.16 - '@storybook/theming': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/ui': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@types/node': 16.18.12 - '@types/webpack': 4.41.33 - babel-loader: 8.2.5(@babel/core@7.21.0)(webpack@4.46.0) - case-sensitive-paths-webpack-plugin: 2.4.0 - chalk: 4.1.2 - core-js: 3.28.0 - css-loader: 3.6.0(webpack@4.46.0) - express: 4.18.2 - file-loader: 6.2.0(webpack@4.46.0) - find-up: 5.0.0 - fs-extra: 9.1.0 - html-webpack-plugin: 4.5.2(webpack@4.46.0) - node-fetch: 2.6.9 - pnp-webpack-plugin: 1.6.4(typescript@4.9.5) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - read-pkg-up: 7.0.1 - regenerator-runtime: 0.13.11 - resolve-from: 5.0.0 - style-loader: 1.3.0(webpack@4.46.0) - telejson: 6.0.8 - terser-webpack-plugin: 4.2.3(webpack@4.46.0) - ts-dedent: 2.2.0 - typescript: 4.9.5 - url-loader: 4.1.1(file-loader@6.2.0)(webpack@4.46.0) - util-deprecate: 1.0.2 - webpack: 4.46.0 - webpack-dev-middleware: 3.7.3(webpack@4.46.0) - webpack-virtual-modules: 0.2.2 - transitivePeerDependencies: - - bluebird - - encoding - - eslint - - supports-color - - vue-template-compiler - - webpack-cli - - webpack-command - - '@storybook/manager-webpack5@6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)': - dependencies: - '@babel/core': 7.21.0 - '@babel/plugin-transform-template-literals': 7.18.9(@babel/core@7.21.0) - '@babel/preset-react': 7.18.6(@babel/core@7.21.0) - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/core-client': 6.5.16(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)(webpack@5.75.0) - '@storybook/core-common': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/node-logger': 6.5.16 - '@storybook/theming': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/ui': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@types/node': 16.18.12 - babel-loader: 8.2.5(@babel/core@7.21.0)(webpack@5.75.0) - case-sensitive-paths-webpack-plugin: 2.4.0 - chalk: 4.1.2 - core-js: 3.28.0 - css-loader: 5.2.7(webpack@5.75.0) - express: 4.18.2 - find-up: 5.0.0 - fs-extra: 9.1.0 - html-webpack-plugin: 5.5.0(webpack@5.75.0) - node-fetch: 2.6.9 - process: 0.11.10 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - read-pkg-up: 7.0.1 - regenerator-runtime: 0.13.11 - resolve-from: 5.0.0 - style-loader: 2.0.0(webpack@5.75.0) - telejson: 6.0.8 - terser-webpack-plugin: 5.3.6(webpack@5.75.0) - ts-dedent: 2.2.0 - typescript: 4.9.5 - util-deprecate: 1.0.2 - webpack: 5.75.0 - webpack-dev-middleware: 4.3.0(webpack@5.75.0) - webpack-virtual-modules: 0.4.6 - transitivePeerDependencies: - - '@swc/core' - - encoding - - esbuild - - eslint - - supports-color - - uglify-js - - vue-template-compiler - - webpack-cli - - webpack-command - - '@storybook/mdx1-csf@0.0.1(@babel/core@7.21.0)': - dependencies: - '@babel/generator': 7.21.1 - '@babel/parser': 7.21.1 - '@babel/preset-env': 7.20.2(@babel/core@7.21.0) - '@babel/types': 7.21.0 - '@mdx-js/mdx': 1.6.22 - '@types/lodash': 4.14.191 - js-string-escape: 1.0.1 - loader-utils: 2.0.4 - lodash: 4.17.21 - prettier: 2.3.0 - ts-dedent: 2.2.0 - transitivePeerDependencies: - - '@babel/core' - - supports-color - - '@storybook/node-logger@6.5.16': - dependencies: - '@types/npmlog': 4.1.4 - chalk: 4.1.2 - core-js: 3.28.0 - npmlog: 5.0.1 - pretty-hrtime: 1.0.3 - - '@storybook/postinstall@6.5.16': - dependencies: - core-js: 3.28.0 - - '@storybook/preview-web@6.5.16(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/channel-postmessage': 6.5.16 - '@storybook/client-logger': 6.5.16 - '@storybook/core-events': 6.5.16 - '@storybook/csf': 0.0.2--canary.4566f4d.1 - '@storybook/store': 6.5.16(react-dom@18.2.0)(react@18.2.0) - ansi-to-html: 0.6.15 - core-js: 3.28.0 - global: 4.4.0 - lodash: 4.17.21 - qs: 6.11.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - synchronous-promise: 2.0.17 - ts-dedent: 2.2.0 - unfetch: 4.2.0 - util-deprecate: 1.0.2 - - '@storybook/react-docgen-typescript-plugin@1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0(typescript@4.9.5)(webpack@5.75.0)': - dependencies: - debug: 4.3.4 - endent: 2.1.0 - find-cache-dir: 3.3.2 - flat-cache: 3.0.4 - micromatch: 4.0.5 - react-docgen-typescript: 2.2.2(typescript@4.9.5) - tslib: 2.5.0 - typescript: 4.9.5 - webpack: 5.75.0 - transitivePeerDependencies: - - supports-color - - '@storybook/react@6.5.16(@babel/core@7.21.0)(@storybook/builder-webpack5@6.5.16)(@storybook/manager-webpack5@6.5.16)(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(require-from-string@2.0.2)(typescript@4.9.5)': - dependencies: - '@babel/core': 7.21.0 - '@babel/preset-flow': 7.18.6(@babel/core@7.21.0) - '@babel/preset-react': 7.18.6(@babel/core@7.21.0) - '@pmmmwh/react-refresh-webpack-plugin': 0.5.10(react-refresh@0.11.0)(webpack@5.75.0) - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/builder-webpack5': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/client-logger': 6.5.16 - '@storybook/core': 6.5.16(@storybook/builder-webpack5@6.5.16)(@storybook/manager-webpack5@6.5.16)(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)(webpack@5.75.0) - '@storybook/core-common': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/csf': 0.0.2--canary.4566f4d.1 - '@storybook/docs-tools': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/manager-webpack5': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - '@storybook/node-logger': 6.5.16 - '@storybook/react-docgen-typescript-plugin': 1.0.2-canary.6.9d540b91e815f8fc2f8829189deb00553559ff63.0(typescript@4.9.5)(webpack@5.75.0) - '@storybook/semver': 7.3.2 - '@storybook/store': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@types/estree': 0.0.51 - '@types/node': 16.18.12 - '@types/webpack-env': 1.18.0 - acorn: 7.4.1 - acorn-jsx: 5.3.2(acorn@7.4.1) - acorn-walk: 7.2.0 - babel-plugin-add-react-displayname: 0.0.5 - babel-plugin-react-docgen: 4.2.1 - core-js: 3.28.0 - escodegen: 2.0.0 - fs-extra: 9.1.0 - global: 4.4.0 - html-tags: 3.2.0 - lodash: 4.17.21 - prop-types: 15.8.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - react-element-to-jsx-string: 14.3.4(react-dom@18.2.0)(react@18.2.0) - react-refresh: 0.11.0 - read-pkg-up: 7.0.1 - regenerator-runtime: 0.13.11 - require-from-string: 2.0.2 - ts-dedent: 2.2.0 - typescript: 4.9.5 - util-deprecate: 1.0.2 - webpack: 5.75.0 - transitivePeerDependencies: - - '@storybook/mdx2-csf' - - '@swc/core' - - '@types/webpack' - - bluebird - - bufferutil - - encoding - - esbuild - - eslint - - sockjs-client - - supports-color - - type-fest - - uglify-js - - utf-8-validate - - vue-template-compiler - - webpack-cli - - webpack-command - - webpack-dev-server - - webpack-hot-middleware - - webpack-plugin-serve - - '@storybook/router@6.5.16(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@storybook/client-logger': 6.5.16 - core-js: 3.28.0 - memoizerific: 1.11.3 - qs: 6.11.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - - '@storybook/semver@7.3.2': - dependencies: - core-js: 3.28.0 - find-up: 4.1.0 - - '@storybook/source-loader@6.5.16(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/client-logger': 6.5.16 - '@storybook/csf': 0.0.2--canary.4566f4d.1 - core-js: 3.28.0 - estraverse: 5.3.0 - global: 4.4.0 - loader-utils: 2.0.4 - lodash: 4.17.21 - prettier: 2.3.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - - '@storybook/store@6.5.16(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/client-logger': 6.5.16 - '@storybook/core-events': 6.5.16 - '@storybook/csf': 0.0.2--canary.4566f4d.1 - core-js: 3.28.0 - fast-deep-equal: 3.1.3 - global: 4.4.0 - lodash: 4.17.21 - memoizerific: 1.11.3 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - slash: 3.0.0 - stable: 0.1.8 - synchronous-promise: 2.0.17 - ts-dedent: 2.2.0 - util-deprecate: 1.0.2 - - '@storybook/telemetry@6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5)': - dependencies: - '@storybook/client-logger': 6.5.16 - '@storybook/core-common': 6.5.16(eslint@8.36.0)(react-dom@18.2.0)(react@18.2.0)(typescript@4.9.5) - chalk: 4.1.2 - core-js: 3.28.0 - detect-package-manager: 2.0.1 - fetch-retry: 5.0.4 - fs-extra: 9.1.0 - global: 4.4.0 - isomorphic-unfetch: 3.1.0 - nanoid: 3.3.4 - read-pkg-up: 7.0.1 - regenerator-runtime: 0.13.11 - transitivePeerDependencies: - - encoding - - eslint - - react - - react-dom - - supports-color - - typescript - - vue-template-compiler - - webpack-cli - - webpack-command - - '@storybook/theming@6.5.16(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@storybook/client-logger': 6.5.16 - core-js: 3.28.0 - memoizerific: 1.11.3 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - - '@storybook/ui@6.5.16(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@storybook/addons': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/api': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/channels': 6.5.16 - '@storybook/client-logger': 6.5.16 - '@storybook/components': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/core-events': 6.5.16 - '@storybook/router': 6.5.16(react-dom@18.2.0)(react@18.2.0) - '@storybook/semver': 7.3.2 - '@storybook/theming': 6.5.16(react-dom@18.2.0)(react@18.2.0) - core-js: 3.28.0 - memoizerific: 1.11.3 - qs: 6.11.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - regenerator-runtime: 0.13.11 - resolve-from: 5.0.0 - - '@svgr/babel-plugin-add-jsx-attribute@6.5.1(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - - '@svgr/babel-plugin-remove-jsx-attribute@6.5.0(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - - '@svgr/babel-plugin-remove-jsx-empty-expression@6.5.0(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - - '@svgr/babel-plugin-replace-jsx-attribute-value@6.5.1(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - - '@svgr/babel-plugin-svg-dynamic-title@6.5.1(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - - '@svgr/babel-plugin-svg-em-dimensions@6.5.1(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - - '@svgr/babel-plugin-transform-react-native-svg@6.5.1(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - - '@svgr/babel-plugin-transform-svg-component@6.5.1(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - - '@svgr/babel-preset@6.5.1(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@svgr/babel-plugin-add-jsx-attribute': 6.5.1(@babel/core@7.21.0) - '@svgr/babel-plugin-remove-jsx-attribute': 6.5.0(@babel/core@7.21.0) - '@svgr/babel-plugin-remove-jsx-empty-expression': 6.5.0(@babel/core@7.21.0) - '@svgr/babel-plugin-replace-jsx-attribute-value': 6.5.1(@babel/core@7.21.0) - '@svgr/babel-plugin-svg-dynamic-title': 6.5.1(@babel/core@7.21.0) - '@svgr/babel-plugin-svg-em-dimensions': 6.5.1(@babel/core@7.21.0) - '@svgr/babel-plugin-transform-react-native-svg': 6.5.1(@babel/core@7.21.0) - '@svgr/babel-plugin-transform-svg-component': 6.5.1(@babel/core@7.21.0) - - '@svgr/core@6.5.1': - dependencies: - '@babel/core': 7.21.0 - '@svgr/babel-preset': 6.5.1(@babel/core@7.21.0) - '@svgr/plugin-jsx': 6.5.1(@svgr/core@6.5.1) - camelcase: 6.3.0 - cosmiconfig: 7.1.0 - transitivePeerDependencies: - - supports-color - - '@svgr/hast-util-to-babel-ast@6.5.1': - dependencies: - '@babel/types': 7.21.0 - entities: 4.4.0 - - '@svgr/plugin-jsx@6.5.1(@svgr/core@6.5.1)': - dependencies: - '@babel/core': 7.21.0 - '@svgr/babel-preset': 6.5.1(@babel/core@7.21.0) - '@svgr/core': 6.5.1 - '@svgr/hast-util-to-babel-ast': 6.5.1 - svg-parser: 2.0.4 - transitivePeerDependencies: - - supports-color - - '@svgr/plugin-svgo@6.5.1(@svgr/core@6.5.1)': - dependencies: - '@svgr/core': 6.5.1 - cosmiconfig: 7.1.0 - deepmerge: 4.3.0 - svgo: 2.8.0 - - '@svgr/webpack@6.5.1': - dependencies: - '@babel/core': 7.21.0 - '@babel/plugin-transform-react-constant-elements': 7.20.2(@babel/core@7.21.0) - '@babel/preset-env': 7.20.2(@babel/core@7.21.0) - '@babel/preset-react': 7.18.6(@babel/core@7.21.0) - '@babel/preset-typescript': 7.21.0(@babel/core@7.21.0) - '@svgr/core': 6.5.1 - '@svgr/plugin-jsx': 6.5.1(@svgr/core@6.5.1) - '@svgr/plugin-svgo': 6.5.1(@svgr/core@6.5.1) - transitivePeerDependencies: - - supports-color - - '@swagger-api/apidom-ast@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@types/ramda': 0.29.0 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - stampit: 4.3.2 - unraw: 2.0.1 - - '@swagger-api/apidom-core@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-ast': 0.69.3 - '@types/ramda': 0.29.0 - minim: 0.23.8 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - short-unique-id: 4.4.4 - stampit: 4.3.2 - - '@swagger-api/apidom-json-pointer@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-core': 0.69.3 - '@types/ramda': 0.29.0 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - - '@swagger-api/apidom-ns-api-design-systems@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-core': 0.69.3 - '@swagger-api/apidom-ns-openapi-3-1': 0.69.3 - '@types/ramda': 0.29.0 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - stampit: 4.3.2 - optional: true - - '@swagger-api/apidom-ns-asyncapi-2@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-core': 0.69.3 - '@swagger-api/apidom-ns-json-schema-draft-7': 0.69.3 - '@types/ramda': 0.29.0 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - stampit: 4.3.2 - optional: true - - '@swagger-api/apidom-ns-json-schema-draft-4@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-core': 0.69.3 - '@types/ramda': 0.29.0 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - stampit: 4.3.2 - - '@swagger-api/apidom-ns-json-schema-draft-6@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-core': 0.69.3 - '@swagger-api/apidom-ns-json-schema-draft-4': 0.69.3 - '@types/ramda': 0.29.0 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - stampit: 4.3.2 - optional: true - - '@swagger-api/apidom-ns-json-schema-draft-7@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-core': 0.69.3 - '@swagger-api/apidom-ns-json-schema-draft-6': 0.69.3 - '@types/ramda': 0.29.0 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - stampit: 4.3.2 - optional: true - - '@swagger-api/apidom-ns-openapi-3-0@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-core': 0.69.3 - '@swagger-api/apidom-ns-json-schema-draft-4': 0.69.3 - '@types/ramda': 0.29.0 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - stampit: 4.3.2 - - '@swagger-api/apidom-ns-openapi-3-1@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-core': 0.69.3 - '@swagger-api/apidom-ns-openapi-3-0': 0.69.3 - '@types/ramda': 0.29.0 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - stampit: 4.3.2 - - '@swagger-api/apidom-parser-adapter-api-design-systems-json@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-core': 0.69.3 - '@swagger-api/apidom-ns-api-design-systems': 0.69.3 - '@swagger-api/apidom-parser-adapter-json': 0.69.3 - '@types/ramda': 0.29.0 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - optional: true - - '@swagger-api/apidom-parser-adapter-api-design-systems-yaml@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-core': 0.69.3 - '@swagger-api/apidom-ns-api-design-systems': 0.69.3 - '@swagger-api/apidom-parser-adapter-yaml-1-2': 0.69.3 - '@types/ramda': 0.29.0 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - optional: true - - '@swagger-api/apidom-parser-adapter-asyncapi-json-2@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-core': 0.69.3 - '@swagger-api/apidom-ns-asyncapi-2': 0.69.3 - '@swagger-api/apidom-parser-adapter-json': 0.69.3 - '@types/ramda': 0.29.0 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - optional: true - - '@swagger-api/apidom-parser-adapter-asyncapi-yaml-2@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-core': 0.69.3 - '@swagger-api/apidom-ns-asyncapi-2': 0.69.3 - '@swagger-api/apidom-parser-adapter-yaml-1-2': 0.69.3 - '@types/ramda': 0.29.0 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - optional: true - - '@swagger-api/apidom-parser-adapter-json@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-ast': 0.69.3 - '@swagger-api/apidom-core': 0.69.3 - '@types/ramda': 0.29.0 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - stampit: 4.3.2 - tree-sitter: 0.20.1 - tree-sitter-json: 0.20.0 - web-tree-sitter: 0.20.7 - optional: true - - '@swagger-api/apidom-parser-adapter-openapi-json-3-0@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-core': 0.69.3 - '@swagger-api/apidom-ns-openapi-3-0': 0.69.3 - '@swagger-api/apidom-parser-adapter-json': 0.69.3 - '@types/ramda': 0.29.0 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - optional: true - - '@swagger-api/apidom-parser-adapter-openapi-json-3-1@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-core': 0.69.3 - '@swagger-api/apidom-ns-openapi-3-1': 0.69.3 - '@swagger-api/apidom-parser-adapter-json': 0.69.3 - '@types/ramda': 0.29.0 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - optional: true - - '@swagger-api/apidom-parser-adapter-openapi-yaml-3-0@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-core': 0.69.3 - '@swagger-api/apidom-ns-openapi-3-0': 0.69.3 - '@swagger-api/apidom-parser-adapter-yaml-1-2': 0.69.3 - '@types/ramda': 0.29.0 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - optional: true - - '@swagger-api/apidom-parser-adapter-openapi-yaml-3-1@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-core': 0.69.3 - '@swagger-api/apidom-ns-openapi-3-1': 0.69.3 - '@swagger-api/apidom-parser-adapter-yaml-1-2': 0.69.3 - '@types/ramda': 0.29.0 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - optional: true - - '@swagger-api/apidom-parser-adapter-yaml-1-2@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-ast': 0.69.3 - '@swagger-api/apidom-core': 0.69.3 - '@types/ramda': 0.29.0 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - stampit: 4.3.2 - tree-sitter: 0.20.1 - tree-sitter-yaml: 0.5.0 - web-tree-sitter: 0.20.7 - optional: true - - '@swagger-api/apidom-reference@0.69.3': - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-core': 0.69.3 - '@types/ramda': 0.29.0 - axios: 1.3.6 - minimatch: 7.4.3 - process: 0.11.10 - ramda: 0.29.0 - ramda-adjunct: 4.0.0(ramda@0.29.0) - stampit: 4.3.2 - optionalDependencies: - '@swagger-api/apidom-json-pointer': 0.69.3 - '@swagger-api/apidom-ns-asyncapi-2': 0.69.3 - '@swagger-api/apidom-ns-openapi-3-0': 0.69.3 - '@swagger-api/apidom-ns-openapi-3-1': 0.69.3 - '@swagger-api/apidom-parser-adapter-api-design-systems-json': 0.69.3 - '@swagger-api/apidom-parser-adapter-api-design-systems-yaml': 0.69.3 - '@swagger-api/apidom-parser-adapter-asyncapi-json-2': 0.69.3 - '@swagger-api/apidom-parser-adapter-asyncapi-yaml-2': 0.69.3 - '@swagger-api/apidom-parser-adapter-json': 0.69.3 - '@swagger-api/apidom-parser-adapter-openapi-json-3-0': 0.69.3 - '@swagger-api/apidom-parser-adapter-openapi-json-3-1': 0.69.3 - '@swagger-api/apidom-parser-adapter-openapi-yaml-3-0': 0.69.3 - '@swagger-api/apidom-parser-adapter-openapi-yaml-3-1': 0.69.3 - '@swagger-api/apidom-parser-adapter-yaml-1-2': 0.69.3 - transitivePeerDependencies: - - debug - - '@swc/helpers@0.4.14': - dependencies: - tslib: 2.5.0 - - '@szmarczak/http-timer@4.0.6': - dependencies: - defer-to-connect: 2.0.1 - - '@tabler/icons-react@2.10.0(react@18.2.0)': - dependencies: - '@tabler/icons': 2.10.0 - prop-types: 15.8.1 - react: 18.2.0 - - '@tabler/icons@2.10.0': {} - - '@tanstack/react-table@8.7.9(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@tanstack/table-core': 8.7.9 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@tanstack/table-core@8.7.9': {} - - '@trysound/sax@0.2.0': {} - - '@tsconfig/node10@1.0.9': {} - - '@tsconfig/node12@1.0.11': {} - - '@tsconfig/node14@1.0.3': {} - - '@tsconfig/node16@1.0.3': {} - - '@types/accepts@1.3.5': - dependencies: - '@types/node': 18.15.1 - - '@types/babel__core@7.20.0': - dependencies: - '@babel/parser': 7.21.1 - '@babel/types': 7.21.0 - '@types/babel__generator': 7.6.4 - '@types/babel__template': 7.4.1 - '@types/babel__traverse': 7.18.3 - - '@types/babel__generator@7.6.4': - dependencies: - '@babel/types': 7.21.0 - - '@types/babel__template@7.4.1': - dependencies: - '@babel/parser': 7.21.1 - '@babel/types': 7.21.0 - - '@types/babel__traverse@7.18.3': - dependencies: - '@babel/types': 7.21.0 - - '@types/bcryptjs@2.4.2': {} - - '@types/body-parser@1.19.2': - dependencies: - '@types/connect': 3.4.35 - '@types/node': 18.15.1 - - '@types/cacheable-request@6.0.3': - dependencies: - '@types/http-cache-semantics': 4.0.1 - '@types/keyv': 3.1.4 - '@types/node': 18.15.1 - '@types/responselike': 1.0.0 - - '@types/connect@3.4.35': - dependencies: - '@types/node': 18.15.1 - - '@types/content-disposition@0.5.5': {} - - '@types/cookie@0.4.1': {} - - '@types/cookies@0.7.7': - dependencies: - '@types/connect': 3.4.35 - '@types/express': 4.17.17 - '@types/keygrip': 1.0.2 - '@types/node': 18.15.1 - - '@types/cors@2.8.13': - dependencies: - '@types/node': 18.15.1 - - '@types/emscripten@1.39.6': {} - - '@types/eslint-scope@3.7.4': - dependencies: - '@types/eslint': 8.21.1 - '@types/estree': 0.0.51 - - '@types/eslint@8.21.1': - dependencies: - '@types/estree': 0.0.51 - '@types/json-schema': 7.0.11 - - '@types/estree@0.0.51': {} - - '@types/express-serve-static-core@4.17.33': - dependencies: - '@types/node': 18.15.1 - '@types/qs': 6.9.7 - '@types/range-parser': 1.2.4 - - '@types/express@4.17.17': - dependencies: - '@types/body-parser': 1.19.2 - '@types/express-serve-static-core': 4.17.33 - '@types/qs': 6.9.7 - '@types/serve-static': 1.15.0 - - '@types/glob@7.2.0': - dependencies: - '@types/minimatch': 5.1.2 - '@types/node': 18.15.1 - - '@types/glob@8.0.1': - dependencies: - '@types/minimatch': 5.1.2 - '@types/node': 18.15.1 - - '@types/graceful-fs@4.1.6': - dependencies: - '@types/node': 18.15.1 - - '@types/hast@2.3.4': - dependencies: - '@types/unist': 2.0.6 - - '@types/hoist-non-react-statics@3.3.1': - dependencies: - '@types/react': 18.0.28 - hoist-non-react-statics: 3.3.2 - - '@types/html-minifier-terser@5.1.2': {} - - '@types/html-minifier-terser@6.1.0': {} - - '@types/http-assert@1.5.3': {} - - '@types/http-cache-semantics@4.0.1': {} - - '@types/http-errors@2.0.1': {} - - '@types/is-function@1.0.1': {} - - '@types/istanbul-lib-coverage@2.0.4': {} - - '@types/istanbul-lib-report@3.0.0': - dependencies: - '@types/istanbul-lib-coverage': 2.0.4 - - '@types/istanbul-reports@3.0.1': - dependencies: - '@types/istanbul-lib-report': 3.0.0 - - '@types/jest@29.4.0': - dependencies: - expect: 29.4.3 - pretty-format: 29.4.3 - - '@types/json-schema@7.0.11': {} - - '@types/json5@0.0.29': {} - - '@types/keygrip@1.0.2': {} - - '@types/keyv@3.1.4': - dependencies: - '@types/node': 18.15.1 - - '@types/koa-bodyparser@4.3.10': - dependencies: - '@types/koa': 2.13.5 - - '@types/koa-compose@3.2.5': - dependencies: - '@types/koa': 2.13.5 - - '@types/koa-helmet@6.0.4': - dependencies: - '@types/koa': 2.13.5 - helmet: 4.6.0 - - '@types/koa-logger@3.1.2': - dependencies: - '@types/koa': 2.13.5 - - '@types/koa-mount@4.0.2': - dependencies: - '@types/koa': 2.13.5 - - '@types/koa-qs@2.0.0': - dependencies: - '@types/koa': 2.13.5 - - '@types/koa@2.13.5': - dependencies: - '@types/accepts': 1.3.5 - '@types/content-disposition': 0.5.5 - '@types/cookies': 0.7.7 - '@types/http-assert': 1.5.3 - '@types/http-errors': 2.0.1 - '@types/keygrip': 1.0.2 - '@types/koa-compose': 3.2.5 - '@types/node': 18.15.1 - - '@types/koa__cors@3.3.1': - dependencies: - '@types/koa': 2.13.5 - - '@types/koa__multer@2.0.4': - dependencies: - '@types/koa': 2.13.5 - - '@types/koa__router@12.0.0': - dependencies: - '@types/koa': 2.13.5 - - '@types/lodash@4.14.191': {} - - '@types/mdast@3.0.10': - dependencies: - '@types/unist': 2.0.6 - - '@types/mime@3.0.1': {} - - '@types/minimatch@5.1.2': {} - - '@types/mixpanel-browser@2.38.1': {} - - '@types/module-alias@2.0.1': {} - - '@types/node-fetch@2.6.2': - dependencies: - '@types/node': 18.15.1 - form-data: 3.0.1 - - '@types/node-schedule@2.1.0': - dependencies: - '@types/node': 18.15.1 - - '@types/node@13.13.52': {} - - '@types/node@16.18.12': {} - - '@types/node@18.15.1': {} - - '@types/normalize-package-data@2.4.1': {} - - '@types/npmlog@4.1.4': {} - - '@types/parse-json@4.0.0': {} - - '@types/parse5@5.0.3': {} - - '@types/prettier@2.7.2': {} - - '@types/pretty-hrtime@1.0.1': {} - - '@types/prop-types@15.7.5': {} - - '@types/psl@1.1.0': {} - - '@types/qs@6.9.7': {} - - '@types/ramda@0.29.0': - dependencies: - types-ramda: 0.29.2 - - '@types/range-parser@1.2.4': {} - - '@types/react-dom@18.0.11': - dependencies: - '@types/react': 18.0.28 - - '@types/react@18.0.28': - dependencies: - '@types/prop-types': 15.7.5 - '@types/scheduler': 0.16.2 - csstype: 3.1.1 - - '@types/responselike@1.0.0': - dependencies: - '@types/node': 18.15.1 - - '@types/scheduler@0.16.2': {} - - '@types/semver@7.3.13': {} - - '@types/serve-static@1.15.0': - dependencies: - '@types/mime': 3.0.1 - '@types/node': 18.15.1 - - '@types/source-list-map@0.1.2': {} - - '@types/stack-utils@2.0.1': {} - - '@types/tapable@1.0.8': {} - - '@types/tmp@0.2.3': {} - - '@types/treeify@1.0.0': {} - - '@types/triple-beam@1.3.2': {} - - '@types/uglify-js@3.17.1': - dependencies: - source-map: 0.6.1 - - '@types/unist@2.0.6': {} - - '@types/use-sync-external-store@0.0.3': {} - - '@types/webidl-conversions@7.0.0': {} - - '@types/webpack-env@1.18.0': {} - - '@types/webpack-sources@3.2.0': - dependencies: - '@types/node': 18.15.1 - '@types/source-list-map': 0.1.2 - source-map: 0.7.4 - - '@types/webpack@4.41.33': - dependencies: - '@types/node': 18.15.1 - '@types/tapable': 1.0.8 - '@types/uglify-js': 3.17.1 - '@types/webpack-sources': 3.2.0 - anymatch: 3.1.3 - source-map: 0.6.1 - - '@types/whatwg-url@8.2.2': - dependencies: - '@types/node': 18.15.1 - '@types/webidl-conversions': 7.0.0 - - '@types/yargs-parser@21.0.0': {} - - '@types/yargs@15.0.15': - dependencies: - '@types/yargs-parser': 21.0.0 - - '@types/yargs@17.0.22': - dependencies: - '@types/yargs-parser': 21.0.0 - - '@typescript-eslint/eslint-plugin@5.54.1(@typescript-eslint/parser@5.54.1)(eslint@8.36.0)(typescript@4.9.5)': - dependencies: - '@typescript-eslint/parser': 5.54.1(eslint@8.36.0)(typescript@4.9.5) - '@typescript-eslint/scope-manager': 5.54.1 - '@typescript-eslint/type-utils': 5.54.1(eslint@8.36.0)(typescript@4.9.5) - '@typescript-eslint/utils': 5.54.1(eslint@8.36.0)(typescript@4.9.5) - debug: 4.3.4 - eslint: 8.36.0 - grapheme-splitter: 1.0.4 - ignore: 5.2.4 - natural-compare-lite: 1.4.0 - regexpp: 3.2.0 - semver: 7.3.8 - tsutils: 3.21.0(typescript@4.9.5) - typescript: 4.9.5 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/parser@5.54.1(eslint@8.36.0)(typescript@4.9.5)': - dependencies: - '@typescript-eslint/scope-manager': 5.54.1 - '@typescript-eslint/types': 5.54.1 - '@typescript-eslint/typescript-estree': 5.54.1(typescript@4.9.5) - debug: 4.3.4 - eslint: 8.36.0 - typescript: 4.9.5 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/scope-manager@5.54.1': - dependencies: - '@typescript-eslint/types': 5.54.1 - '@typescript-eslint/visitor-keys': 5.54.1 - - '@typescript-eslint/type-utils@5.54.1(eslint@8.36.0)(typescript@4.9.5)': - dependencies: - '@typescript-eslint/typescript-estree': 5.54.1(typescript@4.9.5) - '@typescript-eslint/utils': 5.54.1(eslint@8.36.0)(typescript@4.9.5) - debug: 4.3.4 - eslint: 8.36.0 - tsutils: 3.21.0(typescript@4.9.5) - typescript: 4.9.5 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/types@5.54.1': {} - - '@typescript-eslint/typescript-estree@5.54.1(typescript@4.9.5)': - dependencies: - '@typescript-eslint/types': 5.54.1 - '@typescript-eslint/visitor-keys': 5.54.1 - debug: 4.3.4 - globby: 11.1.0 - is-glob: 4.0.3 - semver: 7.3.8 - tsutils: 3.21.0(typescript@4.9.5) - typescript: 4.9.5 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/utils@5.54.1(eslint@8.36.0)(typescript@4.9.5)': - dependencies: - '@types/json-schema': 7.0.11 - '@types/semver': 7.3.13 - '@typescript-eslint/scope-manager': 5.54.1 - '@typescript-eslint/types': 5.54.1 - '@typescript-eslint/typescript-estree': 5.54.1(typescript@4.9.5) - eslint: 8.36.0 - eslint-scope: 5.1.1 - eslint-utils: 3.0.0(eslint@8.36.0) - semver: 7.3.8 - transitivePeerDependencies: - - supports-color - - typescript - - '@typescript-eslint/visitor-keys@5.54.1': - dependencies: - '@typescript-eslint/types': 5.54.1 - eslint-visitor-keys: 3.3.0 - - '@usulpro/react-json-view@2.0.1(react-dom@18.2.0)(react@18.2.0)': - dependencies: - color-string: 1.9.1 - flux: 4.0.3(react@18.2.0) - react: 18.2.0 - react-base16-styling: 0.6.0 - react-dom: 18.2.0(react@18.2.0) - react-lifecycles-compat: 3.0.4 - react-textarea-autosize: 6.1.0(react@18.2.0) - transitivePeerDependencies: - - encoding - - '@webassemblyjs/ast@1.11.1': - dependencies: - '@webassemblyjs/helper-numbers': 1.11.1 - '@webassemblyjs/helper-wasm-bytecode': 1.11.1 - - '@webassemblyjs/ast@1.9.0': - dependencies: - '@webassemblyjs/helper-module-context': 1.9.0 - '@webassemblyjs/helper-wasm-bytecode': 1.9.0 - '@webassemblyjs/wast-parser': 1.9.0 - - '@webassemblyjs/floating-point-hex-parser@1.11.1': {} - - '@webassemblyjs/floating-point-hex-parser@1.9.0': {} - - '@webassemblyjs/helper-api-error@1.11.1': {} - - '@webassemblyjs/helper-api-error@1.9.0': {} - - '@webassemblyjs/helper-buffer@1.11.1': {} - - '@webassemblyjs/helper-buffer@1.9.0': {} - - '@webassemblyjs/helper-code-frame@1.9.0': - dependencies: - '@webassemblyjs/wast-printer': 1.9.0 - - '@webassemblyjs/helper-fsm@1.9.0': {} - - '@webassemblyjs/helper-module-context@1.9.0': - dependencies: - '@webassemblyjs/ast': 1.9.0 - - '@webassemblyjs/helper-numbers@1.11.1': - dependencies: - '@webassemblyjs/floating-point-hex-parser': 1.11.1 - '@webassemblyjs/helper-api-error': 1.11.1 - '@xtuc/long': 4.2.2 - - '@webassemblyjs/helper-wasm-bytecode@1.11.1': {} - - '@webassemblyjs/helper-wasm-bytecode@1.9.0': {} - - '@webassemblyjs/helper-wasm-section@1.11.1': - 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 - - '@webassemblyjs/helper-wasm-section@1.9.0': - dependencies: - '@webassemblyjs/ast': 1.9.0 - '@webassemblyjs/helper-buffer': 1.9.0 - '@webassemblyjs/helper-wasm-bytecode': 1.9.0 - '@webassemblyjs/wasm-gen': 1.9.0 - - '@webassemblyjs/ieee754@1.11.1': - dependencies: - '@xtuc/ieee754': 1.2.0 - - '@webassemblyjs/ieee754@1.9.0': - dependencies: - '@xtuc/ieee754': 1.2.0 - - '@webassemblyjs/leb128@1.11.1': - dependencies: - '@xtuc/long': 4.2.2 - - '@webassemblyjs/leb128@1.9.0': - dependencies: - '@xtuc/long': 4.2.2 - - '@webassemblyjs/utf8@1.11.1': {} - - '@webassemblyjs/utf8@1.9.0': {} - - '@webassemblyjs/wasm-edit@1.11.1': - 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 - - '@webassemblyjs/wasm-edit@1.9.0': - dependencies: - '@webassemblyjs/ast': 1.9.0 - '@webassemblyjs/helper-buffer': 1.9.0 - '@webassemblyjs/helper-wasm-bytecode': 1.9.0 - '@webassemblyjs/helper-wasm-section': 1.9.0 - '@webassemblyjs/wasm-gen': 1.9.0 - '@webassemblyjs/wasm-opt': 1.9.0 - '@webassemblyjs/wasm-parser': 1.9.0 - '@webassemblyjs/wast-printer': 1.9.0 - - '@webassemblyjs/wasm-gen@1.11.1': - 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 - - '@webassemblyjs/wasm-gen@1.9.0': - dependencies: - '@webassemblyjs/ast': 1.9.0 - '@webassemblyjs/helper-wasm-bytecode': 1.9.0 - '@webassemblyjs/ieee754': 1.9.0 - '@webassemblyjs/leb128': 1.9.0 - '@webassemblyjs/utf8': 1.9.0 - - '@webassemblyjs/wasm-opt@1.11.1': - dependencies: - '@webassemblyjs/ast': 1.11.1 - '@webassemblyjs/helper-buffer': 1.11.1 - '@webassemblyjs/wasm-gen': 1.11.1 - '@webassemblyjs/wasm-parser': 1.11.1 - - '@webassemblyjs/wasm-opt@1.9.0': - dependencies: - '@webassemblyjs/ast': 1.9.0 - '@webassemblyjs/helper-buffer': 1.9.0 - '@webassemblyjs/wasm-gen': 1.9.0 - '@webassemblyjs/wasm-parser': 1.9.0 - - '@webassemblyjs/wasm-parser@1.11.1': - 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 - - '@webassemblyjs/wasm-parser@1.9.0': - dependencies: - '@webassemblyjs/ast': 1.9.0 - '@webassemblyjs/helper-api-error': 1.9.0 - '@webassemblyjs/helper-wasm-bytecode': 1.9.0 - '@webassemblyjs/ieee754': 1.9.0 - '@webassemblyjs/leb128': 1.9.0 - '@webassemblyjs/utf8': 1.9.0 - - '@webassemblyjs/wast-parser@1.9.0': - dependencies: - '@webassemblyjs/ast': 1.9.0 - '@webassemblyjs/floating-point-hex-parser': 1.9.0 - '@webassemblyjs/helper-api-error': 1.9.0 - '@webassemblyjs/helper-code-frame': 1.9.0 - '@webassemblyjs/helper-fsm': 1.9.0 - '@xtuc/long': 4.2.2 - - '@webassemblyjs/wast-printer@1.11.1': - dependencies: - '@webassemblyjs/ast': 1.11.1 - '@xtuc/long': 4.2.2 - - '@webassemblyjs/wast-printer@1.9.0': - dependencies: - '@webassemblyjs/ast': 1.9.0 - '@webassemblyjs/wast-parser': 1.9.0 - '@xtuc/long': 4.2.2 - - '@xtuc/ieee754@1.2.0': {} - - '@xtuc/long@4.2.2': {} - - '@yarnpkg/core@2.4.0': - dependencies: - '@arcanis/slice-ansi': 1.1.1 - '@types/semver': 7.3.13 - '@types/treeify': 1.0.0 - '@yarnpkg/fslib': 2.10.1 - '@yarnpkg/json-proxy': 2.1.1 - '@yarnpkg/libzip': 2.2.4 - '@yarnpkg/parsers': 2.5.1 - '@yarnpkg/pnp': 2.3.2 - '@yarnpkg/shell': 2.4.1 - binjumper: 0.1.4 - camelcase: 5.3.1 - chalk: 3.0.0 - ci-info: 2.0.0 - clipanion: 2.6.2 - cross-spawn: 7.0.3 - diff: 4.0.2 - globby: 11.1.0 - got: 11.8.6 - json-file-plus: 3.3.1 - lodash: 4.17.21 - micromatch: 4.0.5 - mkdirp: 0.5.6 - p-limit: 2.3.0 - pluralize: 7.0.0 - pretty-bytes: 5.6.0 - semver: 7.3.8 - stream-to-promise: 2.2.0 - tar-stream: 2.2.0 - treeify: 1.1.0 - tslib: 1.14.1 - tunnel: 0.0.6 - - '@yarnpkg/fslib@2.10.1': - dependencies: - '@yarnpkg/libzip': 2.2.4 - tslib: 1.14.1 - - '@yarnpkg/json-proxy@2.1.1': - dependencies: - '@yarnpkg/fslib': 2.10.1 - tslib: 1.14.1 - - '@yarnpkg/libzip@2.2.4': - dependencies: - '@types/emscripten': 1.39.6 - tslib: 1.14.1 - - '@yarnpkg/lockfile@1.1.0': {} - - '@yarnpkg/parsers@2.5.1': - dependencies: - js-yaml: 3.14.1 - tslib: 1.14.1 - - '@yarnpkg/pnp@2.3.2': - dependencies: - '@types/node': 13.13.52 - '@yarnpkg/fslib': 2.10.1 - tslib: 1.14.1 - - '@yarnpkg/shell@2.4.1': - dependencies: - '@yarnpkg/fslib': 2.10.1 - '@yarnpkg/parsers': 2.5.1 - clipanion: 2.6.2 - cross-spawn: 7.0.3 - fast-glob: 3.2.12 - micromatch: 4.0.5 - stream-buffers: 3.0.2 - tslib: 1.14.1 - - abbrev@1.1.1: {} - - abort-controller@3.0.0: - dependencies: - event-target-shim: 5.0.1 - - accepts@1.3.8: - dependencies: - mime-types: 2.1.35 - negotiator: 0.6.3 - - acorn-import-assertions@1.8.0(acorn@8.8.2): - dependencies: - acorn: 8.8.2 - - acorn-jsx@5.3.2(acorn@7.4.1): - dependencies: - acorn: 7.4.1 - - acorn-jsx@5.3.2(acorn@8.8.2): - dependencies: - acorn: 8.8.2 - - acorn-walk@7.2.0: {} - - acorn-walk@8.2.0: {} - - acorn@6.4.2: {} - - acorn@7.4.1: {} - - acorn@8.8.2: {} - - address@1.2.2: {} - - agent-base@6.0.2: - dependencies: - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - - aggregate-error@3.1.0: - dependencies: - clean-stack: 2.2.0 - indent-string: 4.0.0 - - airbnb-js-shims@2.2.1: - dependencies: - array-includes: 3.1.6 - array.prototype.flat: 1.3.1 - array.prototype.flatmap: 1.3.1 - es5-shim: 4.6.7 - es6-shim: 0.35.7 - function.prototype.name: 1.1.5 - globalthis: 1.0.3 - object.entries: 1.1.6 - object.fromentries: 2.0.6 - object.getownpropertydescriptors: 2.1.5 - object.values: 1.1.6 - promise.allsettled: 1.0.6 - promise.prototype.finally: 3.1.4 - string.prototype.matchall: 4.0.8 - string.prototype.padend: 3.1.4 - string.prototype.padstart: 3.1.4 - symbol.prototype.description: 1.0.5 - - ajv-errors@1.0.1(ajv@6.12.6): - dependencies: - ajv: 6.12.6 - - ajv-formats@2.1.1(ajv@8.12.0): - dependencies: - ajv: 8.12.0 - - ajv-keywords@3.5.2(ajv@6.12.6): - dependencies: - ajv: 6.12.6 - - ajv-keywords@5.1.0(ajv@8.12.0): - dependencies: - ajv: 8.12.0 - fast-deep-equal: 3.1.3 - - ajv@6.12.6: - dependencies: - fast-deep-equal: 3.1.3 - fast-json-stable-stringify: 2.1.0 - json-schema-traverse: 0.4.1 - uri-js: 4.4.1 - - ajv@8.12.0: - dependencies: - fast-deep-equal: 3.1.3 - json-schema-traverse: 1.0.0 - require-from-string: 2.0.2 - uri-js: 4.4.1 - - ansi-align@3.0.1: - dependencies: - string-width: 4.2.3 - - ansi-colors@3.2.4: {} - - ansi-colors@4.1.3: {} - - ansi-escapes@4.3.2: - dependencies: - type-fest: 0.21.3 - - ansi-html-community@0.0.8: {} - - ansi-regex@2.1.1: {} - - ansi-regex@5.0.1: {} - - ansi-regex@6.0.1: {} - - ansi-styles@3.2.1: - dependencies: - color-convert: 1.9.3 - - ansi-styles@4.3.0: - dependencies: - color-convert: 2.0.1 - - ansi-styles@5.2.0: {} - - ansi-styles@6.2.1: {} - - ansi-to-html@0.6.15: - dependencies: - entities: 2.2.0 - - any-promise@1.3.0: {} - - anymatch@2.0.0: - dependencies: - micromatch: 3.1.10 - normalize-path: 2.1.1 - transitivePeerDependencies: - - supports-color - - anymatch@3.1.3: - dependencies: - normalize-path: 3.0.0 - picomatch: 2.3.1 - - app-root-dir@1.0.2: {} - - append-field@1.0.0: {} - - aproba@1.2.0: {} - - aproba@2.0.0: {} - - are-we-there-yet@1.1.7: - dependencies: - delegates: 1.0.0 - readable-stream: 2.3.7 - optional: true - - are-we-there-yet@2.0.0: - dependencies: - delegates: 1.0.0 - readable-stream: 3.6.0 - - arg@4.1.3: {} - - argparse@1.0.10: - dependencies: - sprintf-js: 1.0.3 - - argparse@2.0.1: {} - - aria-hidden@1.2.3: - dependencies: - tslib: 2.5.0 - - aria-query@5.1.3: - dependencies: - deep-equal: 2.2.0 - - arr-diff@4.0.0: {} - - arr-flatten@1.1.0: {} - - arr-union@3.1.0: {} - - array-find-index@1.0.2: - optional: true - - array-flatten@1.1.1: {} - - array-includes@3.1.6: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.1 - get-intrinsic: 1.2.0 - is-string: 1.0.7 - - array-union@1.0.2: - dependencies: - array-uniq: 1.0.3 - - array-union@2.1.0: {} - - array-uniq@1.0.3: {} - - array-unique@0.3.2: {} - - array.prototype.flat@1.3.1: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.1 - es-shim-unscopables: 1.0.0 - - array.prototype.flatmap@1.3.1: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.1 - es-shim-unscopables: 1.0.0 - - array.prototype.map@1.0.5: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.1 - es-array-method-boxes-properly: 1.0.0 - is-string: 1.0.7 - - array.prototype.reduce@1.0.5: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.1 - es-array-method-boxes-properly: 1.0.0 - is-string: 1.0.7 - - array.prototype.tosorted@1.1.1: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.1 - es-shim-unscopables: 1.0.0 - get-intrinsic: 1.2.0 - - arrify@2.0.1: {} - - asap@2.0.6: {} - - asn1.js@5.4.1: - dependencies: - bn.js: 4.12.0 - inherits: 2.0.4 - minimalistic-assert: 1.0.1 - safer-buffer: 2.1.2 - - assert@1.5.0: - dependencies: - object-assign: 4.1.1 - util: 0.10.3 - - assign-symbols@1.0.0: {} - - ast-types-flow@0.0.7: {} - - ast-types@0.14.2: - dependencies: - tslib: 2.5.0 - - astral-regex@2.0.0: {} - - async-each@1.0.6: - optional: true - - async-mutex@0.3.2: - dependencies: - tslib: 2.5.0 - - async@3.2.4: {} - - asynckit@0.4.0: {} - - at-least-node@1.0.0: {} - - atob@2.1.2: {} - - attr-accept@2.2.2: {} - - autolinker@3.16.2: - dependencies: - tslib: 2.5.0 - - autoprefixer@9.8.8: - dependencies: - browserslist: 4.21.5 - caniuse-lite: 1.0.30001457 - normalize-range: 0.1.2 - num2fraction: 1.2.2 - picocolors: 0.2.1 - postcss: 7.0.39 - postcss-value-parser: 4.2.0 - - available-typed-arrays@1.0.5: {} - - axe-core@4.6.3: {} - - axios@0.26.1: - dependencies: - follow-redirects: 1.15.2 - transitivePeerDependencies: - - debug - - axios@1.3.4: - dependencies: - follow-redirects: 1.15.2 - form-data: 4.0.0 - proxy-from-env: 1.1.0 - transitivePeerDependencies: - - debug - - axios@1.3.6: - dependencies: - follow-redirects: 1.15.2 - form-data: 4.0.0 - proxy-from-env: 1.1.0 - transitivePeerDependencies: - - debug - - axobject-query@3.1.1: - dependencies: - deep-equal: 2.2.0 - - babel-jest@29.5.0(@babel/core@7.21.0): - dependencies: - '@babel/core': 7.21.0 - '@jest/transform': 29.5.0 - '@types/babel__core': 7.20.0 - babel-plugin-istanbul: 6.1.1 - babel-preset-jest: 29.5.0(@babel/core@7.21.0) - chalk: 4.1.2 - graceful-fs: 4.2.10 - slash: 3.0.0 - transitivePeerDependencies: - - supports-color - - babel-loader@8.2.5(@babel/core@7.21.0)(webpack@4.46.0): - dependencies: - '@babel/core': 7.21.0 - find-cache-dir: 3.3.2 - loader-utils: 2.0.4 - make-dir: 3.1.0 - schema-utils: 2.7.1 - webpack: 4.46.0 - - babel-loader@8.2.5(@babel/core@7.21.0)(webpack@5.75.0): - dependencies: - '@babel/core': 7.21.0 - find-cache-dir: 3.3.2 - loader-utils: 2.0.4 - make-dir: 3.1.0 - schema-utils: 2.7.1 - webpack: 5.75.0 - - babel-loader@9.1.2(@babel/core@7.21.0)(webpack@5.75.0): - dependencies: - '@babel/core': 7.21.0 - find-cache-dir: 3.3.2 - schema-utils: 4.0.0 - webpack: 5.75.0 - - babel-plugin-add-react-displayname@0.0.5: {} - - babel-plugin-apply-mdx-type-prop@1.6.22(@babel/core@7.12.9): - dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.10.4 - '@mdx-js/util': 1.6.22 - - babel-plugin-extract-import-names@1.6.22: - dependencies: - '@babel/helper-plugin-utils': 7.10.4 - - babel-plugin-istanbul@6.1.1: - dependencies: - '@babel/helper-plugin-utils': 7.20.2 - '@istanbuljs/load-nyc-config': 1.1.0 - '@istanbuljs/schema': 0.1.3 - istanbul-lib-instrument: 5.2.1 - test-exclude: 6.0.0 - transitivePeerDependencies: - - supports-color - - babel-plugin-jest-hoist@29.5.0: - dependencies: - '@babel/template': 7.20.7 - '@babel/types': 7.21.0 - '@types/babel__core': 7.20.0 - '@types/babel__traverse': 7.18.3 - - babel-plugin-macros@3.1.0: - dependencies: - '@babel/runtime': 7.21.0 - cosmiconfig: 7.1.0 - resolve: 1.22.1 - - babel-plugin-named-exports-order@0.0.2: {} - - babel-plugin-polyfill-corejs2@0.3.3(@babel/core@7.21.0): - dependencies: - '@babel/compat-data': 7.21.0 - '@babel/core': 7.21.0 - '@babel/helper-define-polyfill-provider': 0.3.3(@babel/core@7.21.0) - semver: 6.3.0 - transitivePeerDependencies: - - supports-color - - babel-plugin-polyfill-corejs3@0.1.7(@babel/core@7.21.0): - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-define-polyfill-provider': 0.1.5(@babel/core@7.21.0) - core-js-compat: 3.28.0 - transitivePeerDependencies: - - supports-color - - babel-plugin-polyfill-corejs3@0.6.0(@babel/core@7.21.0): - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-define-polyfill-provider': 0.3.3(@babel/core@7.21.0) - core-js-compat: 3.28.0 - transitivePeerDependencies: - - supports-color - - babel-plugin-polyfill-regenerator@0.4.1(@babel/core@7.21.0): - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-define-polyfill-provider': 0.3.3(@babel/core@7.21.0) - transitivePeerDependencies: - - supports-color - - babel-plugin-react-docgen@4.2.1: - dependencies: - ast-types: 0.14.2 - lodash: 4.17.21 - react-docgen: 5.4.3 - transitivePeerDependencies: - - supports-color - - babel-preset-current-node-syntax@1.0.1(@babel/core@7.21.0): - dependencies: - '@babel/core': 7.21.0 - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.21.0) - '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.21.0) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.21.0) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.21.0) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.21.0) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.21.0) - - babel-preset-jest@29.5.0(@babel/core@7.21.0): - dependencies: - '@babel/core': 7.21.0 - babel-plugin-jest-hoist: 29.5.0 - babel-preset-current-node-syntax: 1.0.1(@babel/core@7.21.0) - - bail@1.0.5: {} - - balanced-match@1.0.2: {} - - base16@1.0.0: {} - - base64-js@1.5.1: {} - - base64id@2.0.0: {} - - base@0.11.2: - dependencies: - cache-base: 1.0.1 - class-utils: 0.3.6 - component-emitter: 1.3.0 - define-property: 1.0.0 - isobject: 3.0.1 - mixin-deep: 1.3.2 - pascalcase: 0.1.1 - - bcryptjs@2.4.3: {} - - better-opn@2.1.1: - dependencies: - open: 7.4.2 - - big-integer@1.6.51: {} - - big.js@5.2.2: {} - - bignumber.js@9.1.1: {} - - binary-extensions@1.13.1: - optional: true - - binary-extensions@2.2.0: {} - - bindings@1.5.0: - dependencies: - file-uri-to-path: 1.0.0 - optional: true - - binjumper@0.1.4: {} - - bl@4.1.0: - dependencies: - buffer: 5.7.1 - inherits: 2.0.4 - readable-stream: 3.6.0 - - bluebird@3.7.2: {} - - bn.js@4.12.0: {} - - bn.js@5.2.1: {} - - body-parser@1.20.1: - dependencies: - bytes: 3.1.2 - content-type: 1.0.5 - 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 - transitivePeerDependencies: - - supports-color - - boolbase@1.0.0: {} - - bowser@2.11.0: {} - - boxen@5.1.2: - dependencies: - ansi-align: 3.0.1 - camelcase: 6.3.0 - chalk: 4.1.2 - cli-boxes: 2.2.1 - string-width: 4.2.3 - type-fest: 0.20.2 - widest-line: 3.1.0 - wrap-ansi: 7.0.0 - - bplist-parser@0.1.1: - dependencies: - big-integer: 1.6.51 - optional: true - - brace-expansion@1.1.11: - dependencies: - balanced-match: 1.0.2 - concat-map: 0.0.1 - - brace-expansion@2.0.1: - dependencies: - balanced-match: 1.0.2 - - braces@2.3.2: - dependencies: - arr-flatten: 1.1.0 - array-unique: 0.3.2 - extend-shallow: 2.0.1 - fill-range: 4.0.0 - isobject: 3.0.1 - repeat-element: 1.1.4 - snapdragon: 0.8.2 - snapdragon-node: 2.1.1 - split-string: 3.1.0 - to-regex: 3.0.2 - transitivePeerDependencies: - - supports-color - - braces@3.0.2: - dependencies: - fill-range: 7.0.1 - - broadcast-channel@3.7.0: - dependencies: - '@babel/runtime': 7.21.0 - detect-node: 2.1.0 - js-sha3: 0.8.0 - microseconds: 0.2.0 - nano-time: 1.0.0 - oblivious-set: 1.0.0 - rimraf: 3.0.2 - unload: 2.2.0 - - brorand@1.1.0: {} - - browser-assert@1.2.1: {} - - browserify-aes@1.2.0: - dependencies: - buffer-xor: 1.0.3 - cipher-base: 1.0.4 - create-hash: 1.2.0 - evp_bytestokey: 1.0.3 - inherits: 2.0.4 - safe-buffer: 5.2.1 - - browserify-cipher@1.0.1: - dependencies: - browserify-aes: 1.2.0 - browserify-des: 1.0.2 - evp_bytestokey: 1.0.3 - - browserify-des@1.0.2: - dependencies: - cipher-base: 1.0.4 - des.js: 1.0.1 - inherits: 2.0.4 - safe-buffer: 5.2.1 - - browserify-rsa@4.1.0: - dependencies: - bn.js: 5.2.1 - randombytes: 2.1.0 - - browserify-sign@4.2.1: - dependencies: - bn.js: 5.2.1 - browserify-rsa: 4.1.0 - create-hash: 1.2.0 - create-hmac: 1.1.7 - elliptic: 6.5.4 - inherits: 2.0.4 - parse-asn1: 5.1.6 - readable-stream: 3.6.0 - safe-buffer: 5.2.1 - - browserify-zlib@0.2.0: - dependencies: - pako: 1.0.11 - - browserslist@4.21.5: - dependencies: - caniuse-lite: 1.0.30001457 - electron-to-chromium: 1.4.304 - node-releases: 2.0.10 - update-browserslist-db: 1.0.10(browserslist@4.21.5) - - bs-logger@0.2.6: - dependencies: - fast-json-stable-stringify: 2.1.0 - - bser@2.1.1: - dependencies: - node-int64: 0.4.0 - - bson@4.7.2: - dependencies: - buffer: 5.7.1 - - buffer-crc32@0.2.13: {} - - buffer-equal-constant-time@1.0.1: {} - - buffer-from@0.1.2: {} - - buffer-from@1.1.2: {} - - buffer-xor@1.0.3: {} - - buffer@4.9.2: - dependencies: - base64-js: 1.5.1 - ieee754: 1.2.1 - isarray: 1.0.0 - - buffer@5.6.0: - dependencies: - base64-js: 1.5.1 - ieee754: 1.2.1 - - buffer@5.7.1: - dependencies: - base64-js: 1.5.1 - ieee754: 1.2.1 - - builtin-status-codes@3.0.0: {} - - busboy@1.6.0: - dependencies: - streamsearch: 1.1.0 - - bytes@3.0.0: {} - - bytes@3.1.2: {} - - c8@7.13.0: - dependencies: - '@bcoe/v8-coverage': 0.2.3 - '@istanbuljs/schema': 0.1.3 - find-up: 5.0.0 - foreground-child: 2.0.0 - istanbul-lib-coverage: 3.2.0 - istanbul-lib-report: 3.0.0 - istanbul-reports: 3.1.5 - rimraf: 3.0.2 - test-exclude: 6.0.0 - v8-to-istanbul: 9.1.0 - yargs: 16.2.0 - yargs-parser: 20.2.9 - - cacache@12.0.4: - dependencies: - bluebird: 3.7.2 - chownr: 1.1.4 - figgy-pudding: 3.5.2 - glob: 7.2.3 - graceful-fs: 4.2.10 - infer-owner: 1.0.4 - lru-cache: 5.1.1 - mississippi: 3.0.0 - mkdirp: 0.5.6 - move-concurrently: 1.0.1 - promise-inflight: 1.0.1(bluebird@3.7.2) - rimraf: 2.7.1 - ssri: 6.0.2 - unique-filename: 1.1.1 - y18n: 4.0.3 - - cacache@15.3.0: - dependencies: - '@npmcli/fs': 1.1.1 - '@npmcli/move-file': 1.1.2 - chownr: 2.0.0 - fs-minipass: 2.1.0 - glob: 7.2.3 - infer-owner: 1.0.4 - lru-cache: 6.0.0 - minipass: 3.3.6 - minipass-collect: 1.0.2 - minipass-flush: 1.0.5 - minipass-pipeline: 1.2.4 - mkdirp: 1.0.4 - p-map: 4.0.0 - promise-inflight: 1.0.1(bluebird@3.7.2) - rimraf: 3.0.2 - ssri: 8.0.1 - tar: 6.1.13 - unique-filename: 1.1.1 - transitivePeerDependencies: - - bluebird - - cache-base@1.0.1: - dependencies: - collection-visit: 1.0.0 - component-emitter: 1.3.0 - get-value: 2.0.6 - has-value: 1.0.0 - isobject: 3.0.1 - set-value: 2.0.1 - to-object-path: 0.3.0 - union-value: 1.0.1 - unset-value: 1.0.0 - - cache-content-type@1.0.1: - dependencies: - mime-types: 2.1.35 - ylru: 1.3.2 - - cacheable-lookup@5.0.4: {} - - cacheable-request@7.0.2: - dependencies: - clone-response: 1.0.3 - get-stream: 5.2.0 - http-cache-semantics: 4.1.1 - keyv: 4.5.2 - lowercase-keys: 2.0.0 - normalize-url: 6.1.0 - responselike: 2.0.1 - - call-bind@1.0.2: - dependencies: - function-bind: 1.1.1 - get-intrinsic: 1.2.0 - - call-me-maybe@1.0.2: {} - - callsites@3.1.0: {} - - camel-case@3.0.0: - dependencies: - no-case: 2.3.2 - upper-case: 1.1.3 - - camel-case@4.1.2: - dependencies: - pascal-case: 3.1.2 - tslib: 2.5.0 - - camelcase-css@2.0.1: {} - - camelcase-keys@2.1.0: - dependencies: - camelcase: 2.1.1 - map-obj: 1.0.1 - optional: true - - camelcase@2.1.1: - optional: true - - camelcase@5.3.1: {} - - camelcase@6.3.0: {} - - caniuse-lite@1.0.30001457: {} - - capture-exit@2.0.0: - dependencies: - rsvp: 4.8.5 - - case-sensitive-paths-webpack-plugin@2.4.0: {} - - ccount@1.1.0: {} - - chalk@2.4.2: - dependencies: - ansi-styles: 3.2.1 - escape-string-regexp: 1.0.5 - supports-color: 5.5.0 - - chalk@3.0.0: - dependencies: - ansi-styles: 4.3.0 - supports-color: 7.2.0 - - chalk@4.1.2: - dependencies: - ansi-styles: 4.3.0 - supports-color: 7.2.0 - - chalk@5.2.0: {} - - char-regex@1.0.2: {} - - character-entities-legacy@1.1.4: {} - - character-entities@1.2.4: {} - - character-reference-invalid@1.1.4: {} - - cheerio-select@1.6.0: - dependencies: - css-select: 4.3.0 - css-what: 6.1.0 - domelementtype: 2.3.0 - domhandler: 4.3.1 - domutils: 2.8.0 - - cheerio@1.0.0-rc.10: - dependencies: - cheerio-select: 1.6.0 - dom-serializer: 1.4.1 - domhandler: 4.3.1 - htmlparser2: 6.1.0 - parse5: 6.0.1 - parse5-htmlparser2-tree-adapter: 6.0.1 - tslib: 2.5.0 - - chokidar@2.1.8: - dependencies: - anymatch: 2.0.0 - async-each: 1.0.6 - braces: 2.3.2 - glob-parent: 3.1.0 - inherits: 2.0.4 - is-binary-path: 1.0.1 - is-glob: 4.0.3 - normalize-path: 3.0.0 - path-is-absolute: 1.0.1 - readdirp: 2.2.1 - upath: 1.2.0 - optionalDependencies: - fsevents: 1.2.13 - transitivePeerDependencies: - - supports-color - optional: true - - chokidar@3.5.3: - dependencies: - anymatch: 3.1.3 - braces: 3.0.2 - glob-parent: 5.1.2 - is-binary-path: 2.1.0 - is-glob: 4.0.3 - normalize-path: 3.0.0 - readdirp: 3.6.0 - optionalDependencies: - fsevents: 2.3.2 - - chownr@1.1.4: {} - - chownr@2.0.0: {} - - chromatic@6.17.1: - dependencies: - '@discoveryjs/json-ext': 0.5.7 - '@types/webpack-env': 1.18.0 - snyk-nodejs-lockfile-parser: 1.48.0 - transitivePeerDependencies: - - supports-color - - chrome-trace-event@1.0.3: {} - - ci-info@2.0.0: {} - - ci-info@3.8.0: {} - - cipher-base@1.0.4: - dependencies: - inherits: 2.0.4 - safe-buffer: 5.2.1 - - cjs-module-lexer@1.2.2: {} - - class-utils@0.3.6: - dependencies: - arr-union: 3.1.0 - define-property: 0.2.5 - isobject: 3.0.1 - static-extend: 0.1.2 - - classnames@2.3.2: {} - - clean-css@4.2.4: - dependencies: - source-map: 0.6.1 - - clean-css@5.3.2: - dependencies: - source-map: 0.6.1 - - clean-stack@2.2.0: {} - - cli-boxes@2.2.1: {} - - cli-cursor@3.1.0: - dependencies: - restore-cursor: 3.1.0 - - cli-table3@0.6.3: - dependencies: - string-width: 4.2.3 - optionalDependencies: - '@colors/colors': 1.5.0 - - cli-truncate@2.1.0: - dependencies: - slice-ansi: 3.0.0 - string-width: 4.2.3 - - cli-truncate@3.1.0: - dependencies: - slice-ansi: 5.0.0 - string-width: 5.1.2 - - client-only@0.0.1: {} - - clipanion@2.6.2: {} - - cliui@7.0.4: - dependencies: - string-width: 4.2.3 - strip-ansi: 6.0.1 - wrap-ansi: 7.0.0 - - cliui@8.0.1: - dependencies: - string-width: 4.2.3 - strip-ansi: 6.0.1 - wrap-ansi: 7.0.0 - - clone-deep@4.0.1: - dependencies: - is-plain-object: 2.0.4 - kind-of: 6.0.3 - shallow-clone: 3.0.1 - - clone-response@1.0.3: - dependencies: - mimic-response: 1.0.1 - - clsx@1.1.1: {} - - cluster-key-slot@1.1.2: {} - - co-body@6.1.0: - dependencies: - inflation: 2.0.0 - qs: 6.11.0 - raw-body: 2.5.1 - type-is: 1.6.18 - - co@4.6.0: {} - - code-point-at@1.1.0: - optional: true - - collapse-white-space@1.0.6: {} - - collect-v8-coverage@1.0.1: {} - - collection-visit@1.0.0: - dependencies: - map-visit: 1.0.0 - object-visit: 1.0.1 - - color-convert@1.9.3: - dependencies: - color-name: 1.1.3 - - color-convert@2.0.1: - dependencies: - color-name: 1.1.4 - - color-name-list@4.15.0: {} - - color-name@1.1.3: {} - - color-name@1.1.4: {} - - color-parse@1.4.2: - dependencies: - color-name: 1.1.4 - - color-rgba@2.4.0: - dependencies: - color-parse: 1.4.2 - color-space: 2.0.0 - - color-space@2.0.0: {} - - color-string@1.9.1: - dependencies: - color-name: 1.1.4 - simple-swizzle: 0.2.2 - - color-stringify@1.2.1: - dependencies: - color-name: 1.1.4 - - color-support@1.1.3: {} - - color@3.2.1: - dependencies: - color-convert: 1.9.3 - color-string: 1.9.1 - - colorette@1.4.0: {} - - colorette@2.0.19: {} - - colorspace@1.1.4: - dependencies: - color: 3.2.1 - text-hex: 1.0.0 - - combined-stream@1.0.8: - dependencies: - delayed-stream: 1.0.0 - - comma-separated-tokens@1.0.8: {} - - commander@10.0.0: {} - - commander@2.20.3: {} - - commander@4.1.1: {} - - commander@5.1.0: {} - - commander@6.2.1: {} - - commander@7.2.0: {} - - commander@8.3.0: {} - - common-path-prefix@3.0.0: {} - - commondir@1.0.1: {} - - component-emitter@1.3.0: {} - - compressible@2.0.18: - dependencies: - mime-db: 1.52.0 - - compression@1.7.4: - dependencies: - accepts: 1.3.8 - bytes: 3.0.0 - compressible: 2.0.18 - debug: 2.6.9 - on-headers: 1.0.2 - safe-buffer: 5.1.2 - vary: 1.1.2 - transitivePeerDependencies: - - supports-color - - concat-map@0.0.1: {} - - concat-stream@1.6.2: - dependencies: - buffer-from: 1.1.2 - inherits: 2.0.4 - readable-stream: 2.3.7 - typedarray: 0.0.6 - - config-chain@1.1.13: - dependencies: - ini: 1.3.8 - proto-list: 1.2.4 - - confusing-browser-globals@1.0.11: {} - - console-browserify@1.2.0: {} - - console-control-strings@1.1.0: {} - - constants-browserify@1.0.0: {} - - content-disposition@0.5.4: - dependencies: - safe-buffer: 5.2.1 - - content-type@1.0.5: {} - - convert-source-map@1.9.0: {} - - convert-source-map@2.0.0: {} - - cookie-signature@1.0.6: {} - - cookie@0.4.2: {} - - cookie@0.5.0: {} - - cookies@0.8.0: - dependencies: - depd: 2.0.0 - keygrip: 1.1.0 - - copy-concurrently@1.0.5: - dependencies: - aproba: 1.2.0 - fs-write-stream-atomic: 1.0.10 - iferr: 0.1.5 - mkdirp: 0.5.6 - rimraf: 2.7.1 - run-queue: 1.0.3 - - copy-descriptor@0.1.1: {} - - copy-to-clipboard@3.3.3: - dependencies: - toggle-selection: 1.0.6 - - copy-to@2.0.1: {} - - core-js-compat@3.28.0: - dependencies: - browserslist: 4.21.5 - - core-js-pure@3.28.0: {} - - core-js@3.28.0: {} - - core-util-is@1.0.3: {} - - cors@2.8.5: - dependencies: - object-assign: 4.1.1 - vary: 1.1.2 - - cosmiconfig@6.0.0: - dependencies: - '@types/parse-json': 4.0.0 - import-fresh: 3.3.0 - parse-json: 5.2.0 - path-type: 4.0.0 - yaml: 1.10.2 - - cosmiconfig@7.1.0: - dependencies: - '@types/parse-json': 4.0.0 - import-fresh: 3.3.0 - parse-json: 5.2.0 - path-type: 4.0.0 - yaml: 1.10.2 - - cp-file@7.0.0: - dependencies: - graceful-fs: 4.2.10 - make-dir: 3.1.0 - nested-error-stacks: 2.1.1 - p-event: 4.2.0 - - cpy@8.1.2: - dependencies: - arrify: 2.0.1 - cp-file: 7.0.0 - globby: 9.2.0 - has-glob: 1.0.0 - junk: 3.1.0 - nested-error-stacks: 2.1.1 - p-all: 2.1.0 - p-filter: 2.1.0 - p-map: 3.0.0 - transitivePeerDependencies: - - supports-color - - create-ecdh@4.0.4: - dependencies: - bn.js: 4.12.0 - elliptic: 6.5.4 - - create-hash@1.2.0: - dependencies: - cipher-base: 1.0.4 - inherits: 2.0.4 - md5.js: 1.3.5 - ripemd160: 2.0.2 - sha.js: 2.4.11 - - create-hmac@1.1.7: - dependencies: - cipher-base: 1.0.4 - create-hash: 1.2.0 - inherits: 2.0.4 - ripemd160: 2.0.2 - safe-buffer: 5.2.1 - sha.js: 2.4.11 - - create-require@1.1.1: {} - - crelt@1.0.5: {} - - cron-parser@4.8.1: - dependencies: - luxon: 3.3.0 - - cross-fetch@3.1.5: - dependencies: - node-fetch: 2.6.7 - transitivePeerDependencies: - - encoding - - cross-spawn@6.0.5: - dependencies: - nice-try: 1.0.5 - path-key: 2.0.1 - semver: 5.7.1 - shebang-command: 1.2.0 - which: 1.3.1 - - cross-spawn@7.0.3: - dependencies: - path-key: 3.1.1 - shebang-command: 2.0.0 - which: 2.0.2 - - crypto-browserify@3.12.0: - dependencies: - browserify-cipher: 1.0.1 - browserify-sign: 4.2.1 - create-ecdh: 4.0.4 - create-hash: 1.2.0 - create-hmac: 1.1.7 - diffie-hellman: 5.0.3 - inherits: 2.0.4 - pbkdf2: 3.1.2 - public-encrypt: 4.0.3 - randombytes: 2.1.0 - randomfill: 1.0.4 - - css-color-names@0.0.4: {} - - css-loader@3.6.0(webpack@4.46.0): - dependencies: - camelcase: 5.3.1 - cssesc: 3.0.0 - icss-utils: 4.1.1 - loader-utils: 1.4.2 - normalize-path: 3.0.0 - postcss: 7.0.39 - postcss-modules-extract-imports: 2.0.0 - postcss-modules-local-by-default: 3.0.3 - postcss-modules-scope: 2.2.0 - postcss-modules-values: 3.0.0 - postcss-value-parser: 4.2.0 - schema-utils: 2.7.1 - semver: 6.3.0 - webpack: 4.46.0 - - css-loader@5.2.7(webpack@5.75.0): - dependencies: - icss-utils: 5.1.0(postcss@8.4.21) - loader-utils: 2.0.4 - postcss: 8.4.21 - postcss-modules-extract-imports: 3.0.0(postcss@8.4.21) - postcss-modules-local-by-default: 4.0.0(postcss@8.4.21) - postcss-modules-scope: 3.0.0(postcss@8.4.21) - postcss-modules-values: 4.0.0(postcss@8.4.21) - postcss-value-parser: 4.2.0 - schema-utils: 3.1.1 - semver: 7.3.8 - webpack: 5.75.0 - - css-loader@6.7.3(webpack@5.75.0): - dependencies: - icss-utils: 5.1.0(postcss@8.4.21) - postcss: 8.4.21 - postcss-modules-extract-imports: 3.0.0(postcss@8.4.21) - postcss-modules-local-by-default: 4.0.0(postcss@8.4.21) - postcss-modules-scope: 3.0.0(postcss@8.4.21) - postcss-modules-values: 4.0.0(postcss@8.4.21) - postcss-value-parser: 4.2.0 - semver: 7.3.8 - webpack: 5.75.0 - - css-select@4.3.0: - dependencies: - boolbase: 1.0.0 - css-what: 6.1.0 - domhandler: 4.3.1 - domutils: 2.8.0 - nth-check: 2.1.1 - - css-tree@1.1.3: - dependencies: - mdn-data: 2.0.14 - source-map: 0.6.1 - - css-what@6.1.0: {} - - css.escape@1.5.1: {} - - cssesc@3.0.0: {} - - csso@4.2.0: - dependencies: - css-tree: 1.1.3 - - csstype@3.0.9: {} - - csstype@3.1.1: {} - - currently-unhandled@0.4.1: - dependencies: - array-find-index: 1.0.2 - optional: true - - cyclist@1.0.1: {} - - damerau-levenshtein@1.0.8: {} - - dayjs@1.11.7: {} - - debug@2.6.9: - dependencies: - ms: 2.0.0 - - debug@3.2.7(supports-color@5.5.0): - dependencies: - ms: 2.1.3 - supports-color: 5.5.0 - - debug@4.3.4: - dependencies: - ms: 2.1.2 - - decamelize@1.2.0: - optional: true - - decode-uri-component@0.2.2: {} - - decompress-response@4.2.1: - dependencies: - mimic-response: 2.1.0 - optional: true - - decompress-response@6.0.0: - dependencies: - mimic-response: 3.1.0 - - dedent@0.7.0: {} - - deep-equal@1.0.1: {} - - deep-equal@2.2.0: - dependencies: - call-bind: 1.0.2 - es-get-iterator: 1.1.3 - get-intrinsic: 1.2.0 - is-arguments: 1.1.1 - is-array-buffer: 3.0.1 - is-date-object: 1.0.5 - is-regex: 1.1.4 - is-shared-array-buffer: 1.0.2 - isarray: 2.0.5 - object-is: 1.1.5 - object-keys: 1.1.1 - object.assign: 4.1.4 - regexp.prototype.flags: 1.4.3 - side-channel: 1.0.4 - which-boxed-primitive: 1.0.2 - which-collection: 1.0.1 - which-typed-array: 1.1.9 - - deep-extend@0.6.0: {} - - deep-is@0.1.4: {} - - deepmerge@4.3.0: {} - - default-browser-id@1.0.4: - dependencies: - bplist-parser: 0.1.1 - meow: 3.7.0 - untildify: 2.1.0 - optional: true - - defer-to-connect@2.0.1: {} - - define-lazy-prop@2.0.0: {} - - define-properties@1.2.0: - dependencies: - has-property-descriptors: 1.0.0 - object-keys: 1.1.1 - - define-property@0.2.5: - dependencies: - is-descriptor: 0.1.6 - - define-property@1.0.0: - dependencies: - is-descriptor: 1.0.2 - - define-property@2.0.2: - dependencies: - is-descriptor: 1.0.2 - isobject: 3.0.1 - - delayed-stream@1.0.0: {} - - delegates@1.0.0: {} - - denque@2.1.0: {} - - depd@1.1.2: {} - - depd@2.0.0: {} - - des.js@1.0.1: - dependencies: - inherits: 2.0.4 - minimalistic-assert: 1.0.1 - - destroy@1.2.0: {} - - detab@2.0.4: - dependencies: - repeat-string: 1.6.1 - - detect-libc@1.0.3: - optional: true - - detect-newline@3.1.0: {} - - detect-node-es@1.1.0: {} - - detect-node@2.0.4: {} - - detect-node@2.1.0: {} - - detect-package-manager@2.0.1: - dependencies: - execa: 5.1.1 - - detect-port@1.5.1: - dependencies: - address: 1.2.2 - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - - diff-sequences@29.4.3: {} - - diff@4.0.2: {} - - diffie-hellman@5.0.3: - dependencies: - bn.js: 4.12.0 - miller-rabin: 4.0.1 - randombytes: 2.1.0 - - dir-glob@2.2.2: - dependencies: - path-type: 3.0.0 - - dir-glob@3.0.1: - dependencies: - path-type: 4.0.0 - - doctrine@2.1.0: - dependencies: - esutils: 2.0.3 - - doctrine@3.0.0: - dependencies: - esutils: 2.0.3 - - dom-converter@0.2.0: - dependencies: - utila: 0.4.0 - - dom-helpers@5.2.1: - dependencies: - '@babel/runtime': 7.21.0 - csstype: 3.1.1 - - dom-serializer@1.4.1: - dependencies: - domelementtype: 2.3.0 - domhandler: 4.3.1 - entities: 2.2.0 - - dom-walk@0.1.2: {} - - domain-browser@1.2.0: {} - - domelementtype@2.3.0: {} - - domhandler@3.3.0: - dependencies: - domelementtype: 2.3.0 - - domhandler@4.3.1: - dependencies: - domelementtype: 2.3.0 - - dompurify@3.0.2: {} - - domutils@2.8.0: - dependencies: - dom-serializer: 1.4.1 - domelementtype: 2.3.0 - domhandler: 4.3.1 - - dot-case@3.0.4: - dependencies: - no-case: 3.0.4 - tslib: 2.5.0 - - dotenv-expand@5.1.0: {} - - dotenv@16.0.3: {} - - dotenv@8.6.0: {} - - drange@1.1.1: {} - - duplexer2@0.1.4: - dependencies: - readable-stream: 2.3.7 - - duplexify@3.7.1: - dependencies: - end-of-stream: 1.4.4 - inherits: 2.0.4 - readable-stream: 2.3.7 - stream-shift: 1.0.1 - - eastasianwidth@0.2.0: {} - - ecdsa-sig-formatter@1.0.11: - dependencies: - safe-buffer: 5.2.1 - - editorconfig@0.15.3: - dependencies: - commander: 2.20.3 - lru-cache: 4.1.5 - semver: 5.7.1 - sigmund: 1.0.1 - - ee-first@1.1.1: {} - - electron-to-chromium@1.4.304: {} - - elliptic@6.5.4: - dependencies: - bn.js: 4.12.0 - brorand: 1.1.0 - hash.js: 1.1.7 - hmac-drbg: 1.0.1 - inherits: 2.0.4 - minimalistic-assert: 1.0.1 - minimalistic-crypto-utils: 1.0.1 - - emittery@0.13.1: {} - - emoji-regex@8.0.0: {} - - emoji-regex@9.2.2: {} - - emojis-list@3.0.0: {} - - enabled@2.0.0: {} - - encodeurl@1.0.2: {} - - end-of-stream@1.1.0: - dependencies: - once: 1.3.3 - - end-of-stream@1.4.4: - dependencies: - once: 1.4.0 - - endent@2.1.0: - dependencies: - dedent: 0.7.0 - fast-json-parse: 1.0.3 - objectorarray: 1.0.5 - - engine.io-client@6.4.0: - dependencies: - '@socket.io/component-emitter': 3.1.0 - debug: 4.3.4 - engine.io-parser: 5.0.6 - ws: 8.11.0 - xmlhttprequest-ssl: 2.0.0 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - engine.io-parser@5.0.6: {} - - engine.io@6.4.1: - dependencies: - '@types/cookie': 0.4.1 - '@types/cors': 2.8.13 - '@types/node': 18.15.1 - accepts: 1.3.8 - base64id: 2.0.0 - cookie: 0.4.2 - cors: 2.8.5 - debug: 4.3.4 - engine.io-parser: 5.0.6 - ws: 8.11.0 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - enhanced-resolve@4.5.0: - dependencies: - graceful-fs: 4.2.10 - memory-fs: 0.5.0 - tapable: 1.1.3 - - enhanced-resolve@5.12.0: - dependencies: - graceful-fs: 4.2.10 - tapable: 2.2.1 - - entities@2.2.0: {} - - entities@3.0.1: {} - - entities@4.4.0: {} - - errno@0.1.8: - dependencies: - prr: 1.0.1 - - error-ex@1.3.2: - dependencies: - is-arrayish: 0.2.1 - - error-stack-parser@2.1.4: - dependencies: - stackframe: 1.3.4 - - es-abstract@1.21.1: - dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.2 - es-set-tostringtag: 2.0.1 - es-to-primitive: 1.2.1 - function-bind: 1.1.1 - function.prototype.name: 1.1.5 - get-intrinsic: 1.2.0 - get-symbol-description: 1.0.0 - globalthis: 1.0.3 - gopd: 1.0.1 - has: 1.0.3 - has-property-descriptors: 1.0.0 - has-proto: 1.0.1 - has-symbols: 1.0.3 - internal-slot: 1.0.5 - is-array-buffer: 3.0.1 - is-callable: 1.2.7 - is-negative-zero: 2.0.2 - is-regex: 1.1.4 - is-shared-array-buffer: 1.0.2 - is-string: 1.0.7 - is-typed-array: 1.1.10 - is-weakref: 1.0.2 - object-inspect: 1.12.3 - object-keys: 1.1.1 - object.assign: 4.1.4 - regexp.prototype.flags: 1.4.3 - safe-regex-test: 1.0.0 - string.prototype.trimend: 1.0.6 - string.prototype.trimstart: 1.0.6 - typed-array-length: 1.0.4 - unbox-primitive: 1.0.2 - which-typed-array: 1.1.9 - - es-array-method-boxes-properly@1.0.0: {} - - es-get-iterator@1.1.3: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.0 - has-symbols: 1.0.3 - is-arguments: 1.1.1 - is-map: 2.0.2 - is-set: 2.0.2 - is-string: 1.0.7 - isarray: 2.0.5 - stop-iteration-iterator: 1.0.0 - - es-module-lexer@0.9.3: {} - - es-set-tostringtag@2.0.1: - dependencies: - get-intrinsic: 1.2.0 - has: 1.0.3 - has-tostringtag: 1.0.0 - - es-shim-unscopables@1.0.0: - dependencies: - has: 1.0.3 - - es-to-primitive@1.2.1: - dependencies: - is-callable: 1.2.7 - is-date-object: 1.0.5 - is-symbol: 1.0.4 - - es5-shim@4.6.7: {} - - es6-shim@0.35.7: {} - - escalade@3.1.1: {} - - escape-goat@3.0.0: {} - - escape-html@1.0.3: {} - - escape-string-regexp@1.0.5: {} - - escape-string-regexp@2.0.0: {} - - escape-string-regexp@4.0.0: {} - - escodegen@2.0.0: - dependencies: - esprima: 4.0.1 - estraverse: 5.3.0 - esutils: 2.0.3 - optionator: 0.8.3 - optionalDependencies: - source-map: 0.6.1 - - eslint-config-airbnb-base@15.0.0(eslint-plugin-import@2.27.5)(eslint@8.36.0): - dependencies: - confusing-browser-globals: 1.0.11 - eslint: 8.36.0 - eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.54.1)(eslint-import-resolver-typescript@3.5.3)(eslint@8.36.0) - object.assign: 4.1.4 - object.entries: 1.1.6 - semver: 6.3.0 - - eslint-config-airbnb-typescript@17.0.0(@typescript-eslint/eslint-plugin@5.54.1)(@typescript-eslint/parser@5.54.1)(eslint-plugin-import@2.27.5)(eslint@8.36.0): - dependencies: - '@typescript-eslint/eslint-plugin': 5.54.1(@typescript-eslint/parser@5.54.1)(eslint@8.36.0)(typescript@4.9.5) - '@typescript-eslint/parser': 5.54.1(eslint@8.36.0)(typescript@4.9.5) - eslint: 8.36.0 - eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.27.5)(eslint@8.36.0) - eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.54.1)(eslint-import-resolver-typescript@3.5.3)(eslint@8.36.0) - - eslint-config-airbnb@19.0.4(eslint-plugin-import@2.27.5)(eslint-plugin-jsx-a11y@6.7.1)(eslint-plugin-react-hooks@4.6.0)(eslint-plugin-react@7.32.2)(eslint@8.36.0): - dependencies: - eslint: 8.36.0 - eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.27.5)(eslint@8.36.0) - eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.54.1)(eslint-import-resolver-typescript@3.5.3)(eslint@8.36.0) - eslint-plugin-jsx-a11y: 6.7.1(eslint@8.36.0) - eslint-plugin-react: 7.32.2(eslint@8.36.0) - eslint-plugin-react-hooks: 4.6.0(eslint@8.36.0) - object.assign: 4.1.4 - object.entries: 1.1.6 - - eslint-config-next@13.2.4(eslint@8.36.0)(typescript@4.9.5): - dependencies: - '@next/eslint-plugin-next': 13.2.4 - '@rushstack/eslint-patch': 1.2.0 - '@typescript-eslint/parser': 5.54.1(eslint@8.36.0)(typescript@4.9.5) - eslint: 8.36.0 - eslint-import-resolver-node: 0.3.7 - eslint-import-resolver-typescript: 3.5.3(eslint-plugin-import@2.27.5)(eslint@8.36.0) - eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.54.1)(eslint-import-resolver-typescript@3.5.3)(eslint@8.36.0) - eslint-plugin-jsx-a11y: 6.7.1(eslint@8.36.0) - eslint-plugin-react: 7.32.2(eslint@8.36.0) - eslint-plugin-react-hooks: 4.6.0(eslint@8.36.0) - typescript: 4.9.5 - transitivePeerDependencies: - - eslint-import-resolver-webpack - - supports-color - - eslint-import-resolver-node@0.3.7: - dependencies: - debug: 3.2.7(supports-color@5.5.0) - is-core-module: 2.11.0 - resolve: 1.22.1 - transitivePeerDependencies: - - supports-color - - eslint-import-resolver-typescript@3.5.3(eslint-plugin-import@2.27.5)(eslint@8.36.0): - dependencies: - debug: 4.3.4 - enhanced-resolve: 5.12.0 - eslint: 8.36.0 - eslint-plugin-import: 2.27.5(@typescript-eslint/parser@5.54.1)(eslint-import-resolver-typescript@3.5.3)(eslint@8.36.0) - get-tsconfig: 4.4.0 - globby: 13.1.3 - is-core-module: 2.11.0 - is-glob: 4.0.3 - synckit: 0.8.5 - transitivePeerDependencies: - - supports-color - - eslint-module-utils@2.7.4(@typescript-eslint/parser@5.54.1)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@3.5.3)(eslint@8.36.0): - dependencies: - '@typescript-eslint/parser': 5.54.1(eslint@8.36.0)(typescript@4.9.5) - debug: 3.2.7(supports-color@5.5.0) - eslint: 8.36.0 - eslint-import-resolver-node: 0.3.7 - eslint-import-resolver-typescript: 3.5.3(eslint-plugin-import@2.27.5)(eslint@8.36.0) - transitivePeerDependencies: - - supports-color - - eslint-plugin-import@2.27.5(@typescript-eslint/parser@5.54.1)(eslint-import-resolver-typescript@3.5.3)(eslint@8.36.0): - dependencies: - '@typescript-eslint/parser': 5.54.1(eslint@8.36.0)(typescript@4.9.5) - array-includes: 3.1.6 - array.prototype.flat: 1.3.1 - array.prototype.flatmap: 1.3.1 - debug: 3.2.7(supports-color@5.5.0) - doctrine: 2.1.0 - eslint: 8.36.0 - eslint-import-resolver-node: 0.3.7 - eslint-module-utils: 2.7.4(@typescript-eslint/parser@5.54.1)(eslint-import-resolver-node@0.3.7)(eslint-import-resolver-typescript@3.5.3)(eslint@8.36.0) - has: 1.0.3 - is-core-module: 2.11.0 - is-glob: 4.0.3 - minimatch: 3.1.2 - object.values: 1.1.6 - resolve: 1.22.1 - semver: 6.3.0 - tsconfig-paths: 3.14.1 - transitivePeerDependencies: - - eslint-import-resolver-typescript - - eslint-import-resolver-webpack - - supports-color - - eslint-plugin-jsx-a11y@6.7.1(eslint@8.36.0): - dependencies: - '@babel/runtime': 7.21.0 - aria-query: 5.1.3 - array-includes: 3.1.6 - array.prototype.flatmap: 1.3.1 - ast-types-flow: 0.0.7 - axe-core: 4.6.3 - axobject-query: 3.1.1 - damerau-levenshtein: 1.0.8 - emoji-regex: 9.2.2 - eslint: 8.36.0 - has: 1.0.3 - jsx-ast-utils: 3.3.3 - language-tags: 1.0.5 - minimatch: 3.1.2 - object.entries: 1.1.6 - object.fromentries: 2.0.6 - semver: 6.3.0 - - eslint-plugin-react-hooks@4.6.0(eslint@8.36.0): - dependencies: - eslint: 8.36.0 - - eslint-plugin-react@7.32.2(eslint@8.36.0): - dependencies: - array-includes: 3.1.6 - array.prototype.flatmap: 1.3.1 - array.prototype.tosorted: 1.1.1 - doctrine: 2.1.0 - eslint: 8.36.0 - estraverse: 5.3.0 - jsx-ast-utils: 3.3.3 - minimatch: 3.1.2 - object.entries: 1.1.6 - object.fromentries: 2.0.6 - object.hasown: 1.1.2 - object.values: 1.1.6 - prop-types: 15.8.1 - resolve: 2.0.0-next.4 - semver: 6.3.0 - string.prototype.matchall: 4.0.8 - - eslint-scope@4.0.3: - dependencies: - esrecurse: 4.3.0 - estraverse: 4.3.0 - - eslint-scope@5.1.1: - dependencies: - esrecurse: 4.3.0 - estraverse: 4.3.0 - - eslint-scope@7.1.1: - dependencies: - esrecurse: 4.3.0 - estraverse: 5.3.0 - - eslint-utils@3.0.0(eslint@8.36.0): - dependencies: - eslint: 8.36.0 - eslint-visitor-keys: 2.1.0 - - eslint-visitor-keys@2.1.0: {} - - eslint-visitor-keys@3.3.0: {} - - eslint@8.36.0: - dependencies: - '@eslint-community/eslint-utils': 4.2.0(eslint@8.36.0) - '@eslint-community/regexpp': 4.4.0 - '@eslint/eslintrc': 2.0.1 - '@eslint/js': 8.36.0 - '@humanwhocodes/config-array': 0.11.8 - '@humanwhocodes/module-importer': 1.0.1 - '@nodelib/fs.walk': 1.2.8 - ajv: 6.12.6 - chalk: 4.1.2 - cross-spawn: 7.0.3 - debug: 4.3.4 - doctrine: 3.0.0 - escape-string-regexp: 4.0.0 - eslint-scope: 7.1.1 - eslint-visitor-keys: 3.3.0 - espree: 9.5.0 - esquery: 1.4.2 - esutils: 2.0.3 - fast-deep-equal: 3.1.3 - file-entry-cache: 6.0.1 - find-up: 5.0.0 - glob-parent: 6.0.2 - globals: 13.20.0 - grapheme-splitter: 1.0.4 - ignore: 5.2.4 - import-fresh: 3.3.0 - imurmurhash: 0.1.4 - is-glob: 4.0.3 - is-path-inside: 3.0.3 - js-sdsl: 4.3.0 - 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 - strip-ansi: 6.0.1 - strip-json-comments: 3.1.1 - text-table: 0.2.0 - transitivePeerDependencies: - - supports-color - - espree@9.5.0: - dependencies: - acorn: 8.8.2 - acorn-jsx: 5.3.2(acorn@8.8.2) - eslint-visitor-keys: 3.3.0 - - esprima@4.0.1: {} - - esquery@1.4.2: - dependencies: - estraverse: 5.3.0 - - esrecurse@4.3.0: - dependencies: - estraverse: 5.3.0 - - estraverse@4.3.0: {} - - estraverse@5.3.0: {} - - estree-to-babel@3.2.1: - dependencies: - '@babel/traverse': 7.21.0 - '@babel/types': 7.21.0 - c8: 7.13.0 - transitivePeerDependencies: - - supports-color - - esutils@2.0.3: {} - - etag@1.8.1: {} - - event-loop-spinner@2.2.0: - dependencies: - tslib: 2.5.0 - - event-target-shim@5.0.1: {} - - events@3.3.0: {} - - eventsource@2.0.2: {} - - evp_bytestokey@1.0.3: - dependencies: - md5.js: 1.3.5 - safe-buffer: 5.2.1 - - exec-sh@0.3.6: {} - - execa@1.0.0: - dependencies: - cross-spawn: 6.0.5 - get-stream: 4.1.0 - is-stream: 1.1.0 - npm-run-path: 2.0.2 - p-finally: 1.0.0 - signal-exit: 3.0.7 - strip-eof: 1.0.0 - - execa@5.1.1: - dependencies: - cross-spawn: 7.0.3 - get-stream: 6.0.1 - human-signals: 2.1.0 - is-stream: 2.0.1 - merge-stream: 2.0.0 - npm-run-path: 4.0.1 - onetime: 5.1.2 - signal-exit: 3.0.7 - strip-final-newline: 2.0.0 - - execa@7.1.0: - dependencies: - cross-spawn: 7.0.3 - get-stream: 6.0.1 - human-signals: 4.3.0 - is-stream: 3.0.0 - merge-stream: 2.0.0 - npm-run-path: 5.1.0 - onetime: 6.0.0 - signal-exit: 3.0.7 - strip-final-newline: 3.0.0 - - exit@0.1.2: {} - - expand-brackets@2.1.4: - dependencies: - debug: 2.6.9 - define-property: 0.2.5 - extend-shallow: 2.0.1 - posix-character-classes: 0.1.1 - regex-not: 1.0.2 - snapdragon: 0.8.2 - to-regex: 3.0.2 - transitivePeerDependencies: - - supports-color - - expand-template@2.0.3: - optional: true - - expect@29.4.3: - dependencies: - '@jest/expect-utils': 29.4.3 - jest-get-type: 29.4.3 - jest-matcher-utils: 29.4.3 - jest-message-util: 29.4.3 - jest-util: 29.4.3 - - expect@29.5.0: - dependencies: - '@jest/expect-utils': 29.5.0 - jest-get-type: 29.4.3 - jest-matcher-utils: 29.5.0 - jest-message-util: 29.5.0 - jest-util: 29.5.0 - - express@4.18.2: - dependencies: - accepts: 1.3.8 - array-flatten: 1.1.1 - body-parser: 1.20.1 - content-disposition: 0.5.4 - content-type: 1.0.5 - 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 - transitivePeerDependencies: - - supports-color - - extend-shallow@2.0.1: - dependencies: - is-extendable: 0.1.1 - - extend-shallow@3.0.2: - dependencies: - assign-symbols: 1.0.0 - is-extendable: 1.0.1 - - extend@3.0.2: {} - - extglob@2.0.4: - dependencies: - array-unique: 0.3.2 - define-property: 1.0.0 - expand-brackets: 2.1.4 - extend-shallow: 2.0.1 - fragment-cache: 0.2.1 - regex-not: 1.0.2 - snapdragon: 0.8.2 - to-regex: 3.0.2 - transitivePeerDependencies: - - supports-color - - fast-deep-equal@3.1.3: {} - - fast-glob@2.2.7: - dependencies: - '@mrmlnc/readdir-enhanced': 2.2.1 - '@nodelib/fs.stat': 1.1.3 - glob-parent: 3.1.0 - is-glob: 4.0.3 - merge2: 1.4.1 - micromatch: 3.1.10 - transitivePeerDependencies: - - supports-color - - fast-glob@3.2.12: - dependencies: - '@nodelib/fs.stat': 2.0.5 - '@nodelib/fs.walk': 1.2.8 - glob-parent: 5.1.2 - merge2: 1.4.1 - micromatch: 4.0.5 - - fast-json-parse@1.0.3: {} - - fast-json-patch@3.1.1: {} - - fast-json-stable-stringify@2.1.0: {} - - fast-levenshtein@2.0.6: {} - - fast-text-encoding@1.0.6: {} - - fast-xml-parser@4.0.11: - dependencies: - strnum: 1.0.5 - optional: true - - fast-xml-parser@4.1.2: - dependencies: - strnum: 1.0.5 - - fastq@1.15.0: - dependencies: - reusify: 1.0.4 - - fault@1.0.4: - dependencies: - format: 0.2.2 - - fb-watchman@2.0.2: - dependencies: - bser: 2.1.1 - - fbemitter@3.0.0: - dependencies: - fbjs: 3.0.4 - transitivePeerDependencies: - - encoding - - fbjs-css-vars@1.0.2: {} - - fbjs@3.0.4: - dependencies: - cross-fetch: 3.1.5 - fbjs-css-vars: 1.0.2 - loose-envify: 1.4.0 - object-assign: 4.1.1 - promise: 7.3.1 - setimmediate: 1.0.5 - ua-parser-js: 0.7.33 - transitivePeerDependencies: - - encoding - - fd-slicer@1.1.0: - dependencies: - pend: 1.2.0 - - fecha@4.2.3: {} - - fetch-cookie@2.1.0: - dependencies: - set-cookie-parser: 2.5.1 - tough-cookie: 4.1.2 - - fetch-retry@5.0.4: {} - - figgy-pudding@3.5.2: {} - - file-entry-cache@6.0.1: - dependencies: - flat-cache: 3.0.4 - - file-loader@6.2.0(webpack@4.46.0): - dependencies: - loader-utils: 2.0.4 - schema-utils: 3.1.1 - webpack: 4.46.0 - - file-selector@0.6.0: - dependencies: - tslib: 2.5.0 - - file-system-cache@1.1.0: - dependencies: - fs-extra: 10.1.0 - ramda: 0.28.0 - - file-uri-to-path@1.0.0: - optional: true - - fill-range@4.0.0: - dependencies: - extend-shallow: 2.0.1 - is-number: 3.0.0 - repeat-string: 1.6.1 - to-regex-range: 2.1.1 - - fill-range@7.0.1: - dependencies: - to-regex-range: 5.0.1 - - finalhandler@1.2.0: - 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 - transitivePeerDependencies: - - supports-color - - find-cache-dir@2.1.0: - dependencies: - commondir: 1.0.1 - make-dir: 2.1.0 - pkg-dir: 3.0.0 - - find-cache-dir@3.3.2: - dependencies: - commondir: 1.0.1 - make-dir: 3.1.0 - pkg-dir: 4.2.0 - - find-root@1.1.0: {} - - find-up@1.1.2: - dependencies: - path-exists: 2.1.0 - pinkie-promise: 2.0.1 - optional: true - - find-up@3.0.0: - dependencies: - locate-path: 3.0.0 - - find-up@4.1.0: - dependencies: - locate-path: 5.0.0 - path-exists: 4.0.0 - - find-up@5.0.0: - dependencies: - locate-path: 6.0.0 - path-exists: 4.0.0 - - find-yarn-workspace-root@2.0.0: - dependencies: - micromatch: 4.0.5 - - fix-esm@1.0.1: - dependencies: - '@babel/core': 7.21.0 - '@babel/plugin-proposal-export-namespace-from': 7.18.9(@babel/core@7.21.0) - '@babel/plugin-transform-modules-commonjs': 7.20.11(@babel/core@7.21.0) - transitivePeerDependencies: - - supports-color - - flat-cache@3.0.4: - dependencies: - flatted: 3.2.7 - rimraf: 3.0.2 - - flat@5.0.2: {} - - flatted@3.2.7: {} - - flush-write-stream@1.1.1: - dependencies: - inherits: 2.0.4 - readable-stream: 2.3.7 - - flux@4.0.3(react@18.2.0): - dependencies: - fbemitter: 3.0.0 - fbjs: 3.0.4 - react: 18.2.0 - transitivePeerDependencies: - - encoding - - fn.name@1.1.0: {} - - follow-redirects@1.15.2: {} - - for-each@0.3.3: - dependencies: - is-callable: 1.2.7 - - for-in@1.0.2: {} - - foreground-child@2.0.0: - dependencies: - cross-spawn: 7.0.3 - signal-exit: 3.0.7 - - fork-ts-checker-webpack-plugin@4.1.6(eslint@8.36.0)(typescript@4.9.5)(webpack@4.46.0): - dependencies: - '@babel/code-frame': 7.18.6 - chalk: 2.4.2 - eslint: 8.36.0 - micromatch: 3.1.10 - minimatch: 3.1.2 - semver: 5.7.1 - tapable: 1.1.3 - typescript: 4.9.5 - webpack: 4.46.0 - worker-rpc: 0.1.1 - transitivePeerDependencies: - - supports-color - - fork-ts-checker-webpack-plugin@6.5.2(eslint@8.36.0)(typescript@4.9.5)(webpack@4.46.0): - dependencies: - '@babel/code-frame': 7.18.6 - '@types/json-schema': 7.0.11 - chalk: 4.1.2 - chokidar: 3.5.3 - cosmiconfig: 6.0.0 - deepmerge: 4.3.0 - eslint: 8.36.0 - fs-extra: 9.1.0 - glob: 7.2.3 - memfs: 3.4.13 - minimatch: 3.1.2 - schema-utils: 2.7.0 - semver: 7.3.8 - tapable: 1.1.3 - typescript: 4.9.5 - webpack: 4.46.0 - - fork-ts-checker-webpack-plugin@6.5.2(eslint@8.36.0)(typescript@4.9.5)(webpack@5.75.0): - dependencies: - '@babel/code-frame': 7.18.6 - '@types/json-schema': 7.0.11 - chalk: 4.1.2 - chokidar: 3.5.3 - cosmiconfig: 6.0.0 - deepmerge: 4.3.0 - eslint: 8.36.0 - fs-extra: 9.1.0 - glob: 7.2.3 - memfs: 3.4.13 - minimatch: 3.1.2 - schema-utils: 2.7.0 - semver: 7.3.8 - tapable: 1.1.3 - typescript: 4.9.5 - webpack: 5.75.0 - - form-data-encoder@1.9.0: {} - - form-data@3.0.1: - dependencies: - asynckit: 0.4.0 - combined-stream: 1.0.8 - mime-types: 2.1.35 - - form-data@4.0.0: - dependencies: - asynckit: 0.4.0 - combined-stream: 1.0.8 - mime-types: 2.1.35 - - format@0.2.2: {} - - formdata-node@4.4.1: - dependencies: - node-domexception: 1.0.0 - web-streams-polyfill: 4.0.0-beta.3 - - forwarded@0.2.0: {} - - fragment-cache@0.2.1: - dependencies: - map-cache: 0.2.2 - - fresh@0.5.2: {} - - from2@2.3.0: - dependencies: - inherits: 2.0.4 - readable-stream: 2.3.7 - - fs-constants@1.0.0: {} - - fs-extra@10.1.0: - dependencies: - graceful-fs: 4.2.10 - jsonfile: 6.1.0 - universalify: 2.0.0 - - fs-extra@9.1.0: - dependencies: - at-least-node: 1.0.0 - graceful-fs: 4.2.10 - jsonfile: 6.1.0 - universalify: 2.0.0 - - fs-minipass@2.1.0: - dependencies: - minipass: 3.3.6 - - fs-monkey@1.0.3: {} - - fs-write-stream-atomic@1.0.10: - dependencies: - graceful-fs: 4.2.10 - iferr: 0.1.5 - imurmurhash: 0.1.4 - readable-stream: 2.3.7 - - fs.realpath@1.0.0: {} - - fsevents@1.2.13: - dependencies: - bindings: 1.5.0 - nan: 2.17.0 - optional: true - - fsevents@2.3.2: - optional: true - - function-bind@1.1.1: {} - - function.prototype.name@1.1.5: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.1 - functions-have-names: 1.2.3 - - functions-have-names@1.2.3: {} - - gauge@2.7.4: - dependencies: - aproba: 1.2.0 - console-control-strings: 1.1.0 - has-unicode: 2.0.1 - object-assign: 4.1.1 - signal-exit: 3.0.7 - string-width: 1.0.2 - strip-ansi: 3.0.1 - wide-align: 1.1.5 - optional: true - - gauge@3.0.2: - dependencies: - aproba: 2.0.0 - color-support: 1.1.3 - console-control-strings: 1.1.0 - has-unicode: 2.0.1 - object-assign: 4.1.1 - signal-exit: 3.0.7 - string-width: 4.2.3 - strip-ansi: 6.0.1 - wide-align: 1.1.5 - - gaxios@5.0.2: - dependencies: - extend: 3.0.2 - https-proxy-agent: 5.0.1 - is-stream: 2.0.1 - node-fetch: 2.6.9 - transitivePeerDependencies: - - encoding - - supports-color - - gcp-metadata@5.2.0: - dependencies: - gaxios: 5.0.2 - json-bigint: 1.0.0 - transitivePeerDependencies: - - encoding - - supports-color - - generic-pool@3.9.0: {} - - gensync@1.0.0-beta.2: {} - - get-caller-file@2.0.5: {} - - get-intrinsic@1.2.0: - dependencies: - function-bind: 1.1.1 - has: 1.0.3 - has-symbols: 1.0.3 - - get-nonce@1.0.1: {} - - get-package-type@0.1.0: {} - - get-port@5.1.1: {} - - get-stdin@4.0.1: - optional: true - - get-stream@4.1.0: - dependencies: - pump: 3.0.0 - - get-stream@5.2.0: - dependencies: - pump: 3.0.0 - - get-stream@6.0.1: {} - - get-symbol-description@1.0.0: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.0 - - get-tsconfig@4.4.0: {} - - get-value@2.0.6: {} - - github-from-package@0.0.0: - optional: true - - github-slugger@1.5.0: {} - - glob-parent@3.1.0: - dependencies: - is-glob: 3.1.0 - path-dirname: 1.0.2 - - glob-parent@5.1.2: - dependencies: - is-glob: 4.0.3 - - glob-parent@6.0.2: - dependencies: - is-glob: 4.0.3 - - glob-promise@3.4.0(glob@7.2.3): - dependencies: - '@types/glob': 8.0.1 - glob: 7.2.3 - - glob-to-regexp@0.3.0: {} - - glob-to-regexp@0.4.1: {} - - glob@7.1.7: - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.1.2 - once: 1.4.0 - path-is-absolute: 1.0.1 - - glob@7.2.3: - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.1.2 - once: 1.4.0 - path-is-absolute: 1.0.1 - - glob@8.1.0: - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 5.1.6 - once: 1.4.0 - - global@4.4.0: - dependencies: - min-document: 2.19.0 - process: 0.11.10 - - globals@11.12.0: {} - - globals@13.20.0: - dependencies: - type-fest: 0.20.2 - - globalthis@1.0.3: - dependencies: - define-properties: 1.2.0 - - globalyzer@0.1.0: {} - - globby@11.1.0: - dependencies: - array-union: 2.1.0 - dir-glob: 3.0.1 - fast-glob: 3.2.12 - ignore: 5.2.4 - merge2: 1.4.1 - slash: 3.0.0 - - globby@13.1.3: - dependencies: - dir-glob: 3.0.1 - fast-glob: 3.2.12 - ignore: 5.2.4 - merge2: 1.4.1 - slash: 4.0.0 - - globby@9.2.0: - dependencies: - '@types/glob': 7.2.0 - array-union: 1.0.2 - dir-glob: 2.2.2 - fast-glob: 2.2.7 - glob: 7.2.3 - ignore: 4.0.6 - pify: 4.0.1 - slash: 2.0.0 - transitivePeerDependencies: - - supports-color - - globrex@0.1.2: {} - - google-auth-library@8.7.0: - dependencies: - arrify: 2.0.1 - base64-js: 1.5.1 - ecdsa-sig-formatter: 1.0.11 - fast-text-encoding: 1.0.6 - gaxios: 5.0.2 - gcp-metadata: 5.2.0 - gtoken: 6.1.2 - jws: 4.0.0 - lru-cache: 6.0.0 - transitivePeerDependencies: - - encoding - - supports-color - - google-p12-pem@4.0.1: - dependencies: - node-forge: 1.3.1 - - gopd@1.0.1: - dependencies: - get-intrinsic: 1.2.0 - - got@11.8.6: - dependencies: - '@sindresorhus/is': 4.6.0 - '@szmarczak/http-timer': 4.0.6 - '@types/cacheable-request': 6.0.3 - '@types/responselike': 1.0.0 - cacheable-lookup: 5.0.4 - cacheable-request: 7.0.2 - decompress-response: 6.0.0 - http2-wrapper: 1.0.3 - lowercase-keys: 2.0.0 - p-cancelable: 2.1.1 - responselike: 2.0.1 - - graceful-fs@4.2.10: {} - - grapheme-splitter@1.0.4: {} - - gtoken@6.1.2: - dependencies: - gaxios: 5.0.2 - google-p12-pem: 4.0.1 - jws: 4.0.0 - transitivePeerDependencies: - - encoding - - supports-color - - handlebars@4.7.7: - dependencies: - minimist: 1.2.8 - neo-async: 2.6.2 - source-map: 0.6.1 - wordwrap: 1.0.0 - optionalDependencies: - uglify-js: 3.17.4 - - has-bigints@1.0.2: {} - - has-flag@3.0.0: {} - - has-flag@4.0.0: {} - - has-glob@1.0.0: - dependencies: - is-glob: 3.1.0 - - has-property-descriptors@1.0.0: - dependencies: - get-intrinsic: 1.2.0 - - has-proto@1.0.1: {} - - has-symbols@1.0.3: {} - - has-tostringtag@1.0.0: - dependencies: - has-symbols: 1.0.3 - - has-unicode@2.0.1: {} - - has-value@0.3.1: - dependencies: - get-value: 2.0.6 - has-values: 0.1.4 - isobject: 2.1.0 - - has-value@1.0.0: - dependencies: - get-value: 2.0.6 - has-values: 1.0.0 - isobject: 3.0.1 - - has-values@0.1.4: {} - - has-values@1.0.0: - dependencies: - is-number: 3.0.0 - kind-of: 4.0.0 - - has@1.0.3: - dependencies: - function-bind: 1.1.1 - - hash-base@3.1.0: - dependencies: - inherits: 2.0.4 - readable-stream: 3.6.0 - safe-buffer: 5.2.1 - - hash.js@1.1.7: - dependencies: - inherits: 2.0.4 - minimalistic-assert: 1.0.1 - - hast-to-hyperscript@9.0.1: - dependencies: - '@types/unist': 2.0.6 - comma-separated-tokens: 1.0.8 - property-information: 5.6.0 - space-separated-tokens: 1.1.5 - style-to-object: 0.3.0 - unist-util-is: 4.1.0 - web-namespaces: 1.1.4 - - hast-util-from-parse5@6.0.1: - dependencies: - '@types/parse5': 5.0.3 - hastscript: 6.0.0 - property-information: 5.6.0 - vfile: 4.2.1 - vfile-location: 3.2.0 - web-namespaces: 1.1.4 - - hast-util-parse-selector@2.2.5: {} - - hast-util-raw@6.0.1: - dependencies: - '@types/hast': 2.3.4 - hast-util-from-parse5: 6.0.1 - hast-util-to-parse5: 6.0.0 - html-void-elements: 1.0.5 - parse5: 6.0.1 - unist-util-position: 3.1.0 - vfile: 4.2.1 - web-namespaces: 1.1.4 - xtend: 4.0.2 - zwitch: 1.0.5 - - hast-util-to-parse5@6.0.0: - dependencies: - hast-to-hyperscript: 9.0.1 - property-information: 5.6.0 - web-namespaces: 1.1.4 - xtend: 4.0.2 - zwitch: 1.0.5 - - hastscript@6.0.0: - dependencies: - '@types/hast': 2.3.4 - comma-separated-tokens: 1.0.8 - hast-util-parse-selector: 2.2.5 - property-information: 5.6.0 - space-separated-tokens: 1.1.5 - - he@1.2.0: {} - - helmet@4.6.0: {} - - hex-color-regex@1.1.0: {} - - highlight.js@10.7.3: {} - - hmac-drbg@1.0.1: - dependencies: - hash.js: 1.1.7 - minimalistic-assert: 1.0.1 - minimalistic-crypto-utils: 1.0.1 - - hoist-non-react-statics@3.3.2: - dependencies: - react-is: 16.13.1 - - hosted-git-info@2.8.9: {} - - hsl-regex@1.0.0: {} - - hsla-regex@1.0.0: {} - - html-dom-parser@1.2.0: - dependencies: - domhandler: 4.3.1 - htmlparser2: 7.2.0 - - html-entities@2.3.3: {} - - html-escaper@2.0.2: {} - - html-minifier-terser@5.1.1: - dependencies: - camel-case: 4.1.2 - clean-css: 4.2.4 - commander: 4.1.1 - he: 1.2.0 - param-case: 3.0.4 - relateurl: 0.2.7 - terser: 4.8.1 - - html-minifier-terser@6.1.0: - dependencies: - camel-case: 4.1.2 - clean-css: 5.3.2 - commander: 8.3.0 - he: 1.2.0 - param-case: 3.0.4 - relateurl: 0.2.7 - terser: 5.16.4 - - html-minifier@4.0.0: - dependencies: - camel-case: 3.0.0 - clean-css: 4.2.4 - commander: 2.20.3 - he: 1.2.0 - param-case: 2.1.1 - relateurl: 0.2.7 - uglify-js: 3.17.4 - - html-react-parser@1.4.12(react@18.2.0): - dependencies: - domhandler: 4.3.1 - html-dom-parser: 1.2.0 - react: 18.2.0 - react-property: 2.0.0 - style-to-js: 1.1.0 - - html-tags@3.2.0: {} - - html-tokenize@2.0.1: - dependencies: - buffer-from: 0.1.2 - inherits: 2.0.4 - minimist: 1.2.8 - readable-stream: 1.0.34 - through2: 0.4.2 - - html-void-elements@1.0.5: {} - - html-webpack-plugin@4.5.2(webpack@4.46.0): - dependencies: - '@types/html-minifier-terser': 5.1.2 - '@types/tapable': 1.0.8 - '@types/webpack': 4.41.33 - html-minifier-terser: 5.1.1 - loader-utils: 1.4.2 - lodash: 4.17.21 - pretty-error: 2.1.2 - tapable: 1.1.3 - util.promisify: 1.0.0 - webpack: 4.46.0 - - html-webpack-plugin@5.5.0(webpack@5.75.0): - dependencies: - '@types/html-minifier-terser': 6.1.0 - html-minifier-terser: 6.1.0 - lodash: 4.17.21 - pretty-error: 4.0.0 - tapable: 2.2.1 - webpack: 5.75.0 - - htmlparser2@4.1.0: - dependencies: - domelementtype: 2.3.0 - domhandler: 3.3.0 - domutils: 2.8.0 - entities: 2.2.0 - - htmlparser2@6.1.0: - dependencies: - domelementtype: 2.3.0 - domhandler: 4.3.1 - domutils: 2.8.0 - entities: 2.2.0 - - htmlparser2@7.2.0: - dependencies: - domelementtype: 2.3.0 - domhandler: 4.3.1 - domutils: 2.8.0 - entities: 3.0.1 - - http-assert@1.5.0: - dependencies: - deep-equal: 1.0.1 - http-errors: 1.8.1 - - http-cache-semantics@4.1.1: {} - - http-errors@1.8.1: - dependencies: - depd: 1.1.2 - inherits: 2.0.4 - setprototypeof: 1.2.0 - statuses: 1.5.0 - toidentifier: 1.0.1 - - http-errors@2.0.0: - dependencies: - depd: 2.0.0 - inherits: 2.0.4 - setprototypeof: 1.2.0 - statuses: 2.0.1 - toidentifier: 1.0.1 - - http2-wrapper@1.0.3: - dependencies: - quick-lru: 5.1.1 - resolve-alpn: 1.2.1 - - https-browserify@1.0.0: {} - - https-proxy-agent@5.0.0: - dependencies: - agent-base: 6.0.2 - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - - https-proxy-agent@5.0.1: - dependencies: - agent-base: 6.0.2 - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - - human-signals@2.1.0: {} - - human-signals@4.3.0: {} - - humanize-number@0.0.2: {} - - husky@8.0.3: {} - - iconv-lite@0.4.24: - dependencies: - safer-buffer: 2.1.2 - - icss-utils@4.1.1: - dependencies: - postcss: 7.0.39 - - icss-utils@5.1.0(postcss@8.4.21): - dependencies: - postcss: 8.4.21 - - ieee754@1.2.1: {} - - iferr@0.1.5: {} - - ignore-by-default@1.0.1: {} - - ignore@4.0.6: {} - - ignore@5.2.4: {} - - immutable@3.8.2: {} - - import-fresh@3.3.0: - dependencies: - parent-module: 1.0.1 - resolve-from: 4.0.0 - - import-local@3.1.0: - dependencies: - pkg-dir: 4.2.0 - resolve-cwd: 3.0.0 - - imurmurhash@0.1.4: {} - - indent-string@2.1.0: - dependencies: - repeating: 2.0.1 - optional: true - - indent-string@4.0.0: {} - - infer-owner@1.0.4: {} - - inflation@2.0.0: {} - - inflight@1.0.6: - dependencies: - once: 1.4.0 - wrappy: 1.0.2 - - inherits@2.0.1: {} - - inherits@2.0.3: {} - - inherits@2.0.4: {} - - ini@1.3.8: {} - - inline-style-parser@0.1.1: {} - - internal-slot@1.0.5: - dependencies: - get-intrinsic: 1.2.0 - has: 1.0.3 - side-channel: 1.0.4 - - interpret@2.2.0: {} - - invariant@2.2.4: - dependencies: - loose-envify: 1.4.0 - - ip@2.0.0: {} - - ipaddr.js@1.9.1: {} - - is-absolute-url@3.0.3: {} - - is-accessor-descriptor@0.1.6: - dependencies: - kind-of: 3.2.2 - - is-accessor-descriptor@1.0.0: - dependencies: - kind-of: 6.0.3 - - is-alphabetical@1.0.4: {} - - is-alphanumerical@1.0.4: - dependencies: - is-alphabetical: 1.0.4 - is-decimal: 1.0.4 - - is-arguments@1.1.1: - dependencies: - call-bind: 1.0.2 - has-tostringtag: 1.0.0 - - is-array-buffer@3.0.1: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.0 - is-typed-array: 1.1.10 - - is-arrayish@0.2.1: {} - - is-arrayish@0.3.2: {} - - is-bigint@1.0.4: - dependencies: - has-bigints: 1.0.2 - - is-binary-path@1.0.1: - dependencies: - binary-extensions: 1.13.1 - optional: true - - is-binary-path@2.1.0: - dependencies: - binary-extensions: 2.2.0 - - is-boolean-object@1.1.2: - dependencies: - call-bind: 1.0.2 - has-tostringtag: 1.0.0 - - is-buffer@1.1.6: {} - - is-buffer@2.0.5: {} - - is-callable@1.2.7: {} - - is-ci@2.0.0: - dependencies: - ci-info: 2.0.0 - - is-color-stop@1.1.0: - dependencies: - css-color-names: 0.0.4 - hex-color-regex: 1.1.0 - hsl-regex: 1.0.0 - hsla-regex: 1.0.0 - rgb-regex: 1.0.1 - rgba-regex: 1.0.0 - - is-core-module@2.11.0: - dependencies: - has: 1.0.3 - - is-data-descriptor@0.1.4: - dependencies: - kind-of: 3.2.2 - - is-data-descriptor@1.0.0: - dependencies: - kind-of: 6.0.3 - - is-date-object@1.0.5: - dependencies: - has-tostringtag: 1.0.0 - - is-decimal@1.0.4: {} - - is-descriptor@0.1.6: - dependencies: - is-accessor-descriptor: 0.1.6 - is-data-descriptor: 0.1.4 - kind-of: 5.1.0 - - is-descriptor@1.0.2: - dependencies: - is-accessor-descriptor: 1.0.0 - is-data-descriptor: 1.0.0 - kind-of: 6.0.3 - - is-docker@2.2.1: {} - - is-dom@1.1.0: - dependencies: - is-object: 1.0.2 - is-window: 1.0.2 - - is-extendable@0.1.1: {} - - is-extendable@1.0.1: - dependencies: - is-plain-object: 2.0.4 - - is-extglob@2.1.1: {} - - is-finite@1.1.0: - optional: true - - is-fullwidth-code-point@1.0.0: - dependencies: - number-is-nan: 1.0.1 - optional: true - - is-fullwidth-code-point@3.0.0: {} - - is-fullwidth-code-point@4.0.0: {} - - is-function@1.0.2: {} - - is-generator-fn@2.1.0: {} - - is-generator-function@1.0.10: - dependencies: - has-tostringtag: 1.0.0 - - is-glob@3.1.0: - dependencies: - is-extglob: 2.1.1 - - is-glob@4.0.3: - dependencies: - is-extglob: 2.1.1 - - is-hexadecimal@1.0.4: {} - - is-map@2.0.2: {} - - is-negative-zero@2.0.2: {} - - is-number-object@1.0.7: - dependencies: - has-tostringtag: 1.0.0 - - is-number@3.0.0: - dependencies: - kind-of: 3.2.2 - - is-number@7.0.0: {} - - is-object@1.0.2: {} - - is-path-inside@3.0.3: {} - - is-plain-obj@2.1.0: {} - - is-plain-object@2.0.4: - dependencies: - isobject: 3.0.1 - - is-plain-object@5.0.0: {} - - is-regex@1.1.4: - dependencies: - call-bind: 1.0.2 - has-tostringtag: 1.0.0 - - is-set@2.0.2: {} - - is-shared-array-buffer@1.0.2: - dependencies: - call-bind: 1.0.2 - - is-stream@1.1.0: {} - - is-stream@2.0.1: {} - - is-stream@3.0.0: {} - - is-string@1.0.7: - dependencies: - has-tostringtag: 1.0.0 - - is-symbol@1.0.4: - dependencies: - has-symbols: 1.0.3 - - is-typed-array@1.1.10: - dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.2 - for-each: 0.3.3 - gopd: 1.0.1 - has-tostringtag: 1.0.0 - - is-typedarray@1.0.0: {} - - is-utf8@0.2.1: - optional: true - - is-weakmap@2.0.1: {} - - is-weakref@1.0.2: - dependencies: - call-bind: 1.0.2 - - is-weakset@2.0.2: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.0 - - is-whitespace-character@1.0.4: {} - - is-window@1.0.2: {} - - is-windows@1.0.2: {} - - is-word-character@1.0.4: {} - - is-wsl@1.1.0: {} - - is-wsl@2.2.0: - dependencies: - is-docker: 2.2.1 - - is@3.3.0: {} - - isarray@0.0.1: {} - - isarray@1.0.0: {} - - isarray@2.0.5: {} - - isexe@2.0.0: {} - - isobject@2.1.0: - dependencies: - isarray: 1.0.0 - - isobject@3.0.1: {} - - isobject@4.0.0: {} - - isomorphic-unfetch@3.1.0: - dependencies: - node-fetch: 2.6.9 - unfetch: 4.2.0 - transitivePeerDependencies: - - encoding - - istanbul-lib-coverage@3.2.0: {} - - istanbul-lib-instrument@5.2.1: - dependencies: - '@babel/core': 7.21.0 - '@babel/parser': 7.21.1 - '@istanbuljs/schema': 0.1.3 - istanbul-lib-coverage: 3.2.0 - semver: 6.3.0 - transitivePeerDependencies: - - supports-color - - istanbul-lib-report@3.0.0: - dependencies: - istanbul-lib-coverage: 3.2.0 - make-dir: 3.1.0 - supports-color: 7.2.0 - - istanbul-lib-source-maps@4.0.1: - dependencies: - debug: 4.3.4 - istanbul-lib-coverage: 3.2.0 - source-map: 0.6.1 - transitivePeerDependencies: - - supports-color - - istanbul-reports@3.1.5: - dependencies: - html-escaper: 2.0.2 - istanbul-lib-report: 3.0.0 - - iterate-iterator@1.0.2: {} - - iterate-value@1.0.2: - dependencies: - es-get-iterator: 1.1.3 - iterate-iterator: 1.0.2 - - jest-changed-files@29.5.0: - dependencies: - execa: 5.1.1 - p-limit: 3.1.0 - - jest-circus@29.5.0: - dependencies: - '@jest/environment': 29.5.0 - '@jest/expect': 29.5.0 - '@jest/test-result': 29.5.0 - '@jest/types': 29.5.0 - '@types/node': 18.15.1 - chalk: 4.1.2 - co: 4.6.0 - dedent: 0.7.0 - is-generator-fn: 2.1.0 - jest-each: 29.5.0 - jest-matcher-utils: 29.5.0 - jest-message-util: 29.5.0 - jest-runtime: 29.5.0 - jest-snapshot: 29.5.0 - jest-util: 29.5.0 - p-limit: 3.1.0 - pretty-format: 29.5.0 - pure-rand: 6.0.1 - slash: 3.0.0 - stack-utils: 2.0.6 - transitivePeerDependencies: - - supports-color - - jest-cli@29.5.0(@types/node@18.15.1)(ts-node@10.9.1): - dependencies: - '@jest/core': 29.5.0(ts-node@10.9.1) - '@jest/test-result': 29.5.0 - '@jest/types': 29.5.0 - chalk: 4.1.2 - exit: 0.1.2 - graceful-fs: 4.2.10 - import-local: 3.1.0 - jest-config: 29.5.0(@types/node@18.15.1)(ts-node@10.9.1) - jest-util: 29.5.0 - jest-validate: 29.5.0 - prompts: 2.4.2 - yargs: 17.7.0 - transitivePeerDependencies: - - '@types/node' - - supports-color - - ts-node - - jest-config@29.5.0(@types/node@18.15.1)(ts-node@10.9.1): - dependencies: - '@babel/core': 7.21.0 - '@jest/test-sequencer': 29.5.0 - '@jest/types': 29.5.0 - '@types/node': 18.15.1 - babel-jest: 29.5.0(@babel/core@7.21.0) - chalk: 4.1.2 - ci-info: 3.8.0 - deepmerge: 4.3.0 - glob: 7.2.3 - graceful-fs: 4.2.10 - jest-circus: 29.5.0 - jest-environment-node: 29.5.0 - jest-get-type: 29.4.3 - jest-regex-util: 29.4.3 - jest-resolve: 29.5.0 - jest-runner: 29.5.0 - jest-util: 29.5.0 - jest-validate: 29.5.0 - micromatch: 4.0.5 - parse-json: 5.2.0 - pretty-format: 29.5.0 - slash: 3.0.0 - strip-json-comments: 3.1.1 - ts-node: 10.9.1(@types/node@18.15.1)(typescript@4.9.5) - transitivePeerDependencies: - - supports-color - - jest-diff@29.4.3: - dependencies: - chalk: 4.1.2 - diff-sequences: 29.4.3 - jest-get-type: 29.4.3 - pretty-format: 29.5.0 - - jest-diff@29.5.0: - dependencies: - chalk: 4.1.2 - diff-sequences: 29.4.3 - jest-get-type: 29.4.3 - pretty-format: 29.5.0 - - jest-docblock@29.4.3: - dependencies: - detect-newline: 3.1.0 - - jest-each@29.5.0: - dependencies: - '@jest/types': 29.5.0 - chalk: 4.1.2 - jest-get-type: 29.4.3 - jest-util: 29.5.0 - pretty-format: 29.5.0 - - jest-environment-node@29.5.0: - dependencies: - '@jest/environment': 29.5.0 - '@jest/fake-timers': 29.5.0 - '@jest/types': 29.5.0 - '@types/node': 18.15.1 - jest-mock: 29.5.0 - jest-util: 29.5.0 - - jest-get-type@29.4.3: {} - - jest-haste-map@26.6.2: - dependencies: - '@jest/types': 26.6.2 - '@types/graceful-fs': 4.1.6 - '@types/node': 18.15.1 - anymatch: 3.1.3 - fb-watchman: 2.0.2 - graceful-fs: 4.2.10 - jest-regex-util: 26.0.0 - jest-serializer: 26.6.2 - jest-util: 26.6.2 - jest-worker: 26.6.2 - micromatch: 4.0.5 - sane: 4.1.0 - walker: 1.0.8 - optionalDependencies: - fsevents: 2.3.2 - transitivePeerDependencies: - - supports-color - - jest-haste-map@29.5.0: - dependencies: - '@jest/types': 29.5.0 - '@types/graceful-fs': 4.1.6 - '@types/node': 18.15.1 - anymatch: 3.1.3 - fb-watchman: 2.0.2 - graceful-fs: 4.2.10 - jest-regex-util: 29.4.3 - jest-util: 29.5.0 - jest-worker: 29.5.0 - micromatch: 4.0.5 - walker: 1.0.8 - optionalDependencies: - fsevents: 2.3.2 - - jest-leak-detector@29.5.0: - dependencies: - jest-get-type: 29.4.3 - pretty-format: 29.5.0 - - jest-matcher-utils@29.4.3: - dependencies: - chalk: 4.1.2 - jest-diff: 29.4.3 - jest-get-type: 29.4.3 - pretty-format: 29.5.0 - - jest-matcher-utils@29.5.0: - dependencies: - chalk: 4.1.2 - jest-diff: 29.5.0 - jest-get-type: 29.4.3 - pretty-format: 29.5.0 - - jest-message-util@29.4.3: - dependencies: - '@babel/code-frame': 7.18.6 - '@jest/types': 29.5.0 - '@types/stack-utils': 2.0.1 - chalk: 4.1.2 - graceful-fs: 4.2.10 - micromatch: 4.0.5 - pretty-format: 29.5.0 - slash: 3.0.0 - stack-utils: 2.0.6 - - jest-message-util@29.5.0: - dependencies: - '@babel/code-frame': 7.18.6 - '@jest/types': 29.5.0 - '@types/stack-utils': 2.0.1 - chalk: 4.1.2 - graceful-fs: 4.2.10 - micromatch: 4.0.5 - pretty-format: 29.5.0 - slash: 3.0.0 - stack-utils: 2.0.6 - - jest-mock@29.5.0: - dependencies: - '@jest/types': 29.5.0 - '@types/node': 18.15.1 - jest-util: 29.5.0 - - jest-pnp-resolver@1.2.3(jest-resolve@29.5.0): - dependencies: - jest-resolve: 29.5.0 - - jest-regex-util@26.0.0: {} - - jest-regex-util@29.4.3: {} - - jest-resolve-dependencies@29.5.0: - dependencies: - jest-regex-util: 29.4.3 - jest-snapshot: 29.5.0 - transitivePeerDependencies: - - supports-color - - jest-resolve@29.5.0: - dependencies: - chalk: 4.1.2 - graceful-fs: 4.2.10 - jest-haste-map: 29.5.0 - jest-pnp-resolver: 1.2.3(jest-resolve@29.5.0) - jest-util: 29.5.0 - jest-validate: 29.5.0 - resolve: 1.22.1 - resolve.exports: 2.0.0 - slash: 3.0.0 - - jest-runner@29.5.0: - dependencies: - '@jest/console': 29.5.0 - '@jest/environment': 29.5.0 - '@jest/test-result': 29.5.0 - '@jest/transform': 29.5.0 - '@jest/types': 29.5.0 - '@types/node': 18.15.1 - chalk: 4.1.2 - emittery: 0.13.1 - graceful-fs: 4.2.10 - jest-docblock: 29.4.3 - jest-environment-node: 29.5.0 - jest-haste-map: 29.5.0 - jest-leak-detector: 29.5.0 - jest-message-util: 29.5.0 - jest-resolve: 29.5.0 - jest-runtime: 29.5.0 - jest-util: 29.5.0 - jest-watcher: 29.5.0 - jest-worker: 29.5.0 - p-limit: 3.1.0 - source-map-support: 0.5.13 - transitivePeerDependencies: - - supports-color - - jest-runtime@29.5.0: - dependencies: - '@jest/environment': 29.5.0 - '@jest/fake-timers': 29.5.0 - '@jest/globals': 29.5.0 - '@jest/source-map': 29.4.3 - '@jest/test-result': 29.5.0 - '@jest/transform': 29.5.0 - '@jest/types': 29.5.0 - '@types/node': 18.15.1 - chalk: 4.1.2 - cjs-module-lexer: 1.2.2 - collect-v8-coverage: 1.0.1 - glob: 7.2.3 - graceful-fs: 4.2.10 - jest-haste-map: 29.5.0 - jest-message-util: 29.5.0 - jest-mock: 29.5.0 - jest-regex-util: 29.4.3 - jest-resolve: 29.5.0 - jest-snapshot: 29.5.0 - jest-util: 29.5.0 - slash: 3.0.0 - strip-bom: 4.0.0 - transitivePeerDependencies: - - supports-color - - jest-serializer@26.6.2: - dependencies: - '@types/node': 18.15.1 - graceful-fs: 4.2.10 - - jest-snapshot@29.5.0: - dependencies: - '@babel/core': 7.21.0 - '@babel/generator': 7.21.1 - '@babel/plugin-syntax-jsx': 7.18.6(@babel/core@7.21.0) - '@babel/plugin-syntax-typescript': 7.20.0(@babel/core@7.21.0) - '@babel/traverse': 7.21.0 - '@babel/types': 7.21.0 - '@jest/expect-utils': 29.5.0 - '@jest/transform': 29.5.0 - '@jest/types': 29.5.0 - '@types/babel__traverse': 7.18.3 - '@types/prettier': 2.7.2 - babel-preset-current-node-syntax: 1.0.1(@babel/core@7.21.0) - chalk: 4.1.2 - expect: 29.5.0 - graceful-fs: 4.2.10 - jest-diff: 29.5.0 - jest-get-type: 29.4.3 - jest-matcher-utils: 29.5.0 - jest-message-util: 29.5.0 - jest-util: 29.5.0 - natural-compare: 1.4.0 - pretty-format: 29.5.0 - semver: 7.3.8 - transitivePeerDependencies: - - supports-color - - jest-util@26.6.2: - dependencies: - '@jest/types': 26.6.2 - '@types/node': 18.15.1 - chalk: 4.1.2 - graceful-fs: 4.2.10 - is-ci: 2.0.0 - micromatch: 4.0.5 - - jest-util@29.4.3: - dependencies: - '@jest/types': 29.5.0 - '@types/node': 18.15.1 - chalk: 4.1.2 - ci-info: 3.8.0 - graceful-fs: 4.2.10 - picomatch: 2.3.1 - - jest-util@29.5.0: - dependencies: - '@jest/types': 29.5.0 - '@types/node': 18.15.1 - chalk: 4.1.2 - ci-info: 3.8.0 - graceful-fs: 4.2.10 - picomatch: 2.3.1 - - jest-validate@29.5.0: - dependencies: - '@jest/types': 29.5.0 - camelcase: 6.3.0 - chalk: 4.1.2 - jest-get-type: 29.4.3 - leven: 3.1.0 - pretty-format: 29.5.0 - - jest-watcher@29.5.0: - dependencies: - '@jest/test-result': 29.5.0 - '@jest/types': 29.5.0 - '@types/node': 18.15.1 - ansi-escapes: 4.3.2 - chalk: 4.1.2 - emittery: 0.13.1 - jest-util: 29.5.0 - string-length: 4.0.2 - - jest-worker@26.6.2: - dependencies: - '@types/node': 18.15.1 - merge-stream: 2.0.0 - supports-color: 7.2.0 - - jest-worker@27.5.1: - dependencies: - '@types/node': 18.15.1 - merge-stream: 2.0.0 - supports-color: 8.1.1 - - jest-worker@29.5.0: - dependencies: - '@types/node': 18.15.1 - jest-util: 29.5.0 - merge-stream: 2.0.0 - supports-color: 8.1.1 - - jest@29.5.0(@types/node@18.15.1)(ts-node@10.9.1): - dependencies: - '@jest/core': 29.5.0(ts-node@10.9.1) - '@jest/types': 29.5.0 - import-local: 3.1.0 - jest-cli: 29.5.0(@types/node@18.15.1)(ts-node@10.9.1) - transitivePeerDependencies: - - '@types/node' - - supports-color - - ts-node - - js-beautify@1.14.7: - dependencies: - config-chain: 1.1.13 - editorconfig: 0.15.3 - glob: 8.1.0 - nopt: 6.0.0 - - js-file-download@0.4.12: {} - - js-sdsl@4.3.0: {} - - js-sha3@0.8.0: {} - - js-string-escape@1.0.1: {} - - js-tokens@4.0.0: {} - - js-yaml@3.14.1: - dependencies: - argparse: 1.0.10 - esprima: 4.0.1 - - js-yaml@4.1.0: - dependencies: - argparse: 2.0.1 - - jsesc@0.5.0: {} - - jsesc@2.5.2: {} - - json-bigint@1.0.0: - dependencies: - bignumber.js: 9.1.1 - - json-buffer@3.0.1: {} - - json-file-plus@3.3.1: - dependencies: - is: 3.3.0 - node.extend: 2.0.2 - object.assign: 4.1.4 - promiseback: 2.0.3 - safer-buffer: 2.1.2 - - json-parse-better-errors@1.0.2: {} - - json-parse-even-better-errors@2.3.1: {} - - json-schema-traverse@0.4.1: {} - - json-schema-traverse@1.0.0: {} - - json-stable-stringify-without-jsonify@1.0.1: {} - - json5@1.0.2: - dependencies: - minimist: 1.2.8 - - json5@2.2.3: {} - - jsonfile@6.1.0: - dependencies: - universalify: 2.0.0 - optionalDependencies: - graceful-fs: 4.2.10 - - jsx-ast-utils@3.3.3: - dependencies: - array-includes: 3.1.6 - object.assign: 4.1.4 - - juice@7.0.0: - dependencies: - cheerio: 1.0.0-rc.10 - commander: 5.1.0 - mensch: 0.3.4 - slick: 1.12.2 - web-resource-inliner: 5.0.0 - transitivePeerDependencies: - - encoding - - junk@3.1.0: {} - - jwa@2.0.0: - dependencies: - buffer-equal-constant-time: 1.0.1 - ecdsa-sig-formatter: 1.0.11 - safe-buffer: 5.2.1 - - jws@4.0.0: - dependencies: - jwa: 2.0.0 - safe-buffer: 5.2.1 - - keygrip@1.1.0: - dependencies: - tsscmp: 1.0.6 - - keyv@4.5.2: - dependencies: - json-buffer: 3.0.1 - - kind-of@3.2.2: - dependencies: - is-buffer: 1.1.6 - - kind-of@4.0.0: - dependencies: - is-buffer: 1.1.6 - - kind-of@5.1.0: {} - - kind-of@6.0.3: {} - - klaw-sync@6.0.0: - dependencies: - graceful-fs: 4.2.10 - - kleur@3.0.3: {} - - klona@2.0.6: {} - - koa-bodyparser@4.3.0: - dependencies: - co-body: 6.1.0 - copy-to: 2.0.1 - - koa-compose@4.1.0: {} - - koa-convert@2.0.0: - dependencies: - co: 4.6.0 - koa-compose: 4.1.0 - - koa-helmet@6.1.0: - dependencies: - helmet: 4.6.0 - - koa-logger@3.2.1: - dependencies: - bytes: 3.1.2 - chalk: 2.4.2 - humanize-number: 0.0.2 - passthrough-counter: 1.0.0 - - koa-mount@4.0.0: - dependencies: - debug: 4.3.4 - koa-compose: 4.1.0 - transitivePeerDependencies: - - supports-color - - koa-qs@3.0.0: - dependencies: - merge-descriptors: 1.0.1 - qs: 6.11.0 - - koa@2.14.1: - dependencies: - accepts: 1.3.8 - cache-content-type: 1.0.1 - content-disposition: 0.5.4 - content-type: 1.0.5 - cookies: 0.8.0 - debug: 4.3.4 - delegates: 1.0.0 - depd: 2.0.0 - destroy: 1.2.0 - encodeurl: 1.0.2 - escape-html: 1.0.3 - fresh: 0.5.2 - http-assert: 1.5.0 - http-errors: 1.8.1 - is-generator-function: 1.0.10 - koa-compose: 4.1.0 - koa-convert: 2.0.0 - on-finished: 2.4.1 - only: 0.0.2 - parseurl: 1.3.3 - statuses: 1.5.0 - type-is: 1.6.18 - vary: 1.1.2 - transitivePeerDependencies: - - supports-color - - kuler@2.0.0: {} - - language-subtag-registry@0.3.22: {} - - language-tags@1.0.5: - dependencies: - language-subtag-registry: 0.3.22 - - lazy-universal-dotenv@3.0.1: - dependencies: - '@babel/runtime': 7.21.0 - app-root-dir: 1.0.2 - core-js: 3.28.0 - dotenv: 8.6.0 - dotenv-expand: 5.1.0 - - leven@3.1.0: {} - - levn@0.3.0: - dependencies: - prelude-ls: 1.1.2 - type-check: 0.3.2 - - levn@0.4.1: - dependencies: - prelude-ls: 1.2.1 - type-check: 0.4.0 - - lilconfig@2.1.0: {} - - lines-and-columns@1.2.4: {} - - lint-staged@13.2.0: - dependencies: - chalk: 5.2.0 - cli-truncate: 3.1.0 - commander: 10.0.0 - debug: 4.3.4 - execa: 7.1.0 - lilconfig: 2.1.0 - listr2: 5.0.8 - micromatch: 4.0.5 - normalize-path: 3.0.0 - object-inspect: 1.12.3 - pidtree: 0.6.0 - string-argv: 0.3.1 - yaml: 2.2.1 - transitivePeerDependencies: - - enquirer - - supports-color - - listr2@5.0.8: - dependencies: - cli-truncate: 2.1.0 - colorette: 2.0.19 - log-update: 4.0.0 - p-map: 4.0.0 - rfdc: 1.3.0 - rxjs: 7.8.0 - through: 2.3.8 - wrap-ansi: 7.0.0 - - load-json-file@1.1.0: - dependencies: - graceful-fs: 4.2.10 - parse-json: 2.2.0 - pify: 2.3.0 - pinkie-promise: 2.0.1 - strip-bom: 2.0.0 - optional: true - - load-json-file@4.0.0: - dependencies: - graceful-fs: 4.2.10 - parse-json: 4.0.0 - pify: 3.0.0 - strip-bom: 3.0.0 - - loader-runner@2.4.0: {} - - loader-runner@4.3.0: {} - - loader-utils@1.4.2: - dependencies: - big.js: 5.2.2 - emojis-list: 3.0.0 - json5: 1.0.2 - - loader-utils@2.0.4: - dependencies: - big.js: 5.2.2 - emojis-list: 3.0.0 - json5: 2.2.3 - - locate-path@3.0.0: - dependencies: - p-locate: 3.0.0 - path-exists: 3.0.0 - - locate-path@5.0.0: - dependencies: - p-locate: 4.1.0 - - locate-path@6.0.0: - dependencies: - p-locate: 5.0.0 - - lodash-es@4.17.21: {} - - lodash.clone@4.5.0: {} - - lodash.clonedeep@4.5.0: {} - - lodash.constant@3.0.0: {} - - lodash.curry@4.1.1: {} - - lodash.debounce@4.0.8: {} - - lodash.filter@4.6.0: {} - - lodash.flatmap@4.5.0: {} - - lodash.flow@3.5.0: {} - - lodash.foreach@4.5.0: {} - - lodash.has@4.5.2: {} - - lodash.isempty@4.4.0: {} - - lodash.isequal@4.5.0: {} - - lodash.isfunction@3.0.9: {} - - lodash.isundefined@3.0.1: {} - - lodash.keys@4.2.0: {} - - lodash.map@4.6.0: {} - - lodash.memoize@4.1.2: {} - - lodash.merge@4.6.2: {} - - lodash.reduce@4.6.0: {} - - lodash.size@4.2.0: {} - - lodash.topairs@4.3.0: {} - - lodash.transform@4.6.0: {} - - lodash.union@4.6.0: {} - - lodash.uniq@4.5.0: {} - - lodash.values@4.3.0: {} - - lodash@4.17.21: {} - - log-update@4.0.0: - dependencies: - ansi-escapes: 4.3.2 - cli-cursor: 3.1.0 - slice-ansi: 4.0.0 - wrap-ansi: 6.2.0 - - logform@2.5.1: - dependencies: - '@colors/colors': 1.5.0 - '@types/triple-beam': 1.3.2 - fecha: 4.2.3 - ms: 2.1.3 - safe-stable-stringify: 2.4.2 - triple-beam: 1.3.0 - - long-timeout@0.1.1: {} - - loose-envify@1.4.0: - dependencies: - js-tokens: 4.0.0 - - loud-rejection@1.6.0: - dependencies: - currently-unhandled: 0.4.1 - signal-exit: 3.0.7 - optional: true - - lower-case@1.1.4: {} - - lower-case@2.0.2: - dependencies: - tslib: 2.5.0 - - lowercase-keys@2.0.0: {} - - lowlight@1.20.0: - dependencies: - fault: 1.0.4 - highlight.js: 10.7.3 - - lru-cache@4.1.5: - dependencies: - pseudomap: 1.0.2 - yallist: 2.1.2 - - lru-cache@5.1.1: - dependencies: - yallist: 3.1.1 - - lru-cache@6.0.0: - dependencies: - yallist: 4.0.0 - - luxon@3.3.0: {} - - make-dir@2.1.0: - dependencies: - pify: 4.0.1 - semver: 5.7.1 - - make-dir@3.1.0: - dependencies: - semver: 6.3.0 - - make-error@1.3.6: {} - - makeerror@1.0.12: - dependencies: - tmpl: 1.0.5 - - map-age-cleaner@0.1.3: - dependencies: - p-defer: 1.0.0 - - map-cache@0.2.2: {} - - map-obj@1.0.1: - optional: true - - map-or-similar@1.5.0: {} - - map-visit@1.0.0: - dependencies: - object-visit: 1.0.1 - - markdown-escapes@1.0.4: {} - - match-sorter@6.3.1: - dependencies: - '@babel/runtime': 7.21.0 - remove-accents: 0.4.2 - - material-colors@1.2.6: {} - - md5-file@5.0.0: {} - - md5.js@1.3.5: - dependencies: - hash-base: 3.1.0 - inherits: 2.0.4 - safe-buffer: 5.2.1 - - mdast-squeeze-paragraphs@4.0.0: - dependencies: - unist-util-remove: 2.1.0 - - mdast-util-definitions@4.0.0: - dependencies: - unist-util-visit: 2.0.3 - - mdast-util-to-hast@10.0.1: - dependencies: - '@types/mdast': 3.0.10 - '@types/unist': 2.0.6 - mdast-util-definitions: 4.0.0 - mdurl: 1.0.1 - unist-builder: 2.0.3 - unist-util-generated: 1.1.6 - unist-util-position: 3.1.0 - unist-util-visit: 2.0.3 - - mdast-util-to-string@1.1.0: {} - - mdn-data@2.0.14: {} - - mdurl@1.0.1: {} - - media-typer@0.3.0: {} - - mem@8.1.1: - dependencies: - map-age-cleaner: 0.1.3 - mimic-fn: 3.1.0 - - memfs@3.4.13: - dependencies: - fs-monkey: 1.0.3 - - memoizerific@1.11.3: - dependencies: - map-or-similar: 1.5.0 - - memory-fs@0.4.1: - dependencies: - errno: 0.1.8 - readable-stream: 2.3.7 - - memory-fs@0.5.0: - dependencies: - errno: 0.1.8 - readable-stream: 2.3.7 - - memory-pager@1.5.0: - optional: true - - memorystream@0.3.1: {} - - mensch@0.3.4: {} - - meow@3.7.0: - dependencies: - camelcase-keys: 2.1.0 - decamelize: 1.2.0 - loud-rejection: 1.6.0 - map-obj: 1.0.1 - minimist: 1.2.8 - normalize-package-data: 2.5.0 - object-assign: 4.1.1 - read-pkg-up: 1.0.1 - redent: 1.0.0 - trim-newlines: 1.0.0 - optional: true - - merge-descriptors@1.0.1: {} - - merge-stream@2.0.0: {} - - merge2@1.4.1: {} - - methods@1.1.2: {} - - microevent.ts@0.1.1: {} - - micromatch@3.1.10: - dependencies: - arr-diff: 4.0.0 - array-unique: 0.3.2 - braces: 2.3.2 - define-property: 2.0.2 - extend-shallow: 3.0.2 - extglob: 2.0.4 - fragment-cache: 0.2.1 - kind-of: 6.0.3 - nanomatch: 1.2.13 - object.pick: 1.3.0 - regex-not: 1.0.2 - snapdragon: 0.8.2 - to-regex: 3.0.2 - transitivePeerDependencies: - - supports-color - - micromatch@4.0.5: - dependencies: - braces: 3.0.2 - picomatch: 2.3.1 - - microseconds@0.2.0: {} - - miller-rabin@4.0.1: - dependencies: - bn.js: 4.12.0 - brorand: 1.1.0 - - mime-db@1.52.0: {} - - mime-types@2.1.35: - dependencies: - mime-db: 1.52.0 - - mime@1.6.0: {} - - mime@2.6.0: {} - - mimic-fn@2.1.0: {} - - mimic-fn@3.1.0: {} - - mimic-fn@4.0.0: {} - - mimic-response@1.0.1: {} - - mimic-response@2.1.0: - optional: true - - mimic-response@3.1.0: {} - - min-document@2.19.0: - dependencies: - dom-walk: 0.1.2 - - min-indent@1.0.1: {} - - minim@0.23.8: - dependencies: - lodash: 4.17.21 - - minimalistic-assert@1.0.1: {} - - minimalistic-crypto-utils@1.0.1: {} - - minimatch@3.1.2: - dependencies: - brace-expansion: 1.1.11 - - minimatch@5.1.6: - dependencies: - brace-expansion: 2.0.1 - - minimatch@7.4.3: - dependencies: - brace-expansion: 2.0.1 - - minimist@1.2.8: {} - - minipass-collect@1.0.2: - dependencies: - minipass: 3.3.6 - - minipass-flush@1.0.5: - dependencies: - minipass: 3.3.6 - - minipass-pipeline@1.2.4: - dependencies: - minipass: 3.3.6 - - minipass@3.3.6: - dependencies: - yallist: 4.0.0 - - minipass@4.0.3: {} - - minizlib@2.1.2: - dependencies: - minipass: 3.3.6 - yallist: 4.0.0 - - mississippi@3.0.0: - dependencies: - concat-stream: 1.6.2 - duplexify: 3.7.1 - end-of-stream: 1.4.4 - flush-write-stream: 1.1.1 - from2: 2.3.0 - parallel-transform: 1.2.0 - pump: 3.0.0 - pumpify: 1.5.1 - stream-each: 1.2.3 - through2: 2.0.5 - - mixin-deep@1.3.2: - dependencies: - for-in: 1.0.2 - is-extendable: 1.0.1 - - mixpanel-browser@2.45.0: {} - - mixpanel@0.17.0: - dependencies: - https-proxy-agent: 5.0.0 - transitivePeerDependencies: - - supports-color - - mjml-accordion@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-body@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-button@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-carousel@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-cli@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - chokidar: 3.5.3 - glob: 7.2.3 - html-minifier: 4.0.0 - js-beautify: 1.14.7 - lodash: 4.17.21 - mjml-core: 4.13.0 - mjml-migrate: 4.13.0 - mjml-parser-xml: 4.13.0 - mjml-validator: 4.13.0 - yargs: 16.2.0 - transitivePeerDependencies: - - encoding - - mjml-column@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-core@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - cheerio: 1.0.0-rc.10 - detect-node: 2.0.4 - html-minifier: 4.0.0 - js-beautify: 1.14.7 - juice: 7.0.0 - lodash: 4.17.21 - mjml-migrate: 4.13.0 - mjml-parser-xml: 4.13.0 - mjml-validator: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-divider@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-group@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-head-attributes@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-head-breakpoint@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-head-font@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-head-html-attributes@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-head-preview@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-head-style@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-head-title@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-head@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-hero@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-image@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-migrate@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - js-beautify: 1.14.7 - lodash: 4.17.21 - mjml-core: 4.13.0 - mjml-parser-xml: 4.13.0 - yargs: 16.2.0 - transitivePeerDependencies: - - encoding - - mjml-navbar@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-parser-xml@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - detect-node: 2.0.4 - htmlparser2: 4.1.0 - lodash: 4.17.21 - - mjml-preset-core@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - mjml-accordion: 4.13.0 - mjml-body: 4.13.0 - mjml-button: 4.13.0 - mjml-carousel: 4.13.0 - mjml-column: 4.13.0 - mjml-divider: 4.13.0 - mjml-group: 4.13.0 - mjml-head: 4.13.0 - mjml-head-attributes: 4.13.0 - mjml-head-breakpoint: 4.13.0 - mjml-head-font: 4.13.0 - mjml-head-html-attributes: 4.13.0 - mjml-head-preview: 4.13.0 - mjml-head-style: 4.13.0 - mjml-head-title: 4.13.0 - mjml-hero: 4.13.0 - mjml-image: 4.13.0 - mjml-navbar: 4.13.0 - mjml-raw: 4.13.0 - mjml-section: 4.13.0 - mjml-social: 4.13.0 - mjml-spacer: 4.13.0 - mjml-table: 4.13.0 - mjml-text: 4.13.0 - mjml-wrapper: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-raw@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-section@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-social@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-spacer@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-table@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-text@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml-validator@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - - mjml-wrapper@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - lodash: 4.17.21 - mjml-core: 4.13.0 - mjml-section: 4.13.0 - transitivePeerDependencies: - - encoding - - mjml@4.13.0: - dependencies: - '@babel/runtime': 7.21.0 - mjml-cli: 4.13.0 - mjml-core: 4.13.0 - mjml-migrate: 4.13.0 - mjml-preset-core: 4.13.0 - mjml-validator: 4.13.0 - transitivePeerDependencies: - - encoding - - mkdirp-classic@0.5.3: - optional: true - - mkdirp@0.5.6: - dependencies: - minimist: 1.2.8 - - mkdirp@1.0.4: {} - - module-alias@2.2.2: {} - - moment-duration-format@2.3.2: {} - - moment@2.29.4: {} - - mongodb-connection-string-url@2.6.0: - dependencies: - '@types/whatwg-url': 8.2.2 - whatwg-url: 11.0.0 - - mongodb-memory-server-core@8.11.5: - dependencies: - '@types/tmp': 0.2.3 - async-mutex: 0.3.2 - camelcase: 6.3.0 - debug: 4.3.4 - find-cache-dir: 3.3.2 - get-port: 5.1.1 - https-proxy-agent: 5.0.1 - md5-file: 5.0.0 - mongodb: 4.14.0 - new-find-package-json: 2.0.0 - semver: 7.3.8 - tar-stream: 2.2.0 - tmp: 0.2.1 - tslib: 2.5.0 - uuid: 9.0.0 - yauzl: 2.10.0 - transitivePeerDependencies: - - aws-crt - - supports-color - - mongodb-memory-server-core@8.12.0: - dependencies: - async-mutex: 0.3.2 - camelcase: 6.3.0 - debug: 4.3.4 - find-cache-dir: 3.3.2 - get-port: 5.1.1 - https-proxy-agent: 5.0.1 - md5-file: 5.0.0 - mongodb: 4.14.0 - new-find-package-json: 2.0.0 - semver: 7.3.8 - tar-stream: 2.2.0 - tslib: 2.5.0 - uuid: 9.0.0 - yauzl: 2.10.0 - transitivePeerDependencies: - - aws-crt - - supports-color - - mongodb-memory-server@8.11.5: - dependencies: - mongodb-memory-server-core: 8.11.5 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - - supports-color - - mongodb-memory-server@8.12.0: - dependencies: - mongodb-memory-server-core: 8.12.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - - supports-color - - mongodb@4.10.0: - dependencies: - bson: 4.7.2 - denque: 2.1.0 - mongodb-connection-string-url: 2.6.0 - socks: 2.7.1 - optionalDependencies: - saslprep: 1.0.3 - - mongodb@4.14.0: - dependencies: - bson: 4.7.2 - mongodb-connection-string-url: 2.6.0 - socks: 2.7.1 - optionalDependencies: - '@aws-sdk/credential-providers': 3.272.0 - saslprep: 1.0.3 - transitivePeerDependencies: - - aws-crt - - move-concurrently@1.0.1: - dependencies: - aproba: 1.2.0 - copy-concurrently: 1.0.5 - fs-write-stream-atomic: 1.0.10 - mkdirp: 0.5.6 - rimraf: 2.7.1 - run-queue: 1.0.3 - - ms@2.0.0: {} - - ms@2.1.1: {} - - ms@2.1.2: {} - - ms@2.1.3: {} - - multer@1.4.5-lts.1: - dependencies: - append-field: 1.0.0 - busboy: 1.6.0 - concat-stream: 1.6.2 - mkdirp: 0.5.6 - object-assign: 4.1.1 - type-is: 1.6.18 - xtend: 4.0.2 - - multipipe@1.0.2: - dependencies: - duplexer2: 0.1.4 - object-assign: 4.1.1 - - nan@2.17.0: - optional: true - - nano-time@1.0.0: - dependencies: - big-integer: 1.6.51 - - nanoid@3.3.4: {} - - nanomatch@1.2.13: - dependencies: - arr-diff: 4.0.0 - array-unique: 0.3.2 - define-property: 2.0.2 - extend-shallow: 3.0.2 - fragment-cache: 0.2.1 - is-windows: 1.0.2 - kind-of: 6.0.3 - object.pick: 1.3.0 - regex-not: 1.0.2 - snapdragon: 0.8.2 - to-regex: 3.0.2 - transitivePeerDependencies: - - supports-color - - napi-build-utils@1.0.2: - optional: true - - natural-compare-lite@1.4.0: {} - - natural-compare@1.4.0: {} - - nearest-color@0.4.4: {} - - negotiator@0.6.3: {} - - neo-async@2.6.2: {} - - nested-error-stacks@2.1.1: {} - - new-find-package-json@2.0.0: - dependencies: - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - - next@13.2.4(@babel/core@7.21.0)(react-dom@18.2.0)(react@18.2.0): - dependencies: - '@next/env': 13.2.4 - '@swc/helpers': 0.4.14 - caniuse-lite: 1.0.30001457 - postcss: 8.4.14 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - styled-jsx: 5.1.1(@babel/core@7.21.0)(react@18.2.0) - optionalDependencies: - '@next/swc-android-arm-eabi': 13.2.4 - '@next/swc-android-arm64': 13.2.4 - '@next/swc-darwin-arm64': 13.2.4 - '@next/swc-darwin-x64': 13.2.4 - '@next/swc-freebsd-x64': 13.2.4 - '@next/swc-linux-arm-gnueabihf': 13.2.4 - '@next/swc-linux-arm64-gnu': 13.2.4 - '@next/swc-linux-arm64-musl': 13.2.4 - '@next/swc-linux-x64-gnu': 13.2.4 - '@next/swc-linux-x64-musl': 13.2.4 - '@next/swc-win32-arm64-msvc': 13.2.4 - '@next/swc-win32-ia32-msvc': 13.2.4 - '@next/swc-win32-x64-msvc': 13.2.4 - transitivePeerDependencies: - - '@babel/core' - - babel-plugin-macros - - nice-try@1.0.5: {} - - no-case@2.3.2: - dependencies: - lower-case: 1.1.4 - - no-case@3.0.4: - dependencies: - lower-case: 2.0.2 - tslib: 2.5.0 - - node-abi@2.30.1: - dependencies: - semver: 5.7.1 - optional: true - - node-dir@0.1.17: - dependencies: - minimatch: 3.1.2 - - node-domexception@1.0.0: {} - - node-fetch@2.6.7: - dependencies: - whatwg-url: 5.0.0 - - node-fetch@2.6.9: - dependencies: - whatwg-url: 5.0.0 - - node-forge@1.3.1: {} - - node-int64@0.4.0: {} - - node-libs-browser@2.2.1: - dependencies: - assert: 1.5.0 - browserify-zlib: 0.2.0 - buffer: 4.9.2 - console-browserify: 1.2.0 - constants-browserify: 1.0.0 - crypto-browserify: 3.12.0 - domain-browser: 1.2.0 - events: 3.3.0 - https-browserify: 1.0.0 - os-browserify: 0.3.0 - path-browserify: 0.0.1 - process: 0.11.10 - punycode: 1.4.1 - querystring-es3: 0.2.1 - readable-stream: 2.3.7 - stream-browserify: 2.0.2 - stream-http: 2.8.3 - string_decoder: 1.3.0 - timers-browserify: 2.0.12 - tty-browserify: 0.0.0 - url: 0.11.0 - util: 0.11.1 - vm-browserify: 1.1.2 - - node-releases@2.0.10: {} - - node-schedule@2.1.1: - dependencies: - cron-parser: 4.8.1 - long-timeout: 0.1.1 - sorted-array-functions: 1.3.0 - - node.extend@2.0.2: - dependencies: - has: 1.0.3 - is: 3.3.0 - - nodemon@2.0.21: - dependencies: - chokidar: 3.5.3 - debug: 3.2.7(supports-color@5.5.0) - ignore-by-default: 1.0.1 - minimatch: 3.1.2 - pstree.remy: 1.1.8 - semver: 5.7.1 - simple-update-notifier: 1.1.0 - supports-color: 5.5.0 - touch: 3.1.0 - undefsafe: 2.0.5 - - nopt@1.0.10: - dependencies: - abbrev: 1.1.1 - - nopt@6.0.0: - dependencies: - abbrev: 1.1.1 - - normalize-package-data@2.5.0: - dependencies: - hosted-git-info: 2.8.9 - resolve: 1.22.1 - semver: 5.7.1 - validate-npm-package-license: 3.0.4 - - normalize-path@2.1.1: - dependencies: - remove-trailing-separator: 1.1.0 - - normalize-path@3.0.0: {} - - normalize-range@0.1.2: {} - - normalize-url@6.1.0: {} - - notepack.io@3.0.1: {} - - npm-run-all@4.1.5: - dependencies: - ansi-styles: 3.2.1 - chalk: 2.4.2 - cross-spawn: 6.0.5 - memorystream: 0.3.1 - minimatch: 3.1.2 - pidtree: 0.3.1 - read-pkg: 3.0.0 - shell-quote: 1.7.2 - string.prototype.padend: 3.1.4 - - npm-run-path@2.0.2: - dependencies: - path-key: 2.0.1 - - npm-run-path@4.0.1: - dependencies: - path-key: 3.1.1 - - npm-run-path@5.1.0: - dependencies: - path-key: 4.0.0 - - npm@9.6.1: {} - - npmlog@4.1.2: - dependencies: - are-we-there-yet: 1.1.7 - console-control-strings: 1.1.0 - gauge: 2.7.4 - set-blocking: 2.0.0 - optional: true - - npmlog@5.0.1: - dependencies: - are-we-there-yet: 2.0.0 - console-control-strings: 1.1.0 - gauge: 3.0.2 - set-blocking: 2.0.0 - - nth-check@2.1.1: - dependencies: - boolbase: 1.0.0 - - num2fraction@1.2.2: {} - - number-is-nan@1.0.1: - optional: true - - object-assign@4.1.1: {} - - object-copy@0.1.0: - dependencies: - copy-descriptor: 0.1.1 - define-property: 0.2.5 - kind-of: 3.2.2 - - object-hash@3.0.0: {} - - object-inspect@1.12.3: {} - - object-is@1.1.5: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - - object-keys@0.4.0: {} - - object-keys@1.1.1: {} - - object-visit@1.0.1: - dependencies: - isobject: 3.0.1 - - object.assign@4.1.4: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - has-symbols: 1.0.3 - object-keys: 1.1.1 - - object.entries@1.1.6: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.1 - - object.fromentries@2.0.6: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.1 - - object.getownpropertydescriptors@2.1.5: - dependencies: - array.prototype.reduce: 1.0.5 - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.1 - - object.hasown@1.1.2: - dependencies: - define-properties: 1.2.0 - es-abstract: 1.21.1 - - object.pick@1.3.0: - dependencies: - isobject: 3.0.1 - - object.values@1.1.6: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.1 - - objectorarray@1.0.5: {} - - oblivious-set@1.0.0: {} - - on-finished@2.4.1: - dependencies: - ee-first: 1.1.1 - - on-headers@1.0.2: {} - - once@1.3.3: - dependencies: - wrappy: 1.0.2 - - once@1.4.0: - dependencies: - wrappy: 1.0.2 - - one-time@1.0.0: - dependencies: - fn.name: 1.1.0 - - onetime@5.1.2: - dependencies: - mimic-fn: 2.1.0 - - onetime@6.0.0: - dependencies: - mimic-fn: 4.0.0 - - only@0.0.2: {} - - open@7.4.2: - dependencies: - is-docker: 2.2.1 - is-wsl: 2.2.0 - - open@8.4.2: - dependencies: - define-lazy-prop: 2.0.0 - is-docker: 2.2.1 - is-wsl: 2.2.0 - - openapi3-ts@3.2.0: - dependencies: - yaml: 2.2.2 - - optionator@0.8.3: - dependencies: - deep-is: 0.1.4 - fast-levenshtein: 2.0.6 - levn: 0.3.0 - prelude-ls: 1.1.2 - type-check: 0.3.2 - word-wrap: 1.2.3 - - optionator@0.9.1: - dependencies: - deep-is: 0.1.4 - fast-levenshtein: 2.0.6 - levn: 0.4.1 - prelude-ls: 1.2.1 - type-check: 0.4.0 - word-wrap: 1.2.3 - - os-browserify@0.3.0: {} - - os-homedir@1.0.2: - optional: true - - os-tmpdir@1.0.2: {} - - p-all@2.1.0: - dependencies: - p-map: 2.1.0 - - p-cancelable@2.1.1: {} - - p-defer@1.0.0: {} - - p-event@4.2.0: - dependencies: - p-timeout: 3.2.0 - - p-filter@2.1.0: - dependencies: - p-map: 2.1.0 - - p-finally@1.0.0: {} - - p-limit@2.3.0: - dependencies: - p-try: 2.2.0 - - p-limit@3.1.0: - dependencies: - yocto-queue: 0.1.0 - - p-locate@3.0.0: - dependencies: - p-limit: 2.3.0 - - p-locate@4.1.0: - dependencies: - p-limit: 2.3.0 - - p-locate@5.0.0: - dependencies: - p-limit: 3.1.0 - - p-map@2.1.0: {} - - p-map@3.0.0: - dependencies: - aggregate-error: 3.1.0 - - p-map@4.0.0: - dependencies: - aggregate-error: 3.1.0 - - p-timeout@3.2.0: - dependencies: - p-finally: 1.0.0 - - p-try@2.2.0: {} - - packageurl-js@1.0.1: {} - - pako@1.0.11: {} - - parallel-transform@1.2.0: - dependencies: - cyclist: 1.0.1 - inherits: 2.0.4 - readable-stream: 2.3.7 - - param-case@2.1.1: - dependencies: - no-case: 2.3.2 - - param-case@3.0.4: - dependencies: - dot-case: 3.0.4 - tslib: 2.5.0 - - parent-module@1.0.1: - dependencies: - callsites: 3.1.0 - - parse-asn1@5.1.6: - dependencies: - asn1.js: 5.4.1 - browserify-aes: 1.2.0 - evp_bytestokey: 1.0.3 - pbkdf2: 3.1.2 - safe-buffer: 5.2.1 - - parse-entities@2.0.0: - dependencies: - character-entities: 1.2.4 - character-entities-legacy: 1.1.4 - character-reference-invalid: 1.1.4 - is-alphanumerical: 1.0.4 - is-decimal: 1.0.4 - is-hexadecimal: 1.0.4 - - parse-json@2.2.0: - dependencies: - error-ex: 1.3.2 - optional: true - - parse-json@4.0.0: - dependencies: - error-ex: 1.3.2 - json-parse-better-errors: 1.0.2 - - parse-json@5.2.0: - dependencies: - '@babel/code-frame': 7.18.6 - error-ex: 1.3.2 - json-parse-even-better-errors: 2.3.1 - lines-and-columns: 1.2.4 - - parse5-htmlparser2-tree-adapter@6.0.1: - dependencies: - parse5: 6.0.1 - - parse5@6.0.1: {} - - parseurl@1.3.3: {} - - pascal-case@3.1.2: - dependencies: - no-case: 3.0.4 - tslib: 2.5.0 - - pascalcase@0.1.1: {} - - passthrough-counter@1.0.0: {} - - patch-package@6.5.1: - dependencies: - '@yarnpkg/lockfile': 1.1.0 - chalk: 4.1.2 - cross-spawn: 6.0.5 - find-yarn-workspace-root: 2.0.0 - fs-extra: 9.1.0 - is-ci: 2.0.0 - klaw-sync: 6.0.0 - minimist: 1.2.8 - open: 7.4.2 - rimraf: 2.7.1 - semver: 5.7.1 - slash: 2.0.0 - tmp: 0.0.33 - yaml: 1.10.2 - - path-browserify@0.0.1: {} - - path-browserify@1.0.1: {} - - path-dirname@1.0.2: {} - - path-exists@2.1.0: - dependencies: - pinkie-promise: 2.0.1 - optional: true - - path-exists@3.0.0: {} - - path-exists@4.0.0: {} - - path-is-absolute@1.0.1: {} - - path-key@2.0.1: {} - - path-key@3.1.1: {} - - path-key@4.0.0: {} - - path-parse@1.0.7: {} - - path-to-regexp@0.1.7: {} - - path-to-regexp@6.2.1: {} - - path-type@1.1.0: - dependencies: - graceful-fs: 4.2.10 - pify: 2.3.0 - pinkie-promise: 2.0.1 - optional: true - - path-type@3.0.0: - dependencies: - pify: 3.0.0 - - path-type@4.0.0: {} - - pbkdf2@3.1.2: - dependencies: - create-hash: 1.2.0 - create-hmac: 1.1.7 - ripemd160: 2.0.2 - safe-buffer: 5.2.1 - sha.js: 2.4.11 - - pend@1.2.0: {} - - picocolors@0.2.1: {} - - picocolors@1.0.0: {} - - picomatch@2.3.1: {} - - pidtree@0.3.1: {} - - pidtree@0.6.0: {} - - pify@2.3.0: - optional: true - - pify@3.0.0: {} - - pify@4.0.1: {} - - pinkie-promise@2.0.1: - dependencies: - pinkie: 2.0.4 - optional: true - - pinkie@2.0.4: - optional: true - - pirates@4.0.5: {} - - pkg-dir@3.0.0: - dependencies: - find-up: 3.0.0 - - pkg-dir@4.2.0: - dependencies: - find-up: 4.1.0 - - pkg-dir@5.0.0: - dependencies: - find-up: 5.0.0 - - pluralize@7.0.0: {} - - pnp-webpack-plugin@1.6.4(typescript@4.9.5): - dependencies: - ts-pnp: 1.2.0(typescript@4.9.5) - transitivePeerDependencies: - - typescript - - polished@4.2.2: - dependencies: - '@babel/runtime': 7.21.0 - - posix-character-classes@0.1.1: {} - - postcss-flexbugs-fixes@4.2.1: - dependencies: - postcss: 7.0.39 - - postcss-loader@4.3.0(postcss@7.0.39)(webpack@4.46.0): - dependencies: - cosmiconfig: 7.1.0 - klona: 2.0.6 - loader-utils: 2.0.4 - postcss: 7.0.39 - schema-utils: 3.1.1 - semver: 7.3.8 - webpack: 4.46.0 - - postcss-modules-extract-imports@2.0.0: - dependencies: - postcss: 7.0.39 - - postcss-modules-extract-imports@3.0.0(postcss@8.4.21): - dependencies: - postcss: 8.4.21 - - postcss-modules-local-by-default@3.0.3: - dependencies: - icss-utils: 4.1.1 - postcss: 7.0.39 - postcss-selector-parser: 6.0.11 - postcss-value-parser: 4.2.0 - - postcss-modules-local-by-default@4.0.0(postcss@8.4.21): - dependencies: - icss-utils: 5.1.0(postcss@8.4.21) - postcss: 8.4.21 - postcss-selector-parser: 6.0.11 - postcss-value-parser: 4.2.0 - - postcss-modules-scope@2.2.0: - dependencies: - postcss: 7.0.39 - postcss-selector-parser: 6.0.11 - - postcss-modules-scope@3.0.0(postcss@8.4.21): - dependencies: - postcss: 8.4.21 - postcss-selector-parser: 6.0.11 - - postcss-modules-values@3.0.0: - dependencies: - icss-utils: 4.1.1 - postcss: 7.0.39 - - postcss-modules-values@4.0.0(postcss@8.4.21): - dependencies: - icss-utils: 5.1.0(postcss@8.4.21) - postcss: 8.4.21 - - postcss-selector-parser@6.0.11: - dependencies: - cssesc: 3.0.0 - util-deprecate: 1.0.2 - - postcss-value-parser@4.2.0: {} - - postcss@7.0.39: - dependencies: - picocolors: 0.2.1 - source-map: 0.6.1 - - postcss@8.4.14: - dependencies: - nanoid: 3.3.4 - picocolors: 1.0.0 - source-map-js: 1.0.2 - - postcss@8.4.21: - dependencies: - nanoid: 3.3.4 - picocolors: 1.0.0 - source-map-js: 1.0.2 - - prebuild-install@6.1.4: - dependencies: - detect-libc: 1.0.3 - expand-template: 2.0.3 - github-from-package: 0.0.0 - minimist: 1.2.8 - mkdirp-classic: 0.5.3 - napi-build-utils: 1.0.2 - node-abi: 2.30.1 - npmlog: 4.1.2 - pump: 3.0.0 - rc: 1.2.8 - simple-get: 3.1.1 - tar-fs: 2.1.1 - tunnel-agent: 0.6.0 - optional: true - - prelude-ls@1.1.2: {} - - prelude-ls@1.2.1: {} - - prettier@2.3.0: {} - - pretty-bytes@5.6.0: {} - - pretty-error@2.1.2: - dependencies: - lodash: 4.17.21 - renderkid: 2.0.7 - - pretty-error@4.0.0: - dependencies: - lodash: 4.17.21 - renderkid: 3.0.0 - - pretty-format@29.4.3: - dependencies: - '@jest/schemas': 29.4.3 - ansi-styles: 5.2.0 - react-is: 18.2.0 - - pretty-format@29.5.0: - dependencies: - '@jest/schemas': 29.4.3 - ansi-styles: 5.2.0 - react-is: 18.2.0 - - pretty-hrtime@1.0.3: {} - - prismjs@1.27.0: {} - - prismjs@1.29.0: {} - - process-nextick-args@2.0.1: {} - - process@0.11.10: {} - - promise-deferred@2.0.3: - dependencies: - promise: 7.3.1 - - promise-inflight@1.0.1(bluebird@3.7.2): - dependencies: - bluebird: 3.7.2 - - promise.allsettled@1.0.6: - dependencies: - array.prototype.map: 1.0.5 - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.1 - get-intrinsic: 1.2.0 - iterate-value: 1.0.2 - - promise.prototype.finally@3.1.4: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.1 - - promise@7.3.1: - dependencies: - asap: 2.0.6 - - promiseback@2.0.3: - dependencies: - is-callable: 1.2.7 - promise-deferred: 2.0.3 - - prompts@2.4.2: - dependencies: - kleur: 3.0.3 - sisteransi: 1.0.5 - - prop-types@15.8.1: - dependencies: - loose-envify: 1.4.0 - object-assign: 4.1.1 - react-is: 16.13.1 - - property-information@5.6.0: - dependencies: - xtend: 4.0.2 - - proto-list@1.2.4: {} - - proxy-addr@2.0.7: - dependencies: - forwarded: 0.2.0 - ipaddr.js: 1.9.1 - - proxy-from-env@1.1.0: {} - - prr@1.0.1: {} - - pseudomap@1.0.2: {} - - psl@1.9.0: {} - - pstree.remy@1.1.8: {} - - public-encrypt@4.0.3: - dependencies: - bn.js: 4.12.0 - browserify-rsa: 4.1.0 - create-hash: 1.2.0 - parse-asn1: 5.1.6 - randombytes: 2.1.0 - safe-buffer: 5.2.1 - - pump@2.0.1: - dependencies: - end-of-stream: 1.4.4 - once: 1.4.0 - - pump@3.0.0: - dependencies: - end-of-stream: 1.4.4 - once: 1.4.0 - - pumpify@1.5.1: - dependencies: - duplexify: 3.7.1 - inherits: 2.0.4 - pump: 2.0.1 - - punycode@1.3.2: {} - - punycode@1.4.1: {} - - punycode@2.3.0: {} - - pure-color@1.3.0: {} - - pure-rand@6.0.1: {} - - qs@6.11.0: - dependencies: - side-channel: 1.0.4 - - querystring-es3@0.2.1: {} - - querystring@0.2.0: {} - - querystringify@2.2.0: {} - - queue-microtask@1.2.3: {} - - quick-lru@5.1.1: {} - - ramda-adjunct@4.0.0(ramda@0.29.0): - dependencies: - ramda: 0.29.0 - - ramda@0.28.0: {} - - ramda@0.29.0: {} - - randexp@0.5.3: - dependencies: - drange: 1.1.1 - ret: 0.2.2 - - randombytes@2.1.0: - dependencies: - safe-buffer: 5.2.1 - - randomfill@1.0.4: - dependencies: - randombytes: 2.1.0 - safe-buffer: 5.2.1 - - range-parser@1.2.1: {} - - raw-body@2.5.1: - dependencies: - bytes: 3.1.2 - http-errors: 2.0.0 - iconv-lite: 0.4.24 - unpipe: 1.0.0 - - raw-loader@4.0.2(webpack@4.46.0): - dependencies: - loader-utils: 2.0.4 - schema-utils: 3.1.1 - webpack: 4.46.0 - - rc@1.2.8: - dependencies: - deep-extend: 0.6.0 - ini: 1.3.8 - minimist: 1.2.8 - strip-json-comments: 2.0.1 - optional: true - - react-base16-styling@0.6.0: - dependencies: - base16: 1.0.0 - lodash.curry: 4.1.1 - lodash.flow: 3.5.0 - pure-color: 1.3.0 - - react-color@2.19.3(react@18.2.0): - dependencies: - '@icons/material': 0.2.4(react@18.2.0) - lodash: 4.17.21 - lodash-es: 4.17.21 - material-colors: 1.2.6 - prop-types: 15.8.1 - react: 18.2.0 - reactcss: 1.2.3(react@18.2.0) - tinycolor2: 1.6.0 - - react-copy-to-clipboard@5.1.0(react@18.2.0): - dependencies: - copy-to-clipboard: 3.3.3 - prop-types: 15.8.1 - react: 18.2.0 - - react-debounce-input@3.3.0(react@18.2.0): - dependencies: - lodash.debounce: 4.0.8 - prop-types: 15.8.1 - react: 18.2.0 - - react-docgen-typescript@2.2.2(typescript@4.9.5): - dependencies: - typescript: 4.9.5 - - react-docgen@5.4.3: - dependencies: - '@babel/core': 7.21.0 - '@babel/generator': 7.21.1 - '@babel/runtime': 7.21.0 - ast-types: 0.14.2 - commander: 2.20.3 - doctrine: 3.0.0 - estree-to-babel: 3.2.1 - neo-async: 2.6.2 - node-dir: 0.1.17 - strip-indent: 3.0.0 - transitivePeerDependencies: - - supports-color - - react-dom@18.2.0(react@18.2.0): - dependencies: - loose-envify: 1.4.0 - react: 18.2.0 - scheduler: 0.23.0 - - react-dropzone@14.2.3(react@18.2.0): - dependencies: - attr-accept: 2.2.2 - file-selector: 0.6.0 - prop-types: 15.8.1 - react: 18.2.0 - - react-element-to-jsx-string@14.3.4(react-dom@18.2.0)(react@18.2.0): - dependencies: - '@base2/pretty-print-object': 1.0.1 - is-plain-object: 5.0.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - react-is: 17.0.2 - - react-hook-form@7.43.5(react@18.2.0): - dependencies: - react: 18.2.0 - - react-immutable-proptypes@2.2.0(immutable@3.8.2): - dependencies: - immutable: 3.8.2 - invariant: 2.2.4 - - react-immutable-pure-component@2.2.2(immutable@3.8.2)(react-dom@18.2.0)(react@18.2.0): - dependencies: - immutable: 3.8.2 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - react-inspector@5.1.1(react@18.2.0): - dependencies: - '@babel/runtime': 7.21.0 - is-dom: 1.1.0 - prop-types: 15.8.1 - react: 18.2.0 - - react-inspector@6.0.1(react@18.2.0): - dependencies: - react: 18.2.0 - - react-is@16.13.1: {} - - react-is@17.0.2: {} - - react-is@18.2.0: {} - - react-lifecycles-compat@3.0.4: {} - - react-property@2.0.0: {} - - react-query@3.39.3(react-dom@18.2.0)(react@18.2.0): - dependencies: - '@babel/runtime': 7.21.0 - broadcast-channel: 3.7.0 - match-sorter: 6.3.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - react-redux@8.0.5(@types/react-dom@18.0.11)(@types/react@18.0.28)(react-dom@18.2.0)(react@18.2.0)(redux@4.2.1): - dependencies: - '@babel/runtime': 7.21.0 - '@types/hoist-non-react-statics': 3.3.1 - '@types/react': 18.0.28 - '@types/react-dom': 18.0.11 - '@types/use-sync-external-store': 0.0.3 - hoist-non-react-statics: 3.3.2 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - react-is: 18.2.0 - redux: 4.2.1 - use-sync-external-store: 1.2.0(react@18.2.0) - - react-refresh@0.11.0: {} - - react-remove-scroll-bar@2.3.4(@types/react@18.0.28)(react@18.2.0): - dependencies: - '@types/react': 18.0.28 - react: 18.2.0 - react-style-singleton: 2.2.1(@types/react@18.0.28)(react@18.2.0) - tslib: 2.5.0 - - react-remove-scroll@2.5.5(@types/react@18.0.28)(react@18.2.0): - dependencies: - '@types/react': 18.0.28 - react: 18.2.0 - react-remove-scroll-bar: 2.3.4(@types/react@18.0.28)(react@18.2.0) - react-style-singleton: 2.2.1(@types/react@18.0.28)(react@18.2.0) - tslib: 2.5.0 - use-callback-ref: 1.3.0(@types/react@18.0.28)(react@18.2.0) - use-sidecar: 1.1.2(@types/react@18.0.28)(react@18.2.0) - - react-style-singleton@2.2.1(@types/react@18.0.28)(react@18.2.0): - dependencies: - '@types/react': 18.0.28 - get-nonce: 1.0.1 - invariant: 2.2.4 - react: 18.2.0 - tslib: 2.5.0 - - react-syntax-highlighter@15.5.0(react@18.2.0): - dependencies: - '@babel/runtime': 7.21.0 - highlight.js: 10.7.3 - lowlight: 1.20.0 - prismjs: 1.29.0 - react: 18.2.0 - refractor: 3.6.0 - - react-textarea-autosize@6.1.0(react@18.2.0): - dependencies: - prop-types: 15.8.1 - react: 18.2.0 - - react-textarea-autosize@8.3.4(@types/react@18.0.28)(react@18.2.0): - dependencies: - '@babel/runtime': 7.21.0 - react: 18.2.0 - use-composed-ref: 1.3.0(react@18.2.0) - use-latest: 1.2.1(@types/react@18.0.28)(react@18.2.0) - transitivePeerDependencies: - - '@types/react' - - react-transition-group@4.4.2(react-dom@18.2.0)(react@18.2.0): - dependencies: - '@babel/runtime': 7.21.0 - dom-helpers: 5.2.1 - loose-envify: 1.4.0 - prop-types: 15.8.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - react@18.2.0: - dependencies: - loose-envify: 1.4.0 - - reactcss@1.2.3(react@18.2.0): - dependencies: - lodash: 4.17.21 - react: 18.2.0 - - read-pkg-up@1.0.1: - dependencies: - find-up: 1.1.2 - read-pkg: 1.1.0 - optional: true - - read-pkg-up@7.0.1: - dependencies: - find-up: 4.1.0 - read-pkg: 5.2.0 - type-fest: 0.8.1 - - read-pkg@1.1.0: - dependencies: - load-json-file: 1.1.0 - normalize-package-data: 2.5.0 - path-type: 1.1.0 - optional: true - - read-pkg@3.0.0: - dependencies: - load-json-file: 4.0.0 - normalize-package-data: 2.5.0 - path-type: 3.0.0 - - read-pkg@5.2.0: - dependencies: - '@types/normalize-package-data': 2.4.1 - normalize-package-data: 2.5.0 - parse-json: 5.2.0 - type-fest: 0.6.0 - - readable-stream@1.0.34: - dependencies: - core-util-is: 1.0.3 - inherits: 2.0.4 - isarray: 0.0.1 - string_decoder: 0.10.31 - - readable-stream@2.3.7: - dependencies: - core-util-is: 1.0.3 - inherits: 2.0.4 - isarray: 1.0.0 - process-nextick-args: 2.0.1 - safe-buffer: 5.1.2 - string_decoder: 1.1.1 - util-deprecate: 1.0.2 - - readable-stream@3.6.0: - dependencies: - inherits: 2.0.4 - string_decoder: 1.3.0 - util-deprecate: 1.0.2 - - readdirp@2.2.1: - dependencies: - graceful-fs: 4.2.10 - micromatch: 3.1.10 - readable-stream: 2.3.7 - transitivePeerDependencies: - - supports-color - optional: true - - readdirp@3.6.0: - dependencies: - picomatch: 2.3.1 - - redent@1.0.0: - dependencies: - indent-string: 2.1.0 - strip-indent: 1.0.1 - optional: true - - redis@4.6.5: - dependencies: - '@redis/bloom': 1.2.0(@redis/client@1.5.6) - '@redis/client': 1.5.6 - '@redis/graph': 1.1.0(@redis/client@1.5.6) - '@redis/json': 1.0.4(@redis/client@1.5.6) - '@redis/search': 1.1.2(@redis/client@1.5.6) - '@redis/time-series': 1.0.4(@redis/client@1.5.6) - - redux-immutable@4.0.0(immutable@3.8.2): - dependencies: - immutable: 3.8.2 - - redux@4.2.1: - dependencies: - '@babel/runtime': 7.21.0 - - refractor@3.6.0: - dependencies: - hastscript: 6.0.0 - parse-entities: 2.0.0 - prismjs: 1.27.0 - - regenerate-unicode-properties@10.1.0: - dependencies: - regenerate: 1.4.2 - - regenerate@1.4.2: {} - - regenerator-runtime@0.13.11: {} - - regenerator-transform@0.15.1: - dependencies: - '@babel/runtime': 7.21.0 - - regex-not@1.0.2: - dependencies: - extend-shallow: 3.0.2 - safe-regex: 1.1.0 - - regexp.prototype.flags@1.4.3: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - functions-have-names: 1.2.3 - - regexpp@3.2.0: {} - - regexpu-core@5.3.1: - dependencies: - '@babel/regjsgen': 0.8.0 - regenerate: 1.4.2 - regenerate-unicode-properties: 10.1.0 - regjsparser: 0.9.1 - unicode-match-property-ecmascript: 2.0.0 - unicode-match-property-value-ecmascript: 2.1.0 - - regjsparser@0.9.1: - dependencies: - jsesc: 0.5.0 - - relateurl@0.2.7: {} - - remark-external-links@8.0.0: - dependencies: - extend: 3.0.2 - is-absolute-url: 3.0.3 - mdast-util-definitions: 4.0.0 - space-separated-tokens: 1.1.5 - unist-util-visit: 2.0.3 - - remark-footnotes@2.0.0: {} - - remark-mdx@1.6.22: - dependencies: - '@babel/core': 7.12.9 - '@babel/helper-plugin-utils': 7.10.4 - '@babel/plugin-proposal-object-rest-spread': 7.12.1(@babel/core@7.12.9) - '@babel/plugin-syntax-jsx': 7.12.1(@babel/core@7.12.9) - '@mdx-js/util': 1.6.22 - is-alphabetical: 1.0.4 - remark-parse: 8.0.3 - unified: 9.2.0 - transitivePeerDependencies: - - supports-color - - remark-parse@8.0.3: - dependencies: - ccount: 1.1.0 - collapse-white-space: 1.0.6 - is-alphabetical: 1.0.4 - is-decimal: 1.0.4 - is-whitespace-character: 1.0.4 - is-word-character: 1.0.4 - markdown-escapes: 1.0.4 - parse-entities: 2.0.0 - repeat-string: 1.6.1 - state-toggle: 1.0.3 - trim: 0.0.1 - trim-trailing-lines: 1.1.4 - unherit: 1.1.3 - unist-util-remove-position: 2.0.1 - vfile-location: 3.2.0 - xtend: 4.0.2 - - remark-slug@6.1.0: - dependencies: - github-slugger: 1.5.0 - mdast-util-to-string: 1.1.0 - unist-util-visit: 2.0.3 - - remark-squeeze-paragraphs@4.0.0: - dependencies: - mdast-squeeze-paragraphs: 4.0.0 - - remarkable@2.0.1: - dependencies: - argparse: 1.0.10 - autolinker: 3.16.2 - - remove-accents@0.4.2: {} - - remove-trailing-separator@1.1.0: {} - - renderkid@2.0.7: - dependencies: - css-select: 4.3.0 - dom-converter: 0.2.0 - htmlparser2: 6.1.0 - lodash: 4.17.21 - strip-ansi: 3.0.1 - - renderkid@3.0.0: - dependencies: - css-select: 4.3.0 - dom-converter: 0.2.0 - htmlparser2: 6.1.0 - lodash: 4.17.21 - strip-ansi: 6.0.1 - - repeat-element@1.1.4: {} - - repeat-string@1.6.1: {} - - repeating@2.0.1: - dependencies: - is-finite: 1.1.0 - optional: true - - require-directory@2.1.1: {} - - require-from-string@2.0.2: {} - - requires-port@1.0.0: {} - - reselect@4.1.8: {} - - resolve-alpn@1.2.1: {} - - resolve-cwd@3.0.0: - dependencies: - resolve-from: 5.0.0 - - resolve-from@4.0.0: {} - - resolve-from@5.0.0: {} - - resolve-url@0.2.1: {} - - resolve.exports@2.0.0: {} - - resolve@1.22.1: - dependencies: - is-core-module: 2.11.0 - path-parse: 1.0.7 - supports-preserve-symlinks-flag: 1.0.0 - - resolve@2.0.0-next.4: - dependencies: - is-core-module: 2.11.0 - path-parse: 1.0.7 - supports-preserve-symlinks-flag: 1.0.0 - - responselike@2.0.1: - dependencies: - lowercase-keys: 2.0.0 - - restore-cursor@3.1.0: - dependencies: - onetime: 5.1.2 - signal-exit: 3.0.7 - - ret@0.1.15: {} - - ret@0.2.2: {} - - reusify@1.0.4: {} - - rfdc@1.3.0: {} - - rgb-hex@3.0.0: {} - - rgb-regex@1.0.1: {} - - rgba-regex@1.0.0: {} - - rimraf@2.7.1: - dependencies: - glob: 7.2.3 - - rimraf@3.0.2: - dependencies: - glob: 7.2.3 - - ripemd160@2.0.2: - dependencies: - hash-base: 3.1.0 - inherits: 2.0.4 - - rsvp@4.8.5: {} - - run-parallel@1.2.0: - dependencies: - queue-microtask: 1.2.3 - - run-queue@1.0.3: - dependencies: - aproba: 1.2.0 - - rxjs@7.8.0: - dependencies: - tslib: 2.5.0 - - safe-buffer@5.1.1: {} - - safe-buffer@5.1.2: {} - - safe-buffer@5.2.1: {} - - safe-regex-test@1.0.0: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.0 - is-regex: 1.1.4 - - safe-regex@1.1.0: - dependencies: - ret: 0.1.15 - - safe-stable-stringify@2.4.2: {} - - safer-buffer@2.1.2: {} - - sane@4.1.0: - dependencies: - '@cnakazawa/watch': 1.0.4 - anymatch: 2.0.0 - capture-exit: 2.0.0 - exec-sh: 0.3.6 - execa: 1.0.0 - fb-watchman: 2.0.2 - micromatch: 3.1.10 - minimist: 1.2.8 - walker: 1.0.8 - transitivePeerDependencies: - - supports-color - - saslprep@1.0.3: - dependencies: - sparse-bitfield: 3.0.3 - optional: true - - scheduler@0.23.0: - dependencies: - loose-envify: 1.4.0 - - schema-utils@1.0.0: - dependencies: - ajv: 6.12.6 - ajv-errors: 1.0.1(ajv@6.12.6) - ajv-keywords: 3.5.2(ajv@6.12.6) - - schema-utils@2.7.0: - dependencies: - '@types/json-schema': 7.0.11 - ajv: 6.12.6 - ajv-keywords: 3.5.2(ajv@6.12.6) - - schema-utils@2.7.1: - dependencies: - '@types/json-schema': 7.0.11 - ajv: 6.12.6 - ajv-keywords: 3.5.2(ajv@6.12.6) - - schema-utils@3.1.1: - dependencies: - '@types/json-schema': 7.0.11 - ajv: 6.12.6 - ajv-keywords: 3.5.2(ajv@6.12.6) - - schema-utils@4.0.0: - dependencies: - '@types/json-schema': 7.0.11 - ajv: 8.12.0 - ajv-formats: 2.1.1(ajv@8.12.0) - ajv-keywords: 5.1.0(ajv@8.12.0) - - semver@5.7.1: {} - - semver@6.3.0: {} - - semver@7.0.0: {} - - semver@7.3.8: - dependencies: - lru-cache: 6.0.0 - - send@0.18.0: - 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 - transitivePeerDependencies: - - supports-color - - serialize-error@8.1.0: - dependencies: - type-fest: 0.20.2 - - serialize-javascript@4.0.0: - dependencies: - randombytes: 2.1.0 - - serialize-javascript@5.0.1: - dependencies: - randombytes: 2.1.0 - - serialize-javascript@6.0.1: - dependencies: - randombytes: 2.1.0 - - serve-favicon@2.5.0: - dependencies: - etag: 1.8.1 - fresh: 0.5.2 - ms: 2.1.1 - parseurl: 1.3.3 - safe-buffer: 5.1.1 - - serve-static@1.15.0: - dependencies: - encodeurl: 1.0.2 - escape-html: 1.0.3 - parseurl: 1.3.3 - send: 0.18.0 - transitivePeerDependencies: - - supports-color - - set-blocking@2.0.0: {} - - set-cookie-parser@2.5.1: {} - - set-value@2.0.1: - dependencies: - extend-shallow: 2.0.1 - is-extendable: 0.1.1 - is-plain-object: 2.0.4 - split-string: 3.1.0 - - setimmediate@1.0.5: {} - - setprototypeof@1.2.0: {} - - sha.js@2.4.11: - dependencies: - inherits: 2.0.4 - safe-buffer: 5.2.1 - - shallow-clone@3.0.1: - dependencies: - kind-of: 6.0.3 - - shebang-command@1.2.0: - dependencies: - shebang-regex: 1.0.0 - - shebang-command@2.0.0: - dependencies: - shebang-regex: 3.0.0 - - shebang-regex@1.0.0: {} - - shebang-regex@3.0.0: {} - - shell-quote@1.7.2: {} - - short-unique-id@4.4.4: {} - - side-channel@1.0.4: - dependencies: - call-bind: 1.0.2 - get-intrinsic: 1.2.0 - object-inspect: 1.12.3 - - sigmund@1.0.1: {} - - signal-exit@3.0.7: {} - - simple-concat@1.0.1: - optional: true - - simple-get@3.1.1: - dependencies: - decompress-response: 4.2.1 - once: 1.4.0 - simple-concat: 1.0.1 - optional: true - - simple-swizzle@0.2.2: - dependencies: - is-arrayish: 0.3.2 - - simple-update-notifier@1.1.0: - dependencies: - semver: 7.0.0 - - sisteransi@1.0.5: {} - - slash@2.0.0: {} - - slash@3.0.0: {} - - slash@4.0.0: {} - - slice-ansi@3.0.0: - dependencies: - ansi-styles: 4.3.0 - astral-regex: 2.0.0 - is-fullwidth-code-point: 3.0.0 - - slice-ansi@4.0.0: - dependencies: - ansi-styles: 4.3.0 - astral-regex: 2.0.0 - is-fullwidth-code-point: 3.0.0 - - slice-ansi@5.0.0: - dependencies: - ansi-styles: 6.2.1 - is-fullwidth-code-point: 4.0.0 - - slick@1.12.2: {} - - smart-buffer@4.2.0: {} - - snapdragon-node@2.1.1: - dependencies: - define-property: 1.0.0 - isobject: 3.0.1 - snapdragon-util: 3.0.1 - - snapdragon-util@3.0.1: - dependencies: - kind-of: 3.2.2 - - snapdragon@0.8.2: - dependencies: - base: 0.11.2 - debug: 2.6.9 - define-property: 0.2.5 - extend-shallow: 2.0.1 - map-cache: 0.2.2 - source-map: 0.5.7 - source-map-resolve: 0.5.3 - use: 3.1.1 - transitivePeerDependencies: - - supports-color - - snyk-config@5.1.0: - dependencies: - async: 3.2.4 - debug: 4.3.4 - lodash.merge: 4.6.2 - minimist: 1.2.8 - transitivePeerDependencies: - - supports-color - - snyk-nodejs-lockfile-parser@1.48.0: - dependencies: - '@snyk/dep-graph': 2.5.0 - '@snyk/graphlib': 2.1.9-patch.3 - '@yarnpkg/core': 2.4.0 - '@yarnpkg/lockfile': 1.1.0 - event-loop-spinner: 2.2.0 - js-yaml: 4.1.0 - lodash.clonedeep: 4.5.0 - lodash.flatmap: 4.5.0 - lodash.isempty: 4.4.0 - lodash.topairs: 4.3.0 - micromatch: 4.0.5 - semver: 7.3.8 - snyk-config: 5.1.0 - tslib: 1.14.1 - uuid: 8.3.2 - transitivePeerDependencies: - - supports-color - - socket.io-adapter@2.5.2: - dependencies: - ws: 8.11.0 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - - socket.io-client@4.6.1: - dependencies: - '@socket.io/component-emitter': 3.1.0 - debug: 4.3.4 - engine.io-client: 6.4.0 - socket.io-parser: 4.2.2 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - socket.io-parser@4.2.2: - dependencies: - '@socket.io/component-emitter': 3.1.0 - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - - socket.io@4.6.1: - dependencies: - accepts: 1.3.8 - base64id: 2.0.0 - debug: 4.3.4 - engine.io: 6.4.1 - socket.io-adapter: 2.5.2 - socket.io-parser: 4.2.2 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - socks@2.7.1: - dependencies: - ip: 2.0.0 - smart-buffer: 4.2.0 - - sorted-array-functions@1.3.0: {} - - source-list-map@2.0.1: {} - - source-map-js@1.0.2: {} - - source-map-resolve@0.5.3: - dependencies: - atob: 2.1.2 - decode-uri-component: 0.2.2 - resolve-url: 0.2.1 - source-map-url: 0.4.1 - urix: 0.1.0 - - source-map-support@0.5.13: - dependencies: - buffer-from: 1.1.2 - source-map: 0.6.1 - - source-map-support@0.5.21: - dependencies: - buffer-from: 1.1.2 - source-map: 0.6.1 - - source-map-url@0.4.1: {} - - source-map@0.5.7: {} - - source-map@0.6.1: {} - - source-map@0.7.4: {} - - space-separated-tokens@1.1.5: {} - - sparse-bitfield@3.0.3: - dependencies: - memory-pager: 1.5.0 - optional: true - - spdx-correct@3.1.1: - dependencies: - spdx-expression-parse: 3.0.1 - spdx-license-ids: 3.0.12 - - spdx-exceptions@2.3.0: {} - - spdx-expression-parse@3.0.1: - dependencies: - spdx-exceptions: 2.3.0 - spdx-license-ids: 3.0.12 - - spdx-license-ids@3.0.12: {} - - split-string@3.1.0: - dependencies: - extend-shallow: 3.0.2 - - sprintf-js@1.0.3: {} - - ssri@6.0.2: - dependencies: - figgy-pudding: 3.5.2 - - ssri@8.0.1: - dependencies: - minipass: 3.3.6 - - stable@0.1.8: {} - - stack-trace@0.0.10: {} - - stack-utils@2.0.6: - dependencies: - escape-string-regexp: 2.0.0 - - stackframe@1.3.4: {} - - stampit@4.3.2: {} - - state-toggle@1.0.3: {} - - static-extend@0.1.2: - dependencies: - define-property: 0.2.5 - object-copy: 0.1.0 - - statuses@1.5.0: {} - - statuses@2.0.1: {} - - stop-iteration-iterator@1.0.0: - dependencies: - internal-slot: 1.0.5 - - store2@2.14.2: {} - - stream-browserify@2.0.2: - dependencies: - inherits: 2.0.4 - readable-stream: 2.3.7 - - stream-browserify@3.0.0: - dependencies: - inherits: 2.0.4 - readable-stream: 3.6.0 - - stream-buffers@3.0.2: {} - - stream-each@1.2.3: - dependencies: - end-of-stream: 1.4.4 - stream-shift: 1.0.1 - - stream-http@2.8.3: - dependencies: - builtin-status-codes: 3.0.0 - inherits: 2.0.4 - readable-stream: 2.3.7 - to-arraybuffer: 1.0.1 - xtend: 4.0.2 - - stream-shift@1.0.1: {} - - stream-to-array@2.3.0: - dependencies: - any-promise: 1.3.0 - - stream-to-promise@2.2.0: - dependencies: - any-promise: 1.3.0 - end-of-stream: 1.1.0 - stream-to-array: 2.3.0 - - streamsearch@1.1.0: {} - - string-argv@0.3.1: {} - - string-length@4.0.2: - dependencies: - char-regex: 1.0.2 - strip-ansi: 6.0.1 - - string-width@1.0.2: - dependencies: - code-point-at: 1.1.0 - is-fullwidth-code-point: 1.0.0 - strip-ansi: 3.0.1 - optional: true - - string-width@4.2.3: - dependencies: - emoji-regex: 8.0.0 - is-fullwidth-code-point: 3.0.0 - strip-ansi: 6.0.1 - - string-width@5.1.2: - dependencies: - eastasianwidth: 0.2.0 - emoji-regex: 9.2.2 - strip-ansi: 7.0.1 - - string.prototype.matchall@4.0.8: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.1 - get-intrinsic: 1.2.0 - has-symbols: 1.0.3 - internal-slot: 1.0.5 - regexp.prototype.flags: 1.4.3 - side-channel: 1.0.4 - - string.prototype.padend@3.1.4: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.1 - - string.prototype.padstart@3.1.4: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.1 - - string.prototype.trimend@1.0.6: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.1 - - string.prototype.trimstart@1.0.6: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.1 - - string_decoder@0.10.31: {} - - string_decoder@1.1.1: - dependencies: - safe-buffer: 5.1.2 - - string_decoder@1.3.0: - dependencies: - safe-buffer: 5.2.1 - - strip-ansi@3.0.1: - dependencies: - ansi-regex: 2.1.1 - - strip-ansi@6.0.1: - dependencies: - ansi-regex: 5.0.1 - - strip-ansi@7.0.1: - dependencies: - ansi-regex: 6.0.1 - - strip-bom@2.0.0: - dependencies: - is-utf8: 0.2.1 - optional: true - - strip-bom@3.0.0: {} - - strip-bom@4.0.0: {} - - strip-eof@1.0.0: {} - - strip-final-newline@2.0.0: {} - - strip-final-newline@3.0.0: {} - - strip-indent@1.0.1: - dependencies: - get-stdin: 4.0.1 - optional: true - - strip-indent@3.0.0: - dependencies: - min-indent: 1.0.1 - - strip-json-comments@2.0.1: - optional: true - - strip-json-comments@3.1.1: {} - - strnum@1.0.5: {} - - style-loader@1.3.0(webpack@4.46.0): - dependencies: - loader-utils: 2.0.4 - schema-utils: 2.7.1 - webpack: 4.46.0 - - style-loader@2.0.0(webpack@5.75.0): - dependencies: - loader-utils: 2.0.4 - schema-utils: 3.1.1 - webpack: 5.75.0 - - style-loader@3.3.1(webpack@5.75.0): - dependencies: - webpack: 5.75.0 - - style-mod@4.0.0: {} - - style-to-js@1.1.0: - dependencies: - style-to-object: 0.3.0 - - style-to-object@0.3.0: - dependencies: - inline-style-parser: 0.1.1 - - styled-jsx@5.1.1(@babel/core@7.21.0)(react@18.2.0): - dependencies: - '@babel/core': 7.21.0 - client-only: 0.0.1 - react: 18.2.0 - - stylis@4.1.3: {} - - supports-color@5.5.0: - dependencies: - has-flag: 3.0.0 - - supports-color@7.2.0: - dependencies: - has-flag: 4.0.0 - - supports-color@8.1.1: - dependencies: - has-flag: 4.0.0 - - supports-preserve-symlinks-flag@1.0.0: {} - - svg-parser@2.0.4: {} - - svgo@2.8.0: - dependencies: - '@trysound/sax': 0.2.0 - commander: 7.2.0 - css-select: 4.3.0 - css-tree: 1.1.3 - csso: 4.2.0 - picocolors: 1.0.0 - stable: 0.1.8 - - swagger-client@3.19.7: - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@swagger-api/apidom-core': 0.69.3 - '@swagger-api/apidom-json-pointer': 0.69.3 - '@swagger-api/apidom-ns-openapi-3-1': 0.69.3 - '@swagger-api/apidom-reference': 0.69.3 - cookie: 0.5.0 - cross-fetch: 3.1.5 - deepmerge: 4.3.0 - fast-json-patch: 3.1.1 - form-data-encoder: 1.9.0 - formdata-node: 4.4.1 - is-plain-object: 5.0.0 - js-yaml: 4.1.0 - lodash: 4.17.21 - qs: 6.11.0 - traverse: 0.6.7 - url: 0.11.0 - transitivePeerDependencies: - - debug - - encoding - - swagger-ui-react@4.18.3(@types/react-dom@18.0.11)(@types/react@18.0.28)(react-dom@18.2.0)(react@18.2.0): - dependencies: - '@babel/runtime-corejs3': 7.21.5 - '@braintree/sanitize-url': 6.0.2 - base64-js: 1.5.1 - classnames: 2.3.2 - css.escape: 1.5.1 - deep-extend: 0.6.0 - dompurify: 3.0.2 - ieee754: 1.2.1 - immutable: 3.8.2 - js-file-download: 0.4.12 - js-yaml: 4.1.0 - lodash: 4.17.21 - patch-package: 6.5.1 - prop-types: 15.8.1 - randexp: 0.5.3 - randombytes: 2.1.0 - react: 18.2.0 - react-copy-to-clipboard: 5.1.0(react@18.2.0) - react-debounce-input: 3.3.0(react@18.2.0) - react-dom: 18.2.0(react@18.2.0) - react-immutable-proptypes: 2.2.0(immutable@3.8.2) - react-immutable-pure-component: 2.2.2(immutable@3.8.2)(react-dom@18.2.0)(react@18.2.0) - react-inspector: 6.0.1(react@18.2.0) - react-redux: 8.0.5(@types/react-dom@18.0.11)(@types/react@18.0.28)(react-dom@18.2.0)(react@18.2.0)(redux@4.2.1) - react-syntax-highlighter: 15.5.0(react@18.2.0) - redux: 4.2.1 - redux-immutable: 4.0.0(immutable@3.8.2) - remarkable: 2.0.1 - reselect: 4.1.8 - serialize-error: 8.1.0 - sha.js: 2.4.11 - swagger-client: 3.19.7 - url-parse: 1.5.10 - xml: 1.0.1 - xml-but-prettier: 1.0.1 - zenscroll: 4.0.2 - transitivePeerDependencies: - - '@types/react' - - '@types/react-dom' - - debug - - encoding - - react-native - - symbol.prototype.description@1.0.5: - dependencies: - call-bind: 1.0.2 - get-symbol-description: 1.0.0 - has-symbols: 1.0.3 - object.getownpropertydescriptors: 2.1.5 - - synchronous-promise@2.0.17: {} - - synckit@0.8.5: - dependencies: - '@pkgr/utils': 2.3.1 - tslib: 2.5.0 - - tabbable@6.1.1: {} - - tapable@1.1.3: {} - - tapable@2.2.1: {} - - tar-fs@2.1.1: - dependencies: - chownr: 1.1.4 - mkdirp-classic: 0.5.3 - pump: 3.0.0 - tar-stream: 2.2.0 - optional: true - - tar-stream@2.2.0: - dependencies: - bl: 4.1.0 - end-of-stream: 1.4.4 - fs-constants: 1.0.0 - inherits: 2.0.4 - readable-stream: 3.6.0 - - tar@6.1.13: - dependencies: - chownr: 2.0.0 - fs-minipass: 2.1.0 - minipass: 4.0.3 - minizlib: 2.1.2 - mkdirp: 1.0.4 - yallist: 4.0.0 - - telejson@6.0.8: - dependencies: - '@types/is-function': 1.0.1 - global: 4.4.0 - is-function: 1.0.2 - is-regex: 1.1.4 - is-symbol: 1.0.4 - isobject: 4.0.0 - lodash: 4.17.21 - memoizerific: 1.11.3 - - terser-webpack-plugin@1.4.5(webpack@4.46.0): - dependencies: - cacache: 12.0.4 - find-cache-dir: 2.1.0 - is-wsl: 1.1.0 - schema-utils: 1.0.0 - serialize-javascript: 4.0.0 - source-map: 0.6.1 - terser: 4.8.1 - webpack: 4.46.0 - webpack-sources: 1.4.3 - worker-farm: 1.7.0 - - terser-webpack-plugin@4.2.3(webpack@4.46.0): - dependencies: - cacache: 15.3.0 - find-cache-dir: 3.3.2 - jest-worker: 26.6.2 - p-limit: 3.1.0 - schema-utils: 3.1.1 - serialize-javascript: 5.0.1 - source-map: 0.6.1 - terser: 5.16.4 - webpack: 4.46.0 - webpack-sources: 1.4.3 - transitivePeerDependencies: - - bluebird - - terser-webpack-plugin@5.3.6(webpack@5.75.0): - dependencies: - '@jridgewell/trace-mapping': 0.3.17 - jest-worker: 27.5.1 - schema-utils: 3.1.1 - serialize-javascript: 6.0.1 - terser: 5.16.4 - webpack: 5.75.0 - - terser@4.8.1: - dependencies: - acorn: 8.8.2 - commander: 2.20.3 - source-map: 0.6.1 - source-map-support: 0.5.21 - - terser@5.16.4: - dependencies: - '@jridgewell/source-map': 0.3.2 - acorn: 8.8.2 - commander: 2.20.3 - source-map-support: 0.5.21 - - test-exclude@6.0.0: - dependencies: - '@istanbuljs/schema': 0.1.3 - glob: 7.2.3 - minimatch: 3.1.2 - - text-hex@1.0.0: {} - - text-table@0.2.0: {} - - through2@0.4.2: - dependencies: - readable-stream: 1.0.34 - xtend: 2.1.2 - - through2@2.0.5: - dependencies: - readable-stream: 2.3.7 - xtend: 4.0.2 - - through@2.3.8: {} - - timers-browserify@2.0.12: - dependencies: - setimmediate: 1.0.5 - - tiny-glob@0.2.9: - dependencies: - globalyzer: 0.1.0 - globrex: 0.1.2 - - tinycolor2@1.6.0: {} - - tmp@0.0.33: - dependencies: - os-tmpdir: 1.0.2 - - tmp@0.2.1: - dependencies: - rimraf: 3.0.2 - - tmpl@1.0.5: {} - - to-arraybuffer@1.0.1: {} - - to-fast-properties@2.0.0: {} - - to-object-path@0.3.0: - dependencies: - kind-of: 3.2.2 - - to-regex-range@2.1.1: - dependencies: - is-number: 3.0.0 - repeat-string: 1.6.1 - - to-regex-range@5.0.1: - dependencies: - is-number: 7.0.0 - - to-regex@3.0.2: - dependencies: - define-property: 2.0.2 - extend-shallow: 3.0.2 - regex-not: 1.0.2 - safe-regex: 1.1.0 - - toggle-selection@1.0.6: {} - - toidentifier@1.0.1: {} - - touch@3.1.0: - dependencies: - nopt: 1.0.10 - - tough-cookie@4.1.2: - dependencies: - psl: 1.9.0 - punycode: 2.3.0 - universalify: 0.2.0 - url-parse: 1.5.10 - - tr46@0.0.3: {} - - tr46@3.0.0: - dependencies: - punycode: 2.3.0 - - traverse@0.6.7: {} - - tree-sitter-json@0.20.0: - dependencies: - nan: 2.17.0 - optional: true - - tree-sitter-yaml@0.5.0: - dependencies: - nan: 2.17.0 - optional: true - - tree-sitter@0.20.1: - dependencies: - nan: 2.17.0 - prebuild-install: 6.1.4 - optional: true - - treeify@1.1.0: {} - - trim-newlines@1.0.0: - optional: true - - trim-trailing-lines@1.1.4: {} - - trim@0.0.1: {} - - triple-beam@1.3.0: {} - - trough@1.0.5: {} - - ts-dedent@2.2.0: {} - - ts-jest@29.0.5(@babel/core@7.21.0)(jest@29.5.0)(typescript@4.9.5): - dependencies: - '@babel/core': 7.21.0 - bs-logger: 0.2.6 - fast-json-stable-stringify: 2.1.0 - jest: 29.5.0(@types/node@18.15.1)(ts-node@10.9.1) - jest-util: 29.4.3 - json5: 2.2.3 - lodash.memoize: 4.1.2 - make-error: 1.3.6 - semver: 7.3.8 - typescript: 4.9.5 - yargs-parser: 21.1.1 - - ts-node@10.9.1(@types/node@18.15.1)(typescript@4.9.5): - dependencies: - '@cspotcode/source-map-support': 0.8.1 - '@tsconfig/node10': 1.0.9 - '@tsconfig/node12': 1.0.11 - '@tsconfig/node14': 1.0.3 - '@tsconfig/node16': 1.0.3 - '@types/node': 18.15.1 - acorn: 8.8.2 - acorn-walk: 8.2.0 - arg: 4.1.3 - create-require: 1.1.1 - diff: 4.0.2 - make-error: 1.3.6 - typescript: 4.9.5 - v8-compile-cache-lib: 3.0.1 - yn: 3.1.1 - - ts-pnp@1.2.0(typescript@4.9.5): - dependencies: - typescript: 4.9.5 - - ts-toolbelt@9.6.0: {} - - tsconfig-paths@3.14.1: - dependencies: - '@types/json5': 0.0.29 - json5: 1.0.2 - minimist: 1.2.8 - strip-bom: 3.0.0 - - tslib@1.14.1: {} - - tslib@2.5.0: {} - - tsscmp@1.0.6: {} - - tsutils@3.21.0(typescript@4.9.5): - dependencies: - tslib: 1.14.1 - typescript: 4.9.5 - - tty-browserify@0.0.0: {} - - tunnel-agent@0.6.0: - dependencies: - safe-buffer: 5.2.1 - optional: true - - tunnel@0.0.6: {} - - turbo-android-arm64@1.4.7: - optional: true - - turbo-darwin-64@1.8.3: - optional: true - - turbo-darwin-arm64@1.8.3: - optional: true - - turbo-freebsd-64@1.4.7: - optional: true - - turbo-freebsd-arm64@1.4.7: - optional: true - - turbo-linux-32@1.4.7: - optional: true - - turbo-linux-64@1.8.3: - optional: true - - turbo-linux-arm64@1.8.3: - optional: true - - turbo-linux-arm@1.4.7: - optional: true - - turbo-linux-mips64le@1.4.7: - optional: true - - turbo-linux-ppc64le@1.4.7: - optional: true - - turbo-windows-32@1.4.7: - optional: true - - turbo-windows-64@1.8.3: - optional: true - - turbo-windows-arm64@1.8.3: - optional: true - - turbo@1.8.3: - optionalDependencies: - turbo-darwin-64: 1.8.3 - turbo-darwin-arm64: 1.8.3 - turbo-linux-64: 1.8.3 - turbo-linux-arm64: 1.8.3 - turbo-windows-64: 1.8.3 - turbo-windows-arm64: 1.8.3 - - type-check@0.3.2: - dependencies: - prelude-ls: 1.1.2 - - type-check@0.4.0: - dependencies: - prelude-ls: 1.2.1 - - type-detect@4.0.8: {} - - type-fest@0.20.2: {} - - type-fest@0.21.3: {} - - type-fest@0.6.0: {} - - type-fest@0.8.1: {} - - type-is@1.6.18: - dependencies: - media-typer: 0.3.0 - mime-types: 2.1.35 - - typed-array-length@1.0.4: - dependencies: - call-bind: 1.0.2 - for-each: 0.3.3 - is-typed-array: 1.1.10 - - typedarray-to-buffer@3.1.5: - dependencies: - is-typedarray: 1.0.0 - - typedarray@0.0.6: {} - - types-ramda@0.29.2: - dependencies: - ts-toolbelt: 9.6.0 - - typescript@4.9.5: {} - - ua-parser-js@0.7.33: {} - - uglify-js@3.17.4: {} - - uid2@1.0.0: {} - - unbox-primitive@1.0.2: - dependencies: - call-bind: 1.0.2 - has-bigints: 1.0.2 - has-symbols: 1.0.3 - which-boxed-primitive: 1.0.2 - - undefsafe@2.0.5: {} - - unfetch@4.2.0: {} - - unherit@1.1.3: - dependencies: - inherits: 2.0.4 - xtend: 4.0.2 - - unicode-canonical-property-names-ecmascript@2.0.0: {} - - unicode-match-property-ecmascript@2.0.0: - dependencies: - unicode-canonical-property-names-ecmascript: 2.0.0 - unicode-property-aliases-ecmascript: 2.1.0 - - unicode-match-property-value-ecmascript@2.1.0: {} - - unicode-property-aliases-ecmascript@2.1.0: {} - - unified@9.2.0: - dependencies: - '@types/unist': 2.0.6 - bail: 1.0.5 - extend: 3.0.2 - is-buffer: 2.0.5 - is-plain-obj: 2.1.0 - trough: 1.0.5 - vfile: 4.2.1 - - union-value@1.0.1: - dependencies: - arr-union: 3.1.0 - get-value: 2.0.6 - is-extendable: 0.1.1 - set-value: 2.0.1 - - unique-filename@1.1.1: - dependencies: - unique-slug: 2.0.2 - - unique-slug@2.0.2: - dependencies: - imurmurhash: 0.1.4 - - unist-builder@2.0.3: {} - - unist-util-generated@1.1.6: {} - - unist-util-is@4.1.0: {} - - unist-util-position@3.1.0: {} - - unist-util-remove-position@2.0.1: - dependencies: - unist-util-visit: 2.0.3 - - unist-util-remove@2.1.0: - dependencies: - unist-util-is: 4.1.0 - - unist-util-stringify-position@2.0.3: - dependencies: - '@types/unist': 2.0.6 - - unist-util-visit-parents@3.1.1: - dependencies: - '@types/unist': 2.0.6 - unist-util-is: 4.1.0 - - unist-util-visit@2.0.3: - dependencies: - '@types/unist': 2.0.6 - unist-util-is: 4.1.0 - unist-util-visit-parents: 3.1.1 - - universalify@0.2.0: {} - - universalify@2.0.0: {} - - unload@2.2.0: - dependencies: - '@babel/runtime': 7.21.0 - detect-node: 2.1.0 - - unpipe@1.0.0: {} - - unraw@2.0.1: {} - - unset-value@1.0.0: - dependencies: - has-value: 0.3.1 - isobject: 3.0.1 - - untildify@2.1.0: - dependencies: - os-homedir: 1.0.2 - optional: true - - upath@1.2.0: - optional: true - - update-browserslist-db@1.0.10(browserslist@4.21.5): - dependencies: - browserslist: 4.21.5 - escalade: 3.1.1 - picocolors: 1.0.0 - - upper-case@1.1.3: {} - - uri-js@4.4.1: - dependencies: - punycode: 2.3.0 - - urix@0.1.0: {} - - url-loader@4.1.1(file-loader@6.2.0)(webpack@4.46.0): - dependencies: - file-loader: 6.2.0(webpack@4.46.0) - loader-utils: 2.0.4 - mime-types: 2.1.35 - schema-utils: 3.1.1 - webpack: 4.46.0 - - url-parse@1.5.10: - dependencies: - querystringify: 2.2.0 - requires-port: 1.0.0 - - url@0.11.0: - dependencies: - punycode: 1.3.2 - querystring: 0.2.0 - - use-callback-ref@1.3.0(@types/react@18.0.28)(react@18.2.0): - dependencies: - '@types/react': 18.0.28 - react: 18.2.0 - tslib: 2.5.0 - - use-composed-ref@1.3.0(react@18.2.0): - dependencies: - react: 18.2.0 - - use-isomorphic-layout-effect@1.1.2(@types/react@18.0.28)(react@18.2.0): - dependencies: - '@types/react': 18.0.28 - react: 18.2.0 - - use-latest@1.2.1(@types/react@18.0.28)(react@18.2.0): - dependencies: - '@types/react': 18.0.28 - react: 18.2.0 - use-isomorphic-layout-effect: 1.1.2(@types/react@18.0.28)(react@18.2.0) - - use-sidecar@1.1.2(@types/react@18.0.28)(react@18.2.0): - dependencies: - '@types/react': 18.0.28 - detect-node-es: 1.1.0 - react: 18.2.0 - tslib: 2.5.0 - - use-sync-external-store@1.2.0(react@18.2.0): - dependencies: - react: 18.2.0 - - use@3.1.1: {} - - util-deprecate@1.0.2: {} - - util.promisify@1.0.0: - dependencies: - define-properties: 1.2.0 - object.getownpropertydescriptors: 2.1.5 - - util@0.10.3: - dependencies: - inherits: 2.0.1 - - util@0.11.1: - dependencies: - inherits: 2.0.3 - - utila@0.4.0: {} - - utils-merge@1.0.1: {} - - uuid-browser@3.1.0: {} - - uuid@3.4.0: {} - - uuid@8.3.2: {} - - uuid@9.0.0: {} - - v8-compile-cache-lib@3.0.1: {} - - v8-to-istanbul@9.1.0: - dependencies: - '@jridgewell/trace-mapping': 0.3.17 - '@types/istanbul-lib-coverage': 2.0.4 - convert-source-map: 1.9.0 - - valid-data-url@3.0.1: {} - - validate-npm-package-license@3.0.4: - dependencies: - spdx-correct: 3.1.1 - spdx-expression-parse: 3.0.1 - - vary@1.1.2: {} - - vfile-location@3.2.0: {} - - vfile-message@2.0.4: - dependencies: - '@types/unist': 2.0.6 - unist-util-stringify-position: 2.0.3 - - vfile@4.2.1: - dependencies: - '@types/unist': 2.0.6 - is-buffer: 2.0.5 - unist-util-stringify-position: 2.0.3 - vfile-message: 2.0.4 - - vm-browserify@1.1.2: {} - - w3c-keyname@2.2.6: {} - - walker@1.0.8: - dependencies: - makeerror: 1.0.12 - - watchpack-chokidar2@2.0.1: - dependencies: - chokidar: 2.1.8 - transitivePeerDependencies: - - supports-color - optional: true - - watchpack@1.7.5: - dependencies: - graceful-fs: 4.2.10 - neo-async: 2.6.2 - optionalDependencies: - chokidar: 3.5.3 - watchpack-chokidar2: 2.0.1 - transitivePeerDependencies: - - supports-color - - watchpack@2.4.0: - dependencies: - glob-to-regexp: 0.4.1 - graceful-fs: 4.2.10 - - web-namespaces@1.1.4: {} - - web-resource-inliner@5.0.0: - dependencies: - ansi-colors: 4.1.3 - escape-goat: 3.0.0 - htmlparser2: 4.1.0 - mime: 2.6.0 - node-fetch: 2.6.9 - valid-data-url: 3.0.1 - transitivePeerDependencies: - - encoding - - web-streams-polyfill@4.0.0-beta.3: {} - - web-tree-sitter@0.20.7: - optional: true - - webidl-conversions@3.0.1: {} - - webidl-conversions@7.0.0: {} - - webpack-dev-middleware@3.7.3(webpack@4.46.0): - dependencies: - memory-fs: 0.4.1 - mime: 2.6.0 - mkdirp: 0.5.6 - range-parser: 1.2.1 - webpack: 4.46.0 - webpack-log: 2.0.0 - - webpack-dev-middleware@4.3.0(webpack@5.75.0): - dependencies: - colorette: 1.4.0 - mem: 8.1.1 - memfs: 3.4.13 - mime-types: 2.1.35 - range-parser: 1.2.1 - schema-utils: 3.1.1 - webpack: 5.75.0 - - webpack-filter-warnings-plugin@1.2.1(webpack@4.46.0): - dependencies: - webpack: 4.46.0 - - webpack-hot-middleware@2.25.3: - dependencies: - ansi-html-community: 0.0.8 - html-entities: 2.3.3 - strip-ansi: 6.0.1 - - webpack-log@2.0.0: - dependencies: - ansi-colors: 3.2.4 - uuid: 3.4.0 - - webpack-sources@1.4.3: - dependencies: - source-list-map: 2.0.1 - source-map: 0.6.1 - - webpack-sources@3.2.3: {} - - webpack-virtual-modules@0.2.2: - dependencies: - debug: 3.2.7(supports-color@5.5.0) - transitivePeerDependencies: - - supports-color - - webpack-virtual-modules@0.4.6: {} - - webpack@4.46.0: - dependencies: - '@webassemblyjs/ast': 1.9.0 - '@webassemblyjs/helper-module-context': 1.9.0 - '@webassemblyjs/wasm-edit': 1.9.0 - '@webassemblyjs/wasm-parser': 1.9.0 - acorn: 6.4.2 - ajv: 6.12.6 - ajv-keywords: 3.5.2(ajv@6.12.6) - chrome-trace-event: 1.0.3 - enhanced-resolve: 4.5.0 - eslint-scope: 4.0.3 - json-parse-better-errors: 1.0.2 - loader-runner: 2.4.0 - loader-utils: 1.4.2 - memory-fs: 0.4.1 - micromatch: 3.1.10 - mkdirp: 0.5.6 - neo-async: 2.6.2 - node-libs-browser: 2.2.1 - schema-utils: 1.0.0 - tapable: 1.1.3 - terser-webpack-plugin: 1.4.5(webpack@4.46.0) - watchpack: 1.7.5 - webpack-sources: 1.4.3 - transitivePeerDependencies: - - supports-color - - webpack@5.75.0: - 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.2 - acorn-import-assertions: 1.8.0(acorn@8.8.2) - browserslist: 4.21.5 - 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.75.0) - watchpack: 2.4.0 - webpack-sources: 3.2.3 - transitivePeerDependencies: - - '@swc/core' - - esbuild - - uglify-js - - whatwg-url@11.0.0: - dependencies: - tr46: 3.0.0 - webidl-conversions: 7.0.0 - - whatwg-url@5.0.0: - dependencies: - tr46: 0.0.3 - webidl-conversions: 3.0.1 - - which-boxed-primitive@1.0.2: - dependencies: - is-bigint: 1.0.4 - is-boolean-object: 1.1.2 - is-number-object: 1.0.7 - is-string: 1.0.7 - is-symbol: 1.0.4 - - which-collection@1.0.1: - dependencies: - is-map: 2.0.2 - is-set: 2.0.2 - is-weakmap: 2.0.1 - is-weakset: 2.0.2 - - which-typed-array@1.1.9: - dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.2 - for-each: 0.3.3 - gopd: 1.0.1 - has-tostringtag: 1.0.0 - is-typed-array: 1.1.10 - - which@1.3.1: - dependencies: - isexe: 2.0.0 - - which@2.0.2: - dependencies: - isexe: 2.0.0 - - wide-align@1.1.5: - dependencies: - string-width: 4.2.3 - - widest-line@3.1.0: - dependencies: - string-width: 4.2.3 - - winston-transport@4.5.0: - dependencies: - logform: 2.5.1 - readable-stream: 3.6.0 - triple-beam: 1.3.0 - - winston@3.8.2: - dependencies: - '@colors/colors': 1.5.0 - '@dabh/diagnostics': 2.0.3 - async: 3.2.4 - is-stream: 2.0.1 - logform: 2.5.1 - one-time: 1.0.0 - readable-stream: 3.6.0 - safe-stable-stringify: 2.4.2 - stack-trace: 0.0.10 - triple-beam: 1.3.0 - winston-transport: 4.5.0 - - word-wrap@1.2.3: {} - - wordwrap@1.0.0: {} - - worker-farm@1.7.0: - dependencies: - errno: 0.1.8 - - worker-rpc@0.1.1: - dependencies: - microevent.ts: 0.1.1 - - wrap-ansi@6.2.0: - dependencies: - ansi-styles: 4.3.0 - string-width: 4.2.3 - strip-ansi: 6.0.1 - - wrap-ansi@7.0.0: - dependencies: - ansi-styles: 4.3.0 - string-width: 4.2.3 - strip-ansi: 6.0.1 - - wrappy@1.0.2: {} - - write-file-atomic@3.0.3: - dependencies: - imurmurhash: 0.1.4 - is-typedarray: 1.0.0 - signal-exit: 3.0.7 - typedarray-to-buffer: 3.1.5 - - write-file-atomic@4.0.2: - dependencies: - imurmurhash: 0.1.4 - signal-exit: 3.0.7 - - ws@7.5.9: {} - - ws@8.11.0: {} - - ws@8.12.1: {} - - x-default-browser@0.4.0: - optionalDependencies: - default-browser-id: 1.0.4 - - xml-but-prettier@1.0.1: - dependencies: - repeat-string: 1.6.1 - - xml@1.0.1: {} - - xmlhttprequest-ssl@2.0.0: {} - - xtend@2.1.2: - dependencies: - object-keys: 0.4.0 - - xtend@4.0.2: {} - - y18n@4.0.3: {} - - y18n@5.0.8: {} - - yallist@2.1.2: {} - - yallist@3.1.1: {} - - yallist@4.0.0: {} - - yaml@1.10.2: {} - - yaml@2.2.1: {} - - yaml@2.2.2: {} - - yargs-parser@20.2.9: {} - - yargs-parser@21.1.1: {} - - yargs@16.2.0: - dependencies: - cliui: 7.0.4 - escalade: 3.1.1 - get-caller-file: 2.0.5 - require-directory: 2.1.1 - string-width: 4.2.3 - y18n: 5.0.8 - yargs-parser: 20.2.9 - - yargs@17.7.0: - 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.8 - yargs-parser: 21.1.1 - - yauzl@2.10.0: - dependencies: - buffer-crc32: 0.2.13 - fd-slicer: 1.1.0 - - ylru@1.3.2: {} - - yn@3.1.1: {} - - yocto-queue@0.1.0: {} - - zenscroll@4.0.2: {} - - zod@3.21.4: {} - - zwitch@1.0.5: {} diff --git a/examples/public-docs/pnpm-workspace.yaml b/examples/public-docs/pnpm-workspace.yaml deleted file mode 100644 index e9b0dad63..000000000 --- a/examples/public-docs/pnpm-workspace.yaml +++ /dev/null @@ -1,3 +0,0 @@ -packages: - - 'apps/*' - - 'packages/*' diff --git a/examples/public-docs/turbo.json b/examples/public-docs/turbo.json deleted file mode 100644 index 727d64ae7..000000000 --- a/examples/public-docs/turbo.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "$schema": "https://turborepo.org/schema.json", - "baseBranch": "origin/main", - "pipeline": { - "build": { - "outputs": ["dist/**", ".next/**", "public/dist/**"], - "dependsOn": ["^build"], - "env": ["NEXT_PUBLIC_API_HOST"] - }, - "api#migrate-dev": { - "cache": false - }, - "api#schedule-dev": { - "cache": false - }, - "dev": { - "cache": false - }, - "development": { - "dependsOn": ["api#migrate-dev", "api#schedule-dev", "dev"], - "cache": false - }, - "precommit": { - "outputs": [] - } - } -} diff --git a/examples/stripe-subscriptions/.dockerignore b/examples/stripe-subscriptions/.dockerignore deleted file mode 100644 index 7422e1e90..000000000 --- a/examples/stripe-subscriptions/.dockerignore +++ /dev/null @@ -1,27 +0,0 @@ -# dependencies -/node_modules - -# testing -/coverage - -# production -/dist - -# edtiors -.idea -.vscode - -# misc -.DS_Store -.dev -.turbo -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/.github/workflows/run-tests.yml b/examples/stripe-subscriptions/.github/workflows/run-tests.yml deleted file mode 100644 index a66f57f06..000000000 --- a/examples/stripe-subscriptions/.github/workflows/run-tests.yml +++ /dev/null @@ -1,25 +0,0 @@ -name: run-tests - -on: - pull_request: - branches: - - main - paths: - - 'apps/api' - - 'packages/**' - -jobs: - test: - runs-on: ubuntu-latest - strategy: - matrix: - node-version: [ 16.x ] - steps: - - uses: actions/checkout@v2 - - name: Test api using jest - uses: actions/setup-node@v3 - with: - node-version: ${{ matrix.node-version }} - cache: 'npm' - - run: npm install --ignore-scripts - - run: cd apps/api && npm run test diff --git a/examples/stripe-subscriptions/.github/workflows/storybook-deployment.yml b/examples/stripe-subscriptions/.github/workflows/storybook-deployment.yml deleted file mode 100644 index 2a1c164d3..000000000 --- a/examples/stripe-subscriptions/.github/workflows/storybook-deployment.yml +++ /dev/null @@ -1,39 +0,0 @@ -# Workflow name -name: 'storybook-deployment' - -# Event for the workflow -on: - push: - branches: [ main ] - paths: - - 'apps/web/src/components/**' - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - inputs: - logLevel: - description: 'Log level' - required: true - default: 'warning' - tags: - description: 'Test scenario' - required: false - -# List of jobs -jobs: - chromatic-deployment: - # Operating System - runs-on: ubuntu-latest - # Job steps - steps: - - uses: actions/checkout@v1 - - name: Install dependencies - run: yarn - # πŸ‘‡ Adds Chromatic as a step in the workflow - - name: Publish to Chromatic - uses: chromaui/action@v1 - # Chromatic GitHub Action options - with: - token: ${{ secrets.GITHUB_TOKEN }} - # πŸ‘‡ Chromatic projectToken, refer to the manage page to obtain it. - # https://www.chromatic.com/docs/github-actions/#:~:text=Project%20token%20secret&text=On%20GitHub%2C%20go%20to%20the,project%20token%20as%20the%20Secret. - projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }} diff --git a/examples/stripe-subscriptions/.gitignore b/examples/stripe-subscriptions/.gitignore deleted file mode 100644 index 7422e1e90..000000000 --- a/examples/stripe-subscriptions/.gitignore +++ /dev/null @@ -1,27 +0,0 @@ -# dependencies -/node_modules - -# testing -/coverage - -# production -/dist - -# edtiors -.idea -.vscode - -# misc -.DS_Store -.dev -.turbo -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/.husky/pre-commit b/examples/stripe-subscriptions/.husky/pre-commit deleted file mode 100755 index cb7094b16..000000000 --- a/examples/stripe-subscriptions/.husky/pre-commit +++ /dev/null @@ -1 +0,0 @@ -npx turbo run precommit --concurrency=1 diff --git a/examples/stripe-subscriptions/.npmrc b/examples/stripe-subscriptions/.npmrc deleted file mode 100644 index 609f49bda..000000000 --- a/examples/stripe-subscriptions/.npmrc +++ /dev/null @@ -1,4 +0,0 @@ -save-exact=true -package-import-method=copy -auto-install-peers=true -engine-strict=true diff --git a/examples/stripe-subscriptions/README.md b/examples/stripe-subscriptions/README.md deleted file mode 100644 index 0120a765d..000000000 --- a/examples/stripe-subscriptions/README.md +++ /dev/null @@ -1,39 +0,0 @@ -# [Documentation for example](https://ship.paralect.com/docs/examples/stripe-subscriptions/overview) - -## Starting application with Turborepo - -To run infra and all services -- just run: `pnpm start` πŸš€ - -### Turborepo: Running infra and services separately - -1. Start base infra services in Docker containers: - -```bash -pnpm run infra -``` - -2. Run services with Turborepo - -```bash -pnpm run turbo-start -``` - -## Using Ship with Docker - -To run infra and all services -- just run: `pnpm run docker` πŸš€ - -### Docker: Running infra and services separately - -1. Start base infra services in Docker containers: - -```bash -pnpm run infra -``` - -2. Run services you need: - -```bash -./bin/start.sh api web -``` - -You can also run infra services separately with `./bin/start.sh` bash script. diff --git a/examples/stripe-subscriptions/apps/api/.dockerignore b/examples/stripe-subscriptions/apps/api/.dockerignore deleted file mode 100644 index 924a89e08..000000000 --- a/examples/stripe-subscriptions/apps/api/.dockerignore +++ /dev/null @@ -1,23 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# production -/dist - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/apps/api/.env.example b/examples/stripe-subscriptions/apps/api/.env.example deleted file mode 100644 index d63eba521..000000000 --- a/examples/stripe-subscriptions/apps/api/.env.example +++ /dev/null @@ -1,58 +0,0 @@ -# Since the ".env" file is gitignored, you can use the ".env.example" file to -# build a new ".env" file when you clone the repo. Keep this file up-to-date -# when you add new variables to `.env`. - -# This file will be committed to version control, so make sure not to have any -# secrets in it. If you are cloning this repo, create a copy of this file named -# ".env" and populate it with your secrets. - -# When adding additional environment variables, the schema in "src/config/index.ts" -# should be updated accordingly. - -# If you are using Docker for the development process, -# you need to use the following variables for MongoDB and Redis: -# MONGO_URI=mongodb://root:root@mongo/api-development?authSource=admin&replicaSet=rs -# REDIS_URI=redis://:@redis:6379 - -# MongoDB -MONGO_URI=mongodb://root:root@localhost:27017/api-development?authSource=admin&replicaSet=rs&tls=false&directConnection=true -MONGO_DB_NAME=api-development - -# Redis -REDIS_URI=redis://:@localhost:6379 - -# Application URLs -API_URL=http://localhost:3001 -WEB_URL=http://localhost:3002 - -# Admin Key -# You can generate a new admin key on the command line with the following comand: -# openssl rand -base64 32 -# ADMIN_KEY= - -# Stripe -# If you are using Docker for the development process, -# you need to use the following variables for Stripe: -# STRIPE_WEBHOOK_SECRET=... -# STRIPE_SECRET_KEY=... - -# Resend -# If you are using Resend for the development process, -# you need to use the following variables: -# https://resend.com/docs/introduction -# RESEND_API_KEY=... -# Link for emails testing: -# https://resend.com/docs/dashboard/emails/send-test-emails - -# Cloud storage -# If you are using DO Spaces, then you can use the following guide to configure cloud storage environments: -# https://docs.digitalocean.com/products/spaces/reference/s3-sdk-examples/ -# CLOUD_STORAGE_ENDPOINT=https://....digitaloceanspaces.com -# CLOUD_STORAGE_ACCESS_KEY_ID=... -# CLOUD_STORAGE_SECRET_ACCESS_KEY=.. -# CLOUD_STORAGE_BUCKET=... - -# Token secret -# You can generate a new Token secret on the command line with the following comand: -# openssl rand -base64 32 -# JWT_SECRET= diff --git a/examples/stripe-subscriptions/apps/api/.eslintignore b/examples/stripe-subscriptions/apps/api/.eslintignore deleted file mode 100644 index 924a89e08..000000000 --- a/examples/stripe-subscriptions/apps/api/.eslintignore +++ /dev/null @@ -1,23 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# production -/dist - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/apps/api/.eslintrc.js b/examples/stripe-subscriptions/apps/api/.eslintrc.js deleted file mode 100644 index b08bd056f..000000000 --- a/examples/stripe-subscriptions/apps/api/.eslintrc.js +++ /dev/null @@ -1,5 +0,0 @@ -module.exports = { - root: true, - extends: ['custom/node'], - ignorePatterns: ['jest.config.js'], -}; diff --git a/examples/stripe-subscriptions/apps/api/.gitignore b/examples/stripe-subscriptions/apps/api/.gitignore deleted file mode 100644 index f9d6ffbfb..000000000 --- a/examples/stripe-subscriptions/apps/api/.gitignore +++ /dev/null @@ -1,28 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# production -/dist - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env -.env.* -!.env.example - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/apps/api/.npmrc b/examples/stripe-subscriptions/apps/api/.npmrc deleted file mode 100644 index 9e8e12ac0..000000000 --- a/examples/stripe-subscriptions/apps/api/.npmrc +++ /dev/null @@ -1,3 +0,0 @@ -save-exact=true -package-import-method=copy -auto-install-peers=true diff --git a/examples/stripe-subscriptions/apps/api/.prettierignore b/examples/stripe-subscriptions/apps/api/.prettierignore deleted file mode 100644 index 924a89e08..000000000 --- a/examples/stripe-subscriptions/apps/api/.prettierignore +++ /dev/null @@ -1,23 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# production -/dist - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/apps/api/.prettierrc.json b/examples/stripe-subscriptions/apps/api/.prettierrc.json deleted file mode 100644 index ba63a7c68..000000000 --- a/examples/stripe-subscriptions/apps/api/.prettierrc.json +++ /dev/null @@ -1 +0,0 @@ -"prettier-config-custom" diff --git a/examples/stripe-subscriptions/apps/api/Dockerfile b/examples/stripe-subscriptions/apps/api/Dockerfile deleted file mode 100644 index dab403da6..000000000 --- a/examples/stripe-subscriptions/apps/api/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -# BUILDER - Stage 1 -FROM node:20-alpine AS builder -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund turbo@1.10.3 -COPY . . -RUN turbo prune --scope=api --docker - -# INSTALLER - Stage 2 -FROM node:20-alpine AS installer -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund pnpm@8.15.7 - -# First install the dependencies (as they change less often) -COPY --from=builder /app/out/pnpm-lock.yaml ./pnpm-lock.yaml -RUN pnpm fetch - -# Build the project and its dependencies -COPY --from=builder /app/out/pnpm-workspace.yaml ./pnpm-workspace.yaml -COPY --from=builder /app/out/full/ . -RUN pnpm install -r --prefer-offline --ignore-scripts -COPY --from=builder /app/out/full/turbo.json ./turbo.json - -# DEVELOPMENT - Stage 3 -FROM installer AS development -CMD pnpm turbo run dev --scope=api - -# RUNNER - Stage 4 -FROM node:20-alpine AS runner -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund ts-node@10.9.1 - -# Don't run production as root -RUN addgroup --system --gid 1001 app -RUN adduser --system --uid 1001 app -USER app - -COPY --from=installer /app . - -EXPOSE 3001 - -CMD ["ts-node", "apps/api/src/app.ts"] diff --git a/examples/stripe-subscriptions/apps/api/Dockerfile.migrator b/examples/stripe-subscriptions/apps/api/Dockerfile.migrator deleted file mode 100644 index 7068d00f7..000000000 --- a/examples/stripe-subscriptions/apps/api/Dockerfile.migrator +++ /dev/null @@ -1,47 +0,0 @@ -# BUILDER - Stage 1 -FROM node:20-alpine AS builder -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund turbo@1.10.3 -COPY . . -RUN turbo prune --scope=api --docker - -# INSTALLER - Stage 2 -FROM node:20-alpine AS installer -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund pnpm@8.15.7 - -# First install the dependencies (as they change less often) -COPY --from=builder /app/out/pnpm-lock.yaml ./pnpm-lock.yaml -RUN pnpm fetch - -# Build the project and its dependencies -COPY --from=builder /app/out/pnpm-workspace.yaml ./pnpm-workspace.yaml -COPY --from=builder /app/out/full/ . -RUN pnpm install -r --prefer-offline --ignore-scripts -COPY --from=builder /app/out/full/turbo.json ./turbo.json - -# DEVELOPMENT - Stage 3 -FROM installer AS development -CMD pnpm turbo run api#migrate-dev --scope=api - -# RUNNER - Stage 4 -FROM node:20-alpine AS runner -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund ts-node@10.9.1 - -# Don't run production as root -RUN addgroup --system --gid 1001 app -RUN adduser --system --uid 1001 app -USER app - -COPY --from=installer /app . - -EXPOSE 3001 - -CMD ["ts-node", "apps/api/src/migrator.ts"] diff --git a/examples/stripe-subscriptions/apps/api/Dockerfile.scheduler b/examples/stripe-subscriptions/apps/api/Dockerfile.scheduler deleted file mode 100644 index a040bd865..000000000 --- a/examples/stripe-subscriptions/apps/api/Dockerfile.scheduler +++ /dev/null @@ -1,47 +0,0 @@ -# BUILDER - Stage 1 -FROM node:20-alpine AS builder -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund turbo@1.10.3 -COPY . . -RUN turbo prune --scope=api --docker - -# INSTALLER - Stage 2 -FROM node:20-alpine AS installer -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund pnpm@8.15.7 - -# First install the dependencies (as they change less often) -COPY --from=builder /app/out/pnpm-lock.yaml ./pnpm-lock.yaml -RUN pnpm fetch - -# Build the project and its dependencies -COPY --from=builder /app/out/pnpm-workspace.yaml ./pnpm-workspace.yaml -COPY --from=builder /app/out/full/ . -RUN pnpm install -r --prefer-offline --ignore-scripts -COPY --from=builder /app/out/full/turbo.json ./turbo.json - -# DEVELOPMENT - Stage 3 -FROM installer AS development -CMD pnpm turbo run dev --scope=api - -# RUNNER - Stage 4 -FROM node:20-alpine AS runner -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund ts-node@10.9.1 - -# Don't run production as root -RUN addgroup --system --gid 1001 app -RUN adduser --system --uid 1001 app -USER app - -COPY --from=installer /app . - -EXPOSE 3001 - -CMD ["ts-node", "apps/api/src/scheduler.ts"] diff --git a/examples/stripe-subscriptions/apps/api/README.md b/examples/stripe-subscriptions/apps/api/README.md deleted file mode 100644 index 9f825af7a..000000000 --- a/examples/stripe-subscriptions/apps/api/README.md +++ /dev/null @@ -1,37 +0,0 @@ -# Api Starter - -Fully featured [Koa.JS](http://koajs.com/) restful api starter application. -The goal of this project is to solve all routine tasks and keep your focus on the product and business logic of the application, not on the common things, such logging, configuration, dev/production environments - -Out of the box support following features: - -1. Config management. -2. Configured console logger -3. Automatic application restart when code changes with [Nodemon](https://github.com/remy/nodemon) -4. MongoDB configuration -5. Docker configuration for development and production environments. -6. Code linting based on [ESLint](https://eslint.org/). -7. Simplified request data validation and clean up based on [joi](https://github.com/hapijs/joi) and [koa-validate](https://www.npmjs.com/package/koa-validate) -8. Production ready account API resource (singup, signin, forgot password, reset password functionality) -9. Access token based authentication. -10. WebSocket server (socket.io) -11. Database migrations -12. Scheduler - -### Start application. - -```bash -docker-compose up --build -``` - -To start the project not in the docker container just run: `npm run dev`. This command will start the application on port `3001` and will automatically restart whenever you change any file in `./src` directory. - -### Important notes - -You need to set `APP_ENV` variable in build args in a place where you deploy application. It is responsible for the config file from `environment` folder that will be taken when building your application - -| APP_ENV | File | -| ----------- | ---------------- | -| development | development.json | -| staging | staging.json | -| production | production.json | diff --git a/examples/stripe-subscriptions/apps/api/jest.config.js b/examples/stripe-subscriptions/apps/api/jest.config.js deleted file mode 100644 index 24652ee74..000000000 --- a/examples/stripe-subscriptions/apps/api/jest.config.js +++ /dev/null @@ -1,17 +0,0 @@ -/** @type {import('jest').Config} */ -const config = { - preset: '@shelf/jest-mongodb', - verbose: true, - testEnvironment: 'node', - testMatch: ['**/?(*.)+(spec.ts)'], - transform: { - '^.+\\.(ts)$': 'ts-jest', - }, - watchPathIgnorePatterns: ['globalConfig'], - roots: [''], - modulePaths: ['src'], - moduleDirectories: ['node_modules'], - testTimeout: 10000, -}; - -module.exports = config; diff --git a/examples/stripe-subscriptions/apps/api/package.json b/examples/stripe-subscriptions/apps/api/package.json deleted file mode 100644 index 7a6ceb31b..000000000 --- a/examples/stripe-subscriptions/apps/api/package.json +++ /dev/null @@ -1,100 +0,0 @@ -{ - "name": "api", - "version": "1.0.0", - "description": "Koa.js API", - "author": "Paralect", - "license": "MIT", - "scripts": { - "build": "tsc", - "test": "run-s test:**", - "test:tsc": "tsc --noEmit", - "test:eslint": "eslint \"**/*.ts\" --fix", - "test:unit": "jest --runInBand -c ./jest.config.js --collectCoverage false", - "dev": "NODE_ENV=development APP_ENV=development tsx watch --env-file=.env src/app.ts", - "start": "ts-node src/app.ts", - "migrate-dev": "NODE_ENV=development APP_ENV=development ts-node src/migrator.ts", - "migrate": "ts-node src/migrator.ts", - "schedule-dev": "NODE_ENV=development APP_ENV=development tsx watch --env-file=.env src/scheduler.ts", - "schedule": "ts-node src/scheduler.ts", - "precommit": "lint-staged" - }, - "dependencies": { - "@aws-sdk/client-s3": "3.540.0", - "@aws-sdk/lib-storage": "3.540.0", - "@aws-sdk/s3-request-presigner": "3.540.0", - "@koa/cors": "4.0.0", - "@koa/multer": "3.0.2", - "@koa/router": "12.0.0", - "@paralect/node-mongo": "3.2.0", - "@socket.io/redis-adapter": "8.1.0", - "@socket.io/redis-emitter": "5.1.0", - "app-constants": "workspace:*", - "app-types": "workspace:*", - "bcryptjs": "2.4.3", - "dayjs": "1.11.10", - "dotenv": "16.0.3", - "google-auth-library": "8.7.0", - "ioredis": "5.3.2", - "jsonwebtoken": "9.0.0", - "koa": "2.14.1", - "koa-bodyparser": "4.3.0", - "koa-compose": "4.1.0", - "koa-helmet": "6.1.0", - "koa-logger": "3.2.1", - "koa-mount": "4.0.0", - "koa-qs": "3.0.0", - "koa-ratelimit": "5.0.1", - "lodash": "4.17.21", - "mailer": "workspace:*", - "mixpanel": "0.17.0", - "module-alias": "2.2.2", - "node-schedule": "2.1.1", - "npm": "9.6.1", - "psl": "1.9.0", - "resend": "3.2.0", - "schemas": "workspace:*", - "socket.io": "4.6.1", - "stripe": "15.7.0", - "winston": "3.8.2", - "zod": "3.21.4" - }, - "devDependencies": { - "@shelf/jest-mongodb": "4.2.0", - "@types/bcryptjs": "2.4.2", - "@types/jest": "29.5.12", - "@types/jsonwebtoken": "9.0.6", - "@types/koa": "2.13.5", - "@types/koa-bodyparser": "4.3.10", - "@types/koa-compose": "3.2.5", - "@types/koa-helmet": "6.0.4", - "@types/koa-logger": "3.1.2", - "@types/koa-mount": "4.0.2", - "@types/koa-ratelimit": "5.0.0", - "@types/koa__cors": "3.3.1", - "@types/koa__multer": "2.0.4", - "@types/koa__router": "12.0.0", - "@types/lodash": "4.14.191", - "@types/module-alias": "2.0.1", - "@types/node": "20.11.1", - "@types/node-schedule": "2.1.0", - "@types/psl": "1.1.0", - "eslint": "8.56.0", - "eslint-config-custom": "workspace:*", - "jest": "29.7.0", - "lint-staged": "13.2.0", - "mongodb-memory-server": "8.12.0", - "npm-run-all": "4.1.5", - "prettier": "3.2.5", - "prettier-config-custom": "workspace:*", - "ts-jest": "29.1.2", - "ts-node": "10.9.1", - "tsconfig": "workspace:*", - "tsx": "4.20.4", - "typescript": "5.2.2" - }, - "lint-staged": { - "*.ts": [ - "eslint --fix" - ] - } -} diff --git a/examples/stripe-subscriptions/apps/api/src/app.ts b/examples/stripe-subscriptions/apps/api/src/app.ts deleted file mode 100644 index c107a4f92..000000000 --- a/examples/stripe-subscriptions/apps/api/src/app.ts +++ /dev/null @@ -1,81 +0,0 @@ -/* eslint-disable simple-import-sort/imports, import/newline-after-import, import/first */ -// Allows requiring modules relative to /src folder, -// For example, require('lib/mongo/idGenerator') -// All options can be found here: https://gist.github.com/branneman/8048520 -import moduleAlias from 'module-alias'; -moduleAlias.addPath(__dirname); -moduleAlias(); // read aliases from package json - -import 'dotenv/config'; - -import cors from '@koa/cors'; -import http from 'http'; -import bodyParser from 'koa-bodyparser'; -import helmet from 'koa-helmet'; -import koaLogger from 'koa-logger'; -import qs from 'koa-qs'; - -import { socketService } from 'services'; -import routes from 'routes'; - -import config from 'config'; - -import ioEmitter from 'io-emitter'; -import redisClient, { redisErrorHandler } from 'redis-client'; - -import logger from 'logger'; - -import { AppKoa } from 'types'; - -const initKoa = () => { - const app = new AppKoa(); - - app.use(cors({ credentials: true })); - app.use(helmet()); - qs(app); - app.use( - bodyParser({ - enableTypes: ['json', 'form', 'text'], - onerror: (err: Error, ctx) => { - const errText: string = err.stack || err.toString(); - logger.warn(`Unable to parse request body. ${errText}`); - ctx.throw(422, 'Unable to parse request JSON.'); - }, - }), - ); - app.use( - koaLogger({ - transporter: (message, args) => { - const [, method, endpoint, status, time, length] = args; - - logger.http(message.trim(), { method, endpoint, status, time, length }); - }, - }), - ); - - routes(app); - - return app; -}; - -const app = initKoa(); - -(async () => { - const server = http.createServer(app.callback()); - - if (config.REDIS_URI) { - await redisClient - .connect() - .then(() => { - ioEmitter.initClient(); - socketService(server); - }) - .catch(redisErrorHandler); - } - - server.listen(config.PORT, () => { - logger.info(`API server is listening on ${config.PORT} in ${config.APP_ENV} environment`); - }); -})(); - -export default app; diff --git a/examples/stripe-subscriptions/apps/api/src/config/index.ts b/examples/stripe-subscriptions/apps/api/src/config/index.ts deleted file mode 100644 index 1d5103151..000000000 --- a/examples/stripe-subscriptions/apps/api/src/config/index.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { z } from 'zod'; - -import { configUtil } from 'utils'; - -/** - * Specify your environment variables schema here. - * This way you can ensure the app isn't built with invalid env vars. - */ -const schema = z.object({ - APP_ENV: z.enum(['development', 'staging', 'production']).default('development'), - IS_DEV: z.preprocess(() => process.env.APP_ENV === 'development', z.boolean()), - PORT: z.coerce.number().optional().default(3001), - API_URL: z.string(), - WEB_URL: z.string(), - MONGO_URI: z.string(), - MONGO_DB_NAME: z.string(), - JWT_SECRET: z.string(), - REDIS_URI: z.string().optional(), - REDIS_ERRORS_POLICY: z.enum(['throw', 'log']).default('log'), - RESEND_API_KEY: z.string().optional(), - ADMIN_KEY: z.string().optional(), - MIXPANEL_API_KEY: z.string().optional(), - CLOUD_STORAGE_ENDPOINT: z.string().optional(), - CLOUD_STORAGE_BUCKET: z.string().optional(), - CLOUD_STORAGE_ACCESS_KEY_ID: z.string().optional(), - CLOUD_STORAGE_SECRET_ACCESS_KEY: z.string().optional(), - GOOGLE_CLIENT_ID: z.string().optional(), - GOOGLE_CLIENT_SECRET: z.string().optional(), - STRIPE_SECRET_KEY: z.string().default(''), - STRIPE_WEBHOOK_SECRET: z.string().default(''), -}); - -type Config = z.infer; - -const config = configUtil.validateConfig(schema); - -export default config; diff --git a/examples/stripe-subscriptions/apps/api/src/config/retool/users-management.json b/examples/stripe-subscriptions/apps/api/src/config/retool/users-management.json deleted file mode 100644 index 4e098ebeb..000000000 --- a/examples/stripe-subscriptions/apps/api/src/config/retool/users-management.json +++ /dev/null @@ -1,167 +0,0 @@ -{ - "uuid": "d0f48596-326b-11ed-b65c-47fd8dd25b08", - "page": { - "id": 93448628, - "data": { - "appState": "[\"~#iR\",[\"^ \",\"n\",\"appTemplate\",\"v\",[\"^ \",\"isFetching\",false,\"plugins\",[\"~#iOM\",[\"shadowLogin\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"shadowLogin\",\"type\",\"datasource\",\"subtype\",\"RESTQuery\",\"namespace\",null,\"resourceName\",\"bb8ab17c-b112-4444-b054-3067ca2b62dc\",\"resourceDisplayName\",\"shadowLogin\",\"template\",[\"^3\",[\"queryRefreshTime\",\"\",\"paginationLimit\",\"\",\"body\",\"[{\\\"key\\\":\\\"id\\\",\\\"value\\\":\\\"\\\\\\\"6315f482ec588c3bcb5b07a8\\\\\\\"\\\"}]\",\"lastReceivedFromResourceAt\",null,\"queryDisabledMessage\",\"\",\"successMessage\",\"\",\"queryDisabled\",\"\",\"playgroundQuerySaveId\",\"latest\",\"resourceNameOverride\",\"\",\"runWhenModelUpdates\",false,\"paginationPaginationField\",\"\",\"headers\",\"\",\"showFailureToaster\",true,\"paginationEnabled\",false,\"query\",\"admin/account/shadow-login\",\"playgroundQueryUuid\",\"\",\"playgroundQueryId\",null,\"error\",null,\"privateParams\",[\"~#iL\",[]],\"runWhenPageLoadsDelay\",\"\",\"data\",null,\"importedQueryInputs\",[\"^3\",[]],\"isImported\",false,\"showSuccessToaster\",true,\"cacheKeyTtl\",\"\",\"cookies\",\"\",\"metadata\",null,\"changesetObject\",\"\",\"errorTransformer\",\"// The variable 'data' allows you to reference the request's data in the transformer. \\n// example: return data.find(element => element.isError)\\nreturn data.error\",\"confirmationMessage\",null,\"isFetching\",false,\"changeset\",\"\",\"rawData\",null,\"queryTriggerDelay\",\"0\",\"resourceTypeOverride\",\"\",\"watchedParams\",[\"^:\",[]],\"enableErrorTransformer\",false,\"showLatestVersionUpdatedWarning\",false,\"paginationDataField\",\"\",\"timestamp\",0,\"importedQueryDefaults\",[\"^3\",[]],\"enableTransformer\",false,\"showUpdateSetValueDynamicallyToggle\",true,\"runWhenPageLoads\",false,\"transformer\",\"// type your code here\\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\\nreturn data\",\"events\",[\"^:\",[]],\"queryTimeout\",\"10000\",\"requireConfirmation\",false,\"type\",\"POST\",\"queryFailureConditions\",\"\",\"changesetIsObject\",false,\"enableCaching\",false,\"allowedGroups\",[\"^:\",[]],\"bodyType\",\"json\",\"queryThrottleTime\",\"750\",\"updateSetValueDynamically\",false,\"notificationDuration\",\"\"]],\"style\",null,\"position2\",null,\"mobilePosition2\",null,\"mobileAppPosition\",null,\"tabIndex\",null,\"container\",\"\",\"createdAt\",\"~m1662967609500\",\"updatedAt\",\"~m1662977816251\",\"folder\",\"apiUser\",\"screen\",null]]],\"list\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"list\",\"^4\",\"datasource\",\"^5\",\"NoSqlQuery\",\"^6\",null,\"^7\",\"a968b944-81f3-45be-9acc-e92dd5356d4a\",\"^8\",null,\"^9\",[\"^3\",[\"queryRefreshTime\",\"\",\"method\",\"find\",\"lastReceivedFromResourceAt\",null,\"aggregation\",\"\",\"queryDisabledMessage\",\"\",\"successMessage\",\"\",\"queryDisabled\",\"\",\"playgroundQuerySaveId\",\"latest\",\"resourceNameOverride\",\"\",\"runWhenModelUpdates\",true,\"showFailureToaster\",true,\"query\",\"{{searchQuery.value}}\",\"playgroundQueryUuid\",\"\",\"playgroundQueryId\",null,\"error\",null,\"update\",\"\",\"privateParams\",[\"^:\",[]],\"runWhenPageLoadsDelay\",\"\",\"useRawCollectionName\",false,\"data\",null,\"operations\",\"\",\"importedQueryInputs\",[\"^3\",[]],\"isImported\",false,\"showSuccessToaster\",true,\"cacheKeyTtl\",\"\",\"projection\",\"{passwordHash: 0 }\",\"metadata\",null,\"changesetObject\",\"\",\"errorTransformer\",\"// The variable 'data' allows you to reference the request's data in the transformer. \\n// example: return data.find(element => element.isError)\\nreturn data.error\",\"confirmationMessage\",null,\"isFetching\",false,\"changeset\",\"\",\"rawData\",null,\"queryTriggerDelay\",\"0\",\"resourceTypeOverride\",null,\"watchedParams\",[\"^:\",[]],\"enableErrorTransformer\",false,\"sortBy\",\"\",\"showLatestVersionUpdatedWarning\",false,\"timestamp\",0,\"importedQueryDefaults\",[\"^3\",[]],\"enableTransformer\",false,\"showUpdateSetValueDynamicallyToggle\",true,\"runWhenPageLoads\",false,\"transformer\",\"// type your code here\\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\\nreturn data\",\"events\",[\"^:\",[]],\"insert\",\"\",\"queryTimeout\",\"10000\",\"field\",\"\",\"requireConfirmation\",false,\"queryFailureConditions\",\"\",\"database\",\"\",\"changesetIsObject\",false,\"limit\",\"\",\"enableCaching\",false,\"allowedGroups\",[\"^:\",[]],\"options\",\"\",\"collection\",\"users\",\"skip\",\"\",\"queryThrottleTime\",\"750\",\"updateSetValueDynamically\",false,\"notificationDuration\",\"\"]],\"^;\",null,\"^<\",null,\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653827447242\",\"^B\",\"~m1653842042013\",\"^C\",\"dbUser\",\"^D\",null]]],\"searchQuery\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"searchQuery\",\"^4\",\"function\",\"^5\",\"Function\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"funcBody\",\"\\nconst escapeRegExp = (string) => {\\n return string.replace(/[.*+?^${}()|[\\\\]\\\\\\\\]/g, '\\\\\\\\$&'); // $& means the whole matched string\\n}\\n\\nconst regexQuery = {\\n $regex: `.*${escapeRegExp({{search_bar.value}})}.*`,\\n $options:'i'\\n}\\n\\nreturn {\\n $or: [\\n { _id: regexQuery },\\n { firstName: regexQuery },\\n { lastName: regexQuery },\\n { email: regexQuery },\\n ],\\n}\\n\\n\",\"value\",\"\"]],\"^;\",null,\"^<\",null,\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653831767909\",\"^B\",\"~m1653841921344\",\"^C\",\"dbUser\",\"^D\",null]]],\"update\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"update\",\"^4\",\"datasource\",\"^5\",\"RESTQuery\",\"^6\",null,\"^7\",\"2cb1c339-d07c-4308-92cd-78eeac59972e\",\"^8\",null,\"^9\",[\"^3\",[\"queryRefreshTime\",\"\",\"paginationLimit\",\"\",\"body\",\"[{\\\"key\\\":\\\"firstName\\\",\\\"value\\\":\\\"{{firstNameInput.value}}\\\"},{\\\"key\\\":\\\"lastName\\\",\\\"value\\\":\\\"{{lastNameInput.value}}\\\"},{\\\"key\\\":\\\"email\\\",\\\"value\\\":\\\"{{emailInput.value}}\\\"}]\",\"lastReceivedFromResourceAt\",null,\"queryDisabledMessage\",\"\",\"successMessage\",\"\",\"queryDisabled\",\"\",\"playgroundQuerySaveId\",\"latest\",\"resourceNameOverride\",\"\",\"runWhenModelUpdates\",false,\"paginationPaginationField\",\"\",\"headers\",\"\",\"showFailureToaster\",true,\"paginationEnabled\",false,\"query\",\"admin/users/{{usersTable.selectedRow.data._id}}\",\"playgroundQueryUuid\",\"\",\"playgroundQueryId\",null,\"error\",null,\"privateParams\",[\"^:\",[]],\"runWhenPageLoadsDelay\",\"\",\"data\",null,\"importedQueryInputs\",[\"^3\",[]],\"isImported\",false,\"showSuccessToaster\",true,\"cacheKeyTtl\",\"\",\"cookies\",\"\",\"metadata\",null,\"changesetObject\",\"\",\"errorTransformer\",\"// The variable 'data' allows you to reference the request's data in the transformer. \\n// example: return data.find(element => element.isError)\\nreturn data.error\",\"confirmationMessage\",null,\"isFetching\",false,\"changeset\",\"\",\"rawData\",null,\"queryTriggerDelay\",\"0\",\"resourceTypeOverride\",null,\"watchedParams\",[\"^:\",[]],\"enableErrorTransformer\",false,\"showLatestVersionUpdatedWarning\",false,\"paginationDataField\",\"\",\"timestamp\",0,\"importedQueryDefaults\",[\"^3\",[]],\"enableTransformer\",false,\"showUpdateSetValueDynamicallyToggle\",true,\"runWhenPageLoads\",false,\"transformer\",\"// type your code here\\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\\nreturn data\",\"events\",[\"^:\",[[\"^3\",[\"event\",\"success\",\"type\",\"script\",\"method\",\"run\",\"pluginId\",\"\",\"targetId\",null,\"params\",[\"^3\",[\"src\",\"userUpdateModal.close();\\nlist.trigger();\"]],\"waitType\",\"debounce\",\"waitMs\",\"0\"]]]],\"queryTimeout\",\"10000\",\"requireConfirmation\",false,\"type\",\"PUT\",\"queryFailureConditions\",\"\",\"changesetIsObject\",false,\"enableCaching\",false,\"allowedGroups\",[\"^:\",[]],\"bodyType\",\"json\",\"queryThrottleTime\",\"750\",\"updateSetValueDynamically\",false,\"notificationDuration\",\"\"]],\"^;\",null,\"^<\",null,\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653836736485\",\"^B\",\"~m1654498069760\",\"^C\",\"apiUser\",\"^D\",null]]],\"remove\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"remove\",\"^4\",\"datasource\",\"^5\",\"RESTQuery\",\"^6\",null,\"^7\",\"2cb1c339-d07c-4308-92cd-78eeac59972e\",\"^8\",null,\"^9\",[\"^3\",[\"queryRefreshTime\",\"\",\"paginationLimit\",\"\",\"body\",\"\",\"lastReceivedFromResourceAt\",null,\"queryDisabledMessage\",\"\",\"successMessage\",\"\",\"queryDisabled\",\"\",\"playgroundQuerySaveId\",\"latest\",\"resourceNameOverride\",\"\",\"runWhenModelUpdates\",false,\"paginationPaginationField\",\"\",\"headers\",\"\",\"showFailureToaster\",true,\"paginationEnabled\",false,\"query\",\"admin/users/{{usersTable.selectedRow.data._id}}\",\"playgroundQueryUuid\",\"\",\"playgroundQueryId\",null,\"error\",null,\"privateParams\",[\"^:\",[]],\"runWhenPageLoadsDelay\",\"\",\"data\",null,\"importedQueryInputs\",[\"^3\",[]],\"isImported\",false,\"showSuccessToaster\",true,\"cacheKeyTtl\",\"\",\"cookies\",\"\",\"metadata\",null,\"changesetObject\",\"\",\"errorTransformer\",\"// The variable 'data' allows you to reference the request's data in the transformer. \\n// example: return data.find(element => element.isError)\\nreturn data.error\",\"confirmationMessage\",null,\"isFetching\",false,\"changeset\",\"\",\"rawData\",null,\"queryTriggerDelay\",\"0\",\"resourceTypeOverride\",null,\"watchedParams\",[\"^:\",[]],\"enableErrorTransformer\",false,\"showLatestVersionUpdatedWarning\",false,\"paginationDataField\",\"\",\"timestamp\",0,\"importedQueryDefaults\",[\"^3\",[]],\"enableTransformer\",false,\"showUpdateSetValueDynamicallyToggle\",true,\"runWhenPageLoads\",false,\"transformer\",\"// type your code here\\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\\nreturn data\",\"events\",[\"^:\",[[\"^3\",[\"event\",\"success\",\"type\",\"script\",\"method\",\"run\",\"pluginId\",\"\",\"targetId\",null,\"params\",[\"^3\",[\"src\",\"list.trigger()\"]],\"waitType\",\"debounce\",\"waitMs\",\"0\"]]]],\"queryTimeout\",\"10000\",\"requireConfirmation\",false,\"type\",\"DELETE\",\"queryFailureConditions\",\"\",\"changesetIsObject\",false,\"enableCaching\",false,\"allowedGroups\",[\"^:\",[]],\"bodyType\",\"json\",\"queryThrottleTime\",\"750\",\"updateSetValueDynamically\",false,\"notificationDuration\",\"\"]],\"^;\",null,\"^<\",null,\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653840309251\",\"^B\",\"~m1654498060079\",\"^C\",\"apiUser\",\"^D\",null]]],\"verifyEmail\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"verifyEmail\",\"^4\",\"datasource\",\"^5\",\"RESTQuery\",\"^6\",null,\"^7\",\"2cb1c339-d07c-4308-92cd-78eeac59972e\",\"^8\",null,\"^9\",[\"^3\",[\"queryRefreshTime\",\"\",\"paginationLimit\",\"\",\"body\",\"\",\"lastReceivedFromResourceAt\",null,\"queryDisabledMessage\",\"\",\"successMessage\",\"\",\"queryDisabled\",\"\",\"playgroundQuerySaveId\",\"latest\",\"resourceNameOverride\",\"\",\"runWhenModelUpdates\",false,\"paginationPaginationField\",\"\",\"headers\",\"\",\"showFailureToaster\",true,\"paginationEnabled\",false,\"query\",\"account/verify-email/?token={{usersTable.selectedRow.data.signupToken}}\",\"playgroundQueryUuid\",\"\",\"playgroundQueryId\",null,\"error\",null,\"privateParams\",[\"^:\",[]],\"runWhenPageLoadsDelay\",\"\",\"data\",null,\"importedQueryInputs\",[\"^3\",[]],\"isImported\",false,\"showSuccessToaster\",true,\"cacheKeyTtl\",\"\",\"cookies\",\"\",\"metadata\",null,\"changesetObject\",\"\",\"errorTransformer\",\"// The variable 'data' allows you to reference the request's data in the transformer. \\n// example: return data.find(element => element.isError)\\nreturn data.error\",\"confirmationMessage\",null,\"isFetching\",false,\"changeset\",\"\",\"rawData\",null,\"queryTriggerDelay\",\"0\",\"resourceTypeOverride\",null,\"watchedParams\",[\"^:\",[]],\"enableErrorTransformer\",false,\"showLatestVersionUpdatedWarning\",false,\"paginationDataField\",\"\",\"timestamp\",0,\"importedQueryDefaults\",[\"^3\",[]],\"enableTransformer\",false,\"showUpdateSetValueDynamicallyToggle\",true,\"runWhenPageLoads\",false,\"transformer\",\"// type your code here\\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\\nreturn data\",\"events\",[\"^:\",[[\"^3\",[\"event\",\"success\",\"type\",\"script\",\"method\",\"run\",\"pluginId\",\"\",\"targetId\",null,\"params\",[\"^3\",[\"src\",\"list.trigger()\"]],\"waitType\",\"debounce\",\"waitMs\",\"0\"]],[\"^3\",[\"event\",\"failure\",\"type\",\"script\",\"method\",\"run\",\"pluginId\",\"\",\"targetId\",null,\"params\",[\"^3\",[\"src\",\"list.trigger()\"]],\"waitType\",\"debounce\",\"waitMs\",\"0\"]]]],\"queryTimeout\",\"10000\",\"requireConfirmation\",false,\"type\",\"GET\",\"queryFailureConditions\",\"\",\"changesetIsObject\",false,\"enableCaching\",false,\"allowedGroups\",[\"^:\",[]],\"bodyType\",\"json\",\"queryThrottleTime\",\"750\",\"updateSetValueDynamically\",false,\"notificationDuration\",\"\"]],\"^;\",null,\"^<\",null,\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653838337897\",\"^B\",\"~m1653842008069\",\"^C\",\"apiUser\",\"^D\",null]]],\"welcomeText\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"welcomeText\",\"^4\",\"widget\",\"^5\",\"TextWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"heightType\",\"auto\",\"horizontalAlign\",\"left\",\"hidden\",false,\"imageWidth\",\"fit\",\"showInEditor\",false,\"verticalAlign\",\"bottom\",\"_defaultValue\",\"\",\"tooltipText\",\"\",\"value\",\"#### Users Management\",\"disableMarkdown\",false,\"overflowType\",\"scroll\",\"maintainSpaceWhenHidden\",false]],\"^;\",null,\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"\",\"rowGroup\",\"body\",\"subcontainer\",\"header\",\"row\",0,\"col\",0,\"height\",0.6,\"width\",4,\"tabNum\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653827091457\",\"^B\",\"~m1653834455274\",\"^C\",\"\",\"^D\",null]]],\"usersTable\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"usersTable\",\"^4\",\"widget\",\"^5\",\"TableWidget\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"showCustomButton\",true,\"sortMappedValue\",[\"^3\",[]],\"_filteredSortedRenderedDataWithTypes\",null,\"heightType\",\"fixed\",\"normalizedData\",null,\"rowHeight\",\"standard\",\"saveChangesDisabled\",\"\",\"columnTypeProperties\",[\"^3\",[]],\"columnWidths\",[\"^:\",[]],\"showSummaryFooter\",false,\"disableRowSelectInteraction\",false,\"columnWidthsMobile\",[\"^:\",[]],\"hasNextAfterCursor\",\"\",\"columnTypeSpecificExtras\",[\"^3\",[]],\"onRowAdded\",\"\",\"columnHeaderNames\",[\"^3\",[]],\"alwaysShowPaginator\",false,\"columnColors\",[\"^3\",[\"lastName\",\"\",\"signupToken\",\"\",\"createdOn\",\"\",\"passwordHash\",\"\",\"deletedOn\",\"\",\"lastRequest\",\"\",\"isEmailVerified\",\"\",\"_id\",\"\",\"updatedOn\",\"\",\"firstName\",\"\",\"email\",\"\"]],\"columnFrozenAlignments\",[\"^3\",[]],\"allowMultiRowSelect\",false,\"columnFormats\",[\"^3\",[]],\"columnRestrictedEditing\",[\"^3\",[]],\"showFilterButton\",true,\"_columnVisibility\",[\"^3\",[\"lastRequest\",true,\"signupToken\",false]],\"_columnSummaryTypes\",[\"^3\",[]],\"_columnsWithLegacyBackgroundColor\",[\"~#iOS\",[]],\"showAddRowButton\",false,\"_unfilteredSelectedIndex\",null,\"nextBeforeCursor\",\"\",\"columnVisibility\",[\"^3\",[]],\"selectedPageIndex\",\"0\",\"applyDynamicSettingsToColumnOrder\",true,\"rowColor\",[],\"actionButtonColumnName\",\"Actions\",\"resetAfterSave\",true,\"filterStackType\",\"and\",\"downloadRawData\",false,\"showFetchingIndicator\",true,\"serverPaginated\",false,\"data\",\"{{list.data}}\",\"displayedData\",null,\"actionButtons\",[\"^:\",[]],\"actionButtonSelectsRow\",true,\"selectRowByDefault\",true,\"defaultSortByColumn\",\"\",\"paginationOffset\",0,\"columnAlignment\",[\"^3\",[]],\"columnSummaries\",[\"^ \"],\"showBoxShadow\",true,\"sortedDesc\",false,\"customButtonName\",\"\",\"columnMappersRenderAsHTML\",[\"^3\",[]],\"showRefreshButton\",true,\"pageSize\",\"20\",\"useDynamicColumnSettings\",false,\"actionButtonPosition\",\"left\",\"dynamicRowHeights\",false,\"bulkUpdateAction\",\"\",\"afterCursor\",\"\",\"onCustomButtonPressQueryName\",\"\",\"changeSet\",[\"^ \"],\"sortedColumn\",\"\",\"_columnSummaryValues\",[\"^3\",[]],\"checkboxRowSelect\",true,\"_compatibilityMode\",false,\"showColumnBorders\",false,\"clearSelectionLabel\",\"Clear selection\",\"_renderedDataWithTypes\",null,\"columnAllowOverflow\",[\"^3\",[]],\"beforeCursor\",\"\",\"serverPaginationType\",\"limitOffsetBased\",\"onRowSelect\",\"\",\"showDownloadButton\",true,\"selectedIndex\",null,\"defaultSortDescending\",false,\"_sortedDisplayedDataIndices\",null,\"dynamicColumnSettings\",null,\"totalRowCount\",\"\",\"recordUpdates\",[],\"newRow\",null,\"emptyMessage\",\"No rows found\",\"columnEditable\",[\"^3\",[\"_id\",false,\"firstName\",false,\"lastRequest\",false,\"updatedOn\",false]],\"_viewerColumnSummaryTypes\",[\"^ \"],\"filters\",[],\"displayedDataIndices\",null,\"disableSorting\",[\"^3\",[]],\"columnMappers\",[\"^3\",[]],\"showClearSelection\",false,\"doubleClickToEdit\",true,\"overflowType\",\"pagination\",\"_reverseSortedDisplayedDataIndices\",null,\"showTableBorder\",true,\"selectedCell\",[\"^ \",\"index\",null,\"data\",null,\"columnName\",null],\"columns\",[\"^:\",[]],\"defaultSelectedRow\",\"first\",\"freezeActionButtonColumns\",false,\"sort\",null,\"_columns\",[\"^:\",[]],\"sortByRawValue\",[\"^3\",[]],\"calculatedColumns\",[\"^:\",[]],\"selectedRow\",[\"^ \",\"^K\",null,\"^L\",null],\"showPaginationOnTop\",false,\"_reverseDisplayedDataIndices\",null,\"nextAfterCursor\",\"\",\"useCompactMode\",false]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"\",\"^E\",\"body\",\"^F\",\"\",\"row\",2.3999999999999995,\"col\",0,\"^G\",10.399999999999999,\"^H\",8,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653828995649\",\"^B\",\"~m1654498035519\",\"^C\",\"\",\"^D\",null]]],\"search_bar\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"search_bar\",\"^4\",\"widget\",\"^5\",\"TextInputWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"spellCheck\",false,\"readOnly\",false,\"iconAfter\",\"\",\"showCharacterCount\",false,\"autoComplete\",false,\"maxLength\",null,\"hidden\",false,\"customValidation\",\"\",\"patternType\",\"\",\"hideValidationMessage\",false,\"textBefore\",\"\",\"validationMessage\",\"\",\"textAfter\",\"\",\"showInEditor\",false,\"_defaultValue\",\"\",\"showClear\",false,\"pattern\",\"\",\"tooltipText\",\"\",\"labelAlign\",\"left\",\"formDataKey\",\"{{ self.id }}\",\"value\",\"\",\"labelCaption\",\"\",\"labelWidth\",\"33\",\"autoFill\",\"\",\"placeholder\",\"Search by name, email or _id\",\"label\",\"\",\"_validate\",false,\"labelWidthUnit\",\"%\",\"invalid\",false,\"iconBefore\",\"\",\"minLength\",null,\"inputTooltip\",\"\",\"events\",[\"^3\",[]],\"autoCapitalize\",\"none\",\"loading\",false,\"disabled\",false,\"labelPosition\",\"left\",\"labelWrap\",false,\"maintainSpaceWhenHidden\",false,\"required\",false]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"\",\"^E\",\"body\",\"^F\",\"\",\"row\",0.7999999999999999,\"col\",0,\"^G\",1,\"^H\",4,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653830224018\",\"^B\",\"~m1653830294498\",\"^C\",\"\",\"^D\",null]]],\"container1\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"container1\",\"^4\",\"widget\",\"^5\",\"ContainerWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"_disabledByIndex\",[\"^:\",[\"\"]],\"heightType\",\"auto\",\"currentViewKey\",null,\"iconByIndex\",[],\"clickable\",false,\"_iconByIndex\",[\"^:\",[\"\"]],\"hidden\",\"\",\"showHeader\",true,\"hoistFetching\",true,\"views\",[],\"showInEditor\",false,\"tooltipText\",\"\",\"hiddenByIndex\",[],\"_hiddenByIndex\",[\"^:\",[\"\"]],\"currentViewIndex\",null,\"_hasMigratedNestedItems\",true,\"transition\",\"none\",\"itemMode\",\"static\",\"_tooltipByIndex\",[\"^:\",[\"\"]],\"tooltipByIndex\",[],\"showFooter\",false,\"_viewKeys\",[\"^:\",[\"View 1\"]],\"events\",[\"^3\",[]],\"_ids\",[\"^:\",[\"6af98\"]],\"viewKeys\",[],\"iconPositionByIndex\",[],\"_iconPositionByIndex\",[\"^:\",[\"\"]],\"loading\",false,\"overflowType\",\"scroll\",\"disabled\",false,\"_labels\",[\"^:\",[\"\"]],\"disabledByIndex\",[],\"maintainSpaceWhenHidden\",false,\"showBody\",true,\"labels\",[]]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"\",\"^E\",\"body\",\"^F\",\"\",\"row\",2.400000000000001,\"col\",8,\"^G\",10.4,\"^H\",4,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653833745012\",\"^B\",\"~m1653833745012\",\"^C\",\"\",\"^D\",null]]],\"containerTitle1\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"containerTitle1\",\"^4\",\"widget\",\"^5\",\"TextWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"heightType\",\"auto\",\"horizontalAlign\",\"left\",\"hidden\",false,\"imageWidth\",\"fit\",\"showInEditor\",false,\"verticalAlign\",\"center\",\"_defaultValue\",\"\",\"tooltipText\",\"\",\"value\",\"#### {{usersTable.selectedRow.data.firstName}} {{usersTable.selectedRow.data.lastName}} \",\"disableMarkdown\",false,\"overflowType\",\"scroll\",\"maintainSpaceWhenHidden\",false]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"container1\",\"^E\",\"header\",\"^F\",\"\",\"row\",0.20000000000000012,\"col\",0,\"^G\",0.8,\"^H\",8,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653833745583\",\"^B\",\"~m1653838314223\",\"^C\",\"\",\"^D\",null]]],\"keyValue1\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"keyValue1\",\"^4\",\"widget\",\"^5\",\"KeyValueMapWidget\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"rowHeaderNames\",[\"^3\",[]],\"rowFormats\",[\"^3\",[]],\"valueTitle\",\"Value\",\"data\",\"{{usersTable.selectedRow.data}}\",\"prevRowMappers\",[\"^3\",[]],\"rowMappersRenderAsHTML\",[\"^3\",[]],\"rowVisibility\",[\"^3\",[\"a\",true,\"lastName\",true,\"signupToken\",true,\"b\",true,\"c\",true,\"createdOn\",true,\"deletedOn\",true,\"lastRequest\",true,\"isEmailVerified\",true,\"_id\",true,\"updatedOn\",true,\"firstName\",true,\"email\",true]],\"prevRowFormats\",[\"^3\",[]],\"rowMappers\",[\"^3\",[]],\"rows\",[\"^:\",[\"a\",\"b\",\"c\",\"_id\",\"firstName\",\"lastName\",\"email\",\"isEmailVerified\",\"createdOn\",\"updatedOn\",\"lastRequest\",\"signupToken\",\"deletedOn\"]],\"keyTitle\",\"Key\"]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"container1\",\"^E\",\"body\",\"^F\",\"6af98\",\"row\",0,\"col\",0,\"^G\",8.4,\"^H\",12,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653833745869\",\"^B\",\"~m1654498035544\",\"^C\",\"\",\"^D\",null]]],\"userActions\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"userActions\",\"^4\",\"widget\",\"^5\",\"DropdownButtonWidget\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"_disabledByIndex\",[\"^:\",[\"\",\"{{usersTable.selectedRow.data.isEmailVerified}}\",\"\",false]],\"horizontalAlign\",\"stretch\",\"_values\",[\"^:\",[\"\",\"\",\"\",\"Action 4\"]],\"iconByIndex\",[],\"iconPosition\",\"left\",\"clickable\",false,\"_iconByIndex\",[\"^:\",[\"\",\"\",\"\",\"\"]],\"hidden\",false,\"data\",[],\"text\",\"Menu\",\"_fallbackTextByIndex\",[\"^:\",[\"\",\"\",\"\",\"\"]],\"showInEditor\",false,\"tooltipText\",\"\",\"hiddenByIndex\",[],\"_hiddenByIndex\",[\"^:\",[\"\",\"\",\"\",false]],\"_captionByIndex\",[\"^:\",[\"\",\"\",\"\",\"\"]],\"styleVariant\",\"outline\",\"_hasMigratedNestedItems\",true,\"captionByIndex\",[],\"itemMode\",\"static\",\"_tooltipByIndex\",[\"^:\",[\"\",\"\",\"\",\"\"]],\"_colorByIndex\",[\"^:\",[\"\",\"\",\"\",\"\"]],\"tooltipByIndex\",[],\"icon\",\"\",\"events\",[\"^:\",[[\"^3\",[\"event\",\"click\",\"type\",\"datasource\",\"method\",\"trigger\",\"pluginId\",\"shadowLogin\",\"targetId\",\"1faf9\",\"params\",[\"^3\",[]],\"waitType\",\"debounce\",\"waitMs\",\"0\"]],[\"^3\",[\"event\",\"click\",\"type\",\"datasource\",\"method\",\"trigger\",\"pluginId\",\"remove\",\"targetId\",\"d452d\",\"params\",[\"^3\",[]],\"waitType\",\"debounce\",\"waitMs\",\"0\"]],[\"^3\",[\"event\",\"click\",\"type\",\"datasource\",\"method\",\"trigger\",\"pluginId\",\"verifyEmail\",\"targetId\",\"ccb37\",\"params\",[\"^3\",[]],\"waitType\",\"debounce\",\"waitMs\",\"0\"]],[\"^3\",[\"event\",\"click\",\"type\",\"widget\",\"method\",\"open\",\"pluginId\",\"userUpdateModal\",\"targetId\",\"59b6e\",\"params\",[\"^3\",[]],\"waitType\",\"debounce\",\"waitMs\",\"0\"]]]],\"_ids\",[\"^:\",[\"59b6e\",\"ccb37\",\"d452d\",\"1faf9\"]],\"overlayMaxHeight\",375,\"disabled\",false,\"_labels\",[\"^:\",[\"Update\",\"Verify Email\",\"Remove\",\"Shadow login\"]],\"disabledByIndex\",[],\"maintainSpaceWhenHidden\",false,\"_imageByIndex\",[\"^:\",[\"\",\"\",\"\",\"\"]],\"labels\",[]]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"container1\",\"^E\",\"header\",\"^F\",\"\",\"row\",0.2,\"col\",9,\"^G\",0.8,\"^H\",3,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653833840942\",\"^B\",\"~m1662970504941\",\"^C\",\"\",\"^D\",null]]],\"userUpdateModal\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"userUpdateModal\",\"^4\",\"widget\",\"^5\",\"ModalWidget\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"opened\",false,\"modalOverflowType\",\"scroll\",\"hidden\",\"true\",\"onModalClose\",\"\",\"modalHeightType\",\"fixed\",\"tooltipText\",\"\",\"modalHeight\",\"\",\"onModalOpen\",\"\",\"modalWidth\",\"\",\"closeOnOutsideClick\",true,\"loading\",\"\",\"disabled\",\"\",\"buttonText\",\"Open Modal\"]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"\",\"^E\",\"body\",\"^F\",\"\",\"row\",13.399999999999999,\"col\",8,\"^G\",1,\"^H\",4,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653834649657\",\"^B\",\"~m1653834683865\",\"^C\",\"\",\"^D\",null]]],\"updateUserForm\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"updateUserForm\",\"^4\",\"widget\",\"^5\",\"FormWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"disableSubmit\",false,\"heightType\",\"auto\",\"resetAfterSubmit\",true,\"submitting\",false,\"hidden\",false,\"data\",[\"^ \"],\"showHeader\",true,\"hoistFetching\",true,\"initialData\",null,\"showInEditor\",false,\"tooltipText\",\"\",\"style\",[\"^3\",[\"border\",\"\"]],\"invalid\",false,\"showFooter\",true,\"events\",[\"^:\",[[\"^3\",[\"event\",\"submit\",\"type\",\"datasource\",\"method\",\"trigger\",\"pluginId\",\"update\",\"targetId\",null,\"params\",[\"^3\",[]],\"waitType\",\"debounce\",\"waitMs\",\"0\"]]]],\"loading\",false,\"overflowType\",\"scroll\",\"disabled\",false,\"requireValidation\",true,\"maintainSpaceWhenHidden\",false,\"showBody\",true]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"userUpdateModal\",\"^E\",\"body\",\"^F\",\"\",\"row\",0,\"col\",0,\"^G\",0.2,\"^H\",12,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653834910846\",\"^B\",\"~m1653841961694\",\"^C\",\"\",\"^D\",null]]],\"formTitle1\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"formTitle1\",\"^4\",\"widget\",\"^5\",\"TextWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"heightType\",\"auto\",\"horizontalAlign\",\"left\",\"hidden\",false,\"imageWidth\",\"fit\",\"showInEditor\",false,\"verticalAlign\",\"center\",\"_defaultValue\",\"\",\"tooltipText\",\"\",\"value\",\"#### Update {{ usersTable.selectedRow.data.firstName}} {{usersTable.selectedRow.data.lastName}}\",\"disableMarkdown\",false,\"overflowType\",\"scroll\",\"maintainSpaceWhenHidden\",false]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"updateUserForm\",\"^E\",\"header\",\"^F\",\"\",\"row\",0,\"col\",0,\"^G\",0.6,\"^H\",12,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653834911218\",\"^B\",\"~m1653838314310\",\"^C\",\"\",\"^D\",null]]],\"formButton1\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"formButton1\",\"^4\",\"widget\",\"^5\",\"ButtonWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"horizontalAlign\",\"stretch\",\"clickable\",false,\"iconAfter\",\"\",\"submitTargetId\",\"updateUserForm\",\"hidden\",false,\"text\",\"Submit\",\"showInEditor\",false,\"tooltipText\",\"\",\"submit\",true,\"iconBefore\",\"\",\"events\",[\"^3\",[]],\"loading\",false,\"loaderPosition\",\"auto\",\"disabled\",false,\"maintainSpaceWhenHidden\",false]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"updateUserForm\",\"^E\",\"footer\",\"^F\",\"\",\"row\",0.40000000000000036,\"col\",8,\"^G\",1,\"^H\",4,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653834911337\",\"^B\",\"~m1653835572234\",\"^C\",\"\",\"^D\",null]]],\"firstNameInput\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"firstNameInput\",\"^4\",\"widget\",\"^5\",\"TextInputWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"spellCheck\",false,\"readOnly\",false,\"iconAfter\",\"\",\"showCharacterCount\",false,\"autoComplete\",false,\"maxLength\",null,\"hidden\",false,\"customValidation\",\"\",\"patternType\",\"\",\"hideValidationMessage\",false,\"textBefore\",\"\",\"validationMessage\",\"\",\"textAfter\",\"\",\"showInEditor\",false,\"_defaultValue\",\"\",\"showClear\",false,\"pattern\",\"\",\"tooltipText\",\"\",\"labelAlign\",\"left\",\"formDataKey\",\"{{ self.id }}\",\"value\",\"{{usersTable.selectedRow.data.firstName}}\",\"labelCaption\",\"\",\"labelWidth\",\"33\",\"autoFill\",\"\",\"placeholder\",\"Enter value\",\"label\",\"First Name\",\"_validate\",false,\"labelWidthUnit\",\"%\",\"invalid\",false,\"iconBefore\",\"\",\"minLength\",null,\"inputTooltip\",\"\",\"events\",[\"^3\",[]],\"autoCapitalize\",\"none\",\"loading\",false,\"disabled\",false,\"labelPosition\",\"left\",\"labelWrap\",false,\"maintainSpaceWhenHidden\",false,\"required\",false]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"updateUserForm\",\"^E\",\"body\",\"^F\",\"\",\"row\",0,\"col\",0,\"^G\",1,\"^H\",10,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653835222740\",\"^B\",\"~m1653838314340\",\"^C\",\"\",\"^D\",null]]],\"lastNameInput\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"lastNameInput\",\"^4\",\"widget\",\"^5\",\"TextInputWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"spellCheck\",false,\"readOnly\",false,\"iconAfter\",\"\",\"showCharacterCount\",false,\"autoComplete\",false,\"maxLength\",null,\"hidden\",false,\"customValidation\",\"\",\"patternType\",\"\",\"hideValidationMessage\",false,\"textBefore\",\"\",\"validationMessage\",\"\",\"textAfter\",\"\",\"showInEditor\",false,\"_defaultValue\",\"\",\"showClear\",false,\"pattern\",\"\",\"tooltipText\",\"\",\"labelAlign\",\"left\",\"formDataKey\",\"{{ self.id }}\",\"value\",\" {{usersTable.selectedRow.data.lastName}}\",\"labelCaption\",\"\",\"labelWidth\",\"33\",\"autoFill\",\"\",\"placeholder\",\"Enter value\",\"label\",\"Last Name\",\"_validate\",false,\"labelWidthUnit\",\"%\",\"invalid\",false,\"iconBefore\",\"\",\"minLength\",null,\"inputTooltip\",\"\",\"events\",[\"^3\",[]],\"autoCapitalize\",\"none\",\"loading\",false,\"disabled\",false,\"labelPosition\",\"left\",\"labelWrap\",false,\"maintainSpaceWhenHidden\",false,\"required\",false]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"updateUserForm\",\"^E\",\"body\",\"^F\",\"\",\"row\",1,\"col\",0,\"^G\",1,\"^H\",10,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653835244433\",\"^B\",\"~m1653838314371\",\"^C\",\"\",\"^D\",null]]],\"emailInput\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"emailInput\",\"^4\",\"widget\",\"^5\",\"TextInputWidget2\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"spellCheck\",false,\"readOnly\",false,\"iconAfter\",\"\",\"showCharacterCount\",false,\"autoComplete\",false,\"maxLength\",null,\"hidden\",false,\"customValidation\",\"\",\"patternType\",\"email\",\"hideValidationMessage\",false,\"textBefore\",\"\",\"validationMessage\",\"\",\"textAfter\",\"\",\"showInEditor\",false,\"_defaultValue\",\"\",\"showClear\",false,\"pattern\",\"\",\"tooltipText\",\"\",\"labelAlign\",\"left\",\"formDataKey\",\"{{ self.id }}\",\"value\",\"{{usersTable.selectedRow.data.email}}\",\"labelCaption\",\"\",\"labelWidth\",\"33\",\"autoFill\",\"\",\"placeholder\",\"you@example.com\",\"label\",\"Email\",\"_validate\",false,\"labelWidthUnit\",\"%\",\"invalid\",false,\"iconBefore\",\"bold/mail-send-envelope\",\"minLength\",null,\"inputTooltip\",\"\",\"events\",[\"^3\",[]],\"autoCapitalize\",\"none\",\"loading\",false,\"disabled\",false,\"labelPosition\",\"left\",\"labelWrap\",false,\"maintainSpaceWhenHidden\",false,\"required\",false]],\"^;\",[\"^3\",[]],\"^<\",[\"^0\",[\"^ \",\"n\",\"position2\",\"v\",[\"^ \",\"^@\",\"updateUserForm\",\"^E\",\"body\",\"^F\",\"\",\"row\",2,\"col\",0,\"^G\",1,\"^H\",10,\"^I\",0]]],\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1653836295252\",\"^B\",\"~m1653838314403\",\"^C\",\"\",\"^D\",null]]],\"$main\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"$main\",\"^4\",\"frame\",\"^5\",\"Frame\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"type\",\"main\",\"sticky\",false]],\"^;\",[\"^3\",[]],\"^<\",null,\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1662967417421\",\"^B\",\"~m1662967417421\",\"^C\",\"\",\"^D\",null]]],\"$header\",[\"^0\",[\"^ \",\"n\",\"pluginTemplate\",\"v\",[\"^ \",\"id\",\"$header\",\"^4\",\"frame\",\"^5\",\"Frame\",\"^6\",null,\"^7\",null,\"^8\",null,\"^9\",[\"^3\",[\"type\",\"header\",\"sticky\",true]],\"^;\",[\"^3\",[]],\"^<\",null,\"^=\",null,\"^>\",null,\"^?\",null,\"^@\",\"\",\"^A\",\"~m1662967417421\",\"^B\",\"~m1662967417421\",\"^C\",\"\",\"^D\",null]]]]],\"^A\",null,\"version\",\"2.99.1\",\"appThemeId\",null,\"preloadedAppJavaScript\",null,\"preloadedAppJSLinks\",[],\"testEntities\",[],\"tests\",[],\"appStyles\",\"\",\"responsiveLayoutDisabled\",false,\"loadingIndicatorsDisabled\",false,\"urlFragmentDefinitions\",[\"^:\",[]],\"pageLoadValueOverrides\",[\"^:\",[]],\"customDocumentTitle\",\"\",\"customDocumentTitleEnabled\",false,\"customShortcuts\",[],\"isGlobalWidget\",false,\"isMobileApp\",false,\"multiScreenMobileApp\",false,\"folders\",[\"^:\",[\"dbUser\",\"apiUser\"]],\"queryStatusVisibility\",true,\"markdownLinkBehavior\",\"never\",\"inAppRetoolPillAppearance\",\"NO_OVERRIDE\",\"rootScreen\",null,\"instrumentationEnabled\",false,\"experimentalPerfFeatures\",[\"^ \",\"batchCommitModelEnabled\",false,\"skipDepCycleCheckingEnabled\",false,\"serverDepGraphEnabled\",false,\"useRuntimeV2\",false],\"experimentalDataTabEnabled\",false]]]" - }, - "changesRecord": [ - { - "type": "DATASOURCE_TYPE_CHANGE", - "payload": { - "newType": "RESTQuery", - "pluginId": "shadowLogin", - "resourceName": "bb8ab17c-b112-4444-b054-3067ca2b62dc" - } - }, - { - "type": "WIDGET_TEMPLATE_UPDATE", - "payload": { - "plugin": { - "id": "shadowLogin", - "type": "datasource", - "style": null, - "folder": "apiUser", - "screen": null, - "subtype": "RESTQuery", - "tabIndex": null, - "template": { - "body": "", - "data": null, - "type": "GET", - "error": null, - "query": "", - "events": [], - "cookies": "", - "headers": "", - "rawData": null, - "bodyType": "json", - "metadata": null, - "changeset": "", - "timestamp": 0, - "isFetching": false, - "isImported": false, - "cacheKeyTtl": "", - "transformer": "// type your code here\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\nreturn data", - "queryTimeout": "10000", - "allowedGroups": [], - "enableCaching": false, - "privateParams": [], - "queryDisabled": "", - "watchedParams": [], - "successMessage": "", - "changesetObject": "", - "paginationLimit": "", - "errorTransformer": "// The variable 'data' allows you to reference the request's data in the transformer. \n// example: return data.find(element => element.isError)\nreturn data.error", - "queryRefreshTime": "", - "runWhenPageLoads": false, - "changesetIsObject": false, - "enableTransformer": false, - "paginationEnabled": false, - "queryThrottleTime": "750", - "queryTriggerDelay": "0", - "showFailureToaster": true, - "showSuccessToaster": true, - "importedQueryInputs": {}, - "paginationDataField": "", - "playgroundQueryUuid": "", - "requireConfirmation": false, - "runWhenModelUpdates": true, - "notificationDuration": "", - "queryDisabledMessage": "", - "resourceNameOverride": "", - "importedQueryDefaults": {}, - "playgroundQuerySaveId": "latest", - "runWhenPageLoadsDelay": "", - "enableErrorTransformer": false, - "queryFailureConditions": "", - "paginationPaginationField": "", - "updateSetValueDynamically": false, - "showLatestVersionUpdatedWarning": false, - "showUpdateSetValueDynamicallyToggle": true - }, - "container": "", - "createdAt": "2022-09-12T07:26:49.500Z", - "namespace": null, - "position2": null, - "updatedAt": "2022-09-12T10:14:09.072Z", - "resourceName": "bb8ab17c-b112-4444-b054-3067ca2b62dc", - "mobilePosition2": null, - "mobileAppPosition": null, - "resourceDisplayName": null - }, - "update": { - "body": "[{\"key\":\"id\",\"value\":\"\\\"6315f482ec588c3bcb5b07a8\\\"\"}]", - "data": null, - "type": "POST", - "error": null, - "query": "admin/account/shadow-login", - "events": [], - "cookies": "", - "headers": "", - "rawData": null, - "bodyType": "json", - "metadata": null, - "changeset": "", - "timestamp": 0, - "isFetching": false, - "isImported": false, - "cacheKeyTtl": "", - "transformer": "// type your code here\n// example: return formatDataAsArray(data).filter(row => row.quantity > 20)\nreturn data", - "queryTimeout": "10000", - "allowedGroups": [], - "enableCaching": false, - "privateParams": [], - "queryDisabled": "", - "watchedParams": [], - "successMessage": "", - "changesetObject": "", - "paginationLimit": "", - "errorTransformer": "// The variable 'data' allows you to reference the request's data in the transformer. \n// example: return data.find(element => element.isError)\nreturn data.error", - "queryRefreshTime": "", - "runWhenPageLoads": false, - "changesetIsObject": false, - "enableTransformer": false, - "paginationEnabled": false, - "playgroundQueryId": null, - "queryThrottleTime": "750", - "queryTriggerDelay": "0", - "showFailureToaster": true, - "showSuccessToaster": true, - "confirmationMessage": null, - "importedQueryInputs": {}, - "paginationDataField": "", - "playgroundQueryUuid": "", - "requireConfirmation": false, - "runWhenModelUpdates": false, - "notificationDuration": "", - "queryDisabledMessage": "", - "resourceNameOverride": "", - "resourceTypeOverride": "", - "importedQueryDefaults": {}, - "playgroundQuerySaveId": "latest", - "runWhenPageLoadsDelay": "", - "enableErrorTransformer": false, - "queryFailureConditions": "", - "paginationPaginationField": "", - "updateSetValueDynamically": false, - "lastReceivedFromResourceAt": null, - "showLatestVersionUpdatedWarning": false, - "showUpdateSetValueDynamicallyToggle": true - }, - "widgetId": "shadowLogin", - "shouldRecalculateTemplate": true - }, - "isUserTriggered": true - } - ], - "gitSha": null, - "checksum": null, - "createdAt": "2022-09-12T10:16:56.671Z", - "updatedAt": "2022-09-12T10:16:56.671Z", - "pageId": 1427949, - "userId": 403318, - "branchId": null - }, - "modules": {} -} diff --git a/examples/stripe-subscriptions/apps/api/src/db.ts b/examples/stripe-subscriptions/apps/api/src/db.ts deleted file mode 100644 index 7841dd70e..000000000 --- a/examples/stripe-subscriptions/apps/api/src/db.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { Database, IDocument, Service, ServiceOptions } from '@paralect/node-mongo'; - -import config from 'config'; - -const database = new Database(config.MONGO_URI, config.MONGO_DB_NAME); -database.connect(); - -class CustomService extends Service { - // You can add new methods or override existing here -} - -function createService(collectionName: string, options: ServiceOptions = {}) { - return new CustomService(collectionName, database, options); -} - -export default Object.assign(database, { - database, - createService, -}); diff --git a/examples/stripe-subscriptions/apps/api/src/environment.d.ts b/examples/stripe-subscriptions/apps/api/src/environment.d.ts deleted file mode 100644 index ed41676e4..000000000 --- a/examples/stripe-subscriptions/apps/api/src/environment.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -declare global { - namespace NodeJS { - interface ProcessEnv { - APP_ENV: 'development' | 'staging' | 'production'; - NODE_ENV: 'development' | 'staging' | 'production'; - PORT?: number; - PWD: string; - } - } -} - -// If this file has no import/export statements (i.e. is a script), -// convert it into a module by adding an empty export statement. -export {}; diff --git a/examples/stripe-subscriptions/apps/api/src/globals.d.ts b/examples/stripe-subscriptions/apps/api/src/globals.d.ts deleted file mode 100644 index 6cff76614..000000000 --- a/examples/stripe-subscriptions/apps/api/src/globals.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -/* eslint-disable no-var, vars-on-top */ -import type { Logger } from 'winston'; - -declare global { - var logger: Logger; -} diff --git a/examples/stripe-subscriptions/apps/api/src/io-emitter.ts b/examples/stripe-subscriptions/apps/api/src/io-emitter.ts deleted file mode 100644 index 9fbe82721..000000000 --- a/examples/stripe-subscriptions/apps/api/src/io-emitter.ts +++ /dev/null @@ -1,40 +0,0 @@ -import { Emitter } from '@socket.io/redis-emitter'; - -import redisClient, { redisErrorHandler } from 'redis-client'; - -import logger from 'logger'; - -let emitter: Emitter | null = null; - -const publish = (roomId: string | string[], eventName: string, data: unknown) => { - if (emitter === null) { - redisErrorHandler(new Error('[Socket.IO] Emitter is not initialized.')); - - return; - } - - logger.debug(`[Socket.IO] Published [${eventName}] event to ${roomId}, the data is:`); - logger.debug(data); - - emitter.to(roomId).emit(eventName, data); -}; - -const initClient = () => { - const subClient = redisClient.duplicate(); - - subClient.on('error', redisErrorHandler); - - emitter = new Emitter(subClient); -}; - -const getUserRoomId = (userId: string) => `user-${userId}`; - -export default { - initClient, - publish, - publishToUser: (userId: string, eventName: string, data: unknown): void => { - const roomId = getUserRoomId(userId); - - publish(roomId, eventName, data); - }, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/koa-qs.d.ts b/examples/stripe-subscriptions/apps/api/src/koa-qs.d.ts deleted file mode 100644 index a7c773b2d..000000000 --- a/examples/stripe-subscriptions/apps/api/src/koa-qs.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import AppKoa from 'types'; - -declare namespace koaQs { - type ParseMode = 'extended' | 'strict' | 'first'; -} - -declare function koaQs(app: AppKoa, mode?: koaQs.ParseMode): AppKoa; - -export = koaQs; diff --git a/examples/stripe-subscriptions/apps/api/src/logger.ts b/examples/stripe-subscriptions/apps/api/src/logger.ts deleted file mode 100644 index 4223775ef..000000000 --- a/examples/stripe-subscriptions/apps/api/src/logger.ts +++ /dev/null @@ -1,54 +0,0 @@ -import _ from 'lodash'; -import winston from 'winston'; - -import config from 'config'; - -const formatToPrettyJson = winston.format.printf(({ level, message }) => { - if (_.isPlainObject(message)) { - message = JSON.stringify(message, null, 4); - } - - return `${level}: ${message}`; -}); - -const getFormat = (isDev: boolean) => { - if (isDev) { - return winston.format.combine( - winston.format.colorize({ - colors: { - http: 'cyan', - }, - }), - winston.format.splat(), - winston.format.simple(), - formatToPrettyJson, - ); - } - - return winston.format.combine( - winston.format.errors({ stack: true }), - winston.format.timestamp(), - winston.format.splat(), - winston.format.json(), - ); -}; - -const createConsoleLogger = (isDev = false) => { - const transports: winston.transport[] = [ - new winston.transports.Console({ - level: isDev ? 'debug' : 'verbose', - }), - ]; - - return winston.createLogger({ - exitOnError: false, - transports, - format: getFormat(isDev), - }); -}; - -const consoleLogger = createConsoleLogger(config?.IS_DEV ?? process.env.APP_ENV === 'development'); - -global.logger = consoleLogger; - -export default consoleLogger; diff --git a/examples/stripe-subscriptions/apps/api/src/middlewares/index.ts b/examples/stripe-subscriptions/apps/api/src/middlewares/index.ts deleted file mode 100644 index 6c1fc5b96..000000000 --- a/examples/stripe-subscriptions/apps/api/src/middlewares/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -import rateLimitMiddleware from './rateLimit.middleware'; -import validateMiddleware from './validate.middleware'; - -export { rateLimitMiddleware, validateMiddleware }; diff --git a/examples/stripe-subscriptions/apps/api/src/middlewares/rateLimit.middleware.ts b/examples/stripe-subscriptions/apps/api/src/middlewares/rateLimit.middleware.ts deleted file mode 100644 index 037fdbc7e..000000000 --- a/examples/stripe-subscriptions/apps/api/src/middlewares/rateLimit.middleware.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { rateLimitService } from 'services'; - -const LIMIT_DURATION = 1000 * 60; // 60 sec -const MAX_REQUESTS_PER_DURATION = 10; - -const rateLimitMiddleware = rateLimitService(LIMIT_DURATION, MAX_REQUESTS_PER_DURATION); - -export default rateLimitMiddleware; diff --git a/examples/stripe-subscriptions/apps/api/src/middlewares/validate.middleware.ts b/examples/stripe-subscriptions/apps/api/src/middlewares/validate.middleware.ts deleted file mode 100644 index 77e624b3b..000000000 --- a/examples/stripe-subscriptions/apps/api/src/middlewares/validate.middleware.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { ZodError, ZodIssue, ZodSchema } from 'zod'; - -import { AppKoaContext, Next, ValidationErrors } from 'types'; - -const formatError = (zodError: ZodError): ValidationErrors => { - const errors: ValidationErrors = {}; - - zodError.issues.forEach((error: ZodIssue) => { - const key = error.path.join('.'); - - if (!errors[key]) { - errors[key] = []; - } - - (errors[key] as string[]).push(error.message); - }); - - return errors; -}; - -const validate = (schema: ZodSchema) => async (ctx: AppKoaContext, next: Next) => { - const result = await schema.safeParseAsync({ - ...(ctx.request.body as object), - ...ctx.query, - ...ctx.params, - }); - - if (!result.success) ctx.throw(400, { clientErrors: formatError(result.error) }); - - ctx.validatedData = result.data; - - await next(); -}; - -export default validate; diff --git a/examples/stripe-subscriptions/apps/api/src/migrator.ts b/examples/stripe-subscriptions/apps/api/src/migrator.ts deleted file mode 100644 index 8ddbfb77e..000000000 --- a/examples/stripe-subscriptions/apps/api/src/migrator.ts +++ /dev/null @@ -1,13 +0,0 @@ -/* eslint-disable simple-import-sort/imports, import/newline-after-import, import/first */ -// allows to require modules relative to /src folder -// for example: require('lib/mongo/idGenerator') -// all options can be found here: https://gist.github.com/branneman/8048520 -import moduleAlias from 'module-alias'; // read aliases from package json -moduleAlias.addPath(__dirname); -moduleAlias(); - -import 'dotenv/config'; - -import migrator from 'migrator/index'; - -migrator.exec(); diff --git a/examples/stripe-subscriptions/apps/api/src/migrator/index.ts b/examples/stripe-subscriptions/apps/api/src/migrator/index.ts deleted file mode 100644 index 0e8826ab0..000000000 --- a/examples/stripe-subscriptions/apps/api/src/migrator/index.ts +++ /dev/null @@ -1,75 +0,0 @@ -import { generateId } from '@paralect/node-mongo'; -import dayjs from 'dayjs'; -import durationPlugin from 'dayjs/plugin/duration'; - -import logger from 'logger'; - -import migrationLogService from './migration-log/migration-log.service'; -import migrationVersionService from './migration-version/migration-version.service'; -import { Migration } from './types'; - -dayjs.extend(durationPlugin); - -const run = async (migrations: Migration[], curVersion: number) => { - const newMigrations = migrations - .filter((migration: Migration) => migration.version > curVersion) - .sort((a: Migration, b: Migration) => a.version - b.version); - - if (!newMigrations.length) { - logger.info(`[Migrator] No new migrations found, stopping the process. - Current database version is ${curVersion}`); - return; - } - - let migrationLogId; - let migration; - let lastMigrationVersion; - - try { - for (migration of newMigrations) { - //eslint-disable-line - migrationLogId = generateId(); - const startTime = dayjs(); - await migrationLogService.startMigrationLog(migrationLogId, startTime.get('seconds'), migration.version); //eslint-disable-line - logger.info(`[Migrator] Migration #${migration.version} is running: ${migration.description}`); - if (!migration.migrate) { - throw new Error('migrate function is not defined for the migration'); - } - await migration.migrate(); //eslint-disable-line - - lastMigrationVersion = migration.version; - await migrationVersionService.setNewMigrationVersion(migration.version); //eslint-disable-line - const finishTime = dayjs(); - const duration = dayjs.duration(finishTime.diff(startTime)).format('H [hrs], m [min], s [sec], SSS [ms]'); - - await migrationLogService.finishMigrationLog(migrationLogId, finishTime.get('seconds'), duration); //eslint-disable-line - logger.info(`[Migrator] Database has been updated to the version #${migration.version}`); - logger.info(`[Migrator] Time of migration #${migration.version}: ${duration}`); - } - logger.info(`[Migrator] All migrations has been finished, stopping the process. - Current database version is: ${lastMigrationVersion}`); - } catch (err) { - if (migration) { - logger.error(`[Migrator] Failed to update migration to version ${migration.version}`); - logger.error(err); - if (migrationLogId) { - await migrationLogService.failMigrationLog(migrationLogId, new Date().getSeconds(), err as Error); - } - } - - throw err; - } -}; - -const exec = async () => { - const [migrations, currentVersion] = await Promise.all([ - migrationVersionService.getMigrations(), - migrationVersionService.getCurrentMigrationVersion(), - ]); - await run(migrations, currentVersion); - process.exit(0); -}; - -export default { - exec, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/migrator/migration-log/migration-log.schema.ts b/examples/stripe-subscriptions/apps/api/src/migrator/migration-log/migration-log.schema.ts deleted file mode 100644 index deb62b71e..000000000 --- a/examples/stripe-subscriptions/apps/api/src/migrator/migration-log/migration-log.schema.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { z } from 'zod'; - -const schema = z.object({ - _id: z.string(), - - startTime: z.number(), - finishTime: z.number().optional(), - status: z.string(), - error: z.string().optional(), - errorStack: z.string().optional(), - duration: z.string().optional(), - migrationVersion: z.number(), - - createdOn: z.date().optional(), - updatedOn: z.date().optional(), - deletedOn: z.date().optional().nullable(), -}); - -export default schema; diff --git a/examples/stripe-subscriptions/apps/api/src/migrator/migration-log/migration-log.service.ts b/examples/stripe-subscriptions/apps/api/src/migrator/migration-log/migration-log.service.ts deleted file mode 100644 index ed73da827..000000000 --- a/examples/stripe-subscriptions/apps/api/src/migrator/migration-log/migration-log.service.ts +++ /dev/null @@ -1,52 +0,0 @@ -import db from 'db'; - -import schema from './migration-log.schema'; -import { MigrationLog } from './migration-log.types'; - -const service = db.createService('__migrationLog', { - schemaValidator: (obj) => schema.parseAsync(obj), -}); - -const startMigrationLog = (_id: string, startTime: number, migrationVersion: number) => - service.atomic.updateOne( - { _id }, - { - $set: { - migrationVersion, - startTime, - status: 'running', - }, - $setOnInsert: { - _id, - }, - }, - {}, - { upsert: true }, - ); - -const failMigrationLog = (_id: string, finishTime: number, err: Error) => - service.atomic.updateOne( - { _id }, - { - $set: { - finishTime, - status: 'failed', - error: err.message, - errorStack: err.stack, - }, - }, - ); - -const finishMigrationLog = (_id: string, finishTime: number, duration: string) => - service.atomic.updateOne( - { _id }, - { - $set: { - finishTime, - status: 'completed', - duration, - }, - }, - ); - -export default { startMigrationLog, failMigrationLog, finishMigrationLog }; diff --git a/examples/stripe-subscriptions/apps/api/src/migrator/migration-log/migration-log.types.ts b/examples/stripe-subscriptions/apps/api/src/migrator/migration-log/migration-log.types.ts deleted file mode 100644 index 19af0e4b9..000000000 --- a/examples/stripe-subscriptions/apps/api/src/migrator/migration-log/migration-log.types.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { z } from 'zod'; - -import schema from './migration-log.schema'; - -export type MigrationLog = z.infer; diff --git a/examples/stripe-subscriptions/apps/api/src/migrator/migration-version/migration-version-types.ts b/examples/stripe-subscriptions/apps/api/src/migrator/migration-version/migration-version-types.ts deleted file mode 100644 index 8bd0823ab..000000000 --- a/examples/stripe-subscriptions/apps/api/src/migrator/migration-version/migration-version-types.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { z } from 'zod'; - -import schema from './migration-version.schema'; - -export type MigrationVersion = z.infer; diff --git a/examples/stripe-subscriptions/apps/api/src/migrator/migration-version/migration-version.schema.ts b/examples/stripe-subscriptions/apps/api/src/migrator/migration-version/migration-version.schema.ts deleted file mode 100644 index 122f549d2..000000000 --- a/examples/stripe-subscriptions/apps/api/src/migrator/migration-version/migration-version.schema.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { z } from 'zod'; - -const schema = z.object({ - _id: z.string(), - - version: z.number(), - - createdOn: z.date().optional(), - updatedOn: z.date().optional(), - deletedOn: z.date().optional().nullable(), -}); - -export default schema; diff --git a/examples/stripe-subscriptions/apps/api/src/migrator/migration-version/migration-version.service.ts b/examples/stripe-subscriptions/apps/api/src/migrator/migration-version/migration-version.service.ts deleted file mode 100644 index 7eaedf534..000000000 --- a/examples/stripe-subscriptions/apps/api/src/migrator/migration-version/migration-version.service.ts +++ /dev/null @@ -1,60 +0,0 @@ -import fs from 'fs'; -import path from 'path'; - -import { Migration } from 'migrator/types'; - -import db from 'db'; - -import schema from './migration-version.schema'; -import { MigrationVersion } from './migration-version-types'; - -const service = db.createService('__migrationVersion', { - schemaValidator: (obj) => schema.parseAsync(obj), -}); - -const migrationPaths = path.join(__dirname, '../migrations'); -const id = 'migration_version'; - -const getMigrationNames = (): string[] => fs.readdirSync(migrationPaths).filter((file) => !file.endsWith('.js.map')); - -const getCurrentMigrationVersion = () => - service.findOne({ _id: id }).then((doc: MigrationVersion | null) => { - if (!doc) { - return 0; - } - - return doc.version; - }); - -const getMigrations = (): Migration[] => { - let migrations = null; - - const names = getMigrationNames(); - migrations = names.map((name: string) => { - const migrationPath = path.join(migrationPaths, name); - return require(migrationPath); - }); - - return migrations.map((m) => m.default); -}; - -const setNewMigrationVersion = (version: number) => - service.atomic.updateOne( - { _id: id }, - { - $set: { - version, - }, - $setOnInsert: { - _id: id, - }, - }, - {}, - { upsert: true }, - ); - -export default Object.assign(service, { - getCurrentMigrationVersion, - getMigrations, - setNewMigrationVersion, -}); diff --git a/examples/stripe-subscriptions/apps/api/src/migrator/migrations/1.ts b/examples/stripe-subscriptions/apps/api/src/migrator/migrations/1.ts deleted file mode 100644 index 98fb7eb0b..000000000 --- a/examples/stripe-subscriptions/apps/api/src/migrator/migrations/1.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { userService } from 'resources/user'; - -import { promiseUtil } from 'utils'; - -import { Migration } from 'migrator/types'; - -const migration = new Migration(1, 'Example'); - -migration.migrate = async () => { - const userIds = await userService.distinct('_id', { - isEmailVerified: true, - }); - - const updateFn = (userId: string) => - userService.atomic.updateOne({ _id: userId }, { $set: { isEmailVerified: false } }); - - await promiseUtil.promiseLimit(userIds, 50, updateFn); -}; - -export default migration; diff --git a/examples/stripe-subscriptions/apps/api/src/migrator/types.ts b/examples/stripe-subscriptions/apps/api/src/migrator/types.ts deleted file mode 100644 index 16bd09d4d..000000000 --- a/examples/stripe-subscriptions/apps/api/src/migrator/types.ts +++ /dev/null @@ -1,14 +0,0 @@ -export class Migration { - description?: string; - - version: number; - - constructor(version: number, description?: string) { - this.version = version; - this.description = description; - } - - migrate?: () => Promise; -} - -export default Migration; diff --git a/examples/stripe-subscriptions/apps/api/src/redis-client.ts b/examples/stripe-subscriptions/apps/api/src/redis-client.ts deleted file mode 100644 index d3c06af20..000000000 --- a/examples/stripe-subscriptions/apps/api/src/redis-client.ts +++ /dev/null @@ -1,30 +0,0 @@ -import { Redis } from 'ioredis'; - -import config from 'config'; - -import logger from 'logger'; - -const client = new Redis(config.REDIS_URI as string, { - lazyConnect: true, - retryStrategy: (times) => { - if (times > 20) return null; - - return Math.max(Math.min(Math.exp(times), 15_000), 1_000); - }, -}); - -export const redisErrorHandler = (error: Error) => { - const errorMessage = `[Redis] ${error.stack || error}`; - - if (config.REDIS_ERRORS_POLICY === 'throw') { - throw new Error(errorMessage); - } else { - logger.error(errorMessage); - } -}; - -client.on('error', redisErrorHandler); - -client.on('connect', () => logger.info('[Redis] Connection established successfully.')); - -export default client; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/account/account.routes.ts b/examples/stripe-subscriptions/apps/api/src/resources/account/account.routes.ts deleted file mode 100644 index 39f2bb3d9..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/account/account.routes.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { routeUtil } from 'utils'; - -import forgotPassword from './actions/forgot-password'; -import get from './actions/get'; -import google from './actions/google'; -import removeAvatar from './actions/remove-avatar'; -import resendEmail from './actions/resend-email'; -import resetPassword from './actions/reset-password'; -import shadowLogin from './actions/shadow-login'; -import signIn from './actions/sign-in'; -import signOut from './actions/sign-out'; -import signUp from './actions/sign-up'; -import update from './actions/update'; -import uploadAvatar from './actions/upload-avatar'; -import verifyEmail from './actions/verify-email'; -import verifyResetToken from './actions/verify-reset-token'; - -const publicRoutes = routeUtil.getRoutes([ - signUp, - signIn, - signOut, - verifyEmail, - forgotPassword, - resetPassword, - verifyResetToken, - resendEmail, - google, -]); - -const privateRoutes = routeUtil.getRoutes([get, update, uploadAvatar, removeAvatar]); - -const adminRoutes = routeUtil.getRoutes([shadowLogin]); - -export default { - publicRoutes, - privateRoutes, - adminRoutes, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/forgot-password.ts b/examples/stripe-subscriptions/apps/api/src/resources/account/actions/forgot-password.ts deleted file mode 100644 index 643d784f4..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/forgot-password.ts +++ /dev/null @@ -1,64 +0,0 @@ -import { z } from 'zod'; - -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; -import { emailService } from 'services'; -import { securityUtil } from 'utils'; - -import config from 'config'; - -import { EMAIL_REGEX } from 'app-constants'; -import { AppKoaContext, AppRouter, Next, Template, User } from 'types'; - -const schema = z.object({ - email: z.string().toLowerCase().regex(EMAIL_REGEX, 'Email format is incorrect.'), -}); - -interface ValidatedData extends z.infer { - user: User; -} - -async function validator(ctx: AppKoaContext, next: Next) { - const user = await userService.findOne({ email: ctx.validatedData.email }); - - if (!user) { - ctx.status = 204; - return; - } - - ctx.validatedData.user = user; - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.validatedData; - - let { resetPasswordToken } = user; - - if (!resetPasswordToken) { - resetPasswordToken = await securityUtil.generateSecureToken(); - - await userService.updateOne({ _id: user._id }, () => ({ - resetPasswordToken, - })); - } - - const resetPasswordUrl = `${config.API_URL}/account/verify-reset-token?token=${resetPasswordToken}&email=${encodeURIComponent(user.email)}`; - - await emailService.sendTemplate({ - to: user.email, - subject: 'Password Reset Request for Ship', - template: Template.RESET_PASSWORD, - params: { - firstName: user.firstName, - href: resetPasswordUrl, - }, - }); - - ctx.status = 204; -} - -export default (router: AppRouter) => { - router.post('/forgot-password', validateMiddleware(schema), validator, handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/get.ts b/examples/stripe-subscriptions/apps/api/src/resources/account/actions/get.ts deleted file mode 100644 index 938fe04e4..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/get.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { userService } from 'resources/user'; - -import { AppKoaContext, AppRouter } from 'types'; - -async function handler(ctx: AppKoaContext) { - ctx.body = { - ...userService.getPublic(ctx.state.user), - isShadow: ctx.state.isShadow, - }; -} - -export default (router: AppRouter) => { - router.get('/', handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/google.ts b/examples/stripe-subscriptions/apps/api/src/resources/account/actions/google.ts deleted file mode 100644 index ac2f6c824..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/google.ts +++ /dev/null @@ -1,81 +0,0 @@ -import { userService } from 'resources/user'; - -import { authService, googleService, stripeService } from 'services'; - -import config from 'config'; - -import db from 'db'; - -import { AppKoaContext, AppRouter, User } from 'types'; - -const getOAuthUrl = async (ctx: AppKoaContext) => { - const areCredentialsExist = config.GOOGLE_CLIENT_ID && config.GOOGLE_CLIENT_SECRET; - - ctx.assertClientError(areCredentialsExist, { - global: 'Setup Google OAuth credentials on API', - }); - - ctx.redirect(googleService.oAuthURL); -}; - -const signInGoogleWithCode = async (ctx: AppKoaContext) => { - const { code } = ctx.request.query; - - const { isValid, payload } = await googleService.exchangeCodeForToken(code); - - ctx.assertError(isValid && payload && !(payload instanceof Error), `Exchange code for token error: ${payload}`); - - const user = await userService.findOne({ email: payload.email }); - let userChanged; - - if (user) { - if (!user.oauth?.google) { - userChanged = await userService.updateOne({ _id: user._id }, (old) => ({ - ...old, - oauth: { google: true }, - })); - } - - const userUpdated = userChanged || user; - - await Promise.all([userService.updateLastRequest(userUpdated._id), authService.setTokens(ctx, userUpdated._id)]); - } else { - let newUser: User | undefined; - - const { givenName: firstName, familyName, email, picture: avatarUrl } = payload; - - const lastName = familyName || ''; - const fullName = lastName ? `${firstName} ${lastName}` : firstName; - - await db.database.withTransaction(async (session) => { - newUser = await userService.insertOne( - { - firstName, - lastName, - fullName, - email, - isEmailVerified: true, - avatarUrl, - oauth: { - google: true, - }, - }, - {}, - { session }, - ); - - await stripeService.createAndAttachStripeAccount(newUser, session); - }); - - if (newUser) { - await Promise.all([userService.updateLastRequest(newUser._id), authService.setTokens(ctx, newUser._id)]); - } - } - - ctx.redirect(config.WEB_URL); -}; - -export default (router: AppRouter) => { - router.get('/sign-in/google/auth', getOAuthUrl); - router.get('/sign-in/google', signInGoogleWithCode); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/remove-avatar.ts b/examples/stripe-subscriptions/apps/api/src/resources/account/actions/remove-avatar.ts deleted file mode 100644 index 189d649b9..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/remove-avatar.ts +++ /dev/null @@ -1,30 +0,0 @@ -import { userService } from 'resources/user'; - -import { cloudStorageService } from 'services'; - -import { AppKoaContext, AppRouter, Next } from 'types'; - -async function validator(ctx: AppKoaContext, next: Next) { - const { user } = ctx.state; - - ctx.assertClientError(user.avatarUrl, { global: "You don't have an avatar" }); - - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.state; - - const fileKey = cloudStorageService.getFileKey(user.avatarUrl); - - const [updatedUser] = await Promise.all([ - userService.updateOne({ _id: user._id }, () => ({ avatarUrl: null })), - cloudStorageService.deleteObject(fileKey), - ]); - - ctx.body = userService.getPublic(updatedUser); -} - -export default (router: AppRouter) => { - router.delete('/avatar', validator, handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/resend-email.ts b/examples/stripe-subscriptions/apps/api/src/resources/account/actions/resend-email.ts deleted file mode 100644 index a843bf7a5..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/resend-email.ts +++ /dev/null @@ -1,61 +0,0 @@ -import { z } from 'zod'; - -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; -import { emailService } from 'services'; -import { securityUtil } from 'utils'; - -import config from 'config'; - -import { EMAIL_REGEX } from 'app-constants'; -import { AppKoaContext, AppRouter, Next, Template, User } from 'types'; - -const schema = z.object({ - email: z.string().toLowerCase().regex(EMAIL_REGEX, 'Email format is incorrect.'), -}); - -interface ValidatedData extends z.infer { - user: User; -} - -async function validator(ctx: AppKoaContext, next: Next) { - const { email } = ctx.validatedData; - - const user = await userService.findOne({ email }); - - if (!user) { - ctx.status = 204; - return; - } - - ctx.validatedData.user = user; - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.validatedData; - - const resetPasswordToken = await securityUtil.generateSecureToken(); - - const resetPasswordUrl = `${config.API_URL}/account/verify-reset-token?token=${resetPasswordToken}&email=${encodeURIComponent(user.email)}`; - - await Promise.all([ - userService.updateOne({ _id: user._id }, () => ({ resetPasswordToken })), - emailService.sendTemplate({ - to: user.email, - subject: 'Password Reset Request for Ship', - template: Template.RESET_PASSWORD, - params: { - firstName: user.firstName, - href: resetPasswordUrl, - }, - }), - ]); - - ctx.status = 204; -} - -export default (router: AppRouter) => { - router.post('/resend-email', validateMiddleware(schema), validator, handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/reset-password.ts b/examples/stripe-subscriptions/apps/api/src/resources/account/actions/reset-password.ts deleted file mode 100644 index 6af145f33..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/reset-password.ts +++ /dev/null @@ -1,54 +0,0 @@ -import { z } from 'zod'; - -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; -import { securityUtil } from 'utils'; - -import { PASSWORD_REGEX } from 'app-constants'; -import { AppKoaContext, AppRouter, Next, User } from 'types'; - -const schema = z.object({ - token: z.string().min(1, 'Token is required'), - password: z - .string() - .regex( - PASSWORD_REGEX, - 'The password must contain 6 or more characters with at least one letter (a-z) and one number (0-9).', - ), -}); - -interface ValidatedData extends z.infer { - user: User; -} - -async function validator(ctx: AppKoaContext, next: Next) { - const { token } = ctx.validatedData; - - const user = await userService.findOne({ resetPasswordToken: token }); - - if (!user) { - ctx.status = 204; - return; - } - - ctx.validatedData.user = user; - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user, password } = ctx.validatedData; - - const passwordHash = await securityUtil.getHash(password); - - await userService.updateOne({ _id: user._id }, () => ({ - passwordHash, - resetPasswordToken: null, - })); - - ctx.status = 204; -} - -export default (router: AppRouter) => { - router.put('/reset-password', validateMiddleware(schema), validator, handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/shadow-login.ts b/examples/stripe-subscriptions/apps/api/src/resources/account/actions/shadow-login.ts deleted file mode 100644 index d5f961cb5..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/shadow-login.ts +++ /dev/null @@ -1,41 +0,0 @@ -import { z } from 'zod'; - -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; -import { authService } from 'services'; - -import config from 'config'; - -import { AppKoaContext, AppRouter, Next, User } from 'types'; - -const schema = z.object({ - id: z.string().min(1, 'User ID is required'), -}); - -interface ValidatedData extends z.infer { - user: User; -} - -async function validator(ctx: AppKoaContext, next: Next) { - const { id } = ctx.validatedData; - - const user = await userService.findOne({ _id: id }); - - ctx.assertClientError(user, { id: 'User does not exist' }); - - ctx.validatedData.user = user; - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.validatedData; - - await authService.setTokens(ctx, user._id, true); - - ctx.redirect(config.WEB_URL); -} - -export default (router: AppRouter) => { - router.post('/shadow-login', validateMiddleware(schema), validator, handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/sign-in.ts b/examples/stripe-subscriptions/apps/api/src/resources/account/actions/sign-in.ts deleted file mode 100644 index c15e41808..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/sign-in.ts +++ /dev/null @@ -1,59 +0,0 @@ -import { z } from 'zod'; - -import { userService } from 'resources/user'; - -import { rateLimitMiddleware, validateMiddleware } from 'middlewares'; -import { authService } from 'services'; -import { securityUtil } from 'utils'; - -import { EMAIL_REGEX, PASSWORD_REGEX } from 'app-constants'; -import { AppKoaContext, AppRouter, Next, User } from 'types'; - -const schema = z.object({ - email: z.string().toLowerCase().regex(EMAIL_REGEX, 'Email format is incorrect.'), - password: z - .string() - .regex( - PASSWORD_REGEX, - 'The password must contain 6 or more characters with at least one letter (a-z) and one number (0-9).', - ), -}); - -interface ValidatedData extends z.infer { - user: User; -} - -async function validator(ctx: AppKoaContext, next: Next) { - const { email, password } = ctx.validatedData; - - const user = await userService.findOne({ email }); - - ctx.assertClientError(user && user.passwordHash, { - credentials: 'The email or password you have entered is invalid', - }); - - const isPasswordMatch = await securityUtil.compareTextWithHash(password, user.passwordHash); - - ctx.assertClientError(isPasswordMatch, { - credentials: 'The email or password you have entered is invalid', - }); - - ctx.assertClientError(user.isEmailVerified, { - email: 'Please verify your email to sign in', - }); - - ctx.validatedData.user = user; - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.validatedData; - - await Promise.all([userService.updateLastRequest(user._id), authService.setTokens(ctx, user._id)]); - - ctx.body = userService.getPublic(user); -} - -export default (router: AppRouter) => { - router.post('/sign-in', rateLimitMiddleware, validateMiddleware(schema), validator, handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/sign-out.ts b/examples/stripe-subscriptions/apps/api/src/resources/account/actions/sign-out.ts deleted file mode 100644 index 217babea1..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/sign-out.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { authService } from 'services'; - -import { AppKoaContext, AppRouter } from 'types'; - -const handler = async (ctx: AppKoaContext) => { - await authService.unsetTokens(ctx); - - ctx.status = 204; -}; - -export default (router: AppRouter) => { - router.post('/sign-out', handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/sign-up.ts b/examples/stripe-subscriptions/apps/api/src/resources/account/actions/sign-up.ts deleted file mode 100644 index b7b55b620..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/sign-up.ts +++ /dev/null @@ -1,80 +0,0 @@ -import { z } from 'zod'; - -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; -import { analyticsService, emailService } from 'services'; -import { securityUtil } from 'utils'; - -import config from 'config'; - -import { EMAIL_REGEX, PASSWORD_REGEX } from 'app-constants'; -import { AppKoaContext, AppRouter, Next, Template } from 'types'; - -const schema = z.object({ - firstName: z.string().min(1, 'Please enter First name').max(100), - lastName: z.string().min(1, 'Please enter Last name').max(100), - email: z.string().toLowerCase().regex(EMAIL_REGEX, 'Email format is incorrect.'), - password: z - .string() - .regex( - PASSWORD_REGEX, - 'The password must contain 6 or more characters with at least one letter (a-z) and one number (0-9).', - ), -}); - -type ValidatedData = z.infer; - -async function validator(ctx: AppKoaContext, next: Next) { - const { email } = ctx.validatedData; - - const isUserExists = await userService.exists({ email }); - - ctx.assertClientError(!isUserExists, { - email: 'User with this email is already registered', - }); - - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { firstName, lastName, email, password } = ctx.validatedData; - - const [hash, signupToken] = await Promise.all([securityUtil.getHash(password), securityUtil.generateSecureToken()]); - - const user = await userService.insertOne({ - email, - firstName, - lastName, - fullName: `${firstName} ${lastName}`, - passwordHash: hash.toString(), - isEmailVerified: false, - signupToken, - }); - - analyticsService.track('New user created', { - firstName, - lastName, - }); - - await emailService.sendTemplate({ - to: user.email, - subject: 'Please Confirm Your Email Address for Ship', - template: Template.VERIFY_EMAIL, - params: { - firstName: user.firstName, - href: `${config.API_URL}/account/verify-email?token=${signupToken}`, - }, - }); - - if (config.IS_DEV) { - ctx.body = { signupToken }; - return; - } - - ctx.status = 204; -} - -export default (router: AppRouter) => { - router.post('/sign-up', validateMiddleware(schema), validator, handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/update.ts b/examples/stripe-subscriptions/apps/api/src/resources/account/actions/update.ts deleted file mode 100644 index 73f97b85c..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/update.ts +++ /dev/null @@ -1,59 +0,0 @@ -import _ from 'lodash'; -import { z } from 'zod'; - -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; -import { securityUtil } from 'utils'; - -import { PASSWORD_REGEX } from 'app-constants'; -import { AppKoaContext, AppRouter, Next } from 'types'; - -const schema = z - .object({ - firstName: z.string().min(1, 'Please enter First name').max(100).optional(), - lastName: z.string().min(1, 'Please enter Last name').max(100).optional(), - password: z - .string() - .regex( - PASSWORD_REGEX, - 'The password must contain 6 or more characters with at least one letter (a-z) and one number (0-9).', - ) - .optional(), - }) - .strict(); - -interface ValidatedData extends z.infer { - passwordHash?: string | null; -} - -async function validator(ctx: AppKoaContext, next: Next) { - const { user } = ctx.state; - const { password } = ctx.validatedData; - - if (_.isEmpty(ctx.validatedData)) { - ctx.body = userService.getPublic(user); - - return; - } - - if (password) { - ctx.validatedData.passwordHash = await securityUtil.getHash(password); - - delete ctx.validatedData.password; - } - - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.state; - - const updatedUser = await userService.updateOne({ _id: user._id }, () => _.pickBy(ctx.validatedData)); - - ctx.body = userService.getPublic(updatedUser); -} - -export default (router: AppRouter) => { - router.put('/', validateMiddleware(schema), validator, handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/upload-avatar.ts b/examples/stripe-subscriptions/apps/api/src/resources/account/actions/upload-avatar.ts deleted file mode 100644 index 35db0cfa3..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/upload-avatar.ts +++ /dev/null @@ -1,37 +0,0 @@ -import multer from '@koa/multer'; - -import { userService } from 'resources/user'; - -import { cloudStorageService } from 'services'; - -import { AppKoaContext, AppRouter, Next } from 'types'; - -const upload = multer(); - -async function validator(ctx: AppKoaContext, next: Next) { - const { file } = ctx.request; - - ctx.assertClientError(file, { global: 'File cannot be empty' }); - - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.state; - const { file } = ctx.request; - - if (user.avatarUrl) { - const fileKey = cloudStorageService.getFileKey(user.avatarUrl); - - await cloudStorageService.deleteObject(fileKey); - } - - const fileName = `${user._id}-${Date.now()}-${file.originalname}`; - const { location: avatarUrl } = await cloudStorageService.uploadPublic(`avatars/${fileName}`, file); - - ctx.body = await userService.updateOne({ _id: user._id }, () => ({ avatarUrl })).then(userService.getPublic); -} - -export default (router: AppRouter) => { - router.post('/avatar', upload.single('file'), validator, handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/verify-email.ts b/examples/stripe-subscriptions/apps/api/src/resources/account/actions/verify-email.ts deleted file mode 100644 index 7c95f2a92..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/verify-email.ts +++ /dev/null @@ -1,69 +0,0 @@ -import { z } from 'zod'; - -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; -import { authService, emailService, stripeService } from 'services'; - -import config from 'config'; - -import db from 'db'; - -import { AppKoaContext, AppRouter, Next, Template, User } from 'types'; - -const schema = z.object({ - token: z.string().min(1, 'Token is required'), -}); - -interface ValidatedData extends z.infer { - user: User; -} - -async function validator(ctx: AppKoaContext, next: Next) { - const user = await userService.findOne({ signupToken: ctx.validatedData.token }); - - if (!user) { - ctx.redirect(`${config.WEB_URL}/sign-in`); - - return; - } - - ctx.validatedData.user = user; - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.validatedData; - - await db.database.withTransaction(async (session) => { - await userService.updateOne( - { _id: user._id }, - () => ({ - isEmailVerified: true, - signupToken: null, - }), - {}, - { session }, - ); - - await stripeService.createAndAttachStripeAccount(user, session); - }); - - await Promise.all([userService.updateLastRequest(user._id), authService.setTokens(ctx, user._id)]); - - await emailService.sendTemplate({ - to: user.email, - subject: 'Welcome to Ship Community!', - template: Template.SIGN_UP_WELCOME, - params: { - firstName: user.firstName, - href: `${config.WEB_URL}/sign-in`, - }, - }); - - ctx.redirect(config.WEB_URL); -} - -export default (router: AppRouter) => { - router.get('/verify-email', validateMiddleware(schema), validator, handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/verify-reset-token.ts b/examples/stripe-subscriptions/apps/api/src/resources/account/actions/verify-reset-token.ts deleted file mode 100644 index ada85fe8e..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/account/actions/verify-reset-token.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { z } from 'zod'; - -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; - -import config from 'config'; - -import { EMAIL_REGEX } from 'app-constants'; -import { AppKoaContext, AppRouter, User } from 'types'; - -const schema = z.object({ - email: z.string().toLowerCase().regex(EMAIL_REGEX, 'Email format is incorrect.'), - token: z.string().min(1, 'Token is required'), -}); - -interface ValidatedData extends z.infer { - user: User; -} - -async function validator(ctx: AppKoaContext) { - const { email, token } = ctx.validatedData; - - const user = await userService.findOne({ resetPasswordToken: token }); - - const redirectUrl = user - ? `${config.WEB_URL}/reset-password?token=${token}` - : `${config.WEB_URL}/expire-token?email=${email}`; - - ctx.redirect(redirectUrl); -} - -export default (router: AppRouter) => { - router.get('/verify-reset-token', validateMiddleware(schema), validator); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/account/index.ts b/examples/stripe-subscriptions/apps/api/src/resources/account/index.ts deleted file mode 100644 index ba792e663..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/account/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -import accountRoutes from './account.routes'; - -export { accountRoutes }; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/payment/actions/create-setup-intent.ts b/examples/stripe-subscriptions/apps/api/src/resources/payment/actions/create-setup-intent.ts deleted file mode 100644 index dd3c656a0..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/payment/actions/create-setup-intent.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { stripeService } from 'services'; - -import { AppKoaContext, AppRouter, Next } from 'types'; - -async function validator(ctx: AppKoaContext, next: Next) { - const { user } = ctx.state; - - ctx.assertError(user.stripeId, 'Customer does not have a stripe account'); - - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.state; - - const setupIntent = await stripeService.setupIntents.create({ - customer: user.stripeId || undefined, - payment_method_types: ['card'], - }); - - ctx.body = { clientSecret: setupIntent.client_secret }; -} - -export default (router: AppRouter) => { - router.post('/create-setup-intent', validator, handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/payment/actions/get-history.ts b/examples/stripe-subscriptions/apps/api/src/resources/payment/actions/get-history.ts deleted file mode 100644 index b7ad42e94..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/payment/actions/get-history.ts +++ /dev/null @@ -1,54 +0,0 @@ -import { z } from 'zod'; - -import { validateMiddleware } from 'middlewares'; -import { stripeService } from 'services'; - -import { AppKoaContext, AppRouter, Next } from 'types'; - -enum PageDirections { - BACK = 'back', - FORWARD = 'forward', -} - -const stripeDirectionMap = { - [PageDirections.BACK]: 'ending_before', - [PageDirections.FORWARD]: 'starting_after', -}; - -const schema = z.object({ - cursorId: z.string().optional(), - direction: z.enum([PageDirections.BACK, PageDirections.FORWARD]).default(PageDirections.FORWARD), - perPage: z.string().transform(Number).default('5'), -}); - -type ValidatedData = z.infer; - -async function validator(ctx: AppKoaContext, next: Next) { - const { user } = ctx.state; - - ctx.assertError(user.stripeId, 'Customer does not have a stripe account'); - - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { direction, perPage, cursorId } = ctx.validatedData; - const { user } = ctx.state; - - const charges = await stripeService.charges.list({ - limit: perPage, - customer: user.stripeId as string, - [stripeDirectionMap[direction]]: cursorId, - }); - - ctx.body = { - data: charges.data, - hasMore: direction === PageDirections.FORWARD ? charges.has_more : true, - firstItemId: charges.data[0]?.id, - lastItemId: charges.data[charges.data.length - 1]?.id, - }; -} - -export default (router: AppRouter) => { - router.get('/get-history', validateMiddleware(schema), validator, handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/payment/actions/get-payment-information.ts b/examples/stripe-subscriptions/apps/api/src/resources/payment/actions/get-payment-information.ts deleted file mode 100644 index 3b515b6aa..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/payment/actions/get-payment-information.ts +++ /dev/null @@ -1,55 +0,0 @@ -import _ from 'lodash'; -import Stripe from 'stripe'; - -import { stripeService } from 'services'; - -import { AppKoaContext, AppRouter, Next } from 'types'; - -const publicCardFields = ['brand', 'exp_month', 'exp_year', 'last4']; - -async function validator(ctx: AppKoaContext, next: Next) { - const { user } = ctx.state; - - if (!user.stripeId) { - ctx.body = null; - return; - } - - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.state; - - const paymentInformation: Stripe.Customer | Stripe.DeletedCustomer = await stripeService.customers.retrieve( - user.stripeId as string, - { - expand: ['invoice_settings.default_payment_method'], - }, - ); - - if (!paymentInformation) { - ctx.body = null; - return; - } - - if ('invoice_settings' in paymentInformation && paymentInformation.invoice_settings) { - const paymentMethod = paymentInformation.invoice_settings.default_payment_method as - | Stripe.PaymentMethod - | undefined; - - const card = paymentMethod?.card; - - const billingDetails = paymentMethod?.billing_details; - - ctx.body = { - balance: paymentInformation.balance, - billingDetails, - card: card && _.pick(card, publicCardFields), - }; - } -} - -export default (router: AppRouter) => { - router.get('/payment-information', validator, handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/payment/index.ts b/examples/stripe-subscriptions/apps/api/src/resources/payment/index.ts deleted file mode 100644 index 0e54afa09..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/payment/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -import paymentRoutes from './payment.routes'; - -export { paymentRoutes }; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/payment/payment.routes.ts b/examples/stripe-subscriptions/apps/api/src/resources/payment/payment.routes.ts deleted file mode 100644 index 21cb5b871..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/payment/payment.routes.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { routeUtil } from 'utils'; - -import createSetupIntent from './actions/create-setup-intent'; -import getHistory from './actions/get-history'; -import getPaymentInformation from './actions/get-payment-information'; - -const privateRoutes = routeUtil.getRoutes([getPaymentInformation, getHistory, createSetupIntent]); - -export default { - privateRoutes, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/subscription/actions/cancel.ts b/examples/stripe-subscriptions/apps/api/src/resources/subscription/actions/cancel.ts deleted file mode 100644 index 00495c628..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/subscription/actions/cancel.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { stripeService } from 'services'; - -import { AppKoaContext, AppRouter, Next } from 'types'; - -async function validator(ctx: AppKoaContext, next: Next) { - const { user } = ctx.state; - - ctx.assertClientError(user.subscription, { global: 'Subscription does not exist' }, 400); - - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.state; - - await stripeService.subscriptions.update(user.subscription?.subscriptionId as string, { - cancel_at_period_end: true, - }); - - ctx.body = {}; -} - -export default (router: AppRouter) => { - router.post('/cancel-subscription', validator, handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/subscription/actions/get-current.ts b/examples/stripe-subscriptions/apps/api/src/resources/subscription/actions/get-current.ts deleted file mode 100644 index d20349c3f..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/subscription/actions/get-current.ts +++ /dev/null @@ -1,41 +0,0 @@ -import { stripeService } from 'services'; - -import { AppKoaContext, AppRouter, Next } from 'types'; - -async function validator(ctx: AppKoaContext, next: Next) { - const { user } = ctx.state; - - if (!user.subscription) { - ctx.body = null; - - return; - } - - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.state; - - const product = await stripeService.products.retrieve(user.subscription?.productId as string); - - const pendingInvoice = await stripeService.invoices.retrieveUpcoming({ - subscription: user.subscription?.subscriptionId, - }); - - ctx.body = { - ...user.subscription, - product, - pendingInvoice: { - subtotal: pendingInvoice.subtotal, - tax: pendingInvoice.tax, - total: pendingInvoice.total, - amountDue: pendingInvoice.amount_due, - status: pendingInvoice.status, - }, - }; -} - -export default (router: AppRouter) => { - router.get('/current', validator, handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/subscription/actions/preview-upgrade.ts b/examples/stripe-subscriptions/apps/api/src/resources/subscription/actions/preview-upgrade.ts deleted file mode 100644 index be441f0f7..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/subscription/actions/preview-upgrade.ts +++ /dev/null @@ -1,66 +0,0 @@ -import { z } from 'zod'; - -import { validateMiddleware } from 'middlewares'; -import { stripeService } from 'services'; - -import { AppKoaContext, AppRouter, Next } from 'types'; - -const schema = z.object({ - priceId: z.string().min(1, 'Price id is required').startsWith('price_', 'Incorrect price id'), -}); - -type ValidatedData = z.infer; - -async function validator(ctx: AppKoaContext, next: Next) { - const { user } = ctx.state; - - ctx.assertClientError(user.subscription, { global: 'Subscription does not exist' }, 400); - - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.state; - const { priceId } = ctx.validatedData; - - const subscriptionDetails = await stripeService.subscriptions.retrieve(user.subscription?.subscriptionId as string); - - let items: object[]; - - if (priceId === 'price_0') { - items = [ - { - id: subscriptionDetails.items.data[0].id, - price_data: { - currency: 'USD', - product: user.subscription?.productId, - recurring: { - interval: subscriptionDetails.items.data[0].price.recurring?.interval, - interval_count: 1, - }, - unit_amount: 0, - }, - }, - ]; - } else { - items = [ - { - id: subscriptionDetails.items.data[0].id, - price: priceId, - }, - ]; - } - - const invoice = await stripeService.invoices.retrieveUpcoming({ - customer: user.stripeId || undefined, - subscription: user.subscription?.subscriptionId, - subscription_items: items, - subscription_proration_behavior: 'always_invoice', - }); - - ctx.body = { invoice }; -} - -export default (router: AppRouter) => { - router.get('/preview-upgrade', validateMiddleware(schema), validator, handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/subscription/actions/subscribe.ts b/examples/stripe-subscriptions/apps/api/src/resources/subscription/actions/subscribe.ts deleted file mode 100644 index ce2e05482..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/subscription/actions/subscribe.ts +++ /dev/null @@ -1,40 +0,0 @@ -import { z } from 'zod'; - -import { validateMiddleware } from 'middlewares'; -import { stripeService } from 'services'; - -import config from 'config'; - -import { AppKoaContext, AppRouter } from 'types'; - -const schema = z.object({ - priceId: z.string().min(1, 'Price id is required'), -}); - -type ValidatedData = z.infer; - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.state; - const { priceId } = ctx.validatedData; - - const session = await stripeService.checkout.sessions.create({ - mode: 'subscription', - customer: user.stripeId as string, - line_items: [ - { - quantity: 1, - price: priceId, - }, - ], - success_url: `${config.WEB_URL}?subscriptionPlan=${priceId}`, - cancel_url: config.WEB_URL, - }); - - ctx.assertClientError(session.url, { global: 'Unable to retrieve session url' }, 503); - - ctx.body = { checkoutLink: session.url }; -} - -export default (router: AppRouter) => { - router.post('/subscribe', validateMiddleware(schema), handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/subscription/actions/upgrade.ts b/examples/stripe-subscriptions/apps/api/src/resources/subscription/actions/upgrade.ts deleted file mode 100644 index 29c0cfb2d..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/subscription/actions/upgrade.ts +++ /dev/null @@ -1,57 +0,0 @@ -import { z } from 'zod'; - -import { validateMiddleware } from 'middlewares'; -import { stripeService } from 'services'; - -import { AppKoaContext, AppRouter, Next } from 'types'; - -const schema = z.object({ - priceId: z.string().min(1, 'Price id is required').startsWith('price_', 'Incorrect price id'), -}); - -type ValidatedData = z.infer; - -async function validator(ctx: AppKoaContext, next: Next) { - const { user } = ctx.state; - - ctx.assertError(user.stripeId, 'Customer does not have a stripe account'); - - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { user } = ctx.state; - const { priceId } = ctx.validatedData; - - const subscriptionId = user.subscription?.subscriptionId as string; - - if (priceId === 'price_0') { - await stripeService.subscriptions.deleteDiscount(subscriptionId, { - prorate: true, - }); - - ctx.body = {}; - return; - } - - const subscriptionDetails = await stripeService.subscriptions.retrieve(subscriptionId); - - const items = [ - { - id: subscriptionDetails.items.data[0].id, - price: priceId, - }, - ]; - - await stripeService.subscriptions.update(subscriptionId, { - proration_behavior: 'always_invoice', - cancel_at_period_end: false, - items, - }); - - ctx.body = {}; -} - -export default (router: AppRouter) => { - router.post('/upgrade', validateMiddleware(schema), validator, handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/subscription/index.ts b/examples/stripe-subscriptions/apps/api/src/resources/subscription/index.ts deleted file mode 100644 index 2a9c7fb9c..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/subscription/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -import subscriptionRoutes from './subscription.routes'; - -export { subscriptionRoutes }; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/subscription/subscription.routes.ts b/examples/stripe-subscriptions/apps/api/src/resources/subscription/subscription.routes.ts deleted file mode 100644 index 63416808d..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/subscription/subscription.routes.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { routeUtil } from 'utils'; - -import cancel from './actions/cancel'; -import getCurrent from './actions/get-current'; -import previewUpgrade from './actions/preview-upgrade'; -import subscribe from './actions/subscribe'; -import upgrade from './actions/upgrade'; - -const privateRoutes = routeUtil.getRoutes([getCurrent, subscribe, previewUpgrade, upgrade, cancel]); - -export default { - privateRoutes, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/token/index.ts b/examples/stripe-subscriptions/apps/api/src/resources/token/index.ts deleted file mode 100644 index 7d6d240b5..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/token/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -import tokenService from './token.service'; - -export { tokenService }; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/token/token.service.ts b/examples/stripe-subscriptions/apps/api/src/resources/token/token.service.ts deleted file mode 100644 index 0038f96ec..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/token/token.service.ts +++ /dev/null @@ -1,54 +0,0 @@ -import { securityUtil } from 'utils'; - -import db from 'db'; - -import { DATABASE_DOCUMENTS } from 'app-constants'; -import { tokenSchema } from 'schemas'; -import { Token, TokenType } from 'types'; - -const service = db.createService(DATABASE_DOCUMENTS.TOKENS, { - schemaValidator: (obj) => tokenSchema.parseAsync(obj), -}); - -const createToken = async (userId: string, type: TokenType, isShadow?: boolean) => { - const payload = { - tokenType: type, - userId, - isShadow: isShadow || null, - } - const value = await securityUtil.generateJwtToken(payload); - - return service.insertOne({ - type, - value, - userId, - isShadow: isShadow || null, - }); -}; - -const createAuthTokens = async ({ userId, isShadow }: { userId: string; isShadow?: boolean }) => { - const accessTokenEntity = await createToken(userId, TokenType.ACCESS, isShadow); - - return { - accessToken: accessTokenEntity.value, - }; -}; - -const findTokenByValue = async (token: string) => { - const tokenEntity = await securityUtil.verifyJwtToken(token); - - return ( - tokenEntity && { - userId: tokenEntity.userId, - isShadow: tokenEntity.isShadow, - } - ); -}; - -const removeAuthTokens = async (accessToken: string) => service.deleteMany({ value: { $in: [accessToken] } }); - -export default Object.assign(service, { - createAuthTokens, - findTokenByValue, - removeAuthTokens, -}); diff --git a/examples/stripe-subscriptions/apps/api/src/resources/user/actions/list.ts b/examples/stripe-subscriptions/apps/api/src/resources/user/actions/list.ts deleted file mode 100644 index 9ea5a3f42..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/user/actions/list.ts +++ /dev/null @@ -1,69 +0,0 @@ -import { z } from 'zod'; - -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; -import { stringUtil } from 'utils'; - -import { paginationSchema } from 'schemas'; -import { AppKoaContext, AppRouter, NestedKeys, User } from 'types'; - -const schema = paginationSchema.extend({ - filter: z - .object({ - createdOn: z - .object({ - startDate: z.coerce.date().optional(), - endDate: z.coerce.date().optional(), - }) - .optional(), - }) - .optional(), -}); - -type ValidatedData = z.infer; - -async function handler(ctx: AppKoaContext) { - const { perPage, page, sort, searchValue, filter } = ctx.validatedData; - - const filterOptions = []; - - if (searchValue) { - const searchPattern = stringUtil.escapeRegExpString(searchValue); - - const searchFields: NestedKeys[] = ['firstName', 'lastName', 'email']; - - filterOptions.push({ - $or: searchFields.map((field) => ({ [field]: { $regex: searchPattern } })), - }); - } - - if (filter) { - const { createdOn, ...otherFilters } = filter; - - if (createdOn) { - const { startDate, endDate } = createdOn; - - filterOptions.push({ - createdOn: { - ...(startDate && { $gte: startDate }), - ...(endDate && { $lt: endDate }), - }, - }); - } - - Object.entries(otherFilters).forEach(([key, value]) => { - filterOptions.push({ [key]: value }); - }); - } - - ctx.body = await userService.find( - { ...(filterOptions.length && { $and: filterOptions }) }, - { page, perPage }, - { sort }, - ); -} - -export default (router: AppRouter) => { - router.get('/', validateMiddleware(schema), handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/user/actions/remove.ts b/examples/stripe-subscriptions/apps/api/src/resources/user/actions/remove.ts deleted file mode 100644 index 154e57fed..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/user/actions/remove.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { userService } from 'resources/user'; - -import { AppKoaContext, AppRouter, Next } from 'types'; - -type ValidatedData = never; -type Request = { - params: { - id: string; - }; -}; - -async function validator(ctx: AppKoaContext, next: Next) { - const isUserExists = await userService.exists({ _id: ctx.request.params.id }); - - ctx.assertError(isUserExists, 'User not found'); - - await next(); -} - -async function handler(ctx: AppKoaContext) { - await userService.deleteSoft({ _id: ctx.request.params.id }); - - ctx.status = 204; -} - -export default (router: AppRouter) => { - router.delete('/:id', validator, handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/user/actions/update.ts b/examples/stripe-subscriptions/apps/api/src/resources/user/actions/update.ts deleted file mode 100644 index 26f0b1898..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/user/actions/update.ts +++ /dev/null @@ -1,45 +0,0 @@ -import { z } from 'zod'; - -import { userService } from 'resources/user'; - -import { validateMiddleware } from 'middlewares'; - -import { EMAIL_REGEX } from 'app-constants'; -import { AppKoaContext, AppRouter, Next } from 'types'; - -const schema = z.object({ - firstName: z.string().min(1, 'Please enter First name').max(100), - lastName: z.string().min(1, 'Please enter Last name').max(100), - email: z.string().toLowerCase().regex(EMAIL_REGEX, 'Email format is incorrect.'), -}); - -type ValidatedData = z.infer; -type Request = { - params: { - id: string; - }; -}; - -async function validator(ctx: AppKoaContext, next: Next) { - const isUserExists = await userService.exists({ _id: ctx.request.params.id }); - - ctx.assertError(isUserExists, 'User not found'); - - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { firstName, lastName, email } = ctx.validatedData; - - const updatedUser = await userService.updateOne({ _id: ctx.request.params?.id }, () => ({ - firstName, - lastName, - email, - })); - - ctx.body = userService.getPublic(updatedUser); -} - -export default (router: AppRouter) => { - router.put('/:id', validator, validateMiddleware(schema), handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/user/index.ts b/examples/stripe-subscriptions/apps/api/src/resources/user/index.ts deleted file mode 100644 index 7ea3b1c0b..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/user/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -import userRoutes from './user.routes'; -import userService from './user.service'; - -import './user.handler'; - -export { userRoutes, userService }; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/user/tests/user.service.spec.ts b/examples/stripe-subscriptions/apps/api/src/resources/user/tests/user.service.spec.ts deleted file mode 100644 index f74df1f13..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/user/tests/user.service.spec.ts +++ /dev/null @@ -1,42 +0,0 @@ -import { Database } from '@paralect/node-mongo'; - -import { DATABASE_DOCUMENTS } from 'app-constants'; -import { userSchema } from 'schemas'; -import { User } from 'types'; - -const database = new Database(process.env.MONGO_URL as string); - -const userService = database.createService(DATABASE_DOCUMENTS.USERS, { - schemaValidator: (obj) => userSchema.parseAsync(obj), -}); - -describe('User service', () => { - beforeAll(async () => { - await database.connect(); - }); - - beforeEach(async () => { - await userService.deleteMany({}); - }); - - it('should create user', async () => { - const mockUser = { - _id: '123asdqwer', - firstName: 'John', - lastName: 'Smith', - fullName: 'John Smith', - email: 'smith@example.com', - isEmailVerified: false, - }; - - await userService.insertOne(mockUser); - - const insertedUser = await userService.findOne({ _id: mockUser._id }); - - expect(insertedUser).not.toBeNull(); - }); - - afterAll(async () => { - await database.close(); - }); -}); diff --git a/examples/stripe-subscriptions/apps/api/src/resources/user/user.handler.ts b/examples/stripe-subscriptions/apps/api/src/resources/user/user.handler.ts deleted file mode 100644 index 2892605d4..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/user/user.handler.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { eventBus, InMemoryEvent } from '@paralect/node-mongo'; - -import ioEmitter from 'io-emitter'; - -import logger from 'logger'; - -import { DATABASE_DOCUMENTS } from 'app-constants'; -import { User } from 'types'; - -import userService from './user.service'; - -const { USERS } = DATABASE_DOCUMENTS; - -eventBus.on(`${USERS}.updated`, (data: InMemoryEvent) => { - try { - const user = data.doc; - - ioEmitter.publishToUser(user._id, 'user:updated', userService.getPublic(user)); - } catch (err) { - logger.error(`${USERS}.updated handler error: ${err}`); - } -}); - -eventBus.onUpdated(USERS, ['firstName', 'lastName'], async (data: InMemoryEvent) => { - try { - const user = data.doc; - const fullName = user.lastName ? `${user.firstName} ${user.lastName}` : user.firstName; - - await userService.atomic.updateOne({ _id: user._id }, { $set: { fullName } }); - } catch (err) { - logger.error(`${USERS} onUpdated ['firstName', 'lastName'] handler error: ${err}`); - } -}); diff --git a/examples/stripe-subscriptions/apps/api/src/resources/user/user.routes.ts b/examples/stripe-subscriptions/apps/api/src/resources/user/user.routes.ts deleted file mode 100644 index 36504e198..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/user/user.routes.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { routeUtil } from 'utils'; - -import list from './actions/list'; -import remove from './actions/remove'; -import update from './actions/update'; - -const publicRoutes = routeUtil.getRoutes([]); - -const privateRoutes = routeUtil.getRoutes([list]); - -const adminRoutes = routeUtil.getRoutes([list, update, remove]); - -export default { - publicRoutes, - privateRoutes, - adminRoutes, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/user/user.service.ts b/examples/stripe-subscriptions/apps/api/src/resources/user/user.service.ts deleted file mode 100644 index 6768f412d..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/user/user.service.ts +++ /dev/null @@ -1,30 +0,0 @@ -import _ from 'lodash'; - -import db from 'db'; - -import { DATABASE_DOCUMENTS } from 'app-constants'; -import { userSchema } from 'schemas'; -import { User } from 'types'; - -const service = db.createService(DATABASE_DOCUMENTS.USERS, { - schemaValidator: (obj) => userSchema.parseAsync(obj), -}); - -const updateLastRequest = (_id: string) => - service.atomic.updateOne( - { _id }, - { - $set: { - lastRequest: new Date(), - }, - }, - ); - -const privateFields = ['passwordHash', 'signupToken', 'resetPasswordToken']; - -const getPublic = (user: User | null) => _.omit(user, privateFields); - -export default Object.assign(service, { - updateLastRequest, - getPublic, -}); diff --git a/examples/stripe-subscriptions/apps/api/src/resources/webhook/actions/stripe/index.ts b/examples/stripe-subscriptions/apps/api/src/resources/webhook/actions/stripe/index.ts deleted file mode 100644 index d27b752ec..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/webhook/actions/stripe/index.ts +++ /dev/null @@ -1,90 +0,0 @@ -import Stripe from 'stripe'; - -import { stripeService } from 'services'; - -import config from 'config'; - -import { AppKoaContext, AppRouter, Next } from 'types'; - -import stripeHandler from './stripe-handler'; - -interface ValidatedData { - event: Stripe.Event; -} - -type SubscriptionUpdate = Stripe.Subscription & { - plan: { - id: string; - product: string; - interval: string; - }; -}; -async function validator(ctx: AppKoaContext, next: Next) { - const signature = ctx.request.header['stripe-signature']; - - ctx.assertError(signature, 'Stripe signature header is missing'); - - try { - const event = stripeService.webhooks.constructEvent(ctx.request.rawBody, signature, config.STRIPE_WEBHOOK_SECRET); - - ctx.validatedData = { - event, - }; - } catch (err) { - ctx.throwError(`Webhook Error: ${err}`); - } - - await next(); -} - -async function handler(ctx: AppKoaContext) { - const { event } = ctx.validatedData; - - let paymentMethod: Stripe.PaymentMethod; - let setupIntent: Stripe.SetupIntent; - - switch (event.type) { - case 'setup_intent.succeeded': - setupIntent = event.data.object; - - await Promise.all([ - stripeHandler.updateCustomerDefaultPaymentMethod({ - customer: setupIntent.customer as string, - paymentMethod: setupIntent.payment_method as string, - }), - stripeHandler.updateSubscriptionPaymentMethod({ - customer: setupIntent.customer as string, - paymentMethod: setupIntent.payment_method as string, - }), - ]); - break; - - case 'customer.subscription.created': - await stripeHandler.updateUserSubscription(event.data.object as SubscriptionUpdate); - break; - - case 'payment_method.attached': - paymentMethod = event.data.object; - await stripeHandler.updateCustomerDefaultPaymentMethod({ - customer: paymentMethod.customer as string, - paymentMethod: paymentMethod.id as string, - }); - break; - - case 'customer.subscription.updated': - await stripeHandler.updateUserSubscription(event.data.object as SubscriptionUpdate); - break; - - case 'customer.subscription.deleted': - await stripeHandler.deleteUserSubscription(event.data.object); - break; - default: - logger.info('Unhandled event type', event.type); - } - - ctx.status = 200; -} - -export default (router: AppRouter) => { - router.post('/stripe', validator, handler); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/webhook/actions/stripe/stripe-handler.ts b/examples/stripe-subscriptions/apps/api/src/resources/webhook/actions/stripe/stripe-handler.ts deleted file mode 100644 index be8d88061..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/webhook/actions/stripe/stripe-handler.ts +++ /dev/null @@ -1,89 +0,0 @@ -import Stripe from 'stripe'; - -import { userService } from 'resources/user'; - -import { stripeService } from 'services'; - -import logger from 'logger'; - -type PaymentMethodType = { - customer: string; - paymentMethod: string; -}; - -const updateCustomerDefaultPaymentMethod = async (data: PaymentMethodType) => { - try { - await stripeService.customers.update(data.customer, { - invoice_settings: { - default_payment_method: data.paymentMethod, - }, - }); - } catch (error) { - logger.error(`Error updating customer ${data.customer} default payment method`, error); - } -}; - -const updateSubscriptionPaymentMethod = async (data: PaymentMethodType) => { - try { - const user = await userService.findOne({ stripeId: data.customer }); - - if (user?.subscription?.subscriptionId) { - await stripeService.subscriptions.update(user?.subscription?.subscriptionId, { - default_payment_method: data.paymentMethod, - }); - } - } catch (error) { - logger.error(`Error changing default subscription payment method for customer ${data.customer}`, error); - } -}; - -const updateUserSubscription = async ( - data: Stripe.Subscription & { - plan: { - id: string; - product: string; - interval: string; - }; - }, -) => { - const subscription = { - subscriptionId: data.id, - priceId: data.plan.id, - productId: data.plan?.product, - status: data.status, - interval: data.plan?.interval, - currentPeriodStartDate: data.current_period_start, - currentPeriodEndDate: data.current_period_end, - cancelAtPeriodEnd: data.cancel_at_period_end, - }; - - return userService.atomic.updateOne( - { - stripeId: data.customer as string, - }, - { - $set: { - subscription, - }, - }, - ); -}; - -const deleteUserSubscription = async (data: Stripe.Subscription) => - userService.atomic.updateOne( - { - stripeId: data.customer as string, - }, - { - $unset: { - subscription: '', - }, - }, - ); - -export default { - updateCustomerDefaultPaymentMethod, - updateSubscriptionPaymentMethod, - updateUserSubscription, - deleteUserSubscription, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/webhook/index.ts b/examples/stripe-subscriptions/apps/api/src/resources/webhook/index.ts deleted file mode 100644 index 8f0f84fd1..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/webhook/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -import webhookRoutes from './webhook.routes'; - -export { webhookRoutes }; diff --git a/examples/stripe-subscriptions/apps/api/src/resources/webhook/webhook.routes.ts b/examples/stripe-subscriptions/apps/api/src/resources/webhook/webhook.routes.ts deleted file mode 100644 index 91e20908e..000000000 --- a/examples/stripe-subscriptions/apps/api/src/resources/webhook/webhook.routes.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { routeUtil } from 'utils'; - -import stripeWebhook from './actions/stripe'; - -const publicRoutes = routeUtil.getRoutes([stripeWebhook]); - -export default { - publicRoutes, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/routes/admin.routes.ts b/examples/stripe-subscriptions/apps/api/src/routes/admin.routes.ts deleted file mode 100644 index 3a5b77be2..000000000 --- a/examples/stripe-subscriptions/apps/api/src/routes/admin.routes.ts +++ /dev/null @@ -1,14 +0,0 @@ -import compose from 'koa-compose'; -import mount from 'koa-mount'; - -import { accountRoutes } from 'resources/account'; -import { userRoutes } from 'resources/user'; - -import { AppKoa } from 'types'; - -import adminAuth from './middlewares/admin-auth.middleware'; - -export default (app: AppKoa) => { - app.use(mount('/admin/account', compose([adminAuth, accountRoutes.adminRoutes]))); - app.use(mount('/admin/users', compose([adminAuth, userRoutes.adminRoutes]))); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/routes/index.ts b/examples/stripe-subscriptions/apps/api/src/routes/index.ts deleted file mode 100644 index 8f71b12df..000000000 --- a/examples/stripe-subscriptions/apps/api/src/routes/index.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { AppKoa } from 'types'; - -import attachCustomErrors from './middlewares/attach-custom-errors.middleware'; -import attachCustomProperties from './middlewares/attach-custom-properties.middleware'; -import extractTokens from './middlewares/extract-tokens.middleware'; -import routeErrorHandler from './middlewares/route-error-handler.middleware'; -import tryToAttachUser from './middlewares/try-to-attach-user.middleware'; -import adminRoutes from './admin.routes'; -import privateRoutes from './private.routes'; -import publicRoutes from './public.routes'; - -const defineRoutes = (app: AppKoa) => { - app.use(attachCustomErrors); - app.use(attachCustomProperties); - app.use(routeErrorHandler); - app.use(extractTokens); - app.use(tryToAttachUser); - - publicRoutes(app); - privateRoutes(app); - adminRoutes(app); -}; - -export default defineRoutes; diff --git a/examples/stripe-subscriptions/apps/api/src/routes/middlewares/admin-auth.middleware.ts b/examples/stripe-subscriptions/apps/api/src/routes/middlewares/admin-auth.middleware.ts deleted file mode 100644 index f4f7b895e..000000000 --- a/examples/stripe-subscriptions/apps/api/src/routes/middlewares/admin-auth.middleware.ts +++ /dev/null @@ -1,17 +0,0 @@ -import config from 'config'; - -import { AppKoaContext, Next } from 'types'; - -const adminAuth = (ctx: AppKoaContext, next: Next) => { - const adminKey = ctx.header['x-admin-key']; - - if (config.ADMIN_KEY && config.ADMIN_KEY === adminKey) { - return next(); - } - - ctx.status = 401; - - return null; -}; - -export default adminAuth; diff --git a/examples/stripe-subscriptions/apps/api/src/routes/middlewares/attach-custom-errors.middleware.ts b/examples/stripe-subscriptions/apps/api/src/routes/middlewares/attach-custom-errors.middleware.ts deleted file mode 100644 index bc3d4567f..000000000 --- a/examples/stripe-subscriptions/apps/api/src/routes/middlewares/attach-custom-errors.middleware.ts +++ /dev/null @@ -1,26 +0,0 @@ -import _ from 'lodash'; - -import { AppKoaContext, CustomErrors, Next, ValidationErrors } from 'types'; - -const formatError = (customError: CustomErrors): ValidationErrors => { - const errors: ValidationErrors = {}; - - Object.keys(customError).forEach((key) => { - errors[key] = _.isArray(customError[key]) ? customError[key] : [customError[key]]; - }); - - return errors; -}; - -const attachCustomErrors = async (ctx: AppKoaContext, next: Next) => { - ctx.throwError = (message, status = 400) => ctx.throw(status, { message }); - ctx.assertError = (condition, message, status = 400) => ctx.assert(condition, status, { message }); - - ctx.throwClientError = (errors, status = 400) => ctx.throw(status, { clientErrors: formatError(errors) }); - ctx.assertClientError = (condition, errors, status = 400) => - ctx.assert(condition, status, { clientErrors: formatError(errors) }); - - await next(); -}; - -export default attachCustomErrors; diff --git a/examples/stripe-subscriptions/apps/api/src/routes/middlewares/attach-custom-properties.middleware.ts b/examples/stripe-subscriptions/apps/api/src/routes/middlewares/attach-custom-properties.middleware.ts deleted file mode 100644 index 4bf8905f1..000000000 --- a/examples/stripe-subscriptions/apps/api/src/routes/middlewares/attach-custom-properties.middleware.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { AppKoaContext, Next } from 'types'; - -const attachCustomProperties = async (ctx: AppKoaContext, next: Next) => { - ctx.validatedData = {}; - - await next(); -}; - -export default attachCustomProperties; diff --git a/examples/stripe-subscriptions/apps/api/src/routes/middlewares/auth.middleware.ts b/examples/stripe-subscriptions/apps/api/src/routes/middlewares/auth.middleware.ts deleted file mode 100644 index 3a73179aa..000000000 --- a/examples/stripe-subscriptions/apps/api/src/routes/middlewares/auth.middleware.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { AppKoaContext, Next } from 'types'; - -const auth = (ctx: AppKoaContext, next: Next) => { - if (ctx.state.user) { - return next(); - } - - ctx.status = 401; - - return null; -}; - -export default auth; diff --git a/examples/stripe-subscriptions/apps/api/src/routes/middlewares/extract-tokens.middleware.ts b/examples/stripe-subscriptions/apps/api/src/routes/middlewares/extract-tokens.middleware.ts deleted file mode 100644 index cdb94b9ba..000000000 --- a/examples/stripe-subscriptions/apps/api/src/routes/middlewares/extract-tokens.middleware.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { COOKIES } from 'app-constants'; -import { AppKoaContext, Next } from 'types'; - -const storeTokenToState = async (ctx: AppKoaContext, next: Next) => { - let accessToken = ctx.cookies.get(COOKIES.ACCESS_TOKEN); - - const { authorization } = ctx.headers; - - if (!accessToken && authorization) { - accessToken = authorization.replace('Bearer', '').trim(); - } - - if (accessToken) { - ctx.state.accessToken = accessToken; - } - - await next(); -}; - -export default storeTokenToState; diff --git a/examples/stripe-subscriptions/apps/api/src/routes/middlewares/route-error-handler.middleware.ts b/examples/stripe-subscriptions/apps/api/src/routes/middlewares/route-error-handler.middleware.ts deleted file mode 100644 index d49c42569..000000000 --- a/examples/stripe-subscriptions/apps/api/src/routes/middlewares/route-error-handler.middleware.ts +++ /dev/null @@ -1,53 +0,0 @@ -import { userService } from 'resources/user'; - -import config from 'config'; - -import logger from 'logger'; - -import { AppKoaContext, Next, ValidationErrors } from 'types'; - -interface CustomError extends Error { - status?: number; - clientErrors?: ValidationErrors; -} - -const routeErrorHandler = async (ctx: AppKoaContext, next: Next) => { - try { - await next(); - } catch (error) { - if (typeof error === 'object' && error !== null && 'message' in error) { - const typedError = error as CustomError; - - const clientError = typedError.clientErrors; - const serverError = { global: typedError.message || 'Unknown error' }; - - const errors = clientError || serverError; - - let loggerMetadata = {}; - - if (!config.IS_DEV) { - loggerMetadata = { - requestBody: ctx.request.body, - requestQuery: ctx.request.query, - user: userService.getPublic(ctx.state.user), - }; - } - - logger.error(JSON.stringify(errors, null, 4), loggerMetadata); - - if (serverError && config.APP_ENV === 'production') { - serverError.global = 'Something went wrong'; - } - - ctx.status = typedError.status || 500; - ctx.body = { errors }; - } else { - logger.error(`An unexpected error type was caught. Error: ${JSON.stringify(error)}`); - - ctx.status = 500; - ctx.body = { errors: { global: 'An unexpected error occurred' } }; - } - } -}; - -export default routeErrorHandler; diff --git a/examples/stripe-subscriptions/apps/api/src/routes/middlewares/try-to-attach-user.middleware.ts b/examples/stripe-subscriptions/apps/api/src/routes/middlewares/try-to-attach-user.middleware.ts deleted file mode 100644 index 2bbc65be9..000000000 --- a/examples/stripe-subscriptions/apps/api/src/routes/middlewares/try-to-attach-user.middleware.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { tokenService } from 'resources/token'; -import { userService } from 'resources/user'; - -import { AppKoaContext, Next } from 'types'; - -const tryToAttachUser = async (ctx: AppKoaContext, next: Next) => { - const { accessToken } = ctx.state; - let userData; - - if (accessToken) { - userData = await tokenService.findTokenByValue(accessToken); - } - - if (userData && userData.userId) { - const user = await userService.findOne({ _id: userData.userId }); - - if (user) { - await userService.updateLastRequest(userData.userId); - - ctx.state.user = user; - ctx.state.isShadow = userData.isShadow || false; - } - } - - return next(); -}; - -export default tryToAttachUser; diff --git a/examples/stripe-subscriptions/apps/api/src/routes/private.routes.ts b/examples/stripe-subscriptions/apps/api/src/routes/private.routes.ts deleted file mode 100644 index 4080a6126..000000000 --- a/examples/stripe-subscriptions/apps/api/src/routes/private.routes.ts +++ /dev/null @@ -1,18 +0,0 @@ -import compose from 'koa-compose'; -import mount from 'koa-mount'; - -import { accountRoutes } from 'resources/account'; -import { paymentRoutes } from 'resources/payment'; -import { subscriptionRoutes } from 'resources/subscription'; -import { userRoutes } from 'resources/user'; - -import { AppKoa } from 'types'; - -import auth from './middlewares/auth.middleware'; - -export default (app: AppKoa) => { - app.use(mount('/account', compose([auth, accountRoutes.privateRoutes]))); - app.use(mount('/users', compose([auth, userRoutes.privateRoutes]))); - app.use(mount('/payments', compose([auth, paymentRoutes.privateRoutes]))); - app.use(mount('/subscriptions', compose([auth, subscriptionRoutes.privateRoutes]))); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/routes/public.routes.ts b/examples/stripe-subscriptions/apps/api/src/routes/public.routes.ts deleted file mode 100644 index 24c8f6ad7..000000000 --- a/examples/stripe-subscriptions/apps/api/src/routes/public.routes.ts +++ /dev/null @@ -1,17 +0,0 @@ -import mount from 'koa-mount'; - -import { accountRoutes } from 'resources/account'; -import { webhookRoutes } from 'resources/webhook'; - -import { AppKoa, AppRouter } from 'types'; - -const healthCheckRouter = new AppRouter(); -healthCheckRouter.get('/health', (ctx) => { - ctx.status = 200; -}); - -export default (app: AppKoa) => { - app.use(healthCheckRouter.routes()); - app.use(mount('/account', accountRoutes.publicRoutes)); - app.use(mount('/webhook', webhookRoutes.publicRoutes)); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/scheduler.ts b/examples/stripe-subscriptions/apps/api/src/scheduler.ts deleted file mode 100644 index 55dc2ed47..000000000 --- a/examples/stripe-subscriptions/apps/api/src/scheduler.ts +++ /dev/null @@ -1,16 +0,0 @@ -/* eslint-disable simple-import-sort/imports, import/newline-after-import, import/first */ -// allows to require modules relative to /src folder -// for example: require('lib/mongo/idGenerator') -// all options can be found here: https://gist.github.com/branneman/8048520 -import moduleAlias from 'module-alias'; // read aliases from package json -moduleAlias.addPath(__dirname); -moduleAlias(); - -import 'dotenv/config'; - -import logger from 'logger'; - -import 'scheduler/cron'; -import 'scheduler/handlers/action.example.handler'; - -logger.info('[Scheduler] Server has been started'); diff --git a/examples/stripe-subscriptions/apps/api/src/scheduler/cron/index.ts b/examples/stripe-subscriptions/apps/api/src/scheduler/cron/index.ts deleted file mode 100644 index 18c48037c..000000000 --- a/examples/stripe-subscriptions/apps/api/src/scheduler/cron/index.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { EventEmitter } from 'events'; -import schedule from 'node-schedule'; - -const eventEmitter = new EventEmitter(); - -schedule.scheduleJob('* * * * *', () => { - eventEmitter.emit('cron:every-minute'); -}); - -schedule.scheduleJob('0 * * * *', () => { - eventEmitter.emit('cron:every-hour'); -}); - -export default eventEmitter; diff --git a/examples/stripe-subscriptions/apps/api/src/scheduler/handlers/action.example.handler.ts b/examples/stripe-subscriptions/apps/api/src/scheduler/handlers/action.example.handler.ts deleted file mode 100644 index f9f92772f..000000000 --- a/examples/stripe-subscriptions/apps/api/src/scheduler/handlers/action.example.handler.ts +++ /dev/null @@ -1,19 +0,0 @@ -import cron from 'scheduler/cron'; - -import config from 'config'; - -import logger from 'logger'; - -const schedule = { - development: 'cron:every-minute', - staging: 'cron:every-minute', - production: 'cron:every-hour', -}; - -cron.on(schedule[config.APP_ENV], async () => { - try { - // Scheduler logic - } catch (error) { - logger.error(error); - } -}); diff --git a/examples/stripe-subscriptions/apps/api/src/services/analytics.service.ts b/examples/stripe-subscriptions/apps/api/src/services/analytics.service.ts deleted file mode 100644 index 68a15e3f8..000000000 --- a/examples/stripe-subscriptions/apps/api/src/services/analytics.service.ts +++ /dev/null @@ -1,15 +0,0 @@ -import Mixpanel from 'mixpanel'; - -import config from 'config'; - -const mixpanel = config.MIXPANEL_API_KEY ? Mixpanel.init(config.MIXPANEL_API_KEY) : null; - -const track = (event: string, data = {}) => { - if (config.MIXPANEL_API_KEY) { - mixpanel?.track(event, data); - } -}; - -export default { - track, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/services/analytics/analytics.service.ts b/examples/stripe-subscriptions/apps/api/src/services/analytics/analytics.service.ts deleted file mode 100644 index 8bf51c148..000000000 --- a/examples/stripe-subscriptions/apps/api/src/services/analytics/analytics.service.ts +++ /dev/null @@ -1,24 +0,0 @@ -import Mixpanel from 'mixpanel'; - -import config from 'config'; - -import logger from 'logger'; - -const mixpanel = config.MIXPANEL_API_KEY ? Mixpanel.init(config.MIXPANEL_API_KEY, { debug: config.IS_DEV }) : null; - -const track = (event: string, data = {}) => { - if (!mixpanel) { - logger.error('[Mixpanel] The analytics service was not initialized'); - return; - } - - try { - mixpanel.track(event, data); - } catch (e) { - logger.error(e); - } -}; - -export default { - track, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/services/auth/auth.helper.ts b/examples/stripe-subscriptions/apps/api/src/services/auth/auth.helper.ts deleted file mode 100644 index b18efa4e5..000000000 --- a/examples/stripe-subscriptions/apps/api/src/services/auth/auth.helper.ts +++ /dev/null @@ -1,33 +0,0 @@ -import psl from 'psl'; -import url from 'url'; - -import config from 'config'; - -import { COOKIES, TOKEN_SECURITY_EXPIRES_IN } from 'app-constants'; -import { AppKoaContext } from 'types'; - -export const setTokenCookies = ({ ctx, accessToken }: { ctx: AppKoaContext; accessToken: string }) => { - const parsedUrl = url.parse(config.WEB_URL); - - if (!parsedUrl.hostname) { - return; - } - - const parsed = psl.parse(parsedUrl.hostname) as psl.ParsedDomain; - const cookiesDomain = parsed.domain || undefined; - - ctx.cookies.set(COOKIES.ACCESS_TOKEN, accessToken, { - httpOnly: true, - domain: cookiesDomain, - expires: new Date(Date.now() + TOKEN_SECURITY_EXPIRES_IN * 1000), // seconds to miliseconds - }); -}; - -export const unsetTokenCookies = (ctx: AppKoaContext) => { - ctx.cookies.set(COOKIES.ACCESS_TOKEN); -}; - -export default { - setTokenCookies, - unsetTokenCookies, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/services/auth/auth.service.ts b/examples/stripe-subscriptions/apps/api/src/services/auth/auth.service.ts deleted file mode 100644 index 4a8041a4c..000000000 --- a/examples/stripe-subscriptions/apps/api/src/services/auth/auth.service.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { tokenService } from 'resources/token'; - -import { AppKoaContext } from 'types'; - -import cookieHelper from './auth.helper'; - -const setTokens = async (ctx: AppKoaContext, userId: string, isShadow?: boolean) => { - const { accessToken } = await tokenService.createAuthTokens({ userId, isShadow }); - - if (accessToken) { - cookieHelper.setTokenCookies({ - ctx, - accessToken, - }); - } -}; - -const unsetTokens = async (ctx: AppKoaContext) => { - await tokenService.removeAuthTokens(ctx.state.accessToken); - - cookieHelper.unsetTokenCookies(ctx); -}; - -export default { - setTokens, - unsetTokens, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/services/cloud-storage/cloud-storage.helper.ts b/examples/stripe-subscriptions/apps/api/src/services/cloud-storage/cloud-storage.helper.ts deleted file mode 100644 index 18a89038d..000000000 --- a/examples/stripe-subscriptions/apps/api/src/services/cloud-storage/cloud-storage.helper.ts +++ /dev/null @@ -1,8 +0,0 @@ -export const getFileKey = (url: string | null | undefined) => { - if (!url) return ''; - - const decodedUrl = decodeURI(url); - const { pathname } = new URL(decodedUrl); - - return pathname.substring(1); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/services/cloud-storage/cloud-storage.service.ts b/examples/stripe-subscriptions/apps/api/src/services/cloud-storage/cloud-storage.service.ts deleted file mode 100644 index 253ec2346..000000000 --- a/examples/stripe-subscriptions/apps/api/src/services/cloud-storage/cloud-storage.service.ts +++ /dev/null @@ -1,118 +0,0 @@ -import { - CompleteMultipartUploadCommandOutput, - CopyObjectCommand, - CopyObjectCommandOutput, - DeleteObjectCommand, - DeleteObjectCommandOutput, - GetObjectCommand, - GetObjectOutput, - S3Client, -} from '@aws-sdk/client-s3'; -import { PutObjectCommandInput } from '@aws-sdk/client-s3/dist-types/commands/PutObjectCommand'; -import { Upload } from '@aws-sdk/lib-storage'; -import { getSignedUrl } from '@aws-sdk/s3-request-presigner'; -import type { File } from '@koa/multer'; -import { ToCamelCase } from 'app-types'; - -import { caseUtil } from 'utils'; - -import config from 'config'; - -import * as helpers from './cloud-storage.helper'; - -const client = new S3Client({ - forcePathStyle: false, // Configures to use subdomain/virtual calling format. - region: 'us-east-1', // To successfully create a new bucket, this SDK requires the region to be us-east-1 - endpoint: config.CLOUD_STORAGE_ENDPOINT, - credentials: { - accessKeyId: config.CLOUD_STORAGE_ACCESS_KEY_ID ?? '', - secretAccessKey: config.CLOUD_STORAGE_SECRET_ACCESS_KEY ?? '', - }, -}); -const bucket = config.CLOUD_STORAGE_BUCKET; - -type UploadOutput = ToCamelCase; - -const upload = async (fileName: string, file: File): Promise => { - const params: PutObjectCommandInput = { - Bucket: bucket, - ContentType: file.mimetype, - Body: file.buffer, - Key: fileName, - ACL: 'private', - }; - - const multipartUpload = new Upload({ - client, - params, - }); - - return multipartUpload.done().then((value) => caseUtil.toCamelCase(value)); -}; - -const uploadPublic = async (fileName: string, file: File): Promise => { - const params: PutObjectCommandInput = { - Bucket: bucket, - ContentType: file.mimetype, - Body: file.buffer, - Key: fileName, - ACL: 'public-read', - }; - - const multipartUpload = new Upload({ - client, - params, - }); - - return multipartUpload.done().then((value) => caseUtil.toCamelCase(value)); -}; - -const getSignedDownloadUrl = (fileName: string): Promise => { - const command = new GetObjectCommand({ - Bucket: bucket, - Key: fileName, - }); - - return getSignedUrl(client, command, { expiresIn: 1800 }); -}; - -const getObject = (fileName: string): Promise => { - const command = new GetObjectCommand({ - Bucket: bucket, - Key: fileName, - }); - - return client.send(command); -}; - -type CopyOutput = ToCamelCase; - -const copyObject = async (filePath: string, copyFilePath: string): Promise => { - const command = new CopyObjectCommand({ - Bucket: bucket, - CopySource: encodeURI(`${bucket}/${copyFilePath}`), - Key: filePath, - }); - - return client.send(command).then((value) => caseUtil.toCamelCase(value)); -}; - -type DeleteOutput = ToCamelCase; - -const deleteObject = async (fileName: string): Promise => { - const command = new DeleteObjectCommand({ - Bucket: bucket, - Key: fileName, - }); - - return client.send(command).then((value) => caseUtil.toCamelCase(value)); -}; - -export default Object.assign(helpers, { - upload, - uploadPublic, - getObject, - copyObject, - deleteObject, - getSignedDownloadUrl, -}); diff --git a/examples/stripe-subscriptions/apps/api/src/services/email/email.service.ts b/examples/stripe-subscriptions/apps/api/src/services/email/email.service.ts deleted file mode 100644 index 84ad63c66..000000000 --- a/examples/stripe-subscriptions/apps/api/src/services/email/email.service.ts +++ /dev/null @@ -1,56 +0,0 @@ -import { renderEmailHtml, Template } from 'mailer'; -import { Resend } from 'resend'; - -import config from 'config'; - -import logger from 'logger'; - -import { EmailServiceConstructorProps, From, SendTemplateParams } from './email.types'; - -class EmailService { - resend?: Resend; - - apiKey: string | undefined; - - from: From; - - constructor({ apiKey, from }: EmailServiceConstructorProps) { - this.apiKey = apiKey; - this.from = from; - - if (apiKey) this.resend = new Resend(apiKey); - } - - async sendTemplate({ to, subject, template, params, attachments }: SendTemplateParams) { - if (!this.resend) { - logger.error('[Resend] API key is not provided'); - logger.debug('[Resend] Email data:'); - logger.debug({ subject, template, params }); - - return null; - } - - const html = await renderEmailHtml({ template, params }); - - return this.resend.emails - .send({ - from: `${this.from.name} <${this.from.email}>`, - to, - subject, - html, - attachments, - }) - .then(() => { - logger.debug(`[Resend] Sent email to ${to}.`); - logger.debug({ subject, template, params }); - }); - } -} - -export default new EmailService({ - apiKey: config.RESEND_API_KEY, - from: { - email: 'no-reply@ship.paralect.com', - name: 'Ship', - }, -}); diff --git a/examples/stripe-subscriptions/apps/api/src/services/email/email.types.ts b/examples/stripe-subscriptions/apps/api/src/services/email/email.types.ts deleted file mode 100644 index 0d10102d8..000000000 --- a/examples/stripe-subscriptions/apps/api/src/services/email/email.types.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { Template, TemplateProps } from 'mailer'; - -export type From = { - email: string; - name: string; -}; - -export interface EmailServiceConstructorProps { - apiKey: string | undefined; - from: From; -} - -interface Attachment { - /** Content of an attached file. */ - content?: string | Buffer; - /** Name of attached file. */ - filename?: string | false | undefined; - /** Path where the attachment file is hosted */ - path?: string; -} - -export interface SendTemplateParams { - to: string | string[]; - subject: string; - template: T; - params: TemplateProps[T]; - attachments?: Attachment[]; -} diff --git a/examples/stripe-subscriptions/apps/api/src/services/google/google.service.ts b/examples/stripe-subscriptions/apps/api/src/services/google/google.service.ts deleted file mode 100644 index b102127d9..000000000 --- a/examples/stripe-subscriptions/apps/api/src/services/google/google.service.ts +++ /dev/null @@ -1,61 +0,0 @@ -import { OAuth2Client, TokenPayload } from 'google-auth-library'; -import _ from 'lodash'; - -import { caseUtil } from 'utils'; - -import config from 'config'; - -import { ToCamelCase } from 'types'; - -const client = new OAuth2Client( - config.GOOGLE_CLIENT_ID, - config.GOOGLE_CLIENT_SECRET, - `${config.API_URL}/account/sign-in/google`, -); - -const oAuthURL = client.generateAuthUrl({ - access_type: 'offline', - scope: ['email', 'profile'], - include_granted_scopes: true, -}); - -type ConvertedPayload = ToCamelCase | undefined; - -type ExchangeResponse = { - isValid: boolean; - payload: ConvertedPayload | Error | null; -}; - -const exchangeCodeForToken = async (code?: string | string[] | undefined): Promise => { - if (!code || _.isArray(code)) { - return { isValid: false, payload: new Error('Code not found') }; - } - - try { - const { tokens } = await client.getToken(code); - - if (!tokens.id_token) { - return { isValid: false, payload: new Error('ID token not found') }; - } - - const loginTicket = await client.verifyIdToken({ - idToken: tokens.id_token, - audience: config.GOOGLE_CLIENT_ID, - }); - - const payload = caseUtil.toCamelCase(loginTicket.getPayload()); - - return { isValid: true, payload }; - } catch (e) { - if (e instanceof Error) { - return { isValid: false, payload: e }; - } - - return { isValid: false, payload: new Error(`Unknown error: ${e}`) }; - } -}; - -export default { - oAuthURL, - exchangeCodeForToken, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/services/index.ts b/examples/stripe-subscriptions/apps/api/src/services/index.ts deleted file mode 100644 index 36d1a0fe9..000000000 --- a/examples/stripe-subscriptions/apps/api/src/services/index.ts +++ /dev/null @@ -1,19 +0,0 @@ -import analyticsService from './analytics/analytics.service'; -import authService from './auth/auth.service'; -import cloudStorageService from './cloud-storage/cloud-storage.service'; -import emailService from './email/email.service'; -import googleService from './google/google.service'; -import rateLimitService from './rate-limit/rate-limit.service'; -import socketService from './socket/socket.service'; -import stripeService from './stripe/stripe.service'; - -export { - analyticsService, - authService, - cloudStorageService, - emailService, - googleService, - rateLimitService, - socketService, - stripeService, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/services/rate-limit/rate-limit.service.ts b/examples/stripe-subscriptions/apps/api/src/services/rate-limit/rate-limit.service.ts deleted file mode 100644 index b325188c9..000000000 --- a/examples/stripe-subscriptions/apps/api/src/services/rate-limit/rate-limit.service.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { ParameterizedContext } from 'koa'; -import rateLimit from 'koa-ratelimit'; - -import redisClient from 'redis-client'; - -import { AppKoaContextState } from 'types'; - -const rateLimiter = (limitDuration: number, requestsPerDuration: number): ReturnType => { - const errorMessage = - 'Looks like you are moving too fast. Retry again in one minute. Please reach out to support with questions.'; - - return rateLimit({ - driver: 'redis', - db: redisClient, - duration: limitDuration, - max: requestsPerDuration, - id: (ctx: ParameterizedContext) => ctx.state?.user?._id || ctx.ip, - errorMessage, - disableHeader: false, - throw: true, - }); -}; - -export default rateLimiter; diff --git a/examples/stripe-subscriptions/apps/api/src/services/socket/socket.helper.ts b/examples/stripe-subscriptions/apps/api/src/services/socket/socket.helper.ts deleted file mode 100644 index 2671aa324..000000000 --- a/examples/stripe-subscriptions/apps/api/src/services/socket/socket.helper.ts +++ /dev/null @@ -1,31 +0,0 @@ -const getCookie = (cookieString: string, name: string) => { - const value = `; ${cookieString}`; - const parts = value.split(`; ${name}=`); - if (parts && parts.length === 2) { - const part = parts.pop(); - if (!part) { - return null; - } - - return part.split(';').shift(); - } - - return null; -}; - -const checkAccessToRoom = (roomId: string, data: { userId: string }) => { - const [roomType, ...rest] = roomId.split('-'); - const id = rest.join('-'); - - switch (roomType) { - case 'user': - return id === data.userId; - default: - return false; - } -}; - -export default { - getCookie, - checkAccessToRoom, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/services/socket/socket.service.ts b/examples/stripe-subscriptions/apps/api/src/services/socket/socket.service.ts deleted file mode 100644 index c8071db05..000000000 --- a/examples/stripe-subscriptions/apps/api/src/services/socket/socket.service.ts +++ /dev/null @@ -1,57 +0,0 @@ -import { createAdapter } from '@socket.io/redis-adapter'; -import http from 'http'; -import { Server } from 'socket.io'; - -import { tokenService } from 'resources/token'; - -import pubClient, { redisErrorHandler } from 'redis-client'; - -import logger from 'logger'; - -import { COOKIES } from 'app-constants'; - -import socketHelper from './socket.helper'; - -export default (server: http.Server) => { - const io = new Server(server); - - const subClient = pubClient.duplicate(); - - subClient.on('error', redisErrorHandler); - - io.adapter(createAdapter(pubClient, subClient)); - - logger.info('[Socket.io] Server initialized successfully.'); - - io.use(async (socket, next) => { - if (!socket.handshake.headers.cookie) return next(new Error('Cookie not found')); - - const accessToken = socketHelper.getCookie(socket.handshake.headers.cookie, COOKIES.ACCESS_TOKEN); - const tokenData = await tokenService.findTokenByValue(accessToken || ''); - - if (tokenData) { - socket.data = { - userId: tokenData.userId, - }; - - return next(); - } - - return next(new Error('Token is invalid')); - }); - - io.on('connection', (socket) => { - socket.on('subscribe', (roomId: string) => { - const { userId } = socket.data; - const hasAccessToRoom = socketHelper.checkAccessToRoom(roomId, { userId }); - - if (hasAccessToRoom) { - socket.join(roomId); - } - }); - - socket.on('unsubscribe', (roomId) => { - socket.leave(roomId); - }); - }); -}; diff --git a/examples/stripe-subscriptions/apps/api/src/services/stripe/stripe.service.ts b/examples/stripe-subscriptions/apps/api/src/services/stripe/stripe.service.ts deleted file mode 100644 index ed1a3acbd..000000000 --- a/examples/stripe-subscriptions/apps/api/src/services/stripe/stripe.service.ts +++ /dev/null @@ -1,45 +0,0 @@ -import { ClientSession } from '@paralect/node-mongo'; -import { User } from 'app-types'; -import Stripe from 'stripe'; - -import { userService } from 'resources/user'; - -import config from 'config'; - -import logger from 'logger'; - -const stripe = new Stripe(config.STRIPE_SECRET_KEY, { - apiVersion: '2024-04-10', -}); - -const createAndAttachStripeAccount = async (user: User, session?: ClientSession): Promise => { - try { - if (!config.STRIPE_SECRET_KEY) { - logger.error('[Stripe] API key is not provided'); - } - - const customer = await stripe.customers.create({ - email: user.email, - name: user.fullName, - }); - - await userService.atomic.updateOne( - { _id: user._id }, - { - $set: { - stripeId: customer.id, - }, - }, - {}, - { session }, - ); - } catch (error) { - logger.error(`Error creating stripe account for user ${user._id}`, error); - throw error; - } -}; - -export default { - ...stripe, - createAndAttachStripeAccount, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/types.ts b/examples/stripe-subscriptions/apps/api/src/types.ts deleted file mode 100644 index 77fc25e7f..000000000 --- a/examples/stripe-subscriptions/apps/api/src/types.ts +++ /dev/null @@ -1,37 +0,0 @@ -import Router from '@koa/router'; -import { User } from 'app-types'; -import Koa, { Next, ParameterizedContext, Request } from 'koa'; -import { Template } from 'mailer'; - -export * from 'app-types'; - -export type AppKoaContextState = { - user: User; - accessToken: string; - isShadow: boolean | null; -}; - -export type CustomErrors = { - [name: string]: string; -}; - -export interface AppKoaContext extends ParameterizedContext { - request: Request & R; - validatedData: T & object; - throwError: (message: string, status?: number) => never; - assertError: (condition: unknown, message: string, status?: number) => asserts condition; - throwClientError: (errors: CustomErrors, status?: number) => never; - assertClientError: (condition: unknown, errors: CustomErrors, status?: number) => asserts condition; -} - -export class AppRouter extends Router {} - -export class AppKoa extends Koa {} - -export type AppRouterMiddleware = Router.Middleware; - -export type ValidationErrors = { - [name: string]: string[] | string; -}; - -export { Next, Template }; diff --git a/examples/stripe-subscriptions/apps/api/src/utils/case.util.ts b/examples/stripe-subscriptions/apps/api/src/utils/case.util.ts deleted file mode 100644 index 8c096c2d3..000000000 --- a/examples/stripe-subscriptions/apps/api/src/utils/case.util.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { camelCase, isArray, isObject, transform } from 'lodash'; - -type NonNullableObject = Record; - -export const toCamelCase = (object: T): T => { - if (object === null || object === undefined) { - return object; - } - - const transformObject = (input: NonNullableObject): NonNullableObject => - transform(input, (result: NonNullableObject, value, key) => { - const camelKey = camelCase(key); - - if (isObject(value) && !isArray(value)) { - result[camelKey] = transformObject(value as NonNullableObject); - } else if (isArray(value)) { - result[camelKey] = value.map((item) => (isObject(item) ? transformObject(item as NonNullableObject) : item)); - } else { - result[camelKey] = value; - } - }); - - return isObject(object) && !isArray(object) ? (transformObject(object as NonNullableObject) as T) : object; -}; diff --git a/examples/stripe-subscriptions/apps/api/src/utils/config.util.ts b/examples/stripe-subscriptions/apps/api/src/utils/config.util.ts deleted file mode 100644 index 3a3c46ae7..000000000 --- a/examples/stripe-subscriptions/apps/api/src/utils/config.util.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { ZodSchema } from 'zod'; - -const validateConfig = (schema: ZodSchema): T => { - const parsed = schema.safeParse(process.env); - - if (!parsed.success) { - // Allow the use of a console instance for logging before launching the application. - // eslint-disable-next-line no-console - console.error('❌ Invalid environment variables:', parsed.error.flatten().fieldErrors); - - throw new Error('Invalid environment variables'); - } - - return parsed.data; -}; - -export default { - validateConfig, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/utils/index.ts b/examples/stripe-subscriptions/apps/api/src/utils/index.ts deleted file mode 100644 index f4b3c71d4..000000000 --- a/examples/stripe-subscriptions/apps/api/src/utils/index.ts +++ /dev/null @@ -1,8 +0,0 @@ -import * as caseUtil from './case.util'; -import configUtil from './config.util'; -import promiseUtil from './promise.util'; -import routeUtil from './routes.util'; -import securityUtil from './security.util'; -import stringUtil from './string.util'; - -export { caseUtil, configUtil, promiseUtil, routeUtil, securityUtil, stringUtil }; diff --git a/examples/stripe-subscriptions/apps/api/src/utils/promise.util.ts b/examples/stripe-subscriptions/apps/api/src/utils/promise.util.ts deleted file mode 100644 index 1f3b6614f..000000000 --- a/examples/stripe-subscriptions/apps/api/src/utils/promise.util.ts +++ /dev/null @@ -1,17 +0,0 @@ -import _ from 'lodash'; - -const promiseLimit = (documents: T[], limit: number, operator: (document: T) => Promise): Promise => { - const chunks = _.chunk(documents, limit); - - return chunks.reduce>(async (previousPromise, chunk) => { - await previousPromise; - - const operations = chunk.map(operator); - - await Promise.all(operations); - }, Promise.resolve()); -}; - -export default { - promiseLimit, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/utils/routes.util.ts b/examples/stripe-subscriptions/apps/api/src/utils/routes.util.ts deleted file mode 100644 index edf7f292d..000000000 --- a/examples/stripe-subscriptions/apps/api/src/utils/routes.util.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { AppRouter, AppRouterMiddleware } from 'types'; - -export type RegisterRouteFunc = (router: AppRouter) => void; - -const getRoutes = (routeFunctions: RegisterRouteFunc[]): AppRouterMiddleware => { - const router = new AppRouter(); - - routeFunctions.forEach((func: RegisterRouteFunc) => { - func(router); - }); - - return router.routes(); -}; - -export default { - getRoutes, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/utils/security.util.ts b/examples/stripe-subscriptions/apps/api/src/utils/security.util.ts deleted file mode 100644 index 00b70679f..000000000 --- a/examples/stripe-subscriptions/apps/api/src/utils/security.util.ts +++ /dev/null @@ -1,82 +0,0 @@ -import bcrypt from 'bcryptjs'; -import crypto from 'crypto'; -import jwt from 'jsonwebtoken'; - -import config from 'config'; - -import { TOKEN_SECURITY_EXPIRES_IN } from 'app-constants'; - -/** - * @desc Generates random string, useful for creating secure tokens - * - * @return {string} - random string - */ -export const generateSecureToken = async (tokenLength = 48) => { - const buffer = crypto.randomBytes(tokenLength); - - return buffer.toString('hex'); -}; - -/** - * @desc Generate hash from any string. Could be used to generate a hash from password - * - * @param text {string} - a text to produce hash from - * @return {Promise} - a hash from input text - */ -export const getHash = (text: string) => bcrypt.hash(text, 10); - -/** - * @desc Compares if text and hash are equal - * - * @param text {string} - a text to compare with hash - * @param hash {string} - a hash to compare with text - * @return {Promise} - are hash and text equal - */ -export const compareTextWithHash = (text: string, hash: string) => bcrypt.compare(text, hash); - -/** - * @desc Generates a JWT token with a secret - * - * @param payload {object} - Payload to include in the token - * @param expiresIn {string | number} - Expiry time for the token - * @return {string} - JWT token - */ -type PayloadType = { - tokenType: string, - userId: string, - isShadow: boolean | null, -} - -export const generateJwtToken = async (payload: PayloadType) => { - const secret = config.JWT_SECRET; - const expiresIn = TOKEN_SECURITY_EXPIRES_IN; - - return jwt.sign(payload, secret, { expiresIn }); -}; - -/** - * @desc Verifies a JWT token and returns the payload - * - * @param token {string} - JWT token to verify - * @return {object | null} - Decoded payload or null if verification fails - */ -export const verifyJwtToken = async (token: string) => { - try { - const secret = config.JWT_SECRET; - const decoded = jwt.verify(token, secret); - - return decoded; - } catch (error) { - - logger.debug(`Token verification failed with error: ${error}`); - return null; - } -}; - -export default { - generateSecureToken, - getHash, - compareTextWithHash, - generateJwtToken, - verifyJwtToken, -}; diff --git a/examples/stripe-subscriptions/apps/api/src/utils/string.util.ts b/examples/stripe-subscriptions/apps/api/src/utils/string.util.ts deleted file mode 100644 index e1411ead3..000000000 --- a/examples/stripe-subscriptions/apps/api/src/utils/string.util.ts +++ /dev/null @@ -1,9 +0,0 @@ -const escapeRegExpString = (searchString: string): RegExp => { - const escapedString = searchString.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); - - return new RegExp(escapedString, 'gi'); -}; - -export default { - escapeRegExpString, -}; diff --git a/examples/stripe-subscriptions/apps/api/tsconfig.json b/examples/stripe-subscriptions/apps/api/tsconfig.json deleted file mode 100644 index 96a3785f2..000000000 --- a/examples/stripe-subscriptions/apps/api/tsconfig.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "extends": "tsconfig/nodejs.json", - "compilerOptions": { - "rootDir": ".", - "baseUrl": "src", - "jsx": "react" // for using Mailer - }, - "include": ["**/*.ts", "**/*.json"] -} diff --git a/examples/stripe-subscriptions/apps/web/.dockerignore b/examples/stripe-subscriptions/apps/web/.dockerignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/apps/web/.dockerignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/apps/web/.env.development b/examples/stripe-subscriptions/apps/web/.env.development deleted file mode 100644 index 542b7c6a9..000000000 --- a/examples/stripe-subscriptions/apps/web/.env.development +++ /dev/null @@ -1,16 +0,0 @@ -# When adding additional environment variables, the schema in "src/config/index.ts" -# should be updated accordingly. - -NEXT_PUBLIC_API_URL=http://localhost:3001 -NEXT_PUBLIC_WS_URL=http://localhost:3001 -NEXT_PUBLIC_WEB_URL=http://localhost:3002 - -# Stripe -# STRIPE_PUBLIC_KEY=pk_test... -# STARTER_MONTH=price_... -# STARTER_YEAR=price_... -# PRO_MONTH=price_... -# PRO_YEAR=price_... - -# Mixpanel -# NEXT_PUBLIC_MIXPANEL_API_KEY=... diff --git a/examples/stripe-subscriptions/apps/web/.env.production b/examples/stripe-subscriptions/apps/web/.env.production deleted file mode 100644 index a9e55c703..000000000 --- a/examples/stripe-subscriptions/apps/web/.env.production +++ /dev/null @@ -1,12 +0,0 @@ -# When adding additional environment variables, the schema in "src/config/index.ts" -# should be updated accordingly. - -NEXT_PUBLIC_API_URL=https://api.demo.ship.paralect.com -NEXT_PUBLIC_WS_URL=https://api.demo.ship.paralect.com -NEXT_PUBLIC_WEB_URL=https://demo.ship.paralect.com - -# Stripe -# STRIPE_PUBLIC_KEY=... - -# Mixpanel -# NEXT_PUBLIC_MIXPANEL_API_KEY=... diff --git a/examples/stripe-subscriptions/apps/web/.env.staging b/examples/stripe-subscriptions/apps/web/.env.staging deleted file mode 100644 index 819e7beac..000000000 --- a/examples/stripe-subscriptions/apps/web/.env.staging +++ /dev/null @@ -1,12 +0,0 @@ -# When adding additional environment variables, the schema in "src/config/index.ts" -# should be updated accordingly. - -NEXT_PUBLIC_API_URL=https://api.staging.ship.paralect.com -NEXT_PUBLIC_WS_URL=https://api.staging.ship.paralect.com -NEXT_PUBLIC_WEB_URL=https://staging.ship.paralect.com - -# Stripe -# STRIPE_PUBLIC_KEY=... - -# Mixpanel -# NEXT_PUBLIC_MIXPANEL_API_KEY=... diff --git a/examples/stripe-subscriptions/apps/web/.eslintignore b/examples/stripe-subscriptions/apps/web/.eslintignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/apps/web/.eslintignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/apps/web/.eslintrc.js b/examples/stripe-subscriptions/apps/web/.eslintrc.js deleted file mode 100644 index edff7e224..000000000 --- a/examples/stripe-subscriptions/apps/web/.eslintrc.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = { - root: true, - extends: ['custom/next'], -}; diff --git a/examples/stripe-subscriptions/apps/web/.gitignore b/examples/stripe-subscriptions/apps/web/.gitignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/apps/web/.gitignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/apps/web/.npmrc b/examples/stripe-subscriptions/apps/web/.npmrc deleted file mode 100644 index 9e8e12ac0..000000000 --- a/examples/stripe-subscriptions/apps/web/.npmrc +++ /dev/null @@ -1,3 +0,0 @@ -save-exact=true -package-import-method=copy -auto-install-peers=true diff --git a/examples/stripe-subscriptions/apps/web/.prettierignore b/examples/stripe-subscriptions/apps/web/.prettierignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/apps/web/.prettierignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/apps/web/.prettierrc.json b/examples/stripe-subscriptions/apps/web/.prettierrc.json deleted file mode 100644 index ba63a7c68..000000000 --- a/examples/stripe-subscriptions/apps/web/.prettierrc.json +++ /dev/null @@ -1 +0,0 @@ -"prettier-config-custom" diff --git a/examples/stripe-subscriptions/apps/web/.storybook/main.ts b/examples/stripe-subscriptions/apps/web/.storybook/main.ts deleted file mode 100644 index 2b7222319..000000000 --- a/examples/stripe-subscriptions/apps/web/.storybook/main.ts +++ /dev/null @@ -1,29 +0,0 @@ -import type { StorybookConfig } from '@storybook/nextjs'; - -import { join, dirname } from 'path'; - -function getAbsolutePath(value: string): any { - return dirname(require.resolve(join(value, 'package.json'))); -} -const config: StorybookConfig = { - core: { - builder: '@storybook/builder-webpack5', - }, - stories: ['../src/components/**/*.stories.@(js|jsx|ts|tsx)'], - addons: [ - getAbsolutePath('@storybook/addon-links'), - getAbsolutePath('@storybook/addon-essentials'), - getAbsolutePath('@storybook/addon-onboarding'), - getAbsolutePath('@storybook/addon-interactions'), - getAbsolutePath('@storybook/addon-styling-webpack'), - getAbsolutePath('storybook-dark-mode'), - ], - framework: { - name: getAbsolutePath('@storybook/nextjs'), - options: {}, - }, - docs: { - autodocs: 'tag', - }, -}; -export default config; diff --git a/examples/stripe-subscriptions/apps/web/.storybook/preview.tsx b/examples/stripe-subscriptions/apps/web/.storybook/preview.tsx deleted file mode 100644 index 9638cb46b..000000000 --- a/examples/stripe-subscriptions/apps/web/.storybook/preview.tsx +++ /dev/null @@ -1,29 +0,0 @@ -import '@mantine/core/styles.css'; - -import React, { useEffect } from 'react'; -import { addons } from '@storybook/preview-api'; -import { DARK_MODE_EVENT_NAME } from 'storybook-dark-mode'; -import { MantineProvider, useMantineColorScheme } from '@mantine/core'; - -import theme from '../src/theme'; - -const channel = addons.getChannel(); - -const ColorSchemeWrapper = ({ children }: { children: React.ReactNode }) => { - const { setColorScheme } = useMantineColorScheme(); - const handleColorScheme = (value: boolean) => setColorScheme(value ? 'dark' : 'light'); - - useEffect(() => { - channel.on(DARK_MODE_EVENT_NAME, handleColorScheme); - return () => channel.off(DARK_MODE_EVENT_NAME, handleColorScheme); - // eslint-disable-next-line react-hooks/exhaustive-deps - }, [channel]); - - // eslint-disable-next-line react/jsx-no-useless-fragment - return <>{children}; -}; - -export const decorators = [ - (renderStory: any) => {renderStory()}, - (renderStory: any) => {renderStory()}, -]; diff --git a/examples/stripe-subscriptions/apps/web/Dockerfile b/examples/stripe-subscriptions/apps/web/Dockerfile deleted file mode 100644 index 4cf089711..000000000 --- a/examples/stripe-subscriptions/apps/web/Dockerfile +++ /dev/null @@ -1,59 +0,0 @@ -# BUILDER - Stage 1 -FROM node:20-alpine AS builder -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund turbo@1.10.3 -COPY . . -RUN turbo prune --scope=web --docker - -# INSTALLER - Stage 2 -FROM node:20-alpine AS installer -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund pnpm@8.15.7 - -# First install the dependencies (as they change less often) -COPY --from=builder /app/out/pnpm-lock.yaml ./pnpm-lock.yaml -RUN pnpm fetch - -# Build the project and its dependencies -COPY --from=builder /app/out/pnpm-workspace.yaml ./pnpm-workspace.yaml -COPY --from=builder /app/out/full/ . -RUN pnpm install -r --prefer-offline --ignore-scripts -COPY --from=builder /app/out/full/turbo.json ./turbo.json - -# DEVELOPMENT - Stage 3 -FROM installer AS development -CMD pnpm turbo run dev --scope=web - -# APP_BUILDER - Stage 4 -FROM installer AS app_builder - -ARG APP_ENV -ENV NEXT_PUBLIC_APP_ENV=$APP_ENV - -RUN pnpm turbo run build --filter=web... - -# RUNNER - Stage 5 -FROM node:20-alpine AS runner -WORKDIR /app - -# Don't run production as root -RUN addgroup --system --gid 1001 nodejs -RUN adduser --system --uid 1001 nextjs -USER nextjs - -COPY --from=app_builder /app/apps/web/next.config.js . -COPY --from=app_builder /app/apps/web/package.json . - -# Automatically leverage output traces to reduce image size -# https://nextjs.org/docs/advanced-features/output-file-tracing -COPY --from=app_builder --chown=nextjs:nodejs /app/apps/web/.next/standalone ./ -COPY --from=app_builder --chown=nextjs:nodejs /app/apps/web/.next/static ./apps/web/.next/static -COPY --from=app_builder --chown=nextjs:nodejs /app/apps/web/public ./apps/web/public - -EXPOSE 3002 - -CMD ["node", "apps/web/server.js"] diff --git a/examples/stripe-subscriptions/apps/web/README.md b/examples/stripe-subscriptions/apps/web/README.md deleted file mode 100644 index 4a3b9c094..000000000 --- a/examples/stripe-subscriptions/apps/web/README.md +++ /dev/null @@ -1 +0,0 @@ -# [Documentation](https://ship.paralect.com/docs/web/overview) diff --git a/examples/stripe-subscriptions/apps/web/next-env.d.ts b/examples/stripe-subscriptions/apps/web/next-env.d.ts deleted file mode 100644 index 4f11a03dc..000000000 --- a/examples/stripe-subscriptions/apps/web/next-env.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -/// -/// - -// NOTE: This file should not be edited -// see https://nextjs.org/docs/basic-features/typescript for more information. diff --git a/examples/stripe-subscriptions/apps/web/next.config.js b/examples/stripe-subscriptions/apps/web/next.config.js deleted file mode 100644 index 4c7cd0609..000000000 --- a/examples/stripe-subscriptions/apps/web/next.config.js +++ /dev/null @@ -1,28 +0,0 @@ -const dotenv = require('dotenv-flow'); -const { join } = require('path'); - -const dotenvConfig = dotenv.config({ - node_env: process.env.NEXT_PUBLIC_APP_ENV, - silent: true, -}); - -/** @type {import('next').NextConfig} */ -module.exports = { - env: dotenvConfig.parsed, - webpack(config) { - config.module.rules.push({ - test: /\.svg$/, - use: ['@svgr/webpack'], - }); - - return config; - }, - reactStrictMode: true, - output: 'standalone', - experimental: { - // this includes files from the monorepo base two directories up - outputFileTracingRoot: join(__dirname, '../../'), - }, - pageExtensions: ['page.tsx', 'api.ts'], - transpilePackages: ['app-constants', 'schemas', 'types'], -}; diff --git a/examples/stripe-subscriptions/apps/web/package.json b/examples/stripe-subscriptions/apps/web/package.json deleted file mode 100644 index 1602f003c..000000000 --- a/examples/stripe-subscriptions/apps/web/package.json +++ /dev/null @@ -1,84 +0,0 @@ -{ - "name": "web", - "version": "1.0.0", - "description": "Next.js web", - "author": "Paralect", - "license": "MIT", - "scripts": { - "build": "next build", - "dev": "next dev -p 3002", - "start": "next start -p 3002", - "ts-lint": "tsc --noEmit --incremental --watch", - "precommit": "lint-staged && next lint --fix", - "storybook": "storybook dev -p 6006", - "build-storybook": "storybook build" - }, - "dependencies": { - "@hookform/resolvers": "3.3.4", - "@mantine/core": "7.5.2", - "@mantine/dates": "7.5.2", - "@mantine/dropzone": "7.5.2", - "@mantine/hooks": "7.5.2", - "@mantine/modals": "7.5.2", - "@mantine/next": "6.0.21", - "@mantine/notifications": "7.5.2", - "@stripe/react-stripe-js": "2.7.1", - "@stripe/stripe-js": "3.4.1", - "@svgr/webpack": "8.1.0", - "@tabler/icons-react": "2.47.0", - "@tanstack/react-query": "5.20.1", - "@tanstack/react-table": "8.11.8", - "app-constants": "workspace:*", - "app-types": "workspace:*", - "axios": "1.6.7", - "clsx": "2.1.0", - "dayjs": "1.11.10", - "dotenv-flow": "4.1.0", - "lodash": "4.17.21", - "mixpanel-browser": "2.49.0", - "next": "14.1.0", - "react": "18.2.0", - "react-dom": "18.2.0", - "react-hook-form": "7.50.1", - "schemas": "workspace:*", - "socket.io-client": "4.7.4", - "zod": "3.21.4" - }, - "devDependencies": { - "@storybook/addon-essentials": "7.6.14", - "@storybook/addon-interactions": "7.6.14", - "@storybook/addon-links": "7.6.14", - "@storybook/addon-onboarding": "^1.0.11", - "@storybook/addon-styling-webpack": "0.0.6", - "@storybook/blocks": "7.6.14", - "@storybook/builder-webpack5": "7.6.14", - "@storybook/nextjs": "7.6.14", - "@storybook/preview-api": "7.6.14", - "@storybook/react": "7.6.14", - "@storybook/test": "7.6.14", - "@tanstack/react-query-devtools": "5.20.1", - "@types/lodash": "4.14.202", - "@types/mixpanel-browser": "2.49.0", - "@types/node": "20.11.1", - "@types/qs": "6.9.11", - "@types/react": "18.2.55", - "@types/react-dom": "18.2.19", - "eslint": "8.56.0", - "eslint-config-custom": "workspace:*", - "lint-staged": "15.2.2", - "postcss": "8.4.35", - "postcss-preset-mantine": "1.13.0", - "postcss-simple-vars": "7.0.1", - "prettier": "3.2.5", - "prettier-config-custom": "workspace:*", - "storybook": "7.6.14", - "storybook-dark-mode": "3.0.3", - "tsconfig": "workspace:*", - "typescript": "5.2.2" - }, - "lint-staged": { - "*.{ts,tsx}": [ - "eslint --fix" - ] - } -} diff --git a/examples/stripe-subscriptions/apps/web/postcss.config.js b/examples/stripe-subscriptions/apps/web/postcss.config.js deleted file mode 100644 index bfba0ddfa..000000000 --- a/examples/stripe-subscriptions/apps/web/postcss.config.js +++ /dev/null @@ -1,14 +0,0 @@ -module.exports = { - plugins: { - 'postcss-preset-mantine': {}, - 'postcss-simple-vars': { - variables: { - 'mantine-breakpoint-xs': '36em', - 'mantine-breakpoint-sm': '48em', - 'mantine-breakpoint-md': '62em', - 'mantine-breakpoint-lg': '75em', - 'mantine-breakpoint-xl': '88em', - }, - }, - }, -}; diff --git a/examples/stripe-subscriptions/apps/web/public/favicon.ico b/examples/stripe-subscriptions/apps/web/public/favicon.ico deleted file mode 100644 index 49a2d8994..000000000 Binary files a/examples/stripe-subscriptions/apps/web/public/favicon.ico and /dev/null differ diff --git a/examples/stripe-subscriptions/apps/web/public/icons/google.svg b/examples/stripe-subscriptions/apps/web/public/icons/google.svg deleted file mode 100644 index 4cb6a2dfa..000000000 --- a/examples/stripe-subscriptions/apps/web/public/icons/google.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/examples/stripe-subscriptions/apps/web/public/icons/index.ts b/examples/stripe-subscriptions/apps/web/public/icons/index.ts deleted file mode 100644 index 2ef4d1762..000000000 --- a/examples/stripe-subscriptions/apps/web/public/icons/index.ts +++ /dev/null @@ -1 +0,0 @@ -export { default as GoogleIcon } from './google.svg'; diff --git a/examples/stripe-subscriptions/apps/web/public/images/index.ts b/examples/stripe-subscriptions/apps/web/public/images/index.ts deleted file mode 100644 index 04bfdf9d1..000000000 --- a/examples/stripe-subscriptions/apps/web/public/images/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { default as LogoImage } from './logo.svg'; -export { default as ShipLightImage } from './ship-light.svg'; diff --git a/examples/stripe-subscriptions/apps/web/public/images/logo.svg b/examples/stripe-subscriptions/apps/web/public/images/logo.svg deleted file mode 100644 index 15cab7c8e..000000000 --- a/examples/stripe-subscriptions/apps/web/public/images/logo.svg +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/examples/stripe-subscriptions/apps/web/public/images/ship-flight.svg b/examples/stripe-subscriptions/apps/web/public/images/ship-flight.svg deleted file mode 100644 index dfea4a722..000000000 --- a/examples/stripe-subscriptions/apps/web/public/images/ship-flight.svg +++ /dev/null @@ -1,216 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/stripe-subscriptions/apps/web/public/images/ship-light.svg b/examples/stripe-subscriptions/apps/web/public/images/ship-light.svg deleted file mode 100644 index f7250afb1..000000000 --- a/examples/stripe-subscriptions/apps/web/public/images/ship-light.svg +++ /dev/null @@ -1,50 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/stripe-subscriptions/apps/web/public/images/ship.svg b/examples/stripe-subscriptions/apps/web/public/images/ship.svg deleted file mode 100644 index f242c2bf7..000000000 --- a/examples/stripe-subscriptions/apps/web/public/images/ship.svg +++ /dev/null @@ -1,242 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/stripe-subscriptions/apps/web/public/robots.txt b/examples/stripe-subscriptions/apps/web/public/robots.txt deleted file mode 100644 index f6e6d1d41..000000000 --- a/examples/stripe-subscriptions/apps/web/public/robots.txt +++ /dev/null @@ -1,2 +0,0 @@ -User-Agent: * -Allow: / diff --git a/examples/stripe-subscriptions/apps/web/src/components/PaymentCard/card/index.tsx b/examples/stripe-subscriptions/apps/web/src/components/PaymentCard/card/index.tsx deleted file mode 100644 index a208db0c0..000000000 --- a/examples/stripe-subscriptions/apps/web/src/components/PaymentCard/card/index.tsx +++ /dev/null @@ -1,59 +0,0 @@ -import React, { FC, SyntheticEvent, useCallback } from 'react'; -import { Button, Group } from '@mantine/core'; -import { showNotification } from '@mantine/notifications'; -import { PaymentElement, useElements, useStripe } from '@stripe/react-stripe-js'; - -import { RoutePath } from 'routes'; -import config from 'config'; - -export type CardPropTypes = { - redirectUrl?: string; - onCancel: () => void; -}; - -const Card: FC = ({ redirectUrl, onCancel }) => { - const stripe = useStripe(); - const elements = useElements(); - - const handleSubmit = useCallback( - async (event: SyntheticEvent) => { - event.preventDefault(); - - if (!stripe || !elements) { - return; - } - - const { error } = await stripe.confirmSetup({ - elements, - confirmParams: { - return_url: redirectUrl || config.WEB_URL.concat(RoutePath.AccountPlan), - }, - }); - - if (error) { - showNotification({ - title: 'Error', - message: error.message, - color: 'red', - }); - } - }, - [stripe, elements, redirectUrl], - ); - - return ( -
- - - - - - - ); -}; - -export default Card; diff --git a/examples/stripe-subscriptions/apps/web/src/components/PaymentCard/index.tsx b/examples/stripe-subscriptions/apps/web/src/components/PaymentCard/index.tsx deleted file mode 100644 index 5bd5608ed..000000000 --- a/examples/stripe-subscriptions/apps/web/src/components/PaymentCard/index.tsx +++ /dev/null @@ -1,43 +0,0 @@ -import React, { FC, useLayoutEffect } from 'react'; -import { Loader } from '@mantine/core'; -import { Elements as StripeProvider } from '@stripe/react-stripe-js'; -import { loadStripe } from '@stripe/stripe-js'; - -import { paymentApi } from 'resources/payment'; - -import config from 'config'; - -import PaymentForm from './payment-form'; - -const stripePromise = loadStripe(config.STRIPE_PUBLIC_KEY); -const StripeElementProvider: FC<{ onCancel: () => void }> = (props) => { - const { onCancel } = props; - const { data: paymentIntent, isFetched, isError } = paymentApi.useSetupPaymentIntent(); - - useLayoutEffect(() => { - if (isError) { - onCancel(); - } - }, [isError, onCancel]); - - if (!isFetched) { - return ; - } - - if (!paymentIntent?.clientSecret) { - return null; - } - - return ( - - - - ); -}; - -export default StripeElementProvider; diff --git a/examples/stripe-subscriptions/apps/web/src/components/PaymentCard/payment-form/index.tsx b/examples/stripe-subscriptions/apps/web/src/components/PaymentCard/payment-form/index.tsx deleted file mode 100644 index e7c193b80..000000000 --- a/examples/stripe-subscriptions/apps/web/src/components/PaymentCard/payment-form/index.tsx +++ /dev/null @@ -1,59 +0,0 @@ -import React, { FC, SyntheticEvent, useCallback } from 'react'; -import { Button, Group } from '@mantine/core'; -import { showNotification } from '@mantine/notifications'; -import { PaymentElement, useElements, useStripe } from '@stripe/react-stripe-js'; - -import { RoutePath } from 'routes'; -import config from 'config'; - -export type PaymentFormPropTypes = { - redirectUrl?: string; - onCancel: () => void; -}; - -const PaymentForm: FC = ({ redirectUrl, onCancel }) => { - const stripe = useStripe(); - const elements = useElements(); - - const handleSubmit = useCallback( - async (event: SyntheticEvent) => { - event.preventDefault(); - - if (!stripe || !elements) { - return; - } - - const { error } = await stripe.confirmSetup({ - elements, - confirmParams: { - return_url: redirectUrl || config.WEB_URL.concat(RoutePath.AccountPlan), - }, - }); - - if (error) { - showNotification({ - title: 'Error', - message: error.message, - color: 'red', - }); - } - }, - [stripe, elements, redirectUrl], - ); - - return ( -
- - - - - - - ); -}; - -export default PaymentForm; diff --git a/examples/stripe-subscriptions/apps/web/src/components/Table/index.tsx b/examples/stripe-subscriptions/apps/web/src/components/Table/index.tsx deleted file mode 100644 index 78837d7fb..000000000 --- a/examples/stripe-subscriptions/apps/web/src/components/Table/index.tsx +++ /dev/null @@ -1,141 +0,0 @@ -import React, { FC, useCallback, useMemo, useState } from 'react'; -import { Checkbox, Group, Pagination, Paper, Table as TableContainer, Text } from '@mantine/core'; -import { - ColumnDef, - flexRender, - getCoreRowModel, - getSortedRowModel, - OnChangeFn, - PaginationState, - RowData, - RowSelectionState, - SortingState, - useReactTable, -} from '@tanstack/react-table'; - -import Tbody from './tbody'; -import Thead from './thead'; - -type SpacingSizes = 'xs' | 'sm' | 'md' | 'lg' | 'xl'; - -interface TableProps { - data: RowData[]; - dataCount?: number; - columns: ColumnDef[]; - horizontalSpacing?: SpacingSizes; - verticalSpacing?: SpacingSizes; - rowSelection?: RowSelectionState; - setRowSelection?: OnChangeFn; - sorting?: SortingState; - onSortingChange?: OnChangeFn; - onPageChange?: (value: Record) => void; - perPage: number; - page?: number; -} - -const selectableColumns: ColumnDef[] = [ - { - id: 'select', - header: ({ table }) => ( - - ), - cell: ({ row }) => ( - - ), - }, -]; - -const Table: FC = ({ - data, - dataCount, - columns, - horizontalSpacing = 'xl', - verticalSpacing = 'lg', - rowSelection, - setRowSelection, - sorting, - onSortingChange, - onPageChange, - page, - perPage, -}) => { - const [{ pageIndex, pageSize }, setPagination] = useState({ - pageIndex: page || 1, - pageSize: perPage, - }); - const isSelectable = !!rowSelection && !!setRowSelection; - const isSortable = useMemo(() => !!onSortingChange, [onSortingChange]); - - const pagination = useMemo( - () => ({ - pageIndex, - pageSize, - }), - [pageIndex, pageSize], - ); - - const onPageChangeHandler = useCallback( - (currentPage: any, direction?: string) => { - setPagination({ pageIndex: currentPage, pageSize }); - - if (onPageChange) { - onPageChange((prev: Record) => ({ ...prev, page: currentPage, direction })); - } - }, - [onPageChange, pageSize], - ); - - const table = useReactTable({ - data, - columns: isSelectable ? [...selectableColumns, ...columns] : columns, - state: { - rowSelection, - sorting, - pagination, - }, - onSortingChange, - onPaginationChange: onPageChangeHandler, - pageCount: dataCount ? Math.ceil((dataCount || 0) / perPage) : -1, - manualPagination: true, - onRowSelectionChange: setRowSelection, - getCoreRowModel: getCoreRowModel(), - getSortedRowModel: getSortedRowModel(), - }); - - const renderPagination = useCallback(() => { - // eslint-disable-next-line @typescript-eslint/no-shadow - const { pageIndex } = table.getState().pagination; - - return ; - }, [onPageChangeHandler, table]); - - return ( - <> - - -
- - - - - - {dataCount && ( - - Showing {table.getRowModel().rows.length} of {dataCount} results - - )} - {renderPagination()} - - - ); -}; - -export default Table; diff --git a/examples/stripe-subscriptions/apps/web/src/components/Table/tbody/index.tsx b/examples/stripe-subscriptions/apps/web/src/components/Table/tbody/index.tsx deleted file mode 100644 index 5b090505d..000000000 --- a/examples/stripe-subscriptions/apps/web/src/components/Table/tbody/index.tsx +++ /dev/null @@ -1,43 +0,0 @@ -import React, { FC, ReactNode } from 'react'; -import { Table, useMantineTheme } from '@mantine/core'; -import { CellContext, ColumnDefTemplate, Row } from '@tanstack/react-table'; - -type RowData = { - [key: string]: string | number | boolean | Record; -}; - -interface TbodyProps { - isSelectable: boolean; - rows: Row[]; - flexRender: ( - template: ColumnDefTemplate> | undefined, - context: CellContext, - ) => ReactNode; -} - -const Tbody: FC = ({ isSelectable, rows, flexRender }) => { - const { colors } = useMantineTheme(); - - return ( - - {rows.map((row) => ( - - {row.getVisibleCells().map((cell) => ( - {flexRender(cell.column.columnDef.cell, cell.getContext())} - ))} - - ))} - - ); -}; - -export default Tbody; diff --git a/examples/stripe-subscriptions/apps/web/src/components/Table/thead/index.tsx b/examples/stripe-subscriptions/apps/web/src/components/Table/thead/index.tsx deleted file mode 100644 index 65b4deb22..000000000 --- a/examples/stripe-subscriptions/apps/web/src/components/Table/thead/index.tsx +++ /dev/null @@ -1,61 +0,0 @@ -import React, { FC, ReactNode } from 'react'; -import { Table, UnstyledButton } from '@mantine/core'; -import { IconArrowsSort, IconSortAscending, IconSortDescending } from '@tabler/icons-react'; -import { ColumnDefTemplate, HeaderContext, HeaderGroup } from '@tanstack/react-table'; - -import classes from './thead.module.css'; - -type CellData = { - [key: string]: string | boolean | Record; -}; - -interface TheadProps { - isSortable: boolean; - headerGroups: HeaderGroup[]; - flexRender: ( - template: ColumnDefTemplate> | undefined, - context: HeaderContext, - ) => ReactNode; -} - -const Thead: FC = ({ isSortable, headerGroups, flexRender }) => ( - - {headerGroups.map((headerGroup) => ( - - {headerGroup.headers.map((header) => ( - - {!header.isPlaceholder && ( - - {flexRender(header.column.columnDef.header, header.getContext())} - {isSortable && - header.id !== 'select' && - ({ - false: , - asc: , - desc: , - }[String(header.column.getIsSorted())] ?? - null)} - - )} - - ))} - - ))} - -); - -export default Thead; diff --git a/examples/stripe-subscriptions/apps/web/src/components/Table/thead/thead.module.css b/examples/stripe-subscriptions/apps/web/src/components/Table/thead/thead.module.css deleted file mode 100644 index 90a1b62d3..000000000 --- a/examples/stripe-subscriptions/apps/web/src/components/Table/thead/thead.module.css +++ /dev/null @@ -1,3 +0,0 @@ -.headerButton { - justify-content: space-between; -} diff --git a/examples/stripe-subscriptions/apps/web/src/components/index.ts b/examples/stripe-subscriptions/apps/web/src/components/index.ts deleted file mode 100644 index 91d62aa37..000000000 --- a/examples/stripe-subscriptions/apps/web/src/components/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { default as PaymentCard } from './PaymentCard'; -export { default as Table } from './Table'; diff --git a/examples/stripe-subscriptions/apps/web/src/config/index.ts b/examples/stripe-subscriptions/apps/web/src/config/index.ts deleted file mode 100644 index 07b125188..000000000 --- a/examples/stripe-subscriptions/apps/web/src/config/index.ts +++ /dev/null @@ -1,45 +0,0 @@ -import { z } from 'zod'; - -import { configUtil } from 'utils'; - -/** - * Specify your client-side environment variables schema here. - * This way you can ensure the app isn't built with invalid env vars. - * To expose them to the client, prefix them with `NEXT_PUBLIC_`. - */ -const schema = z.object({ - APP_ENV: z.enum(['development', 'staging', 'production']).default('development'), - IS_DEV: z.preprocess(() => process.env.APP_ENV === 'development', z.boolean()), - API_URL: z.string(), - WS_URL: z.string(), - WEB_URL: z.string(), - MIXPANEL_API_KEY: z.string().optional(), - STRIPE_PUBLIC_KEY: z.string(), - SUBSCRIPTION_STARTER_MONTH: z.string(), - SUBSCRIPTION_STARTER_YEAR: z.string(), - SUBSCRIPTION_PRO_MONTH: z.string(), - SUBSCRIPTION_PRO_YEAR: z.string(), -}); - -type Config = z.infer; - -/** - * You can't destruct `process.env` as a regular object in the Next.js edge runtimes (e.g. - * middlewares) or client-side, so we need to destruct manually. - */ -const processEnv = { - APP_ENV: process.env.NEXT_PUBLIC_APP_ENV, - API_URL: process.env.NEXT_PUBLIC_API_URL, - WS_URL: process.env.NEXT_PUBLIC_WS_URL, - WEB_URL: process.env.NEXT_PUBLIC_WEB_URL, - MIXPANEL_API_KEY: process.env.NEXT_PUBLIC_MIXPANEL_API_KEY, - STRIPE_PUBLIC_KEY: process.env.STRIPE_PUBLIC_KEY, - SUBSCRIPTION_STARTER_MONTH: process.env.STARTER_MONTH, - SUBSCRIPTION_STARTER_YEAR: process.env.STARTER_YEAR, - SUBSCRIPTION_PRO_MONTH: process.env.PRO_MONTH, - SUBSCRIPTION_PRO_YEAR: process.env.PRO_YEAR, -} as Record; - -const config = configUtil.validateConfig(schema, processEnv); - -export default config; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/404/index.page.tsx b/examples/stripe-subscriptions/apps/web/src/pages/404/index.page.tsx deleted file mode 100644 index 8b1f3acf4..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/404/index.page.tsx +++ /dev/null @@ -1,26 +0,0 @@ -import React, { NextPage } from 'next'; -import Head from 'next/head'; -import router from 'next/router'; -import { Button, Stack, Text, Title } from '@mantine/core'; - -import { RoutePath } from 'routes'; - -const NotFound: NextPage = () => ( - <> - - Page not found - - - - Oops! The page is not found. - - - The page you are looking for may have been removed, or the link you followed may be broken. - - - - - -); - -export default NotFound; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/_app.page.tsx b/examples/stripe-subscriptions/apps/web/src/pages/_app.page.tsx deleted file mode 100644 index 13e897fc8..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/_app.page.tsx +++ /dev/null @@ -1,3 +0,0 @@ -import App from 'pages/_app'; - -export default App; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/MainLayout/Header/components/MenuToggle/index.tsx b/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/MainLayout/Header/components/MenuToggle/index.tsx deleted file mode 100644 index 05520f4b9..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/MainLayout/Header/components/MenuToggle/index.tsx +++ /dev/null @@ -1,25 +0,0 @@ -import React, { forwardRef } from 'react'; -import { Avatar, UnstyledButton, useMantineTheme } from '@mantine/core'; - -import { accountApi } from 'resources/account'; - -const MenuToggle = forwardRef((props, ref) => { - const { primaryColor } = useMantineTheme(); - - const { data: account } = accountApi.useGet(); - - if (!account) return null; - - return ( - - - {account.firstName.charAt(0)} - {account.lastName.charAt(0)} - - - ); -}); - -MenuToggle.displayName = 'MenuToggle'; - -export default MenuToggle; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/MainLayout/Header/components/ShadowLoginBanner/index.tsx b/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/MainLayout/Header/components/ShadowLoginBanner/index.tsx deleted file mode 100644 index 6a78a39da..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/MainLayout/Header/components/ShadowLoginBanner/index.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import React, { FC } from 'react'; -import { Center, Text } from '@mantine/core'; - -interface ShadowLoginBannerProps { - email: string; -} - -const ShadowLoginBanner: FC = ({ email }) => ( -
- - You currently under the shadow login as{' '} - - {email} - - -
-); - -export default ShadowLoginBanner; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/MainLayout/Header/components/UserMenu/index.tsx b/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/MainLayout/Header/components/UserMenu/index.tsx deleted file mode 100644 index 3cb51c0d2..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/MainLayout/Header/components/UserMenu/index.tsx +++ /dev/null @@ -1,38 +0,0 @@ -import React, { FC } from 'react'; -import Link from 'next/link'; -import { Menu } from '@mantine/core'; -import { IconLogout, IconReceipt, IconUserCircle } from '@tabler/icons-react'; - -import { accountApi } from 'resources/account'; - -import { RoutePath } from 'routes'; - -import MenuToggle from '../MenuToggle'; - -const UserMenu: FC = () => { - const { mutate: signOut } = accountApi.useSignOut(); - - return ( - - - - - - - }> - Profile settings - - - }> - Account plan - - - signOut()} leftSection={}> - Log out - - - - ); -}; - -export default UserMenu; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/MainLayout/Header/index.tsx b/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/MainLayout/Header/index.tsx deleted file mode 100644 index 0c8110b53..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/MainLayout/Header/index.tsx +++ /dev/null @@ -1,34 +0,0 @@ -import React, { FC, memo } from 'react'; -import Link from 'next/link'; -import { Anchor, AppShell, Group } from '@mantine/core'; - -import { accountApi } from 'resources/account'; - -import { LogoImage } from 'public/images'; - -import { RoutePath } from 'routes'; - -import ShadowLoginBanner from './components/ShadowLoginBanner'; -import UserMenu from './components/UserMenu'; - -const Header: FC = () => { - const { data: account } = accountApi.useGet(); - - if (!account) return null; - - return ( - - {account.isShadow && } - - - - - - - - - - ); -}; - -export default memo(Header); diff --git a/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/MainLayout/index.tsx b/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/MainLayout/index.tsx deleted file mode 100644 index 8f62839d2..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/MainLayout/index.tsx +++ /dev/null @@ -1,28 +0,0 @@ -import React, { FC, ReactElement } from 'react'; -import { AppShell, Stack } from '@mantine/core'; - -import { accountApi } from 'resources/account'; - -import Header from './Header'; - -interface MainLayoutProps { - children: ReactElement; -} - -const MainLayout: FC = ({ children }) => { - const { data: account } = accountApi.useGet(); - - if (!account) return null; - - return ( - -
- - - {children} - - - ); -}; - -export default MainLayout; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/PrivateScope/index.tsx b/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/PrivateScope/index.tsx deleted file mode 100644 index d6c02c669..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/PrivateScope/index.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import { FC, ReactElement, useEffect } from 'react'; - -import { socketService } from 'services'; - -interface PrivateScopeProps { - children: ReactElement; -} - -const PrivateScope: FC = ({ children }) => { - useEffect(() => { - socketService.connect(); - - return () => socketService.disconnect(); - }, []); - - return children; -}; - -export default PrivateScope; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/UnauthorizedLayout/index.tsx b/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/UnauthorizedLayout/index.tsx deleted file mode 100644 index 010e7a617..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/UnauthorizedLayout/index.tsx +++ /dev/null @@ -1,18 +0,0 @@ -import React, { FC, ReactElement } from 'react'; -import { Center, Image, SimpleGrid } from '@mantine/core'; - -interface UnauthorizedLayoutProps { - children: ReactElement; -} - -const UnauthorizedLayout: FC = ({ children }) => ( - - - -
- {children} -
-
-); - -export default UnauthorizedLayout; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/index.tsx b/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/index.tsx deleted file mode 100644 index 10b6eb94a..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/_app/PageConfig/index.tsx +++ /dev/null @@ -1,66 +0,0 @@ -import React, { FC, Fragment, ReactElement } from 'react'; -import { useRouter } from 'next/router'; - -import { accountApi } from 'resources/account'; - -import { analyticsService } from 'services'; - -import { LayoutType, RoutePath, routesConfiguration, ScopeType } from 'routes'; -import config from 'config'; - -import MainLayout from './MainLayout'; -import PrivateScope from './PrivateScope'; -import UnauthorizedLayout from './UnauthorizedLayout'; - -import 'resources/user/user.handlers'; - -const layoutToComponent = { - [LayoutType.MAIN]: MainLayout, - [LayoutType.UNAUTHORIZED]: UnauthorizedLayout, -}; - -const scopeToComponent = { - [ScopeType.PUBLIC]: Fragment, - [ScopeType.PRIVATE]: PrivateScope, -}; - -interface PageConfigProps { - children: ReactElement; -} - -const PageConfig: FC = ({ children }) => { - const { route, push } = useRouter(); - const { data: account, isLoading: isAccountLoading } = accountApi.useGet({ - onSettled: () => { - if (!config.MIXPANEL_API_KEY) return; - - analyticsService.init(); - - analyticsService.setUser(account); - }, - }); - - if (isAccountLoading) return null; - - const { scope, layout } = routesConfiguration[route as RoutePath] || {}; - const Scope = scope ? scopeToComponent[scope] : Fragment; - const Layout = layout ? layoutToComponent[layout] : Fragment; - - if (scope === ScopeType.PRIVATE && !account) { - push(RoutePath.SignIn); - return null; - } - - if (scope === ScopeType.PUBLIC && account) { - push(RoutePath.Home); - return null; - } - - return ( - - {children} - - ); -}; - -export default PageConfig; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/_app/index.tsx b/examples/stripe-subscriptions/apps/web/src/pages/_app/index.tsx deleted file mode 100644 index 388c7141b..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/_app/index.tsx +++ /dev/null @@ -1,41 +0,0 @@ -import React, { FC } from 'react'; -import { AppProps } from 'next/app'; -import Head from 'next/head'; -import { MantineProvider } from '@mantine/core'; -import { ModalsProvider } from '@mantine/modals'; -import { Notifications } from '@mantine/notifications'; -import { QueryClientProvider } from '@tanstack/react-query'; -import { ReactQueryDevtools } from '@tanstack/react-query-devtools'; - -import theme from 'theme'; - -import queryClient from 'query-client'; - -import PageConfig from './PageConfig'; - -import '@mantine/core/styles.css'; -import '@mantine/dates/styles.css'; -import '@mantine/notifications/styles.css'; - -const App: FC = ({ Component, pageProps }) => ( - <> - - Ship - - - - - - - - - - - - - - - -); - -export default App; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/_document.page.tsx b/examples/stripe-subscriptions/apps/web/src/pages/_document.page.tsx deleted file mode 100644 index d85a4f7c8..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/_document.page.tsx +++ /dev/null @@ -1,3 +0,0 @@ -import Document from 'pages/_document'; - -export default Document; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/_document/index.tsx b/examples/stripe-subscriptions/apps/web/src/pages/_document/index.tsx deleted file mode 100644 index b908c8af9..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/_document/index.tsx +++ /dev/null @@ -1,18 +0,0 @@ -import React from 'react'; -import { Head, Html, Main, NextScript } from 'next/document'; -import { ColorSchemeScript } from '@mantine/core'; - -const Document = () => ( - - - - - - -
- - - -); - -export default Document; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/current-plan/index.module.css b/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/current-plan/index.module.css deleted file mode 100644 index e1984d13b..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/current-plan/index.module.css +++ /dev/null @@ -1,8 +0,0 @@ -.root { - padding: 32px 0; - border-bottom: 1px solid var(--mantine-color-gray-4) -} - -.hidden { - display: none; -} \ No newline at end of file diff --git a/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/current-plan/index.tsx b/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/current-plan/index.tsx deleted file mode 100644 index 2452d17bd..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/current-plan/index.tsx +++ /dev/null @@ -1,80 +0,0 @@ -import React, { FC, useState } from 'react'; -import { Button, Container, Group, Text, Title } from '@mantine/core'; -import cx from 'clsx'; -import dayjs from 'dayjs'; - -import { paymentApi } from 'resources/payment'; -import { subscriptionApi } from 'resources/subscription'; - -import { PaymentCard } from 'components'; - -import PaymentHistory from '../payment-history'; - -import classes from './index.module.css'; - -const CurrentPlan: FC = () => { - const { data: subscriptionDetails } = subscriptionApi.useGetDetails(); - - const { data: paymentInformation } = paymentApi.useGetPaymentInformation(); - - const [isPaymentCardModalOpened, setIsPaymentCardModalOpened] = useState(false); - - return ( - <> - - - - Current plan - - {subscriptionDetails?.product?.name || 'Basic'} - - {subscriptionDetails && ( - - - Next payment - - - ${(subscriptionDetails?.pendingInvoice?.amountDue || 0) / 100} - - - on {dayjs((subscriptionDetails?.currentPeriodEndDate || 0) * 1000).format('MMM DD, YYYY')} - - - )} - - - {paymentInformation?.card && ( - - - - Payment method - - - {paymentInformation?.card.brand} **** - {paymentInformation?.card.last4} - - - - - setIsPaymentCardModalOpened(false)} /> - - - - - - )} - - - - - - ); -}; - -export default CurrentPlan; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/payment-history/index.tsx b/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/payment-history/index.tsx deleted file mode 100644 index 800f8d4a6..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/payment-history/index.tsx +++ /dev/null @@ -1,92 +0,0 @@ -import React, { FC, useCallback, useState } from 'react'; -import Link from 'next/link'; -import { Badge, Skeleton, Stack, Text } from '@mantine/core'; -import { IconExternalLink } from '@tabler/icons-react'; -import type { ColumnDef } from '@tanstack/react-table'; -import { HistoryItem, Status, StripePagination } from 'app-types'; -import dayjs from 'dayjs'; - -import { paymentApi } from 'resources/payment'; - -import { Table } from 'components'; - -const PER_PAGE = 5; - -const badgeColorMap = { - [Status.SUCCEEDED]: 'green', - [Status.FAILED]: 'red', - [Status.PENDING]: 'orange', -}; - -const PaymentStatusBadge: FC<{ status: Status }> = ({ status }) => ( - {status} -); - -const ReceiptLink = ({ href, target }: { href: string; target?: string }) => ( - - - -); - -const columns: ColumnDef[] = [ - { - accessorKey: 'created', - header: 'Date', - cell: (info) => dayjs((info.getValue() as number) * 1000).format('DD/MM/YYYY'), - }, - { - accessorKey: 'description', - header: 'Description', - cell: (info) => info.getValue(), - }, - { - accessorKey: 'amount', - header: 'Amount', - cell: (info) => `$${((info.getValue() as number) || 0) / 100}`, - }, - { - accessorKey: 'status', - header: 'Payment status', - cell: (info) => , - }, - { - accessorKey: 'receipt_url', - header: 'Receipt', - cell: (info) => , - }, -]; - -const PaymentHistory: FC = () => { - const [params, setParams] = useState({ page: 1, perPage: PER_PAGE }); - - const { data: paymentHistory, isFetching } = paymentApi.useGetPaymentHistory(params); - - const renderTable = useCallback(() => { - if (isFetching) { - return [1, 2, 3, 4, 5].map((item) => ); - } - - if (!paymentHistory?.data.length) { - return Payment history is empty; - } - - return ( -
- ); - }, [isFetching, paymentHistory, params.page]); - return ( - - - Payment history - - {renderTable()} - - ); -}; -export default PaymentHistory; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/pricing-plans/components/plan-item/index.module.css b/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/pricing-plans/components/plan-item/index.module.css deleted file mode 100644 index 566c66133..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/pricing-plans/components/plan-item/index.module.css +++ /dev/null @@ -1,16 +0,0 @@ -.list { - display: flex; - justify-content: flex-start; - align-items: center; - padding: 0; - width: 100%; -} - -.card { - flex: 1 1; - border-color: var(--mantine-color-gray-4); -} - -.active { - background: var(--mantine-color-gray-1); -} \ No newline at end of file diff --git a/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/pricing-plans/components/plan-item/index.tsx b/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/pricing-plans/components/plan-item/index.tsx deleted file mode 100644 index d2f18e627..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/pricing-plans/components/plan-item/index.tsx +++ /dev/null @@ -1,115 +0,0 @@ -import React, { FC, memo, useCallback, useMemo } from 'react'; -import { Badge, Button, Card, Container, Space, Stack, Text, Title } from '@mantine/core'; -import { IconCheck } from '@tabler/icons-react'; -import { Intervals, ItemType, Subscription } from 'app-types'; -import cx from 'clsx'; - -import { subscriptionApi } from 'resources/subscription'; - -import classes from './index.module.css'; - -type PlanItemPropTypes = { - interval: Intervals; - plan: ItemType; - onPreviewUpgrade: (props: { priceId: string; title: string }) => void; - currentSubscription?: Subscription; -}; - -const PlanItem: FC = (props) => { - const { interval, plan, onPreviewUpgrade, currentSubscription } = props; - - const { mutate: updatePlan } = subscriptionApi.useSubscribe(); - - const isCurrentSubscription = useMemo(() => { - if (!currentSubscription) { - return plan.priceId[interval] === 'price_0'; - } - - return currentSubscription.priceId === plan.priceId[interval]; - }, [currentSubscription, interval, plan.priceId]); - - const onClick = useCallback(() => { - if (currentSubscription) { - onPreviewUpgrade({ priceId: plan.priceId[interval], title: plan.title }); - - return; - } - - updatePlan({ priceId: plan.priceId[interval], interval }); - }, [currentSubscription, updatePlan, plan.priceId, plan.title, interval, onPreviewUpgrade]); - - const priceText = useMemo(() => { - if (plan.price[interval]) { - return ( - <> - - ${plan.price[interval]} - - - / {interval} - - - ); - } - - return ( - - Free - - ); - }, [interval, plan.price]); - - const renderFeatureList = useCallback( - () => - plan.features.map((item) => ( - - - - {item} - - )), - [plan.features], - ); - - return ( - - - {plan.title} - {isCurrentSubscription && ( - - Current plan - - )} - - - - {priceText} - - - {renderFeatureList()} - - - - {!isCurrentSubscription && ( - - )} - - ); -}; - -export default memo(PlanItem); diff --git a/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/pricing-plans/components/plans/index.tsx b/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/pricing-plans/components/plans/index.tsx deleted file mode 100644 index 9bcc1c6f3..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/pricing-plans/components/plans/index.tsx +++ /dev/null @@ -1,61 +0,0 @@ -import React, { FC, useCallback, useState } from 'react'; -import { Badge, Box, Group, SegmentedControl, Space, Stack } from '@mantine/core'; -import { Intervals, ItemType, Subscription } from 'app-types'; - -import { accountApi } from 'resources/account'; -import { subscriptionConstants } from 'resources/subscription'; - -import PlanItem from '../plan-item'; -import UpgradeModal from '../upgrade-modal'; - -const Plans: FC = () => { - const { data: account } = accountApi.useGet(); - - const [interval, setInterval] = useState(Intervals.YEAR); - const [selectedUpgradePlan, setSelectedUpgradePlan] = useState<{ priceId: string; title: string }>(); - - const renderItems = () => - subscriptionConstants.items.map((item: ItemType) => ( - - )); - - const onClosePreview = useCallback(() => setSelectedUpgradePlan(undefined), []); - - return ( - <> - - - Save up to 15% - with yearly subscription - - - - setInterval(value as Intervals)} - /> - - - - - - {renderItems()} - - - {selectedUpgradePlan && } - - ); -}; - -export default Plans; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/pricing-plans/components/upgrade-modal/index.tsx b/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/pricing-plans/components/upgrade-modal/index.tsx deleted file mode 100644 index 0ffd5755e..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/pricing-plans/components/upgrade-modal/index.tsx +++ /dev/null @@ -1,120 +0,0 @@ -import React, { memo, useCallback, useMemo } from 'react'; -import { useRouter } from 'next/router'; -import { Button, Container, Modal, Space, Text, Title } from '@mantine/core'; -import dayjs from 'dayjs'; - -import { subscriptionApi } from 'resources/subscription'; - -import * as routes from 'routes'; - -type Plan = { - priceId: string; - title: string; -}; - -type UpgradeModalPropTypes = { - plan: Plan; - onClose: () => void; -}; - -const UpgradeModal = ({ plan, onClose }: UpgradeModalPropTypes) => { - const router = useRouter(); - const { data: invoicePreview, isFetching } = subscriptionApi.usePreviewUpgradeSubscription(plan.priceId); - const { mutate: upgradeMutation, isPending } = subscriptionApi.useUpgradeSubscription(); - - const isDowngrade = useMemo( - () => plan.priceId === 'price_0' || (invoicePreview?.invoice?.total ?? 0) < 0, - [plan.priceId, invoicePreview?.invoice?.total], - ); - - const text = useMemo(() => { - if (isDowngrade) { - return `Please confirm that you want to switch to ${plan.title}. The new plan will be applied immediately. We refund you the difference for the ${plan.title} to be used for your next payment.`; - } - - return `Please confirm that you want to update to ${plan.title}. You will be upgraded immediately and charged the difference for the ${plan.title}.`; - }, [plan.title, isDowngrade]); - - const onConfirm = () => - upgradeMutation( - { priceId: plan.priceId }, - { - onSuccess: () => router.push(`${routes.RoutePath.Home}?subscriptionPlan=${plan.priceId}`), - }, - ); - - const renderPrice = useCallback(() => { - const { invoice } = invoicePreview ?? {}; - const totalAmount = Math.abs(invoice?.total ?? 0); - const date = (invoice?.lines?.data[1]?.period.end ?? 0) * 1000; - let secondRow = ( - <> - Next payment - - {dayjs(date).format('MMM DD, YYYY')} - - - ); - - if (isDowngrade) { - const newSubscriptionPayment = invoice?.lines?.data[1]?.amount ?? 0; - const balanceAfterNextPayment = newSubscriptionPayment - totalAmount; - - secondRow = ( - <> - Total for the next payment - - ${Math.max(balanceAfterNextPayment / 100, 0)} - - - ); - } - - return ( - <> - - {isDowngrade ? 'Refund' : 'Total Price'} - - ${totalAmount / 100} - - - {plan.priceId !== '0' && {secondRow}} - - ); - }, [invoicePreview, isDowngrade, plan.priceId]); - - return ( - - You are about to {isDowngrade ? 'switch' : 'upgrade'} to {plan.title} - - } - onClose={onClose} - > - - - {text} - - - {!isFetching && ( - <> - {renderPrice()} - - - - - - - )} - - ); -}; - -export default memo(UpgradeModal); diff --git a/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/pricing-plans/index.tsx b/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/pricing-plans/index.tsx deleted file mode 100644 index dbc14daa8..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/account-plan/components/pricing-plans/index.tsx +++ /dev/null @@ -1,24 +0,0 @@ -import React from 'react'; -import { NextPage } from 'next'; -import Head from 'next/head'; -import { Space, Title } from '@mantine/core'; - -import Plans from './components/plans'; - -const SubscriptionPlans: NextPage = () => ( - <> - - Pricing plans - - - - Pricing plans - - - - - - -); - -export default SubscriptionPlans; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/account-plan/index.page.tsx b/examples/stripe-subscriptions/apps/web/src/pages/account-plan/index.page.tsx deleted file mode 100644 index 86c4a5fdd..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/account-plan/index.page.tsx +++ /dev/null @@ -1,75 +0,0 @@ -import React, { useEffect } from 'react'; -import { NextPage } from 'next'; -import Head from 'next/head'; -import { useRouter } from 'next/router'; -import { Stack, Tabs, Title } from '@mantine/core'; -import { showNotification } from '@mantine/notifications'; - -import { RoutePath } from 'routes'; - -import CurrentPlan from './components/current-plan'; -import SubscriptionPlans from './components/pricing-plans'; - -const getNotificationMessage = (paymentIntentStatus: string) => { - switch (paymentIntentStatus) { - case 'succeeded': - return { - title: 'Success', - message: 'Success! Your payment method has been saved.', - color: 'green', - }; - case 'requires_payment_method': - return { - title: 'Error', - message: 'Failed to process payment details. Please try another payment method.', - color: 'red', - }; - default: - return { - title: 'Processing', - message: 'Processing payment details. We will update you when processing is complete.', - }; - } -}; - -const Plan: NextPage = () => { - const router = useRouter(); - - useEffect(() => { - if (router.query.redirect_status) { - router.replace(RoutePath.AccountPlan, undefined, { shallow: true }); - showNotification(getNotificationMessage(router.query.redirect_status as string)); - } - }, [router, router.query.redirect_status]); - - return ( - <> - - Account plan - - - Account Plan - - - - Billing - - - Plans - - - - - - - - - - - - - - ); -}; - -export default Plan; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/api/example.api.ts b/examples/stripe-subscriptions/apps/web/src/pages/api/example.api.ts deleted file mode 100644 index 038fcc951..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/api/example.api.ts +++ /dev/null @@ -1,6 +0,0 @@ -// https://nextjs.org/docs/api-routes/introduction -import { NextApiRequest, NextApiResponse } from 'next'; - -export default function handler(req: NextApiRequest, res: NextApiResponse) { - res.status(200).json({ name: 'John Doe' }); -} diff --git a/examples/stripe-subscriptions/apps/web/src/pages/expire-token/index.page.tsx b/examples/stripe-subscriptions/apps/web/src/pages/expire-token/index.page.tsx deleted file mode 100644 index c718d5474..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/expire-token/index.page.tsx +++ /dev/null @@ -1,73 +0,0 @@ -import React, { useState } from 'react'; -import { NextPage } from 'next'; -import Head from 'next/head'; -import { useRouter } from 'next/router'; -import { Button, Stack, Text, Title } from '@mantine/core'; - -import { accountApi } from 'resources/account'; - -import { handleError } from 'utils'; - -import { RoutePath } from 'routes'; - -import { QueryParam } from 'types'; - -type ForgotPasswordParams = { - email: QueryParam; -}; - -const ForgotPassword: NextPage = () => { - const router = useRouter(); - - const { email } = router.query; - - const [isSent, setSent] = useState(false); - - const { mutate: resendEmail, isPending: isResendEmailPending } = accountApi.useResendEmail(); - - const onSubmit = () => - resendEmail( - { email }, - { - onSuccess: () => setSent(true), - onError: (e) => handleError(e), - }, - ); - - if (isSent) { - return ( - <> - - Password reset link expired - - - - Reset link has been sent - Reset link sent successfully - - - - - ); - } - - return ( - <> - - Password reset link expired - - - - Password reset link expired - - Sorry, your password reset link has expired. Click the button below to get a new one. - - - - - ); -}; - -export default ForgotPassword; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/forgot-password/index.page.tsx b/examples/stripe-subscriptions/apps/web/src/pages/forgot-password/index.page.tsx deleted file mode 100644 index 2af0f40ee..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/forgot-password/index.page.tsx +++ /dev/null @@ -1,110 +0,0 @@ -import React, { useState } from 'react'; -import { NextPage } from 'next'; -import Head from 'next/head'; -import Link from 'next/link'; -import { useRouter } from 'next/router'; -import { Anchor, Button, Group, Stack, Text, TextInput, Title } from '@mantine/core'; -import { zodResolver } from '@hookform/resolvers/zod'; -import { useForm } from 'react-hook-form'; -import { z } from 'zod'; - -import { accountApi } from 'resources/account'; - -import { handleError } from 'utils'; - -import { RoutePath } from 'routes'; - -import { EMAIL_REGEX } from 'app-constants'; - -const schema = z.object({ - email: z.string().toLowerCase().regex(EMAIL_REGEX, 'Email format is incorrect.'), -}); - -type ForgotPasswordParams = { - email: string; -}; - -const ForgotPassword: NextPage = () => { - const router = useRouter(); - - const [email, setEmail] = useState(''); - - const { mutate: forgotPassword, isPending: isForgotPasswordPending } = - accountApi.useForgotPassword(); - - const { - register, - handleSubmit, - formState: { errors }, - } = useForm({ - resolver: zodResolver(schema), - }); - - const onSubmit = (data: ForgotPasswordParams) => - forgotPassword(data, { - onSuccess: () => setEmail(data.email), - onError: (e) => handleError(e), - }); - - if (email) { - return ( - <> - - Forgot password - - - Reset link has been sent - - - A link to reset your password has just been sent to{' '} - - {email} - - . Please check your email inbox and follow the directions to reset your password. - - - - - - ); - } - - return ( - <> - - Forgot password - - - - Forgot Password - - Please enter your email and we'll send a link to reset your password. - -
- - - - - - - - - Have an account? - - Sign in - - -
- - ); -}; - -export default ForgotPassword; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/home/constants.ts b/examples/stripe-subscriptions/apps/web/src/pages/home/constants.ts deleted file mode 100644 index e855e0923..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/home/constants.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { ComboboxItem } from '@mantine/core'; -import { ColumnDef } from '@tanstack/react-table'; - -import { User } from 'types'; - -export const PER_PAGE = 5; - -export const columns: ColumnDef[] = [ - { - accessorKey: 'firstName', - header: 'First Name', - cell: (info) => info.getValue(), - }, - { - accessorKey: 'lastName', - header: 'Last Name', - cell: (info) => info.getValue(), - }, - { - accessorKey: 'email', - header: 'Email', - cell: (info) => info.getValue(), - }, -]; - -export const selectOptions: ComboboxItem[] = [ - { - value: 'newest', - label: 'Newest', - }, - { - value: 'oldest', - label: 'Oldest', - }, -]; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/home/index.module.css b/examples/stripe-subscriptions/apps/web/src/pages/home/index.module.css deleted file mode 100644 index 8cc990339..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/home/index.module.css +++ /dev/null @@ -1,7 +0,0 @@ -.inputSkeleton { - flex-grow: 0.25; -} - -.datePickerSkeleton { - overflow: unset; -} diff --git a/examples/stripe-subscriptions/apps/web/src/pages/home/index.tsx b/examples/stripe-subscriptions/apps/web/src/pages/home/index.tsx deleted file mode 100644 index f8471a224..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/home/index.tsx +++ /dev/null @@ -1,179 +0,0 @@ -import React, { useCallback, useLayoutEffect, useState } from 'react'; -import { NextPage } from 'next'; -import Head from 'next/head'; -import { ActionIcon, Container, Group, Select, Skeleton, Stack, Text, TextInput, Title } from '@mantine/core'; -import { DatePickerInput, DatesRangeValue, DateValue } from '@mantine/dates'; -import { useDebouncedValue, useInputState } from '@mantine/hooks'; -import { IconSearch, IconSelector, IconX } from '@tabler/icons-react'; -import { RowSelectionState, SortingState } from '@tanstack/react-table'; - -import { userApi } from 'resources/user'; - -import { Table } from 'components'; - -import { ListParams, SortOrder } from 'types'; - -import { columns, PER_PAGE, selectOptions } from './constants'; - -import classes from './index.module.css'; - -type FilterParams = { - createdOn?: { - startDate: DateValue; - endDate: DateValue; - }; -}; - -type SortParams = { - createdOn?: SortOrder; -}; - -type UsersListParams = ListParams; - -const Home: NextPage = () => { - const [search, setSearch] = useInputState(''); - const [rowSelection, setRowSelection] = useState({}); - const [sorting, setSorting] = useState([]); - const [sortBy, setSortBy] = useState(selectOptions[0].value); - const [filterDate, setFilterDate] = useState(); - - const [params, setParams] = useState({}); - - const [debouncedSearch] = useDebouncedValue(search, 500); - const handleSort = useCallback((value: string | null) => { - setSortBy(value); - setParams((prev) => ({ - ...prev, - sort: value === 'newest' ? { createdOn: 'desc' } : { createdOn: 'asc' }, - })); - }, []); - - const handleFilter = useCallback(([startDate, endDate]: DatesRangeValue) => { - setFilterDate([startDate, endDate]); - - if (!startDate) { - setParams((prev) => ({ - ...prev, - filter: {}, - })); - } - - if (endDate) { - setParams((prev) => ({ - ...prev, - filter: { createdOn: { startDate, endDate } }, - })); - } - }, []); - - useLayoutEffect(() => { - setParams((prev) => ({ ...prev, page: 1, searchValue: debouncedSearch, perPage: PER_PAGE })); - }, [debouncedSearch]); - - const { data: users, isLoading: isUserListLoading } = userApi.useList(params); - - return ( - <> - - Home - - - - Users - - - - - } - rightSection={ - search && ( - setSearch('')}> - - - ) - } - /> - - - -
- ) : ( - - - No results found, try to adjust your search. - - - )} - - - ); -}; - -export default Home; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/index.page.tsx b/examples/stripe-subscriptions/apps/web/src/pages/index.page.tsx deleted file mode 100644 index f43a82a81..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/index.page.tsx +++ /dev/null @@ -1,3 +0,0 @@ -import Home from 'pages/home'; - -export default Home; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/profile/components/PhotoUpload/index.module.css b/examples/stripe-subscriptions/apps/web/src/pages/profile/components/PhotoUpload/index.module.css deleted file mode 100644 index 9ec547a85..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/profile/components/PhotoUpload/index.module.css +++ /dev/null @@ -1,72 +0,0 @@ -.dropzoneRoot { - border: none; - border-radius: 0; - padding: 0; - background-color: transparent; - - &:hover .addIcon { - color: var(--mantine-color-gray-5); - } - - &:hover .browseButton { - border: 1px dashed var(--mantine-color-gray-5); - } - - &:hover .innerAvatar { - opacity: 1; - } -} - -.browseButton { - width: 88px; - height: 88px; - border-radius: 50%; - border: 1px dashed var(--mantine-primary-color-filled); - display: flex; - justify-content: center; - align-items: center; - transition: all 200ms ease-in-out; - cursor: pointer; -} - -.error { - border: 1px dashed var(--mantine-color-red-5); -} - -.addIcon { - color: var(--mantine-primary-color-filled); - transition: all 200ms ease-in-out; -} - -.innerAvatar { - border-radius: 50%; - - opacity: 0; - transition: all 300ms ease-in-out; -} - -.text { - width: 144px; - line-height: 24px; - color: var(--mantine-color-gray-6); - word-wrap: break-word; -} - -.buttonContainer { - display: flex; - align-items: center; -} - -.errorMessage { - margin-top: 4px; - font-size: 14px; - line-height: 17px; - color: var(--mantine-color-red-5); -} - -.avatar { - background-position: center; - background-size: cover; - background-repeat: no-repeat; - border-radius: 50%; -} diff --git a/examples/stripe-subscriptions/apps/web/src/pages/profile/components/PhotoUpload/index.tsx b/examples/stripe-subscriptions/apps/web/src/pages/profile/components/PhotoUpload/index.tsx deleted file mode 100644 index 4f0557f52..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/profile/components/PhotoUpload/index.tsx +++ /dev/null @@ -1,109 +0,0 @@ -import React, { memo, useState } from 'react'; -import { BackgroundImage, Button, Center, Group, Stack, Text } from '@mantine/core'; -import { Dropzone, FileWithPath } from '@mantine/dropzone'; -import { IconPencil, IconPlus } from '@tabler/icons-react'; -import cx from 'clsx'; - -import { accountApi } from 'resources/account'; - -import { handleError } from 'utils'; - -import classes from './index.module.css'; - -const ONE_MB_IN_BYTES = 1048576; - -const PhotoUpload = () => { - const [errorMessage, setErrorMessage] = useState(null); - - const { data: account } = accountApi.useGet(); - - const { mutate: uploadProfilePhoto } = accountApi.useUploadAvatar(); - const { mutate: removeProfilePhoto } = accountApi.useRemoveAvatar(); - - if (!account) return null; - - const isFileSizeCorrect = (file: FileWithPath) => { - if (file.size / ONE_MB_IN_BYTES > 2) { - setErrorMessage('Sorry, you cannot upload a file larger than 2 MB.'); - return false; - } - return true; - }; - - const isFileFormatCorrect = (file: FileWithPath) => { - if (['image/png', 'image/jpg', 'image/jpeg'].includes(file.type)) return true; - setErrorMessage('Sorry, you can only upload JPG, JPEG or PNG photos.'); - return false; - }; - - const handlePhotoUpload = async ([imageFile]: FileWithPath[]) => { - setErrorMessage(null); - - if (isFileFormatCorrect(imageFile) && isFileSizeCorrect(imageFile) && imageFile) { - const body = new FormData(); - body.append('file', imageFile, imageFile.name); - - uploadProfilePhoto(body, { - onError: (err) => handleError(err), - }); - } - }; - - const handlerPhotoRemove = async () => { - setErrorMessage(null); - removeProfilePhoto(); - }; - - return ( - <> - - - - - - - - {account.avatarUrl && ( - - )} - - - - - Profile picture - - - JPG, JPEG or PNG Max size = 2MB - - - - {!!errorMessage &&

{errorMessage}

} - - ); -}; - -export default memo(PhotoUpload); diff --git a/examples/stripe-subscriptions/apps/web/src/pages/profile/index.page.tsx b/examples/stripe-subscriptions/apps/web/src/pages/profile/index.page.tsx deleted file mode 100644 index 69413d462..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/profile/index.page.tsx +++ /dev/null @@ -1,119 +0,0 @@ -import React, { NextPage } from 'next'; -import Head from 'next/head'; -import { Button, PasswordInput, Stack, TextInput, Title } from '@mantine/core'; -import { showNotification } from '@mantine/notifications'; -import { zodResolver } from '@hookform/resolvers/zod'; -import pickBy from 'lodash/pickBy'; -import { useForm } from 'react-hook-form'; -import { z } from 'zod'; - -import { accountApi } from 'resources/account'; - -import { handleError } from 'utils'; - -import queryClient from 'query-client'; - -import { PASSWORD_REGEX } from 'app-constants'; - -import PhotoUpload from './components/PhotoUpload'; - -const schema = z.object({ - firstName: z.string().trim().min(1, 'Please enter First name').max(100).optional(), - lastName: z.string().trim().min(1, 'Please enter Last name').max(100).optional(), - password: z - .string() - .regex( - PASSWORD_REGEX, - 'The password must contain 6 or more characters with at least one letter (a-z) and one number (0-9).', - ) - .optional(), -}); - -type UpdateParams = z.infer; - -const Profile: NextPage = () => { - const { data: account } = accountApi.useGet(); - - const { - register, - handleSubmit, - setError, - setValue, - reset, - formState: { errors, isDirty }, - } = useForm({ - resolver: zodResolver(schema), - defaultValues: { - firstName: account?.firstName, - lastName: account?.lastName, - password: '', - }, - }); - - const { mutate: updateAccount, isPending: isUpdatePending } = accountApi.useUpdate(); - - const onSubmit = (submitData: UpdateParams) => - updateAccount(pickBy(submitData), { - onSuccess: (data) => { - queryClient.setQueryData(['account'], data); - showNotification({ - title: 'Success', - message: 'Your profile has been successfully updated.', - color: 'green', - }); - - reset(data, { keepDirtyValues: true }); - setValue('password', ''); - }, - onError: (e) => handleError(e, setError), - }); - - return ( - <> - - Profile - - - - Profile - - - -
- - - - - - - - - - - - - - -
- - ); -}; - -export default Profile; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/reset-password/index.page.tsx b/examples/stripe-subscriptions/apps/web/src/pages/reset-password/index.page.tsx deleted file mode 100644 index 72a011cf0..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/reset-password/index.page.tsx +++ /dev/null @@ -1,118 +0,0 @@ -import React, { useState } from 'react'; -import { NextPage } from 'next'; -import Head from 'next/head'; -import { useRouter } from 'next/router'; -import { Button, PasswordInput, Stack, Text, Title } from '@mantine/core'; -import { zodResolver } from '@hookform/resolvers/zod'; -import { useForm } from 'react-hook-form'; -import { z } from 'zod'; - -import { accountApi } from 'resources/account'; - -import { handleError } from 'utils'; - -import { RoutePath } from 'routes'; - -import { PASSWORD_REGEX } from 'app-constants'; -import { QueryParam } from 'types'; - -const schema = z.object({ - password: z - .string() - .regex( - PASSWORD_REGEX, - 'The password must contain 6 or more characters with at least one letter (a-z) and one number (0-9).', - ), -}); - -interface ResetPasswordParams extends z.infer { - token: QueryParam; -} - -const ResetPassword: NextPage = () => { - const [isSubmitted, setSubmitted] = useState(false); - const router = useRouter(); - - const { token } = router.query; - - const { - register, - handleSubmit, - formState: { errors }, - } = useForm>({ resolver: zodResolver(schema) }); - - const { mutate: resetPassword, isPending: isResetPasswordPending } = - accountApi.useResetPassword(); - - const onSubmit = ({ password }: Omit) => - resetPassword( - { - password, - token, - }, - { - onSuccess: () => setSubmitted(true), - onError: (e) => handleError(e), - }, - ); - - if (!token) { - return ( - - - Invalid token - - - Sorry, your token is invalid. - - ); - } - - if (isSubmitted) { - return ( - <> - - Reset Password - - - - Password has been updated - - Your password has been updated successfully. You can now use your new password to sign in. - - - - - ); - } - - return ( - <> - - Reset Password - - - - Reset Password - Please choose your new password - -
- - - - - - -
- - ); -}; - -export default ResetPassword; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/sign-in/index.page.tsx b/examples/stripe-subscriptions/apps/web/src/pages/sign-in/index.page.tsx deleted file mode 100644 index 4b984a014..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/sign-in/index.page.tsx +++ /dev/null @@ -1,108 +0,0 @@ -import React, { NextPage } from 'next'; -import Head from 'next/head'; -import Link from 'next/link'; -import { Alert, Anchor, Button, Group, PasswordInput, Stack, TextInput, Title } from '@mantine/core'; -import { zodResolver } from '@hookform/resolvers/zod'; -import { IconAlertCircle } from '@tabler/icons-react'; -import { useForm } from 'react-hook-form'; -import { z } from 'zod'; - -import { accountApi } from 'resources/account'; - -import { GoogleIcon } from 'public/icons'; - -import { handleError } from 'utils'; - -import { RoutePath } from 'routes'; -import config from 'config'; - -import { EMAIL_REGEX } from 'app-constants'; - -const schema = z.object({ - email: z.string().toLowerCase().regex(EMAIL_REGEX, 'Email format is incorrect.'), - password: z.string().min(1, 'Please enter password'), -}); - -type SignInParams = z.infer & { credentials?: string }; - -const SignIn: NextPage = () => { - const { - register, - handleSubmit, - formState: { errors }, - setError, - } = useForm({ resolver: zodResolver(schema) }); - - const { mutate: signIn, isPending: isSignInPending } = accountApi.useSignIn(); - - const onSubmit = (data: SignInParams) => - signIn(data, { - onError: (e) => handleError(e, setError), - }); - - return ( - <> - - Sign in - - - - - Sign In - -
- - - - - - {errors.credentials && ( - } color="red"> - {errors.credentials.message} - - )} - - - Forgot password? - - - - - -
- - - - - - Don’t have an account? - - Sign up - - - -
- - ); -}; - -export default SignIn; diff --git a/examples/stripe-subscriptions/apps/web/src/pages/sign-up/index.page.tsx b/examples/stripe-subscriptions/apps/web/src/pages/sign-up/index.page.tsx deleted file mode 100644 index 22c04dbcf..000000000 --- a/examples/stripe-subscriptions/apps/web/src/pages/sign-up/index.page.tsx +++ /dev/null @@ -1,218 +0,0 @@ -import React, { useEffect, useState } from 'react'; -import { NextPage } from 'next'; -import Head from 'next/head'; -import Link from 'next/link'; -import { - Anchor, - Button, - Checkbox, - Group, - PasswordInput, - SimpleGrid, - Stack, - Text, - TextInput, - Title, - Tooltip, -} from '@mantine/core'; -import { zodResolver } from '@hookform/resolvers/zod'; -import { useForm } from 'react-hook-form'; -import { z } from 'zod'; - -import { accountApi } from 'resources/account'; - -import { GoogleIcon } from 'public/icons'; - -import { handleError } from 'utils'; - -import { RoutePath } from 'routes'; -import config from 'config'; - -import { EMAIL_REGEX, PASSWORD_REGEX } from 'app-constants'; - -const schema = z.object({ - firstName: z.string().min(1, 'Please enter First name').max(100), - lastName: z.string().min(1, 'Please enter Last name').max(100), - email: z.string().toLowerCase().regex(EMAIL_REGEX, 'Email format is incorrect.'), - password: z - .string() - .regex( - PASSWORD_REGEX, - 'The password must contain 6 or more characters with at least one letter (a-z) and one number (0-9).', - ), -}); - -type SignUpParams = z.infer; - -type SignUpResponse = { signupToken?: string }; - -const passwordRules = [ - { - title: 'Be 6-50 characters', - done: false, - }, - { - title: 'Have at least one letter', - done: false, - }, - { - title: 'Have at least one number', - done: false, - }, -]; - -const SignUp: NextPage = () => { - const [email, setEmail] = useState(null); - const [signupToken, setSignupToken] = useState(null); - const [registered, setRegistered] = useState(false); - - const [passwordRulesData, setPasswordRulesData] = useState(passwordRules); - const [opened, setOpened] = useState(false); - - const { - register, - handleSubmit, - setError, - watch, - formState: { errors }, - } = useForm({ resolver: zodResolver(schema) }); - - const passwordValue = watch('password', '').trim(); - - useEffect(() => { - const updatedPasswordRulesData = [...passwordRules]; - - updatedPasswordRulesData[0].done = passwordValue.length >= 6 && passwordValue.length <= 50; - updatedPasswordRulesData[1].done = /[a-zA-Z]/.test(passwordValue); - updatedPasswordRulesData[2].done = /\d/.test(passwordValue); - - setPasswordRulesData(updatedPasswordRulesData); - }, [passwordValue]); - - const { mutate: signUp, isPending: isSignUpPending } = accountApi.useSignUp(); - - const onSubmit = (data: SignUpParams) => - signUp(data, { - onSuccess: (response: SignUpResponse) => { - if (response.signupToken) setSignupToken(response.signupToken); - - setRegistered(true); - setEmail(data.email); - }, - onError: (e) => handleError(e, setError), - }); - - const label = ( - - Password must: - - {passwordRulesData.map((ruleData) => ( - - ))} - - ); - - if (registered) { - return ( - <> - - Sign up - - - - Thanks! - - - Please follow the instructions from the email to complete a sign up process. We sent an email with a - confirmation link to {email} - - - {signupToken && ( - - You look like a cool developer. - - Verify email - - - )} - - - ); - } - - return ( - <> - - Sign up - - - - - Sign Up - -
- - - - - - - - - setOpened(true)} - onBlur={() => setOpened(false)} - error={errors.password?.message} - /> - - - - - -
- - - - - - Have an account? - - Sign In - - - -
- - ); -}; - -export default SignUp; diff --git a/examples/stripe-subscriptions/apps/web/src/query-client.ts b/examples/stripe-subscriptions/apps/web/src/query-client.ts deleted file mode 100644 index 21295b41f..000000000 --- a/examples/stripe-subscriptions/apps/web/src/query-client.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { keepPreviousData, QueryClient } from '@tanstack/react-query'; - -const queryClient = new QueryClient({ - defaultOptions: { - queries: { - refetchOnWindowFocus: false, - refetchOnReconnect: false, - retry: false, - placeholderData: keepPreviousData, - }, - }, -}); - -export default queryClient; diff --git a/examples/stripe-subscriptions/apps/web/src/resources/account/account.api.ts b/examples/stripe-subscriptions/apps/web/src/resources/account/account.api.ts deleted file mode 100644 index 07f3e6da8..000000000 --- a/examples/stripe-subscriptions/apps/web/src/resources/account/account.api.ts +++ /dev/null @@ -1,76 +0,0 @@ -import { useMutation, useQuery } from '@tanstack/react-query'; - -import { apiService } from 'services'; - -import queryClient from 'query-client'; - -import { User } from 'types'; - -export const useSignIn = () => - useMutation({ - mutationFn: (data: T) => apiService.post('/account/sign-in', data), - onSuccess: (data) => { - queryClient.setQueryData(['account'], data); - }, - }); - -export const useSignOut = () => - useMutation({ - mutationFn: () => apiService.post('/account/sign-out'), - onSuccess: () => { - queryClient.setQueryData(['account'], null); - }, - }); - -export const useSignUp = () => { - interface SignUpResponse { - signupToken: string; - } - - return useMutation({ - mutationFn: (data: T) => apiService.post('/account/sign-up', data), - }); -}; - -export const useForgotPassword = () => - useMutation({ - mutationFn: (data: T) => apiService.post('/account/forgot-password', data), - }); - -export const useResetPassword = () => - useMutation({ - mutationFn: (data: T) => apiService.put('/account/reset-password', data), - }); - -export const useResendEmail = () => - useMutation({ - mutationFn: (data: T) => apiService.post('/account/resend-email', data), - }); - -export const useGet = (options = {}) => - useQuery({ - queryKey: ['account'], - queryFn: () => apiService.get('/account'), - ...options, - }); - -export const useUpdate = () => - useMutation({ - mutationFn: (data: T) => apiService.put('/account', data), - }); - -export const useUploadAvatar = () => - useMutation({ - mutationFn: (data: T) => apiService.post('/account/avatar', data), - onSuccess: (data) => { - queryClient.setQueryData(['account'], data); - }, - }); - -export const useRemoveAvatar = () => - useMutation({ - mutationFn: () => apiService.delete('/account/avatar'), - onSuccess: (data) => { - queryClient.setQueryData(['account'], data); - }, - }); diff --git a/examples/stripe-subscriptions/apps/web/src/resources/account/index.ts b/examples/stripe-subscriptions/apps/web/src/resources/account/index.ts deleted file mode 100644 index 87a52962c..000000000 --- a/examples/stripe-subscriptions/apps/web/src/resources/account/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -import * as accountApi from './account.api'; - -export { accountApi }; diff --git a/examples/stripe-subscriptions/apps/web/src/resources/payment/index.ts b/examples/stripe-subscriptions/apps/web/src/resources/payment/index.ts deleted file mode 100644 index dbc98e2fe..000000000 --- a/examples/stripe-subscriptions/apps/web/src/resources/payment/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -import * as paymentApi from './payment.api'; - -export { paymentApi }; diff --git a/examples/stripe-subscriptions/apps/web/src/resources/payment/payment.api.ts b/examples/stripe-subscriptions/apps/web/src/resources/payment/payment.api.ts deleted file mode 100644 index dd2b23d9c..000000000 --- a/examples/stripe-subscriptions/apps/web/src/resources/payment/payment.api.ts +++ /dev/null @@ -1,45 +0,0 @@ -import { useQuery } from '@tanstack/react-query'; -import { CustomerPaymentInformation, HistoryItem, StripePageDirections, StripePagination } from 'app-types'; - -import { apiService } from 'services'; - -import queryClient from 'query-client'; - -export const useGetPaymentInformation = () => - useQuery({ - queryKey: ['paymentInformation'], - queryFn: () => apiService.get('/payments/payment-information'), - }); - -export const useGetPaymentHistory = (params: StripePagination) => { - const { data: cursorIds } = useQuery | undefined>({ - queryKey: ['paymentHistoryCursorId'], - queryFn: () => queryClient.getQueryData(['paymentHistoryCursorId']) ?? {}, - }); - - const getPaymentHistory = () => - apiService.get('payments/get-history', { - ...params, - cursorId: params.direction === StripePageDirections.FORWARD ? cursorIds?.lastItemId : cursorIds?.firstItemId, - }); - - const { data, isFetching } = useQuery<{ - data: HistoryItem[]; - count: number; - totalPages: number; - hasMore: boolean; - firstItemId: string | null; - lastItemId: string | null; - }>({ - queryKey: ['paymentHistory', params], - queryFn: getPaymentHistory, - }); - - return { data, isFetching }; -}; - -export const useSetupPaymentIntent = () => - useQuery<{ clientSecret: string }>({ - queryKey: ['paymentIntent'], - queryFn: () => apiService.post('payments/create-setup-intent'), - }); diff --git a/examples/stripe-subscriptions/apps/web/src/resources/subscription/index.ts b/examples/stripe-subscriptions/apps/web/src/resources/subscription/index.ts deleted file mode 100644 index 36b1ae281..000000000 --- a/examples/stripe-subscriptions/apps/web/src/resources/subscription/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -import * as subscriptionApi from './subscription.api'; -import * as subscriptionConstants from './subscription.constants'; - -export { subscriptionApi, subscriptionConstants }; diff --git a/examples/stripe-subscriptions/apps/web/src/resources/subscription/subscription.api.ts b/examples/stripe-subscriptions/apps/web/src/resources/subscription/subscription.api.ts deleted file mode 100644 index b2dd5e1a1..000000000 --- a/examples/stripe-subscriptions/apps/web/src/resources/subscription/subscription.api.ts +++ /dev/null @@ -1,34 +0,0 @@ -import { useMutation, useQuery } from '@tanstack/react-query'; -import { Subscription } from 'app-types'; - -import { apiService } from 'services'; - -export const useGetDetails = () => - useQuery({ - queryKey: ['subscriptionDetails'], - queryFn: () => apiService.get('subscriptions/current'), - }); - -export const useSubscribe = () => - useMutation({ - mutationFn: (data: T) => apiService.post('subscriptions/subscribe', data), - onSuccess: (data) => { - window.location.href = data.checkoutLink; - }, - }); - -export const useCancelSubscription = () => - useMutation({ - mutationFn: (data: T) => apiService.post('subscriptions/cancel', data), - }); - -export const usePreviewUpgradeSubscription = (priceId: string) => - useQuery({ - queryKey: ['previewUpgrade', priceId], - queryFn: () => apiService.get('subscriptions/preview-upgrade', { priceId }), - }); - -export const useUpgradeSubscription = () => - useMutation({ - mutationFn: (data: T) => apiService.post('subscriptions/upgrade', data), - }); diff --git a/examples/stripe-subscriptions/apps/web/src/resources/subscription/subscription.constants.ts b/examples/stripe-subscriptions/apps/web/src/resources/subscription/subscription.constants.ts deleted file mode 100644 index a1d36eb91..000000000 --- a/examples/stripe-subscriptions/apps/web/src/resources/subscription/subscription.constants.ts +++ /dev/null @@ -1,48 +0,0 @@ -import { Intervals } from 'app-types'; - -import config from 'config'; - -export const items = [ - { - priceId: { - month: 'price_0', - year: 'price_0', - }, - title: 'Basic', - price: { - [Intervals.MONTH]: 0, - [Intervals.YEAR]: 0, - }, - features: ['Onboarding', 'Unlimited Growthflags', 'Unlimited A/B tests', 'Up to 3 product users', 'Up to 2K MAU'], - }, - { - priceId: { - month: config.SUBSCRIPTION_STARTER_MONTH, - year: config.SUBSCRIPTION_STARTER_YEAR, - }, - title: 'Starter', - price: { - [Intervals.MONTH]: 45, - [Intervals.YEAR]: 459, - }, - features: ['Onboarding', 'Unlimited Growthflags', 'Unlimited A/B tests', 'Up to 10 product users', 'Up to 10K MAU'], - }, - { - priceId: { - month: config.SUBSCRIPTION_PRO_MONTH, - year: config.SUBSCRIPTION_PRO_YEAR, - }, - title: 'Pro', - price: { - [Intervals.MONTH]: 99, - [Intervals.YEAR]: 1010, - }, - features: [ - 'Onboarding', - 'Unlimited Growthflags', - 'Unlimited A/B tests', - 'Unlimited product users', - 'Up to 100K MAU', - ], - }, -]; diff --git a/examples/stripe-subscriptions/apps/web/src/resources/user/index.ts b/examples/stripe-subscriptions/apps/web/src/resources/user/index.ts deleted file mode 100644 index b97bc72b1..000000000 --- a/examples/stripe-subscriptions/apps/web/src/resources/user/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -import * as userApi from './user.api'; - -export { userApi }; diff --git a/examples/stripe-subscriptions/apps/web/src/resources/user/user.api.ts b/examples/stripe-subscriptions/apps/web/src/resources/user/user.api.ts deleted file mode 100644 index fe63c67be..000000000 --- a/examples/stripe-subscriptions/apps/web/src/resources/user/user.api.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { useQuery } from '@tanstack/react-query'; - -import { apiService } from 'services'; - -import { ListResult, User } from 'types'; - -export const useList = (params: T) => - useQuery>({ - queryKey: ['users', params], - queryFn: () => apiService.get('/users', params), - }); diff --git a/examples/stripe-subscriptions/apps/web/src/resources/user/user.handlers.ts b/examples/stripe-subscriptions/apps/web/src/resources/user/user.handlers.ts deleted file mode 100644 index d677657b2..000000000 --- a/examples/stripe-subscriptions/apps/web/src/resources/user/user.handlers.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { apiService, socketService } from 'services'; - -import queryClient from 'query-client'; - -import { User } from 'types'; - -apiService.on('error', (error: any) => { - if (error.status === 401) { - queryClient.setQueryData(['account'], null); - } -}); - -socketService.on('connect', () => { - const account = queryClient.getQueryData(['account']) as User; - - socketService.emit('subscribe', `user-${account._id}`); -}); - -socketService.on('user:updated', (data: User) => { - queryClient.setQueryData(['account'], data); -}); diff --git a/examples/stripe-subscriptions/apps/web/src/routes.ts b/examples/stripe-subscriptions/apps/web/src/routes.ts deleted file mode 100644 index a57cecf3e..000000000 --- a/examples/stripe-subscriptions/apps/web/src/routes.ts +++ /dev/null @@ -1,72 +0,0 @@ -export enum ScopeType { - PUBLIC = 'PUBLIC', - PRIVATE = 'PRIVATE', -} - -export enum LayoutType { - MAIN = 'MAIN', - UNAUTHORIZED = 'UNAUTHORIZED', -} - -export enum RoutePath { - // Private paths - Home = '/', - Profile = '/profile', - AccountPlan = '/account-plan', - - // Auth paths - SignIn = '/sign-in', - SignUp = '/sign-up', - ForgotPassword = '/forgot-password', - ResetPassword = '/reset-password', - ExpireToken = '/expire-token', - - NotFound = '/404', -} - -type RoutesConfiguration = { - [routePath in RoutePath]: { - scope?: ScopeType; - layout?: LayoutType; - }; -}; - -export const routesConfiguration: RoutesConfiguration = { - // Private routes - [RoutePath.Home]: { - scope: ScopeType.PRIVATE, - layout: LayoutType.MAIN, - }, - [RoutePath.Profile]: { - scope: ScopeType.PRIVATE, - layout: LayoutType.MAIN, - }, - [RoutePath.AccountPlan]: { - scope: ScopeType.PRIVATE, - layout: LayoutType.MAIN, - }, - - // Auth routes - [RoutePath.SignIn]: { - scope: ScopeType.PUBLIC, - layout: LayoutType.UNAUTHORIZED, - }, - [RoutePath.SignUp]: { - scope: ScopeType.PUBLIC, - layout: LayoutType.UNAUTHORIZED, - }, - [RoutePath.ForgotPassword]: { - scope: ScopeType.PUBLIC, - layout: LayoutType.UNAUTHORIZED, - }, - [RoutePath.ResetPassword]: { - scope: ScopeType.PUBLIC, - layout: LayoutType.UNAUTHORIZED, - }, - [RoutePath.ExpireToken]: { - scope: ScopeType.PUBLIC, - layout: LayoutType.UNAUTHORIZED, - }, - - [RoutePath.NotFound]: {}, -}; diff --git a/examples/stripe-subscriptions/apps/web/src/services/analytics.service.ts b/examples/stripe-subscriptions/apps/web/src/services/analytics.service.ts deleted file mode 100644 index 433bc2c8a..000000000 --- a/examples/stripe-subscriptions/apps/web/src/services/analytics.service.ts +++ /dev/null @@ -1,28 +0,0 @@ -import mixpanel from 'mixpanel-browser'; - -import config from 'config'; - -import { User } from 'types'; - -export const init = () => { - mixpanel.init(config.MIXPANEL_API_KEY ?? '', { debug: config.IS_DEV }); -}; - -export const setUser = (user: User | undefined) => { - mixpanel.identify(user?._id); - - if (user) { - mixpanel.people.set({ - firstName: user.firstName, - lastName: user.lastName, - }); - } -}; - -export const track = (event: string, data = {}) => { - try { - mixpanel.track(event, data); - } catch (e) { - console.error(e); //eslint-disable-line - } -}; diff --git a/examples/stripe-subscriptions/apps/web/src/services/api.service.ts b/examples/stripe-subscriptions/apps/web/src/services/api.service.ts deleted file mode 100644 index 3604d537e..000000000 --- a/examples/stripe-subscriptions/apps/web/src/services/api.service.ts +++ /dev/null @@ -1,120 +0,0 @@ -// eslint-disable-next-line max-classes-per-file -import axios, { AxiosInstance, AxiosRequestConfig, AxiosResponse } from 'axios'; - -import config from 'config'; - -export class ApiError extends Error { - data: any; - - status: number; - - constructor(data: any, status = 500, statusText = 'Internal Server Error') { - super(`${status} ${statusText}`); - - this.constructor = ApiError; - - this.name = this.constructor.name; - this.data = data; - this.status = status; - - if (Error.captureStackTrace) { - Error.captureStackTrace(this, this.constructor); - } - } - - inspect() { - return this.stack; - } -} - -const throwApiError = ({ status, statusText, data }: any) => { - console.error(`API Error: ${status} ${statusText}`, data); //eslint-disable-line - throw new ApiError(data, status, statusText); -}; - -class ApiClient { - _api: AxiosInstance; - - _handlers: Map; - - constructor(axiosConfig: AxiosRequestConfig) { - this._handlers = new Map(); - - this._api = axios.create(axiosConfig); - this._api.interceptors.response.use( - (response: AxiosResponse) => response.data, - (error) => { - if (axios.isCancel(error)) { - // eslint-disable-next-line @typescript-eslint/no-throw-literal - throw error; - } - // Axios Network Error & Timeout error dont have 'response' field - // https://github.com/axios/axios/issues/383 - const errorResponse = error.response || { - status: error.code, - statusText: error.message, - data: error.data, - }; - - const errorHandlers = this._handlers.get('error') || []; - errorHandlers.forEach((handler: any) => { - handler(errorResponse); - }); - - return throwApiError(errorResponse); - }, - ); - } - - get(url: string, params: any = {}, requestConfig: AxiosRequestConfig = {}): Promise { - return this._api({ - method: 'get', - url, - params, - ...requestConfig, - }); - } - - post(url: string, data: any = {}, requestConfig: AxiosRequestConfig = {}): Promise { - return this._api({ - method: 'post', - url, - data, - ...requestConfig, - }); - } - - put(url: string, data: any = {}, requestConfig: AxiosRequestConfig = {}): Promise { - return this._api({ - method: 'put', - url, - data, - ...requestConfig, - }); - } - - delete(url: string, data: any = {}, requestConfig: AxiosRequestConfig = {}): Promise { - return this._api({ - method: 'delete', - url, - data, - ...requestConfig, - }); - } - - on(event: string, handler: (...args: any[]) => void) { - if (this._handlers.has(event)) { - this._handlers.get(event).add(handler); - } else { - this._handlers.set(event, new Set([handler])); - } - - return () => this._handlers.get(event).remove(handler); - } -} - -export default new ApiClient({ - baseURL: config.API_URL, - withCredentials: true, - responseType: 'json', -}); diff --git a/examples/stripe-subscriptions/apps/web/src/services/index.ts b/examples/stripe-subscriptions/apps/web/src/services/index.ts deleted file mode 100644 index 0d9cd3acc..000000000 --- a/examples/stripe-subscriptions/apps/web/src/services/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -import * as analyticsService from './analytics.service'; -import apiService from './api.service'; -import * as socketService from './socket.service'; - -export { analyticsService, apiService, socketService }; diff --git a/examples/stripe-subscriptions/apps/web/src/services/socket.service.ts b/examples/stripe-subscriptions/apps/web/src/services/socket.service.ts deleted file mode 100644 index 79e1ddf8f..000000000 --- a/examples/stripe-subscriptions/apps/web/src/services/socket.service.ts +++ /dev/null @@ -1,34 +0,0 @@ -import io from 'socket.io-client'; - -import config from 'config'; - -const socket = io(config.WS_URL, { - transports: ['websocket'], - autoConnect: false, -}); - -export const connect = async () => { - socket.open(); -}; - -export const disconnect = () => { - if (!socket.connected) return; - - socket.disconnect(); -}; - -export const emit = (event: string, ...args: any[]) => { - socket.emit(event, ...args); -}; - -export const on = (event: string, callback: (...args: any[]) => void) => { - socket.on(event, callback); -}; - -export const off = (event: string, callback: (...args: any[]) => void) => { - socket.off(event, callback); -}; - -export const connected = () => socket.connected; - -export const disconnected = () => socket.disconnected; diff --git a/examples/stripe-subscriptions/apps/web/src/theme/components/Button/index.module.css b/examples/stripe-subscriptions/apps/web/src/theme/components/Button/index.module.css deleted file mode 100644 index e21584119..000000000 --- a/examples/stripe-subscriptions/apps/web/src/theme/components/Button/index.module.css +++ /dev/null @@ -1,10 +0,0 @@ -.label { - font-weight: 500; -} - -.root { - &:disabled, - &[data-disabled] { - background-color: light-dark(var(--mantine-color-gray-3), var(--mantine-color-dark-4)); - } -} diff --git a/examples/stripe-subscriptions/apps/web/src/theme/components/Button/index.ts b/examples/stripe-subscriptions/apps/web/src/theme/components/Button/index.ts deleted file mode 100644 index 89152faeb..000000000 --- a/examples/stripe-subscriptions/apps/web/src/theme/components/Button/index.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { Button } from '@mantine/core'; - -import classes from './index.module.css'; - -export default Button.extend({ - defaultProps: { - size: 'lg', - }, - classNames: { - root: classes.root, - label: classes.label, - }, -}); diff --git a/examples/stripe-subscriptions/apps/web/src/theme/components/Image/index.module.css b/examples/stripe-subscriptions/apps/web/src/theme/components/Image/index.module.css deleted file mode 100644 index 3a2ba0c15..000000000 --- a/examples/stripe-subscriptions/apps/web/src/theme/components/Image/index.module.css +++ /dev/null @@ -1,3 +0,0 @@ -.root { - object-position: left; -} diff --git a/examples/stripe-subscriptions/apps/web/src/theme/components/Image/index.ts b/examples/stripe-subscriptions/apps/web/src/theme/components/Image/index.ts deleted file mode 100644 index 013f1d68e..000000000 --- a/examples/stripe-subscriptions/apps/web/src/theme/components/Image/index.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { Image } from '@mantine/core'; - -import classes from './index.module.css'; - -export default Image.extend({ - classNames: { - root: classes.root, - }, -}); diff --git a/examples/stripe-subscriptions/apps/web/src/theme/components/PasswordInput/index.module.css b/examples/stripe-subscriptions/apps/web/src/theme/components/PasswordInput/index.module.css deleted file mode 100644 index e4513e09d..000000000 --- a/examples/stripe-subscriptions/apps/web/src/theme/components/PasswordInput/index.module.css +++ /dev/null @@ -1,3 +0,0 @@ -.error { - color: var(--mantine-color-red-6); -} diff --git a/examples/stripe-subscriptions/apps/web/src/theme/components/PasswordInput/index.ts b/examples/stripe-subscriptions/apps/web/src/theme/components/PasswordInput/index.ts deleted file mode 100644 index 6f57b7345..000000000 --- a/examples/stripe-subscriptions/apps/web/src/theme/components/PasswordInput/index.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { PasswordInput } from '@mantine/core'; -import cx from 'clsx'; - -import classes from './index.module.css'; - -export default PasswordInput.extend({ - defaultProps: { - size: 'md', - }, - classNames: (_, props) => ({ - label: cx({ - [classes.error]: props.error, - }), - }), -}); diff --git a/examples/stripe-subscriptions/apps/web/src/theme/components/Select/index.ts b/examples/stripe-subscriptions/apps/web/src/theme/components/Select/index.ts deleted file mode 100644 index e9e0630e6..000000000 --- a/examples/stripe-subscriptions/apps/web/src/theme/components/Select/index.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { Select } from '@mantine/core'; - -export default Select.extend({ - defaultProps: { - size: 'md', - }, -}); diff --git a/examples/stripe-subscriptions/apps/web/src/theme/components/TextInput/index.module.css b/examples/stripe-subscriptions/apps/web/src/theme/components/TextInput/index.module.css deleted file mode 100644 index e4513e09d..000000000 --- a/examples/stripe-subscriptions/apps/web/src/theme/components/TextInput/index.module.css +++ /dev/null @@ -1,3 +0,0 @@ -.error { - color: var(--mantine-color-red-6); -} diff --git a/examples/stripe-subscriptions/apps/web/src/theme/components/TextInput/index.ts b/examples/stripe-subscriptions/apps/web/src/theme/components/TextInput/index.ts deleted file mode 100644 index 2495f49a8..000000000 --- a/examples/stripe-subscriptions/apps/web/src/theme/components/TextInput/index.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { TextInput } from '@mantine/core'; -import cx from 'clsx'; - -import classes from './index.module.css'; - -export default TextInput.extend({ - defaultProps: { - size: 'md', - }, - classNames: (_, props) => ({ - label: cx({ - [classes.error]: props.error, - }), - }), -}); diff --git a/examples/stripe-subscriptions/apps/web/src/theme/components/index.ts b/examples/stripe-subscriptions/apps/web/src/theme/components/index.ts deleted file mode 100644 index 186930b76..000000000 --- a/examples/stripe-subscriptions/apps/web/src/theme/components/index.ts +++ /dev/null @@ -1,5 +0,0 @@ -export { default as Button } from './Button'; -export { default as Image } from './Image'; -export { default as PasswordInput } from './PasswordInput'; -export { default as Select } from './Select'; -export { default as TextInput } from './TextInput'; diff --git a/examples/stripe-subscriptions/apps/web/src/theme/index.ts b/examples/stripe-subscriptions/apps/web/src/theme/index.ts deleted file mode 100644 index b2a40b0b8..000000000 --- a/examples/stripe-subscriptions/apps/web/src/theme/index.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { Inter } from 'next/font/google'; -import { createTheme, DEFAULT_THEME } from '@mantine/core'; - -import * as components from './components'; - -const inter = Inter({ subsets: ['latin'] }); - -const theme = createTheme({ - fontFamily: inter.style.fontFamily, - fontFamilyMonospace: 'Monaco, Courier, monospace', - headings: { - fontFamily: `${inter.style.fontFamily}, ${DEFAULT_THEME.fontFamily}`, - fontWeight: '600', - }, - primaryColor: 'blue', - primaryShade: 6, - components, -}); - -export default theme; diff --git a/examples/stripe-subscriptions/apps/web/src/types.ts b/examples/stripe-subscriptions/apps/web/src/types.ts deleted file mode 100644 index 96e1c4bd9..000000000 --- a/examples/stripe-subscriptions/apps/web/src/types.ts +++ /dev/null @@ -1,23 +0,0 @@ -export * from 'app-types'; - -export type QueryParam = string | string[] | undefined; - -export type ListResult = { - results: T[]; - pagesCount: number; - count: number; -}; - -export type SortOrder = 'asc' | 'desc'; - -export type SortParams = { - [P in keyof F]?: SortOrder; -}; - -export type ListParams = { - page?: number; - perPage?: number; - searchValue?: string; - filter?: T; - sort?: SortParams; -}; diff --git a/examples/stripe-subscriptions/apps/web/src/utils/config.util.ts b/examples/stripe-subscriptions/apps/web/src/utils/config.util.ts deleted file mode 100644 index 5dc066032..000000000 --- a/examples/stripe-subscriptions/apps/web/src/utils/config.util.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { ZodSchema } from 'zod'; - -export const validateConfig = (schema: ZodSchema, processEnv: Record): T => { - const parsed = schema.safeParse(processEnv); - - if (!parsed.success) { - // eslint-disable-next-line no-console - console.error('❌ Invalid environment variables:', parsed.error.flatten().fieldErrors); - - throw new Error(`Invalid environment variables ${JSON.stringify(parsed.error.flatten().fieldErrors)}`); - } - - return parsed.data; -}; diff --git a/examples/stripe-subscriptions/apps/web/src/utils/handle-error.util.ts b/examples/stripe-subscriptions/apps/web/src/utils/handle-error.util.ts deleted file mode 100644 index 770ab9644..000000000 --- a/examples/stripe-subscriptions/apps/web/src/utils/handle-error.util.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { showNotification } from '@mantine/notifications'; -import { UseFormSetError } from 'react-hook-form'; - -export default function handleError(e: any, setError?: UseFormSetError) { - const { - errors: { global, ...errors }, - } = e.data; - - if (global) { - showNotification({ - title: 'Error', - message: global, - color: 'red', - }); - } - - if (setError) { - Object.keys(errors).forEach((key) => { - const message = errors[key].join(' '); - - setError(key, { message }, { shouldFocus: true }); - }); - } -} diff --git a/examples/stripe-subscriptions/apps/web/src/utils/index.ts b/examples/stripe-subscriptions/apps/web/src/utils/index.ts deleted file mode 100644 index 3373a7da8..000000000 --- a/examples/stripe-subscriptions/apps/web/src/utils/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -import * as configUtil from './config.util'; -import handleError from './handle-error.util'; - -export { configUtil, handleError }; diff --git a/examples/stripe-subscriptions/apps/web/tsconfig.json b/examples/stripe-subscriptions/apps/web/tsconfig.json deleted file mode 100644 index 1fd32d052..000000000 --- a/examples/stripe-subscriptions/apps/web/tsconfig.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "extends": "tsconfig/nextjs.json", - "compilerOptions": { - "rootDir": ".", - "baseUrl": "src" - }, - "include": [ - "**/*.ts", - "**/*.tsx", - "**/*.json", - ".next/types/**/*.ts", - "next-env.d.ts", - "next.config.js", - "postcss.config.js" - ] -} diff --git a/examples/stripe-subscriptions/bin/constants.sh b/examples/stripe-subscriptions/bin/constants.sh deleted file mode 100644 index f1d6c564e..000000000 --- a/examples/stripe-subscriptions/bin/constants.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/bash - -readonly REPLICATION_SUCCESS_MESSAGE="Replication managed successfully" diff --git a/examples/stripe-subscriptions/bin/run-all.sh b/examples/stripe-subscriptions/bin/run-all.sh deleted file mode 100755 index 3f88b8680..000000000 --- a/examples/stripe-subscriptions/bin/run-all.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/sh - -source bin/constants.sh - -npm run infra | -while read line; -do - if [[ ${line} =~ "$REPLICATION_SUCCESS_MESSAGE" ]] - then - echo $line - npm run turbo-start & - else echo $line - fi; -done diff --git a/examples/stripe-subscriptions/bin/setup.sh b/examples/stripe-subscriptions/bin/setup.sh deleted file mode 100755 index 853a96b7f..000000000 --- a/examples/stripe-subscriptions/bin/setup.sh +++ /dev/null @@ -1,46 +0,0 @@ -#!/usr/bin/env bash -set -e - -source ./constants.sh - -handle_replication() { - local authArgs="" - if [[ $USERNAME ]]; then - authArgs="--authenticationDatabase admin -u $USERNAME -p $PASSWORD" - fi - - mongosh "$HOST:$PORT" $authArgs --quiet --eval "$1" -} - -command="rs.initiate({ _id: '$REPLICA_SET_NAME', members: [{ _id: 0, host: '$HOST:$PORT' }]})" -checkCommand="rs.status()" - -for i in $(seq 1 20); do - if [[ $i -eq 20 ]]; then - echo "Replication failed" - exit 1 - fi - - echo "Replication attempt ($i)" - - # Check if the replica set is already initialized - if handle_replication "$checkCommand" > /dev/null; then - echo "Replica set already initialized" - echo "$REPLICATION_SUCCESS_MESSAGE" - exit 0 - fi - - # Try to initiate the replica set - if handle_replication "$command" > /dev/null; then - break - fi - - sleep 2 -done - -echo "Replication done" -echo "$REPLICATION_SUCCESS_MESSAGE" - -[[ $IMMORTAL ]] && while true; do sleep 1; done - -exit 0 diff --git a/examples/stripe-subscriptions/bin/start.sh b/examples/stripe-subscriptions/bin/start.sh deleted file mode 100755 index f7e21153e..000000000 --- a/examples/stripe-subscriptions/bin/start.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/sh - -KEYFILE_DIR=".dev/mongo/config" -KEYFILE="$KEYFILE_DIR/keyfile" - -if [ ! -f "$KEYFILE" ]; then - echo "MongoDB keyfile does not exist. Generating now..." - - mkdir -p "$KEYFILE_DIR" - - openssl rand -base64 756 > "$KEYFILE" - chmod 400 "$KEYFILE" - - echo "MongoDB keyfile generated." -fi - -API_ENV_FILE="apps/api/.env" -if ! grep -q "^JWT_SECRET=" "$API_ENV_FILE"; then - echo "JWT_SECRET does not exist in $API_ENV_FILE. Generating now..." - - JWT_SECRET=$(openssl rand -hex 32) - - echo "JWT_SECRET=$JWT_SECRET" >> "$API_ENV_FILE" - - echo "JWT_SECRET generated and saved to $API_ENV_FILE." -fi - -export DOCKER_CLIENT_TIMEOUT=600 -export COMPOSE_HTTP_TIMEOUT=600 -Green='\033[0;32m' -Color_Off='\033[0m' - -echo 'You can start services independently' - -printf "${Green}./bin/start.sh api migrator scheduler web mailer" -printf "${Color_Off}\n" - -docker-compose up --build "$@" diff --git a/examples/stripe-subscriptions/docker-compose.yml b/examples/stripe-subscriptions/docker-compose.yml deleted file mode 100644 index 2a557e87c..000000000 --- a/examples/stripe-subscriptions/docker-compose.yml +++ /dev/null @@ -1,150 +0,0 @@ -version: '3.6' -services: - mongo: - container_name: stripe-subscriptions-mongo - image: mongo:6.0 - entrypoint: - - bash - - -c - - | - exec docker-entrypoint.sh $$@ - command: mongod --replSet rs --bind_ip_all --keyFile config/keyfile --quiet --logpath /dev/null - environment: - - MONGO_INITDB_ROOT_USERNAME=root - - MONGO_INITDB_ROOT_PASSWORD=root - networks: - - stripe-subscriptions - ports: - - 27017:27017 - volumes: - - /var/run/docker.sock:/var/run/docker.sock - - .dev/mongo/config/keyfile:/config/keyfile - - type: volume - source: mongodb - target: /data/db - - type: volume - source: mongodb-cfg - target: /data/configdb - # mongo-replicator creates a replica set for transaction support - mongo-replicator: - container_name: stripe-subscriptions-mongo-replicator - image: mongo:6.0 - entrypoint: - - bash - - -c - - | - cd /scripts - chmod +x /setup.sh - bash /setup.sh - volumes: - - ./bin/setup.sh:/setup.sh - - ./bin:/scripts - environment: - - HOST=mongo - - PORT=27017 - - USERNAME=root - - PASSWORD=root - - REPLICA_SET_NAME=rs - networks: - - stripe-subscriptions - depends_on: - - mongo - redis: - container_name: stripe-subscriptions-redis - image: redis:5.0.5 - command: redis-server --appendonly yes - hostname: redis - networks: - - stripe-subscriptions - ports: - - 6379:6379 - api: - container_name: stripe-subscriptions-api - build: - context: . - dockerfile: ./apps/api/Dockerfile - target: development - args: - NODE_ENV: development - APP_ENV: development - networks: - - stripe-subscriptions - volumes: - - ./apps/api/src:/app/apps/api/src - - mailer-volume:/app/packages/mailer - ports: - - 3001:3001 - depends_on: - - redis - - mongo-replicator - migrator: - container_name: stripe-subscriptions-migrator - build: - context: . - dockerfile: ./apps/api/Dockerfile.migrator - target: development - args: - NODE_ENV: development - APP_ENV: development - networks: - - stripe-subscriptions - volumes: - - ./apps/api/src:/app/apps/api/src - depends_on: - - mongo-replicator - scheduler: - container_name: stripe-subscriptions-scheduler - build: - context: . - dockerfile: ./apps/api/Dockerfile.scheduler - target: development - args: - NODE_ENV: development - APP_ENV: development - networks: - - stripe-subscriptions - volumes: - - ./apps/api/src:/app/apps/api/src - depends_on: - - mongo-replicator - web: - container_name: stripe-subscriptions-web - build: - context: . - dockerfile: ./apps/web/Dockerfile - target: development - args: - NODE_ENV: development - APP_ENV: development - volumes: - - ./apps/web/src:/app/apps/web/src - - ./apps/web/public:/app/apps/web/public - networks: - - stripe-subscriptions - ports: - - 3002:3002 - mailer: - container_name: stripe-subscriptions-mailer - build: - context: . - dockerfile: ./packages/mailer/Dockerfile - target: development - args: - NODE_ENV: development - APP_ENV: development - volumes: - - mailer-volume:/app/packages/mailer/dist - - ./packages/mailer/emails:/app/packages/mailer/emails - - ./packages/mailer/src:/app/packages/mailer/src - networks: - - stripe-subscriptions - ports: - - 3003:3003 -networks: - stripe-subscriptions: - name: stripe-subscriptions-network - -volumes: - mongodb: - mongodb-cfg: - mailer-volume: diff --git a/examples/stripe-subscriptions/package.json b/examples/stripe-subscriptions/package.json deleted file mode 100644 index 488c6ce81..000000000 --- a/examples/stripe-subscriptions/package.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "name": "ship", - "scripts": { - "infra": "bash ./bin/start.sh mongo redis mongo-replicator", - "turbo-start": "turbo run development", - "docker": "bash ./bin/start.sh", - "start": "bash ./bin/run-all.sh", - "prepare": "husky" - }, - "devDependencies": { - "husky": "9.0.11", - "react": "18.2.0", - "react-dom": "18.2.0", - "turbo": "1.11.1" - }, - "optionalDependencies": { - "turbo-darwin-64": "1.11.1", - "turbo-darwin-arm64": "1.11.1", - "turbo-linux-64": "1.11.1", - "turbo-linux-arm64": "1.11.1", - "turbo-windows-64": "1.11.1", - "turbo-windows-arm64": "1.11.1" - }, - "engines": { - "node": ">= 20.11.1", - "yarn": "please-use-pnpm", - "pnpm": ">= 9.5.0" - } -} diff --git a/examples/stripe-subscriptions/packages/app-constants/.eslintignore b/examples/stripe-subscriptions/packages/app-constants/.eslintignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/packages/app-constants/.eslintignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/packages/app-constants/.eslintrc.js b/examples/stripe-subscriptions/packages/app-constants/.eslintrc.js deleted file mode 100644 index 0ce0e0dce..000000000 --- a/examples/stripe-subscriptions/packages/app-constants/.eslintrc.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = { - root: true, - extends: ['custom/node'], -}; diff --git a/examples/stripe-subscriptions/packages/app-constants/.gitignore b/examples/stripe-subscriptions/packages/app-constants/.gitignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/packages/app-constants/.gitignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/packages/app-constants/.prettierignore b/examples/stripe-subscriptions/packages/app-constants/.prettierignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/packages/app-constants/.prettierignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/packages/app-constants/.prettierrc.json b/examples/stripe-subscriptions/packages/app-constants/.prettierrc.json deleted file mode 100644 index ba63a7c68..000000000 --- a/examples/stripe-subscriptions/packages/app-constants/.prettierrc.json +++ /dev/null @@ -1 +0,0 @@ -"prettier-config-custom" diff --git a/examples/stripe-subscriptions/packages/app-constants/package.json b/examples/stripe-subscriptions/packages/app-constants/package.json deleted file mode 100644 index 00be1ba2c..000000000 --- a/examples/stripe-subscriptions/packages/app-constants/package.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "name": "app-constants", - "version": "0.0.0", - "main": "./src/index.ts", - "types": "./src/index.ts", - "scripts": { - "test:tsc": "tsc --noEmit", - "test:eslint": "eslint \"**/*.ts\" --fix", - "precommit": "lint-staged" - }, - "devDependencies": { - "@types/node": "*", - "eslint": "*", - "eslint-config-custom": "workspace:*", - "lint-staged": "*", - "prettier": "*", - "prettier-config-custom": "workspace:*", - "tsconfig": "workspace:*", - "typescript": "*" - }, - "lint-staged": { - "*.ts": [ - "eslint --fix" - ] - } -} diff --git a/examples/stripe-subscriptions/packages/app-constants/src/api.constants.ts b/examples/stripe-subscriptions/packages/app-constants/src/api.constants.ts deleted file mode 100644 index 5985796ba..000000000 --- a/examples/stripe-subscriptions/packages/app-constants/src/api.constants.ts +++ /dev/null @@ -1,11 +0,0 @@ -export const DATABASE_DOCUMENTS = { - USERS: 'users', - TOKENS: 'tokens', -}; - -export const COOKIES = { - ACCESS_TOKEN: 'access_token', -}; - -export const TOKEN_SECURITY_LENGTH = 32; -export const TOKEN_SECURITY_EXPIRES_IN = 60 * 24 * 60 * 60; // 60 days diff --git a/examples/stripe-subscriptions/packages/app-constants/src/index.ts b/examples/stripe-subscriptions/packages/app-constants/src/index.ts deleted file mode 100644 index 02a63c027..000000000 --- a/examples/stripe-subscriptions/packages/app-constants/src/index.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from './api.constants'; -export * from './regex.constants'; diff --git a/examples/stripe-subscriptions/packages/app-constants/src/regex.constants.ts b/examples/stripe-subscriptions/packages/app-constants/src/regex.constants.ts deleted file mode 100644 index ae5c286fb..000000000 --- a/examples/stripe-subscriptions/packages/app-constants/src/regex.constants.ts +++ /dev/null @@ -1,2 +0,0 @@ -export const EMAIL_REGEX = /^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9-]+(?:\.[a-z0-9-]+)*$/; -export const PASSWORD_REGEX = /^(?=\S)(?=.*[a-zA-Z])(?=.*\d)[a-zA-Z\d\W]{6,}\S$/g; diff --git a/examples/stripe-subscriptions/packages/app-constants/tsconfig.json b/examples/stripe-subscriptions/packages/app-constants/tsconfig.json deleted file mode 100644 index d7247ab82..000000000 --- a/examples/stripe-subscriptions/packages/app-constants/tsconfig.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "tsconfig/nodejs.json", - "compilerOptions": { - "rootDir": ".", - "baseUrl": "src" - }, - "include": ["**/*.ts", "**/*.json"] -} diff --git a/examples/stripe-subscriptions/packages/app-types/.eslintignore b/examples/stripe-subscriptions/packages/app-types/.eslintignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/packages/app-types/.eslintignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/packages/app-types/.eslintrc.js b/examples/stripe-subscriptions/packages/app-types/.eslintrc.js deleted file mode 100644 index 0ce0e0dce..000000000 --- a/examples/stripe-subscriptions/packages/app-types/.eslintrc.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = { - root: true, - extends: ['custom/node'], -}; diff --git a/examples/stripe-subscriptions/packages/app-types/.gitignore b/examples/stripe-subscriptions/packages/app-types/.gitignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/packages/app-types/.gitignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/packages/app-types/.prettierignore b/examples/stripe-subscriptions/packages/app-types/.prettierignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/packages/app-types/.prettierignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/packages/app-types/.prettierrc.json b/examples/stripe-subscriptions/packages/app-types/.prettierrc.json deleted file mode 100644 index ba63a7c68..000000000 --- a/examples/stripe-subscriptions/packages/app-types/.prettierrc.json +++ /dev/null @@ -1 +0,0 @@ -"prettier-config-custom" diff --git a/examples/stripe-subscriptions/packages/app-types/package.json b/examples/stripe-subscriptions/packages/app-types/package.json deleted file mode 100644 index c10e3d39f..000000000 --- a/examples/stripe-subscriptions/packages/app-types/package.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "name": "app-types", - "version": "0.0.0", - "main": "./src/index.ts", - "types": "./src/index.ts", - "scripts": { - "test:tsc": "tsc --noEmit", - "test:eslint": "eslint \"**/*.ts\" --fix", - "precommit": "lint-staged" - }, - "dependencies": { - "enums": "workspace:*", - "mailer": "workspace:*", - "schemas": "workspace:*", - "zod": "*" - }, - "devDependencies": { - "@types/node": "*", - "eslint": "*", - "eslint-config-custom": "workspace:*", - "lint-staged": "*", - "prettier": "*", - "prettier-config-custom": "workspace:*", - "tsconfig": "workspace:*", - "typescript": "*" - }, - "lint-staged": { - "*.ts": [ - "eslint --fix" - ] - } -} diff --git a/examples/stripe-subscriptions/packages/app-types/src/common.types.ts b/examples/stripe-subscriptions/packages/app-types/src/common.types.ts deleted file mode 100644 index 1d29f762a..000000000 --- a/examples/stripe-subscriptions/packages/app-types/src/common.types.ts +++ /dev/null @@ -1,21 +0,0 @@ -type Path = T extends object - ? { - [K in keyof T]: K extends string - ? T[K] extends (...args: never[]) => unknown - ? never - : `${K}` | (Path extends infer R ? (R extends never ? never : `${K}.${R & string}`) : never) - : never; - }[keyof T] - : never; - -export type NestedKeys = Path>; - -type CamelCase = S extends `${infer P1}_${infer P2}${infer P3}` - ? `${Lowercase}${Uppercase}${CamelCase}` - : S extends `${infer P1}${infer P2}` - ? `${Lowercase}${CamelCase}` - : Lowercase; - -export type ToCamelCase = { - [K in keyof T as CamelCase]: T[K] extends object ? ToCamelCase : T[K]; -}; diff --git a/examples/stripe-subscriptions/packages/app-types/src/index.ts b/examples/stripe-subscriptions/packages/app-types/src/index.ts deleted file mode 100644 index 6b2cb1835..000000000 --- a/examples/stripe-subscriptions/packages/app-types/src/index.ts +++ /dev/null @@ -1,6 +0,0 @@ -export * from './common.types'; -export * from './payment.types'; -export * from './subscription.types'; -export * from './token.types'; -export * from './user.types'; -export * from 'enums'; diff --git a/examples/stripe-subscriptions/packages/app-types/src/payment.types.ts b/examples/stripe-subscriptions/packages/app-types/src/payment.types.ts deleted file mode 100644 index 8f5386c50..000000000 --- a/examples/stripe-subscriptions/packages/app-types/src/payment.types.ts +++ /dev/null @@ -1,48 +0,0 @@ -interface BillingDetails { - address: { - city: string | null; - country: string; - line1: string | null; - line2: string | null; - state: string | null; - }; - email: string; - name: string; - phone: string | null; -} - -interface Card { - brand: string; - last4: string; -} - -export enum Status { - SUCCEEDED = 'succeeded', - PENDING = 'pending', - FAILED = 'failed', -} - -export enum StripePageDirections { - BACK = 'back', - FORWARD = 'forward', -} - -export type StripePagination = { - page?: number; - perPage?: number; - direction?: StripePageDirections; -}; - -export interface CustomerPaymentInformation { - balance: number; - billingDetails: BillingDetails; - card: Card; -} - -export interface HistoryItem { - id: string; - description: string; - amount: number; - status: Status; - created: number; -} diff --git a/examples/stripe-subscriptions/packages/app-types/src/subscription.types.ts b/examples/stripe-subscriptions/packages/app-types/src/subscription.types.ts deleted file mode 100644 index dfb92861b..000000000 --- a/examples/stripe-subscriptions/packages/app-types/src/subscription.types.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { z } from 'zod'; - -import { subscriptionSchema } from 'schemas'; - -export enum Intervals { - MONTH = 'month', - YEAR = 'year', -} - -export type ItemType = { - priceId: Record; - title: string; - price: Record; - features: string[]; -}; - -export type Subscription = z.infer; diff --git a/examples/stripe-subscriptions/packages/app-types/src/token.types.ts b/examples/stripe-subscriptions/packages/app-types/src/token.types.ts deleted file mode 100644 index 287e4ffff..000000000 --- a/examples/stripe-subscriptions/packages/app-types/src/token.types.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { z } from 'zod'; - -import { tokenSchema } from 'schemas'; - -export type Token = z.infer; diff --git a/examples/stripe-subscriptions/packages/app-types/src/user.types.ts b/examples/stripe-subscriptions/packages/app-types/src/user.types.ts deleted file mode 100644 index 17ee17ad1..000000000 --- a/examples/stripe-subscriptions/packages/app-types/src/user.types.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { z } from 'zod'; - -import { userSchema } from 'schemas'; - -export type User = z.infer; diff --git a/examples/stripe-subscriptions/packages/app-types/tsconfig.json b/examples/stripe-subscriptions/packages/app-types/tsconfig.json deleted file mode 100644 index d7247ab82..000000000 --- a/examples/stripe-subscriptions/packages/app-types/tsconfig.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "tsconfig/nodejs.json", - "compilerOptions": { - "rootDir": ".", - "baseUrl": "src" - }, - "include": ["**/*.ts", "**/*.json"] -} diff --git a/examples/stripe-subscriptions/packages/enums/.eslintignore b/examples/stripe-subscriptions/packages/enums/.eslintignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/packages/enums/.eslintignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/packages/enums/.eslintrc.js b/examples/stripe-subscriptions/packages/enums/.eslintrc.js deleted file mode 100644 index 0ce0e0dce..000000000 --- a/examples/stripe-subscriptions/packages/enums/.eslintrc.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = { - root: true, - extends: ['custom/node'], -}; diff --git a/examples/stripe-subscriptions/packages/enums/.gitignore b/examples/stripe-subscriptions/packages/enums/.gitignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/packages/enums/.gitignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/packages/enums/.prettierignore b/examples/stripe-subscriptions/packages/enums/.prettierignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/packages/enums/.prettierignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/packages/enums/.prettierrc.json b/examples/stripe-subscriptions/packages/enums/.prettierrc.json deleted file mode 100644 index ba63a7c68..000000000 --- a/examples/stripe-subscriptions/packages/enums/.prettierrc.json +++ /dev/null @@ -1 +0,0 @@ -"prettier-config-custom" diff --git a/examples/stripe-subscriptions/packages/enums/package.json b/examples/stripe-subscriptions/packages/enums/package.json deleted file mode 100644 index 3c162dd6f..000000000 --- a/examples/stripe-subscriptions/packages/enums/package.json +++ /dev/null @@ -1,25 +0,0 @@ -{ - "name": "enums", - "version": "0.0.0", - "main": "./src/index.ts", - "types": "./src/index.ts", - "scripts": { - "ts-lint": "tsc --noEmit && eslint \"**/*.ts\" --quiet --fix", - "precommit": "lint-staged" - }, - "devDependencies": { - "@types/node": "*", - "eslint": "*", - "eslint-config-custom": "workspace:*", - "lint-staged": "*", - "prettier": "*", - "prettier-config-custom": "workspace:*", - "tsconfig": "workspace:*", - "typescript": "*" - }, - "lint-staged": { - "*.ts": [ - "eslint --fix" - ] - } -} diff --git a/examples/stripe-subscriptions/packages/enums/src/index.ts b/examples/stripe-subscriptions/packages/enums/src/index.ts deleted file mode 100644 index 3f5cca0de..000000000 --- a/examples/stripe-subscriptions/packages/enums/src/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './token.enum'; diff --git a/examples/stripe-subscriptions/packages/enums/src/token.enum.ts b/examples/stripe-subscriptions/packages/enums/src/token.enum.ts deleted file mode 100644 index c9a88f744..000000000 --- a/examples/stripe-subscriptions/packages/enums/src/token.enum.ts +++ /dev/null @@ -1,3 +0,0 @@ -export enum TokenType { - ACCESS = 'access', -} diff --git a/examples/stripe-subscriptions/packages/enums/tsconfig.json b/examples/stripe-subscriptions/packages/enums/tsconfig.json deleted file mode 100644 index d7247ab82..000000000 --- a/examples/stripe-subscriptions/packages/enums/tsconfig.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "tsconfig/nodejs.json", - "compilerOptions": { - "rootDir": ".", - "baseUrl": "src" - }, - "include": ["**/*.ts", "**/*.json"] -} diff --git a/examples/stripe-subscriptions/packages/eslint-config-custom/.gitignore b/examples/stripe-subscriptions/packages/eslint-config-custom/.gitignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/packages/eslint-config-custom/.gitignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/packages/eslint-config-custom/.prettierignore b/examples/stripe-subscriptions/packages/eslint-config-custom/.prettierignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/packages/eslint-config-custom/.prettierignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/packages/eslint-config-custom/.prettierrc.json b/examples/stripe-subscriptions/packages/eslint-config-custom/.prettierrc.json deleted file mode 100644 index ba63a7c68..000000000 --- a/examples/stripe-subscriptions/packages/eslint-config-custom/.prettierrc.json +++ /dev/null @@ -1 +0,0 @@ -"prettier-config-custom" diff --git a/examples/stripe-subscriptions/packages/eslint-config-custom/next.js b/examples/stripe-subscriptions/packages/eslint-config-custom/next.js deleted file mode 100644 index 53784ff59..000000000 --- a/examples/stripe-subscriptions/packages/eslint-config-custom/next.js +++ /dev/null @@ -1,89 +0,0 @@ -const nodejsConfig = require('./node'); - -module.exports = { - extends: ['next/core-web-vitals', 'plugin:react/recommended', './node.js'], - env: { - browser: true, - node: true, - }, - settings: { react: { version: 'detect' } }, - rules: { - 'react/prop-types': 'off', - 'react/require-default-props': 'off', - 'react/jsx-props-no-spreading': 'off', - 'react/jsx-filename-extension': [ - 'warn', - { - extensions: ['.tsx'], - }, - ], - - 'react-hooks/rules-of-hooks': 'error', - 'react-hooks/exhaustive-deps': 'warn', - - 'react/function-component-definition': [ - 'error', - { - namedComponents: 'arrow-function', - }, - ], - - // @TODO fix all 'any' types in web app - '@typescript-eslint/no-explicit-any': 'off', - - '@typescript-eslint/naming-convention': nodejsConfig.rules['@typescript-eslint/naming-convention'].map((rule) => { - // for React components - if (['variable', 'parameter', 'enumMember'].includes(rule.selector)) { - rule.format.push('PascalCase'); - } - - return rule; - }), - }, - overrides: [ - // Allow require() syntax in .config.js files - { - files: ['*.js'], - rules: { - '@typescript-eslint/no-var-requires': 'off', - }, - }, - // Config for simple-import-sort plugin - { - files: ['*.js', '*.jsx', '*.ts', '*.tsx'], - rules: { - 'simple-import-sort/imports': [ - 'error', - { - groups: [ - // Third-party libraries and frameworks - ['^react$', '^next', '^@mantine/core$', '^@mantine/', '^@?\\w'], - // Particular business entities - ['^resources'], - // Shared components under the web application - ['^components'], - // Static files - ['^public'], - // Internal app modules - ['^services', '^theme', '^utils'], - // Other app modules - [ - '^routes', // App pages structure - '^query-client', // React Query Client - '^config', - ], - // Internal packages - ['^app-constants', '^schemas', '^types'], - // Relative imports - ['^\\.\\.(?!/?$)', '^\\.\\./?$', '^\\./(?=.*/)(?!/?$)', '^\\.(?!/?$)', '^\\./?$'], - // Style imports. - ['^.+\\.?(css|scss|sass)$'], - // Side effect imports. - ['^\\u0000'], - ], - }, - ], - }, - }, - ], -}; diff --git a/examples/stripe-subscriptions/packages/eslint-config-custom/node.js b/examples/stripe-subscriptions/packages/eslint-config-custom/node.js deleted file mode 100644 index 4aa863257..000000000 --- a/examples/stripe-subscriptions/packages/eslint-config-custom/node.js +++ /dev/null @@ -1,152 +0,0 @@ -module.exports = { - parser: '@typescript-eslint/parser', - extends: ['eslint:recommended', 'plugin:@typescript-eslint/recommended', 'airbnb', 'airbnb-typescript', 'prettier'], - plugins: ['@typescript-eslint', 'import', 'simple-import-sort'], - ignorePatterns: ['.eslintrc.js'], - parserOptions: { - project: './tsconfig.json', - ecmaVersion: 14, - sourceType: 'module', - }, - env: { - node: true, - }, - rules: { - 'no-console': 'warn', - - // Too strict - 'no-param-reassign': 'off', - 'max-classes-per-file': 'off', - 'no-underscore-dangle': 'off', - - // @TODO fix in /apps/api/src/migrator/migration-version/migration-version.service.ts - 'import/no-dynamic-require': 'off', - 'global-require': 'off', - - // https://stackoverflow.com/a/64024916/286387 - 'no-use-before-define': 'off', - // Allow for..of syntax - 'no-restricted-syntax': ['error', 'ForInStatement', 'LabeledStatement', 'WithStatement'], - // https://basarat.gitbook.io/typescript/main-1/defaultisbad - 'import/prefer-default-export': 'off', - 'import/no-default-export': 'off', - 'import/no-anonymous-default-export': 'off', - // It's not accurate in the monorepo style - 'import/no-extraneous-dependencies': 'off', - 'import/extensions': 'off', - 'import/first': 'error', - 'import/newline-after-import': 'error', - 'import/no-duplicates': 'error', - 'simple-import-sort/imports': 'error', - 'simple-import-sort/exports': 'error', - - // Allow most functions to rely on type inference. If the function is exported, then `@typescript-eslint/explicit-module-boundary-types` will ensure it's typed. - '@typescript-eslint/explicit-function-return-type': 'off', - '@typescript-eslint/no-empty-function': 'off', - '@typescript-eslint/no-use-before-define': [ - 'error', - { - functions: false, - classes: true, - variables: true, - typedefs: true, - }, - ], - - '@typescript-eslint/naming-convention': [ - 'error', - { - selector: 'default', - format: ['camelCase'], - leadingUnderscore: 'allow', - }, - { - selector: 'variable', - format: [ - 'camelCase', - 'UPPER_CASE', // for constants - ], - leadingUnderscore: 'allow', - }, - { - selector: 'function', - format: ['camelCase'], - }, - { - selector: 'parameter', - format: ['camelCase'], - leadingUnderscore: 'allow', - }, - { - selector: 'typeLike', - format: ['PascalCase'], - }, - { - selector: 'objectLiteralProperty', - format: null, // to allow the use of a case that an external library uses - }, - { - selector: 'import', - format: null, // to allow the use of a case that an external library uses - }, - { - selector: 'typeProperty', - format: [ - 'camelCase', - 'UPPER_CASE', // for constants - ], - }, - { - selector: 'enumMember', - format: ['UPPER_CASE'], - }, - ], - - '@typescript-eslint/no-explicit-any': 'error', - - // Enable some rules for async JS - 'no-promise-executor-return': 'error', - 'max-nested-callbacks': 'error', - 'no-return-await': 'error', - }, - overrides: [ - { - files: ['*.js', '*.ts'], - rules: { - 'simple-import-sort/imports': [ - 'error', - { - groups: [ - // Allows requiring modules relative to /src folder - ['^module-alias'], - // App environment variables - ['^\\dotenv/config'], - // Third-party libraries and frameworks - ['^@?\\w'], - // Particular business entities - ['^resources'], - // Internal app modules - ['^middlewares', '^services', '^utils', '^routes'], - // Internal sub apps - ['^migrator', '^scheduler'], - // App config file - ['^config'], - // App core modules - ['^db', '^io-emitter', '^redis-client'], - // Logger instance - ['^logger'], - // Internal packages - ['^app-constants', '^schemas', '^types'], - // Relative imports - ['^\\.\\.(?!/?$)', '^\\.\\./?$', '^\\./(?=.*/)(?!/?$)', '^\\.(?!/?$)', '^\\./?$'], - // Style imports. - ['^.+\\.?(css|scss|sass)$'], - // Side effect imports. - ['^\\u0000'], - ], - }, - ], - }, - }, - ], -}; diff --git a/examples/stripe-subscriptions/packages/eslint-config-custom/package.json b/examples/stripe-subscriptions/packages/eslint-config-custom/package.json deleted file mode 100644 index cee29154e..000000000 --- a/examples/stripe-subscriptions/packages/eslint-config-custom/package.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "name": "eslint-config-custom", - "version": "0.0.0", - "private": true, - "devDependencies": { - "@typescript-eslint/eslint-plugin": "6.21.0", - "@typescript-eslint/parser": "6.21.0", - "eslint-config-airbnb": "19.0.4", - "eslint-config-airbnb-typescript": "17.1.0", - "eslint-config-next": "14.1.0", - "eslint-config-prettier": "9.1.0", - "eslint-plugin-import": "2.27.5", - "eslint-plugin-react": "7.28.0", - "eslint-plugin-simple-import-sort": "10.0.0", - "prettier-config-custom": "workspace:*" - } -} diff --git a/examples/stripe-subscriptions/packages/mailer/.eslintignore b/examples/stripe-subscriptions/packages/mailer/.eslintignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/packages/mailer/.eslintignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/packages/mailer/.eslintrc.js b/examples/stripe-subscriptions/packages/mailer/.eslintrc.js deleted file mode 100644 index edff7e224..000000000 --- a/examples/stripe-subscriptions/packages/mailer/.eslintrc.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = { - root: true, - extends: ['custom/next'], -}; diff --git a/examples/stripe-subscriptions/packages/mailer/.gitignore b/examples/stripe-subscriptions/packages/mailer/.gitignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/packages/mailer/.gitignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/packages/mailer/.prettierignore b/examples/stripe-subscriptions/packages/mailer/.prettierignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/packages/mailer/.prettierignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/packages/mailer/.prettierrc.json b/examples/stripe-subscriptions/packages/mailer/.prettierrc.json deleted file mode 100644 index ba63a7c68..000000000 --- a/examples/stripe-subscriptions/packages/mailer/.prettierrc.json +++ /dev/null @@ -1 +0,0 @@ -"prettier-config-custom" diff --git a/examples/stripe-subscriptions/packages/mailer/Dockerfile b/examples/stripe-subscriptions/packages/mailer/Dockerfile deleted file mode 100644 index a33d22847..000000000 --- a/examples/stripe-subscriptions/packages/mailer/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -# BUILDER - Stage 1 -FROM node:20-alpine AS builder -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund turbo@1.10.3 -COPY . . -RUN turbo prune --scope=mailer --docker - -# INSTALLER - Stage 2 -FROM node:20-alpine AS installer -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund pnpm@8.15.7 - -# First install the dependencies (as they change less often) -COPY --from=builder /app/out/pnpm-lock.yaml ./pnpm-lock.yaml -RUN pnpm fetch - -# Build the project and its dependencies -COPY --from=builder /app/out/pnpm-workspace.yaml ./pnpm-workspace.yaml -COPY --from=builder /app/out/full/ . -RUN pnpm install -r --prefer-offline --ignore-scripts -COPY --from=builder /app/out/full/turbo.json ./turbo.json - -# DEVELOPMENT - Stage 3 -FROM installer AS development -CMD pnpm turbo run dev --scope=mailer - -# RUNNER - Stage 4 -FROM node:18-alpine AS runner -WORKDIR /app -# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed. -RUN apk update && apk add --no-cache libc6-compat -RUN npm install --global --no-update-notifier --no-fund ts-node@10.9.1 - -# Don't run production as root -RUN addgroup --system --gid 1001 app -RUN adduser --system --uid 1001 app -USER app - -COPY --from=installer /app . - -EXPOSE 3003 - -CMD ["ts-node", "packages/mailer/src/index.ts"] diff --git a/examples/stripe-subscriptions/packages/mailer/README.md b/examples/stripe-subscriptions/packages/mailer/README.md deleted file mode 100644 index 056d1e5d4..000000000 --- a/examples/stripe-subscriptions/packages/mailer/README.md +++ /dev/null @@ -1,19 +0,0 @@ -# Mailer - -A live preview right in your browser, so you don't need to keep sending real emails during development. - -## Getting Started - -First, install the dependencies: - -```sh -pnpm install -``` - -Then, run the development server: - -```sh -pnpm run dev -``` - -Open [localhost:3003](http://localhost:3003) with your browser to see the result. diff --git a/examples/stripe-subscriptions/packages/mailer/emails/_components/body-footer.tsx b/examples/stripe-subscriptions/packages/mailer/emails/_components/body-footer.tsx deleted file mode 100644 index 00971f2a4..000000000 --- a/examples/stripe-subscriptions/packages/mailer/emails/_components/body-footer.tsx +++ /dev/null @@ -1,11 +0,0 @@ -import React from 'react'; -import { Text } from '@react-email/components'; - -const BodyFooter = () => ( - - © {new Date().getFullYear()} Ship, All Rights Reserved
- 651 N Broad St, Suite 206, Middletown, 19709, Delaware, United States -
-); - -export default BodyFooter; diff --git a/examples/stripe-subscriptions/packages/mailer/emails/_components/button.tsx b/examples/stripe-subscriptions/packages/mailer/emails/_components/button.tsx deleted file mode 100644 index b9c6b0908..000000000 --- a/examples/stripe-subscriptions/packages/mailer/emails/_components/button.tsx +++ /dev/null @@ -1,10 +0,0 @@ -import React, { ComponentPropsWithoutRef, FC } from 'react'; -import { Button as ReactEmailButton } from '@react-email/components'; - -const Button: FC> = ({ className, children, ...rest }) => ( - - {children} - -); - -export default Button; diff --git a/examples/stripe-subscriptions/packages/mailer/emails/_components/head.tsx b/examples/stripe-subscriptions/packages/mailer/emails/_components/head.tsx deleted file mode 100644 index 5d826c4f1..000000000 --- a/examples/stripe-subscriptions/packages/mailer/emails/_components/head.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import React from 'react'; -import { Font, Head as ReactEmailHead } from '@react-email/components'; - -const Head = () => ( - - - -); - -export default Head; diff --git a/examples/stripe-subscriptions/packages/mailer/emails/_components/header.tsx b/examples/stripe-subscriptions/packages/mailer/emails/_components/header.tsx deleted file mode 100644 index d220d6676..000000000 --- a/examples/stripe-subscriptions/packages/mailer/emails/_components/header.tsx +++ /dev/null @@ -1,24 +0,0 @@ -import React from 'react'; -import { Column, Img, Row, Section } from '@react-email/components'; - -const logoURL = 'https://ship-demo.fra1.cdn.digitaloceanspaces.com/assets/logo.png'; - -const Header = () => ( - <> - - - Ship - - - -
- - - - - -
- -); - -export default Header; diff --git a/examples/stripe-subscriptions/packages/mailer/emails/_components/main-footer.tsx b/examples/stripe-subscriptions/packages/mailer/emails/_components/main-footer.tsx deleted file mode 100644 index c13c1ad0a..000000000 --- a/examples/stripe-subscriptions/packages/mailer/emails/_components/main-footer.tsx +++ /dev/null @@ -1,22 +0,0 @@ -import React from 'react'; -import { Link, Text } from '@react-email/components'; - -const MainFooter = () => ( - <> - - For any questions or issues, feel free to contact us at{' '} - ship@paralect.com - . -
- We are always here to assist you! -
- - - Best Regards, -
- Ship Team -
- -); - -export default MainFooter; diff --git a/examples/stripe-subscriptions/packages/mailer/emails/_layout.tsx b/examples/stripe-subscriptions/packages/mailer/emails/_layout.tsx deleted file mode 100644 index 0d795f8d8..000000000 --- a/examples/stripe-subscriptions/packages/mailer/emails/_layout.tsx +++ /dev/null @@ -1,51 +0,0 @@ -import React, { FC, ReactNode } from 'react'; -import { Body, Container, Html, Preview, Section, Tailwind, TailwindProps } from '@react-email/components'; - -import BodyFooter from './_components/body-footer'; -import Head from './_components/head'; -import Header from './_components/header'; -import MainFooter from './_components/main-footer'; - -interface LayoutProps { - children: ReactNode; - previewText?: string; -} - -const tailwindConfig: TailwindProps['config'] = { - theme: { - fontFamily: { - sans: ['Roboto', 'sans-serif'], - }, - extend: { - colors: { - background: '#efeef1', - }, - }, - }, -}; - -const Layout: FC = ({ children, previewText }) => ( - - - - {previewText && {previewText}} - - - - -
- -
- {children} - - -
- - - - - - -); - -export default Layout; diff --git a/examples/stripe-subscriptions/packages/mailer/emails/reset-password.tsx b/examples/stripe-subscriptions/packages/mailer/emails/reset-password.tsx deleted file mode 100644 index 1ee9ba07e..000000000 --- a/examples/stripe-subscriptions/packages/mailer/emails/reset-password.tsx +++ /dev/null @@ -1,34 +0,0 @@ -import React, { FC } from 'react'; -import { Text } from '@react-email/components'; - -import Button from './_components/button'; -import Layout from './_layout'; - -export interface ResetPasswordProps { - firstName: string; - href: string; -} - -export const ResetPassword: FC = ({ firstName = 'John', href = 'https://ship.paralect.com' }) => ( - - Dear {firstName}, - - - We received a request to reset the password for your account associated with this email address. If you made this - request, please follow the instructions below. - - - Click the button below to reset your password: - - - - - If you did not request to reset your password, please ignore this email or contact our support team if you believe - this is an error. Your password will remain the same unless you create a new one via the link provided above. - - -); - -export default ResetPassword; diff --git a/examples/stripe-subscriptions/packages/mailer/emails/sign-up-welcome.tsx b/examples/stripe-subscriptions/packages/mailer/emails/sign-up-welcome.tsx deleted file mode 100644 index 38bf110ef..000000000 --- a/examples/stripe-subscriptions/packages/mailer/emails/sign-up-welcome.tsx +++ /dev/null @@ -1,28 +0,0 @@ -import React, { FC } from 'react'; -import { Text } from '@react-email/components'; - -import Button from './_components/button'; -import Layout from './_layout'; - -export interface SignUpWelcomeProps { - firstName: string; - href: string; -} - -export const SignUpWelcome: FC = ({ firstName = 'John', href = 'https://ship.paralect.com' }) => ( - - Dear {firstName}, - - We are excited to have you join our growing Ship community. - - - Your account has been successfully verified, and you are now a part of a vibrant network of people who share your - interest in our digital services. We are confident that our platform will offer you the tools, resources, and - connections you need to succeed. - - - - -); - -export default SignUpWelcome; diff --git a/examples/stripe-subscriptions/packages/mailer/emails/verify-email.tsx b/examples/stripe-subscriptions/packages/mailer/emails/verify-email.tsx deleted file mode 100644 index da8a1a9ee..000000000 --- a/examples/stripe-subscriptions/packages/mailer/emails/verify-email.tsx +++ /dev/null @@ -1,29 +0,0 @@ -import React, { FC } from 'react'; -import { Text } from '@react-email/components'; - -import Button from './_components/button'; -import Layout from './_layout'; - -export interface VerifyEmailProps { - firstName: string; - href: string; -} - -export const VerifyEmail: FC = ({ firstName = 'John', href = 'https://ship.paralect.com' }) => ( - - Dear {firstName}, - - Welcome to Ship! We are excited to have you on board. - - - Before we get started, we just need to verify your email address. This is to ensure that you have access to all - our features and so we can send you important account notifications. - - - Please verify your account by clicking the button below: - - - -); - -export default VerifyEmail; diff --git a/examples/stripe-subscriptions/packages/mailer/package.json b/examples/stripe-subscriptions/packages/mailer/package.json deleted file mode 100644 index 63ade0239..000000000 --- a/examples/stripe-subscriptions/packages/mailer/package.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "name": "mailer", - "version": "0.0.0", - "description": "Ship Mailer based on React Email", - "author": "Paralect", - "license": "MIT", - "main": "./src/index.tsx", - "types": "./src/index.tsx", - "scripts": { - "dev": "email dev --port 3003", - "export": "email export", - "ts-lint": "tsc --noEmit && eslint \"**/*.{ts,tsx}\" --quiet --fix", - "precommit": "lint-staged" - }, - "dependencies": { - "@react-email/components": "0.0.14", - "@react-email/render": "0.0.12", - "react": "*", - "react-email": "2.0.0" - }, - "devDependencies": { - "@types/node": "*", - "@types/react": "*", - "eslint": "*", - "eslint-config-custom": "workspace:*", - "lint-staged": "*", - "prettier": "*", - "prettier-config-custom": "workspace:*", - "tsconfig": "workspace:*", - "typescript": "*" - }, - "lint-staged": { - "*.{ts,tsx}": [ - "eslint --fix" - ] - } -} diff --git a/examples/stripe-subscriptions/packages/mailer/src/index.tsx b/examples/stripe-subscriptions/packages/mailer/src/index.tsx deleted file mode 100644 index 96429f7d1..000000000 --- a/examples/stripe-subscriptions/packages/mailer/src/index.tsx +++ /dev/null @@ -1,18 +0,0 @@ -import React, { FC } from 'react'; -import { Options, renderAsync } from '@react-email/render'; - -import { EmailComponent, Template, TemplateProps } from './template'; - -export * from './template'; - -export interface RenderEmailHtmlProps { - template: T; - params: TemplateProps[T]; - options?: Options; -} - -export const renderEmailHtml = async ({ template, params, options }: RenderEmailHtmlProps) => { - const Component = EmailComponent[template] as FC; - - return renderAsync(, options); -}; diff --git a/examples/stripe-subscriptions/packages/mailer/src/template.ts b/examples/stripe-subscriptions/packages/mailer/src/template.ts deleted file mode 100644 index 7dc3c5e0e..000000000 --- a/examples/stripe-subscriptions/packages/mailer/src/template.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { ResetPassword, ResetPasswordProps } from '../emails/reset-password'; -import { SignUpWelcome, SignUpWelcomeProps } from '../emails/sign-up-welcome'; -import { VerifyEmail, VerifyEmailProps } from '../emails/verify-email'; - -export enum Template { - RESET_PASSWORD = 'RESET_PASSWORD', - SIGN_UP_WELCOME = 'SIGN_UP_WELCOME', - VERIFY_EMAIL = 'VERIFY_EMAIL', -} - -export const EmailComponent = { - [Template.RESET_PASSWORD]: ResetPassword, - [Template.SIGN_UP_WELCOME]: SignUpWelcome, - [Template.VERIFY_EMAIL]: VerifyEmail, -}; - -export type TemplateProps = { - [Template.RESET_PASSWORD]: ResetPasswordProps; - [Template.SIGN_UP_WELCOME]: SignUpWelcomeProps; - [Template.VERIFY_EMAIL]: VerifyEmailProps; -}; diff --git a/examples/stripe-subscriptions/packages/mailer/tsconfig.json b/examples/stripe-subscriptions/packages/mailer/tsconfig.json deleted file mode 100644 index e612c1278..000000000 --- a/examples/stripe-subscriptions/packages/mailer/tsconfig.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "tsconfig/nextjs.json", - "compilerOptions": { - "baseUrl": ".", - "jsx": "preserve" - }, - "include": ["**/*.ts", "**/*.tsx", "**/*.json"] -} diff --git a/examples/stripe-subscriptions/packages/prettier-config-custom/index.js b/examples/stripe-subscriptions/packages/prettier-config-custom/index.js deleted file mode 100644 index d6ff644b8..000000000 --- a/examples/stripe-subscriptions/packages/prettier-config-custom/index.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = { - printWidth: 120, - singleQuote: true, -}; diff --git a/examples/stripe-subscriptions/packages/prettier-config-custom/package.json b/examples/stripe-subscriptions/packages/prettier-config-custom/package.json deleted file mode 100644 index 85ef5d249..000000000 --- a/examples/stripe-subscriptions/packages/prettier-config-custom/package.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "name": "prettier-config-custom", - "version": "0.0.0", - "private": true -} diff --git a/examples/stripe-subscriptions/packages/schemas/.eslintignore b/examples/stripe-subscriptions/packages/schemas/.eslintignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/packages/schemas/.eslintignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/packages/schemas/.eslintrc.js b/examples/stripe-subscriptions/packages/schemas/.eslintrc.js deleted file mode 100644 index 0ce0e0dce..000000000 --- a/examples/stripe-subscriptions/packages/schemas/.eslintrc.js +++ /dev/null @@ -1,4 +0,0 @@ -module.exports = { - root: true, - extends: ['custom/node'], -}; diff --git a/examples/stripe-subscriptions/packages/schemas/.gitignore b/examples/stripe-subscriptions/packages/schemas/.gitignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/packages/schemas/.gitignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/packages/schemas/.prettierignore b/examples/stripe-subscriptions/packages/schemas/.prettierignore deleted file mode 100644 index 15989c8c9..000000000 --- a/examples/stripe-subscriptions/packages/schemas/.prettierignore +++ /dev/null @@ -1,33 +0,0 @@ -# dependencies -/node_modules -/.pnp -.pnp.js - -# testing -/coverage - -# next.js -/.next/ -/out/ - -# production -/build - -# misc -.DS_Store -*.pem - -# debug -npm-debug.log* -yarn-debug.log* -yarn-error.log* -.pnpm-debug.log* - -# local env files -.env*.local - -# vercel -.vercel - -# typescript -*.tsbuildinfo diff --git a/examples/stripe-subscriptions/packages/schemas/.prettierrc.json b/examples/stripe-subscriptions/packages/schemas/.prettierrc.json deleted file mode 100644 index ba63a7c68..000000000 --- a/examples/stripe-subscriptions/packages/schemas/.prettierrc.json +++ /dev/null @@ -1 +0,0 @@ -"prettier-config-custom" diff --git a/examples/stripe-subscriptions/packages/schemas/package.json b/examples/stripe-subscriptions/packages/schemas/package.json deleted file mode 100644 index 2253ba7fb..000000000 --- a/examples/stripe-subscriptions/packages/schemas/package.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "name": "schemas", - "version": "0.0.0", - "main": "./src/index.ts", - "types": "./src/index.ts", - "scripts": { - "test:tsc": "tsc --noEmit", - "test:eslint": "eslint \"**/*.ts\" --fix", - "precommit": "lint-staged" - }, - "dependencies": { - "enums": "workspace:*", - "zod": "*" - }, - "devDependencies": { - "@types/node": "*", - "eslint": "*", - "eslint-config-custom": "workspace:*", - "lint-staged": "*", - "prettier": "*", - "prettier-config-custom": "workspace:*", - "tsconfig": "workspace:*", - "typescript": "*" - }, - "lint-staged": { - "*.ts": [ - "eslint --fix" - ] - } -} diff --git a/examples/stripe-subscriptions/packages/schemas/src/db.schema.ts b/examples/stripe-subscriptions/packages/schemas/src/db.schema.ts deleted file mode 100644 index 2e0ca3b9d..000000000 --- a/examples/stripe-subscriptions/packages/schemas/src/db.schema.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { z } from 'zod'; - -export default z - .object({ - _id: z.string(), - - createdOn: z.date().optional(), - updatedOn: z.date().optional(), - deletedOn: z.date().optional().nullable(), - }) - .strict(); diff --git a/examples/stripe-subscriptions/packages/schemas/src/index.ts b/examples/stripe-subscriptions/packages/schemas/src/index.ts deleted file mode 100644 index 64db5a661..000000000 --- a/examples/stripe-subscriptions/packages/schemas/src/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * from './pagination.schema'; -export * from './subscription.schema'; -export * from './token.schema'; -export * from './user.schema'; diff --git a/examples/stripe-subscriptions/packages/schemas/src/pagination.schema.ts b/examples/stripe-subscriptions/packages/schemas/src/pagination.schema.ts deleted file mode 100644 index 0a7b6acee..000000000 --- a/examples/stripe-subscriptions/packages/schemas/src/pagination.schema.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { z } from 'zod'; - -export const paginationSchema = z.object({ - page: z.coerce.number().default(1), - perPage: z.coerce.number().default(10), - - searchValue: z.string().optional(), - - sort: z - .object({ - createdOn: z.enum(['asc', 'desc']).default('asc'), - }) - .default({}), -}); diff --git a/examples/stripe-subscriptions/packages/schemas/src/subscription.schema.ts b/examples/stripe-subscriptions/packages/schemas/src/subscription.schema.ts deleted file mode 100644 index 029cf1bfc..000000000 --- a/examples/stripe-subscriptions/packages/schemas/src/subscription.schema.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { z } from 'zod'; - -export const subscriptionSchema = z.object({ - subscriptionId: z.string(), - priceId: z.string(), - productId: z.string(), - status: z.string(), - interval: z.string(), - currentPeriodStartDate: z.number(), - currentPeriodEndDate: z.number(), - cancelAtPeriodEnd: z.boolean(), - product: z - .object({ - name: z.string(), - images: z.array(z.string()), - }) - .optional(), - pendingInvoice: z - .object({ - subtotal: z.number(), - tax: z.number().nullable().optional(), - total: z.number(), - amountDue: z.number(), - status: z.string(), - created: z.number(), - }) - .optional(), -}); diff --git a/examples/stripe-subscriptions/packages/schemas/src/token.schema.ts b/examples/stripe-subscriptions/packages/schemas/src/token.schema.ts deleted file mode 100644 index 3b008c8b1..000000000 --- a/examples/stripe-subscriptions/packages/schemas/src/token.schema.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { TokenType } from 'enums'; -import { z } from 'zod'; - -import dbSchema from './db.schema'; - -export const tokenSchema = dbSchema - .extend({ - type: z.nativeEnum(TokenType), - value: z.string(), - userId: z.string(), - isShadow: z.boolean().nullable().optional(), - }) - .strict(); diff --git a/examples/stripe-subscriptions/packages/schemas/src/user.schema.ts b/examples/stripe-subscriptions/packages/schemas/src/user.schema.ts deleted file mode 100644 index e31d17cf4..000000000 --- a/examples/stripe-subscriptions/packages/schemas/src/user.schema.ts +++ /dev/null @@ -1,34 +0,0 @@ -import { z } from 'zod'; - -import dbSchema from './db.schema'; -import { subscriptionSchema } from './subscription.schema'; - -export const userSchema = dbSchema - .extend({ - firstName: z.string(), - lastName: z.string(), - fullName: z.string(), - - email: z.string(), - passwordHash: z.string().nullable().optional(), - - isEmailVerified: z.boolean().default(false), - isShadow: z.boolean().optional().nullable(), - - signupToken: z.string().nullable().optional(), - resetPasswordToken: z.string().nullable().optional(), - - avatarUrl: z.string().nullable().optional(), - oauth: z - .object({ - google: z.boolean().default(false), - }) - .optional(), - - lastRequest: z.date().optional(), - - stripeId: z.string().optional().nullable(), - - subscription: subscriptionSchema.optional().nullable(), - }) - .strict(); diff --git a/examples/stripe-subscriptions/packages/schemas/tsconfig.json b/examples/stripe-subscriptions/packages/schemas/tsconfig.json deleted file mode 100644 index d7247ab82..000000000 --- a/examples/stripe-subscriptions/packages/schemas/tsconfig.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": "tsconfig/nodejs.json", - "compilerOptions": { - "rootDir": ".", - "baseUrl": "src" - }, - "include": ["**/*.ts", "**/*.json"] -} diff --git a/examples/stripe-subscriptions/packages/tsconfig/base.json b/examples/stripe-subscriptions/packages/tsconfig/base.json deleted file mode 100644 index f37a9334c..000000000 --- a/examples/stripe-subscriptions/packages/tsconfig/base.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/tsconfig", - "display": "Default", - "compilerOptions": { - "esModuleInterop": true, - "forceConsistentCasingInFileNames": true, - "resolveJsonModule": true, - "skipLibCheck": true, - "strict": true - }, - "exclude": ["node_modules"] -} diff --git a/examples/stripe-subscriptions/packages/tsconfig/nextjs.json b/examples/stripe-subscriptions/packages/tsconfig/nextjs.json deleted file mode 100644 index 82a132c72..000000000 --- a/examples/stripe-subscriptions/packages/tsconfig/nextjs.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/tsconfig", - "display": "Next.js", - "extends": "./base.json", - "compilerOptions": { - "paths": { - "public/*": ["../public/*"] - }, - - "lib": ["dom", "dom.iterable", "esnext"], - "allowJs": true, - "incremental": true, - "isolatedModules": true, - "jsx": "preserve", - "module": "esnext", - "moduleResolution": "bundler", - "noEmit": true, - "plugins": [ - { - "name": "next" - } - ] - } -} diff --git a/examples/stripe-subscriptions/packages/tsconfig/nodejs.json b/examples/stripe-subscriptions/packages/tsconfig/nodejs.json deleted file mode 100644 index d587f079c..000000000 --- a/examples/stripe-subscriptions/packages/tsconfig/nodejs.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/tsconfig", - "display": "Node.js", - "extends": "./base.json", - "compilerOptions": { - "moduleResolution": "NodeNext", - "lib": ["es2023"], - "module": "NodeNext", - "target": "es2022", - - "allowSyntheticDefaultImports": true, - "useUnknownInCatchVariables": true - }, - "ts-node": { "transpileOnly": true } -} diff --git a/examples/stripe-subscriptions/packages/tsconfig/package.json b/examples/stripe-subscriptions/packages/tsconfig/package.json deleted file mode 100644 index 3f406290b..000000000 --- a/examples/stripe-subscriptions/packages/tsconfig/package.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "name": "tsconfig", - "version": "0.0.0", - "private": true -} diff --git a/examples/stripe-subscriptions/pnpm-lock.yaml b/examples/stripe-subscriptions/pnpm-lock.yaml deleted file mode 100644 index 12e41ed43..000000000 --- a/examples/stripe-subscriptions/pnpm-lock.yaml +++ /dev/null @@ -1,22419 +0,0 @@ -lockfileVersion: '9.0' - -settings: - autoInstallPeers: true - excludeLinksFromLockfile: false - -importers: - - .: - optionalDependencies: - turbo-darwin-64: - specifier: 1.11.1 - version: 1.11.1 - turbo-darwin-arm64: - specifier: 1.11.1 - version: 1.11.1 - turbo-linux-64: - specifier: 1.11.1 - version: 1.11.1 - turbo-linux-arm64: - specifier: 1.11.1 - version: 1.11.1 - turbo-windows-64: - specifier: 1.11.1 - version: 1.11.1 - turbo-windows-arm64: - specifier: 1.11.1 - version: 1.11.1 - devDependencies: - husky: - specifier: 9.0.11 - version: 9.0.11 - react: - specifier: 18.2.0 - version: 18.2.0 - react-dom: - specifier: 18.2.0 - version: 18.2.0(react@18.2.0) - turbo: - specifier: 1.11.1 - version: 1.11.1 - - apps/api: - dependencies: - '@aws-sdk/client-s3': - specifier: 3.540.0 - version: 3.540.0 - '@aws-sdk/lib-storage': - specifier: 3.540.0 - version: 3.540.0(@aws-sdk/client-s3@3.540.0) - '@aws-sdk/s3-request-presigner': - specifier: 3.540.0 - version: 3.540.0 - '@koa/cors': - specifier: 4.0.0 - version: 4.0.0 - '@koa/multer': - specifier: 3.0.2 - version: 3.0.2(multer@1.4.5-lts.1) - '@koa/router': - specifier: 12.0.0 - version: 12.0.0 - '@paralect/node-mongo': - specifier: 3.2.0 - version: 3.2.0(@aws-sdk/credential-providers@3.272.0)(gcp-metadata@5.2.0)(socks@2.7.1) - '@socket.io/redis-adapter': - specifier: 8.1.0 - version: 8.1.0(socket.io-adapter@2.5.2) - '@socket.io/redis-emitter': - specifier: 5.1.0 - version: 5.1.0 - app-constants: - specifier: workspace:* - version: link:../../packages/app-constants - app-types: - specifier: workspace:* - version: link:../../packages/app-types - bcryptjs: - specifier: 2.4.3 - version: 2.4.3 - dayjs: - specifier: 1.11.10 - version: 1.11.10 - dotenv: - specifier: 16.0.3 - version: 16.0.3 - google-auth-library: - specifier: 8.7.0 - version: 8.7.0 - ioredis: - specifier: 5.3.2 - version: 5.3.2 - jsonwebtoken: - specifier: 9.0.0 - version: 9.0.0 - koa: - specifier: 2.14.1 - version: 2.14.1 - koa-bodyparser: - specifier: 4.3.0 - version: 4.3.0 - koa-compose: - specifier: 4.1.0 - version: 4.1.0 - koa-helmet: - specifier: 6.1.0 - version: 6.1.0 - koa-logger: - specifier: 3.2.1 - version: 3.2.1 - koa-mount: - specifier: 4.0.0 - version: 4.0.0 - koa-qs: - specifier: 3.0.0 - version: 3.0.0 - koa-ratelimit: - specifier: 5.0.1 - version: 5.0.1 - lodash: - specifier: 4.17.21 - version: 4.17.21 - mailer: - specifier: workspace:* - version: link:../../packages/mailer - mixpanel: - specifier: 0.17.0 - version: 0.17.0 - module-alias: - specifier: 2.2.2 - version: 2.2.2 - node-schedule: - specifier: 2.1.1 - version: 2.1.1 - npm: - specifier: 9.6.1 - version: 9.6.1 - psl: - specifier: 1.9.0 - version: 1.9.0 - resend: - specifier: 3.2.0 - version: 3.2.0 - schemas: - specifier: workspace:* - version: link:../../packages/schemas - socket.io: - specifier: 4.6.1 - version: 4.6.1 - stripe: - specifier: 15.7.0 - version: 15.7.0 - winston: - specifier: 3.8.2 - version: 3.8.2 - zod: - specifier: 3.21.4 - version: 3.21.4 - devDependencies: - '@shelf/jest-mongodb': - specifier: 4.2.0 - version: 4.2.0(@aws-sdk/credential-providers@3.272.0)(jest-environment-node@29.7.0)(mongodb@6.1.0(@aws-sdk/credential-providers@3.272.0)(gcp-metadata@5.2.0)(socks@2.7.1)) - '@types/bcryptjs': - specifier: 2.4.2 - version: 2.4.2 - '@types/jest': - specifier: 29.5.12 - version: 29.5.12 - '@types/jsonwebtoken': - specifier: 9.0.6 - version: 9.0.6 - '@types/koa': - specifier: 2.13.5 - version: 2.13.5 - '@types/koa-bodyparser': - specifier: 4.3.10 - version: 4.3.10 - '@types/koa-compose': - specifier: 3.2.5 - version: 3.2.5 - '@types/koa-helmet': - specifier: 6.0.4 - version: 6.0.4 - '@types/koa-logger': - specifier: 3.1.2 - version: 3.1.2 - '@types/koa-mount': - specifier: 4.0.2 - version: 4.0.2 - '@types/koa-ratelimit': - specifier: 5.0.0 - version: 5.0.0 - '@types/koa__cors': - specifier: 3.3.1 - version: 3.3.1 - '@types/koa__multer': - specifier: 2.0.4 - version: 2.0.4 - '@types/koa__router': - specifier: 12.0.0 - version: 12.0.0 - '@types/lodash': - specifier: 4.14.191 - version: 4.14.191 - '@types/module-alias': - specifier: 2.0.1 - version: 2.0.1 - '@types/node': - specifier: 20.11.1 - version: 20.11.1 - '@types/node-schedule': - specifier: 2.1.0 - version: 2.1.0 - '@types/psl': - specifier: 1.1.0 - version: 1.1.0 - eslint: - specifier: 8.56.0 - version: 8.56.0 - eslint-config-custom: - specifier: workspace:* - version: link:../../packages/eslint-config-custom - jest: - specifier: 29.7.0 - version: 29.7.0(@types/node@20.11.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)) - lint-staged: - specifier: 13.2.0 - version: 13.2.0 - mongodb-memory-server: - specifier: 8.12.0 - version: 8.12.0 - npm-run-all: - specifier: 4.1.5 - version: 4.1.5 - prettier: - specifier: 3.2.5 - version: 3.2.5 - prettier-config-custom: - specifier: workspace:* - version: link:../../packages/prettier-config-custom - ts-jest: - specifier: 29.1.2 - version: 29.1.2(@babel/core@7.21.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.21.0))(jest@29.7.0(@types/node@20.11.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)))(typescript@5.2.2) - ts-node: - specifier: 10.9.1 - version: 10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2) - tsconfig: - specifier: workspace:* - version: link:../../packages/tsconfig - tsx: - specifier: 4.20.4 - version: 4.20.4 - typescript: - specifier: 5.2.2 - version: 5.2.2 - - apps/web: - dependencies: - '@hookform/resolvers': - specifier: 3.3.4 - version: 3.3.4(react-hook-form@7.50.1(react@18.2.0)) - '@mantine/core': - specifier: 7.5.2 - version: 7.5.2(@mantine/hooks@7.5.2(react@18.2.0))(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@mantine/dates': - specifier: 7.5.2 - version: 7.5.2(@mantine/core@7.5.2(@mantine/hooks@7.5.2(react@18.2.0))(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@mantine/hooks@7.5.2(react@18.2.0))(dayjs@1.11.10)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@mantine/dropzone': - specifier: 7.5.2 - version: 7.5.2(@mantine/core@7.5.2(@mantine/hooks@7.5.2(react@18.2.0))(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@mantine/hooks@7.5.2(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@mantine/hooks': - specifier: 7.5.2 - version: 7.5.2(react@18.2.0) - '@mantine/modals': - specifier: 7.5.2 - version: 7.5.2(@mantine/core@7.5.2(@mantine/hooks@7.5.2(react@18.2.0))(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@mantine/hooks@7.5.2(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@mantine/next': - specifier: 6.0.21 - version: 6.0.21(@emotion/react@11.10.6(@types/react@18.2.55)(react@18.2.0))(@emotion/server@11.10.0)(next@14.1.0(@babel/core@7.23.7)(babel-plugin-macros@3.1.0)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@mantine/notifications': - specifier: 7.5.2 - version: 7.5.2(@mantine/core@7.5.2(@mantine/hooks@7.5.2(react@18.2.0))(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@mantine/hooks@7.5.2(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@stripe/react-stripe-js': - specifier: 2.7.1 - version: 2.7.1(@stripe/stripe-js@3.4.1)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@stripe/stripe-js': - specifier: 3.4.1 - version: 3.4.1 - '@svgr/webpack': - specifier: 8.1.0 - version: 8.1.0(typescript@5.2.2) - '@tabler/icons-react': - specifier: 2.47.0 - version: 2.47.0(react@18.2.0) - '@tanstack/react-query': - specifier: 5.20.1 - version: 5.20.1(react@18.2.0) - '@tanstack/react-table': - specifier: 8.11.8 - version: 8.11.8(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - app-constants: - specifier: workspace:* - version: link:../../packages/app-constants - app-types: - specifier: workspace:* - version: link:../../packages/app-types - axios: - specifier: 1.6.7 - version: 1.6.7 - clsx: - specifier: 2.1.0 - version: 2.1.0 - dayjs: - specifier: 1.11.10 - version: 1.11.10 - dotenv-flow: - specifier: 4.1.0 - version: 4.1.0 - lodash: - specifier: 4.17.21 - version: 4.17.21 - mixpanel-browser: - specifier: 2.49.0 - version: 2.49.0 - next: - specifier: 14.1.0 - version: 14.1.0(@babel/core@7.23.7)(babel-plugin-macros@3.1.0)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - react: - specifier: 18.2.0 - version: 18.2.0 - react-dom: - specifier: 18.2.0 - version: 18.2.0(react@18.2.0) - react-hook-form: - specifier: 7.50.1 - version: 7.50.1(react@18.2.0) - schemas: - specifier: workspace:* - version: link:../../packages/schemas - socket.io-client: - specifier: 4.7.4 - version: 4.7.4 - zod: - specifier: 3.21.4 - version: 3.21.4 - devDependencies: - '@storybook/addon-essentials': - specifier: 7.6.14 - version: 7.6.14(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/addon-interactions': - specifier: 7.6.14 - version: 7.6.14 - '@storybook/addon-links': - specifier: 7.6.14 - version: 7.6.14(react@18.2.0) - '@storybook/addon-onboarding': - specifier: ^1.0.11 - version: 1.0.11(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/addon-styling-webpack': - specifier: 0.0.6 - version: 0.0.6(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)) - '@storybook/blocks': - specifier: 7.6.14 - version: 7.6.14(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/builder-webpack5': - specifier: 7.6.14 - version: 7.6.14(@swc/helpers@0.5.2)(esbuild@0.18.6)(typescript@5.2.2) - '@storybook/nextjs': - specifier: 7.6.14 - version: 7.6.14(@swc/core@1.3.104(@swc/helpers@0.5.2))(@swc/helpers@0.5.2)(@types/webpack@5.28.5(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6))(babel-plugin-macros@3.1.0)(esbuild@0.18.6)(next@14.1.0(@babel/core@7.23.7)(babel-plugin-macros@3.1.0)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(type-fest@3.13.1)(typescript@5.2.2)(webpack-hot-middleware@2.26.0)(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)) - '@storybook/preview-api': - specifier: 7.6.14 - version: 7.6.14 - '@storybook/react': - specifier: 7.6.14 - version: 7.6.14(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.2.2) - '@storybook/test': - specifier: 7.6.14 - version: 7.6.14(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.11.1)(babel-plugin-macros@3.1.0)) - '@tanstack/react-query-devtools': - specifier: 5.20.1 - version: 5.20.1(@tanstack/react-query@5.20.1(react@18.2.0))(react@18.2.0) - '@types/lodash': - specifier: 4.14.202 - version: 4.14.202 - '@types/mixpanel-browser': - specifier: 2.49.0 - version: 2.49.0 - '@types/node': - specifier: 20.11.1 - version: 20.11.1 - '@types/qs': - specifier: 6.9.11 - version: 6.9.11 - '@types/react': - specifier: 18.2.55 - version: 18.2.55 - '@types/react-dom': - specifier: 18.2.19 - version: 18.2.19 - eslint: - specifier: 8.56.0 - version: 8.56.0 - eslint-config-custom: - specifier: workspace:* - version: link:../../packages/eslint-config-custom - lint-staged: - specifier: 15.2.2 - version: 15.2.2 - postcss: - specifier: 8.4.35 - version: 8.4.35 - postcss-preset-mantine: - specifier: 1.13.0 - version: 1.13.0(postcss@8.4.35) - postcss-simple-vars: - specifier: 7.0.1 - version: 7.0.1(postcss@8.4.35) - prettier: - specifier: 3.2.5 - version: 3.2.5 - prettier-config-custom: - specifier: workspace:* - version: link:../../packages/prettier-config-custom - storybook: - specifier: 7.6.14 - version: 7.6.14 - storybook-dark-mode: - specifier: 3.0.3 - version: 3.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - tsconfig: - specifier: workspace:* - version: link:../../packages/tsconfig - typescript: - specifier: 5.2.2 - version: 5.2.2 - - packages/app-constants: - devDependencies: - '@types/node': - specifier: '*' - version: 20.11.1 - eslint: - specifier: '*' - version: 8.56.0 - eslint-config-custom: - specifier: workspace:* - version: link:../eslint-config-custom - lint-staged: - specifier: '*' - version: 13.2.0 - prettier: - specifier: '*' - version: 3.2.5 - prettier-config-custom: - specifier: workspace:* - version: link:../prettier-config-custom - tsconfig: - specifier: workspace:* - version: link:../tsconfig - typescript: - specifier: '*' - version: 5.2.2 - - packages/app-types: - dependencies: - enums: - specifier: workspace:* - version: link:../enums - mailer: - specifier: workspace:* - version: link:../mailer - schemas: - specifier: workspace:* - version: link:../schemas - zod: - specifier: '*' - version: 3.21.4 - devDependencies: - '@types/node': - specifier: '*' - version: 20.11.1 - eslint: - specifier: '*' - version: 8.56.0 - eslint-config-custom: - specifier: workspace:* - version: link:../eslint-config-custom - lint-staged: - specifier: '*' - version: 13.2.0 - prettier: - specifier: '*' - version: 3.2.5 - prettier-config-custom: - specifier: workspace:* - version: link:../prettier-config-custom - tsconfig: - specifier: workspace:* - version: link:../tsconfig - typescript: - specifier: '*' - version: 5.2.2 - - packages/enums: - devDependencies: - '@types/node': - specifier: '*' - version: 20.11.1 - eslint: - specifier: '*' - version: 8.56.0 - eslint-config-custom: - specifier: workspace:* - version: link:../eslint-config-custom - lint-staged: - specifier: '*' - version: 13.2.0 - prettier: - specifier: '*' - version: 3.2.5 - prettier-config-custom: - specifier: workspace:* - version: link:../prettier-config-custom - tsconfig: - specifier: workspace:* - version: link:../tsconfig - typescript: - specifier: '*' - version: 5.2.2 - - packages/eslint-config-custom: - devDependencies: - '@typescript-eslint/eslint-plugin': - specifier: 6.21.0 - version: 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint@8.56.0)(typescript@5.2.2) - '@typescript-eslint/parser': - specifier: 6.21.0 - version: 6.21.0(eslint@8.56.0)(typescript@5.2.2) - eslint-config-airbnb: - specifier: 19.0.4 - version: 19.0.4(eslint-plugin-import@2.27.5(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint@8.56.0))(eslint-plugin-jsx-a11y@6.7.1(eslint@8.56.0))(eslint-plugin-react-hooks@4.6.0(eslint@8.56.0))(eslint-plugin-react@7.28.0(eslint@8.56.0))(eslint@8.56.0) - eslint-config-airbnb-typescript: - specifier: 17.1.0 - version: 17.1.0(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint@8.56.0)(typescript@5.2.2))(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint-plugin-import@2.27.5(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint@8.56.0))(eslint@8.56.0) - eslint-config-next: - specifier: 14.1.0 - version: 14.1.0(eslint@8.56.0)(typescript@5.2.2) - eslint-config-prettier: - specifier: 9.1.0 - version: 9.1.0(eslint@8.56.0) - eslint-plugin-import: - specifier: 2.27.5 - version: 2.27.5(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint@8.56.0) - eslint-plugin-react: - specifier: 7.28.0 - version: 7.28.0(eslint@8.56.0) - eslint-plugin-simple-import-sort: - specifier: 10.0.0 - version: 10.0.0(eslint@8.56.0) - prettier-config-custom: - specifier: workspace:* - version: link:../prettier-config-custom - - packages/mailer: - dependencies: - '@react-email/components': - specifier: 0.0.14 - version: 0.0.14(@types/react@18.2.55)(react@18.2.0) - '@react-email/render': - specifier: 0.0.12 - version: 0.0.12 - react: - specifier: '*' - version: 18.2.0 - react-email: - specifier: 2.0.0 - version: 2.0.0(@swc/helpers@0.5.2)(eslint@8.56.0)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)) - devDependencies: - '@types/node': - specifier: '*' - version: 20.11.1 - '@types/react': - specifier: '*' - version: 18.2.55 - eslint: - specifier: '*' - version: 8.56.0 - eslint-config-custom: - specifier: workspace:* - version: link:../eslint-config-custom - lint-staged: - specifier: '*' - version: 13.2.0 - prettier: - specifier: '*' - version: 3.2.5 - prettier-config-custom: - specifier: workspace:* - version: link:../prettier-config-custom - tsconfig: - specifier: workspace:* - version: link:../tsconfig - typescript: - specifier: '*' - version: 5.2.2 - - packages/prettier-config-custom: {} - - packages/schemas: - dependencies: - enums: - specifier: workspace:* - version: link:../enums - zod: - specifier: '*' - version: 3.21.4 - devDependencies: - '@types/node': - specifier: '*' - version: 20.11.1 - eslint: - specifier: '*' - version: 8.56.0 - eslint-config-custom: - specifier: workspace:* - version: link:../eslint-config-custom - lint-staged: - specifier: '*' - version: 13.2.0 - prettier: - specifier: '*' - version: 3.2.5 - prettier-config-custom: - specifier: workspace:* - version: link:../prettier-config-custom - tsconfig: - specifier: workspace:* - version: link:../tsconfig - typescript: - specifier: '*' - version: 5.2.2 - - packages/tsconfig: {} - -packages: - - '@aashutoshrathi/word-wrap@1.2.6': - resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} - engines: {node: '>=0.10.0'} - - '@adobe/css-tools@4.3.2': - resolution: {integrity: sha512-DA5a1C0gD/pLOvhv33YMrbf2FK3oUzwNl9oOJqE4XVjuEtt6XIakRcsd7eLiOSPkp1kTRQGICTA8cKra/vFbjw==} - - '@alloc/quick-lru@5.2.0': - resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} - engines: {node: '>=10'} - - '@ampproject/remapping@2.2.0': - resolution: {integrity: sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==} - engines: {node: '>=6.0.0'} - - '@aw-web-design/x-default-browser@1.4.126': - resolution: {integrity: sha512-Xk1sIhyNC/esHGGVjL/niHLowM0csl/kFO5uawBy4IrWwy0o1G8LGt3jP6nmWGz+USxeeqbihAmp/oVZju6wug==} - hasBin: true - - '@aws-crypto/crc32@3.0.0': - resolution: {integrity: sha512-IzSgsrxUcsrejQbPVilIKy16kAT52EwB6zSaI+M3xxIhKh5+aldEyvI+z6erM7TCLB2BJsFrtHjp6/4/sr+3dA==} - - '@aws-crypto/crc32c@3.0.0': - resolution: {integrity: sha512-ENNPPManmnVJ4BTXlOjAgD7URidbAznURqD0KvfREyc4o20DPYdEldU1f5cQ7Jbj0CJJSPaMIk/9ZshdB3210w==} - - '@aws-crypto/ie11-detection@3.0.0': - resolution: {integrity: sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==} - - '@aws-crypto/sha1-browser@3.0.0': - resolution: {integrity: sha512-NJth5c997GLHs6nOYTzFKTbYdMNA6/1XlKVgnZoaZcQ7z7UJlOgj2JdbHE8tiYLS3fzXNCguct77SPGat2raSw==} - - '@aws-crypto/sha256-browser@3.0.0': - resolution: {integrity: sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==} - - '@aws-crypto/sha256-js@3.0.0': - resolution: {integrity: sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==} - - '@aws-crypto/supports-web-crypto@3.0.0': - resolution: {integrity: sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==} - - '@aws-crypto/util@3.0.0': - resolution: {integrity: sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==} - - '@aws-sdk/abort-controller@3.272.0': - resolution: {integrity: sha512-s2TV3phapcTwZNr4qLxbfuQuE9ZMP4RoJdkvRRCkKdm6jslsWLJf2Zlcxti/23hOlINUMYv2iXE2pftIgWGdpg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/client-cognito-identity@3.272.0': - resolution: {integrity: sha512-uMjRWcNvX7SoGaVn0mXWD43+Z1awPahQwGW3riDLfXHZdOgw2oFDhD3Jg5jQ8OzQLUfDvArhE3WyZwlS4muMuQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/client-s3@3.540.0': - resolution: {integrity: sha512-rYBuNB7uqCO9xZc0OAwM2K6QJAo2Syt1L5OhEaf7zG7FulNMyrK6kJPg1WrvNE90tW6gUdDaTy3XsQ7lq6O7uA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/client-sso-oidc@3.272.0': - resolution: {integrity: sha512-ECcXu3xoa1yggnGKMTh29eWNHiF/wC6r5Uqbla22eOOosyh0+Z6lkJ3JUSLOUKCkBXA4Cs/tJL9UDFBrKbSlvA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/client-sso-oidc@3.540.0': - resolution: {integrity: sha512-LZYK0lBRQK8D8M3Sqc96XiXkAV2v70zhTtF6weyzEpgwxZMfSuFJjs0jFyhaeZBZbZv7BBghIdhJ5TPavNxGMQ==} - engines: {node: '>=14.0.0'} - peerDependencies: - '@aws-sdk/credential-provider-node': ^3.540.0 - - '@aws-sdk/client-sso@3.272.0': - resolution: {integrity: sha512-xn9a0IGONwQIARmngThoRhF1lLGjHAD67sUaShgIMaIMc6ipVYN6alWG1VuUpoUQ6iiwMEt0CHdfCyLyUV/fTA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/client-sso@3.540.0': - resolution: {integrity: sha512-rrQZMuw4sxIo3eyAUUzPQRA336mPRnrAeSlSdVHBKZD8Fjvoy0lYry2vNhkPLpFZLso1J66KRyuIv4LzRR3v1Q==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/client-sts@3.272.0': - resolution: {integrity: sha512-kigxCxURp3WupufGaL/LABMb7UQfzAQkKcj9royizL3ItJ0vw5kW/JFrPje5IW1mfLgdPF7PI9ShOjE0fCLTqA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/client-sts@3.540.0': - resolution: {integrity: sha512-ITHUQxvpqfQX6obfpIi3KYGzZYfe/I5Ixjfxoi5lB7ISCtmxqObKB1fzD93wonkMJytJ7LUO8panZl/ojiJ1uw==} - engines: {node: '>=14.0.0'} - peerDependencies: - '@aws-sdk/credential-provider-node': ^3.540.0 - - '@aws-sdk/config-resolver@3.272.0': - resolution: {integrity: sha512-Dr4CffRVNsOp3LRNdpvcH6XuSgXOSLblWliCy/5I86cNl567KVMxujVx6uPrdTXYs2h1rt3MNl6jQGnAiJeTbw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/core@3.535.0': - resolution: {integrity: sha512-+Yusa9HziuaEDta1UaLEtMAtmgvxdxhPn7jgfRY6PplqAqgsfa5FR83sxy5qr2q7xjQTwHtV4MjQVuOjG9JsLw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-cognito-identity@3.272.0': - resolution: {integrity: sha512-rVx0rtQjbiYCM0nah2rB/2ut2YJYPpRr1AbW/Hd4r/PI+yiusrmXAwuT4HIW2yr34zsQMPi1jZ3WHN9Rn9mzlg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-env@3.272.0': - resolution: {integrity: sha512-QI65NbLnKLYHyTYhXaaUrq6eVsCCrMUb05WDA7+TJkWkjXesovpjc8vUKgFiLSxmgKmb2uOhHNcDyObKMrYQFw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-env@3.535.0': - resolution: {integrity: sha512-XppwO8c0GCGSAvdzyJOhbtktSEaShg14VJKg8mpMa1XcgqzmcqqHQjtDWbx5rZheY1VdpXZhpEzJkB6LpQejpA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-http@3.535.0': - resolution: {integrity: sha512-kdj1wCmOMZ29jSlUskRqN04S6fJ4dvt0Nq9Z32SA6wO7UG8ht6Ot9h/au/eTWJM3E1somZ7D771oK7dQt9b8yw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-imds@3.272.0': - resolution: {integrity: sha512-wwAfVY1jTFQEfxVfdYD5r5ieYGl+0g4nhekVxNMqE8E1JeRDd18OqiwAflzpgBIqxfqvCUkf+vl5JYyacMkNAQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-ini@3.272.0': - resolution: {integrity: sha512-iE3CDzK5NcupHYjfYjBdY1JCy8NLEoRUsboEjG0i0gy3S3jVpDeVHX1dLVcL/slBFj6GiM7SoNV/UfKnJf3Gaw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-ini@3.540.0': - resolution: {integrity: sha512-igN/RbsnulIBwqXbwsWmR3srqmtbPF1dm+JteGvUY31FW65fTVvWvSr945Y/cf1UbhPmIQXntlsqESqpkhTHwg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-node@3.272.0': - resolution: {integrity: sha512-FI8uvwM1IxiRSvbkdKv8DZG5vxU3ezaseTaB1fHWTxEUFb0pWIoHX9oeOKer9Fj31SOZTCNAaYFURbSRuZlm/w==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-node@3.540.0': - resolution: {integrity: sha512-HKQZJbLHlrHX9A0B1poiYNXIIQfy8whTjuosTCYKPDBhhUyVAQfxy/KG726j0v43IhaNPLgTGZCJve4hAsazSw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-process@3.272.0': - resolution: {integrity: sha512-hiCAjWWm2PeBFp5cjkxqyam/XADjiS+e7GzwC34TbZn3LisS0uoweLojj9tD11NnnUhyhbLteUvu5+rotOLwrg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-process@3.535.0': - resolution: {integrity: sha512-9O1OaprGCnlb/kYl8RwmH7Mlg8JREZctB8r9sa1KhSsWFq/SWO0AuJTyowxD7zL5PkeS4eTvzFFHWCa3OO5epA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-sso@3.272.0': - resolution: {integrity: sha512-hwYaulyiU/7chKKFecxCeo0ls6Dxs7h+5EtoYcJJGvfpvCncyOZF35t00OAsCd3Wo7HkhhgfpGdb6dmvCNQAZQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-sso@3.540.0': - resolution: {integrity: sha512-tKkFqK227LF5ajc5EL6asXS32p3nkofpP8G7NRpU7zOEOQCg01KUc4JRX+ItI0T007CiN1J19yNoFqHLT/SqHg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-web-identity@3.272.0': - resolution: {integrity: sha512-ImrHMkcgneGa/HadHAQXPwOrX26sAKuB8qlMxZF/ZCM2B55u8deY+ZVkVuraeKb7YsahMGehPFOfRAF6mvFI5Q==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-provider-web-identity@3.540.0': - resolution: {integrity: sha512-OpDm9w3A168B44hSjpnvECP4rvnFzD86rN4VYdGADuCvEa5uEcdA/JuT5WclFPDqdWEmFBqS1pxBIJBf0g2Q9Q==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/credential-providers@3.272.0': - resolution: {integrity: sha512-ucd6Xq6aBMf+nM4uz5zkjL11mwaE5BV1Q4hkulaGu2v1dRA8n6zhLJk/sb4hOJ7leelqMJMErlbQ2T3MkYvlJQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/fetch-http-handler@3.272.0': - resolution: {integrity: sha512-1Qhm9e0RbS1Xf4CZqUbQyUMkDLd7GrsRXWIvm9b86/vgeV8/WnjO3CMue9D51nYgcyQORhYXv6uVjAYCWbUExA==} - - '@aws-sdk/hash-node@3.272.0': - resolution: {integrity: sha512-40dwND+iAm3VtPHPZu7/+CIdVJFk2s0cWZt1lOiMPMSXycSYJ45wMk7Lly3uoqRx0uWfFK5iT2OCv+fJi5jTng==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/invalid-dependency@3.272.0': - resolution: {integrity: sha512-ysW6wbjl1Y78txHUQ/Tldj2Rg1BI7rpMO9B9xAF6yAX3mQ7t6SUPQG/ewOGvH2208NBIl3qP5e/hDf0Q6r/1iw==} - - '@aws-sdk/is-array-buffer@3.201.0': - resolution: {integrity: sha512-UPez5qLh3dNgt0DYnPD/q0mVJY84rA17QE26hVNOW3fAji8W2wrwrxdacWOxyXvlxWsVRcKmr+lay1MDqpAMfg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/lib-storage@3.540.0': - resolution: {integrity: sha512-xNLOpuOSzGO90fwn+GBsM//a4ALYl85WEsovKyJI6jYJTMCGLrzJQeq8cxeC5Xz6w8Ol86lf80Gll/cz4phy7g==} - engines: {node: '>=14.0.0'} - peerDependencies: - '@aws-sdk/client-s3': ^3.0.0 - - '@aws-sdk/middleware-bucket-endpoint@3.535.0': - resolution: {integrity: sha512-7sijlfQsc4UO9Fsl11mU26Y5f9E7g6UoNg/iJUBpC5pgvvmdBRO5UEhbB/gnqvOEPsBXyhmfzbstebq23Qdz7A==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-content-length@3.272.0': - resolution: {integrity: sha512-sAbDZSTNmLX+UTGwlUHJBWy0QGQkiClpHwVFXACon+aG0ySLNeRKEVYs6NCPYldw4cj6hveLUn50cX44ukHErw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-endpoint@3.272.0': - resolution: {integrity: sha512-Dk3JVjj7SxxoUKv3xGiOeBksvPtFhTDrVW75XJ98Ymv8gJH5L1sq4hIeJAHRKogGiRFq2J73mnZSlM9FVXEylg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-expect-continue@3.535.0': - resolution: {integrity: sha512-hFKyqUBky0NWCVku8iZ9+PACehx0p6vuMw5YnZf8FVgHP0fode0b/NwQY6UY7oor/GftvRsAlRUAWGNFEGUpwA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-flexible-checksums@3.535.0': - resolution: {integrity: sha512-rBIzldY9jjRATxICDX7t77aW6ctqmVDgnuAOgbVT5xgHftt4o7PGWKoMvl/45hYqoQgxVFnCBof9bxkqSBebVA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-host-header@3.272.0': - resolution: {integrity: sha512-Q8K7bMMFZnioUXpxn57HIt4p+I63XaNAawMLIZ5B4F2piyukbQeM9q2XVKMGwqLvijHR8CyP5nHrtKqVuINogQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-host-header@3.535.0': - resolution: {integrity: sha512-0h6TWjBWtDaYwHMQJI9ulafeS4lLaw1vIxRjbpH0svFRt6Eve+Sy8NlVhECfTU2hNz/fLubvrUxsXoThaLBIew==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-location-constraint@3.535.0': - resolution: {integrity: sha512-SxfS9wfidUZZ+WnlKRTCRn3h+XTsymXRXPJj8VV6hNRNeOwzNweoG3YhQbTowuuNfXf89m9v6meYkBBtkdacKw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-logger@3.272.0': - resolution: {integrity: sha512-u2SQ0hWrFwxbxxYMG5uMEgf01pQY5jauK/LYWgGIvuCmFgiyRQQP3oN7kkmsxnS9MWmNmhbyQguX2NY02s5e9w==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-logger@3.535.0': - resolution: {integrity: sha512-huNHpONOrEDrdRTvSQr1cJiRMNf0S52NDXtaPzdxiubTkP+vni2MohmZANMOai/qT0olmEVX01LhZ0ZAOgmg6A==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-recursion-detection@3.272.0': - resolution: {integrity: sha512-Gp/eKWeUWVNiiBdmUM2qLkBv+VLSJKoWAO+aKmyxxwjjmWhE0FrfA1NQ1a3g+NGMhRbAfQdaYswRAKsul70ISg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-recursion-detection@3.535.0': - resolution: {integrity: sha512-am2qgGs+gwqmR4wHLWpzlZ8PWhm4ktj5bYSgDrsOfjhdBlWNxvPoID9/pDAz5RWL48+oH7I6SQzMqxXsFDikrw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-retry@3.272.0': - resolution: {integrity: sha512-pCGvHM7C76VbO/dFerH+Vwf7tGv7j+e+eGrvhQ35mRghCtfIou/WMfTZlD1TNee93crrAQQVZKjtW3dMB3WCzg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-sdk-s3@3.535.0': - resolution: {integrity: sha512-/dLG/E3af6ohxkQ5GBHT8tZfuPIg6eItKxCXuulvYj0Tqgf3Mb+xTsvSkxQsJF06RS4sH7Qsg/PnB8ZfrJrXpg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-sdk-sts@3.272.0': - resolution: {integrity: sha512-VvYPg7LrDIjUOWueSzo2wBzcNG7dw+cmzV6zAKaLxf0RC5jeAP4hE0OzDiiZfDrjNghEzgq/V+0NO+LewqYL9Q==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-serde@3.272.0': - resolution: {integrity: sha512-kW1uOxgPSwtXPB5rm3QLdWomu42lkYpQL94tM1BjyFOWmBLO2lQhk5a7Dw6HkTozT9a+vxtscLChRa6KZe61Hw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-signing@3.272.0': - resolution: {integrity: sha512-4LChFK4VAR91X+dupqM8fQqYhFGE0G4Bf9rQlVTgGSbi2KUOmpqXzH0/WKE228nKuEhmH8+Qd2VPSAE2JcyAUA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-signing@3.535.0': - resolution: {integrity: sha512-Rb4sfus1Gc5paRl9JJgymJGsb/i3gJKK/rTuFZICdd1PBBE5osIOHP5CpzWYBtc5LlyZE1a2QoxPMCyG+QUGPw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-ssec@3.537.0': - resolution: {integrity: sha512-2QWMrbwd5eBy5KCYn9a15JEWBgrK2qFEKQN2lqb/6z0bhtevIOxIRfC99tzvRuPt6nixFQ+ynKuBjcfT4ZFrdQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-stack@3.272.0': - resolution: {integrity: sha512-jhwhknnPBGhfXAGV5GXUWfEhDFoP/DN8MPCO2yC5OAxyp6oVJ8lTPLkZYMTW5VL0c0eG44dXpF4Ib01V+PlDrQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-user-agent@3.272.0': - resolution: {integrity: sha512-Qy7/0fsDJxY5l0bEk7WKDfqb4Os/sCAgFR2zEvrhDtbkhYPf72ysvg/nRUTncmCbo8tOok4SJii2myk8KMfjjw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/middleware-user-agent@3.540.0': - resolution: {integrity: sha512-8Rd6wPeXDnOYzWj1XCmOKcx/Q87L0K1/EHqOBocGjLVbN3gmRxBvpmR1pRTjf7IsWfnnzN5btqtcAkfDPYQUMQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/node-config-provider@3.272.0': - resolution: {integrity: sha512-YYCIBh9g1EQo7hm2l22HX5Yr9RoPQ2RCvhzKvF1n1e8t1QH4iObQrYUtqHG4khcm64Cft8C5MwZmgzHbya5Z6Q==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/node-http-handler@3.272.0': - resolution: {integrity: sha512-VrW9PjhhngeyYp4yGYPe5S0vgZH6NwU3Po9xAgayUeE37Inr7LS1YteFMHdpgsUUeNXnh7d06CXqHo1XjtqOKA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/property-provider@3.272.0': - resolution: {integrity: sha512-V1pZTaH5eqpAt8O8CzbItHhOtzIfFuWymvwZFkAtwKuaHpnl7jjrTouV482zoq8AD/fF+VVSshwBKYA7bhidIw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/protocol-http@3.272.0': - resolution: {integrity: sha512-4JQ54v5Yn08jspNDeHo45CaSn1CvTJqS1Ywgr79eU6jBExtguOWv6LNtwVSBD9X37v88iqaxt8iu1Z3pZZAJeg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/querystring-builder@3.272.0': - resolution: {integrity: sha512-ndo++7GkdCj5tBXE6rGcITpSpZS4PfyV38wntGYAlj9liL1omk3bLZRY6uzqqkJpVHqbg2fD7O2qHNItzZgqhw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/querystring-parser@3.272.0': - resolution: {integrity: sha512-5oS4/9n6N1LZW9tI3qq/0GnCuWoOXRgcHVB+AJLRBvDbEe+GI+C/xK1tKLsfpDNgsQJHc4IPQoIt4megyZ/1+A==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/region-config-resolver@3.535.0': - resolution: {integrity: sha512-IXOznDiaItBjsQy4Fil0kzX/J3HxIOknEphqHbOfUf+LpA5ugcsxuQQONrbEQusCBnfJyymrldBvBhFmtlU9Wg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/s3-request-presigner@3.540.0': - resolution: {integrity: sha512-alm+PiQOzAIfNrabxOG/Fk9uimQq8VCdqmhRvZRG7iDwtl4yrW+ZinoDssWFUgeZgPZQTymLcslC2hvMKHgY9g==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/service-error-classification@3.272.0': - resolution: {integrity: sha512-REoltM1LK9byyIufLqx9znhSolPcHQgVHIA2S0zu5sdt5qER4OubkLAXuo4MBbisUTmh8VOOvIyUb5ijZCXq1w==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/shared-ini-file-loader@3.272.0': - resolution: {integrity: sha512-lzFPohp5sy2XvwFjZIzLVCRpC0i5cwBiaXmFzXYQZJm6FSCszHO4ax+m9yrtlyVFF/2YPWl+/bzNthy4aJtseA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/signature-v4-multi-region@3.535.0': - resolution: {integrity: sha512-tqCsEsEj8icW0SAh3NvyhRUq54Gz2pu4NM2tOSrFp7SO55heUUaRLSzYteNZCTOupH//AAaZvbN/UUTO/DrOog==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/signature-v4@3.272.0': - resolution: {integrity: sha512-pWxnHG1NqJWMwlhJ6NHNiUikOL00DHROmxah6krJPMPq4I3am2KY2Rs/8ouWhnEXKaHAv4EQhSALJ+7Mq5S4/A==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/smithy-client@3.272.0': - resolution: {integrity: sha512-pvdleJ3kaRvyRw2pIZnqL85ZlWBOZrPKmR9I69GCvlyrfdjRBhbSjIEZ+sdhZudw0vdHxq25AGoLUXhofVLf5Q==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/token-providers@3.272.0': - resolution: {integrity: sha512-0GISJ4IKN2rXvbSddB775VjBGSKhYIGQnAdMqbvxi9LB6pSvVxcH9aIL28G0spiuL+dy3yGQZ8RlJPAyP9JW9A==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/token-providers@3.540.0': - resolution: {integrity: sha512-9BvtiVEZe5Ev88Wa4ZIUbtT6BVcPwhxmVInQ6c12MYNb0WNL54BN6wLy/eknAfF05gpX2/NDU2pUDOyMPdm/+g==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/types@3.272.0': - resolution: {integrity: sha512-MmmL6vxMGP5Bsi+4wRx4mxYlU/LX6M0noOXrDh/x5FfG7/4ZOar/nDxqDadhJtNM88cuWVHZWY59P54JzkGWmA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/types@3.535.0': - resolution: {integrity: sha512-aY4MYfduNj+sRR37U7XxYR8wemfbKP6lx00ze2M2uubn7mZotuVrWYAafbMSXrdEMSToE5JDhr28vArSOoLcSg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/url-parser@3.272.0': - resolution: {integrity: sha512-vX/Tx02PlnQ/Kgtf5TnrNDHPNbY+amLZjW0Z1d9vzAvSZhQ4i9Y18yxoRDIaDTCNVRDjdhV8iuctW+05PB5JtQ==} - - '@aws-sdk/util-arn-parser@3.535.0': - resolution: {integrity: sha512-smVo29nUPAOprp8Z5Y3GHuhiOtw6c8/EtLCm5AVMtRsTPw4V414ZXL2H66tzmb5kEeSzQlbfBSBEdIFZoxO9kg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-base64@3.208.0': - resolution: {integrity: sha512-PQniZph5A6N7uuEOQi+1hnMz/FSOK/8kMFyFO+4DgA1dZ5pcKcn5wiFwHkcTb/BsgVqQa3Jx0VHNnvhlS8JyTg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-body-length-browser@3.188.0': - resolution: {integrity: sha512-8VpnwFWXhnZ/iRSl9mTf+VKOX9wDE8QtN4bj9pBfxwf90H1X7E8T6NkiZD3k+HubYf2J94e7DbeHs7fuCPW5Qg==} - - '@aws-sdk/util-body-length-node@3.208.0': - resolution: {integrity: sha512-3zj50e5g7t/MQf53SsuuSf0hEELzMtD8RX8C76f12OSRo2Bca4FLLYHe0TZbxcfQHom8/hOaeZEyTyMogMglqg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-buffer-from@3.208.0': - resolution: {integrity: sha512-7L0XUixNEFcLUGPeBF35enCvB9Xl+K6SQsmbrPk1P3mlV9mguWSDQqbOBwY1Ir0OVbD6H/ZOQU7hI/9RtRI0Zw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-config-provider@3.208.0': - resolution: {integrity: sha512-DSRqwrERUsT34ug+anlMBIFooBEGwM8GejC7q00Y/9IPrQy50KnG5PW2NiTjuLKNi7pdEOlwTSEocJE15eDZIg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-defaults-mode-browser@3.272.0': - resolution: {integrity: sha512-W8ZVJSZRuUBg8l0JEZzUc+9fKlthVp/cdE+pFeF8ArhZelOLCiaeCrMaZAeJusaFzIpa6cmOYQAjtSMVyrwRtg==} - engines: {node: '>= 10.0.0'} - - '@aws-sdk/util-defaults-mode-node@3.272.0': - resolution: {integrity: sha512-U0NTcbMw6KFk7uz/avBmfxQSTREEiX6JDMH68oN/3ux4AICd2I4jHyxnloSWGuiER1FxZf1dEJ8ZTwy8Ibl21Q==} - engines: {node: '>= 10.0.0'} - - '@aws-sdk/util-endpoints@3.272.0': - resolution: {integrity: sha512-c4MPUaJt2G6gGpoiwIOqDfUa98c1J63RpYvf/spQEKOtC/tF5Gfqlxuq8FnAl5lHnrqj1B9ZXLLxFhHtDR0IiQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-endpoints@3.540.0': - resolution: {integrity: sha512-1kMyQFAWx6f8alaI6UT65/5YW/7pDWAKAdNwL6vuJLea03KrZRX3PMoONOSJpAS5m3Ot7HlWZvf3wZDNTLELZw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-format-url@3.535.0': - resolution: {integrity: sha512-ElbNkm0bddu53CuW44Iuux1ZbTV50fydbSh/4ypW3LrmUvHx193ogj0HXQ7X26kmmo9rXcsrLdM92yIeTjidVg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-hex-encoding@3.201.0': - resolution: {integrity: sha512-7t1vR1pVxKx0motd3X9rI3m/xNp78p3sHtP5yo4NP4ARpxyJ0fokBomY8ScaH2D/B+U5o9ARxldJUdMqyBlJcA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-locate-window@3.208.0': - resolution: {integrity: sha512-iua1A2+P7JJEDHVgvXrRJSvsnzG7stYSGQnBVphIUlemwl6nN5D+QrgbjECtrbxRz8asYFHSzhdhECqN+tFiBg==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-middleware@3.272.0': - resolution: {integrity: sha512-Abw8m30arbwxqmeMMha5J11ESpHUNmCeSqSzE8/C4B8jZQtHY4kq7f+upzcNIQ11lsd+uzBEzNG3+dDRi0XOJQ==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-retry@3.272.0': - resolution: {integrity: sha512-Ngha5414LR4gRHURVKC9ZYXsEJhMkm+SJ+44wlzOhavglfdcKKPUsibz5cKY1jpUV7oKECwaxHWpBB8r6h+hOg==} - engines: {node: '>= 14.0.0'} - - '@aws-sdk/util-uri-escape@3.201.0': - resolution: {integrity: sha512-TeTWbGx4LU2c5rx0obHeDFeO9HvwYwQtMh1yniBz00pQb6Qt6YVOETVQikRZ+XRQwEyCg/dA375UplIpiy54mA==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/util-user-agent-browser@3.272.0': - resolution: {integrity: sha512-Lp5QX5bH6uuwBlIdr7w7OAcAI50ttyskb++yUr9i+SPvj6RI2dsfIBaK4mDg1qUdM5LeUdvIyqwj3XHjFKAAvA==} - - '@aws-sdk/util-user-agent-browser@3.535.0': - resolution: {integrity: sha512-RWMcF/xV5n+nhaA/Ff5P3yNP3Kur/I+VNZngog4TEs92oB/nwOdAg/2JL8bVAhUbMrjTjpwm7PItziYFQoqyig==} - - '@aws-sdk/util-user-agent-node@3.272.0': - resolution: {integrity: sha512-ljK+R3l+Q1LIHrcR+Knhk0rmcSkfFadZ8V+crEGpABf/QUQRg7NkZMsoe814tfBO5F7tMxo8wwwSdaVNNHtoRA==} - engines: {node: '>=14.0.0'} - peerDependencies: - aws-crt: '>=1.0.0' - peerDependenciesMeta: - aws-crt: - optional: true - - '@aws-sdk/util-user-agent-node@3.535.0': - resolution: {integrity: sha512-dRek0zUuIT25wOWJlsRm97nTkUlh1NDcLsQZIN2Y8KxhwoXXWtJs5vaDPT+qAg+OpcNj80i1zLR/CirqlFg/TQ==} - engines: {node: '>=14.0.0'} - peerDependencies: - aws-crt: '>=1.0.0' - peerDependenciesMeta: - aws-crt: - optional: true - - '@aws-sdk/util-utf8-browser@3.259.0': - resolution: {integrity: sha512-UvFa/vR+e19XookZF8RzFZBrw2EUkQWxiBW0yYQAhvk3C+QVGl0H3ouca8LDBlBfQKXwmW3huo/59H8rwb1wJw==} - - '@aws-sdk/util-utf8@3.254.0': - resolution: {integrity: sha512-14Kso/eIt5/qfIBmhEL9L1IfyUqswjSTqO2mY7KOzUZ9SZbwn3rpxmtkhmATkRjD7XIlLKaxBkI7tU9Zjzj8Kw==} - engines: {node: '>=14.0.0'} - - '@aws-sdk/xml-builder@3.535.0': - resolution: {integrity: sha512-VXAq/Jz8KIrU84+HqsOJhIKZqG0PNTdi6n6PFQ4xJf44ZQHD/5C7ouH4qCFX5XgZXcgbRIcMVVYGC6Jye0dRng==} - engines: {node: '>=14.0.0'} - - '@babel/code-frame@7.18.6': - resolution: {integrity: sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==} - engines: {node: '>=6.9.0'} - - '@babel/code-frame@7.23.5': - resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==} - engines: {node: '>=6.9.0'} - - '@babel/code-frame@7.24.2': - resolution: {integrity: sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==} - engines: {node: '>=6.9.0'} - - '@babel/compat-data@7.21.0': - resolution: {integrity: sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==} - engines: {node: '>=6.9.0'} - - '@babel/compat-data@7.23.5': - resolution: {integrity: sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==} - engines: {node: '>=6.9.0'} - - '@babel/core@7.21.0': - resolution: {integrity: sha512-PuxUbxcW6ZYe656yL3EAhpy7qXKq0DmYsrJLpbB8XrsCP9Nm+XCg9XFMb5vIDliPD7+U/+M+QJlH17XOcB7eXA==} - engines: {node: '>=6.9.0'} - - '@babel/core@7.23.7': - resolution: {integrity: sha512-+UpDgowcmqe36d4NwqvKsyPMlOLNGMsfMmQ5WGCu+siCe3t3dfe9njrzGfdN4qq+bcNUt0+Vw6haRxBOycs4dw==} - engines: {node: '>=6.9.0'} - - '@babel/core@7.24.3': - resolution: {integrity: sha512-5FcvN1JHw2sHJChotgx8Ek0lyuh4kCKelgMTTqhYJJtloNvUfpAFMeNQUtdlIaktwrSV9LtCdqwk48wL2wBacQ==} - engines: {node: '>=6.9.0'} - - '@babel/generator@7.21.1': - resolution: {integrity: sha512-1lT45bAYlQhFn/BHivJs43AiW2rg3/UbLyShGfF3C0KmHvO5fSghWd5kBJy30kpRRucGzXStvnnCFniCR2kXAA==} - engines: {node: '>=6.9.0'} - - '@babel/generator@7.23.6': - resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==} - engines: {node: '>=6.9.0'} - - '@babel/generator@7.24.1': - resolution: {integrity: sha512-DfCRfZsBcrPEHUfuBMgbJ1Ut01Y/itOs+hY2nFLgqsqXd52/iSiVq5TITtUasIUgm+IIKdY2/1I7auiQOEeC9A==} - engines: {node: '>=6.9.0'} - - '@babel/helper-annotate-as-pure@7.22.5': - resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-builder-binary-assignment-operator-visitor@7.22.15': - resolution: {integrity: sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-compilation-targets@7.20.7': - resolution: {integrity: sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-compilation-targets@7.23.6': - resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-create-class-features-plugin@7.23.7': - resolution: {integrity: sha512-xCoqR/8+BoNnXOY7RVSgv6X+o7pmT5q1d+gGcRlXYkI+9B31glE4jeejhKVpA04O1AtzOt7OSQ6VYKP5FcRl9g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-create-regexp-features-plugin@7.22.15': - resolution: {integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-define-polyfill-provider@0.4.4': - resolution: {integrity: sha512-QcJMILQCu2jm5TFPGA3lCpJJTeEP+mqeXooG/NZbg/h5FTFi6V0+99ahlRsW8/kRLyb24LZVCCiclDedhLKcBA==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - - '@babel/helper-define-polyfill-provider@0.5.0': - resolution: {integrity: sha512-NovQquuQLAQ5HuyjCz7WQP9MjRj7dx++yspwiyUiGl9ZyadHRSql1HZh5ogRd8W8w6YM6EQ/NTB8rgjLt5W65Q==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - - '@babel/helper-environment-visitor@7.18.9': - resolution: {integrity: sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-environment-visitor@7.22.20': - resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-function-name@7.21.0': - resolution: {integrity: sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-function-name@7.23.0': - resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-hoist-variables@7.18.6': - resolution: {integrity: sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==} - engines: {node: '>=6.9.0'} - - '@babel/helper-hoist-variables@7.22.5': - resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-member-expression-to-functions@7.23.0': - resolution: {integrity: sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-imports@7.18.6': - resolution: {integrity: sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-imports@7.22.15': - resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-transforms@7.21.0': - resolution: {integrity: sha512-eD/JQ21IG2i1FraJnTMbUarAUkA7G988ofehG5MDCRXaUU91rEBJuCeSoou2Sk1y4RbLYXzqEg1QLwEmRU4qcQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-transforms@7.23.3': - resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-optimise-call-expression@7.22.5': - resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-plugin-utils@7.20.2': - resolution: {integrity: sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-plugin-utils@7.22.5': - resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-remap-async-to-generator@7.22.20': - resolution: {integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-replace-supers@7.22.20': - resolution: {integrity: sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-simple-access@7.20.2': - resolution: {integrity: sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-simple-access@7.22.5': - resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} - engines: {node: '>=6.9.0'} - - '@babel/helper-skip-transparent-expression-wrappers@7.22.5': - resolution: {integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==} - engines: {node: '>=6.9.0'} - - '@babel/helper-split-export-declaration@7.18.6': - resolution: {integrity: sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-split-export-declaration@7.22.6': - resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} - engines: {node: '>=6.9.0'} - - '@babel/helper-string-parser@7.19.4': - resolution: {integrity: sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-string-parser@7.23.4': - resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-identifier@7.19.1': - resolution: {integrity: sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-identifier@7.22.20': - resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-option@7.21.0': - resolution: {integrity: sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-option@7.23.5': - resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-wrap-function@7.22.20': - resolution: {integrity: sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==} - engines: {node: '>=6.9.0'} - - '@babel/helpers@7.21.0': - resolution: {integrity: sha512-XXve0CBtOW0pd7MRzzmoyuSj0e3SEzj8pgyFxnTT1NJZL38BD1MK7yYrm8yefRPIDvNNe14xR4FdbHwpInD4rA==} - engines: {node: '>=6.9.0'} - - '@babel/helpers@7.23.8': - resolution: {integrity: sha512-KDqYz4PiOWvDFrdHLPhKtCThtIcKVy6avWD2oG4GEvyQ+XDZwHD4YQd+H2vNMnq2rkdxsDkU82T+Vk8U/WXHRQ==} - engines: {node: '>=6.9.0'} - - '@babel/helpers@7.24.1': - resolution: {integrity: sha512-BpU09QqEe6ZCHuIHFphEFgvNSrubve1FtyMton26ekZ85gRGi6LrTF7zArARp2YvyFxloeiRmtSCq5sjh1WqIg==} - engines: {node: '>=6.9.0'} - - '@babel/highlight@7.18.6': - resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==} - engines: {node: '>=6.9.0'} - - '@babel/highlight@7.23.4': - resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==} - engines: {node: '>=6.9.0'} - - '@babel/highlight@7.24.2': - resolution: {integrity: sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==} - engines: {node: '>=6.9.0'} - - '@babel/parser@7.21.1': - resolution: {integrity: sha512-JzhBFpkuhBNYUY7qs+wTzNmyCWUHEaAFpQQD2YfU1rPL38/L43Wvid0fFkiOCnHvsGncRZgEPyGnltABLcVDTg==} - engines: {node: '>=6.0.0'} - hasBin: true - - '@babel/parser@7.23.6': - resolution: {integrity: sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==} - engines: {node: '>=6.0.0'} - hasBin: true - - '@babel/parser@7.24.1': - resolution: {integrity: sha512-Zo9c7N3xdOIQrNip7Lc9wvRPzlRtovHVE4lkz8WEDr7uYh/GMQhSiIgFxGIArRHYdJE5kxtZjAf8rT0xhdLCzg==} - engines: {node: '>=6.0.0'} - hasBin: true - - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.23.3': - resolution: {integrity: sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.23.3': - resolution: {integrity: sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.13.0 - - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.23.7': - resolution: {integrity: sha512-LlRT7HgaifEpQA1ZgLVOIJZZFVPWN5iReq/7/JixwBtwcoeVGDBD53ZV28rrsLYOZs1Y/EHhA8N/Z6aazHR8cw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/plugin-proposal-export-namespace-from@7.18.9': - resolution: {integrity: sha512-k1NtHyOMvlDDFeb9G5PhUXuGj8m/wiwojgQVEhJ/fsVsMCpLyOP4h0uGEjYJKrRI+EVPlb5Jk+Gt9P97lOGwtA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2': - resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-async-generators@7.8.4': - resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-bigint@7.8.3': - resolution: {integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-class-properties@7.12.13': - resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-class-static-block@7.14.5': - resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-dynamic-import@7.8.3': - resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-export-namespace-from@7.8.3': - resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-flow@7.23.3': - resolution: {integrity: sha512-YZiAIpkJAwQXBJLIQbRFayR5c+gJ35Vcz3bg954k7cd73zqjvhacJuL9RbrzPz8qPmZdgqP6EUKwy0PCNhaaPA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-import-assertions@7.23.3': - resolution: {integrity: sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-import-attributes@7.23.3': - resolution: {integrity: sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-import-meta@7.10.4': - resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-json-strings@7.8.3': - resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-jsx@7.23.3': - resolution: {integrity: sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-logical-assignment-operators@7.10.4': - resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3': - resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-numeric-separator@7.10.4': - resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-object-rest-spread@7.8.3': - resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-optional-catch-binding@7.8.3': - resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-optional-chaining@7.8.3': - resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-private-property-in-object@7.14.5': - resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-top-level-await@7.14.5': - resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-typescript@7.23.3': - resolution: {integrity: sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-unicode-sets-regex@7.18.6': - resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/plugin-transform-arrow-functions@7.23.3': - resolution: {integrity: sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-async-generator-functions@7.23.7': - resolution: {integrity: sha512-PdxEpL71bJp1byMG0va5gwQcXHxuEYC/BgI/e88mGTtohbZN28O5Yit0Plkkm/dBzCF/BxmbNcses1RH1T+urA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-async-to-generator@7.23.3': - resolution: {integrity: sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-block-scoped-functions@7.23.3': - resolution: {integrity: sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-block-scoping@7.23.4': - resolution: {integrity: sha512-0QqbP6B6HOh7/8iNR4CQU2Th/bbRtBp4KS9vcaZd1fZ0wSh5Fyssg0UCIHwxh+ka+pNDREbVLQnHCMHKZfPwfw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-class-properties@7.23.3': - resolution: {integrity: sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-class-static-block@7.23.4': - resolution: {integrity: sha512-nsWu/1M+ggti1SOALj3hfx5FXzAY06fwPJsUZD4/A5e1bWi46VUIWtD+kOX6/IdhXGsXBWllLFDSnqSCdUNydQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.12.0 - - '@babel/plugin-transform-classes@7.23.8': - resolution: {integrity: sha512-yAYslGsY1bX6Knmg46RjiCiNSwJKv2IUC8qOdYKqMMr0491SXFhcHqOdRDeCRohOOIzwN/90C6mQ9qAKgrP7dg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-computed-properties@7.23.3': - resolution: {integrity: sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-destructuring@7.23.3': - resolution: {integrity: sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-dotall-regex@7.23.3': - resolution: {integrity: sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-duplicate-keys@7.23.3': - resolution: {integrity: sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-dynamic-import@7.23.4': - resolution: {integrity: sha512-V6jIbLhdJK86MaLh4Jpghi8ho5fGzt3imHOBu/x0jlBaPYqDoWz4RDXjmMOfnh+JWNaQleEAByZLV0QzBT4YQQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-exponentiation-operator@7.23.3': - resolution: {integrity: sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-export-namespace-from@7.23.4': - resolution: {integrity: sha512-GzuSBcKkx62dGzZI1WVgTWvkkz84FZO5TC5T8dl/Tht/rAla6Dg/Mz9Yhypg+ezVACf/rgDuQt3kbWEv7LdUDQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-flow-strip-types@7.23.3': - resolution: {integrity: sha512-26/pQTf9nQSNVJCrLB1IkHUKyPxR+lMrH2QDPG89+Znu9rAMbtrybdbWeE9bb7gzjmE5iXHEY+e0HUwM6Co93Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-for-of@7.23.6': - resolution: {integrity: sha512-aYH4ytZ0qSuBbpfhuofbg/e96oQ7U2w1Aw/UQmKT+1l39uEhUPoFS3fHevDc1G0OvewyDudfMKY1OulczHzWIw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-function-name@7.23.3': - resolution: {integrity: sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-json-strings@7.23.4': - resolution: {integrity: sha512-81nTOqM1dMwZ/aRXQ59zVubN9wHGqk6UtqRK+/q+ciXmRy8fSolhGVvG09HHRGo4l6fr/c4ZhXUQH0uFW7PZbg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-literals@7.23.3': - resolution: {integrity: sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-logical-assignment-operators@7.23.4': - resolution: {integrity: sha512-Mc/ALf1rmZTP4JKKEhUwiORU+vcfarFVLfcFiolKUo6sewoxSEgl36ak5t+4WamRsNr6nzjZXQjM35WsU+9vbg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-member-expression-literals@7.23.3': - resolution: {integrity: sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-modules-amd@7.23.3': - resolution: {integrity: sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-modules-commonjs@7.20.11': - resolution: {integrity: sha512-S8e1f7WQ7cimJQ51JkAaDrEtohVEitXjgCGAS2N8S31Y42E+kWwfSz83LYz57QdBm7q9diARVqanIaH2oVgQnw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-modules-commonjs@7.23.3': - resolution: {integrity: sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-modules-systemjs@7.23.3': - resolution: {integrity: sha512-ZxyKGTkF9xT9YJuKQRo19ewf3pXpopuYQd8cDXqNzc3mUNbOME0RKMoZxviQk74hwzfQsEe66dE92MaZbdHKNQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-modules-umd@7.23.3': - resolution: {integrity: sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-named-capturing-groups-regex@7.22.5': - resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/plugin-transform-new-target@7.23.3': - resolution: {integrity: sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-nullish-coalescing-operator@7.23.4': - resolution: {integrity: sha512-jHE9EVVqHKAQx+VePv5LLGHjmHSJR76vawFPTdlxR/LVJPfOEGxREQwQfjuZEOPTwG92X3LINSh3M40Rv4zpVA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-numeric-separator@7.23.4': - resolution: {integrity: sha512-mps6auzgwjRrwKEZA05cOwuDc9FAzoyFS4ZsG/8F43bTLf/TgkJg7QXOrPO1JO599iA3qgK9MXdMGOEC8O1h6Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-object-rest-spread@7.23.4': - resolution: {integrity: sha512-9x9K1YyeQVw0iOXJlIzwm8ltobIIv7j2iLyP2jIhEbqPRQ7ScNgwQufU2I0Gq11VjyG4gI4yMXt2VFags+1N3g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-object-super@7.23.3': - resolution: {integrity: sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-optional-catch-binding@7.23.4': - resolution: {integrity: sha512-XIq8t0rJPHf6Wvmbn9nFxU6ao4c7WhghTR5WyV8SrJfUFzyxhCm4nhC+iAp3HFhbAKLfYpgzhJ6t4XCtVwqO5A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-optional-chaining@7.23.4': - resolution: {integrity: sha512-ZU8y5zWOfjM5vZ+asjgAPwDaBjJzgufjES89Rs4Lpq63O300R/kOz30WCLo6BxxX6QVEilwSlpClnG5cZaikTA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-parameters@7.23.3': - resolution: {integrity: sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-private-methods@7.23.3': - resolution: {integrity: sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-private-property-in-object@7.23.4': - resolution: {integrity: sha512-9G3K1YqTq3F4Vt88Djx1UZ79PDyj+yKRnUy7cZGSMe+a7jkwD259uKKuUzQlPkGam7R+8RJwh5z4xO27fA1o2A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-property-literals@7.23.3': - resolution: {integrity: sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-constant-elements@7.23.3': - resolution: {integrity: sha512-zP0QKq/p6O42OL94udMgSfKXyse4RyJ0JqbQ34zDAONWjyrEsghYEyTSK5FIpmXmCpB55SHokL1cRRKHv8L2Qw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-display-name@7.23.3': - resolution: {integrity: sha512-GnvhtVfA2OAtzdX58FJxU19rhoGeQzyVndw3GgtdECQvQFXPEZIOVULHVZGAYmOgmqjXpVpfocAbSjh99V/Fqw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-jsx-development@7.22.5': - resolution: {integrity: sha512-bDhuzwWMuInwCYeDeMzyi7TaBgRQei6DqxhbyniL7/VG4RSS7HtSL2QbY4eESy1KJqlWt8g3xeEBGPuo+XqC8A==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-jsx@7.23.4': - resolution: {integrity: sha512-5xOpoPguCZCRbo/JeHlloSkTA8Bld1J/E1/kLfD1nsuiW1m8tduTA1ERCgIZokDflX/IBzKcqR3l7VlRgiIfHA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-pure-annotations@7.23.3': - resolution: {integrity: sha512-qMFdSS+TUhB7Q/3HVPnEdYJDQIk57jkntAwSuz9xfSE4n+3I+vHYCli3HoHawN1Z3RfCz/y1zXA/JXjG6cVImQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-regenerator@7.23.3': - resolution: {integrity: sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-reserved-words@7.23.3': - resolution: {integrity: sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-runtime@7.23.7': - resolution: {integrity: sha512-fa0hnfmiXc9fq/weK34MUV0drz2pOL/vfKWvN7Qw127hiUPabFCUMgAbYWcchRzMJit4o5ARsK/s+5h0249pLw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-shorthand-properties@7.23.3': - resolution: {integrity: sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-spread@7.23.3': - resolution: {integrity: sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-sticky-regex@7.23.3': - resolution: {integrity: sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-template-literals@7.23.3': - resolution: {integrity: sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-typeof-symbol@7.23.3': - resolution: {integrity: sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-typescript@7.23.6': - resolution: {integrity: sha512-6cBG5mBvUu4VUD04OHKnYzbuHNP8huDsD3EDqqpIpsswTDoqHCjLoHb6+QgsV1WsT2nipRqCPgxD3LXnEO7XfA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-unicode-escapes@7.23.3': - resolution: {integrity: sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-unicode-property-regex@7.23.3': - resolution: {integrity: sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-unicode-regex@7.23.3': - resolution: {integrity: sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-unicode-sets-regex@7.23.3': - resolution: {integrity: sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/preset-env@7.23.8': - resolution: {integrity: sha512-lFlpmkApLkEP6woIKprO6DO60RImpatTQKtz4sUcDjVcK8M8mQ4sZsuxaTMNOZf0sqAq/ReYW1ZBHnOQwKpLWA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/preset-flow@7.23.3': - resolution: {integrity: sha512-7yn6hl8RIv+KNk6iIrGZ+D06VhVY35wLVf23Cz/mMu1zOr7u4MMP4j0nZ9tLf8+4ZFpnib8cFYgB/oYg9hfswA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/preset-modules@0.1.6-no-external-plugins': - resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==} - peerDependencies: - '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 - - '@babel/preset-react@7.23.3': - resolution: {integrity: sha512-tbkHOS9axH6Ysf2OUEqoSZ6T3Fa2SrNH6WTWSPBboxKzdxNc9qOICeLXkNG0ZEwbQ1HY8liwOce4aN/Ceyuq6w==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/preset-typescript@7.23.3': - resolution: {integrity: sha512-17oIGVlqz6CchO9RFYn5U6ZpWRZIngayYCtrPRSgANSwC2V1Jb+iP74nVxzzXJte8b8BYxrL1yY96xfhTBrNNQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/register@7.23.7': - resolution: {integrity: sha512-EjJeB6+kvpk+Y5DAkEAmbOBEFkh9OASx0huoEkqYTFxAZHzOAX2Oh5uwAUuL2rUddqfM0SA+KPXV2TbzoZ2kvQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/regjsgen@0.8.0': - resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} - - '@babel/runtime@7.23.8': - resolution: {integrity: sha512-Y7KbAP984rn1VGMbGqKmBLio9V7y5Je9GvU4rQPCPinCyNfUcToxIXl06d59URp/F3LwinvODxab5N/G6qggkw==} - engines: {node: '>=6.9.0'} - - '@babel/template@7.20.7': - resolution: {integrity: sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==} - engines: {node: '>=6.9.0'} - - '@babel/template@7.22.15': - resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==} - engines: {node: '>=6.9.0'} - - '@babel/template@7.24.0': - resolution: {integrity: sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==} - engines: {node: '>=6.9.0'} - - '@babel/traverse@7.21.0': - resolution: {integrity: sha512-Xdt2P1H4LKTO8ApPfnO1KmzYMFpp7D/EinoXzLYN/cHcBNrVCAkAtGUcXnHXrl/VGktureU6fkQrHSBE2URfoA==} - engines: {node: '>=6.9.0'} - - '@babel/traverse@7.23.7': - resolution: {integrity: sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==} - engines: {node: '>=6.9.0'} - - '@babel/traverse@7.24.1': - resolution: {integrity: sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==} - engines: {node: '>=6.9.0'} - - '@babel/types@7.21.0': - resolution: {integrity: sha512-uR7NWq2VNFnDi7EYqiRz2Jv/VQIu38tu64Zy8TX2nQFQ6etJ9V/Rr2msW8BS132mum2rL645qpDrLtAJtVpuow==} - engines: {node: '>=6.9.0'} - - '@babel/types@7.23.6': - resolution: {integrity: sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==} - engines: {node: '>=6.9.0'} - - '@babel/types@7.24.0': - resolution: {integrity: sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==} - engines: {node: '>=6.9.0'} - - '@base2/pretty-print-object@1.0.1': - resolution: {integrity: sha512-4iri8i1AqYHJE2DstZYkyEprg6Pq6sKx3xn5FpySk9sNhH7qN2LLlHJCfDTZRILNwQNPD7mATWM0TBui7uC1pA==} - - '@bcoe/v8-coverage@0.2.3': - resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} - - '@colors/colors@1.5.0': - resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} - engines: {node: '>=0.1.90'} - - '@cspotcode/source-map-support@0.8.1': - resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} - engines: {node: '>=12'} - - '@dabh/diagnostics@2.0.3': - resolution: {integrity: sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==} - - '@discoveryjs/json-ext@0.5.7': - resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==} - engines: {node: '>=10.0.0'} - - '@emotion/babel-plugin@11.10.6': - resolution: {integrity: sha512-p2dAqtVrkhSa7xz1u/m9eHYdLi+en8NowrmXeF/dKtJpU8lCWli8RUAati7NcSl0afsBott48pdnANuD0wh9QQ==} - - '@emotion/cache@11.10.5': - resolution: {integrity: sha512-dGYHWyzTdmK+f2+EnIGBpkz1lKc4Zbj2KHd4cX3Wi8/OWr5pKslNjc3yABKH4adRGCvSX4VDC0i04mrrq0aiRA==} - - '@emotion/hash@0.9.0': - resolution: {integrity: sha512-14FtKiHhy2QoPIzdTcvh//8OyBlknNs2nXRwIhG904opCby3l+9Xaf/wuPvICBF0rc1ZCNBd3nKe9cd2mecVkQ==} - - '@emotion/is-prop-valid@0.8.8': - resolution: {integrity: sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==} - - '@emotion/memoize@0.7.4': - resolution: {integrity: sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==} - - '@emotion/memoize@0.8.0': - resolution: {integrity: sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA==} - - '@emotion/react@11.10.6': - resolution: {integrity: sha512-6HT8jBmcSkfzO7mc+N1L9uwvOnlcGoix8Zn7srt+9ga0MjREo6lRpuVX0kzo6Jp6oTqDhREOFsygN6Ew4fEQbw==} - peerDependencies: - '@types/react': '*' - react: '>=16.8.0' - peerDependenciesMeta: - '@types/react': - optional: true - - '@emotion/serialize@1.1.1': - resolution: {integrity: sha512-Zl/0LFggN7+L1liljxXdsVSVlg6E/Z/olVWpfxUTxOAmi8NU7YoeWeLfi1RmnB2TATHoaWwIBRoL+FvAJiTUQA==} - - '@emotion/server@11.10.0': - resolution: {integrity: sha512-MTvJ21JPo9aS02GdjFW4nhdwOi2tNNpMmAM/YED0pkxzjDNi5WbiTwXqaCnvLc2Lr8NFtjhT0az1vTJyLIHYcw==} - peerDependencies: - '@emotion/css': ^11.0.0-rc.0 - peerDependenciesMeta: - '@emotion/css': - optional: true - - '@emotion/sheet@1.2.1': - resolution: {integrity: sha512-zxRBwl93sHMsOj4zs+OslQKg/uhF38MB+OMKoCrVuS0nyTkqnau+BM3WGEoOptg9Oz45T/aIGs1qbVAsEFo3nA==} - - '@emotion/unitless@0.8.0': - resolution: {integrity: sha512-VINS5vEYAscRl2ZUDiT3uMPlrFQupiKgHz5AA4bCH1miKBg4qtwkim1qPmJj/4WG6TreYMY111rEFsjupcOKHw==} - - '@emotion/use-insertion-effect-with-fallbacks@1.0.0': - resolution: {integrity: sha512-1eEgUGmkaljiBnRMTdksDV1W4kUnmwgp7X9G8B++9GYwl1lUdqSndSriIrTJ0N7LQaoauY9JJ2yhiOYK5+NI4A==} - peerDependencies: - react: '>=16.8.0' - - '@emotion/utils@1.2.0': - resolution: {integrity: sha512-sn3WH53Kzpw8oQ5mgMmIzzyAaH2ZqFEbozVVBSYp538E06OSE6ytOp7pRAjNQR+Q/orwqdQYJSe2m3hCOeznkw==} - - '@emotion/weak-memoize@0.3.0': - resolution: {integrity: sha512-AHPmaAx+RYfZz0eYu6Gviiagpmiyw98ySSlQvCUhVGDRtDFe4DBS0x1bSjdF3gqUDYOczB+yYvBTtEylYSdRhg==} - - '@esbuild/aix-ppc64@0.19.11': - resolution: {integrity: sha512-FnzU0LyE3ySQk7UntJO4+qIiQgI7KoODnZg5xzXIrFJlKd2P2gwHsHY4927xj9y5PJmJSzULiUCWmv7iWnNa7g==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [aix] - - '@esbuild/aix-ppc64@0.25.9': - resolution: {integrity: sha512-OaGtL73Jck6pBKjNIe24BnFE6agGl+6KxDtTfHhy1HmhthfKouEcOhqpSL64K4/0WCtbKFLOdzD/44cJ4k9opA==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [aix] - - '@esbuild/android-arm64@0.18.6': - resolution: {integrity: sha512-pL0Ci8P9q1sWbtPx8CXbc8JvPvvYdJJQ+LO09PLFsbz3aYNdFBGWJjiHU+CaObO4Ames+GOFpXRAJZS2L3ZK/A==} - engines: {node: '>=12'} - cpu: [arm64] - os: [android] - - '@esbuild/android-arm64@0.19.11': - resolution: {integrity: sha512-aiu7K/5JnLj//KOnOfEZ0D90obUkRzDMyqd/wNAUQ34m4YUPVhRZpnqKV9uqDGxT7cToSDnIHsGooyIczu9T+Q==} - engines: {node: '>=12'} - cpu: [arm64] - os: [android] - - '@esbuild/android-arm64@0.25.9': - resolution: {integrity: sha512-IDrddSmpSv51ftWslJMvl3Q2ZT98fUSL2/rlUXuVqRXHCs5EUF1/f+jbjF5+NG9UffUDMCiTyh8iec7u8RlTLg==} - engines: {node: '>=18'} - cpu: [arm64] - os: [android] - - '@esbuild/android-arm@0.18.6': - resolution: {integrity: sha512-J3lwhDSXBBppSzm/LC1uZ8yKSIpExc+5T8MxrYD9KNVZG81FOAu2VF2gXi/6A/LwDDQQ+b6DpQbYlo3VwxFepQ==} - engines: {node: '>=12'} - cpu: [arm] - os: [android] - - '@esbuild/android-arm@0.19.11': - resolution: {integrity: sha512-5OVapq0ClabvKvQ58Bws8+wkLCV+Rxg7tUVbo9xu034Nm536QTII4YzhaFriQ7rMrorfnFKUsArD2lqKbFY4vw==} - engines: {node: '>=12'} - cpu: [arm] - os: [android] - - '@esbuild/android-arm@0.25.9': - resolution: {integrity: sha512-5WNI1DaMtxQ7t7B6xa572XMXpHAaI/9Hnhk8lcxF4zVN4xstUgTlvuGDorBguKEnZO70qwEcLpfifMLoxiPqHQ==} - engines: {node: '>=18'} - cpu: [arm] - os: [android] - - '@esbuild/android-x64@0.18.6': - resolution: {integrity: sha512-hE2vZxOlJ05aY28lUpB0y0RokngtZtcUB+TVl9vnLEnY0z/8BicSvrkThg5/iI1rbf8TwXrbr2heEjl9fLf+EA==} - engines: {node: '>=12'} - cpu: [x64] - os: [android] - - '@esbuild/android-x64@0.19.11': - resolution: {integrity: sha512-eccxjlfGw43WYoY9QgB82SgGgDbibcqyDTlk3l3C0jOVHKxrjdc9CTwDUQd0vkvYg5um0OH+GpxYvp39r+IPOg==} - engines: {node: '>=12'} - cpu: [x64] - os: [android] - - '@esbuild/android-x64@0.25.9': - resolution: {integrity: sha512-I853iMZ1hWZdNllhVZKm34f4wErd4lMyeV7BLzEExGEIZYsOzqDWDf+y082izYUE8gtJnYHdeDpN/6tUdwvfiw==} - engines: {node: '>=18'} - cpu: [x64] - os: [android] - - '@esbuild/darwin-arm64@0.18.6': - resolution: {integrity: sha512-/tuyl4R+QhhoROQtuQj9E/yfJtZNdv2HKaHwYhhHGQDN1Teziem2Kh7BWQMumfiY7Lu9g5rO7scWdGE4OsQ6MQ==} - engines: {node: '>=12'} - cpu: [arm64] - os: [darwin] - - '@esbuild/darwin-arm64@0.19.11': - resolution: {integrity: sha512-ETp87DRWuSt9KdDVkqSoKoLFHYTrkyz2+65fj9nfXsaV3bMhTCjtQfw3y+um88vGRKRiF7erPrh/ZuIdLUIVxQ==} - engines: {node: '>=12'} - cpu: [arm64] - os: [darwin] - - '@esbuild/darwin-arm64@0.25.9': - resolution: {integrity: sha512-XIpIDMAjOELi/9PB30vEbVMs3GV1v2zkkPnuyRRURbhqjyzIINwj+nbQATh4H9GxUgH1kFsEyQMxwiLFKUS6Rg==} - engines: {node: '>=18'} - cpu: [arm64] - os: [darwin] - - '@esbuild/darwin-x64@0.18.6': - resolution: {integrity: sha512-L7IQga2pDT+14Ti8HZwsVfbCjuKP4U213T3tuPggOzyK/p4KaUJxQFXJgfUFHKzU0zOXx8QcYRYZf0hSQtppkw==} - engines: {node: '>=12'} - cpu: [x64] - os: [darwin] - - '@esbuild/darwin-x64@0.19.11': - resolution: {integrity: sha512-fkFUiS6IUK9WYUO/+22omwetaSNl5/A8giXvQlcinLIjVkxwTLSktbF5f/kJMftM2MJp9+fXqZ5ezS7+SALp4g==} - engines: {node: '>=12'} - cpu: [x64] - os: [darwin] - - '@esbuild/darwin-x64@0.25.9': - resolution: {integrity: sha512-jhHfBzjYTA1IQu8VyrjCX4ApJDnH+ez+IYVEoJHeqJm9VhG9Dh2BYaJritkYK3vMaXrf7Ogr/0MQ8/MeIefsPQ==} - engines: {node: '>=18'} - cpu: [x64] - os: [darwin] - - '@esbuild/freebsd-arm64@0.18.6': - resolution: {integrity: sha512-bq10jFv42V20Kk77NvmO+WEZaLHBKuXcvEowixnBOMkaBgS7kQaqTc77ZJDbsUpXU3KKNLQFZctfaeINmeTsZA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [freebsd] - - '@esbuild/freebsd-arm64@0.19.11': - resolution: {integrity: sha512-lhoSp5K6bxKRNdXUtHoNc5HhbXVCS8V0iZmDvyWvYq9S5WSfTIHU2UGjcGt7UeS6iEYp9eeymIl5mJBn0yiuxA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [freebsd] - - '@esbuild/freebsd-arm64@0.25.9': - resolution: {integrity: sha512-z93DmbnY6fX9+KdD4Ue/H6sYs+bhFQJNCPZsi4XWJoYblUqT06MQUdBCpcSfuiN72AbqeBFu5LVQTjfXDE2A6Q==} - engines: {node: '>=18'} - cpu: [arm64] - os: [freebsd] - - '@esbuild/freebsd-x64@0.18.6': - resolution: {integrity: sha512-HbDLlkDZqUMBQaiday0pJzB6/8Xx/10dI3xRebJBReOEeDSeS+7GzTtW9h8ZnfB7/wBCqvtAjGtWQLTNPbR2+g==} - engines: {node: '>=12'} - cpu: [x64] - os: [freebsd] - - '@esbuild/freebsd-x64@0.19.11': - resolution: {integrity: sha512-JkUqn44AffGXitVI6/AbQdoYAq0TEullFdqcMY/PCUZ36xJ9ZJRtQabzMA+Vi7r78+25ZIBosLTOKnUXBSi1Kw==} - engines: {node: '>=12'} - cpu: [x64] - os: [freebsd] - - '@esbuild/freebsd-x64@0.25.9': - resolution: {integrity: sha512-mrKX6H/vOyo5v71YfXWJxLVxgy1kyt1MQaD8wZJgJfG4gq4DpQGpgTB74e5yBeQdyMTbgxp0YtNj7NuHN0PoZg==} - engines: {node: '>=18'} - cpu: [x64] - os: [freebsd] - - '@esbuild/linux-arm64@0.18.6': - resolution: {integrity: sha512-NMY9yg/88MskEZH2s4i6biz/3av+M8xY5ua4HE7CCz5DBz542cr7REe317+v7oKjnYBCijHpkzo5vU85bkXQmQ==} - engines: {node: '>=12'} - cpu: [arm64] - os: [linux] - - '@esbuild/linux-arm64@0.19.11': - resolution: {integrity: sha512-LneLg3ypEeveBSMuoa0kwMpCGmpu8XQUh+mL8XXwoYZ6Be2qBnVtcDI5azSvh7vioMDhoJFZzp9GWp9IWpYoUg==} - engines: {node: '>=12'} - cpu: [arm64] - os: [linux] - - '@esbuild/linux-arm64@0.25.9': - resolution: {integrity: sha512-BlB7bIcLT3G26urh5Dmse7fiLmLXnRlopw4s8DalgZ8ef79Jj4aUcYbk90g8iCa2467HX8SAIidbL7gsqXHdRw==} - engines: {node: '>=18'} - cpu: [arm64] - os: [linux] - - '@esbuild/linux-arm@0.18.6': - resolution: {integrity: sha512-C+5kb6rgsGMmvIdUI7v1PPgC98A6BMv233e97aXZ5AE03iMdlILFD/20HlHrOi0x2CzbspXn9HOnlE4/Ijn5Kw==} - engines: {node: '>=12'} - cpu: [arm] - os: [linux] - - '@esbuild/linux-arm@0.19.11': - resolution: {integrity: sha512-3CRkr9+vCV2XJbjwgzjPtO8T0SZUmRZla+UL1jw+XqHZPkPgZiyWvbDvl9rqAN8Zl7qJF0O/9ycMtjU67HN9/Q==} - engines: {node: '>=12'} - cpu: [arm] - os: [linux] - - '@esbuild/linux-arm@0.25.9': - resolution: {integrity: sha512-HBU2Xv78SMgaydBmdor38lg8YDnFKSARg1Q6AT0/y2ezUAKiZvc211RDFHlEZRFNRVhcMamiToo7bDx3VEOYQw==} - engines: {node: '>=18'} - cpu: [arm] - os: [linux] - - '@esbuild/linux-ia32@0.18.6': - resolution: {integrity: sha512-AXazA0ljvQEp7cA9jscABNXsjodKbEcqPcAE3rDzKN82Vb3lYOq6INd+HOCA7hk8IegEyHW4T72Z7QGIhyCQEA==} - engines: {node: '>=12'} - cpu: [ia32] - os: [linux] - - '@esbuild/linux-ia32@0.19.11': - resolution: {integrity: sha512-caHy++CsD8Bgq2V5CodbJjFPEiDPq8JJmBdeyZ8GWVQMjRD0sU548nNdwPNvKjVpamYYVL40AORekgfIubwHoA==} - engines: {node: '>=12'} - cpu: [ia32] - os: [linux] - - '@esbuild/linux-ia32@0.25.9': - resolution: {integrity: sha512-e7S3MOJPZGp2QW6AK6+Ly81rC7oOSerQ+P8L0ta4FhVi+/j/v2yZzx5CqqDaWjtPFfYz21Vi1S0auHrap3Ma3A==} - engines: {node: '>=18'} - cpu: [ia32] - os: [linux] - - '@esbuild/linux-loong64@0.18.6': - resolution: {integrity: sha512-JjBf7TwY7ldcPgHYt9UcrjZB03+WZqg/jSwMAfzOzM5ZG+tu5umUqzy5ugH/crGI4eoDIhSOTDp1NL3Uo/05Fw==} - engines: {node: '>=12'} - cpu: [loong64] - os: [linux] - - '@esbuild/linux-loong64@0.19.11': - resolution: {integrity: sha512-ppZSSLVpPrwHccvC6nQVZaSHlFsvCQyjnvirnVjbKSHuE5N24Yl8F3UwYUUR1UEPaFObGD2tSvVKbvR+uT1Nrg==} - engines: {node: '>=12'} - cpu: [loong64] - os: [linux] - - '@esbuild/linux-loong64@0.25.9': - resolution: {integrity: sha512-Sbe10Bnn0oUAB2AalYztvGcK+o6YFFA/9829PhOCUS9vkJElXGdphz0A3DbMdP8gmKkqPmPcMJmJOrI3VYB1JQ==} - engines: {node: '>=18'} - cpu: [loong64] - os: [linux] - - '@esbuild/linux-mips64el@0.18.6': - resolution: {integrity: sha512-kATNsslryVxcH1sO3KP2nnyUWtZZVkgyhAUnyTVVa0OQQ9pmDRjTpHaE+2EQHoCM5wt/uav2edrAUqbwn3tkKQ==} - engines: {node: '>=12'} - cpu: [mips64el] - os: [linux] - - '@esbuild/linux-mips64el@0.19.11': - resolution: {integrity: sha512-B5x9j0OgjG+v1dF2DkH34lr+7Gmv0kzX6/V0afF41FkPMMqaQ77pH7CrhWeR22aEeHKaeZVtZ6yFwlxOKPVFyg==} - engines: {node: '>=12'} - cpu: [mips64el] - os: [linux] - - '@esbuild/linux-mips64el@0.25.9': - resolution: {integrity: sha512-YcM5br0mVyZw2jcQeLIkhWtKPeVfAerES5PvOzaDxVtIyZ2NUBZKNLjC5z3/fUlDgT6w89VsxP2qzNipOaaDyA==} - engines: {node: '>=18'} - cpu: [mips64el] - os: [linux] - - '@esbuild/linux-ppc64@0.18.6': - resolution: {integrity: sha512-B+wTKz+8pi7mcWXFQV0LA79dJ+qhiut5uK9q0omoKnq8yRIwQJwfg3/vclXoqqcX89Ri5Y5538V0Se2v5qlcLA==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [linux] - - '@esbuild/linux-ppc64@0.19.11': - resolution: {integrity: sha512-MHrZYLeCG8vXblMetWyttkdVRjQlQUb/oMgBNurVEnhj4YWOr4G5lmBfZjHYQHHN0g6yDmCAQRR8MUHldvvRDA==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [linux] - - '@esbuild/linux-ppc64@0.25.9': - resolution: {integrity: sha512-++0HQvasdo20JytyDpFvQtNrEsAgNG2CY1CLMwGXfFTKGBGQT3bOeLSYE2l1fYdvML5KUuwn9Z8L1EWe2tzs1w==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [linux] - - '@esbuild/linux-riscv64@0.18.6': - resolution: {integrity: sha512-h44RBLVXFUSjvhOfseE+5UxQ/r9LVeqK2S8JziJKOm9W7SePYRPDyn7MhzhNCCFPkcjIy+soCxfhlJXHXXCR0A==} - engines: {node: '>=12'} - cpu: [riscv64] - os: [linux] - - '@esbuild/linux-riscv64@0.19.11': - resolution: {integrity: sha512-f3DY++t94uVg141dozDu4CCUkYW+09rWtaWfnb3bqe4w5NqmZd6nPVBm+qbz7WaHZCoqXqHz5p6CM6qv3qnSSQ==} - engines: {node: '>=12'} - cpu: [riscv64] - os: [linux] - - '@esbuild/linux-riscv64@0.25.9': - resolution: {integrity: sha512-uNIBa279Y3fkjV+2cUjx36xkx7eSjb8IvnL01eXUKXez/CBHNRw5ekCGMPM0BcmqBxBcdgUWuUXmVWwm4CH9kg==} - engines: {node: '>=18'} - cpu: [riscv64] - os: [linux] - - '@esbuild/linux-s390x@0.18.6': - resolution: {integrity: sha512-FlYpyr2Xc2AUePoAbc84NRV+mj7xpsISeQ36HGf9etrY5rTBEA+IU9HzWVmw5mDFtC62EQxzkLRj8h5Hq85yOQ==} - engines: {node: '>=12'} - cpu: [s390x] - os: [linux] - - '@esbuild/linux-s390x@0.19.11': - resolution: {integrity: sha512-A5xdUoyWJHMMlcSMcPGVLzYzpcY8QP1RtYzX5/bS4dvjBGVxdhuiYyFwp7z74ocV7WDc0n1harxmpq2ePOjI0Q==} - engines: {node: '>=12'} - cpu: [s390x] - os: [linux] - - '@esbuild/linux-s390x@0.25.9': - resolution: {integrity: sha512-Mfiphvp3MjC/lctb+7D287Xw1DGzqJPb/J2aHHcHxflUo+8tmN/6d4k6I2yFR7BVo5/g7x2Monq4+Yew0EHRIA==} - engines: {node: '>=18'} - cpu: [s390x] - os: [linux] - - '@esbuild/linux-x64@0.18.6': - resolution: {integrity: sha512-Mc4EUSYwzLci77u0Kao6ajB2WbTe5fNc7+lHwS3a+vJISC/oprwURezUYu1SdWAYoczbsyOvKAJwuNftoAdjjg==} - engines: {node: '>=12'} - cpu: [x64] - os: [linux] - - '@esbuild/linux-x64@0.19.11': - resolution: {integrity: sha512-grbyMlVCvJSfxFQUndw5mCtWs5LO1gUlwP4CDi4iJBbVpZcqLVT29FxgGuBJGSzyOxotFG4LoO5X+M1350zmPA==} - engines: {node: '>=12'} - cpu: [x64] - os: [linux] - - '@esbuild/linux-x64@0.25.9': - resolution: {integrity: sha512-iSwByxzRe48YVkmpbgoxVzn76BXjlYFXC7NvLYq+b+kDjyyk30J0JY47DIn8z1MO3K0oSl9fZoRmZPQI4Hklzg==} - engines: {node: '>=18'} - cpu: [x64] - os: [linux] - - '@esbuild/netbsd-arm64@0.25.9': - resolution: {integrity: sha512-9jNJl6FqaUG+COdQMjSCGW4QiMHH88xWbvZ+kRVblZsWrkXlABuGdFJ1E9L7HK+T0Yqd4akKNa/lO0+jDxQD4Q==} - engines: {node: '>=18'} - cpu: [arm64] - os: [netbsd] - - '@esbuild/netbsd-x64@0.18.6': - resolution: {integrity: sha512-3hgZlp7NqIM5lNG3fpdhBI5rUnPmdahraSmwAi+YX/bp7iZ7mpTv2NkypGs/XngdMtpzljICxnUG3uPfqLFd3w==} - engines: {node: '>=12'} - cpu: [x64] - os: [netbsd] - - '@esbuild/netbsd-x64@0.19.11': - resolution: {integrity: sha512-13jvrQZJc3P230OhU8xgwUnDeuC/9egsjTkXN49b3GcS5BKvJqZn86aGM8W9pd14Kd+u7HuFBMVtrNGhh6fHEQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [netbsd] - - '@esbuild/netbsd-x64@0.25.9': - resolution: {integrity: sha512-RLLdkflmqRG8KanPGOU7Rpg829ZHu8nFy5Pqdi9U01VYtG9Y0zOG6Vr2z4/S+/3zIyOxiK6cCeYNWOFR9QP87g==} - engines: {node: '>=18'} - cpu: [x64] - os: [netbsd] - - '@esbuild/openbsd-arm64@0.25.9': - resolution: {integrity: sha512-YaFBlPGeDasft5IIM+CQAhJAqS3St3nJzDEgsgFixcfZeyGPCd6eJBWzke5piZuZ7CtL656eOSYKk4Ls2C0FRQ==} - engines: {node: '>=18'} - cpu: [arm64] - os: [openbsd] - - '@esbuild/openbsd-x64@0.18.6': - resolution: {integrity: sha512-aEWTdZQHtSRROlDYn7ygB8yAqtnall/UnmoVIJVqccKitkAWVVSYocQUWrBOxLEFk8XdlRouVrLZe6WXszyviA==} - engines: {node: '>=12'} - cpu: [x64] - os: [openbsd] - - '@esbuild/openbsd-x64@0.19.11': - resolution: {integrity: sha512-ysyOGZuTp6SNKPE11INDUeFVVQFrhcNDVUgSQVDzqsqX38DjhPEPATpid04LCoUr2WXhQTEZ8ct/EgJCUDpyNw==} - engines: {node: '>=12'} - cpu: [x64] - os: [openbsd] - - '@esbuild/openbsd-x64@0.25.9': - resolution: {integrity: sha512-1MkgTCuvMGWuqVtAvkpkXFmtL8XhWy+j4jaSO2wxfJtilVCi0ZE37b8uOdMItIHz4I6z1bWWtEX4CJwcKYLcuA==} - engines: {node: '>=18'} - cpu: [x64] - os: [openbsd] - - '@esbuild/openharmony-arm64@0.25.9': - resolution: {integrity: sha512-4Xd0xNiMVXKh6Fa7HEJQbrpP3m3DDn43jKxMjxLLRjWnRsfxjORYJlXPO4JNcXtOyfajXorRKY9NkOpTHptErg==} - engines: {node: '>=18'} - cpu: [arm64] - os: [openharmony] - - '@esbuild/sunos-x64@0.18.6': - resolution: {integrity: sha512-uxk/5yAGpjKZUHOECtI9W+9IcLjKj+2m0qf+RG7f7eRBHr8wP6wsr3XbNbgtOD1qSpPapd6R2ZfSeXTkCcAo5g==} - engines: {node: '>=12'} - cpu: [x64] - os: [sunos] - - '@esbuild/sunos-x64@0.19.11': - resolution: {integrity: sha512-Hf+Sad9nVwvtxy4DXCZQqLpgmRTQqyFyhT3bZ4F2XlJCjxGmRFF0Shwn9rzhOYRB61w9VMXUkxlBy56dk9JJiQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [sunos] - - '@esbuild/sunos-x64@0.25.9': - resolution: {integrity: sha512-WjH4s6hzo00nNezhp3wFIAfmGZ8U7KtrJNlFMRKxiI9mxEK1scOMAaa9i4crUtu+tBr+0IN6JCuAcSBJZfnphw==} - engines: {node: '>=18'} - cpu: [x64] - os: [sunos] - - '@esbuild/win32-arm64@0.18.6': - resolution: {integrity: sha512-oXlXGS9zvNCGoAT/tLHAsFKrIKye1JaIIP0anCdpaI+Dc10ftaNZcqfLzEwyhdzFAYInXYH4V7kEdH4hPyo9GA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [win32] - - '@esbuild/win32-arm64@0.19.11': - resolution: {integrity: sha512-0P58Sbi0LctOMOQbpEOvOL44Ne0sqbS0XWHMvvrg6NE5jQ1xguCSSw9jQeUk2lfrXYsKDdOe6K+oZiwKPilYPQ==} - engines: {node: '>=12'} - cpu: [arm64] - os: [win32] - - '@esbuild/win32-arm64@0.25.9': - resolution: {integrity: sha512-mGFrVJHmZiRqmP8xFOc6b84/7xa5y5YvR1x8djzXpJBSv/UsNK6aqec+6JDjConTgvvQefdGhFDAs2DLAds6gQ==} - engines: {node: '>=18'} - cpu: [arm64] - os: [win32] - - '@esbuild/win32-ia32@0.18.6': - resolution: {integrity: sha512-qh7IcAHUvvmMBmoIG+V+BbE9ZWSR0ohF51e5g8JZvU08kZF58uDFL5tHs0eoYz31H6Finv17te3W3QB042GqVA==} - engines: {node: '>=12'} - cpu: [ia32] - os: [win32] - - '@esbuild/win32-ia32@0.19.11': - resolution: {integrity: sha512-6YOrWS+sDJDmshdBIQU+Uoyh7pQKrdykdefC1avn76ss5c+RN6gut3LZA4E2cH5xUEp5/cA0+YxRaVtRAb0xBg==} - engines: {node: '>=12'} - cpu: [ia32] - os: [win32] - - '@esbuild/win32-ia32@0.25.9': - resolution: {integrity: sha512-b33gLVU2k11nVx1OhX3C8QQP6UHQK4ZtN56oFWvVXvz2VkDoe6fbG8TOgHFxEvqeqohmRnIHe5A1+HADk4OQww==} - engines: {node: '>=18'} - cpu: [ia32] - os: [win32] - - '@esbuild/win32-x64@0.18.6': - resolution: {integrity: sha512-9UDwkz7Wlm4N9jnv+4NL7F8vxLhSZfEkRArz2gD33HesAFfMLGIGNVXRoIHtWNw8feKsnGly9Hq1EUuRkWl0zA==} - engines: {node: '>=12'} - cpu: [x64] - os: [win32] - - '@esbuild/win32-x64@0.19.11': - resolution: {integrity: sha512-vfkhltrjCAb603XaFhqhAF4LGDi2M4OrCRrFusyQ+iTLQ/o60QQXxc9cZC/FFpihBI9N1Grn6SMKVJ4KP7Fuiw==} - engines: {node: '>=12'} - cpu: [x64] - os: [win32] - - '@esbuild/win32-x64@0.25.9': - resolution: {integrity: sha512-PPOl1mi6lpLNQxnGoyAfschAodRFYXJ+9fs6WHXz7CSWKbOqiMZsubC+BQsVKuul+3vKLuwTHsS2c2y9EoKwxQ==} - engines: {node: '>=18'} - cpu: [x64] - os: [win32] - - '@eslint-community/eslint-utils@4.4.0': - resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - - '@eslint-community/regexpp@4.10.0': - resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - - '@eslint/eslintrc@2.1.4': - resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - '@eslint/js@8.56.0': - resolution: {integrity: sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - '@fal-works/esbuild-plugin-global-externals@2.1.2': - resolution: {integrity: sha512-cEee/Z+I12mZcFJshKcCqC8tuX5hG3s+d+9nZ3LabqKF1vKdF41B92pJVCBggjAGORAeOzyyDDKrZwIkLffeOQ==} - - '@floating-ui/core@1.5.0': - resolution: {integrity: sha512-kK1h4m36DQ0UHGj5Ah4db7R0rHemTqqO0QLvUqi1/mUUp3LuAWbWxdxSIf/XsnH9VS6rRVPLJCncjRzUvyCLXg==} - - '@floating-ui/dom@1.5.3': - resolution: {integrity: sha512-ClAbQnEqJAKCJOEbbLo5IUlZHkNszqhuxS4fHAVxRPXPya6Ysf2G8KypnYcOTpx6I8xcgF9bbHb6g/2KpbV8qA==} - - '@floating-ui/react-dom@2.0.2': - resolution: {integrity: sha512-5qhlDvjaLmAst/rKb3VdlCinwTF4EYMiVxuuc/HVUjs46W0zgtbMmAZ1UTsDrRTxRmUEzl92mOtWbeeXL26lSQ==} - peerDependencies: - react: '>=16.8.0' - react-dom: '>=16.8.0' - - '@floating-ui/react@0.24.8': - resolution: {integrity: sha512-AuYeDoaR8jtUlUXtZ1IJ/6jtBkGnSpJXbGNzokBL87VDJ8opMq1Bgrc0szhK482ReQY6KZsMoZCVSb4xwalkBA==} - peerDependencies: - react: '>=16.8.0' - react-dom: '>=16.8.0' - - '@floating-ui/utils@0.1.6': - resolution: {integrity: sha512-OfX7E2oUDYxtBvsuS4e/jSn4Q9Qb6DzgeYtsAdkPZ47znpoNsMgZw0+tVijiv3uGNR6dgNlty6r9rzIzHjtd/A==} - - '@hookform/resolvers@3.3.4': - resolution: {integrity: sha512-o5cgpGOuJYrd+iMKvkttOclgwRW86EsWJZZRC23prf0uU2i48Htq4PuT73AVb9ionFyZrwYEITuOFGF+BydEtQ==} - peerDependencies: - react-hook-form: ^7.0.0 - - '@humanwhocodes/config-array@0.11.14': - resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} - engines: {node: '>=10.10.0'} - - '@humanwhocodes/module-importer@1.0.1': - resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} - engines: {node: '>=12.22'} - - '@humanwhocodes/object-schema@2.0.2': - resolution: {integrity: sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==} - - '@ioredis/commands@1.2.0': - resolution: {integrity: sha512-Sx1pU8EM64o2BrqNpEO1CNLtKQwyhuXuqyfH7oGKCk+1a33d2r5saW8zNwm3j6BTExtjrv2BxTgzzkMwts6vGg==} - - '@isaacs/cliui@8.0.2': - resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} - engines: {node: '>=12'} - - '@istanbuljs/load-nyc-config@1.1.0': - resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} - engines: {node: '>=8'} - - '@istanbuljs/schema@0.1.3': - resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} - engines: {node: '>=8'} - - '@jest/console@29.7.0': - resolution: {integrity: sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/core@29.7.0': - resolution: {integrity: sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==} - 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 - - '@jest/environment@29.7.0': - resolution: {integrity: sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/expect-utils@29.5.0': - resolution: {integrity: sha512-fmKzsidoXQT2KwnrwE0SQq3uj8Z763vzR8LnLBwC2qYWEFpjX8daRsk6rHUM1QvNlEW/UJXNXm59ztmJJWs2Mg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/expect-utils@29.7.0': - resolution: {integrity: sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/expect@29.7.0': - resolution: {integrity: sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/fake-timers@29.7.0': - resolution: {integrity: sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/globals@29.7.0': - resolution: {integrity: sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/reporters@29.7.0': - resolution: {integrity: sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==} - 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 - - '@jest/schemas@29.4.3': - resolution: {integrity: sha512-VLYKXQmtmuEz6IxJsrZwzG9NvtkQsWNnWMsKxqWNu3+CnfzJQhp0WDDKWLVV9hLKr0l3SLLFRqcYHjhtyuDVxg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/schemas@29.6.3': - resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/source-map@29.6.3': - resolution: {integrity: sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/test-result@29.7.0': - resolution: {integrity: sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/test-sequencer@29.7.0': - resolution: {integrity: sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/transform@29.5.0': - resolution: {integrity: sha512-8vbeZWqLJOvHaDfeMuoHITGKSz5qWc9u04lnWrQE3VyuSw604PzQM824ZeX9XSjUCeDiE3GuxZe5UKa8J61NQw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/transform@29.7.0': - resolution: {integrity: sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/types@27.5.1': - resolution: {integrity: sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - - '@jest/types@29.5.0': - resolution: {integrity: sha512-qbu7kN6czmVRc3xWFQcAN03RAUamgppVUdXrvl1Wr3jlNF93o9mJbGcDWrwGB6ht44u7efB1qCFgVQmca24Uog==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jest/types@29.6.3': - resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - '@jridgewell/gen-mapping@0.1.1': - resolution: {integrity: sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==} - engines: {node: '>=6.0.0'} - - '@jridgewell/gen-mapping@0.3.2': - resolution: {integrity: sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==} - engines: {node: '>=6.0.0'} - - '@jridgewell/gen-mapping@0.3.5': - resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} - engines: {node: '>=6.0.0'} - - '@jridgewell/resolve-uri@3.1.0': - resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} - engines: {node: '>=6.0.0'} - - '@jridgewell/set-array@1.1.2': - resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} - engines: {node: '>=6.0.0'} - - '@jridgewell/set-array@1.2.1': - resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} - engines: {node: '>=6.0.0'} - - '@jridgewell/source-map@0.3.2': - resolution: {integrity: sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==} - - '@jridgewell/sourcemap-codec@1.4.14': - resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} - - '@jridgewell/sourcemap-codec@1.4.15': - resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} - - '@jridgewell/trace-mapping@0.3.17': - resolution: {integrity: sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==} - - '@jridgewell/trace-mapping@0.3.25': - resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} - - '@jridgewell/trace-mapping@0.3.9': - resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} - - '@juggle/resize-observer@3.4.0': - resolution: {integrity: sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==} - - '@koa/cors@4.0.0': - resolution: {integrity: sha512-Y4RrbvGTlAaa04DBoPBWJqDR5gPj32OOz827ULXfgB1F7piD1MB/zwn8JR2LAnvdILhxUbXbkXGWuNVsFuVFCQ==} - engines: {node: '>= 14.0.0'} - - '@koa/multer@3.0.2': - resolution: {integrity: sha512-Q6WfPpE06mJWyZD1fzxM6zWywaoo+zocAn2YA9QYz4RsecoASr1h/kSzG0c5seDpFVKCMZM9raEfuM7XfqbRLw==} - engines: {node: '>= 8'} - peerDependencies: - multer: '*' - - '@koa/router@12.0.0': - resolution: {integrity: sha512-cnnxeKHXlt7XARJptflGURdJaO+ITpNkOHmQu7NHmCoRinPbyvFzce/EG/E8Zy81yQ1W9MoSdtklc3nyaDReUw==} - engines: {node: '>= 12'} - - '@mantine/core@7.5.2': - resolution: {integrity: sha512-e58qTiLEp9qLxQ5JZlPNykJWBR+oi0q2J8JPKTjTJD+4UM58uh9oL4wuMEdUyBgiYGvDc/cVYF+rftMpuCt+KQ==} - peerDependencies: - '@mantine/hooks': 7.5.2 - react: ^18.2.0 - react-dom: ^18.2.0 - - '@mantine/dates@7.5.2': - resolution: {integrity: sha512-fQN/5YXgXEr3rpyPq3TeiBIljCJWFo957DTFqLzkn/m0E2Qx5Sk+l6CjCTF9ShdPAuDaTkI9RKdE9NaV5JvcrQ==} - peerDependencies: - '@mantine/core': 7.5.2 - '@mantine/hooks': 7.5.2 - dayjs: '>=1.0.0' - react: ^18.2.0 - react-dom: ^18.2.0 - - '@mantine/dropzone@7.5.2': - resolution: {integrity: sha512-YjzaBEppLhb5F+lKpBSVeIGneCdisC+0nSertcjjo7QXPc++NR+WbVuTiPMYZoUuRbpJ2GRRTFZndmK1FvO+7w==} - peerDependencies: - '@mantine/core': 7.5.2 - '@mantine/hooks': 7.5.2 - react: ^18.2.0 - react-dom: ^18.2.0 - - '@mantine/hooks@7.5.2': - resolution: {integrity: sha512-4POujH5Xx84VB/xfM6EttDq725dqqL2DntoeMjHz3Ua94aK5Y0VSc1IwlETxCuF7yNV5/w/Z8kgeVVa5cDgrPg==} - peerDependencies: - react: ^18.2.0 - - '@mantine/modals@7.5.2': - resolution: {integrity: sha512-QRdFZtaGvyE9/nYgnsyMPsWEy+o0vaTzD+Sle6c/CaZ4MPk0ok3Au8bd04LnSMmoinYgLeei9IsmP78UXO9kNA==} - peerDependencies: - '@mantine/core': 7.5.2 - '@mantine/hooks': 7.5.2 - react: ^18.2.0 - react-dom: ^18.2.0 - - '@mantine/next@6.0.21': - resolution: {integrity: sha512-McaVZZsmUol3yY92mSJSgcMQKFST97pVxNtI7Z52YocyuTjPPFXmqxF/TFj24A7noh1wzvRCPjfd9HX66sY+iQ==} - peerDependencies: - next: '*' - react: '>=16.8.0' - react-dom: '>=16.8.0' - - '@mantine/notifications@7.5.2': - resolution: {integrity: sha512-wGRDeOG2NGng202k/vZPfkRJMHtflvIORYe4cJaQAd9EhP646xr/ji8zzdXeXvUO5PrKlBpu+K+HSF1bQQY4og==} - peerDependencies: - '@mantine/core': 7.5.2 - '@mantine/hooks': 7.5.2 - react: ^18.2.0 - react-dom: ^18.2.0 - - '@mantine/ssr@6.0.21': - resolution: {integrity: sha512-TVPiz7VxbBntT42UFg4LCRqsv6HM5nvL5d2jBBbFcg9oztJ/5KVGhrtWbu2+kpq/uWWOpmE0sKDs3HQ/qr1PdQ==} - peerDependencies: - '@emotion/react': '>=11.9.0' - '@emotion/server': '>=11.4.0' - react: '>=16.8.0' - react-dom: '>=16.8.0' - - '@mantine/store@7.5.2': - resolution: {integrity: sha512-au53HLLH/LfHLOR2Zb00TgG11xAXZNJb4jqsEhAr90axCIw6mlBDIAhbb+Yu6OwDaV7TscE/sonkUstmRjLh/w==} - peerDependencies: - react: ^18.2.0 - - '@mantine/styles@6.0.21': - resolution: {integrity: sha512-PVtL7XHUiD/B5/kZ/QvZOZZQQOj12QcRs3Q6nPoqaoPcOX5+S7bMZLMH0iLtcGq5OODYk0uxlvuJkOZGoPj8Mg==} - peerDependencies: - '@emotion/react': '>=11.9.0' - react: '>=16.8.0' - react-dom: '>=16.8.0' - - '@mdx-js/react@2.3.0': - resolution: {integrity: sha512-zQH//gdOmuu7nt2oJR29vFhDv88oGPmVw6BggmrHeMI+xgEkp1B2dX9/bMBSYtK0dyLX/aOmesKS09g222K1/g==} - peerDependencies: - react: '>=16' - - '@mongodb-js/saslprep@1.1.5': - resolution: {integrity: sha512-XLNOMH66KhJzUJNwT/qlMnS4WsNDWD5ASdyaSH3EtK+F4r/CFGa3jT4GNi4mfOitGvWXtdLgQJkQjxSVrio+jA==} - - '@ndelangen/get-tarball@3.0.9': - resolution: {integrity: sha512-9JKTEik4vq+yGosHYhZ1tiH/3WpUS0Nh0kej4Agndhox8pAdWhEx5knFVRcb/ya9knCRCs1rPxNrSXTDdfVqpA==} - - '@next/env@14.0.5-canary.46': - resolution: {integrity: sha512-dvNzrArTfe3VY1VIscpb3E2e7SZ1qwFe82WGzpOVbxilT3JcsnVGYF/uq8Jj1qKWPI5C/aePNXwA97JRNAXpRQ==} - - '@next/env@14.1.0': - resolution: {integrity: sha512-Py8zIo+02ht82brwwhTg36iogzFqGLPXlRGKQw5s+qP/kMNc4MAyDeEwBKDijk6zTIbegEgu8Qy7C1LboslQAw==} - - '@next/eslint-plugin-next@14.1.0': - resolution: {integrity: sha512-x4FavbNEeXx/baD/zC/SdrvkjSby8nBn8KcCREqk6UuwvwoAPZmaV8TFCAuo/cpovBRTIY67mHhe86MQQm/68Q==} - - '@next/swc-darwin-arm64@14.0.5-canary.46': - resolution: {integrity: sha512-7Bq9rjWl4sq70Zkn6h6mn8/tgYTH2SQ8lIm8b/j1MAnTiJYyVBLapu//gT/cgtqx6y8SwSc2JNviBue35zeCNw==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [darwin] - - '@next/swc-darwin-arm64@14.1.0': - resolution: {integrity: sha512-nUDn7TOGcIeyQni6lZHfzNoo9S0euXnu0jhsbMOmMJUBfgsnESdjN97kM7cBqQxZa8L/bM9om/S5/1dzCrW6wQ==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [darwin] - - '@next/swc-darwin-x64@14.0.5-canary.46': - resolution: {integrity: sha512-3oI8rDVBZsfkTdqXwtRjxA85o0RIjZv9uuOLohfaIuFP3oZnCM0dRZREP2umYcFQRxdavW+TDJzYcqzKxYTujA==} - engines: {node: '>= 10'} - cpu: [x64] - os: [darwin] - - '@next/swc-darwin-x64@14.1.0': - resolution: {integrity: sha512-1jgudN5haWxiAl3O1ljUS2GfupPmcftu2RYJqZiMJmmbBT5M1XDffjUtRUzP4W3cBHsrvkfOFdQ71hAreNQP6g==} - engines: {node: '>= 10'} - cpu: [x64] - os: [darwin] - - '@next/swc-linux-arm64-gnu@14.0.5-canary.46': - resolution: {integrity: sha512-gXSS328bUWxBwQfeDFROOzFSzzoyX1075JxOeArLl63sV59cbnRrwHHhD4CWG1bYYzcHxHfVugZgvyCucaHCIw==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - - '@next/swc-linux-arm64-gnu@14.1.0': - resolution: {integrity: sha512-RHo7Tcj+jllXUbK7xk2NyIDod3YcCPDZxj1WLIYxd709BQ7WuRYl3OWUNG+WUfqeQBds6kvZYlc42NJJTNi4tQ==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - - '@next/swc-linux-arm64-musl@14.0.5-canary.46': - resolution: {integrity: sha512-7QkBRKlDsjaWGbfIKh6qJK0HiHJISNGoKpwFTcnZvlhAEaydS5Hmu0zh64kbLRlzwXtkpj6/iCwjrWnHes59aA==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - - '@next/swc-linux-arm64-musl@14.1.0': - resolution: {integrity: sha512-v6kP8sHYxjO8RwHmWMJSq7VZP2nYCkRVQ0qolh2l6xroe9QjbgV8siTbduED4u0hlk0+tjS6/Tuy4n5XCp+l6g==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - - '@next/swc-linux-x64-gnu@14.0.5-canary.46': - resolution: {integrity: sha512-DS5wTjw3FtcLFVzRxLMJgmDNMoeaXp5qBdKUSBrKTq4zQnqUi99CGz2461DlUSxJCWPUgAVo23MdoQD6Siuk7A==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - - '@next/swc-linux-x64-gnu@14.1.0': - resolution: {integrity: sha512-zJ2pnoFYB1F4vmEVlb/eSe+VH679zT1VdXlZKX+pE66grOgjmKJHKacf82g/sWE4MQ4Rk2FMBCRnX+l6/TVYzQ==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - - '@next/swc-linux-x64-musl@14.0.5-canary.46': - resolution: {integrity: sha512-d409ur5JGj6HFp8DBu5M2oTh5EddDcrT+vjewQkAq/A7MZoAMAOH74xOFouEnJs0/dQ71XvH9Lw+1gJSnElcyQ==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - - '@next/swc-linux-x64-musl@14.1.0': - resolution: {integrity: sha512-rbaIYFt2X9YZBSbH/CwGAjbBG2/MrACCVu2X0+kSykHzHnYH5FjHxwXLkcoJ10cX0aWCEynpu+rP76x0914atg==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - - '@next/swc-win32-arm64-msvc@14.0.5-canary.46': - resolution: {integrity: sha512-goyh/RCFtivflIOvbwircMxTSObETufm3pcxtI8rIz9+pg/M2MmK8/z48EZybkEcPKl41xu4s1iqXThy/jDPng==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [win32] - - '@next/swc-win32-arm64-msvc@14.1.0': - resolution: {integrity: sha512-o1N5TsYc8f/HpGt39OUQpQ9AKIGApd3QLueu7hXk//2xq5Z9OxmV6sQfNp8C7qYmiOlHYODOGqNNa0e9jvchGQ==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [win32] - - '@next/swc-win32-ia32-msvc@14.0.5-canary.46': - resolution: {integrity: sha512-SEnrOZ7ASXdd/GBq2x0IfpSbfamv1rZfcDeZZLF7kzu0pY7jDQwcW8zTKwwC8JH5CLGLfI3wD6wUYrA+PgJSCw==} - engines: {node: '>= 10'} - cpu: [ia32] - os: [win32] - - '@next/swc-win32-ia32-msvc@14.1.0': - resolution: {integrity: sha512-XXIuB1DBRCFwNO6EEzCTMHT5pauwaSj4SWs7CYnME57eaReAKBXCnkUE80p/pAZcewm7hs+vGvNqDPacEXHVkw==} - engines: {node: '>= 10'} - cpu: [ia32] - os: [win32] - - '@next/swc-win32-x64-msvc@14.0.5-canary.46': - resolution: {integrity: sha512-NK1EJLyeUxgX9IHSxO0kN1Nk8VsaDfjHVYL4p9fM24e/9rG8jPcxquIQJ4Wy+ZdqxaVivqQ2eHrJYUpXpfOXmw==} - engines: {node: '>= 10'} - cpu: [x64] - os: [win32] - - '@next/swc-win32-x64-msvc@14.1.0': - resolution: {integrity: sha512-9WEbVRRAqJ3YFVqEZIxUqkiO8l1nool1LmNxygr5HWF8AcSYsEpneUDhmjUVJEzO2A04+oPtZdombzzPPkTtgg==} - engines: {node: '>= 10'} - cpu: [x64] - os: [win32] - - '@nodelib/fs.scandir@2.1.5': - resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} - engines: {node: '>= 8'} - - '@nodelib/fs.stat@2.0.5': - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} - engines: {node: '>= 8'} - - '@nodelib/fs.walk@1.2.8': - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} - engines: {node: '>= 8'} - - '@one-ini/wasm@0.1.1': - resolution: {integrity: sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==} - - '@paralect/node-mongo@3.2.0': - resolution: {integrity: sha512-eIQ+hKoSNiXWi6c1hjl/lOsT4LgPomP1xNQ7OWRWyFdZbUkgI7OM3hXbBG7mjdQnYd3ESDmMLD3UC/F6v965Lw==} - engines: {node: '>=16.16.0'} - - '@pkgjs/parseargs@0.11.0': - resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} - engines: {node: '>=14'} - - '@pkgr/utils@2.3.1': - resolution: {integrity: sha512-wfzX8kc1PMyUILA+1Z/EqoE4UCXGy0iRGMhPwdfae1+f0OXlLqCk+By+aMzgJBzR9AzS4CDizioG6Ss1gvAFJw==} - engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} - - '@pmmmwh/react-refresh-webpack-plugin@0.5.11': - resolution: {integrity: sha512-7j/6vdTym0+qZ6u4XbSAxrWBGYSdCfTzySkj7WAFgDLmSyWlOrWvpyzxlFh5jtw9dn0oL/jtW+06XfFiisN3JQ==} - engines: {node: '>= 10.13'} - peerDependencies: - '@types/webpack': 4.x || 5.x - react-refresh: '>=0.10.0 <1.0.0' - sockjs-client: ^1.4.0 - type-fest: '>=0.17.0 <5.0.0' - webpack: '>=4.43.0 <6.0.0' - webpack-dev-server: 3.x || 4.x - webpack-hot-middleware: 2.x - webpack-plugin-serve: 0.x || 1.x - peerDependenciesMeta: - '@types/webpack': - optional: true - sockjs-client: - optional: true - type-fest: - optional: true - webpack-dev-server: - optional: true - webpack-hot-middleware: - optional: true - webpack-plugin-serve: - optional: true - - '@radix-ui/colors@1.0.1': - resolution: {integrity: sha512-xySw8f0ZVsAEP+e7iLl3EvcBXX7gsIlC1Zso/sPBW9gIWerBTgz6axrjU+MZ39wD+WFi5h5zdWpsg3+hwt2Qsg==} - - '@radix-ui/number@1.0.1': - resolution: {integrity: sha512-T5gIdVO2mmPW3NNhjNgEP3cqMXjXL9UbO0BzWcXfvdBs+BohbQxvd/K5hSVKmn9/lbTdsQVKbUcP5WLCwvUbBg==} - - '@radix-ui/primitive@1.0.1': - resolution: {integrity: sha512-yQ8oGX2GVsEYMWGxcovu1uGWPCxV5BFfeeYxqPmuAzUyLT9qmaMXSAhXpb0WrspIeqYzdJpkh2vHModJPgRIaw==} - - '@radix-ui/react-arrow@1.0.3': - resolution: {integrity: sha512-wSP+pHsB/jQRaL6voubsQ/ZlrGBHHrOjmBnr19hxYgtS0WvAFwZhK2WP/YY5yF9uKECCEEDGxuLxq1NBK51wFA==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - - '@radix-ui/react-collapsible@1.0.3': - resolution: {integrity: sha512-UBmVDkmR6IvDsloHVN+3rtx4Mi5TFvylYXpluuv0f37dtaz3H99bp8No0LGXRigVpl3UAT4l9j6bIchh42S/Gg==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - - '@radix-ui/react-collection@1.0.3': - resolution: {integrity: sha512-3SzW+0PW7yBBoQlT8wNcGtaxaD0XSu0uLUFgrtHY08Acx05TaHaOmVLR73c0j/cqpDy53KBMO7s0dx2wmOIDIA==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - - '@radix-ui/react-compose-refs@1.0.1': - resolution: {integrity: sha512-fDSBgd44FKHa1FRMU59qBMPFcl2PZE+2nmqunj+BWFyYYjnhIDWL2ItDs3rrbJDQOtzt5nIebLCQc4QRfz6LJw==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - - '@radix-ui/react-context@1.0.1': - resolution: {integrity: sha512-ebbrdFoYTcuZ0v4wG5tedGnp9tzcV8awzsxYph7gXUyvnNLuTIcCk1q17JEbnVhXAKG9oX3KtchwiMIAYp9NLg==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - - '@radix-ui/react-direction@1.0.1': - resolution: {integrity: sha512-RXcvnXgyvYvBEOhCBuddKecVkoMiI10Jcm5cTI7abJRAHYfFxeu+FBQs/DvdxSYucxR5mna0dNsL6QFlds5TMA==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - - '@radix-ui/react-dismissable-layer@1.0.4': - resolution: {integrity: sha512-7UpBa/RKMoHJYjie1gkF1DlK8l1fdU/VKDpoS3rCCo8YBJR294GwcEHyxHw72yvphJ7ld0AXEcSLAzY2F/WyCg==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - - '@radix-ui/react-focus-guards@1.0.1': - resolution: {integrity: sha512-Rect2dWbQ8waGzhMavsIbmSVCgYxkXLxxR3ZvCX79JOglzdEy4JXMb98lq4hPxUbLr77nP0UOGf4rcMU+s1pUA==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - - '@radix-ui/react-focus-scope@1.0.3': - resolution: {integrity: sha512-upXdPfqI4islj2CslyfUBNlaJCPybbqRHAi1KER7Isel9Q2AtSJ0zRBZv8mWQiFXD2nyAJ4BhC3yXgZ6kMBSrQ==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - - '@radix-ui/react-id@1.0.1': - resolution: {integrity: sha512-tI7sT/kqYp8p96yGWY1OAnLHrqDgzHefRBKQ2YAkBS5ja7QLcZ9Z/uY7bEjPUatf8RomoXM8/1sMj1IJaE5UzQ==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - - '@radix-ui/react-popover@1.0.6': - resolution: {integrity: sha512-cZ4defGpkZ0qTRtlIBzJLSzL6ht7ofhhW4i1+pkemjV1IKXm0wgCRnee154qlV6r9Ttunmh2TNZhMfV2bavUyA==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - - '@radix-ui/react-popper@1.1.2': - resolution: {integrity: sha512-1CnGGfFi/bbqtJZZ0P/NQY20xdG3E0LALJaLUEoKwPLwl6PPPfbeiCqMVQnhoFRAxjJj4RpBRJzDmUgsex2tSg==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - - '@radix-ui/react-portal@1.0.3': - resolution: {integrity: sha512-xLYZeHrWoPmA5mEKEfZZevoVRK/Q43GfzRXkWV6qawIWWK8t6ifIiLQdd7rmQ4Vk1bmI21XhqF9BN3jWf+phpA==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - - '@radix-ui/react-presence@1.0.1': - resolution: {integrity: sha512-UXLW4UAbIY5ZjcvzjfRFo5gxva8QirC9hF7wRE4U5gz+TP0DbRk+//qyuAQ1McDxBt1xNMBTaciFGvEmJvAZCg==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - - '@radix-ui/react-primitive@1.0.3': - resolution: {integrity: sha512-yi58uVyoAcK/Nq1inRY56ZSjKypBNKTa/1mcL8qdl6oJeEaDbOldlzrGn7P6Q3Id5d+SYNGc5AJgc4vGhjs5+g==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - - '@radix-ui/react-roving-focus@1.0.4': - resolution: {integrity: sha512-2mUg5Mgcu001VkGy+FfzZyzbmuUWzgWkj3rvv4yu+mLw03+mTzbxZHvfcGyFp2b8EkQeMkpRQ5FiA2Vr2O6TeQ==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - - '@radix-ui/react-select@1.2.2': - resolution: {integrity: sha512-zI7McXr8fNaSrUY9mZe4x/HC0jTLY9fWNhO1oLWYMQGDXuV4UCivIGTxwioSzO0ZCYX9iSLyWmAh/1TOmX3Cnw==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - - '@radix-ui/react-separator@1.0.3': - resolution: {integrity: sha512-itYmTy/kokS21aiV5+Z56MZB54KrhPgn6eHDKkFeOLR34HMN2s8PaN47qZZAGnvupcjxHaFZnW4pQEh0BvvVuw==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - - '@radix-ui/react-slot@1.0.2': - resolution: {integrity: sha512-YeTpuq4deV+6DusvVUW4ivBgnkHwECUu0BiN43L5UCDFgdhsRUWAghhTF5MbvNTPzmiFOx90asDSUjWuCNapwg==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - - '@radix-ui/react-toggle-group@1.0.4': - resolution: {integrity: sha512-Uaj/M/cMyiyT9Bx6fOZO0SAG4Cls0GptBWiBmBxofmDbNVnYYoyRWj/2M/6VCi/7qcXFWnHhRUfdfZFvvkuu8A==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - - '@radix-ui/react-toggle@1.0.3': - resolution: {integrity: sha512-Pkqg3+Bc98ftZGsl60CLANXQBBQ4W3mTFS9EJvNxKMZ7magklKV69/id1mlAlOFDDfHvlCms0fx8fA4CMKDJHg==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - - '@radix-ui/react-toolbar@1.0.4': - resolution: {integrity: sha512-tBgmM/O7a07xbaEkYJWYTXkIdU/1pW4/KZORR43toC/4XWyBCURK0ei9kMUdp+gTPPKBgYLxXmRSH1EVcIDp8Q==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - - '@radix-ui/react-tooltip@1.0.6': - resolution: {integrity: sha512-DmNFOiwEc2UDigsYj6clJENma58OelxD24O4IODoZ+3sQc3Zb+L8w1EP+y9laTuKCLAysPw4fD6/v0j4KNV8rg==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - - '@radix-ui/react-use-callback-ref@1.0.1': - resolution: {integrity: sha512-D94LjX4Sp0xJFVaoQOd3OO9k7tpBYNOXdVhkltUbGv2Qb9OXdrg/CpsjlZv7ia14Sylv398LswWBVVu5nqKzAQ==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - - '@radix-ui/react-use-controllable-state@1.0.1': - resolution: {integrity: sha512-Svl5GY5FQeN758fWKrjM6Qb7asvXeiZltlT4U2gVfl8Gx5UAv2sMR0LWo8yhsIZh2oQ0eFdZ59aoOOMV7b47VA==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - - '@radix-ui/react-use-escape-keydown@1.0.3': - resolution: {integrity: sha512-vyL82j40hcFicA+M4Ex7hVkB9vHgSse1ZWomAqV2Je3RleKGO5iM8KMOEtfoSB0PnIelMd2lATjTGMYqN5ylTg==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - - '@radix-ui/react-use-layout-effect@1.0.1': - resolution: {integrity: sha512-v/5RegiJWYdoCvMnITBkNNx6bCj20fiaJnWtRkU18yITptraXjffz5Qbn05uOiQnOvi+dbkznkoaMltz1GnszQ==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - - '@radix-ui/react-use-previous@1.0.1': - resolution: {integrity: sha512-cV5La9DPwiQ7S0gf/0qiD6YgNqM5Fk97Kdrlc5yBcrF3jyEZQwm7vYFqMo4IfeHgJXsRaMvLABFtd0OVEmZhDw==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - - '@radix-ui/react-use-rect@1.0.1': - resolution: {integrity: sha512-Cq5DLuSiuYVKNU8orzJMbl15TXilTnJKUCltMVQg53BQOF1/C5toAaGrowkgksdBQ9H+SRL23g0HDmg9tvmxXw==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - - '@radix-ui/react-use-size@1.0.1': - resolution: {integrity: sha512-ibay+VqrgcaI6veAojjofPATwledXiSmX+C0KrBk/xgpX9rBzPV3OsfwlhQdUOFbh+LKQorLYT+xTXW9V8yd0g==} - peerDependencies: - '@types/react': '*' - react: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - - '@radix-ui/react-visually-hidden@1.0.3': - resolution: {integrity: sha512-D4w41yN5YRKtu464TLnByKzMDG/JlMPHtfZgQAu9v6mNakUqGUI9vUrfQKz8NK41VMm/xbZbh76NUTVtIYqOMA==} - peerDependencies: - '@types/react': '*' - '@types/react-dom': '*' - react: ^16.8 || ^17.0 || ^18.0 - react-dom: ^16.8 || ^17.0 || ^18.0 - peerDependenciesMeta: - '@types/react': - optional: true - '@types/react-dom': - optional: true - - '@radix-ui/rect@1.0.1': - resolution: {integrity: sha512-fyrgCaedtvMg9NK3en0pnOYJdtfwxUcNolezkNPUsoX57X8oQk+NkqcvzHXD2uKNij6GXmWU9NDru2IWjrO4BQ==} - - '@react-email/body@0.0.7': - resolution: {integrity: sha512-vjJ5P1MUNWV0KNivaEWA6MGj/I3c764qQJMsKjCHlW6mkFJ4SXbm2OlQFtKAb++Bj8LDqBlnE6oW77bWcMc0NA==} - peerDependencies: - react: 18.2.0 - - '@react-email/button@0.0.13': - resolution: {integrity: sha512-e/y8u2odJ8fF83B+wvL2FXzVcbQSUh2Cn2JH2Ez4L6AuPELsh8s2JYo081IDsXc16IyFiYpObn0blOt7s/qp8g==} - engines: {node: '>=18.0.0'} - peerDependencies: - react: 18.2.0 - - '@react-email/code-block@0.0.2': - resolution: {integrity: sha512-bQApEmpsvIcVYXdPCXhJB9CGCyShhn/c1JdctE/6R1uIosLbWt40evvVfp2X9STdi02Dhsjxw/AcGuQE6zGZqw==} - engines: {node: '>=18.0.0'} - peerDependencies: - react: 18.2.0 - - '@react-email/code-inline@0.0.1': - resolution: {integrity: sha512-SeZKTB9Q4+TUafzeUm/8tGK3dFgywUHb1od/BrAiJCo/im65aT+oJfggJLjK2jCdSsus8odcK2kReeM3/FCNTQ==} - engines: {node: '>=18.0.0'} - peerDependencies: - react: 18.2.0 - - '@react-email/column@0.0.9': - resolution: {integrity: sha512-1ekqNBgmbS6m97/sUFOnVvQtLYljUWamw8Y44VId95v6SjiJ4ca+hMcdOteHWBH67xkRofEOWTvqDRea5SBV8w==} - engines: {node: '>=18.0.0'} - peerDependencies: - react: 18.2.0 - - '@react-email/components@0.0.14': - resolution: {integrity: sha512-t/sNj0R9Mx9Sx5degPQcSBeWotNs7eUwiv72KN8v6fxaf87XlnMo0CPcKI/1by2DHZr5S0258ZQOO7vEFrbcLw==} - engines: {node: '>=18.0.0'} - peerDependencies: - react: 18.2.0 - - '@react-email/container@0.0.11': - resolution: {integrity: sha512-jzl/EHs0ClXIRFamfH+NR/cqv4GsJJscqRhdYtnWYuRAsWpKBM1muycrrPqIVhWvWi6sFHInWTt07jX+bDc3SQ==} - engines: {node: '>=18.0.0'} - peerDependencies: - react: 18.2.0 - - '@react-email/font@0.0.5': - resolution: {integrity: sha512-if/qKYmH3rJ2egQJoKbV8SfKCPavu+ikUq/naT/UkCr8Q0lkk309tRA0x7fXG/WeIrmcipjMzFRGTm2TxTecDw==} - peerDependencies: - react: 18.2.0 - - '@react-email/head@0.0.7': - resolution: {integrity: sha512-IcXL4jc0H1qzAXJCD9ajcRFBQdbUHkjKJyiUeogpaYSVZSq6cVDWQuGaI23TA9k+pI2TFeQimogUFb3Kgeeudw==} - engines: {node: '>=18.0.0'} - peerDependencies: - react: 18.2.0 - - '@react-email/heading@0.0.11': - resolution: {integrity: sha512-EF5ZtRCxhHPw3m+8iibKKg0RAvAeHj1AP68sjU7s6+J+kvRgllr/E972Wi5Y8UvcIGossCvpX1WrSMDzeB4puA==} - engines: {node: '>=18.0.0'} - peerDependencies: - react: 18.2.0 - - '@react-email/hr@0.0.7': - resolution: {integrity: sha512-8suK0M/deXHt0DBSeKhSC4bnCBCBm37xk6KJh9M0/FIKlvdltQBem52YUiuqVl1XLB87Y6v6tvspn3SZ9fuxEA==} - engines: {node: '>=18.0.0'} - peerDependencies: - react: 18.2.0 - - '@react-email/html@0.0.7': - resolution: {integrity: sha512-oy7OoRtoOKApVI/5Lz1OZptMKmMYJu9Xn6+lOmdBQchAuSdQtWJqxhrSj/iI/mm8HZWo6MZEQ6SFpfOuf8/P6Q==} - engines: {node: '>=18.0.0'} - peerDependencies: - react: 18.2.0 - - '@react-email/img@0.0.7': - resolution: {integrity: sha512-up9tM2/dJ24u/CFjcvioKbyGuPw1yeJg605QA7VkrygEhd0CoQEjjgumfugpJ+VJgIt4ZjT9xMVCK5QWTIWoaA==} - engines: {node: '>=18.0.0'} - peerDependencies: - react: 18.2.0 - - '@react-email/link@0.0.7': - resolution: {integrity: sha512-hXPChT3ZMyKnUSA60BLEMD2maEgyB2A37yg5bASbLMrXmsExHi6/IS1h2XiUPLDK4KqH5KFaFxi2cdNo1JOKwA==} - engines: {node: '>=18.0.0'} - peerDependencies: - react: 18.2.0 - - '@react-email/preview@0.0.8': - resolution: {integrity: sha512-Jm0KUYBZQd2w0s2QRMQy0zfHdo3Ns+9bYSE1OybjknlvhANirjuZw9E5KfWgdzO7PyrRtB1OBOQD8//Obc4uIQ==} - engines: {node: '>=18.0.0'} - peerDependencies: - react: 18.2.0 - - '@react-email/render@0.0.12': - resolution: {integrity: sha512-S8WRv/PqECEi6x0QJBj0asnAb5GFtJaHlnByxLETLkgJjc76cxMYDH4r9wdbuJ4sjkcbpwP3LPnVzwS+aIjT7g==} - engines: {node: '>=18.0.0'} - - '@react-email/row@0.0.7': - resolution: {integrity: sha512-h7pwrLVGk5CIx7Ai/oPxBgCCAGY7BEpCUQ7FCzi4+eThcs5IdjSwDPefLEkwaFS8KZc56UNwTAH92kNq5B7blg==} - engines: {node: '>=18.0.0'} - peerDependencies: - react: 18.2.0 - - '@react-email/section@0.0.11': - resolution: {integrity: sha512-3bZ/DuvX1julATI7oqYza6pOtWZgLJDBaa62LFFEvYjisyN+k6lrP2KOucPsDKu2DOkUzlQgK0FOm6VQJX+C0w==} - engines: {node: '>=18.0.0'} - peerDependencies: - react: 18.2.0 - - '@react-email/tailwind@0.0.14': - resolution: {integrity: sha512-SRRcm08zxrAR5XozaW0X+GAJlTJITakZe0UXBiFZDlSDBLwFMxjaGuQwccqNF0LxDnxmduxYB71mzEAqecgTZg==} - engines: {node: '>=18.0.0'} - peerDependencies: - react: 18.2.0 - - '@react-email/text@0.0.7': - resolution: {integrity: sha512-eHCx0mdllGcgK9X7wiLKjNZCBRfxRVNjD3NNYRmOc3Icbl8M9JHriJIfxBuGCmGg2UAORK5P3KmaLQ8b99/pbA==} - engines: {node: '>=18.0.0'} - peerDependencies: - react: 18.2.0 - - '@rushstack/eslint-patch@1.6.0': - resolution: {integrity: sha512-2/U3GXA6YiPYQDLGwtGlnNgKYBSwCFIHf8Y9LUY5VATHdtbLlU0Y1R3QoBnT0aB4qv/BEiVVsj7LJXoQCgJ2vA==} - - '@selderee/plugin-htmlparser2@0.11.0': - resolution: {integrity: sha512-P33hHGdldxGabLFjPPpaTxVolMrzrcegejx+0GxjrIb9Zv48D8yAIA/QTDR2dFl7Uz7urX8aX6+5bCZslr+gWQ==} - - '@shelf/jest-mongodb@4.2.0': - resolution: {integrity: sha512-AtrG0EGtoDX4/jiTHlVCtAT0QAW1RjKQDYVXK89fog07RcKr42r6hYOL+7XT/8Wj9pEmnOc1GoYQUWiOk0y8Nw==} - engines: {node: '>=16'} - peerDependencies: - jest-environment-node: 27.x.x || 28.x || 29.x - mongodb: 3.x.x || 4.x || 5.x || 6.x - - '@sinclair/typebox@0.25.23': - resolution: {integrity: sha512-VEB8ygeP42CFLWyAJhN5OklpxUliqdNEUcXb4xZ/CINqtYGTjL5ukluKdKzQ0iWdUxyQ7B0539PAUhHKrCNWSQ==} - - '@sinclair/typebox@0.27.8': - resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} - - '@sinonjs/commons@2.0.0': - resolution: {integrity: sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==} - - '@sinonjs/fake-timers@10.0.2': - resolution: {integrity: sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw==} - - '@smithy/abort-controller@2.2.0': - resolution: {integrity: sha512-wRlta7GuLWpTqtFfGo+nZyOO1vEvewdNR1R4rTxpC8XU6vG/NDyrFBhwLZsqg1NUoR1noVaXJPC/7ZK47QCySw==} - engines: {node: '>=14.0.0'} - - '@smithy/chunked-blob-reader-native@2.2.0': - resolution: {integrity: sha512-VNB5+1oCgX3Fzs072yuRsUoC2N4Zg/LJ11DTxX3+Qu+Paa6AmbIF0E9sc2wthz9Psrk/zcOlTCyuposlIhPjZQ==} - - '@smithy/chunked-blob-reader@2.2.0': - resolution: {integrity: sha512-3GJNvRwXBGdkDZZOGiziVYzDpn4j6zfyULHMDKAGIUo72yHALpE9CbhfQp/XcLNVoc1byfMpn6uW5H2BqPjgaQ==} - - '@smithy/config-resolver@2.2.0': - resolution: {integrity: sha512-fsiMgd8toyUba6n1WRmr+qACzXltpdDkPTAaDqc8QqPBUzO+/JKwL6bUBseHVi8tu9l+3JOK+tSf7cay+4B3LA==} - engines: {node: '>=14.0.0'} - - '@smithy/core@1.4.0': - resolution: {integrity: sha512-uu9ZDI95Uij4qk+L6kyFjdk11zqBkcJ3Lv0sc6jZrqHvLyr0+oeekD3CnqMafBn/5PRI6uv6ulW3kNLRBUHeVw==} - engines: {node: '>=14.0.0'} - - '@smithy/credential-provider-imds@2.3.0': - resolution: {integrity: sha512-BWB9mIukO1wjEOo1Ojgl6LrG4avcaC7T/ZP6ptmAaW4xluhSIPZhY+/PI5YKzlk+jsm+4sQZB45Bt1OfMeQa3w==} - engines: {node: '>=14.0.0'} - - '@smithy/eventstream-codec@2.2.0': - resolution: {integrity: sha512-8janZoJw85nJmQZc4L8TuePp2pk1nxLgkxIR0TUjKJ5Dkj5oelB9WtiSSGXCQvNsJl0VSTvK/2ueMXxvpa9GVw==} - - '@smithy/eventstream-serde-browser@2.2.0': - resolution: {integrity: sha512-UaPf8jKbcP71BGiO0CdeLmlg+RhWnlN8ipsMSdwvqBFigl5nil3rHOI/5GE3tfiuX8LvY5Z9N0meuU7Rab7jWw==} - engines: {node: '>=14.0.0'} - - '@smithy/eventstream-serde-config-resolver@2.2.0': - resolution: {integrity: sha512-RHhbTw/JW3+r8QQH7PrganjNCiuiEZmpi6fYUAetFfPLfZ6EkiA08uN3EFfcyKubXQxOwTeJRZSQmDDCdUshaA==} - engines: {node: '>=14.0.0'} - - '@smithy/eventstream-serde-node@2.2.0': - resolution: {integrity: sha512-zpQMtJVqCUMn+pCSFcl9K/RPNtQE0NuMh8sKpCdEHafhwRsjP50Oq/4kMmvxSRy6d8Jslqd8BLvDngrUtmN9iA==} - engines: {node: '>=14.0.0'} - - '@smithy/eventstream-serde-universal@2.2.0': - resolution: {integrity: sha512-pvoe/vvJY0mOpuF84BEtyZoYfbehiFj8KKWk1ds2AT0mTLYFVs+7sBJZmioOFdBXKd48lfrx1vumdPdmGlCLxA==} - engines: {node: '>=14.0.0'} - - '@smithy/fetch-http-handler@2.5.0': - resolution: {integrity: sha512-BOWEBeppWhLn/no/JxUL/ghTfANTjT7kg3Ww2rPqTUY9R4yHPXxJ9JhMe3Z03LN3aPwiwlpDIUcVw1xDyHqEhw==} - - '@smithy/hash-blob-browser@2.2.0': - resolution: {integrity: sha512-SGPoVH8mdXBqrkVCJ1Hd1X7vh1zDXojNN1yZyZTZsCno99hVue9+IYzWDjq/EQDDXxmITB0gBmuyPh8oAZSTcg==} - - '@smithy/hash-node@2.2.0': - resolution: {integrity: sha512-zLWaC/5aWpMrHKpoDF6nqpNtBhlAYKF/7+9yMN7GpdR8CzohnWfGtMznPybnwSS8saaXBMxIGwJqR4HmRp6b3g==} - engines: {node: '>=14.0.0'} - - '@smithy/hash-stream-node@2.2.0': - resolution: {integrity: sha512-aT+HCATOSRMGpPI7bi7NSsTNVZE/La9IaxLXWoVAYMxHT5hGO3ZOGEMZQg8A6nNL+pdFGtZQtND1eoY084HgHQ==} - engines: {node: '>=14.0.0'} - - '@smithy/invalid-dependency@2.2.0': - resolution: {integrity: sha512-nEDASdbKFKPXN2O6lOlTgrEEOO9NHIeO+HVvZnkqc8h5U9g3BIhWsvzFo+UcUbliMHvKNPD/zVxDrkP1Sbgp8Q==} - - '@smithy/is-array-buffer@2.2.0': - resolution: {integrity: sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==} - engines: {node: '>=14.0.0'} - - '@smithy/md5-js@2.2.0': - resolution: {integrity: sha512-M26XTtt9IIusVMOWEAhIvFIr9jYj4ISPPGJROqw6vXngO3IYJCnVVSMFn4Tx1rUTG5BiKJNg9u2nxmBiZC5IlQ==} - - '@smithy/middleware-content-length@2.2.0': - resolution: {integrity: sha512-5bl2LG1Ah/7E5cMSC+q+h3IpVHMeOkG0yLRyQT1p2aMJkSrZG7RlXHPuAgb7EyaFeidKEnnd/fNaLLaKlHGzDQ==} - engines: {node: '>=14.0.0'} - - '@smithy/middleware-endpoint@2.5.0': - resolution: {integrity: sha512-OBhI9ZEAG8Xen0xsFJwwNOt44WE2CWkfYIxTognC8x42Lfsdf0VN/wCMqpdkySMDio/vts10BiovAxQp0T0faA==} - engines: {node: '>=14.0.0'} - - '@smithy/middleware-retry@2.2.0': - resolution: {integrity: sha512-PsjDOLpbevgn37yJbawmfVoanru40qVA8UEf2+YA1lvOefmhuhL6ZbKtGsLAWDRnE1OlAmedsbA/htH6iSZjNA==} - engines: {node: '>=14.0.0'} - - '@smithy/middleware-serde@2.3.0': - resolution: {integrity: sha512-sIADe7ojwqTyvEQBe1nc/GXB9wdHhi9UwyX0lTyttmUWDJLP655ZYE1WngnNyXREme8I27KCaUhyhZWRXL0q7Q==} - engines: {node: '>=14.0.0'} - - '@smithy/middleware-stack@2.2.0': - resolution: {integrity: sha512-Qntc3jrtwwrsAC+X8wms8zhrTr0sFXnyEGhZd9sLtsJ/6gGQKFzNB+wWbOcpJd7BR8ThNCoKt76BuQahfMvpeA==} - engines: {node: '>=14.0.0'} - - '@smithy/node-config-provider@2.3.0': - resolution: {integrity: sha512-0elK5/03a1JPWMDPaS726Iw6LpQg80gFut1tNpPfxFuChEEklo2yL823V94SpTZTxmKlXFtFgsP55uh3dErnIg==} - engines: {node: '>=14.0.0'} - - '@smithy/node-http-handler@2.5.0': - resolution: {integrity: sha512-mVGyPBzkkGQsPoxQUbxlEfRjrj6FPyA3u3u2VXGr9hT8wilsoQdZdvKpMBFMB8Crfhv5dNkKHIW0Yyuc7eABqA==} - engines: {node: '>=14.0.0'} - - '@smithy/property-provider@2.2.0': - resolution: {integrity: sha512-+xiil2lFhtTRzXkx8F053AV46QnIw6e7MV8od5Mi68E1ICOjCeCHw2XfLnDEUHnT9WGUIkwcqavXjfwuJbGlpg==} - engines: {node: '>=14.0.0'} - - '@smithy/protocol-http@3.3.0': - resolution: {integrity: sha512-Xy5XK1AFWW2nlY/biWZXu6/krgbaf2dg0q492D8M5qthsnU2H+UgFeZLbM76FnH7s6RO/xhQRkj+T6KBO3JzgQ==} - engines: {node: '>=14.0.0'} - - '@smithy/querystring-builder@2.2.0': - resolution: {integrity: sha512-L1kSeviUWL+emq3CUVSgdogoM/D9QMFaqxL/dd0X7PCNWmPXqt+ExtrBjqT0V7HLN03Vs9SuiLrG3zy3JGnE5A==} - engines: {node: '>=14.0.0'} - - '@smithy/querystring-parser@2.2.0': - resolution: {integrity: sha512-BvHCDrKfbG5Yhbpj4vsbuPV2GgcpHiAkLeIlcA1LtfpMz3jrqizP1+OguSNSj1MwBHEiN+jwNisXLGdajGDQJA==} - engines: {node: '>=14.0.0'} - - '@smithy/service-error-classification@2.1.5': - resolution: {integrity: sha512-uBDTIBBEdAQryvHdc5W8sS5YX7RQzF683XrHePVdFmAgKiMofU15FLSM0/HU03hKTnazdNRFa0YHS7+ArwoUSQ==} - engines: {node: '>=14.0.0'} - - '@smithy/shared-ini-file-loader@2.4.0': - resolution: {integrity: sha512-WyujUJL8e1B6Z4PBfAqC/aGY1+C7T0w20Gih3yrvJSk97gpiVfB+y7c46T4Nunk+ZngLq0rOIdeVeIklk0R3OA==} - engines: {node: '>=14.0.0'} - - '@smithy/signature-v4@2.2.0': - resolution: {integrity: sha512-+B5TNzj/fRZzVW3z8UUJOkNx15+4E0CLuvJmJUA1JUIZFp3rdJ/M2H5r2SqltaVPXL0oIxv/6YK92T9TsFGbFg==} - engines: {node: '>=14.0.0'} - - '@smithy/smithy-client@2.5.0': - resolution: {integrity: sha512-DDXWHWdimtS3y/Kw1Jo46KQ0ZYsDKcldFynQERUGBPDpkW1lXOTHy491ALHjwfiBQvzsVKVxl5+ocXNIgJuX4g==} - engines: {node: '>=14.0.0'} - - '@smithy/types@2.12.0': - resolution: {integrity: sha512-QwYgloJ0sVNBeBuBs65cIkTbfzV/Q6ZNPCJ99EICFEdJYG50nGIY/uYXp+TbsdJReIuPr0a0kXmCvren3MbRRw==} - engines: {node: '>=14.0.0'} - - '@smithy/url-parser@2.2.0': - resolution: {integrity: sha512-hoA4zm61q1mNTpksiSWp2nEl1dt3j726HdRhiNgVJQMj7mLp7dprtF57mOB6JvEk/x9d2bsuL5hlqZbBuHQylQ==} - - '@smithy/util-base64@2.3.0': - resolution: {integrity: sha512-s3+eVwNeJuXUwuMbusncZNViuhv2LjVJ1nMwTqSA0XAC7gjKhqqxRdJPhR8+YrkoZ9IiIbFk/yK6ACe/xlF+hw==} - engines: {node: '>=14.0.0'} - - '@smithy/util-body-length-browser@2.2.0': - resolution: {integrity: sha512-dtpw9uQP7W+n3vOtx0CfBD5EWd7EPdIdsQnWTDoFf77e3VUf05uA7R7TGipIo8e4WL2kuPdnsr3hMQn9ziYj5w==} - - '@smithy/util-body-length-node@2.3.0': - resolution: {integrity: sha512-ITWT1Wqjubf2CJthb0BuT9+bpzBfXeMokH/AAa5EJQgbv9aPMVfnM76iFIZVFf50hYXGbtiV71BHAthNWd6+dw==} - engines: {node: '>=14.0.0'} - - '@smithy/util-buffer-from@2.2.0': - resolution: {integrity: sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==} - engines: {node: '>=14.0.0'} - - '@smithy/util-config-provider@2.3.0': - resolution: {integrity: sha512-HZkzrRcuFN1k70RLqlNK4FnPXKOpkik1+4JaBoHNJn+RnJGYqaa3c5/+XtLOXhlKzlRgNvyaLieHTW2VwGN0VQ==} - engines: {node: '>=14.0.0'} - - '@smithy/util-defaults-mode-browser@2.2.0': - resolution: {integrity: sha512-2okTdZaCBvOJszAPU/KSvlimMe35zLOKbQpHhamFJmR7t95HSe0K3C92jQPjKY3PmDBD+7iMkOnuW05F5OlF4g==} - engines: {node: '>= 10.0.0'} - - '@smithy/util-defaults-mode-node@2.3.0': - resolution: {integrity: sha512-hfKXnNLmsW9cmLb/JXKIvtuO6Cf4SuqN5PN1C2Ru/TBIws+m1wSgb+A53vo0r66xzB6E82inKG2J7qtwdi+Kkw==} - engines: {node: '>= 10.0.0'} - - '@smithy/util-endpoints@1.2.0': - resolution: {integrity: sha512-BuDHv8zRjsE5zXd3PxFXFknzBG3owCpjq8G3FcsXW3CykYXuEqM3nTSsmLzw5q+T12ZYuDlVUZKBdpNbhVtlrQ==} - engines: {node: '>= 14.0.0'} - - '@smithy/util-hex-encoding@2.2.0': - resolution: {integrity: sha512-7iKXR+/4TpLK194pVjKiasIyqMtTYJsgKgM242Y9uzt5dhHnUDvMNb+3xIhRJ9QhvqGii/5cRUt4fJn3dtXNHQ==} - engines: {node: '>=14.0.0'} - - '@smithy/util-middleware@2.2.0': - resolution: {integrity: sha512-L1qpleXf9QD6LwLCJ5jddGkgWyuSvWBkJwWAZ6kFkdifdso+sk3L3O1HdmPvCdnCK3IS4qWyPxev01QMnfHSBw==} - engines: {node: '>=14.0.0'} - - '@smithy/util-retry@2.2.0': - resolution: {integrity: sha512-q9+pAFPTfftHXRytmZ7GzLFFrEGavqapFc06XxzZFcSIGERXMerXxCitjOG1prVDR9QdjqotF40SWvbqcCpf8g==} - engines: {node: '>= 14.0.0'} - - '@smithy/util-stream@2.2.0': - resolution: {integrity: sha512-17faEXbYWIRst1aU9SvPZyMdWmqIrduZjVOqCPMIsWFNxs5yQQgFrJL6b2SdiCzyW9mJoDjFtgi53xx7EH+BXA==} - engines: {node: '>=14.0.0'} - - '@smithy/util-uri-escape@2.2.0': - resolution: {integrity: sha512-jtmJMyt1xMD/d8OtbVJ2gFZOSKc+ueYJZPW20ULW1GOp/q/YIM0wNh+u8ZFao9UaIGz4WoPW8hC64qlWLIfoDA==} - engines: {node: '>=14.0.0'} - - '@smithy/util-utf8@2.3.0': - resolution: {integrity: sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==} - engines: {node: '>=14.0.0'} - - '@smithy/util-waiter@2.2.0': - resolution: {integrity: sha512-IHk53BVw6MPMi2Gsn+hCng8rFA3ZmR3Rk7GllxDUW9qFJl/hiSvskn7XldkECapQVkIg/1dHpMAxI9xSTaLLSA==} - engines: {node: '>=14.0.0'} - - '@socket.io/component-emitter@3.1.0': - resolution: {integrity: sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==} - - '@socket.io/redis-adapter@8.1.0': - resolution: {integrity: sha512-8nGMKcQ+DWpgefxA/Pi25aLajVilRPKwu29mZXu5cT+WGVYItcCkfMr4RsMmyYXUyJf00mN+7WinVLihmJwpXA==} - engines: {node: '>=10.0.0'} - peerDependencies: - socket.io-adapter: ^2.4.0 - - '@socket.io/redis-emitter@5.1.0': - resolution: {integrity: sha512-QQUFPBq6JX7JIuM/X1811ymKlAfwufnQ8w6G2/59Jaqp09hdF1GJ/+e8eo/XdcmT0TqkvcSa2TT98ggTXa5QYw==} - - '@storybook/addon-actions@7.6.14': - resolution: {integrity: sha512-hFVB/ejxBdE6J3wOEPSx6aFB51PqDfQ/YR4ik5GCGJb3cmUX7d/FY8zH0TKJLXcG/Hw3XoxNiEo5AaMVxtGVGA==} - - '@storybook/addon-backgrounds@7.6.14': - resolution: {integrity: sha512-R6OblK71iKIwpxTZQhuOpbktIT5pNrfMNe4/lkIP2F6Dv9HgHwvg95Bpt0ebHKlRvD7KNwj1whKjJh1fO3yLgQ==} - - '@storybook/addon-controls@7.6.14': - resolution: {integrity: sha512-KJRPdzbXjitqCixMzMjkcRYJGIts9wrx2Qk7NCSXCbE0LDdT+U7//25luLp5DrRiPdqIVEQjNcLF10frljaA9g==} - - '@storybook/addon-docs@7.6.14': - resolution: {integrity: sha512-fH3voEcHuJmMXNIT6Lxs5ve+dM6P74gwhdyMj21WIp8DnYM99RrmjvT1k/3+tGknL/7oGM+4Y2DLyy2KYFc6HQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@storybook/addon-essentials@7.6.14': - resolution: {integrity: sha512-1CcpLvzmvXyRhxbc2FgVbchpu7EMEeAjNY2lQ8ejn4cwLuIeWvYI61Cq4swiEmcEOEzi9Uvrq9q1bua9N1fPqw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@storybook/addon-highlight@7.6.14': - resolution: {integrity: sha512-VQTgLm6jPKN7DOhrx0mY5yrhQxOiidQt4yoazJTgzn+aV7zBFKn+GtF1W38QrnFtq5Mr8VJsEByEdtVCqMcmyw==} - - '@storybook/addon-interactions@7.6.14': - resolution: {integrity: sha512-vgZtP6JIMoZIE5JAzUW3Hw+l6I/xxTfvCbbw56ZfBFtl23LydkIg4nGJdi9/6vX61NDRUtRmNJX+/6ZrB7uK3A==} - - '@storybook/addon-links@7.6.14': - resolution: {integrity: sha512-xzDWQEzntia9ArFQC95TEw/Tqp/cNFq0SSuQQ6d9/ryQczuSdRGFHRmEd99/92ufNgCGPaRZOB7sweiKG0bkzA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - react: - optional: true - - '@storybook/addon-measure@7.6.14': - resolution: {integrity: sha512-bRy3SEv4uf1csDe5H8Lg3wUDg1uMZo6/j2FwNjvUmW+vcasj3VsqPKQjT6KO+LjCXsQ1pIAHu1HcUh2v/Qoitw==} - - '@storybook/addon-onboarding@1.0.11': - resolution: {integrity: sha512-0Sa7PJDsM6AANOWZX7vq3kgCbS9AZFjr3tfr3bLGfXviwIBKjoZDDdIErJkS3D4mNcDa78lYQvp3PTCKwLIJ9A==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@storybook/addon-outline@7.6.14': - resolution: {integrity: sha512-RH3arZYMBBxoqif4pnKN8m8Vt8setpeh0kz6oA+Ilhf/Z8Wz5jWiYDvTL5WW3+E+XGLrIFwH87wmJLN0egKqtA==} - - '@storybook/addon-styling-webpack@0.0.6': - resolution: {integrity: sha512-JjM2FXFiHpjbJsp7nRUEMhYBRpK6ukBKsbtWzCrAGOfUgoElcGwPY8KhSKSnRknIhebonGK1bxalh3u8bGZ/dw==} - peerDependencies: - webpack: ^5.0.0 - - '@storybook/addon-toolbars@7.6.14': - resolution: {integrity: sha512-/Zea9XgmxJp/5pQ+PKw+FGj2s2POIur/9uCUmLBWPDAMIW+kugOYZ/i8krrcHDPJ7nG2rtUJbeSliod9h2tpfw==} - - '@storybook/addon-viewport@7.6.14': - resolution: {integrity: sha512-7GbJyXFP3QCZezUQ+75VdjBpyXWutdFY0YMM/3JTjU+Khutbph3RurMTi4dRiBndAIPXlReNm1AnnYX5w+jd9w==} - - '@storybook/addons@7.6.9': - resolution: {integrity: sha512-//rYHXiLJ3MnbbozJg04LGRP93awX76r3daFqJW+d8nghUbUv/x52QbSl2pxY29623yNAmBVeKtAPTTqmax3YQ==} - - '@storybook/blocks@7.6.14': - resolution: {integrity: sha512-DZOSEWSNptAhaeNiOG0BqidJxqi/KaAZ2ZnlygpswDDT9vOCGoc7edZEgrq/i83M55KZFD4IXVLYFdfpjRcirQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@storybook/builder-manager@7.6.14': - resolution: {integrity: sha512-pID/g2Bnr3tjmkh8c+O6TZei3f1TWHW/UWi/skNQ3wGJ+9dqJIK2vQY5SwnXBWkmJdUqGVXaW5BvzR8jjfpTxQ==} - - '@storybook/builder-webpack5@7.6.14': - resolution: {integrity: sha512-J5kwNDB/osGiv40hDXKrFNasu8GpXp1tGZa2RLFEeHncrbf+wDpWyr188+bviS2gnw9OtxWI7krFGoUoNdjWDg==} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@storybook/channels@7.6.14': - resolution: {integrity: sha512-tyrnnXTh7Ca6HbtzYtZGZmbUkC+eYPdot41+YDERMxXCnejd18BnsH/pyGW66GwgY079Q7uhdDFyM63ynZrt/A==} - - '@storybook/channels@7.6.9': - resolution: {integrity: sha512-goGGZPT294CS1QDF65Fs+PCauvM/nTMseU913ZVSZbFTk4uvqIXOaOraqhQze8A/C8a0yls4qu2Wp00tCnyaTA==} - - '@storybook/cli@7.6.14': - resolution: {integrity: sha512-2xqcGRPtj/OE+9ro92C5MFCT8VHdMCDDuZZRnmgPi83iqSZtYbO8xHZwz78j4TvmouHstOV1SedeWv0IsFIxLw==} - hasBin: true - - '@storybook/client-logger@7.6.14': - resolution: {integrity: sha512-rHa2hLU+80BN5E58Shf1g09YS6QEEOk5hwMuJ4WJfAypMDYPjnIsOYUboHClkCA9TDCH/iVhyRSPy83NWN2MZg==} - - '@storybook/client-logger@7.6.9': - resolution: {integrity: sha512-Xm6fa6AR3cjxabauMldBv/66OOp5IhDiUEpp4D/a7hXfvCWqwmjVJ6EPz9WzkMhcPbMJr8vWJBaS3glkFqsRng==} - - '@storybook/codemod@7.6.14': - resolution: {integrity: sha512-Sq/Q12KmvzaSUtmbtD26cEEGVmZLUA+iiNHbl0n65MMka6QBGG/VgSPvSgu+GEpKowbVoqfMpH4Ic16A6XsNFg==} - - '@storybook/components@7.6.14': - resolution: {integrity: sha512-kukLj6B2xaIbKAq8E2WUcU0KZ+keuvIo0VcfrtSNHFbNvrNzHshajPC1dTO4NbgI3ey2SmD0rp71eh06TUQ9ng==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@storybook/components@7.6.9': - resolution: {integrity: sha512-N1IBTJZhLxyoXbm5tR6s34cVEkTVwlsDzTHX0eUiBX5NyspeGjz+dTIubZb/L7zd5w4qHAB7BH7sXw1jIfFGeA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@storybook/core-client@7.6.14': - resolution: {integrity: sha512-2q+R6olHLS5GJBTZNdKscTKJ8YwKOatKx6QjktFTfxfLRfBfOGSepignYy8JnEGuU4iTOwBekmUDm5dWAUjnQg==} - - '@storybook/core-common@7.6.14': - resolution: {integrity: sha512-0CIfwdjY5+OO6B+WxeCx3fZou1wk50RU9hFOMGwJ2yj/5ilV06xVHt0HNrA2x37zaK7r370PjOuny0Xudba03g==} - - '@storybook/core-common@7.6.9': - resolution: {integrity: sha512-K3xHn2wvyTRXv+boAei5mVqO6P+5EGdGAILF+iSINrdNfz899HAovlnj68dBZguiHqFibhYyFIv1PyGuPgVn6g==} - - '@storybook/core-events@7.6.14': - resolution: {integrity: sha512-zuSMjOgju7WLFL+okTXVvOKKNzwqVGRVp5UhXeSikT4aXuVdpfepCfikkjntn12G1ybL7mfFCsBU2DV1lwwp6Q==} - - '@storybook/core-events@7.6.9': - resolution: {integrity: sha512-YCds7AA6sbnnZ2qq5l+AIxhQqYlXB8eVTkjj6phgczsLjkqKapYFxAFc3ppRnE0FcsL2iji17ikHzZ8+eHYznA==} - - '@storybook/core-server@7.6.14': - resolution: {integrity: sha512-OSUunvjXyUiyfGet8ZBz7/Lka6dSgbbVMH7lU6wELIYCd2ZUxU5HQMl9JPesl61wWB4L3JaWFAoMRaCVI7q0xQ==} - - '@storybook/core-webpack@7.6.14': - resolution: {integrity: sha512-aKykzFPHai9Tq9625PTftmg0sgdqU5VcY0ezBiT/MSrNr9aLORIXwIh7q4Xrx0ItwtnLBxvO9UZLy55CXeQkfg==} - - '@storybook/csf-plugin@7.6.14': - resolution: {integrity: sha512-TYmtuLCzdWGy4/T6KYUBGdzRy/4cJzDQrDzWRWD7a+xcy1Z7wlKkXw+zWfxbNheEnxb146q5lIkRpvhevKgpGA==} - - '@storybook/csf-tools@7.6.14': - resolution: {integrity: sha512-s7XFIi823HhcKxTqHY/uU1QZCujLBjFt6OJa5y3XvwIMoLJWZtuT1PF/QPR0K7iYb9gQnGHwO9lZBfMraUywrQ==} - - '@storybook/csf-tools@7.6.9': - resolution: {integrity: sha512-1Lfq+d3NBhmCq07Tz3Fc5Y2szpXKFtQ8Xx9/Ht0NC/dihn8ZgRlFa8uak9BKNWh5kTQb4EP7e0PMmwyowR1JWQ==} - - '@storybook/csf@0.1.2': - resolution: {integrity: sha512-ePrvE/pS1vsKR9Xr+o+YwdqNgHUyXvg+1Xjx0h9LrVx7Zq4zNe06pd63F5EvzTbCbJsHj7GHr9tkiaqm7U8WRA==} - - '@storybook/docs-mdx@0.1.0': - resolution: {integrity: sha512-JDaBR9lwVY4eSH5W8EGHrhODjygPd6QImRbwjAuJNEnY0Vw4ie3bPkeGfnacB3OBW6u/agqPv2aRlR46JcAQLg==} - - '@storybook/docs-tools@7.6.14': - resolution: {integrity: sha512-8FCuVnty2d74cgF+qjhI/LTbGlf3mvu1OkKpLMp9xqouPy3X+yo9N8mpe2tIhgpRMTDzDScIeIBUpLrIpjHaXA==} - - '@storybook/global@5.0.0': - resolution: {integrity: sha512-FcOqPAXACP0I3oJ/ws6/rrPT9WGhu915Cg8D02a9YxLo0DE9zI+a9A5gRGvmQ09fiWPukqI8ZAEoQEdWUKMQdQ==} - - '@storybook/instrumenter@7.6.14': - resolution: {integrity: sha512-Xsuc6YTRZ+p8AI11rkxif98NjG3le1yMIRlZF30ZCGAWZWFCm5hkEf1gqzlOopC5jy+s6AtLM9pxP8dzz+kb2A==} - - '@storybook/manager-api@7.6.14': - resolution: {integrity: sha512-kZbcudrpQaYgUCrnBumDBPOvaEcvFBrZjM5v3AvMenVMXTjwlAHF8mZswE/ptpDsico2iSN96nMhd97OyaAuqA==} - - '@storybook/manager-api@7.6.9': - resolution: {integrity: sha512-WsgtgV4SHWWLfBhI7xFJ1fCHOeyW6sjMDGsxHifKHJAVH0liVkcGx2tddf7qms2CCdEpQ0Qc2pG14OpfOAlVJw==} - - '@storybook/manager@7.6.14': - resolution: {integrity: sha512-lgowunC/pm2y6d+3j7UJ/CkHpWC0o+nZ9b7mDbkJ6PmezW5Hpy83kbeCxbwRGosYoPQ0izBzVB5ZqGgKrNNDjA==} - - '@storybook/mdx2-csf@1.1.0': - resolution: {integrity: sha512-TXJJd5RAKakWx4BtpwvSNdgTDkKM6RkXU8GK34S/LhidQ5Pjz3wcnqb0TxEkfhK/ztbP8nKHqXFwLfa2CYkvQw==} - - '@storybook/nextjs@7.6.14': - resolution: {integrity: sha512-bYsBVYTxud243th9MPwqI5rMPvBXRlWucQYoU8Ktnb4U3gpBi2htpOC2XdAYCq/KEuueBmpHhSWoXDDlxkDN/Q==} - engines: {node: '>=16.0.0'} - peerDependencies: - '@next/font': ^13.0.0|| ^14.0.0 - next: ^9.0.0 || ^10.0.0 || ^11.0.0 || ^12.0.0 || ^13.0.0 || ^14.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - typescript: '*' - webpack: ^5.0.0 - peerDependenciesMeta: - '@next/font': - optional: true - typescript: - optional: true - webpack: - optional: true - - '@storybook/node-logger@7.6.14': - resolution: {integrity: sha512-prKUMGxGzeX3epdlin1UU6M1//CoAJM1GrffrFeNntnPr3h6GMTgxNzl85flUhWd4ky/wjC/36dGOI8QRYVtoA==} - - '@storybook/node-logger@7.6.9': - resolution: {integrity: sha512-JoK5mJkjjpFfbiXbCdCiQceIUzIfeHpYCDd6+Jpx9+Sk4osR3BgdW2qYBviosato9c9D3dvKyrfhzbSp5rX+bQ==} - - '@storybook/postinstall@7.6.14': - resolution: {integrity: sha512-ya3e5jvW1eSw4l3lhiGH2g+Gk8py2Tr3PW5ecnH/x1rD8Tt43OHXRQqiFfl7QzOudHxQGKQsO3lhWe8FJXvdbA==} - - '@storybook/preset-react-webpack@7.6.14': - resolution: {integrity: sha512-3qccFp01iCI1B5q6jnW2Rg+2aqedyAvxsjrQ7smfc/2IOoavztUkn0cYblVPGRiDXV2/2HEwWhtNYJh8NwLc9Q==} - engines: {node: '>=16.0.0'} - peerDependencies: - '@babel/core': ^7.22.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - typescript: '*' - peerDependenciesMeta: - '@babel/core': - optional: true - typescript: - optional: true - - '@storybook/preview-api@7.6.14': - resolution: {integrity: sha512-CnUEkTUK3ei3vw4Ypa9EOxEO9lCKc3HvVHxXu4z6Caoe/hRUc10Q6Nj1A7brqok1QLZ304qc715XdYFMahDhyA==} - - '@storybook/preview-api@7.6.9': - resolution: {integrity: sha512-qVRylkOc70Ivz/oRE3cXaQA9r60qXSCXhY8xFjnBvZFjoYr0ImGx+tt0818YzSkhTf6LsNbx9HxwW4+x7JD6dw==} - - '@storybook/preview@7.6.14': - resolution: {integrity: sha512-6Y873pNsJBQuCeR3YDMlRgRW+4Tf+Rj4VdujjvRw/H7ES1+pO8qgcI3VJCcoxqDY9ZNPT/riLh8YOddpLNCgNg==} - - '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0': - resolution: {integrity: sha512-KUqXC3oa9JuQ0kZJLBhVdS4lOneKTOopnNBK4tUAgoxWQ3u/IjzdueZjFr7gyBrXMoU6duutk3RQR9u8ZpYJ4Q==} - peerDependencies: - typescript: '>= 4.x' - webpack: '>= 4' - - '@storybook/react-dom-shim@7.6.14': - resolution: {integrity: sha512-Ldmc2tKj1N3vNYZpI791xgTbk0XdqJDm1a09fSRM4CeBu4BI7M9IjnNS4cHNdTeqtK9MbCSzCr1nxfxNCtrtiA==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@storybook/react@7.6.14': - resolution: {integrity: sha512-esWjMgVkYaIyS4ZvEkTrHUDLu9KkTE+wyiyRBINoZLeczAw1YHI5iNqKDMOAN+pOyCyM6iEYSZasAzsJTAFWYA==} - engines: {node: '>=16.0.0'} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@storybook/router@7.6.14': - resolution: {integrity: sha512-eVD7jVZeM8mppEtHsvkKIEN92stsdbiXDHG49iNVnw+ojOSjJ1HR8+Pm8wy5Cc2pcyoZEHeU356kaP9gXOhuOQ==} - - '@storybook/router@7.6.9': - resolution: {integrity: sha512-SSOt/rLcfrFYj+81zi1TOWBXgcx0nN6K41DPZ2T3ye94X8p1BNgxwj5P02/PB4SiOfEHJwTrXZDFUbZQMOo8aA==} - - '@storybook/telemetry@7.6.14': - resolution: {integrity: sha512-F+a9Q4dHCpuBLQmB05DOLosU8p1Otj3Vd+/5EF9QUFSn4C64z1gmMc3jzF3iUgktY53HdoUqR871w3GoOJ7g9A==} - - '@storybook/telemetry@7.6.9': - resolution: {integrity: sha512-0Dj2RH5oAL1mY72OcZKmiOlAcWyex2bwYJZUnsFrA+RFvOr7FbHAVWwudz4orWzIkYFTESixF4wuF0mYk8ds6g==} - - '@storybook/test@7.6.14': - resolution: {integrity: sha512-zolxdbBk8JLDCi9TinD2eoH+LTKJOmEyC7A2wuBkJZ1+5N2/bd38kpyCUG/O1PoTf9KCxDNxviJKODTRMjwNow==} - - '@storybook/theming@7.6.14': - resolution: {integrity: sha512-jpryYjBAGLkFauSyNEoflSfYqO3srn98llNxhgxpc1P1ocmOzeDwdg7PUWDI9DCuJC+OWaXa1zzLO6uRLyEJAQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@storybook/theming@7.6.9': - resolution: {integrity: sha512-S2tow/l2HJFL7im+ovFQE0nLCzy/39qZU30/WVc8gM2dfM7Gsn6M4xiXu23BEwJHnCP8TIOBiCDN1JkOcOvvgg==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@storybook/types@7.6.14': - resolution: {integrity: sha512-sJ3qn45M2XLXlOi+wkhXK5xsXbSVzi8YGrusux//DttI3s8wCP3BQSnEgZkBiEktloxPferINHT1er8/9UK7Xw==} - - '@storybook/types@7.6.9': - resolution: {integrity: sha512-Qnx7exS6bO1MrqasHl12h8/HeBuxrwg2oMXROO7t0qmprV6+DGb6OxztsVIgbKR+m6uqFFM1q+f/Q5soI1qJ6g==} - - '@stripe/react-stripe-js@2.7.1': - resolution: {integrity: sha512-/i13alp27HaSBbMM6kW0jhy8KqdtOL1T/EcRjFjfhvt+CBtMEg8TD7y28W3oZG0+OBDdCyGGnXgNgrKPYQH40g==} - peerDependencies: - '@stripe/stripe-js': ^1.44.1 || ^2.0.0 || ^3.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - - '@stripe/stripe-js@3.4.1': - resolution: {integrity: sha512-6vFTA7+MzoQyhZDn/D3wWZrUE8M8OSUFJE2Y3O1okfBWr4eCLvMeSoZuYN2xb1KJ3J0bBw96YfKxY75M/H0JZw==} - engines: {node: '>=12.16'} - - '@svgr/babel-plugin-add-jsx-attribute@8.0.0': - resolution: {integrity: sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==} - engines: {node: '>=14'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@svgr/babel-plugin-remove-jsx-attribute@8.0.0': - resolution: {integrity: sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==} - engines: {node: '>=14'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0': - resolution: {integrity: sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==} - engines: {node: '>=14'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@svgr/babel-plugin-replace-jsx-attribute-value@8.0.0': - resolution: {integrity: sha512-KVQ+PtIjb1BuYT3ht8M5KbzWBhdAjjUPdlMtpuw/VjT8coTrItWX6Qafl9+ji831JaJcu6PJNKCV0bp01lBNzQ==} - engines: {node: '>=14'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@svgr/babel-plugin-svg-dynamic-title@8.0.0': - resolution: {integrity: sha512-omNiKqwjNmOQJ2v6ge4SErBbkooV2aAWwaPFs2vUY7p7GhVkzRkJ00kILXQvRhA6miHnNpXv7MRnnSjdRjK8og==} - engines: {node: '>=14'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@svgr/babel-plugin-svg-em-dimensions@8.0.0': - resolution: {integrity: sha512-mURHYnu6Iw3UBTbhGwE/vsngtCIbHE43xCRK7kCw4t01xyGqb2Pd+WXekRRoFOBIY29ZoOhUCTEweDMdrjfi9g==} - engines: {node: '>=14'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@svgr/babel-plugin-transform-react-native-svg@8.1.0': - resolution: {integrity: sha512-Tx8T58CHo+7nwJ+EhUwx3LfdNSG9R2OKfaIXXs5soiy5HtgoAEkDay9LIimLOcG8dJQH1wPZp/cnAv6S9CrR1Q==} - engines: {node: '>=14'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@svgr/babel-plugin-transform-svg-component@8.0.0': - resolution: {integrity: sha512-DFx8xa3cZXTdb/k3kfPeaixecQLgKh5NVBMwD0AQxOzcZawK4oo1Jh9LbrcACUivsCA7TLG8eeWgrDXjTMhRmw==} - engines: {node: '>=12'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@svgr/babel-preset@8.1.0': - resolution: {integrity: sha512-7EYDbHE7MxHpv4sxvnVPngw5fuR6pw79SkcrILHJ/iMpuKySNCl5W1qcwPEpU+LgyRXOaAFgH0KhwD18wwg6ug==} - engines: {node: '>=14'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@svgr/core@8.1.0': - resolution: {integrity: sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==} - engines: {node: '>=14'} - - '@svgr/hast-util-to-babel-ast@8.0.0': - resolution: {integrity: sha512-EbDKwO9GpfWP4jN9sGdYwPBU0kdomaPIL2Eu4YwmgP+sJeXT+L7bMwJUBnhzfH8Q2qMBqZ4fJwpCyYsAN3mt2Q==} - engines: {node: '>=14'} - - '@svgr/plugin-jsx@8.1.0': - resolution: {integrity: sha512-0xiIyBsLlr8quN+WyuxooNW9RJ0Dpr8uOnH/xrCVO8GLUcwHISwj1AG0k+LFzteTkAA0GbX0kj9q6Dk70PTiPA==} - engines: {node: '>=14'} - peerDependencies: - '@svgr/core': '*' - - '@svgr/plugin-svgo@8.1.0': - resolution: {integrity: sha512-Ywtl837OGO9pTLIN/onoWLmDQ4zFUycI1g76vuKGEz6evR/ZTJlJuz3G/fIkb6OVBJ2g0o6CGJzaEjfmEo3AHA==} - engines: {node: '>=14'} - peerDependencies: - '@svgr/core': '*' - - '@svgr/webpack@8.1.0': - resolution: {integrity: sha512-LnhVjMWyMQV9ZmeEy26maJk+8HTIbd59cH4F2MJ439k9DqejRisfFNGAPvRYlKETuh9LrImlS8aKsBgKjMA8WA==} - engines: {node: '>=14'} - - '@swc/core-darwin-arm64@1.3.101': - resolution: {integrity: sha512-mNFK+uHNPRXSnfTOG34zJOeMl2waM4hF4a2NY7dkMXrPqw9CoJn4MwTXJcyMiSz1/BnNjjTCHF3Yhj0jPxmkzQ==} - engines: {node: '>=10'} - cpu: [arm64] - os: [darwin] - - '@swc/core-darwin-arm64@1.3.104': - resolution: {integrity: sha512-rCnVj8x3kn6s914Adddu+zROHUn6mUEMkNKUckofs3W9OthNlZXJA3C5bS2MMTRFXCWamJ0Zmh6INFpz+f4Tfg==} - engines: {node: '>=10'} - cpu: [arm64] - os: [darwin] - - '@swc/core-darwin-x64@1.3.101': - resolution: {integrity: sha512-B085j8XOx73Fg15KsHvzYWG262bRweGr3JooO1aW5ec5pYbz5Ew9VS5JKYS03w2UBSxf2maWdbPz2UFAxg0whw==} - engines: {node: '>=10'} - cpu: [x64] - os: [darwin] - - '@swc/core-darwin-x64@1.3.104': - resolution: {integrity: sha512-LBCWGTYkn1UjyxrmcLS3vZgtCDVhwxsQMV7jz5duc7Gas8SRWh6ZYqvUkjlXMDX1yx0uvzHrkaRw445+zDRj7Q==} - engines: {node: '>=10'} - cpu: [x64] - os: [darwin] - - '@swc/core-linux-arm-gnueabihf@1.3.101': - resolution: {integrity: sha512-9xLKRb6zSzRGPqdz52Hy5GuB1lSjmLqa0lST6MTFads3apmx4Vgs8Y5NuGhx/h2I8QM4jXdLbpqQlifpzTlSSw==} - engines: {node: '>=10'} - cpu: [arm] - os: [linux] - - '@swc/core-linux-arm-gnueabihf@1.3.104': - resolution: {integrity: sha512-iFbsWcx0TKHWnFBNCuUstYqRtfkyBx7FKv5To1Hx14EMuvvoCD/qUoJEiNfDQN5n/xU9g5xq4RdbjEWCFLhAbA==} - engines: {node: '>=10'} - cpu: [arm] - os: [linux] - - '@swc/core-linux-arm64-gnu@1.3.101': - resolution: {integrity: sha512-oE+r1lo7g/vs96Weh2R5l971dt+ZLuhaUX+n3BfDdPxNHfObXgKMjO7E+QS5RbGjv/AwiPCxQmbdCp/xN5ICJA==} - engines: {node: '>=10'} - cpu: [arm64] - os: [linux] - - '@swc/core-linux-arm64-gnu@1.3.104': - resolution: {integrity: sha512-1BIIp+nUPrRHHaJ35YJqrwXPwYSITp5robqqjyTwoKGw2kq0x+A964kpWul6v0d7A9Ial8fyH4m13eSWBodD2A==} - engines: {node: '>=10'} - cpu: [arm64] - os: [linux] - - '@swc/core-linux-arm64-musl@1.3.101': - resolution: {integrity: sha512-OGjYG3H4BMOTnJWJyBIovCez6KiHF30zMIu4+lGJTCrxRI2fAjGLml3PEXj8tC3FMcud7U2WUn6TdG0/te2k6g==} - engines: {node: '>=10'} - cpu: [arm64] - os: [linux] - - '@swc/core-linux-arm64-musl@1.3.104': - resolution: {integrity: sha512-IyDNkzpKwvLqmRwTW+s8f8OsOSSj1N6juZKbvNHpZRfWZkz3T70q3vJlDBWQwy8z8cm7ckd7YUT3eKcSBPPowg==} - engines: {node: '>=10'} - cpu: [arm64] - os: [linux] - - '@swc/core-linux-x64-gnu@1.3.101': - resolution: {integrity: sha512-/kBMcoF12PRO/lwa8Z7w4YyiKDcXQEiLvM+S3G9EvkoKYGgkkz4Q6PSNhF5rwg/E3+Hq5/9D2R+6nrkF287ihg==} - engines: {node: '>=10'} - cpu: [x64] - os: [linux] - - '@swc/core-linux-x64-gnu@1.3.104': - resolution: {integrity: sha512-MfX/wiRdTjE5uXHTDnaX69xI4UBfxIhcxbVlMj//N+7AX/G2pl2UFityfVMU2HpM12BRckrCxVI8F/Zy3DZkYQ==} - engines: {node: '>=10'} - cpu: [x64] - os: [linux] - - '@swc/core-linux-x64-musl@1.3.101': - resolution: {integrity: sha512-kDN8lm4Eew0u1p+h1l3JzoeGgZPQ05qDE0czngnjmfpsH2sOZxVj1hdiCwS5lArpy7ktaLu5JdRnx70MkUzhXw==} - engines: {node: '>=10'} - cpu: [x64] - os: [linux] - - '@swc/core-linux-x64-musl@1.3.104': - resolution: {integrity: sha512-5yeILaxA31gGEmquErO8yxlq1xu0XVt+fz5mbbKXKZMRRILxYxNzAGb5mzV41r0oHz6Vhv4AXX/WMCmeWl+HkQ==} - engines: {node: '>=10'} - cpu: [x64] - os: [linux] - - '@swc/core-win32-arm64-msvc@1.3.101': - resolution: {integrity: sha512-9Wn8TTLWwJKw63K/S+jjrZb9yoJfJwCE2RV5vPCCWmlMf3U1AXj5XuWOLUX+Rp2sGKau7wZKsvywhheWm+qndQ==} - engines: {node: '>=10'} - cpu: [arm64] - os: [win32] - - '@swc/core-win32-arm64-msvc@1.3.104': - resolution: {integrity: sha512-rwcImsYnWDWGmeESG0XdGGOql5s3cG5wA8C4hHHKdH76zamPfDKKQFBsjmoNi0f1IsxaI9AJPeOmD4bAhT1ZoQ==} - engines: {node: '>=10'} - cpu: [arm64] - os: [win32] - - '@swc/core-win32-ia32-msvc@1.3.101': - resolution: {integrity: sha512-onO5KvICRVlu2xmr4//V2je9O2XgS1SGKpbX206KmmjcJhXN5EYLSxW9qgg+kgV5mip+sKTHTAu7IkzkAtElYA==} - engines: {node: '>=10'} - cpu: [ia32] - os: [win32] - - '@swc/core-win32-ia32-msvc@1.3.104': - resolution: {integrity: sha512-ICDA+CJLYC7NkePnrbh/MvXwDQfy3rZSFgrVdrqRosv9DKHdFjYDnA9++7ozjrIdFdBrFW2NR7pyUcidlwhNzA==} - engines: {node: '>=10'} - cpu: [ia32] - os: [win32] - - '@swc/core-win32-x64-msvc@1.3.101': - resolution: {integrity: sha512-T3GeJtNQV00YmiVw/88/nxJ/H43CJvFnpvBHCVn17xbahiVUOPOduh3rc9LgAkKiNt/aV8vU3OJR+6PhfMR7UQ==} - engines: {node: '>=10'} - cpu: [x64] - os: [win32] - - '@swc/core-win32-x64-msvc@1.3.104': - resolution: {integrity: sha512-fZJ1Ju62U4lMZVU+nHxLkFNcu0hG5Y0Yj/5zjrlbuX5N8J5eDndWAFsVnQhxRTZqKhZB53pvWRQs5FItSDqgXg==} - engines: {node: '>=10'} - cpu: [x64] - os: [win32] - - '@swc/core@1.3.101': - resolution: {integrity: sha512-w5aQ9qYsd/IYmXADAnkXPGDMTqkQalIi+kfFf/MHRKTpaOL7DHjMXwPp/n8hJ0qNjRvchzmPtOqtPBiER50d8A==} - engines: {node: '>=10'} - peerDependencies: - '@swc/helpers': ^0.5.0 - peerDependenciesMeta: - '@swc/helpers': - optional: true - - '@swc/core@1.3.104': - resolution: {integrity: sha512-9LWH/qzR/Pmyco+XwPiPfz59T1sryI7o5dmqb593MfCkaX5Fzl9KhwQTI47i21/bXYuCdfa9ySZuVkzXMirYxA==} - engines: {node: '>=10'} - peerDependencies: - '@swc/helpers': ^0.5.0 - peerDependenciesMeta: - '@swc/helpers': - optional: true - - '@swc/counter@0.1.2': - resolution: {integrity: sha512-9F4ys4C74eSTEUNndnER3VJ15oru2NumfQxS8geE+f3eB5xvfxpWyqE5XlVnxb/R14uoXi6SLbBwwiDSkv+XEw==} - - '@swc/helpers@0.5.2': - resolution: {integrity: sha512-E4KcWTpoLHqwPHLxidpOqQbcrZVgi0rsmmZXUle1jXmJfuIf/UWpczUJ7MZZ5tlxytgJXyp0w4PGkkeLiuIdZw==} - - '@swc/types@0.1.5': - resolution: {integrity: sha512-myfUej5naTBWnqOCc/MdVOLVjXUXtIA+NpDrDBKJtLLg2shUjBu3cZmB/85RyitKc55+lUUyl7oRfLOvkr2hsw==} - - '@tabler/icons-react@2.47.0': - resolution: {integrity: sha512-iqly2FvCF/qUbgmvS8E40rVeYY7laltc5GUjRxQj59DuX0x/6CpKHTXt86YlI2whg4czvd/c8Ce8YR08uEku0g==} - peerDependencies: - react: ^16.5.1 || ^17.0.0 || ^18.0.0 - - '@tabler/icons@2.47.0': - resolution: {integrity: sha512-4w5evLh+7FUUiA1GucvGj2ReX2TvOjEr4ejXdwL/bsjoSkof6r1gQmzqI+VHrE2CpJpB3al7bCTulOkFa/RcyA==} - - '@tanstack/query-core@5.20.1': - resolution: {integrity: sha512-OONHHYG5vzjob4An+EfzbW7TRyb+sCA0AEgHzUIMlV9NYlF7wIwbla3PUfB3ocnaK1gZyROf0Lux/CBSu0exBQ==} - - '@tanstack/query-devtools@5.20.1': - resolution: {integrity: sha512-sSYo+GW7tx28M6FpcGqzo/zblbTEKrCG8THXOPoNy+EL1Z7kX4JXhRcihyKu3mY8MS/wsGghrZ/R0VTt6JXmBA==} - - '@tanstack/react-query-devtools@5.20.1': - resolution: {integrity: sha512-VMjNjWLTu4+k0pGAhcsI8igtUI93ksrn4QDruaxbXdvLE3Yvfj8eaDVCemkmAySk7pCQJf4hhdByB/yOKSmIsg==} - peerDependencies: - '@tanstack/react-query': ^5.20.1 - react: ^18.0.0 - - '@tanstack/react-query@5.20.1': - resolution: {integrity: sha512-KRkOtJ47tv9B3EXfjHkbPkiFzOzYCOid8BrYBozk0rm9JpDB2xSf71q8w1PRudlQW6QUQIEDI9E6NIMh6AlLUw==} - peerDependencies: - react: ^18.0.0 - - '@tanstack/react-table@8.11.8': - resolution: {integrity: sha512-NEwvIq4iSiDQozEyvbdiSdCOiLa+g5xHmdEnvwDb98FObcK6YkBOkRrs/CNqrKdDy+/lqoIllIWHk+M80GW6+g==} - engines: {node: '>=12'} - peerDependencies: - react: '>=16' - react-dom: '>=16' - - '@tanstack/table-core@8.11.8': - resolution: {integrity: sha512-DECHvtq4YW4U/gqg6etup7ydt/RB1Bi1pJaMpHUXl65ooW1d71Nv7BzD66rUdHrBSNdyiW3PLTPUQlpXjAgDeA==} - engines: {node: '>=12'} - - '@testing-library/dom@9.3.4': - resolution: {integrity: sha512-FlS4ZWlp97iiNWig0Muq8p+3rVDjRiYE+YKGbAqXOu9nwJFFOdL00kFpz42M+4huzYi86vAK1sOOfyOG45muIQ==} - engines: {node: '>=14'} - - '@testing-library/jest-dom@6.2.0': - resolution: {integrity: sha512-+BVQlJ9cmEn5RDMUS8c2+TU6giLvzaHZ8sU/x0Jj7fk+6/46wPdwlgOPcpxS17CjcanBi/3VmGMqVr2rmbUmNw==} - engines: {node: '>=14', npm: '>=6', yarn: '>=1'} - peerDependencies: - '@jest/globals': '>= 28' - '@types/jest': '>= 28' - jest: '>= 28' - vitest: '>= 0.32' - peerDependenciesMeta: - '@jest/globals': - optional: true - '@types/jest': - optional: true - jest: - optional: true - vitest: - optional: true - - '@testing-library/user-event@14.3.0': - resolution: {integrity: sha512-P02xtBBa8yMaLhK8CzJCIns8rqwnF6FxhR9zs810flHOBXUYCFjLd8Io1rQrAkQRWEmW2PGdZIEdMxf/KLsqFA==} - engines: {node: '>=12', npm: '>=6'} - peerDependencies: - '@testing-library/dom': '>=7.21.4' - - '@trysound/sax@0.2.0': - resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==} - engines: {node: '>=10.13.0'} - - '@tsconfig/node10@1.0.9': - resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==} - - '@tsconfig/node12@1.0.11': - resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} - - '@tsconfig/node14@1.0.3': - resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} - - '@tsconfig/node16@1.0.4': - resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} - - '@types/accepts@1.3.5': - resolution: {integrity: sha512-jOdnI/3qTpHABjM5cx1Hc0sKsPoYCp+DP/GJRGtDlPd7fiV9oXGGIcjW/ZOxLIvjGz8MA+uMZI9metHlgqbgwQ==} - - '@types/aria-query@5.0.4': - resolution: {integrity: sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==} - - '@types/babel__core@7.20.0': - resolution: {integrity: sha512-+n8dL/9GWblDO0iU6eZAwEIJVr5DWigtle+Q6HLOrh/pdbXOhOtqzq8VPPE2zvNJzSKY4vH/z3iT3tn0A3ypiQ==} - - '@types/babel__generator@7.6.4': - resolution: {integrity: sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==} - - '@types/babel__template@7.4.1': - resolution: {integrity: sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==} - - '@types/babel__traverse@7.18.3': - resolution: {integrity: sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==} - - '@types/bcryptjs@2.4.2': - resolution: {integrity: sha512-LiMQ6EOPob/4yUL66SZzu6Yh77cbzJFYll+ZfaPiPPFswtIlA/Fs1MzdKYA7JApHU49zQTbJGX3PDmCpIdDBRQ==} - - '@types/body-parser@1.19.2': - resolution: {integrity: sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==} - - '@types/chai@4.3.11': - resolution: {integrity: sha512-qQR1dr2rGIHYlJulmr8Ioq3De0Le9E4MJ5AiaeAETJJpndT1uUNHsGFK3L/UIu+rbkQSdj8J/w2bCsBZc/Y5fQ==} - - '@types/connect@3.4.35': - resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==} - - '@types/content-disposition@0.5.5': - resolution: {integrity: sha512-v6LCdKfK6BwcqMo+wYW05rLS12S0ZO0Fl4w1h4aaZMD7bqT3gVUns6FvLJKGZHQmYn3SX55JWGpziwJRwVgutA==} - - '@types/cookie@0.4.1': - resolution: {integrity: sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==} - - '@types/cookies@0.7.7': - resolution: {integrity: sha512-h7BcvPUogWbKCzBR2lY4oqaZbO3jXZksexYJVFvkrFeLgbZjQkU4x8pRq6eg2MHXQhY0McQdqmmsxRWlVAHooA==} - - '@types/cors@2.8.13': - resolution: {integrity: sha512-RG8AStHlUiV5ysZQKq97copd2UmVYw3/pRMLefISZ3S1hK104Cwm7iLQ3fTKx+lsUH2CE8FlLaYeEA2LSeqYUA==} - - '@types/cross-spawn@6.0.6': - resolution: {integrity: sha512-fXRhhUkG4H3TQk5dBhQ7m/JDdSNHKwR2BBia62lhwEIq9xGiQKLxd6LymNhn47SjXhsUEPmxi+PKw2OkW4LLjA==} - - '@types/detect-port@1.3.5': - resolution: {integrity: sha512-Rf3/lB9WkDfIL9eEKaSYKc+1L/rNVYBjThk22JTqQw0YozXarX8YljFAz+HCoC6h4B4KwCMsBPZHaFezwT4BNA==} - - '@types/doctrine@0.0.3': - resolution: {integrity: sha512-w5jZ0ee+HaPOaX25X2/2oGR/7rgAQSYII7X7pp0m9KgBfMP7uKfMfTvcpl5Dj+eDBbpxKGiqE+flqDr6XTd2RA==} - - '@types/doctrine@0.0.9': - resolution: {integrity: sha512-eOIHzCUSH7SMfonMG1LsC2f8vxBFtho6NGBznK41R84YzPuvSBzrhEps33IsQiOW9+VL6NQ9DbjQJznk/S4uRA==} - - '@types/ejs@3.1.5': - resolution: {integrity: sha512-nv+GSx77ZtXiJzwKdsASqi+YQ5Z7vwHsTP0JY2SiQgjGckkBRKZnk8nIM+7oUZ1VCtuTz0+By4qVR7fqzp/Dfg==} - - '@types/emscripten@1.39.10': - resolution: {integrity: sha512-TB/6hBkYQJxsZHSqyeuO1Jt0AB/bW6G7rHt9g7lML7SOF6lbgcHvw/Lr+69iqN0qxgXLhWKScAon73JNnptuDw==} - - '@types/escodegen@0.0.6': - resolution: {integrity: sha512-AjwI4MvWx3HAOaZqYsjKWyEObT9lcVV0Y0V8nXo6cXzN8ZiMxVhf6F3d/UNvXVGKrEzL/Dluc5p+y9GkzlTWig==} - - '@types/eslint-scope@3.7.4': - resolution: {integrity: sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==} - - '@types/eslint@8.21.1': - resolution: {integrity: sha512-rc9K8ZpVjNcLs8Fp0dkozd5Pt2Apk1glO4Vgz8ix1u6yFByxfqo5Yavpy65o+93TAe24jr7v+eSBtFLvOQtCRQ==} - - '@types/estree@0.0.51': - resolution: {integrity: sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==} - - '@types/express-serve-static-core@4.17.33': - resolution: {integrity: sha512-TPBqmR/HRYI3eC2E5hmiivIzv+bidAfXofM+sbonAGvyDhySGw9/PQZFt2BLOrjUUR++4eJVpx6KnLQK1Fk9tA==} - - '@types/express@4.17.17': - resolution: {integrity: sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==} - - '@types/find-cache-dir@3.2.1': - resolution: {integrity: sha512-frsJrz2t/CeGifcu/6uRo4b+SzAwT4NYCVPu1GN8IB9XTzrpPkGuV0tmh9mN+/L0PklAlsC3u5Fxt0ju00LXIw==} - - '@types/graceful-fs@4.1.6': - resolution: {integrity: sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==} - - '@types/html-minifier-terser@6.1.0': - resolution: {integrity: sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==} - - '@types/http-assert@1.5.3': - resolution: {integrity: sha512-FyAOrDuQmBi8/or3ns4rwPno7/9tJTijVW6aQQjK02+kOQ8zmoNg2XJtAuQhvQcy1ASJq38wirX5//9J1EqoUA==} - - '@types/http-errors@2.0.1': - resolution: {integrity: sha512-/K3ds8TRAfBvi5vfjuz8y6+GiAYBZ0x4tXv1Av6CWBWn0IlADc+ZX9pMq7oU0fNQPnBwIZl3rmeLp6SBApbxSQ==} - - '@types/istanbul-lib-coverage@2.0.4': - resolution: {integrity: sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==} - - '@types/istanbul-lib-report@3.0.0': - resolution: {integrity: sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==} - - '@types/istanbul-reports@3.0.1': - resolution: {integrity: sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==} - - '@types/jest@29.5.12': - resolution: {integrity: sha512-eDC8bTvT/QhYdxJAulQikueigY5AsdBRH2yDKW3yveW7svY3+DzN84/2NUgkw10RTiJbWqZrTtoGVdYlvFJdLw==} - - '@types/json-schema@7.0.15': - resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} - - '@types/json5@0.0.29': - resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} - - '@types/jsonwebtoken@9.0.6': - resolution: {integrity: sha512-/5hndP5dCjloafCXns6SZyESp3Ldq7YjH3zwzwczYnjxIT0Fqzk5ROSYVGfFyczIue7IUEj8hkvLbPoLQ18vQw==} - - '@types/keygrip@1.0.2': - resolution: {integrity: sha512-GJhpTepz2udxGexqos8wgaBx4I/zWIDPh/KOGEwAqtuGDkOUJu5eFvwmdBX4AmB8Odsr+9pHCQqiAqDL/yKMKw==} - - '@types/koa-bodyparser@4.3.10': - resolution: {integrity: sha512-6ae05pjhmrmGhUR8GYD5qr5p9LTEMEGfGXCsK8VaSL+totwigm8+H/7MHW7K4854CMeuwRAubT8qcc/EagaeIA==} - - '@types/koa-compose@3.2.5': - resolution: {integrity: sha512-B8nG/OoE1ORZqCkBVsup/AKcvjdgoHnfi4pZMn5UwAPCbhk/96xyv284eBYW8JlQbQ7zDmnpFr68I/40mFoIBQ==} - - '@types/koa-helmet@6.0.4': - resolution: {integrity: sha512-cSmbgKkUauVqQWPFKXEsJTcuLfkxJggXlbgeiqIeZwTz3aQpyJktrWjhOkpD7Iq5Lcq1G9TTKlj0pFZWIg6EbQ==} - - '@types/koa-logger@3.1.2': - resolution: {integrity: sha512-sioTA1xlKYiIgryANWPRHBkG3XGbWftw9slWADUPC+qvPIY/yRLSrhvX7zkJwMrntub5dPO0GuAoyGGf0yitfQ==} - - '@types/koa-mount@4.0.2': - resolution: {integrity: sha512-XnuGwV8bzw22nv2WqOs5a8wCHR2VgSnLLLuBQPzNTmhyiAvH0O6c+994rQVbMaBuwQJKefUInkvKoKuk+21uew==} - - '@types/koa-ratelimit@5.0.0': - resolution: {integrity: sha512-eaWWUu/mTDgjGvisSSYSr7Go7ryVw2jIcNz7iuNKbXXEQJqsGMWTJ3oBbeX0mACmPxZbp8/9DKAMWPzyTrNlcw==} - - '@types/koa@2.13.5': - resolution: {integrity: sha512-HSUOdzKz3by4fnqagwthW/1w/yJspTgppyyalPVbgZf8jQWvdIXcVW5h2DGtw4zYntOaeRGx49r1hxoPWrD4aA==} - - '@types/koa__cors@3.3.1': - resolution: {integrity: sha512-aFGYhTFW7651KhmZZ05VG0QZJre7QxBxDj2LF1lf6GA/wSXEfKVAJxiQQWzRV4ZoMzQIO8vJBXKsUcRuvYK9qw==} - - '@types/koa__multer@2.0.4': - resolution: {integrity: sha512-WRkshXhE5rpYFUbbtAjyMhdOOSdbu1XX+2AQlRNM6AZtgxd0/WXMU4lrP7e9tk5HWVTWbx8DOOsVBmfHjSGJ4w==} - - '@types/koa__router@12.0.0': - resolution: {integrity: sha512-S6eHyZyoWCZLNHyy8j0sMW85cPrpByCbGGU2/BO4IzGiI87aHJ92lZh4E9xfsM9DcbCT469/OIqyC0sSJXSIBQ==} - - '@types/lodash@4.14.191': - resolution: {integrity: sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ==} - - '@types/lodash@4.14.202': - resolution: {integrity: sha512-OvlIYQK9tNneDlS0VN54LLd5uiPCBOp7gS5Z0f1mjoJYBrtStzgmJBxONW3U6OZqdtNzZPmn9BS/7WI7BFFcFQ==} - - '@types/mdx@2.0.10': - resolution: {integrity: sha512-Rllzc5KHk0Al5/WANwgSPl1/CwjqCy+AZrGd78zuK+jO9aDM6ffblZ+zIjgPNAaEBmlO0RYDvLNh7wD0zKVgEg==} - - '@types/mime-types@2.1.4': - resolution: {integrity: sha512-lfU4b34HOri+kAY5UheuFMWPDOI+OPceBSHZKp69gEyTL/mmJ4cnU6Y/rlme3UL3GyOn6Y42hyIEw0/q8sWx5w==} - - '@types/mime@3.0.1': - resolution: {integrity: sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==} - - '@types/minimist@1.2.5': - resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==} - - '@types/mixpanel-browser@2.49.0': - resolution: {integrity: sha512-StmgUnS58d44DmIAEX9Kk8qwisAYCl6E2qulIjYyHXUPuJCPOuyUMTTKBp+aU2F2do+kxAzCxiBtsB4fnBT9Fg==} - - '@types/module-alias@2.0.1': - resolution: {integrity: sha512-DN/CCT1HQG6HquBNJdLkvV+4v5l/oEuwOHUPLxI+Eub0NED+lk0YUfba04WGH90EINiUrNgClkNnwGmbICeWMQ==} - - '@types/node-fetch@2.6.11': - resolution: {integrity: sha512-24xFj9R5+rfQJLRyM56qh+wnVSYhyXC2tkoBndtY0U+vubqNsYXGjufB2nn8Q6gt0LrARwL6UBtMCSVCwl4B1g==} - - '@types/node-schedule@2.1.0': - resolution: {integrity: sha512-NiTwl8YN3v/1YCKrDFSmCTkVxFDylueEqsOFdgF+vPsm+AlyJKGAo5yzX1FiOxPsZiN6/r8gJitYx2EaSuBmmg==} - - '@types/node@18.18.14': - resolution: {integrity: sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==} - - '@types/node@20.11.1': - resolution: {integrity: sha512-DsXojJUES2M+FE8CpptJTKpg+r54moV9ZEncPstni1WHFmTcCzeFLnMFfyhCVS8XNOy/OQG+8lVxRLRrVHmV5A==} - - '@types/normalize-package-data@2.4.1': - resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==} - - '@types/parse-json@4.0.0': - resolution: {integrity: sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==} - - '@types/pretty-hrtime@1.0.3': - resolution: {integrity: sha512-nj39q0wAIdhwn7DGUyT9irmsKK1tV0bd5WFEhgpqNTMFZ8cE+jieuTphCW0tfdm47S2zVT5mr09B28b1chmQMA==} - - '@types/prismjs@1.26.3': - resolution: {integrity: sha512-A0D0aTXvjlqJ5ZILMz3rNfDBOx9hHxLZYv2by47Sm/pqW35zzjusrZTryatjN/Rf8Us2gZrJD+KeHbUSTux1Cw==} - - '@types/prop-types@15.7.5': - resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==} - - '@types/psl@1.1.0': - resolution: {integrity: sha512-HhZnoLAvI2koev3czVPzBNRYvdrzJGLjQbWZhqFmS9Q6a0yumc5qtfSahBGb5g+6qWvA8iiQktqGkwoIXa/BNQ==} - - '@types/qs@6.9.11': - resolution: {integrity: sha512-oGk0gmhnEJK4Yyk+oI7EfXsLayXatCWPHary1MtcmbAifkobT9cM9yutG/hZKIseOU0MqbIwQ/u2nn/Gb+ltuQ==} - - '@types/range-parser@1.2.4': - resolution: {integrity: sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==} - - '@types/react-dom@18.2.19': - resolution: {integrity: sha512-aZvQL6uUbIJpjZk4U8JZGbau9KDeAwMfmhyWorxgBkqDIEf6ROjRozcmPIicqsUwPUjbkDfHKgGee1Lq65APcA==} - - '@types/react@18.2.55': - resolution: {integrity: sha512-Y2Tz5P4yz23brwm2d7jNon39qoAtMMmalOQv6+fEFt1mT+FcM3D841wDpoUvFXhaYenuROCy3FZYqdTjM7qVyA==} - - '@types/resolve@1.20.6': - resolution: {integrity: sha512-A4STmOXPhMUtHH+S6ymgE2GiBSMqf4oTvcQZMcHzokuTLVYzXTB8ttjcgxOVaAp2lGwEdzZ0J+cRbbeevQj1UQ==} - - '@types/scheduler@0.16.2': - resolution: {integrity: sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==} - - '@types/semver@7.3.13': - resolution: {integrity: sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==} - - '@types/semver@7.5.7': - resolution: {integrity: sha512-/wdoPq1QqkSj9/QOeKkFquEuPzQbHTWAMPH/PaUMB+JuR31lXhlWXRZ52IpfDYVlDOUBvX09uBrPwxGT1hjNBg==} - - '@types/serve-static@1.15.0': - resolution: {integrity: sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==} - - '@types/stack-utils@2.0.1': - resolution: {integrity: sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==} - - '@types/triple-beam@1.3.2': - resolution: {integrity: sha512-txGIh+0eDFzKGC25zORnswy+br1Ha7hj5cMVwKIU7+s0U2AxxJru/jZSMU6OC9MJWP6+pc/hc6ZjyZShpsyY2g==} - - '@types/unist@2.0.10': - resolution: {integrity: sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==} - - '@types/uuid@9.0.7': - resolution: {integrity: sha512-WUtIVRUZ9i5dYXefDEAI7sh9/O7jGvHg7Df/5O/gtH3Yabe5odI3UWopVR1qbPXQtvOxWu3mM4XxlYeZtMWF4g==} - - '@types/webidl-conversions@7.0.0': - resolution: {integrity: sha512-xTE1E+YF4aWPJJeUzaZI5DRntlkY3+BCVJi0axFptnjGmAoWxkyREIh/XMrfxVLejwQxMCfDXdICo0VLxThrog==} - - '@types/webpack@5.28.5': - resolution: {integrity: sha512-wR87cgvxj3p6D0Crt1r5avwqffqPXUkNlnQ1mjU93G7gCuFjufZR4I6j8cz5g1F1tTYpfOOFvly+cmIQwL9wvw==} - - '@types/whatwg-url@8.2.2': - resolution: {integrity: sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==} - - '@types/yargs-parser@21.0.0': - resolution: {integrity: sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==} - - '@types/yargs@16.0.9': - resolution: {integrity: sha512-tHhzvkFXZQeTECenFoRljLBYPZJ7jAVxqqtEI0qTLOmuultnFp4I9yKE17vTuhf7BkhCu7I4XuemPgikDVuYqA==} - - '@types/yargs@17.0.22': - resolution: {integrity: sha512-pet5WJ9U8yPVRhkwuEIp5ktAeAqRZOq4UdAyWLWzxbtpyXnzbtLdKiXAjJzi/KLmPGS9wk86lUFWZFN6sISo4g==} - - '@typescript-eslint/eslint-plugin@6.21.0': - resolution: {integrity: sha512-oy9+hTPCUFpngkEZUSzbf9MxI65wbKFoQYsgPdILTfbUldp5ovUuphZVe4i30emU9M/kP+T64Di0mxl7dSw3MA==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - '@typescript-eslint/parser': ^6.0.0 || ^6.0.0-alpha - eslint: ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/parser@6.21.0': - resolution: {integrity: sha512-tbsV1jPne5CkFQCgPBcDOt30ItF7aJoZL997JSF7MhGQqOeT3svWRYxiqlfA5RUdlHN6Fi+EI9bxqbdyAUZjYQ==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/scope-manager@6.21.0': - resolution: {integrity: sha512-OwLUIWZJry80O99zvqXVEioyniJMa+d2GrqpUTqi5/v5D5rOrppJVBPa0yKCblcigC0/aYAzxxqQ1B+DS2RYsg==} - engines: {node: ^16.0.0 || >=18.0.0} - - '@typescript-eslint/type-utils@6.21.0': - resolution: {integrity: sha512-rZQI7wHfao8qMX3Rd3xqeYSMCL3SoiSQLBATSiVKARdFGCYSRvmViieZjqc58jKgs8Y8i9YvVVhRbHSTA4VBag==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/types@6.21.0': - resolution: {integrity: sha512-1kFmZ1rOm5epu9NZEZm1kckCDGj5UJEf7P1kliH4LKu/RkwpsfqqGmY2OOcUs18lSlQBKLDYBOGxRVtrMN5lpg==} - engines: {node: ^16.0.0 || >=18.0.0} - - '@typescript-eslint/typescript-estree@6.21.0': - resolution: {integrity: sha512-6npJTkZcO+y2/kr+z0hc4HwNfrrP4kNYh57ek7yCNlrBjWQ1Y0OS7jiZTkgumrvkX5HkEKXFZkkdFNkaW2wmUQ==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/utils@6.21.0': - resolution: {integrity: sha512-NfWVaC8HP9T8cbKQxHcsJBY5YE1O33+jpMwN45qzWWaPDZgLIbo12toGMWnmhvCpd3sIxkpDw3Wv1B3dYrbDQQ==} - engines: {node: ^16.0.0 || >=18.0.0} - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - - '@typescript-eslint/visitor-keys@6.21.0': - resolution: {integrity: sha512-JJtkDduxLi9bivAB+cYOVMtbkqdPOhZ+ZI5LC47MIRrDV4Yn2o+ZnW10Nkmr28xRpSpdJ6Sm42Hjf2+REYXm0A==} - engines: {node: ^16.0.0 || >=18.0.0} - - '@ungap/structured-clone@1.2.0': - resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} - - '@vitest/expect@0.34.7': - resolution: {integrity: sha512-G9iEtwrD6ZQ4MVHZufif9Iqz3eLtuwBBNx971fNAGPaugM7ftAWjQN+ob2zWhtzURp8RK3zGXOxVb01mFo3zAQ==} - - '@vitest/spy@0.34.7': - resolution: {integrity: sha512-NMMSzOY2d8L0mcOt4XcliDOS1ISyGlAXuQtERWVOoVHnKwmG+kKhinAiGw3dTtMQWybfa89FG8Ucg9tiC/FhTQ==} - - '@vitest/utils@0.34.7': - resolution: {integrity: sha512-ziAavQLpCYS9sLOorGrFFKmy2gnfiNU0ZJ15TsMz/K92NAPS/rp9K4z6AJQQk5Y8adCy4Iwpxy7pQumQ/psnRg==} - - '@webassemblyjs/ast@1.11.1': - resolution: {integrity: sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==} - - '@webassemblyjs/floating-point-hex-parser@1.11.1': - resolution: {integrity: sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==} - - '@webassemblyjs/helper-api-error@1.11.1': - resolution: {integrity: sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==} - - '@webassemblyjs/helper-buffer@1.11.1': - resolution: {integrity: sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==} - - '@webassemblyjs/helper-numbers@1.11.1': - resolution: {integrity: sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==} - - '@webassemblyjs/helper-wasm-bytecode@1.11.1': - resolution: {integrity: sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==} - - '@webassemblyjs/helper-wasm-section@1.11.1': - resolution: {integrity: sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==} - - '@webassemblyjs/ieee754@1.11.1': - resolution: {integrity: sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==} - - '@webassemblyjs/leb128@1.11.1': - resolution: {integrity: sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==} - - '@webassemblyjs/utf8@1.11.1': - resolution: {integrity: sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==} - - '@webassemblyjs/wasm-edit@1.11.1': - resolution: {integrity: sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==} - - '@webassemblyjs/wasm-gen@1.11.1': - resolution: {integrity: sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==} - - '@webassemblyjs/wasm-opt@1.11.1': - resolution: {integrity: sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==} - - '@webassemblyjs/wasm-parser@1.11.1': - resolution: {integrity: sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==} - - '@webassemblyjs/wast-printer@1.11.1': - resolution: {integrity: sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==} - - '@xtuc/ieee754@1.2.0': - resolution: {integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==} - - '@xtuc/long@4.2.2': - resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==} - - '@yarnpkg/esbuild-plugin-pnp@3.0.0-rc.15': - resolution: {integrity: sha512-kYzDJO5CA9sy+on/s2aIW0411AklfCi8Ck/4QDivOqsMKpStZA2SsR+X27VTggGwpStWaLrjJcDcdDMowtG8MA==} - engines: {node: '>=14.15.0'} - peerDependencies: - esbuild: '>=0.10.0' - - '@yarnpkg/fslib@2.10.3': - resolution: {integrity: sha512-41H+Ga78xT9sHvWLlFOZLIhtU6mTGZ20pZ29EiZa97vnxdohJD2AF42rCoAoWfqUz486xY6fhjMH+DYEM9r14A==} - engines: {node: '>=12 <14 || 14.2 - 14.9 || >14.10.0'} - - '@yarnpkg/libzip@2.3.0': - resolution: {integrity: sha512-6xm38yGVIa6mKm/DUCF2zFFJhERh/QWp1ufm4cNUvxsONBmfPg8uZ9pZBdOmF6qFGr/HlT6ABBkCSx/dlEtvWg==} - engines: {node: '>=12 <14 || 14.2 - 14.9 || >14.10.0'} - - abbrev@2.0.0: - resolution: {integrity: sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - - abort-controller@3.0.0: - resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} - engines: {node: '>=6.5'} - - accepts@1.3.8: - resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} - engines: {node: '>= 0.6'} - - acorn-import-assertions@1.8.0: - resolution: {integrity: sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==} - peerDependencies: - acorn: ^8 - - acorn-jsx@5.3.2: - resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} - peerDependencies: - acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - - acorn-walk@7.2.0: - resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==} - engines: {node: '>=0.4.0'} - - acorn-walk@8.2.0: - resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==} - engines: {node: '>=0.4.0'} - - acorn@7.4.1: - resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==} - engines: {node: '>=0.4.0'} - hasBin: true - - acorn@8.11.3: - resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} - engines: {node: '>=0.4.0'} - hasBin: true - - acorn@8.8.2: - resolution: {integrity: sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==} - engines: {node: '>=0.4.0'} - hasBin: true - - address@1.2.2: - resolution: {integrity: sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==} - engines: {node: '>= 10.0.0'} - - adjust-sourcemap-loader@4.0.0: - resolution: {integrity: sha512-OXwN5b9pCUXNQHJpwwD2qP40byEmSgzj8B4ydSN0uMNYWiFmJ6x6KwUllMmfk8Rwu/HJDFR7U8ubsWBoN0Xp0A==} - engines: {node: '>=8.9'} - - agent-base@5.1.1: - resolution: {integrity: sha512-TMeqbNl2fMW0nMjTEPOwe3J/PRFP4vqeoNuQMG0HlMrtm5QxKqdvAkZ1pRBQ/ulIyDD5Yq0nJ7YbdD8ey0TO3g==} - engines: {node: '>= 6.0.0'} - - agent-base@6.0.2: - resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} - engines: {node: '>= 6.0.0'} - - agent-base@7.1.0: - resolution: {integrity: sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==} - engines: {node: '>= 14'} - - aggregate-error@3.1.0: - resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} - engines: {node: '>=8'} - - ajv-formats@2.1.1: - resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==} - peerDependencies: - ajv: ^8.0.0 - peerDependenciesMeta: - ajv: - optional: true - - ajv-keywords@3.5.2: - resolution: {integrity: sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==} - peerDependencies: - ajv: ^6.9.1 - - ajv-keywords@5.1.0: - resolution: {integrity: sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==} - peerDependencies: - ajv: ^8.8.2 - - ajv@6.12.6: - resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} - - ajv@8.12.0: - resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==} - - ansi-escapes@4.3.2: - resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} - engines: {node: '>=8'} - - ansi-escapes@6.2.0: - resolution: {integrity: sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==} - engines: {node: '>=14.16'} - - ansi-html-community@0.0.8: - resolution: {integrity: sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==} - engines: {'0': node >= 0.8.0} - hasBin: true - - ansi-regex@2.1.1: - resolution: {integrity: sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==} - engines: {node: '>=0.10.0'} - - ansi-regex@5.0.1: - resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} - engines: {node: '>=8'} - - ansi-regex@6.0.1: - resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} - engines: {node: '>=12'} - - ansi-styles@2.2.1: - resolution: {integrity: sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==} - engines: {node: '>=0.10.0'} - - ansi-styles@3.2.1: - resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} - engines: {node: '>=4'} - - ansi-styles@4.3.0: - resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} - engines: {node: '>=8'} - - ansi-styles@5.2.0: - resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} - engines: {node: '>=10'} - - ansi-styles@6.2.1: - resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} - engines: {node: '>=12'} - - any-promise@1.3.0: - resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} - - anymatch@3.1.3: - resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} - engines: {node: '>= 8'} - - app-root-dir@1.0.2: - resolution: {integrity: sha512-jlpIfsOoNoafl92Sz//64uQHGSyMrD2vYG5d8o2a4qGvyNCvXur7bzIsWtAC/6flI2RYAp3kv8rsfBtaLm7w0g==} - - append-field@1.0.0: - resolution: {integrity: sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw==} - - arg@4.1.3: - resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} - - arg@5.0.2: - resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} - - argparse@1.0.10: - resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} - - argparse@2.0.1: - resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} - - aria-hidden@1.2.3: - resolution: {integrity: sha512-xcLxITLe2HYa1cnYnwCjkOO1PqUHQpozB8x9AR0OgWN2woOBi5kSDVxKfd0b7sb1hw5qFeJhXm9H1nu3xSfLeQ==} - engines: {node: '>=10'} - - aria-query@5.1.3: - resolution: {integrity: sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==} - - array-buffer-byte-length@1.0.0: - resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} - - array-flatten@1.1.1: - resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==} - - array-includes@3.1.7: - resolution: {integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==} - engines: {node: '>= 0.4'} - - array-union@2.1.0: - resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} - engines: {node: '>=8'} - - array.prototype.filter@1.0.3: - resolution: {integrity: sha512-VizNcj/RGJiUyQBgzwxzE5oHdeuXY5hSbbmKMlphj1cy1Vl7Pn2asCGbSrru6hSQjmCzqTBPVWAF/whmEOVHbw==} - engines: {node: '>= 0.4'} - - array.prototype.findlastindex@1.2.4: - resolution: {integrity: sha512-hzvSHUshSpCflDR1QMUBLHGHP1VIEBegT4pix9H/Z92Xw3ySoy6c2qh7lJWTJnRJ8JCZ9bJNCgTyYaJGcJu6xQ==} - engines: {node: '>= 0.4'} - - array.prototype.flat@1.3.2: - resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} - engines: {node: '>= 0.4'} - - array.prototype.flatmap@1.3.2: - resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} - engines: {node: '>= 0.4'} - - array.prototype.tosorted@1.1.1: - resolution: {integrity: sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==} - - arraybuffer.prototype.slice@1.0.2: - resolution: {integrity: sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==} - engines: {node: '>= 0.4'} - - arrify@1.0.1: - resolution: {integrity: sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==} - engines: {node: '>=0.10.0'} - - arrify@2.0.1: - resolution: {integrity: sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==} - engines: {node: '>=8'} - - asn1.js@5.4.1: - resolution: {integrity: sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==} - - assert@2.1.0: - resolution: {integrity: sha512-eLHpSK/Y4nhMJ07gDaAzoX/XAKS8PSaojml3M0DM4JpV1LAi5JOJ/p6H/XWrl8L+DzVEvVCW1z3vWAaB9oTsQw==} - - assertion-error@1.1.0: - resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} - - ast-types-flow@0.0.7: - resolution: {integrity: sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag==} - - ast-types@0.16.1: - resolution: {integrity: sha512-6t10qk83GOG8p0vKmaCr8eiilZwO171AvbROMtvvNiwrTly62t+7XkA8RdIIVbpMhCASAsxgAzdRSwh6nw/5Dg==} - engines: {node: '>=4'} - - astral-regex@2.0.0: - resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} - engines: {node: '>=8'} - - async-limiter@1.0.1: - resolution: {integrity: sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==} - - async-mutex@0.3.2: - resolution: {integrity: sha512-HuTK7E7MT7jZEh1P9GtRW9+aTWiDWWi9InbZ5hjxrnRa39KS4BW04+xLBhYNS2aXhHUIKZSw3gj4Pn1pj+qGAA==} - - async-mutex@0.4.1: - resolution: {integrity: sha512-WfoBo4E/TbCX1G95XTjbWTE3X2XLG0m1Xbv2cwOtuPdyH9CZvnaA5nCt1ucjaKEgW2A5IF71hxrRhr83Je5xjA==} - - async-ratelimiter@1.3.8: - resolution: {integrity: sha512-l0UEsXqX3mgRtgmnzXMEL/+zVaWTIkTgF8noO2WnojlSZ3uecdKfanOy6/QFsV9u6+BpQnKi3x43p7o1JTaZtA==} - engines: {node: '>= 8'} - - async@3.2.4: - resolution: {integrity: sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==} - - asynciterator.prototype@1.0.0: - resolution: {integrity: sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==} - - asynckit@0.4.0: - resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} - - autoprefixer@10.4.14: - resolution: {integrity: sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==} - engines: {node: ^10 || ^12 || >=14} - hasBin: true - peerDependencies: - postcss: ^8.1.0 - - available-typed-arrays@1.0.5: - resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} - engines: {node: '>= 0.4'} - - axe-core@4.6.3: - resolution: {integrity: sha512-/BQzOX780JhsxDnPpH4ZiyrJAzcd8AfzFPkv+89veFSr1rcMjuq2JDCwypKaPeB6ljHp9KjXhPpjgCvQlWYuqg==} - engines: {node: '>=4'} - - axios@1.6.7: - resolution: {integrity: sha512-/hDJGff6/c7u0hDkvkGxR/oy6CbCs8ziCsC7SqmhjfozqiJGc8Z11wrv9z9lYfY4K8l+H9TpjcMDX0xOZmx+RA==} - - axobject-query@3.1.1: - resolution: {integrity: sha512-goKlv8DZrK9hUh975fnHzhNIO4jUnFCfv/dszV5VwUGDFjI6vQ2VwoyjYjYNEbBE8AH87TduWP5uyDR1D+Iteg==} - - b4a@1.6.4: - resolution: {integrity: sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==} - - babel-core@7.0.0-bridge.0: - resolution: {integrity: sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - babel-jest@29.7.0: - resolution: {integrity: sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - peerDependencies: - '@babel/core': ^7.8.0 - - babel-loader@9.1.2: - resolution: {integrity: sha512-mN14niXW43tddohGl8HPu5yfQq70iUThvFL/4QzESA7GcZoC0eVOhvWdQ8+3UlSjaDE9MVtsW9mxDY07W7VpVA==} - engines: {node: '>= 14.15.0'} - peerDependencies: - '@babel/core': ^7.12.0 - webpack: '>=5' - - babel-plugin-add-react-displayname@0.0.5: - resolution: {integrity: sha512-LY3+Y0XVDYcShHHorshrDbt4KFWL4bSeniCtl4SYZbask+Syngk1uMPCeN9+nSiZo6zX5s0RTq/J9Pnaaf/KHw==} - - babel-plugin-istanbul@6.1.1: - resolution: {integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==} - engines: {node: '>=8'} - - babel-plugin-jest-hoist@29.6.3: - resolution: {integrity: sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - babel-plugin-macros@3.1.0: - resolution: {integrity: sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==} - engines: {node: '>=10', npm: '>=6'} - - babel-plugin-polyfill-corejs2@0.4.8: - resolution: {integrity: sha512-OtIuQfafSzpo/LhnJaykc0R/MMnuLSSVjVYy9mHArIZ9qTCSZ6TpWCuEKZYVoN//t8HqBNScHrOtCrIK5IaGLg==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - - babel-plugin-polyfill-corejs3@0.8.7: - resolution: {integrity: sha512-KyDvZYxAzkC0Aj2dAPyDzi2Ym15e5JKZSK+maI7NAwSqofvuFglbSsxE7wUOvTg9oFVnHMzVzBKcqEb4PJgtOA==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - - babel-plugin-polyfill-regenerator@0.5.5: - resolution: {integrity: sha512-OJGYZlhLqBh2DDHeqAxWB1XIvr49CxiJ2gIt61/PU55CQK4Z58OzMqjDe1zwQdQk+rBYsRc+1rJmdajM3gimHg==} - peerDependencies: - '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 - - babel-preset-current-node-syntax@1.0.1: - resolution: {integrity: sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==} - peerDependencies: - '@babel/core': ^7.0.0 - - babel-preset-jest@29.6.3: - resolution: {integrity: sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - peerDependencies: - '@babel/core': ^7.0.0 - - balanced-match@1.0.2: - resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - - base64-js@1.5.1: - resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} - - base64id@2.0.0: - resolution: {integrity: sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==} - engines: {node: ^4.5.0 || >= 5.9} - - bcryptjs@2.4.3: - resolution: {integrity: sha512-V/Hy/X9Vt7f3BbPJEi8BdVFMByHi+jNXrYkW3huaybV/kQ0KJg0Y6PkEMbn+zeT+i+SiKZ/HMqJGIIt4LZDqNQ==} - - better-opn@3.0.2: - resolution: {integrity: sha512-aVNobHnJqLiUelTaHat9DZ1qM2w0C0Eym4LPI/3JxOnSokGVdsl1T1kN7TFvsEAD8G47A6VKQ0TVHqbBnYMJlQ==} - engines: {node: '>=12.0.0'} - - big-integer@1.6.51: - resolution: {integrity: sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==} - engines: {node: '>=0.6'} - - big.js@5.2.2: - resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==} - - bignumber.js@9.1.1: - resolution: {integrity: sha512-pHm4LsMJ6lzgNGVfZHjMoO8sdoRhOzOH4MLmY65Jg70bpxCKu5iOHNJyfF6OyvYw7t8Fpf35RuzUyqnQsj8Vig==} - - binary-extensions@2.2.0: - resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} - engines: {node: '>=8'} - - bl@4.1.0: - resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} - - bluebird@3.4.7: - resolution: {integrity: sha512-iD3898SR7sWVRHbiQv+sHUtHnMvC1o3nW5rAcqnq3uOn07DSAppZYUkIGslDz6gXC7HfunPe7YVBgoEJASPcHA==} - - bn.js@4.12.0: - resolution: {integrity: sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==} - - bn.js@5.2.1: - resolution: {integrity: sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==} - - body-parser@1.20.1: - resolution: {integrity: sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==} - engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} - - boolbase@1.0.0: - resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} - - bowser@2.11.0: - resolution: {integrity: sha512-AlcaJBi/pqqJBIQ8U9Mcpc9i8Aqxn88Skv5d+xBX006BY5u8N3mGLHa5Lgppa7L/HfwgwLgZ6NYs+Ag6uUmJRA==} - - bplist-parser@0.2.0: - resolution: {integrity: sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==} - engines: {node: '>= 5.10.0'} - - brace-expansion@1.1.11: - resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} - - brace-expansion@2.0.1: - resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} - - braces@3.0.2: - resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} - engines: {node: '>=8'} - - brorand@1.1.0: - resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==} - - browser-assert@1.2.1: - resolution: {integrity: sha512-nfulgvOR6S4gt9UKCeGJOuSGBPGiFT6oQ/2UBnvTY/5aQ1PnksW72fhZkM30DzoRRv2WpwZf1vHHEr3mtuXIWQ==} - - browserify-aes@1.2.0: - resolution: {integrity: sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==} - - browserify-cipher@1.0.1: - resolution: {integrity: sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==} - - browserify-des@1.0.2: - resolution: {integrity: sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==} - - browserify-rsa@4.1.0: - resolution: {integrity: sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==} - - browserify-sign@4.2.2: - resolution: {integrity: sha512-1rudGyeYY42Dk6texmv7c4VcQ0EsvVbLwZkA+AQB7SxvXxmcD93jcHie8bzecJ+ChDlmAm2Qyu0+Ccg5uhZXCg==} - engines: {node: '>= 4'} - - browserify-zlib@0.1.4: - resolution: {integrity: sha512-19OEpq7vWgsH6WkvkBJQDFvJS1uPcbFOQ4v9CU839dO+ZZXUZO6XpE6hNCqvlIIj+4fZvRiJ6DsAQ382GwiyTQ==} - - browserify-zlib@0.2.0: - resolution: {integrity: sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==} - - browserslist@4.21.5: - resolution: {integrity: sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - - browserslist@4.22.2: - resolution: {integrity: sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - - bs-logger@0.2.6: - resolution: {integrity: sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==} - engines: {node: '>= 6'} - - bser@2.1.1: - resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==} - - bson@4.7.2: - resolution: {integrity: sha512-Ry9wCtIZ5kGqkJoi6aD8KjxFZEx78guTQDnpXWiNthsxzrxAK/i8E6pCHAIZTbaEFWcOCvbecMukfK7XUvyLpQ==} - engines: {node: '>=6.9.0'} - - bson@5.5.1: - resolution: {integrity: sha512-ix0EwukN2EpC0SRWIj/7B5+A6uQMQy6KMREI9qQqvgpkV2frH63T0UDVd1SYedL6dNCmDBYB3QtXi4ISk9YT+g==} - engines: {node: '>=14.20.1'} - - bson@6.5.0: - resolution: {integrity: sha512-DXf1BTAS8vKyR90BO4x5v3rKVarmkdkzwOrnYDFdjAY694ILNDkmA3uRh1xXJEl+C1DAh8XCvAQ+Gh3kzubtpg==} - engines: {node: '>=16.20.1'} - - buffer-crc32@0.2.13: - resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==} - - buffer-equal-constant-time@1.0.1: - resolution: {integrity: sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==} - - buffer-from@0.1.2: - resolution: {integrity: sha512-RiWIenusJsmI2KcvqQABB83tLxCByE3upSP8QU3rJDMVFGPWLvPQJt/O1Su9moRWeH7d+Q2HYb68f6+v+tw2vg==} - - buffer-from@1.1.2: - resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} - - buffer-xor@1.0.3: - resolution: {integrity: sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==} - - buffer@5.6.0: - resolution: {integrity: sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==} - - buffer@5.7.1: - resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} - - buffer@6.0.3: - resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} - - builtin-status-codes@3.0.0: - resolution: {integrity: sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==} - - busboy@1.6.0: - resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} - engines: {node: '>=10.16.0'} - - bytes@3.0.0: - resolution: {integrity: sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==} - engines: {node: '>= 0.8'} - - bytes@3.1.2: - resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} - engines: {node: '>= 0.8'} - - cache-content-type@1.0.1: - resolution: {integrity: sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA==} - engines: {node: '>= 6.0.0'} - - call-bind@1.0.2: - resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} - - call-bind@1.0.5: - resolution: {integrity: sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==} - - callsites@3.1.0: - resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} - engines: {node: '>=6'} - - camel-case@4.1.2: - resolution: {integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==} - - camelcase-css@2.0.1: - resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} - engines: {node: '>= 6'} - - camelcase-keys@6.2.2: - resolution: {integrity: sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==} - engines: {node: '>=8'} - - camelcase@5.3.1: - resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==} - engines: {node: '>=6'} - - camelcase@6.3.0: - resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} - engines: {node: '>=10'} - - caniuse-lite@1.0.30001457: - resolution: {integrity: sha512-SDIV6bgE1aVbK6XyxdURbUE89zY7+k1BBBaOwYwkNCglXlel/E7mELiHC64HQ+W0xSKlqWhV9Wh7iHxUjMs4fA==} - - caniuse-lite@1.0.30001579: - resolution: {integrity: sha512-u5AUVkixruKHJjw/pj9wISlcMpgFWzSrczLZbrqBSxukQixmg0SJ5sZTpvaFvxU0HoQKd4yoyAogyrAz9pzJnA==} - - case-sensitive-paths-webpack-plugin@2.4.0: - resolution: {integrity: sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw==} - engines: {node: '>=4'} - - chai@4.4.1: - resolution: {integrity: sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==} - engines: {node: '>=4'} - - chalk@1.1.3: - resolution: {integrity: sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==} - engines: {node: '>=0.10.0'} - - chalk@2.4.2: - resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} - engines: {node: '>=4'} - - chalk@3.0.0: - resolution: {integrity: sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==} - engines: {node: '>=8'} - - chalk@4.1.2: - resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} - engines: {node: '>=10'} - - chalk@5.2.0: - resolution: {integrity: sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==} - engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} - - chalk@5.3.0: - resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} - engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} - - char-regex@1.0.2: - resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==} - engines: {node: '>=10'} - - check-error@1.0.3: - resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==} - - chokidar@3.5.3: - resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} - engines: {node: '>= 8.10.0'} - - chownr@1.1.4: - resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} - - chownr@2.0.0: - resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} - engines: {node: '>=10'} - - chrome-trace-event@1.0.3: - resolution: {integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==} - engines: {node: '>=6.0'} - - ci-info@3.8.0: - resolution: {integrity: sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==} - engines: {node: '>=8'} - - cipher-base@1.0.4: - resolution: {integrity: sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==} - - citty@0.1.5: - resolution: {integrity: sha512-AS7n5NSc0OQVMV9v6wt3ByujNIrne0/cTjiC2MYqhvao57VNfiuVksTSr2p17nVOhEr2KtqiAkGwHcgMC/qUuQ==} - - cjs-module-lexer@1.2.3: - resolution: {integrity: sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==} - - clean-css@5.3.3: - resolution: {integrity: sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg==} - engines: {node: '>= 10.0'} - - clean-stack@2.2.0: - resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} - engines: {node: '>=6'} - - cli-cursor@3.1.0: - resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} - engines: {node: '>=8'} - - cli-cursor@4.0.0: - resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - cli-spinner@0.2.10: - resolution: {integrity: sha512-U0sSQ+JJvSLi1pAYuJykwiA8Dsr15uHEy85iCJ6A+0DjVxivr3d+N2Wjvodeg89uP5K6TswFkKBfAD7B3YSn/Q==} - engines: {node: '>=0.10'} - - cli-spinners@2.9.0: - resolution: {integrity: sha512-4/aL9X3Wh0yiMQlE+eeRhWP6vclO3QRtw1JHKIT0FFUs5FjpFmESqtMvYZ0+lbzBw900b95mS0hohy+qn2VK/g==} - engines: {node: '>=6'} - - cli-table3@0.6.3: - resolution: {integrity: sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==} - engines: {node: 10.* || >= 12.*} - - cli-truncate@2.1.0: - resolution: {integrity: sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==} - engines: {node: '>=8'} - - cli-truncate@3.1.0: - resolution: {integrity: sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - cli-truncate@4.0.0: - resolution: {integrity: sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==} - engines: {node: '>=18'} - - client-only@0.0.1: - resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} - - cliui@8.0.1: - resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} - engines: {node: '>=12'} - - clone-deep@4.0.1: - resolution: {integrity: sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==} - engines: {node: '>=6'} - - clone@1.0.4: - resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} - engines: {node: '>=0.8'} - - clsx@1.1.1: - resolution: {integrity: sha512-6/bPho624p3S2pMyvP5kKBPXnI3ufHLObBFCfgx+LkeR5lg2XYy2hqZqUf45ypD8COn2bhgGJSUE+l5dhNBieA==} - engines: {node: '>=6'} - - clsx@1.2.1: - resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==} - engines: {node: '>=6'} - - clsx@2.0.0: - resolution: {integrity: sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q==} - engines: {node: '>=6'} - - clsx@2.1.0: - resolution: {integrity: sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==} - engines: {node: '>=6'} - - cluster-key-slot@1.1.2: - resolution: {integrity: sha512-RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA==} - engines: {node: '>=0.10.0'} - - co-body@6.1.0: - resolution: {integrity: sha512-m7pOT6CdLN7FuXUcpuz/8lfQ/L77x8SchHCF4G0RBTJO20Wzmhn5Sp4/5WsKy8OSpifBSUrmg83qEqaDHdyFuQ==} - - co@4.6.0: - resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==} - engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'} - - collect-v8-coverage@1.0.1: - resolution: {integrity: sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg==} - - color-convert@1.9.3: - resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} - - color-convert@2.0.1: - resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} - engines: {node: '>=7.0.0'} - - color-name@1.1.3: - resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} - - color-name@1.1.4: - resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} - - color-string@1.9.1: - resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} - - color@3.2.1: - resolution: {integrity: sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==} - - color@4.2.3: - resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} - engines: {node: '>=12.5.0'} - - colorette@2.0.19: - resolution: {integrity: sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==} - - colorette@2.0.20: - resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} - - colorspace@1.1.4: - resolution: {integrity: sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==} - - combined-stream@1.0.8: - resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} - engines: {node: '>= 0.8'} - - commander@10.0.0: - resolution: {integrity: sha512-zS5PnTI22FIRM6ylNW8G4Ap0IEOyk62fhLSD0+uHRT9McRCLGpkVNvao4bjimpK/GShynyQkFFxHhwMcETmduA==} - engines: {node: '>=14'} - - commander@11.1.0: - resolution: {integrity: sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==} - engines: {node: '>=16'} - - commander@2.20.3: - resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} - - commander@4.1.1: - resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} - engines: {node: '>= 6'} - - commander@6.2.1: - resolution: {integrity: sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==} - engines: {node: '>= 6'} - - commander@7.2.0: - resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} - engines: {node: '>= 10'} - - commander@8.3.0: - resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} - engines: {node: '>= 12'} - - common-path-prefix@3.0.0: - resolution: {integrity: sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==} - - commondir@1.0.1: - resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} - - compressible@2.0.18: - resolution: {integrity: sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==} - engines: {node: '>= 0.6'} - - compression@1.7.4: - resolution: {integrity: sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==} - engines: {node: '>= 0.8.0'} - - concat-map@0.0.1: - resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} - - concat-stream@1.6.2: - resolution: {integrity: sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==} - engines: {'0': node >= 0.8} - - config-chain@1.1.13: - resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==} - - confusing-browser-globals@1.0.11: - resolution: {integrity: sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==} - - consola@3.2.3: - resolution: {integrity: sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==} - engines: {node: ^14.18.0 || >=16.10.0} - - console-browserify@1.2.0: - resolution: {integrity: sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==} - - constants-browserify@1.0.0: - resolution: {integrity: sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==} - - content-disposition@0.5.4: - resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} - engines: {node: '>= 0.6'} - - content-type@1.0.5: - resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} - engines: {node: '>= 0.6'} - - convert-source-map@1.9.0: - resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} - - convert-source-map@2.0.0: - resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - - cookie-signature@1.0.6: - resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==} - - cookie@0.4.2: - resolution: {integrity: sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==} - engines: {node: '>= 0.6'} - - cookie@0.5.0: - resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==} - engines: {node: '>= 0.6'} - - cookies@0.8.0: - resolution: {integrity: sha512-8aPsApQfebXnuI+537McwYsDtjVxGm8gTIzQI3FDW6t5t/DAhERxtnbEPN/8RX+uZthoz4eCOgloXaE5cYyNow==} - engines: {node: '>= 0.8'} - - copy-to@2.0.1: - resolution: {integrity: sha512-3DdaFaU/Zf1AnpLiFDeNCD4TOWe3Zl2RZaTzUvWiIk5ERzcCodOE20Vqq4fzCbNoHURFHT4/us/Lfq+S2zyY4w==} - - core-js-compat@3.35.0: - resolution: {integrity: sha512-5blwFAddknKeNgsjBzilkdQ0+YK8L1PfqPYq40NOYMYFSS38qj+hpTcLLWwpIwA2A5bje/x5jmVn2tzUMg9IVw==} - - core-js-pure@3.35.0: - resolution: {integrity: sha512-f+eRYmkou59uh7BPcyJ8MC76DiGhspj1KMxVIcF24tzP8NA9HVa1uC7BTW2tgx7E1QVCzDzsgp7kArrzhlz8Ew==} - - core-util-is@1.0.3: - resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} - - cors@2.8.5: - resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==} - engines: {node: '>= 0.10'} - - cosmiconfig@7.1.0: - resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} - engines: {node: '>=10'} - - cosmiconfig@8.3.6: - resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==} - engines: {node: '>=14'} - peerDependencies: - typescript: '>=4.9.5' - peerDependenciesMeta: - typescript: - optional: true - - create-ecdh@4.0.4: - resolution: {integrity: sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==} - - create-hash@1.2.0: - resolution: {integrity: sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==} - - create-hmac@1.1.7: - resolution: {integrity: sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==} - - create-jest@29.7.0: - resolution: {integrity: sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - hasBin: true - - create-require@1.1.1: - resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} - - cron-parser@4.8.1: - resolution: {integrity: sha512-jbokKWGcyU4gl6jAfX97E1gDpY12DJ1cLJZmoDzaAln/shZ+S3KBFBuA2Q6WeUN4gJf/8klnV1EfvhA2lK5IRQ==} - engines: {node: '>=12.0.0'} - - cross-spawn@6.0.5: - resolution: {integrity: sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==} - engines: {node: '>=4.8'} - - cross-spawn@7.0.3: - resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} - engines: {node: '>= 8'} - - crypto-browserify@3.12.0: - resolution: {integrity: sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==} - - crypto-random-string@2.0.0: - resolution: {integrity: sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==} - engines: {node: '>=8'} - - css-loader@6.10.0: - resolution: {integrity: sha512-LTSA/jWbwdMlk+rhmElbDR2vbtQoTBPr7fkJE+mxrHj+7ru0hUmHafDRzWIjIHTwpitWVaqY2/UWGRca3yUgRw==} - engines: {node: '>= 12.13.0'} - peerDependencies: - '@rspack/core': 0.x || 1.x - webpack: ^5.0.0 - peerDependenciesMeta: - '@rspack/core': - optional: true - webpack: - optional: true - - css-select@4.3.0: - resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==} - - css-select@5.1.0: - resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==} - - css-tree@2.2.1: - resolution: {integrity: sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==} - engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'} - - css-tree@2.3.1: - resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==} - engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} - - css-what@6.1.0: - resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} - engines: {node: '>= 6'} - - css.escape@1.5.1: - resolution: {integrity: sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==} - - cssesc@3.0.0: - resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} - engines: {node: '>=4'} - hasBin: true - - csso@5.0.5: - resolution: {integrity: sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==} - engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'} - - csstype@3.0.9: - resolution: {integrity: sha512-rpw6JPxK6Rfg1zLOYCSwle2GFOOsnjmDYDaBwEcwoOg4qlsIVCN789VkBZDJAGi4T07gI4YSutR43t9Zz4Lzuw==} - - csstype@3.1.1: - resolution: {integrity: sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==} - - damerau-levenshtein@1.0.8: - resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} - - dayjs@1.11.10: - resolution: {integrity: sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ==} - - debounce@2.0.0: - resolution: {integrity: sha512-xRetU6gL1VJbs85Mc4FoEGSjQxzpdxRyFhe3lmWFyy2EzydIcD4xzUvRJMD+NPDfMwKNhxa3PvsIOU32luIWeA==} - engines: {node: '>=18'} - - debug@2.6.9: - resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - debug@3.2.7: - resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - debug@4.3.4: - resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - decamelize-keys@1.1.1: - resolution: {integrity: sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==} - engines: {node: '>=0.10.0'} - - decamelize@1.2.0: - resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} - engines: {node: '>=0.10.0'} - - decompress-response@6.0.0: - resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} - engines: {node: '>=10'} - - dedent@0.7.0: - resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==} - - dedent@1.5.1: - resolution: {integrity: sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==} - peerDependencies: - babel-plugin-macros: ^3.1.0 - peerDependenciesMeta: - babel-plugin-macros: - optional: true - - deep-eql@4.1.3: - resolution: {integrity: sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==} - engines: {node: '>=6'} - - deep-equal@1.0.1: - resolution: {integrity: sha512-bHtC0iYvWhyaTzvV3CZgPeZQqCOBGyGsVV7v4eevpdkLHfiSrXUdBG+qAuSz4RI70sszvjQ1QSZ98An1yNwpSw==} - - deep-equal@2.2.0: - resolution: {integrity: sha512-RdpzE0Hv4lhowpIUKKMJfeH6C1pXdtT1/it80ubgWqwI3qpuxUBpC1S4hnHg+zjnuOoDkzUtUCEEkG+XG5l3Mw==} - - deep-extend@0.6.0: - resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} - engines: {node: '>=4.0.0'} - - deep-is@0.1.4: - resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} - - deepmerge@4.3.0: - resolution: {integrity: sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==} - engines: {node: '>=0.10.0'} - - deepmerge@4.3.1: - resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} - engines: {node: '>=0.10.0'} - - default-browser-id@3.0.0: - resolution: {integrity: sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==} - engines: {node: '>=12'} - - defaults@1.0.4: - resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} - - define-data-property@1.1.1: - resolution: {integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==} - engines: {node: '>= 0.4'} - - define-lazy-prop@2.0.0: - resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} - engines: {node: '>=8'} - - define-properties@1.2.0: - resolution: {integrity: sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==} - engines: {node: '>= 0.4'} - - define-properties@1.2.1: - resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} - engines: {node: '>= 0.4'} - - defu@6.1.4: - resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==} - - del@6.1.1: - resolution: {integrity: sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==} - engines: {node: '>=10'} - - delayed-stream@1.0.0: - resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} - engines: {node: '>=0.4.0'} - - delegates@1.0.0: - resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==} - - denque@2.1.0: - resolution: {integrity: sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==} - engines: {node: '>=0.10'} - - depd@1.1.2: - resolution: {integrity: sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==} - engines: {node: '>= 0.6'} - - depd@2.0.0: - resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} - engines: {node: '>= 0.8'} - - dequal@2.0.3: - resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} - engines: {node: '>=6'} - - des.js@1.1.0: - resolution: {integrity: sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==} - - destroy@1.2.0: - resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} - engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} - - detect-indent@6.1.0: - resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} - engines: {node: '>=8'} - - detect-libc@2.0.2: - resolution: {integrity: sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==} - engines: {node: '>=8'} - - detect-newline@3.1.0: - resolution: {integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==} - engines: {node: '>=8'} - - detect-node-es@1.1.0: - resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==} - - detect-package-manager@2.0.1: - resolution: {integrity: sha512-j/lJHyoLlWi6G1LDdLgvUtz60Zo5GEj+sVYtTVXnYLDPuzgC3llMxonXym9zIwhhUII8vjdw0LXxavpLqTbl1A==} - engines: {node: '>=12'} - - detect-port@1.5.1: - resolution: {integrity: sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ==} - hasBin: true - - didyoumean@1.2.2: - resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} - - diff-sequences@29.4.3: - resolution: {integrity: sha512-ofrBgwpPhCD85kMKtE9RYFFq6OC1A89oW2vvgWZNCwxrUpRUILopY7lsYyMDSjc8g6U6aiO0Qubg6r4Wgt5ZnA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - diff-sequences@29.6.3: - resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - diff@4.0.2: - resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} - engines: {node: '>=0.3.1'} - - diffie-hellman@5.0.3: - resolution: {integrity: sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==} - - dir-glob@3.0.1: - resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} - engines: {node: '>=8'} - - dlv@1.1.3: - resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} - - doctrine@2.1.0: - resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} - engines: {node: '>=0.10.0'} - - doctrine@3.0.0: - resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} - engines: {node: '>=6.0.0'} - - dom-accessibility-api@0.5.16: - resolution: {integrity: sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==} - - dom-accessibility-api@0.6.3: - resolution: {integrity: sha512-7ZgogeTnjuHbo+ct10G9Ffp0mif17idi0IyWNVA/wcwcm7NPOD/WEHVP3n7n3MhXqxoIYm8d6MuZohYWIZ4T3w==} - - dom-converter@0.2.0: - resolution: {integrity: sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==} - - dom-helpers@5.2.1: - resolution: {integrity: sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==} - - dom-serializer@1.4.1: - resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==} - - dom-serializer@2.0.0: - resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==} - - domain-browser@4.23.0: - resolution: {integrity: sha512-ArzcM/II1wCCujdCNyQjXrAFwS4mrLh4C7DZWlaI8mdh7h3BfKdNd3bKXITfl2PT9FtfQqaGvhi1vPRQPimjGA==} - engines: {node: '>=10'} - - domelementtype@2.3.0: - resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} - - domhandler@4.3.1: - resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==} - engines: {node: '>= 4'} - - domhandler@5.0.3: - resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==} - engines: {node: '>= 4'} - - domutils@2.8.0: - resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==} - - domutils@3.1.0: - resolution: {integrity: sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==} - - dot-case@3.0.4: - resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==} - - dotenv-expand@10.0.0: - resolution: {integrity: sha512-GopVGCpVS1UKH75VKHGuQFqS1Gusej0z4FyQkPdwjil2gNIv+LNsqBlboOzpJFZKVT95GkCyWJbBSdFEFUWI2A==} - engines: {node: '>=12'} - - dotenv-flow@4.1.0: - resolution: {integrity: sha512-0cwP9jpQBQfyHwvE0cRhraZMkdV45TQedA8AAUZMsFzvmLcQyc1HPv+oX0OOYwLFjIlvgVepQ+WuQHbqDaHJZg==} - engines: {node: '>= 12.0.0'} - - dotenv@16.0.3: - resolution: {integrity: sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==} - engines: {node: '>=12'} - - duplexer2@0.1.4: - resolution: {integrity: sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==} - - duplexify@3.7.1: - resolution: {integrity: sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==} - - eastasianwidth@0.2.0: - resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - - ecdsa-sig-formatter@1.0.11: - resolution: {integrity: sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==} - - editorconfig@1.0.4: - resolution: {integrity: sha512-L9Qe08KWTlqYMVvMcTIvMAdl1cDUubzRNYL+WfA4bLDMHe4nemKkpmYzkznE1FwLKu0EEmy6obgQKzMJrg4x9Q==} - engines: {node: '>=14'} - hasBin: true - - ee-first@1.1.1: - resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} - - ejs@3.1.9: - resolution: {integrity: sha512-rC+QVNMJWv+MtPgkt0y+0rVEIdbtxVADApW9JXrUVlzHetgcyczP/E7DJmWJ4fJCZF2cPcBk0laWO9ZHMG3DmQ==} - engines: {node: '>=0.10.0'} - hasBin: true - - electron-to-chromium@1.4.304: - resolution: {integrity: sha512-6c8M+ojPgDIXN2NyfGn8oHASXYnayj+gSEnGeLMKb9zjsySeVB/j7KkNAAG9yDcv8gNlhvFg5REa1N/kQU6pgA==} - - electron-to-chromium@1.4.637: - resolution: {integrity: sha512-G7j3UCOukFtxVO1vWrPQUoDk3kL70mtvjc/DC/k2o7lE0wAdq+Vwp1ipagOow+BH0uVztFysLWbkM/RTIrbK3w==} - - elliptic@6.5.4: - resolution: {integrity: sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==} - - emittery@0.13.1: - resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==} - engines: {node: '>=12'} - - emoji-regex@10.3.0: - resolution: {integrity: sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==} - - emoji-regex@8.0.0: - resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} - - emoji-regex@9.2.2: - resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - - emojis-list@3.0.0: - resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==} - engines: {node: '>= 4'} - - enabled@2.0.0: - resolution: {integrity: sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==} - - encodeurl@1.0.2: - resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==} - engines: {node: '>= 0.8'} - - end-of-stream@1.4.4: - resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} - - endent@2.1.0: - resolution: {integrity: sha512-r8VyPX7XL8U01Xgnb1CjZ3XV+z90cXIJ9JPE/R9SEC9vpw2P6CfsRPJmp20DppC5N7ZAMCmjYkJIa744Iyg96w==} - - engine.io-client@6.5.3: - resolution: {integrity: sha512-9Z0qLB0NIisTRt1DZ/8U2k12RJn8yls/nXMZLn+/N8hANT3TcYjKFKcwbw5zFQiN4NTde3TSY9zb79e1ij6j9Q==} - - engine.io-parser@5.0.6: - resolution: {integrity: sha512-tjuoZDMAdEhVnSFleYPCtdL2GXwVTGtNjoeJd9IhIG3C1xs9uwxqRNEu5WpnDZCaozwVlK/nuQhpodhXSIMaxw==} - engines: {node: '>=10.0.0'} - - engine.io-parser@5.2.2: - resolution: {integrity: sha512-RcyUFKA93/CXH20l4SoVvzZfrSDMOTUS3bWVpTt2FuFP+XYrL8i8oonHP7WInRyVHXh0n/ORtoeiE1os+8qkSw==} - engines: {node: '>=10.0.0'} - - engine.io@6.4.1: - resolution: {integrity: sha512-JFYQurD/nbsA5BSPmbaOSLa3tSVj8L6o4srSwXXY3NqE+gGUNmmPTbhn8tjzcCtSqhFgIeqef81ngny8JM25hw==} - engines: {node: '>=10.0.0'} - - engine.io@6.5.4: - resolution: {integrity: sha512-KdVSDKhVKyOi+r5uEabrDLZw2qXStVvCsEB/LN3mw4WFi6Gx50jTyuxYVCwAAC0U46FdnzP/ScKRBTXb/NiEOg==} - engines: {node: '>=10.2.0'} - - enhanced-resolve@5.12.0: - resolution: {integrity: sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==} - engines: {node: '>=10.13.0'} - - entities@2.2.0: - resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==} - - entities@3.0.1: - resolution: {integrity: sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==} - engines: {node: '>=0.12'} - - entities@4.4.0: - resolution: {integrity: sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==} - engines: {node: '>=0.12'} - - envinfo@7.11.0: - resolution: {integrity: sha512-G9/6xF1FPbIw0TtalAMaVPpiq2aDEuKLXM314jPVAO9r2fo2a4BLqMNkmRS7O/xPPZ+COAhGIz3ETvHEV3eUcg==} - engines: {node: '>=4'} - hasBin: true - - error-ex@1.3.2: - resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} - - error-stack-parser@2.1.4: - resolution: {integrity: sha512-Sk5V6wVazPhq5MhpO+AUxJn5x7XSXGl1R93Vn7i+zS15KDVxQijejNCrz8340/2bgLBjR9GtEG8ZVKONDjcqGQ==} - - es-abstract@1.21.1: - resolution: {integrity: sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==} - engines: {node: '>= 0.4'} - - es-abstract@1.22.3: - resolution: {integrity: sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==} - engines: {node: '>= 0.4'} - - es-array-method-boxes-properly@1.0.0: - resolution: {integrity: sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==} - - es-errors@1.3.0: - resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} - engines: {node: '>= 0.4'} - - es-get-iterator@1.1.3: - resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==} - - es-iterator-helpers@1.0.15: - resolution: {integrity: sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==} - - es-module-lexer@0.9.3: - resolution: {integrity: sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==} - - es-module-lexer@1.4.1: - resolution: {integrity: sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==} - - es-set-tostringtag@2.0.1: - resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} - engines: {node: '>= 0.4'} - - es-shim-unscopables@1.0.2: - resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} - - es-to-primitive@1.2.1: - resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} - engines: {node: '>= 0.4'} - - esbuild-plugin-alias@0.2.1: - resolution: {integrity: sha512-jyfL/pwPqaFXyKnj8lP8iLk6Z0m099uXR45aSN8Av1XD4vhvQutxxPzgA2bTcAwQpa1zCXDcWOlhFgyP3GKqhQ==} - - esbuild-register@3.5.0: - resolution: {integrity: sha512-+4G/XmakeBAsvJuDugJvtyF1x+XJT4FMocynNpxrvEBViirpfUn2PgNpCHedfWhF4WokNsO/OvMKrmJOIJsI5A==} - peerDependencies: - esbuild: '>=0.12 <1' - - esbuild@0.18.6: - resolution: {integrity: sha512-5QgxWaAhU/tPBpvkxUmnFv2YINHuZzjbk0LeUUnC2i3aJHjfi5yR49lgKgF7cb98bclOp/kans8M5TGbGFfJlQ==} - engines: {node: '>=12'} - hasBin: true - - esbuild@0.19.11: - resolution: {integrity: sha512-HJ96Hev2hX/6i5cDVwcqiJBBtuo9+FeIJOtZ9W1kA5M6AMJRHUZlpYZ1/SbEwtO0ioNAW8rUooVpC/WehY2SfA==} - engines: {node: '>=12'} - hasBin: true - - esbuild@0.25.9: - resolution: {integrity: sha512-CRbODhYyQx3qp7ZEwzxOk4JBqmD/seJrzPa/cGjY1VtIn5E09Oi9/dB4JwctnfZ8Q8iT7rioVv5k/FNT/uf54g==} - engines: {node: '>=18'} - hasBin: true - - escalade@3.1.1: - resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} - engines: {node: '>=6'} - - escape-html@1.0.3: - resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} - - escape-string-regexp@1.0.5: - resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} - engines: {node: '>=0.8.0'} - - escape-string-regexp@2.0.0: - resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==} - engines: {node: '>=8'} - - escape-string-regexp@4.0.0: - resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} - engines: {node: '>=10'} - - escodegen@2.1.0: - resolution: {integrity: sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==} - engines: {node: '>=6.0'} - hasBin: true - - eslint-config-airbnb-base@15.0.0: - resolution: {integrity: sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig==} - engines: {node: ^10.12.0 || >=12.0.0} - peerDependencies: - eslint: ^7.32.0 || ^8.2.0 - eslint-plugin-import: ^2.25.2 - - eslint-config-airbnb-typescript@17.1.0: - resolution: {integrity: sha512-GPxI5URre6dDpJ0CtcthSZVBAfI+Uw7un5OYNVxP2EYi3H81Jw701yFP7AU+/vCE7xBtFmjge7kfhhk4+RAiig==} - peerDependencies: - '@typescript-eslint/eslint-plugin': ^5.13.0 || ^6.0.0 - '@typescript-eslint/parser': ^5.0.0 || ^6.0.0 - eslint: ^7.32.0 || ^8.2.0 - eslint-plugin-import: ^2.25.3 - - eslint-config-airbnb@19.0.4: - resolution: {integrity: sha512-T75QYQVQX57jiNgpF9r1KegMICE94VYwoFQyMGhrvc+lB8YF2E/M/PYDaQe1AJcWaEgqLE+ErXV1Og/+6Vyzew==} - engines: {node: ^10.12.0 || ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^7.32.0 || ^8.2.0 - eslint-plugin-import: ^2.25.3 - eslint-plugin-jsx-a11y: ^6.5.1 - eslint-plugin-react: ^7.28.0 - eslint-plugin-react-hooks: ^4.3.0 - - eslint-config-next@14.1.0: - resolution: {integrity: sha512-SBX2ed7DoRFXC6CQSLc/SbLY9Ut6HxNB2wPTcoIWjUMd7aF7O/SIE7111L8FdZ9TXsNV4pulUDnfthpyPtbFUg==} - peerDependencies: - eslint: ^7.23.0 || ^8.0.0 - typescript: '>=3.3.1' - peerDependenciesMeta: - typescript: - optional: true - - eslint-config-prettier@9.0.0: - resolution: {integrity: sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==} - hasBin: true - peerDependencies: - eslint: '>=7.0.0' - - eslint-config-prettier@9.1.0: - resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} - hasBin: true - peerDependencies: - eslint: '>=7.0.0' - - eslint-config-turbo@1.10.12: - resolution: {integrity: sha512-z3jfh+D7UGYlzMWGh+Kqz++hf8LOE96q3o5R8X4HTjmxaBWlLAWG+0Ounr38h+JLR2TJno0hU9zfzoPNkR9BdA==} - peerDependencies: - eslint: '>6.6.0' - - eslint-import-resolver-node@0.3.9: - resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} - - eslint-import-resolver-typescript@3.5.3: - resolution: {integrity: sha512-njRcKYBc3isE42LaTcJNVANR3R99H9bAxBDMNDr2W7yq5gYPxbU3MkdhsQukxZ/Xg9C2vcyLlDsbKfRDg0QvCQ==} - engines: {node: ^14.18.0 || >=16.0.0} - peerDependencies: - eslint: '*' - eslint-plugin-import: '*' - - eslint-module-utils@2.8.0: - resolution: {integrity: sha512-aWajIYfsqCKRDgUfjEXNN/JlrzauMuSEy5sbd7WXbtW3EH6A6MpwEh42c7qD+MqQo9QMJ6fWLAeIJynx0g6OAw==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: '*' - eslint-import-resolver-node: '*' - eslint-import-resolver-typescript: '*' - eslint-import-resolver-webpack: '*' - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - eslint: - optional: true - eslint-import-resolver-node: - optional: true - eslint-import-resolver-typescript: - optional: true - eslint-import-resolver-webpack: - optional: true - - eslint-plugin-import@2.27.5: - resolution: {integrity: sha512-LmEt3GVofgiGuiE+ORpnvP+kAm3h6MLZJ4Q5HCyHADofsb4VzXFsRiWj3c0OFiV+3DWFh0qg3v9gcPlfc3zRow==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - - eslint-plugin-import@2.29.1: - resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - - eslint-plugin-jsx-a11y@6.7.1: - resolution: {integrity: sha512-63Bog4iIethyo8smBklORknVjB0T2dwB8Mr/hIC+fBS0uyHdYYpzM/Ed+YC8VxTjlXHEWFOdmgwcDn1U2L9VCA==} - engines: {node: '>=4.0'} - peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 - - eslint-plugin-react-hooks@4.6.0: - resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==} - engines: {node: '>=10'} - peerDependencies: - eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 - - eslint-plugin-react@7.28.0: - resolution: {integrity: sha512-IOlFIRHzWfEQQKcAD4iyYDndHwTQiCMcJVJjxempf203jnNLUnW34AXLrV33+nEXoifJE2ZEGmcjKPL8957eSw==} - engines: {node: '>=4'} - peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 - - eslint-plugin-react@7.33.2: - resolution: {integrity: sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==} - engines: {node: '>=4'} - peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 - - eslint-plugin-simple-import-sort@10.0.0: - resolution: {integrity: sha512-AeTvO9UCMSNzIHRkg8S6c3RPy5YEwKWSQPx3DYghLedo2ZQxowPFLGDN1AZ2evfg6r6mjBSZSLxLFsWSu3acsw==} - peerDependencies: - eslint: '>=5.0.0' - - eslint-plugin-turbo@1.10.12: - resolution: {integrity: sha512-uNbdj+ohZaYo4tFJ6dStRXu2FZigwulR1b3URPXe0Q8YaE7thuekKNP+54CHtZPH9Zey9dmDx5btAQl9mfzGOw==} - peerDependencies: - eslint: '>6.6.0' - - eslint-scope@5.1.1: - resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} - engines: {node: '>=8.0.0'} - - eslint-scope@7.2.2: - resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - eslint-visitor-keys@3.4.3: - resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - eslint@8.56.0: - resolution: {integrity: sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - hasBin: true - - espree@9.6.1: - resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - esprima@4.0.1: - resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} - engines: {node: '>=4'} - hasBin: true - - esquery@1.4.2: - resolution: {integrity: sha512-JVSoLdTlTDkmjFmab7H/9SL9qGSyjElT3myyKp7krqjVFQCDLmj1QFaCLRFBszBKI0XVZaiiXvuPIX3ZwHe1Ng==} - engines: {node: '>=0.10'} - - esrecurse@4.3.0: - resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} - engines: {node: '>=4.0'} - - estraverse@4.3.0: - resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} - engines: {node: '>=4.0'} - - estraverse@5.3.0: - resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} - engines: {node: '>=4.0'} - - esutils@2.0.3: - resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} - engines: {node: '>=0.10.0'} - - etag@1.8.1: - resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} - engines: {node: '>= 0.6'} - - event-target-shim@5.0.1: - resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} - engines: {node: '>=6'} - - eventemitter3@5.0.1: - resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} - - events@3.3.0: - resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} - engines: {node: '>=0.8.x'} - - evp_bytestokey@1.0.3: - resolution: {integrity: sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==} - - execa@5.1.1: - resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} - engines: {node: '>=10'} - - execa@7.1.0: - resolution: {integrity: sha512-T6nIJO3LHxUZ6ahVRaxXz9WLEruXLqdcluA+UuTptXmLM7nDAn9lx9IfkxPyzEL21583qSt4RmL44pO71EHaJQ==} - engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0} - - execa@8.0.1: - resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} - engines: {node: '>=16.17'} - - exit@0.1.2: - resolution: {integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==} - engines: {node: '>= 0.8.0'} - - expand-template@2.0.3: - resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} - engines: {node: '>=6'} - - expect@29.5.0: - resolution: {integrity: sha512-yM7xqUrCO2JdpFo4XpM82t+PJBFybdqoQuJLDGeDX2ij8NZzqRHyu3Hp188/JX7SWqud+7t4MUdvcgGBICMHZg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - expect@29.7.0: - resolution: {integrity: sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - express@4.18.2: - resolution: {integrity: sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==} - engines: {node: '>= 0.10.0'} - - extend@3.0.2: - resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} - - extract-zip@1.7.0: - resolution: {integrity: sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==} - hasBin: true - - fast-deep-equal@3.1.3: - resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - - fast-fifo@1.3.2: - resolution: {integrity: sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==} - - fast-glob@3.2.12: - resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==} - engines: {node: '>=8.6.0'} - - fast-glob@3.3.2: - resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} - engines: {node: '>=8.6.0'} - - fast-json-parse@1.0.3: - resolution: {integrity: sha512-FRWsaZRWEJ1ESVNbDWmsAlqDk96gPQezzLghafp5J4GUKjbCz3OkAHuZs5TuPEtkbVQERysLp9xv6c24fBm8Aw==} - - fast-json-stable-stringify@2.1.0: - resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} - - fast-levenshtein@2.0.6: - resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} - - fast-text-encoding@1.0.6: - resolution: {integrity: sha512-VhXlQgj9ioXCqGstD37E/HBeqEGV/qOD/kmbVG8h5xKBYvM1L3lR1Zn4555cQ8GkYbJa8aJSipLPndE1k6zK2w==} - - fast-xml-parser@4.0.11: - resolution: {integrity: sha512-4aUg3aNRR/WjQAcpceODG1C3x3lFANXRo8+1biqfieHmg9pyMt7qB4lQV/Ta6sJCTbA5vfD8fnA8S54JATiFUA==} - hasBin: true - - fast-xml-parser@4.2.5: - resolution: {integrity: sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==} - hasBin: true - - fastq@1.15.0: - resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} - - fb-watchman@2.0.2: - resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==} - - fd-slicer@1.1.0: - resolution: {integrity: sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==} - - fecha@4.2.3: - resolution: {integrity: sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==} - - fetch-retry@5.0.6: - resolution: {integrity: sha512-3yurQZ2hD9VISAhJJP9bpYFNQrHHBXE2JxxjY5aLEcDi46RmAzJE2OC9FAde0yis5ElW0jTTzs0zfg/Cca4XqQ==} - - file-entry-cache@6.0.1: - resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} - engines: {node: ^10.12.0 || >=12.0.0} - - file-system-cache@2.3.0: - resolution: {integrity: sha512-l4DMNdsIPsVnKrgEXbJwDJsA5mB8rGwHYERMgqQx/xAUtChPJMre1bXBzDEqqVbWv9AIbFezXMxeEkZDSrXUOQ==} - - filelist@1.0.4: - resolution: {integrity: sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==} - - fill-range@7.0.1: - resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} - engines: {node: '>=8'} - - filter-obj@2.0.2: - resolution: {integrity: sha512-lO3ttPjHZRfjMcxWKb1j1eDhTFsu4meeR3lnMcnBFhk6RuLhvEiuALu2TlfL310ph4lCYYwgF/ElIjdP739tdg==} - engines: {node: '>=8'} - - finalhandler@1.2.0: - resolution: {integrity: sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==} - engines: {node: '>= 0.8'} - - find-cache-dir@2.1.0: - resolution: {integrity: sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==} - engines: {node: '>=6'} - - find-cache-dir@3.3.2: - resolution: {integrity: sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==} - engines: {node: '>=8'} - - find-root@1.1.0: - resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==} - - find-up@3.0.0: - resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==} - engines: {node: '>=6'} - - find-up@4.1.0: - resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} - engines: {node: '>=8'} - - find-up@5.0.0: - resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} - engines: {node: '>=10'} - - fix-esm@1.0.1: - resolution: {integrity: sha512-EZtb7wPXZS54GaGxaWxMlhd1DUDCnAg5srlYdu/1ZVeW+7wwR3Tp59nu52dXByFs3MBRq+SByx1wDOJpRvLEXw==} - - flat-cache@3.0.4: - resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} - engines: {node: ^10.12.0 || >=12.0.0} - - flatted@3.2.7: - resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==} - - flow-parser@0.226.0: - resolution: {integrity: sha512-YlH+Y/P/5s0S7Vg14RwXlJMF/JsGfkG7gcKB/zljyoqaPNX9YVsGzx+g6MLTbhZaWbPhs4347aTpmSb9GgiPtw==} - engines: {node: '>=0.4.0'} - - fn.name@1.1.0: - resolution: {integrity: sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==} - - follow-redirects@1.15.5: - resolution: {integrity: sha512-vSFWUON1B+yAw1VN4xMfxgn5fTUiaOzAJCKBwIIgT/+7CuGy9+r+5gITvP62j3RmaD5Ph65UaERdOSRGUzZtgw==} - engines: {node: '>=4.0'} - peerDependencies: - debug: '*' - peerDependenciesMeta: - debug: - optional: true - - for-each@0.3.3: - resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} - - foreground-child@3.1.1: - resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} - engines: {node: '>=14'} - - fork-ts-checker-webpack-plugin@8.0.0: - resolution: {integrity: sha512-mX3qW3idpueT2klaQXBzrIM/pHw+T0B/V9KHEvNrqijTq9NFnMZU6oreVxDYcf33P8a5cW+67PjodNHthGnNVg==} - engines: {node: '>=12.13.0', yarn: '>=1.0.0'} - peerDependencies: - typescript: '>3.6.0' - webpack: ^5.11.0 - - form-data@4.0.0: - resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} - engines: {node: '>= 6'} - - forwarded@0.2.0: - resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==} - engines: {node: '>= 0.6'} - - fraction.js@4.2.0: - resolution: {integrity: sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==} - - framer-motion@10.17.4: - resolution: {integrity: sha512-CYBSs6cWfzcasAX8aofgKFZootmkQtR4qxbfTOksBLny/lbUfkGbQAFOS3qnl6Uau1N9y8tUpI7mVIrHgkFjLQ==} - peerDependencies: - react: ^18.0.0 - react-dom: ^18.0.0 - peerDependenciesMeta: - react: - optional: true - react-dom: - optional: true - - fresh@0.5.2: - resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} - engines: {node: '>= 0.6'} - - fs-constants@1.0.0: - resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} - - fs-extra@10.1.0: - resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} - engines: {node: '>=12'} - - fs-extra@11.1.1: - resolution: {integrity: sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==} - engines: {node: '>=14.14'} - - fs-minipass@2.1.0: - resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} - engines: {node: '>= 8'} - - fs-monkey@1.0.5: - resolution: {integrity: sha512-8uMbBjrhzW76TYgEV27Y5E//W2f/lTFmx78P2w19FZSxarhI/798APGQyuGCwmkNxgwGRhrLfvWyLBvNtuOmew==} - - fs.realpath@1.0.0: - resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} - - fsevents@2.3.2: - resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} - os: [darwin] - - fsevents@2.3.3: - resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} - os: [darwin] - - function-bind@1.1.2: - resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - - function.prototype.name@1.1.5: - resolution: {integrity: sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==} - engines: {node: '>= 0.4'} - - function.prototype.name@1.1.6: - resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} - engines: {node: '>= 0.4'} - - functions-have-names@1.2.3: - resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} - - gaxios@5.0.2: - resolution: {integrity: sha512-TjtV2AJOZoMQqRYoy5eM8cCQogYwazWNYLQ72QB0kwa6vHHruYkGmhhyrlzbmgNHK1dNnuP2WSH81urfzyN2Og==} - engines: {node: '>=12'} - - gcp-metadata@5.2.0: - resolution: {integrity: sha512-aFhhvvNycky2QyhG+dcfEdHBF0FRbYcf39s6WNHUDysKSrbJ5vuFbjydxBcmewtXeV248GP8dWT3ByPNxsyHCw==} - engines: {node: '>=12'} - - gensync@1.0.0-beta.2: - resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} - engines: {node: '>=6.9.0'} - - get-caller-file@2.0.5: - resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} - engines: {node: 6.* || 8.* || >= 10.*} - - get-east-asian-width@1.2.0: - resolution: {integrity: sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==} - engines: {node: '>=18'} - - get-func-name@2.0.2: - resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} - - get-intrinsic@1.2.2: - resolution: {integrity: sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==} - - get-nonce@1.0.1: - resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==} - engines: {node: '>=6'} - - get-npm-tarball-url@2.1.0: - resolution: {integrity: sha512-ro+DiMu5DXgRBabqXupW38h7WPZ9+Ad8UjwhvsmmN8w1sU7ab0nzAXvVZ4kqYg57OrqomRtJvepX5/xvFKNtjA==} - engines: {node: '>=12.17'} - - get-package-type@0.1.0: - resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==} - engines: {node: '>=8.0.0'} - - get-port@5.1.1: - resolution: {integrity: sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==} - engines: {node: '>=8'} - - get-stream@6.0.1: - resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} - engines: {node: '>=10'} - - get-stream@8.0.1: - resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} - engines: {node: '>=16'} - - get-symbol-description@1.0.0: - resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} - engines: {node: '>= 0.4'} - - get-tsconfig@4.10.1: - resolution: {integrity: sha512-auHyJ4AgMz7vgS8Hp3N6HXSmlMdUyhSUrfBF16w153rxtLIEOE+HGqaBppczZvnHLqQJfiHotCYpNhl0lUROFQ==} - - get-tsconfig@4.4.0: - resolution: {integrity: sha512-0Gdjo/9+FzsYhXCEFueo2aY1z1tpXrxWZzP7k8ul9qt1U5o8rYJwTJYmaeHdrVosYIVYkOy2iwCJ9FdpocJhPQ==} - - giget@1.2.1: - resolution: {integrity: sha512-4VG22mopWtIeHwogGSy1FViXVo0YT+m6BrqZfz0JJFwbSsePsCdOzdLIIli5BtMp7Xe8f/o2OmBpQX2NBOC24g==} - hasBin: true - - github-from-package@0.0.0: - resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} - - github-slugger@1.5.0: - resolution: {integrity: sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==} - - glob-parent@5.1.2: - resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} - engines: {node: '>= 6'} - - glob-parent@6.0.2: - resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} - engines: {node: '>=10.13.0'} - - glob-to-regexp@0.4.1: - resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} - - glob@10.3.10: - resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==} - engines: {node: '>=16 || 14 >=14.17'} - hasBin: true - - glob@10.3.4: - resolution: {integrity: sha512-6LFElP3A+i/Q8XQKEvZjkEWEOTgAIALR9AO2rwT8bgPhDd1anmqDJDZ6lLddI4ehxxxR1S5RIqKe1uapMQfYaQ==} - engines: {node: '>=16 || 14 >=14.17'} - hasBin: true - - glob@7.1.6: - resolution: {integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==} - - glob@7.2.3: - resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} - - globals@11.12.0: - resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} - engines: {node: '>=4'} - - globals@13.20.0: - resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==} - engines: {node: '>=8'} - - globalthis@1.0.3: - resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} - engines: {node: '>= 0.4'} - - globalyzer@0.1.0: - resolution: {integrity: sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==} - - globby@11.1.0: - resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} - engines: {node: '>=10'} - - globby@13.1.3: - resolution: {integrity: sha512-8krCNHXvlCgHDpegPzleMq07yMYTO2sXKASmZmquEYWEmCx6J5UTRbp5RwMJkTJGtcQ44YpiUYUiN0b9mzy8Bw==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - globrex@0.1.2: - resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==} - - google-auth-library@8.7.0: - resolution: {integrity: sha512-1M0NG5VDIvJZEnstHbRdckLZESoJwguinwN8Dhae0j2ZKIQFIV63zxm6Fo6nM4xkgqUr2bbMtV5Dgo+Hy6oo0Q==} - engines: {node: '>=12'} - - google-p12-pem@4.0.1: - resolution: {integrity: sha512-WPkN4yGtz05WZ5EhtlxNDWPhC4JIic6G8ePitwUWy4l+XPVYec+a0j0Ts47PDtW59y3RwAhUd9/h9ZZ63px6RQ==} - engines: {node: '>=12.0.0'} - hasBin: true - - gopd@1.0.1: - resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} - - graceful-fs@4.2.11: - resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} - - graphemer@1.4.0: - resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - - gtoken@6.1.2: - resolution: {integrity: sha512-4ccGpzz7YAr7lxrT2neugmXQ3hP9ho2gcaityLVkiUecAiwiy60Ii8gRbZeOsXV19fYaRjgBSshs8kXw+NKCPQ==} - engines: {node: '>=12.0.0'} - - gunzip-maybe@1.4.2: - resolution: {integrity: sha512-4haO1M4mLO91PW57BMsDFf75UmwoRX0GkdD+Faw+Lr+r/OZrOCS0pIBwOL1xCKQqnQzbNFGgK2V2CpBUPeFNTw==} - hasBin: true - - handlebars@4.7.8: - resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==} - engines: {node: '>=0.4.7'} - hasBin: true - - hard-rejection@2.1.0: - resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==} - engines: {node: '>=6'} - - has-ansi@2.0.0: - resolution: {integrity: sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==} - engines: {node: '>=0.10.0'} - - has-bigints@1.0.2: - resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} - - has-flag@3.0.0: - resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} - engines: {node: '>=4'} - - has-flag@4.0.0: - resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} - engines: {node: '>=8'} - - has-property-descriptors@1.0.0: - resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} - - has-proto@1.0.1: - resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} - engines: {node: '>= 0.4'} - - has-symbols@1.0.3: - resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} - engines: {node: '>= 0.4'} - - has-tostringtag@1.0.0: - resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==} - engines: {node: '>= 0.4'} - - has@1.0.3: - resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} - engines: {node: '>= 0.4.0'} - - hash-base@3.1.0: - resolution: {integrity: sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==} - engines: {node: '>=4'} - - hash.js@1.1.7: - resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==} - - hasown@2.0.0: - resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} - engines: {node: '>= 0.4'} - - he@1.2.0: - resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} - hasBin: true - - helmet@4.6.0: - resolution: {integrity: sha512-HVqALKZlR95ROkrnesdhbbZJFi/rIVSoNq6f3jA/9u6MIbTsPh3xZwihjeI5+DO/2sOV6HMHooXcEOuwskHpTg==} - engines: {node: '>=10.0.0'} - - hmac-drbg@1.0.1: - resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==} - - hoist-non-react-statics@3.3.2: - resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==} - - hosted-git-info@2.8.9: - resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} - - html-dom-parser@1.2.0: - resolution: {integrity: sha512-2HIpFMvvffsXHFUFjso0M9LqM+1Lm22BF+Df2ba+7QHJXjk63pWChEnI6YG27eaWqUdfnh5/Vy+OXrNTtepRsg==} - - html-entities@2.4.0: - resolution: {integrity: sha512-igBTJcNNNhvZFRtm8uA6xMY6xYleeDwn3PeBCkDz7tHttv4F2hsDI2aPgNERWzvRcNYHNT3ymRaQzllmXj4YsQ==} - - html-escaper@2.0.2: - resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} - - html-minifier-terser@6.1.0: - resolution: {integrity: sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==} - engines: {node: '>=12'} - hasBin: true - - html-react-parser@1.4.12: - resolution: {integrity: sha512-nqYQzr4uXh67G9ejAG7djupTHmQvSTgjY83zbXLRfKHJ0F06751jXx6WKSFARDdXxCngo2/7H4Rwtfeowql4gQ==} - peerDependencies: - react: 0.14 || 15 || 16 || 17 || 18 - - html-tags@3.3.1: - resolution: {integrity: sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==} - engines: {node: '>=8'} - - html-to-text@9.0.5: - resolution: {integrity: sha512-qY60FjREgVZL03vJU6IfMV4GDjGBIoOyvuFdpBDIX9yTlDw0TjxVBQp+P8NvpdIXNJvfWBTNul7fsAQJq2FNpg==} - engines: {node: '>=14'} - - html-tokenize@2.0.1: - resolution: {integrity: sha512-QY6S+hZ0f5m1WT8WffYN+Hg+xm/w5I8XeUcAq/ZYP5wVC8xbKi4Whhru3FtrAebD5EhBW8rmFzkDI6eCAuFe2w==} - hasBin: true - - html-webpack-plugin@5.6.0: - resolution: {integrity: sha512-iwaY4wzbe48AfKLZ/Cc8k0L+FKG6oSNRaZ8x5A/T/IVDGyXcbHncM9TdDa93wn0FsSm82FhTKW7f3vS61thXAw==} - engines: {node: '>=10.13.0'} - peerDependencies: - '@rspack/core': 0.x || 1.x - webpack: ^5.20.0 - peerDependenciesMeta: - '@rspack/core': - optional: true - webpack: - optional: true - - htmlparser2@6.1.0: - resolution: {integrity: sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==} - - htmlparser2@7.2.0: - resolution: {integrity: sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==} - - htmlparser2@8.0.2: - resolution: {integrity: sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==} - - http-assert@1.5.0: - resolution: {integrity: sha512-uPpH7OKX4H25hBmU6G1jWNaqJGpTXxey+YOUizJUAgu0AjLUeC8D73hTrhvDS5D+GJN1DN1+hhc/eF/wpxtp0w==} - engines: {node: '>= 0.8'} - - http-errors@1.8.1: - resolution: {integrity: sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==} - engines: {node: '>= 0.6'} - - http-errors@2.0.0: - resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==} - engines: {node: '>= 0.8'} - - https-browserify@1.0.0: - resolution: {integrity: sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==} - - https-proxy-agent@4.0.0: - resolution: {integrity: sha512-zoDhWrkR3of1l9QAL8/scJZyLu8j/gBkcwcaQOZh7Gyh/+uJQzGVETdgT30akuwkpL8HTRfssqI3BZuV18teDg==} - engines: {node: '>= 6.0.0'} - - https-proxy-agent@5.0.0: - resolution: {integrity: sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==} - engines: {node: '>= 6'} - - https-proxy-agent@5.0.1: - resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} - engines: {node: '>= 6'} - - https-proxy-agent@7.0.4: - resolution: {integrity: sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==} - engines: {node: '>= 14'} - - human-signals@2.1.0: - resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} - engines: {node: '>=10.17.0'} - - human-signals@4.3.0: - resolution: {integrity: sha512-zyzVyMjpGBX2+6cDVZeFPCdtOtdsxOeseRhB9tkQ6xXmGUNrcnBzdEKPy3VPNYz+4gy1oukVOXcrJCunSyc6QQ==} - engines: {node: '>=14.18.0'} - - human-signals@5.0.0: - resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} - engines: {node: '>=16.17.0'} - - humanize-number@0.0.2: - resolution: {integrity: sha512-un3ZAcNQGI7RzaWGZzQDH47HETM4Wrj6z6E4TId8Yeq9w5ZKUVB1nrT2jwFheTUjEmqcgTjXDc959jum+ai1kQ==} - - husky@9.0.11: - resolution: {integrity: sha512-AB6lFlbwwyIqMdHYhwPe+kjOC3Oc5P3nThEoW/AaO2BX3vJDjWPFxYLxokUZOo6RNX20He3AaT8sESs9NJcmEw==} - engines: {node: '>=18'} - hasBin: true - - iconv-lite@0.4.24: - resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} - engines: {node: '>=0.10.0'} - - icss-utils@5.1.0: - resolution: {integrity: sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - - ieee754@1.2.1: - resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} - - ignore@5.2.4: - resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} - engines: {node: '>= 4'} - - image-size@1.1.1: - resolution: {integrity: sha512-541xKlUw6jr/6gGuk92F+mYM5zaFAc5ahphvkqvNe2bQ6gVBkd6bfrmVJ2t4KDAfikAYZyIqTnktX3i6/aQDrQ==} - engines: {node: '>=16.x'} - hasBin: true - - import-fresh@3.3.0: - resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} - engines: {node: '>=6'} - - import-local@3.1.0: - resolution: {integrity: sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==} - engines: {node: '>=8'} - hasBin: true - - imurmurhash@0.1.4: - resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} - engines: {node: '>=0.8.19'} - - indent-string@4.0.0: - resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} - engines: {node: '>=8'} - - inflation@2.0.0: - resolution: {integrity: sha512-m3xv4hJYR2oXw4o4Y5l6P5P16WYmazYof+el6Al3f+YlggGj6qT9kImBAnzDelRALnP5d3h4jGBPKzYCizjZZw==} - engines: {node: '>= 0.8.0'} - - inflight@1.0.6: - resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} - - inherits@2.0.4: - resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} - - ini@1.3.8: - resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} - - inline-style-parser@0.1.1: - resolution: {integrity: sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==} - - internal-slot@1.0.5: - resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==} - engines: {node: '>= 0.4'} - - interpret@1.4.0: - resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==} - engines: {node: '>= 0.10'} - - invariant@2.2.4: - resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} - - ioredis@5.3.2: - resolution: {integrity: sha512-1DKMMzlIHM02eBBVOFQ1+AolGjs6+xEcM4PDL7NqOS6szq7H9jSaEkIUH6/a5Hl241LzW6JLSiAbNvTQjUupUA==} - engines: {node: '>=12.22.0'} - - ip@2.0.0: - resolution: {integrity: sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==} - - ipaddr.js@1.9.1: - resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} - engines: {node: '>= 0.10'} - - is-absolute-url@3.0.3: - resolution: {integrity: sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==} - engines: {node: '>=8'} - - is-arguments@1.1.1: - resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} - engines: {node: '>= 0.4'} - - is-array-buffer@3.0.1: - resolution: {integrity: sha512-ASfLknmY8Xa2XtB4wmbz13Wu202baeA18cJBCeCy0wXUHZF0IPyVEXqKEcd+t2fNSLLL1vC6k7lxZEojNbISXQ==} - - is-array-buffer@3.0.2: - resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==} - - is-arrayish@0.2.1: - resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} - - is-arrayish@0.3.2: - resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} - - is-async-function@2.0.0: - resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} - engines: {node: '>= 0.4'} - - is-bigint@1.0.4: - resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} - - is-binary-path@2.1.0: - resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} - engines: {node: '>=8'} - - is-boolean-object@1.1.2: - resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} - engines: {node: '>= 0.4'} - - is-callable@1.2.7: - resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} - engines: {node: '>= 0.4'} - - is-core-module@2.13.1: - resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} - - is-date-object@1.0.5: - resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} - engines: {node: '>= 0.4'} - - is-deflate@1.0.0: - resolution: {integrity: sha512-YDoFpuZWu1VRXlsnlYMzKyVRITXj7Ej/V9gXQ2/pAe7X1J7M/RNOqaIYi6qUn+B7nGyB9pDXrv02dsB58d2ZAQ==} - - is-docker@2.2.1: - resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} - engines: {node: '>=8'} - hasBin: true - - is-extglob@2.1.1: - resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} - engines: {node: '>=0.10.0'} - - is-finalizationregistry@1.0.2: - resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==} - - is-fullwidth-code-point@3.0.0: - resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} - engines: {node: '>=8'} - - is-fullwidth-code-point@4.0.0: - resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==} - engines: {node: '>=12'} - - is-fullwidth-code-point@5.0.0: - resolution: {integrity: sha512-OVa3u9kkBbw7b8Xw5F9P+D/T9X+Z4+JruYVNapTjPYZYUznQ5YfWeFkOj606XYYW8yugTfC8Pj0hYqvi4ryAhA==} - engines: {node: '>=18'} - - is-generator-fn@2.1.0: - resolution: {integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==} - engines: {node: '>=6'} - - is-generator-function@1.0.10: - resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} - engines: {node: '>= 0.4'} - - is-glob@4.0.3: - resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} - engines: {node: '>=0.10.0'} - - is-gzip@1.0.0: - resolution: {integrity: sha512-rcfALRIb1YewtnksfRIHGcIY93QnK8BIQ/2c9yDYcG/Y6+vRoJuTWBmmSEbyLLYtXm7q35pHOHbZFQBaLrhlWQ==} - engines: {node: '>=0.10.0'} - - is-interactive@1.0.0: - resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} - engines: {node: '>=8'} - - is-map@2.0.2: - resolution: {integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==} - - is-nan@1.3.2: - resolution: {integrity: sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==} - engines: {node: '>= 0.4'} - - is-negative-zero@2.0.2: - resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} - engines: {node: '>= 0.4'} - - is-number-object@1.0.7: - resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} - engines: {node: '>= 0.4'} - - is-number@7.0.0: - resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} - engines: {node: '>=0.12.0'} - - is-path-cwd@2.2.0: - resolution: {integrity: sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==} - engines: {node: '>=6'} - - is-path-inside@3.0.3: - resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} - engines: {node: '>=8'} - - is-plain-obj@1.1.0: - resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==} - engines: {node: '>=0.10.0'} - - is-plain-object@2.0.4: - resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==} - engines: {node: '>=0.10.0'} - - is-plain-object@5.0.0: - resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} - engines: {node: '>=0.10.0'} - - is-regex@1.1.4: - resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} - engines: {node: '>= 0.4'} - - is-set@2.0.2: - resolution: {integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==} - - is-shared-array-buffer@1.0.2: - resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} - - is-stream@2.0.1: - resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} - engines: {node: '>=8'} - - is-stream@3.0.0: - resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - is-string@1.0.7: - resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} - engines: {node: '>= 0.4'} - - is-symbol@1.0.4: - resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} - engines: {node: '>= 0.4'} - - is-typed-array@1.1.10: - resolution: {integrity: sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==} - engines: {node: '>= 0.4'} - - is-typed-array@1.1.12: - resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==} - engines: {node: '>= 0.4'} - - is-unicode-supported@0.1.0: - resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} - engines: {node: '>=10'} - - is-weakmap@2.0.1: - resolution: {integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==} - - is-weakref@1.0.2: - resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} - - is-weakset@2.0.2: - resolution: {integrity: sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==} - - is-wsl@2.2.0: - resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} - engines: {node: '>=8'} - - isarray@0.0.1: - resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==} - - isarray@1.0.0: - resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} - - isarray@2.0.5: - resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} - - isexe@2.0.0: - resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} - - isobject@3.0.1: - resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==} - engines: {node: '>=0.10.0'} - - istanbul-lib-coverage@3.2.0: - resolution: {integrity: sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==} - engines: {node: '>=8'} - - istanbul-lib-instrument@5.2.1: - resolution: {integrity: sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==} - engines: {node: '>=8'} - - istanbul-lib-instrument@6.0.2: - resolution: {integrity: sha512-1WUsZ9R1lA0HtBSohTkm39WTPlNKSJ5iFk7UwqXkBLoHQT+hfqPsfsTDVuZdKGaBwn7din9bS7SsnoAr943hvw==} - engines: {node: '>=10'} - - istanbul-lib-report@3.0.0: - resolution: {integrity: sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==} - engines: {node: '>=8'} - - istanbul-lib-source-maps@4.0.1: - resolution: {integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==} - engines: {node: '>=10'} - - istanbul-reports@3.1.5: - resolution: {integrity: sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==} - engines: {node: '>=8'} - - iterator.prototype@1.1.2: - resolution: {integrity: sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==} - - jackspeak@2.3.6: - resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} - engines: {node: '>=14'} - - jake@10.8.7: - resolution: {integrity: sha512-ZDi3aP+fG/LchyBzUM804VjddnwfSfsdeYkwt8NcbKRvo4rFkjhs456iLFn3k2ZUWvNe4i48WACDbza8fhq2+w==} - engines: {node: '>=10'} - hasBin: true - - jest-changed-files@29.7.0: - resolution: {integrity: sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-circus@29.7.0: - resolution: {integrity: sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-cli@29.7.0: - resolution: {integrity: sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - hasBin: true - peerDependencies: - node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 - peerDependenciesMeta: - node-notifier: - optional: true - - jest-config@29.7.0: - resolution: {integrity: sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==} - 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 - - jest-diff@29.5.0: - resolution: {integrity: sha512-LtxijLLZBduXnHSniy0WMdaHjmQnt3g5sa16W4p0HqukYTTsyTW3GD1q41TyGl5YFXj/5B2U6dlh5FM1LIMgxw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-diff@29.7.0: - resolution: {integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-docblock@29.7.0: - resolution: {integrity: sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-each@29.7.0: - resolution: {integrity: sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-environment-node@29.7.0: - resolution: {integrity: sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-get-type@29.4.3: - resolution: {integrity: sha512-J5Xez4nRRMjk8emnTpWrlkyb9pfRQQanDrvWHhsR1+VUfbwxi30eVcZFlcdGInRibU4G5LwHXpI7IRHU0CY+gg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-get-type@29.6.3: - resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-haste-map@29.5.0: - resolution: {integrity: sha512-IspOPnnBro8YfVYSw6yDRKh/TiCdRngjxeacCps1cQ9cgVN6+10JUcuJ1EabrgYLOATsIAigxA0rLR9x/YlrSA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-haste-map@29.7.0: - resolution: {integrity: sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-leak-detector@29.7.0: - resolution: {integrity: sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-matcher-utils@29.5.0: - resolution: {integrity: sha512-lecRtgm/rjIK0CQ7LPQwzCs2VwW6WAahA55YBuI+xqmhm7LAaxokSB8C97yJeYyT+HvQkH741StzpU41wohhWw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-matcher-utils@29.7.0: - resolution: {integrity: sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-message-util@29.5.0: - resolution: {integrity: sha512-Kijeg9Dag6CKtIDA7O21zNTACqD5MD/8HfIV8pdD94vFyFuer52SigdC3IQMhab3vACxXMiFk+yMHNdbqtyTGA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-message-util@29.7.0: - resolution: {integrity: sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-mock@27.5.1: - resolution: {integrity: sha512-K4jKbY1d4ENhbrG2zuPWaQBvDly+iZ2yAW+T1fATN78hc0sInwn7wZB8XtlNnvHug5RMwV897Xm4LqmPM4e2Og==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - - jest-mock@29.7.0: - resolution: {integrity: sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-pnp-resolver@1.2.3: - resolution: {integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==} - engines: {node: '>=6'} - peerDependencies: - jest-resolve: '*' - peerDependenciesMeta: - jest-resolve: - optional: true - - jest-regex-util@29.4.3: - resolution: {integrity: sha512-O4FglZaMmWXbGHSQInfXewIsd1LMn9p3ZXB/6r4FOkyhX2/iP/soMG98jGvk/A3HAN78+5VWcBGO0BJAPRh4kg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-regex-util@29.6.3: - resolution: {integrity: sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-resolve-dependencies@29.7.0: - resolution: {integrity: sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-resolve@29.7.0: - resolution: {integrity: sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-runner@29.7.0: - resolution: {integrity: sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-runtime@29.7.0: - resolution: {integrity: sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-snapshot@29.7.0: - resolution: {integrity: sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-util@29.5.0: - resolution: {integrity: sha512-RYMgG/MTadOr5t8KdhejfvUU82MxsCu5MF6KuDUHl+NuwzUt+Sm6jJWxTJVrDR1j5M/gJVCPKQEpWXY+yIQ6lQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-util@29.7.0: - resolution: {integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-validate@29.7.0: - resolution: {integrity: sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-watcher@29.7.0: - resolution: {integrity: sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-worker@27.5.1: - resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==} - engines: {node: '>= 10.13.0'} - - jest-worker@29.5.0: - resolution: {integrity: sha512-NcrQnevGoSp4b5kg+akIpthoAFHxPBcb5P6mYPY0fUNT+sSvmtu6jlkEle3anczUKIKEbMxFimk9oTP/tpIPgA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-worker@29.7.0: - resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest@29.7.0: - resolution: {integrity: sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - hasBin: true - peerDependencies: - node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 - peerDependenciesMeta: - node-notifier: - optional: true - - jiti@1.21.0: - resolution: {integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==} - hasBin: true - - js-beautify@1.15.0: - resolution: {integrity: sha512-U1f+LPtn13M0OS0ChNMpM7wA7J47ECqwIcvayrZu+o0FLLt9FckoT6XOO1grhBS2vZjSt79K+vkUuP0o+BIdsA==} - engines: {node: '>=14'} - hasBin: true - - js-cookie@3.0.5: - resolution: {integrity: sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==} - engines: {node: '>=14'} - - js-tokens@4.0.0: - resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - - js-yaml@3.14.1: - resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} - hasBin: true - - js-yaml@4.1.0: - resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} - hasBin: true - - jscodeshift@0.15.1: - resolution: {integrity: sha512-hIJfxUy8Rt4HkJn/zZPU9ChKfKZM1342waJ1QC2e2YsPcWhM+3BJ4dcfQCzArTrk1jJeNLB341H+qOcEHRxJZg==} - hasBin: true - peerDependencies: - '@babel/preset-env': ^7.1.6 - peerDependenciesMeta: - '@babel/preset-env': - optional: true - - jsesc@0.5.0: - resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} - hasBin: true - - jsesc@2.5.2: - resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} - engines: {node: '>=4'} - hasBin: true - - json-bigint@1.0.0: - resolution: {integrity: sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==} - - json-parse-better-errors@1.0.2: - resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==} - - json-parse-even-better-errors@2.3.1: - resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} - - json-schema-traverse@0.4.1: - resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} - - json-schema-traverse@1.0.0: - resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} - - json-stable-stringify-without-jsonify@1.0.1: - resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} - - json5@1.0.2: - resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} - hasBin: true - - json5@2.2.3: - resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} - engines: {node: '>=6'} - hasBin: true - - jsonfile@6.1.0: - resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} - - jsonwebtoken@9.0.0: - resolution: {integrity: sha512-tuGfYXxkQGDPnLJ7SibiQgVgeDgfbPq2k2ICcbgqW8WxWLBAxKQM/ZCu/IT8SOSwmaYl4dpTFCW5xZv7YbbWUw==} - engines: {node: '>=12', npm: '>=6'} - - jsx-ast-utils@3.3.3: - resolution: {integrity: sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==} - engines: {node: '>=4.0'} - - jwa@1.4.1: - resolution: {integrity: sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==} - - jwa@2.0.0: - resolution: {integrity: sha512-jrZ2Qx916EA+fq9cEAeCROWPTfCwi1IVHqT2tapuqLEVVDKFDENFw1oL+MwrTvH6msKxsd1YTDVw6uKEcsrLEA==} - - jws@3.2.2: - resolution: {integrity: sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==} - - jws@4.0.0: - resolution: {integrity: sha512-KDncfTmOZoOMTFG4mBlG0qUIOlc03fmzH+ru6RgYVZhPkyiy/92Owlt/8UEN+a4TXR1FQetfIpJE8ApdvdVxTg==} - - keygrip@1.1.0: - resolution: {integrity: sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==} - engines: {node: '>= 0.6'} - - kind-of@6.0.3: - resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} - engines: {node: '>=0.10.0'} - - kleur@3.0.3: - resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} - engines: {node: '>=6'} - - klona@2.0.6: - resolution: {integrity: sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==} - engines: {node: '>= 8'} - - koa-bodyparser@4.3.0: - resolution: {integrity: sha512-uyV8G29KAGwZc4q/0WUAjH+Tsmuv9ImfBUF2oZVyZtaeo0husInagyn/JH85xMSxM0hEk/mbCII5ubLDuqW/Rw==} - engines: {node: '>=8.0.0'} - - koa-compose@4.1.0: - resolution: {integrity: sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw==} - - koa-convert@2.0.0: - resolution: {integrity: sha512-asOvN6bFlSnxewce2e/DK3p4tltyfC4VM7ZwuTuepI7dEQVcvpyFuBcEARu1+Hxg8DIwytce2n7jrZtRlPrARA==} - engines: {node: '>= 10'} - - koa-helmet@6.1.0: - resolution: {integrity: sha512-WymEv4qo/7ghh15t+1qTjvZBmZkmVlTtfnpe5oxn8m8mO2Q2rKJ3eMvWuQGW/6yVxN9+hQ75evuWcg3XBbFLbg==} - engines: {node: '>= 8.0.0'} - - koa-logger@3.2.1: - resolution: {integrity: sha512-MjlznhLLKy9+kG8nAXKJLM0/ClsQp/Or2vI3a5rbSQmgl8IJBQO0KI5FA70BvW+hqjtxjp49SpH2E7okS6NmHg==} - engines: {node: '>= 7.6.0'} - - koa-mount@4.0.0: - resolution: {integrity: sha512-rm71jaA/P+6HeCpoRhmCv8KVBIi0tfGuO/dMKicbQnQW/YJntJ6MnnspkodoA4QstMVEZArsCphmd0bJEtoMjQ==} - engines: {node: '>= 7.6.0'} - - koa-qs@3.0.0: - resolution: {integrity: sha512-05IB5KirwMs3heWW26iTz46HuMAtrlrRMus/aNH1BRDocLyF/099EtCB0MIfQpRuT0TISvaTsWwSy2gctIWiGA==} - engines: {node: '>= 8'} - - koa-ratelimit@5.0.1: - resolution: {integrity: sha512-H7IEkNS/b18Uwtm3RIvAK3orJE8ew8wEBsnezlQWz7GTWqEnDtbTNfTedVXjj07gyh8gWTkEdODEXRquGCBqmg==} - engines: {node: '>= 10'} - - koa@2.14.1: - resolution: {integrity: sha512-USJFyZgi2l0wDgqkfD27gL4YGno7TfUkcmOe6UOLFOVuN+J7FwnNu4Dydl4CUQzraM1lBAiGed0M9OVJoT0Kqw==} - engines: {node: ^4.8.4 || ^6.10.1 || ^7.10.1 || >= 8.1.4} - - kuler@2.0.0: - resolution: {integrity: sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==} - - language-subtag-registry@0.3.22: - resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==} - - language-tags@1.0.5: - resolution: {integrity: sha512-qJhlO9cGXi6hBGKoxEG/sKZDAHD5Hnu9Hs4WbOY3pCWXDhw0N8x1NenNzm2EnNLkLkk7J2SdxAkDSbb6ftT+UQ==} - - lazy-universal-dotenv@4.0.0: - resolution: {integrity: sha512-aXpZJRnTkpK6gQ/z4nk+ZBLd/Qdp118cvPruLSIQzQNRhKwEcdXCOzXuF55VDqIiuAaY3UGZ10DJtvZzDcvsxg==} - engines: {node: '>=14.0.0'} - - leac@0.6.0: - resolution: {integrity: sha512-y+SqErxb8h7nE/fiEX07jsbuhrpO9lL8eca7/Y1nuWV2moNlXhyd59iDGcRf6moVyDMbmTNzL40SUyrFU/yDpg==} - - leven@3.1.0: - resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==} - engines: {node: '>=6'} - - levn@0.4.1: - resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} - engines: {node: '>= 0.8.0'} - - lilconfig@2.1.0: - resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} - engines: {node: '>=10'} - - lilconfig@3.0.0: - resolution: {integrity: sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==} - engines: {node: '>=14'} - - lines-and-columns@1.2.4: - resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} - - lint-staged@13.2.0: - resolution: {integrity: sha512-GbyK5iWinax5Dfw5obm2g2ccUiZXNGtAS4mCbJ0Lv4rq6iEtfBSjOYdcbOtAIFtM114t0vdpViDDetjVTSd8Vw==} - engines: {node: ^14.13.1 || >=16.0.0} - hasBin: true - - lint-staged@15.2.2: - resolution: {integrity: sha512-TiTt93OPh1OZOsb5B7k96A/ATl2AjIZo+vnzFZ6oHK5FuTk63ByDtxGQpHm+kFETjEWqgkF95M8FRXKR/LEBcw==} - engines: {node: '>=18.12.0'} - hasBin: true - - listr2@5.0.8: - resolution: {integrity: sha512-mC73LitKHj9w6v30nLNGPetZIlfpUniNSsxxrbaPcWOjDb92SHPzJPi/t+v1YC/lxKz/AJ9egOjww0qUuFxBpA==} - engines: {node: ^14.13.1 || >=16.0.0} - peerDependencies: - enquirer: '>= 2.3.0 < 3' - peerDependenciesMeta: - enquirer: - optional: true - - listr2@8.0.1: - resolution: {integrity: sha512-ovJXBXkKGfq+CwmKTjluEqFi3p4h8xvkxGQQAQan22YCgef4KZ1mKGjzfGh6PL6AW5Csw0QiQPNuQyH+6Xk3hA==} - engines: {node: '>=18.0.0'} - - load-json-file@4.0.0: - resolution: {integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==} - engines: {node: '>=4'} - - loader-runner@4.3.0: - resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} - engines: {node: '>=6.11.5'} - - loader-utils@2.0.4: - resolution: {integrity: sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==} - engines: {node: '>=8.9.0'} - - loader-utils@3.2.1: - resolution: {integrity: sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==} - engines: {node: '>= 12.13.0'} - - locate-path@3.0.0: - resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==} - engines: {node: '>=6'} - - locate-path@5.0.0: - resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} - engines: {node: '>=8'} - - locate-path@6.0.0: - resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} - engines: {node: '>=10'} - - lodash.debounce@4.0.8: - resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} - - lodash.defaults@4.2.0: - resolution: {integrity: sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==} - - lodash.includes@4.3.0: - resolution: {integrity: sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w==} - - lodash.isarguments@3.1.0: - resolution: {integrity: sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg==} - - lodash.memoize@4.1.2: - resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} - - lodash.merge@4.6.2: - resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} - - lodash@4.17.21: - resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} - - log-symbols@4.1.0: - resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} - engines: {node: '>=10'} - - log-update@4.0.0: - resolution: {integrity: sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==} - engines: {node: '>=10'} - - log-update@6.0.0: - resolution: {integrity: sha512-niTvB4gqvtof056rRIrTZvjNYE4rCUzO6X/X+kYjd7WFxXeJ0NwEFnRxX6ehkvv3jTwrXnNdtAak5XYZuIyPFw==} - engines: {node: '>=18'} - - logform@2.5.1: - resolution: {integrity: sha512-9FyqAm9o9NKKfiAKfZoYo9bGXXuwMkxQiQttkT4YjjVtQVIQtK6LmVtlxmCaFswo6N4AfEkHqZTV0taDtPotNg==} - - long-timeout@0.1.1: - resolution: {integrity: sha512-BFRuQUqc7x2NWxfJBCyUrN8iYUYznzL9JROmRz1gZ6KlOIgmoD+njPVbb+VNn2nGMKggMsK79iUNErillsrx7w==} - - loose-envify@1.4.0: - resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} - hasBin: true - - loupe@2.3.7: - resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} - - lower-case@2.0.2: - resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} - - lru-cache@10.1.0: - resolution: {integrity: sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==} - engines: {node: 14 || >=16.14} - - lru-cache@5.1.1: - resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} - - lru-cache@6.0.0: - resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} - engines: {node: '>=10'} - - luxon@3.3.0: - resolution: {integrity: sha512-An0UCfG/rSiqtAIiBPO0Y9/zAnHUZxAMiCpTd5h2smgsj7GGmcenvrvww2cqNA8/4A5ZrD1gJpHN2mIHZQF+Mg==} - engines: {node: '>=12'} - - lz-string@1.5.0: - resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==} - hasBin: true - - magic-string@0.30.5: - resolution: {integrity: sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==} - engines: {node: '>=12'} - - make-dir@2.1.0: - resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==} - engines: {node: '>=6'} - - make-dir@3.1.0: - resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} - engines: {node: '>=8'} - - make-error@1.3.6: - resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} - - makeerror@1.0.12: - resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==} - - map-obj@1.0.1: - resolution: {integrity: sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==} - engines: {node: '>=0.10.0'} - - map-obj@4.3.0: - resolution: {integrity: sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==} - engines: {node: '>=8'} - - map-or-similar@1.5.0: - resolution: {integrity: sha512-0aF7ZmVon1igznGI4VS30yugpduQW3y3GkcgGJOp7d8x8QrizhigUxjI/m2UojsXXto+jLAH3KSz+xOJTiORjg==} - - markdown-to-jsx@7.4.0: - resolution: {integrity: sha512-zilc+MIkVVXPyTb4iIUTIz9yyqfcWjszGXnwF9K/aiBWcHXFcmdEMTkG01/oQhwSCH7SY1BnG6+ev5BzWmbPrg==} - engines: {node: '>= 10'} - peerDependencies: - react: '>= 0.14.0' - - md5-file@5.0.0: - resolution: {integrity: sha512-xbEFXCYVWrSx/gEKS1VPlg84h/4L20znVIulKw6kMfmBUAZNAnF00eczz9ICMl+/hjQGo5KSXRxbL/47X3rmMw==} - engines: {node: '>=10.13.0'} - hasBin: true - - md5.js@1.3.5: - resolution: {integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==} - - mdast-util-definitions@4.0.0: - resolution: {integrity: sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==} - - mdast-util-to-string@1.1.0: - resolution: {integrity: sha512-jVU0Nr2B9X3MU4tSK7JP1CMkSvOj7X5l/GboG1tKRw52lLF1x2Ju92Ms9tNetCcbfX3hzlM73zYo2NKkWSfF/A==} - - mdn-data@2.0.28: - resolution: {integrity: sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==} - - mdn-data@2.0.30: - resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} - - media-typer@0.3.0: - resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} - engines: {node: '>= 0.6'} - - memfs@3.5.3: - resolution: {integrity: sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==} - engines: {node: '>= 4.0.0'} - - memoizerific@1.11.3: - resolution: {integrity: sha512-/EuHYwAPdLtXwAwSZkh/Gutery6pD2KYd44oQLhAvQp/50mpyduZh8Q7PYHXTCJ+wuXxt7oij2LXyIJOOYFPog==} - - memory-pager@1.5.0: - resolution: {integrity: sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==} - - memorystream@0.3.1: - resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==} - engines: {node: '>= 0.10.0'} - - meow@7.1.1: - resolution: {integrity: sha512-GWHvA5QOcS412WCo8vwKDlTelGLsCGBVevQB5Kva961rmNfun0PCbv5+xta2kUMFJyR8/oWnn7ddeKdosbAPbA==} - engines: {node: '>=10'} - - merge-descriptors@1.0.1: - resolution: {integrity: sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==} - - merge-stream@2.0.0: - resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} - - merge2@1.4.1: - resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} - engines: {node: '>= 8'} - - methods@1.1.2: - resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} - engines: {node: '>= 0.6'} - - micromatch@4.0.5: - resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} - engines: {node: '>=8.6'} - - miller-rabin@4.0.1: - resolution: {integrity: sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==} - hasBin: true - - mime-db@1.52.0: - resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} - engines: {node: '>= 0.6'} - - mime-types@2.1.35: - resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} - engines: {node: '>= 0.6'} - - mime@1.6.0: - resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==} - engines: {node: '>=4'} - hasBin: true - - mime@2.6.0: - resolution: {integrity: sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==} - engines: {node: '>=4.0.0'} - hasBin: true - - mimic-fn@2.1.0: - resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} - engines: {node: '>=6'} - - mimic-fn@4.0.0: - resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} - engines: {node: '>=12'} - - mimic-response@3.1.0: - resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} - engines: {node: '>=10'} - - min-indent@1.0.1: - resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} - engines: {node: '>=4'} - - minimalistic-assert@1.0.1: - resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} - - minimalistic-crypto-utils@1.0.1: - resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==} - - minimatch@3.1.2: - resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} - - minimatch@5.1.6: - resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} - engines: {node: '>=10'} - - minimatch@9.0.1: - resolution: {integrity: sha512-0jWhJpD/MdhPXwPuiRkCbfYfSKp2qnn2eOc279qI7f+osl/l+prKSrvhg157zSYvx/1nmgn2NqdT6k2Z7zSH9w==} - engines: {node: '>=16 || 14 >=14.17'} - - minimatch@9.0.3: - resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} - engines: {node: '>=16 || 14 >=14.17'} - - minimist-options@4.1.0: - resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==} - engines: {node: '>= 6'} - - minimist@1.2.8: - resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} - - minipass@3.3.6: - resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} - engines: {node: '>=8'} - - minipass@5.0.0: - resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==} - engines: {node: '>=8'} - - minipass@7.0.4: - resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==} - engines: {node: '>=16 || 14 >=14.17'} - - minizlib@2.1.2: - resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} - engines: {node: '>= 8'} - - mixpanel-browser@2.49.0: - resolution: {integrity: sha512-RZJCO7XXuuHBAWG5fd9Mavz994M7v7W3Qiaq8NzmN631pa4BQ0vNZQtRFqKcCCOBn4xqOZbX2GkuC7ZkQoL4cQ==} - - mixpanel@0.17.0: - resolution: {integrity: sha512-DY5WeOy/hmkPrNiiZugJpWR0iMuOwuj1a3u0bgwB2eUFRV6oIew/pIahhpawdbNjb+Bye4a8ID3gefeNPvL81g==} - engines: {node: '>=10.0'} - - mkdirp-classic@0.5.3: - resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} - - mkdirp@0.5.6: - resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} - hasBin: true - - mkdirp@1.0.4: - resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} - engines: {node: '>=10'} - hasBin: true - - module-alias@2.2.2: - resolution: {integrity: sha512-A/78XjoX2EmNvppVWEhM2oGk3x4lLxnkEA4jTbaK97QKSDjkIoOsKQlfylt/d3kKKi596Qy3NP5XrXJ6fZIC9Q==} - - mongodb-connection-string-url@2.6.0: - resolution: {integrity: sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==} - - mongodb-memory-server-core@8.12.0: - resolution: {integrity: sha512-p+4DbwMJAUqwv15w+WSFkFsGI9zjaUT0BJ1xkQd7sNkO8c9+3Ch5ZCH9AoTzbnNcvqHXj4rpj3VRJb8EZNMT3g==} - engines: {node: '>=12.22.0'} - - mongodb-memory-server-core@9.1.1: - resolution: {integrity: sha512-5toYR4A7DfV5k+Qf6L9FG86baID2rPP/JYwp8TPrdm8ZzfTfyHTwQwa2BzVpSwmLoVW5gXN0znYmXiE68mImMg==} - engines: {node: '>=14.20.1'} - - mongodb-memory-server@8.12.0: - resolution: {integrity: sha512-F5BLfliNiLK4FwpXbh4+F3UjvIHVq/G9GPob+xJMLWywRfSfH23cLPEmPuqqqPpOI/ROztUdaeAz8sn6U74kuQ==} - engines: {node: '>=12.22.0'} - - mongodb-memory-server@9.1.1: - resolution: {integrity: sha512-ZOHOdb7//sBR2ea1lPHDPRaw8oO2MIfMdF+z82/KnzfNZ6yY6igR48cfG8u+QArKJQFsA392GMMHSevfPWsrRA==} - engines: {node: '>=14.20.1'} - - mongodb@4.14.0: - resolution: {integrity: sha512-coGKkWXIBczZPr284tYKFLg+KbGPPLlSbdgfKAb6QqCFt5bo5VFZ50O3FFzsw4rnkqjwT6D8Qcoo9nshYKM7Mg==} - engines: {node: '>=12.9.0'} - - mongodb@5.9.2: - resolution: {integrity: sha512-H60HecKO4Bc+7dhOv4sJlgvenK4fQNqqUIlXxZYQNbfEWSALGAwGoyJd/0Qwk4TttFXUOHJ2ZJQe/52ScaUwtQ==} - engines: {node: '>=14.20.1'} - peerDependencies: - '@aws-sdk/credential-providers': ^3.188.0 - '@mongodb-js/zstd': ^1.0.0 - kerberos: ^1.0.0 || ^2.0.0 - mongodb-client-encryption: '>=2.3.0 <3' - snappy: ^7.2.2 - peerDependenciesMeta: - '@aws-sdk/credential-providers': - optional: true - '@mongodb-js/zstd': - optional: true - kerberos: - optional: true - mongodb-client-encryption: - optional: true - snappy: - optional: true - - mongodb@6.1.0: - resolution: {integrity: sha512-AvzNY0zMkpothZ5mJAaIo2bGDjlJQqqAbn9fvtVgwIIUPEfdrqGxqNjjbuKyrgQxg2EvCmfWdjq+4uj96c0YPw==} - engines: {node: '>=16.20.1'} - peerDependencies: - '@aws-sdk/credential-providers': ^3.188.0 - '@mongodb-js/zstd': ^1.1.0 - gcp-metadata: ^5.2.0 - kerberos: ^2.0.1 - mongodb-client-encryption: '>=6.0.0 <7' - snappy: ^7.2.2 - socks: ^2.7.1 - peerDependenciesMeta: - '@aws-sdk/credential-providers': - optional: true - '@mongodb-js/zstd': - optional: true - gcp-metadata: - optional: true - kerberos: - optional: true - mongodb-client-encryption: - optional: true - snappy: - optional: true - socks: - optional: true - - ms@2.0.0: - resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} - - ms@2.1.2: - resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} - - ms@2.1.3: - resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - - multer@1.4.5-lts.1: - resolution: {integrity: sha512-ywPWvcDMeH+z9gQq5qYHCCy+ethsk4goepZ45GLD63fOu0YcNecQxi64nDs3qluZB+murG3/D4dJ7+dGctcCQQ==} - engines: {node: '>= 6.0.0'} - - multipipe@1.0.2: - resolution: {integrity: sha512-6uiC9OvY71vzSGX8lZvSqscE7ft9nPupJ8fMjrCNRAUy2LREUW42UL+V/NTrogr6rFgRydUrCX4ZitfpSNkSCQ==} - - mz@2.7.0: - resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} - - nanoid@3.3.7: - resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} - engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} - hasBin: true - - napi-build-utils@1.0.2: - resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==} - - natural-compare@1.4.0: - resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} - - negotiator@0.6.3: - resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} - engines: {node: '>= 0.6'} - - neo-async@2.6.2: - resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} - - new-find-package-json@2.0.0: - resolution: {integrity: sha512-lDcBsjBSMlj3LXH2v/FW3txlh2pYTjmbOXPYJD93HI5EwuLzI11tdHSIpUMmfq/IOsldj4Ps8M8flhm+pCK4Ew==} - engines: {node: '>=12.22.0'} - - next@14.0.5-canary.46: - resolution: {integrity: sha512-u8yiAK7L+fl/U9yFmq3VOpkHlImx5wg3OoDz3qxTXhPmmMzNcPbblWgxBf5d6Z+aik8BEn27L31k/tXCRzwFxA==} - engines: {node: '>=18.17.0'} - hasBin: true - peerDependencies: - '@opentelemetry/api': ^1.1.0 - react: ^18.2.0 - react-dom: ^18.2.0 - sass: ^1.3.0 - peerDependenciesMeta: - '@opentelemetry/api': - optional: true - sass: - optional: true - - next@14.1.0: - resolution: {integrity: sha512-wlzrsbfeSU48YQBjZhDzOwhWhGsy+uQycR8bHAOt1LY1bn3zZEcDyHQOEoN3aWzQ8LHCAJ1nqrWCc9XF2+O45Q==} - engines: {node: '>=18.17.0'} - hasBin: true - peerDependencies: - '@opentelemetry/api': ^1.1.0 - react: ^18.2.0 - react-dom: ^18.2.0 - sass: ^1.3.0 - peerDependenciesMeta: - '@opentelemetry/api': - optional: true - sass: - optional: true - - nice-try@1.0.5: - resolution: {integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==} - - no-case@3.0.4: - resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} - - node-abi@3.54.0: - resolution: {integrity: sha512-p7eGEiQil0YUV3ItH4/tBb781L5impVmmx2E9FRKF7d18XXzp4PGT2tdYMFY6wQqgxD0IwNZOiSJ0/K0fSi/OA==} - engines: {node: '>=10'} - - node-abort-controller@3.1.1: - resolution: {integrity: sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==} - - node-addon-api@6.1.0: - resolution: {integrity: sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==} - - node-dir@0.1.17: - resolution: {integrity: sha512-tmPX422rYgofd4epzrNoOXiE8XFZYOcCq1vD7MAXCDO+O+zndlA2ztdKKMa+EeuBG5tHETpr4ml4RGgpqDCCAg==} - engines: {node: '>= 0.10.5'} - - node-fetch-native@1.6.1: - resolution: {integrity: sha512-bW9T/uJDPAJB2YNYEpWzE54U5O3MQidXsOyTfnbKYtTtFexRvGzb1waphBN4ZwP6EcIvYYEOwW0b72BpAqydTw==} - - node-fetch@2.6.9: - resolution: {integrity: sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==} - engines: {node: 4.x || >=6.0.0} - peerDependencies: - encoding: ^0.1.0 - peerDependenciesMeta: - encoding: - optional: true - - node-forge@1.3.1: - resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==} - engines: {node: '>= 6.13.0'} - - node-int64@0.4.0: - resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==} - - node-polyfill-webpack-plugin@2.0.1: - resolution: {integrity: sha512-ZUMiCnZkP1LF0Th2caY6J/eKKoA0TefpoVa68m/LQU1I/mE8rGt4fNYGgNuCcK+aG8P8P43nbeJ2RqJMOL/Y1A==} - engines: {node: '>=12'} - peerDependencies: - webpack: '>=5' - - node-releases@2.0.10: - resolution: {integrity: sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==} - - node-releases@2.0.14: - resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} - - node-schedule@2.1.1: - resolution: {integrity: sha512-OXdegQq03OmXEjt2hZP33W2YPs/E5BcFQks46+G2gAxs4gHOIVD1u7EqlYLYSKsaIpyKCK9Gbk0ta1/gjRSMRQ==} - engines: {node: '>=6'} - - nopt@7.2.0: - resolution: {integrity: sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - hasBin: true - - normalize-package-data@2.5.0: - resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} - - normalize-path@3.0.0: - resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} - engines: {node: '>=0.10.0'} - - normalize-range@0.1.2: - resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} - engines: {node: '>=0.10.0'} - - notepack.io@3.0.1: - resolution: {integrity: sha512-TKC/8zH5pXIAMVQio2TvVDTtPRX+DJPHDqjRbxogtFiByHyzKmy96RA0JtCQJ+WouyyL4A10xomQzgbUT+1jCg==} - - npm-run-all@4.1.5: - resolution: {integrity: sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==} - engines: {node: '>= 4'} - hasBin: true - - npm-run-path@4.0.1: - resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} - engines: {node: '>=8'} - - npm-run-path@5.1.0: - resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - npm@9.6.1: - resolution: {integrity: sha512-0H8CVfQmclQydUfM+WNhx4WY4sGNFC2+JsFMyaludklz8vL+tWqIB1oAXh+12yb8uta9y5p8fbc2f1d18aU6cQ==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - hasBin: true - bundledDependencies: - - '@isaacs/string-locale-compare' - - '@npmcli/arborist' - - '@npmcli/config' - - '@npmcli/map-workspaces' - - '@npmcli/package-json' - - '@npmcli/run-script' - - abbrev - - archy - - cacache - - chalk - - ci-info - - cli-columns - - cli-table3 - - columnify - - fastest-levenshtein - - fs-minipass - - glob - - graceful-fs - - hosted-git-info - - ini - - init-package-json - - is-cidr - - json-parse-even-better-errors - - libnpmaccess - - libnpmdiff - - libnpmexec - - libnpmfund - - libnpmhook - - libnpmorg - - libnpmpack - - libnpmpublish - - libnpmsearch - - libnpmteam - - libnpmversion - - make-fetch-happen - - minimatch - - minipass - - minipass-pipeline - - ms - - node-gyp - - nopt - - npm-audit-report - - npm-install-checks - - npm-package-arg - - npm-pick-manifest - - npm-profile - - npm-registry-fetch - - npm-user-validate - - npmlog - - p-map - - pacote - - parse-conflict-json - - proc-log - - qrcode-terminal - - read - - read-package-json - - read-package-json-fast - - semver - - ssri - - tar - - text-table - - tiny-relative-date - - treeverse - - validate-npm-package-name - - which - - write-file-atomic - - nth-check@2.1.1: - resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} - - nypm@0.3.4: - resolution: {integrity: sha512-1JLkp/zHBrkS3pZ692IqOaIKSYHmQXgqfELk6YTOfVBnwealAmPA1q2kKK7PHJAHSMBozerThEFZXP3G6o7Ukg==} - engines: {node: ^14.16.0 || >=16.10.0} - hasBin: true - - object-assign@4.1.1: - resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} - engines: {node: '>=0.10.0'} - - object-hash@3.0.0: - resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} - engines: {node: '>= 6'} - - object-inspect@1.12.3: - resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} - - object-inspect@1.13.1: - resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==} - - object-is@1.1.5: - resolution: {integrity: sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==} - engines: {node: '>= 0.4'} - - object-keys@0.4.0: - resolution: {integrity: sha512-ncrLw+X55z7bkl5PnUvHwFK9FcGuFYo9gtjws2XtSzL+aZ8tm830P60WJ0dSmFVaSalWieW5MD7kEdnXda9yJw==} - - object-keys@1.1.1: - resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} - engines: {node: '>= 0.4'} - - object.assign@4.1.4: - resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==} - engines: {node: '>= 0.4'} - - object.entries@1.1.6: - resolution: {integrity: sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==} - engines: {node: '>= 0.4'} - - object.fromentries@2.0.7: - resolution: {integrity: sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==} - engines: {node: '>= 0.4'} - - object.groupby@1.0.2: - resolution: {integrity: sha512-bzBq58S+x+uo0VjurFT0UktpKHOZmv4/xePiOA1nbB9pMqpGK7rUPNgf+1YC+7mE+0HzhTMqNUuCqvKhj6FnBw==} - - object.hasown@1.1.2: - resolution: {integrity: sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==} - - object.values@1.1.7: - resolution: {integrity: sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==} - engines: {node: '>= 0.4'} - - objectorarray@1.0.5: - resolution: {integrity: sha512-eJJDYkhJFFbBBAxeh8xW+weHlkI28n2ZdQV/J/DNfWfSKlGEf2xcfAbZTv3riEXHAhL9SVOTs2pRmXiSTf78xg==} - - ohash@1.1.3: - resolution: {integrity: sha512-zuHHiGTYTA1sYJ/wZN+t5HKZaH23i4yI1HMwbuXm24Nid7Dv0KcuRlKoNKS9UNfAVSBlnGLcuQrnOKWOZoEGaw==} - - on-finished@2.4.1: - resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} - engines: {node: '>= 0.8'} - - on-headers@1.0.2: - resolution: {integrity: sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==} - engines: {node: '>= 0.8'} - - once@1.4.0: - resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} - - one-time@1.0.0: - resolution: {integrity: sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==} - - onetime@5.1.2: - resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} - engines: {node: '>=6'} - - onetime@6.0.0: - resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} - engines: {node: '>=12'} - - only@0.0.2: - resolution: {integrity: sha512-Fvw+Jemq5fjjyWz6CpKx6w9s7xxqo3+JCyM0WXWeCSOboZ8ABkyvP8ID4CZuChA/wxSx+XSJmdOm8rGVyJ1hdQ==} - - open@8.4.2: - resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==} - engines: {node: '>=12'} - - optionator@0.9.3: - resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} - engines: {node: '>= 0.8.0'} - - ora@5.4.1: - resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==} - engines: {node: '>=10'} - - os-browserify@0.3.0: - resolution: {integrity: sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==} - - p-limit@2.3.0: - resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} - engines: {node: '>=6'} - - p-limit@3.1.0: - resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} - engines: {node: '>=10'} - - p-locate@3.0.0: - resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==} - engines: {node: '>=6'} - - p-locate@4.1.0: - resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} - engines: {node: '>=8'} - - p-locate@5.0.0: - resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} - engines: {node: '>=10'} - - p-map@4.0.0: - resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} - engines: {node: '>=10'} - - p-try@2.2.0: - resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} - engines: {node: '>=6'} - - pako@0.2.9: - resolution: {integrity: sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==} - - pako@1.0.11: - resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==} - - param-case@3.0.4: - resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==} - - parent-module@1.0.1: - resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} - engines: {node: '>=6'} - - parse-asn1@5.1.6: - resolution: {integrity: sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==} - - parse-json@4.0.0: - resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==} - engines: {node: '>=4'} - - parse-json@5.2.0: - resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} - engines: {node: '>=8'} - - parseley@0.12.1: - resolution: {integrity: sha512-e6qHKe3a9HWr0oMRVDTRhKce+bRO8VGQR3NyVwcjwrbhMmFCX9KszEV35+rn4AdilFAq9VPxP/Fe1wC9Qjd2lw==} - - parseurl@1.3.3: - resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} - engines: {node: '>= 0.8'} - - pascal-case@3.1.2: - resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==} - - passthrough-counter@1.0.0: - resolution: {integrity: sha512-Wy8PXTLqPAN0oEgBrlnsXPMww3SYJ44tQ8aVrGAI4h4JZYCS0oYqsPqtPR8OhJpv6qFbpbB7XAn0liKV7EXubA==} - - path-browserify@1.0.1: - resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} - - path-exists@3.0.0: - resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} - engines: {node: '>=4'} - - path-exists@4.0.0: - resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} - engines: {node: '>=8'} - - path-is-absolute@1.0.1: - resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} - engines: {node: '>=0.10.0'} - - path-key@2.0.1: - resolution: {integrity: sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==} - engines: {node: '>=4'} - - path-key@3.1.1: - resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} - engines: {node: '>=8'} - - path-key@4.0.0: - resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} - engines: {node: '>=12'} - - path-parse@1.0.7: - resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} - - path-scurry@1.10.1: - resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} - engines: {node: '>=16 || 14 >=14.17'} - - path-to-regexp@0.1.7: - resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==} - - path-to-regexp@6.2.1: - resolution: {integrity: sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==} - - path-type@3.0.0: - resolution: {integrity: sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==} - engines: {node: '>=4'} - - path-type@4.0.0: - resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} - engines: {node: '>=8'} - - pathe@1.1.2: - resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} - - pathval@1.1.1: - resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} - - pbkdf2@3.1.2: - resolution: {integrity: sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==} - engines: {node: '>=0.12'} - - peberminta@0.9.0: - resolution: {integrity: sha512-XIxfHpEuSJbITd1H3EeQwpcZbTLHc+VVr8ANI9t5sit565tsI4/xK3KWTUFE2e6QiangUkh3B0jihzmGnNrRsQ==} - - peek-stream@1.1.3: - resolution: {integrity: sha512-FhJ+YbOSBb9/rIl2ZeE/QHEsWn7PqNYt8ARAY3kIgNGOk13g9FGyIY6JIl/xB/3TFRVoTv5as0l11weORrTekA==} - - pend@1.2.0: - resolution: {integrity: sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==} - - picocolors@1.0.0: - resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} - - picomatch@2.3.1: - resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} - engines: {node: '>=8.6'} - - pidtree@0.3.1: - resolution: {integrity: sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==} - engines: {node: '>=0.10'} - hasBin: true - - pidtree@0.6.0: - resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==} - engines: {node: '>=0.10'} - hasBin: true - - pify@2.3.0: - resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} - engines: {node: '>=0.10.0'} - - pify@3.0.0: - resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==} - engines: {node: '>=4'} - - pify@4.0.1: - resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} - engines: {node: '>=6'} - - pirates@4.0.5: - resolution: {integrity: sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==} - engines: {node: '>= 6'} - - pirates@4.0.6: - resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} - engines: {node: '>= 6'} - - pkg-dir@3.0.0: - resolution: {integrity: sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==} - engines: {node: '>=6'} - - pkg-dir@4.2.0: - resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} - engines: {node: '>=8'} - - pkg-dir@5.0.0: - resolution: {integrity: sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==} - engines: {node: '>=10'} - - pnp-webpack-plugin@1.7.0: - resolution: {integrity: sha512-2Rb3vm+EXble/sMXNSu6eoBx8e79gKqhNq9F5ZWW6ERNCTE/Q0wQNne5541tE5vKjfM8hpNCYL+LGc1YTfI0dg==} - engines: {node: '>=6'} - - polished@4.2.2: - resolution: {integrity: sha512-Sz2Lkdxz6F2Pgnpi9U5Ng/WdWAUZxmHrNPoVlm3aAemxoy2Qy7LGjQg4uf8qKelDAUW94F4np3iH2YPf2qefcQ==} - engines: {node: '>=10'} - - postcss-import@15.1.0: - resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} - engines: {node: '>=14.0.0'} - peerDependencies: - postcss: ^8.0.0 - - postcss-js@4.0.1: - resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} - engines: {node: ^12 || ^14 || >= 16} - peerDependencies: - postcss: ^8.4.21 - - postcss-load-config@4.0.1: - resolution: {integrity: sha512-vEJIc8RdiBRu3oRAI0ymerOn+7rPuMvRXslTvZUKZonDHFIczxztIyJ1urxM1x9JXEikvpWWTUUqal5j/8QgvA==} - engines: {node: '>= 14'} - peerDependencies: - postcss: '>=8.0.9' - ts-node: '>=9.0.0' - peerDependenciesMeta: - postcss: - optional: true - ts-node: - optional: true - - postcss-loader@7.3.4: - resolution: {integrity: sha512-iW5WTTBSC5BfsBJ9daFMPVrLT36MrNiC6fqOZTTaHjBNX6Pfd5p+hSBqe/fEeNd7pc13QiAyGt7VdGMw4eRC4A==} - engines: {node: '>= 14.15.0'} - peerDependencies: - postcss: ^7.0.0 || ^8.0.1 - webpack: ^5.0.0 - - postcss-mixins@9.0.4: - resolution: {integrity: sha512-XVq5jwQJDRu5M1XGkdpgASqLk37OqkH4JCFDXl/Dn7janOJjCTEKL+36cnRVy7bMtoBzALfO7bV7nTIsFnUWLA==} - engines: {node: '>=14.0'} - peerDependencies: - postcss: ^8.2.14 - - postcss-modules-extract-imports@3.0.0: - resolution: {integrity: sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - - postcss-modules-local-by-default@4.0.4: - resolution: {integrity: sha512-L4QzMnOdVwRm1Qb8m4x8jsZzKAaPAgrUF1r/hjDR2Xj7R+8Zsf97jAlSQzWtKx5YNiNGN8QxmPFIc/sh+RQl+Q==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - - postcss-modules-scope@3.1.1: - resolution: {integrity: sha512-uZgqzdTleelWjzJY+Fhti6F3C9iF1JR/dODLs/JDefozYcKTBCdD8BIl6nNPbTbcLnGrk56hzwZC2DaGNvYjzA==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - - postcss-modules-values@4.0.0: - resolution: {integrity: sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==} - engines: {node: ^10 || ^12 || >= 14} - peerDependencies: - postcss: ^8.1.0 - - postcss-nested@6.0.1: - resolution: {integrity: sha512-mEp4xPMi5bSWiMbsgoPfcP74lsWLHkQbZc3sY+jWYd65CUwXrUaTp0fmNpa01ZcETKlIgUdFN/MpS2xZtqL9dQ==} - engines: {node: '>=12.0'} - peerDependencies: - postcss: ^8.2.14 - - postcss-preset-mantine@1.13.0: - resolution: {integrity: sha512-1bv/mQz2K+/FixIMxYd83BYH7PusDZaI7LpUtKbb1l/5N5w6t1p/V9ONHfRJeeAZyfa6Xc+AtR+95VKdFXRH1g==} - peerDependencies: - postcss: '>=8.0.0' - - postcss-selector-parser@6.0.11: - resolution: {integrity: sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==} - engines: {node: '>=4'} - - postcss-simple-vars@7.0.1: - resolution: {integrity: sha512-5GLLXaS8qmzHMOjVxqkk1TZPf1jMqesiI7qLhnlyERalG0sMbHIbJqrcnrpmZdKCLglHnRHoEBB61RtGTsj++A==} - engines: {node: '>=14.0'} - peerDependencies: - postcss: ^8.2.1 - - postcss-value-parser@4.2.0: - resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} - - postcss@8.4.31: - resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} - engines: {node: ^10 || ^12 || >=14} - - postcss@8.4.32: - resolution: {integrity: sha512-D/kj5JNu6oo2EIy+XL/26JEDTlIbB8hw85G8StOE6L74RQAVVP5rej6wxCNqyMbR4RkPfqvezVbPw81Ngd6Kcw==} - engines: {node: ^10 || ^12 || >=14} - - postcss@8.4.35: - resolution: {integrity: sha512-u5U8qYpBCpN13BsiEB0CbR1Hhh4Gc0zLFuedrHJKMctHCHAGrMdG0PRM/KErzAL3CU6/eckEtmHNB3x6e3c0vA==} - engines: {node: ^10 || ^12 || >=14} - - prebuild-install@7.1.1: - resolution: {integrity: sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==} - engines: {node: '>=10'} - hasBin: true - - prelude-ls@1.2.1: - resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} - engines: {node: '>= 0.8.0'} - - prettier@2.8.4: - resolution: {integrity: sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw==} - engines: {node: '>=10.13.0'} - hasBin: true - - prettier@3.2.5: - resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==} - engines: {node: '>=14'} - hasBin: true - - pretty-error@4.0.0: - resolution: {integrity: sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==} - - pretty-format@27.5.1: - resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==} - engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} - - pretty-format@29.5.0: - resolution: {integrity: sha512-V2mGkI31qdttvTFX7Mt4efOqHXqJWMu4/r66Xh3Z3BwZaPfPJgp6/gbwoujRpPUtfEF6AUUWx3Jim3GCw5g/Qw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - pretty-format@29.7.0: - resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - pretty-hrtime@1.0.3: - resolution: {integrity: sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==} - engines: {node: '>= 0.8'} - - prism-react-renderer@2.1.0: - resolution: {integrity: sha512-I5cvXHjA1PVGbGm1MsWCpvBCRrYyxEri0MC7/JbfIfYfcXAxHyO5PaUjs3A8H5GW6kJcLhTHxxMaOZZpRZD2iQ==} - peerDependencies: - react: '>=16.0.0' - - prismjs@1.29.0: - resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} - engines: {node: '>=6'} - - process-nextick-args@2.0.1: - resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} - - process@0.11.10: - resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} - engines: {node: '>= 0.6.0'} - - progress@2.0.3: - resolution: {integrity: sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==} - engines: {node: '>=0.4.0'} - - prompts@2.4.2: - resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} - engines: {node: '>= 6'} - - prop-types@15.8.1: - resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} - - proto-list@1.2.4: - resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==} - - proxy-addr@2.0.7: - resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==} - engines: {node: '>= 0.10'} - - proxy-from-env@1.1.0: - resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} - - psl@1.9.0: - resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==} - - public-encrypt@4.0.3: - resolution: {integrity: sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==} - - pump@2.0.1: - resolution: {integrity: sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==} - - pump@3.0.0: - resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} - - pumpify@1.5.1: - resolution: {integrity: sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==} - - punycode@1.4.1: - resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==} - - punycode@2.3.0: - resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} - engines: {node: '>=6'} - - puppeteer-core@2.1.1: - resolution: {integrity: sha512-n13AWriBMPYxnpbb6bnaY5YoY6rGj8vPLrz6CZF3o0qJNEwlcfJVxBzYZ0NJsQ21UbdJoijPCDrM++SUVEz7+w==} - engines: {node: '>=8.16.0'} - - pure-rand@6.0.1: - resolution: {integrity: sha512-t+x1zEHDjBwkDGY5v5ApnZ/utcd4XYDiJsaQQoptTXgUXX95sDg1elCdJghzicm7n2mbCBJ3uYWr6M22SO19rg==} - - qs@6.11.0: - resolution: {integrity: sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==} - engines: {node: '>=0.6'} - - qs@6.11.2: - resolution: {integrity: sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==} - engines: {node: '>=0.6'} - - querystring-es3@0.2.1: - resolution: {integrity: sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==} - engines: {node: '>=0.4.x'} - - queue-microtask@1.2.3: - resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} - - queue-tick@1.0.1: - resolution: {integrity: sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==} - - queue@6.0.2: - resolution: {integrity: sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==} - - quick-lru@4.0.1: - resolution: {integrity: sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==} - engines: {node: '>=8'} - - ramda@0.29.0: - resolution: {integrity: sha512-BBea6L67bYLtdbOqfp8f58fPMqEwx0doL+pAi8TZyp2YWz8R9G8z9x75CZI8W+ftqhFHCpEX2cRnUUXK130iKA==} - - randombytes@2.1.0: - resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} - - randomfill@1.0.4: - resolution: {integrity: sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==} - - range-parser@1.2.1: - resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} - engines: {node: '>= 0.6'} - - raw-body@2.5.1: - resolution: {integrity: sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==} - engines: {node: '>= 0.8'} - - rc@1.2.8: - resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} - hasBin: true - - react-colorful@5.6.1: - resolution: {integrity: sha512-1exovf0uGTGyq5mXQT0zgQ80uvj2PCwvF8zY1RN9/vbJVSjSo3fsB/4L3ObbF7u70NduSiK4xu4Y6q1MHoUGEw==} - peerDependencies: - react: '>=16.8.0' - react-dom: '>=16.8.0' - - react-confetti@6.1.0: - resolution: {integrity: sha512-7Ypx4vz0+g8ECVxr88W9zhcQpbeujJAVqL14ZnXJ3I23mOI9/oBVTQ3dkJhUmB0D6XOtCZEM6N0Gm9PMngkORw==} - engines: {node: '>=10.18'} - peerDependencies: - react: ^16.3.0 || ^17.0.1 || ^18.0.0 - - react-docgen-typescript@2.2.2: - resolution: {integrity: sha512-tvg2ZtOpOi6QDwsb3GZhOjDkkX0h8Z2gipvTg6OVMUyoYoURhEiRNePT8NZItTVCDh39JJHnLdfCOkzoLbFnTg==} - peerDependencies: - typescript: '>= 4.3.x' - - react-docgen@7.0.3: - resolution: {integrity: sha512-i8aF1nyKInZnANZ4uZrH49qn1paRgBZ7wZiCNBMnenlPzEv0mRl+ShpTVEI6wZNl8sSc79xZkivtgLKQArcanQ==} - engines: {node: '>=16.14.0'} - - react-dom@18.2.0: - resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} - peerDependencies: - react: ^18.2.0 - - react-dropzone-esm@15.0.1: - resolution: {integrity: sha512-RdeGpqwHnoV/IlDFpQji7t7pTtlC2O1i/Br0LWkRZ9hYtLyce814S71h5NolnCZXsIN5wrZId6+8eQj2EBnEzg==} - engines: {node: '>= 10.13'} - peerDependencies: - react: '>= 16.8 || 18.0.0' - - react-element-to-jsx-string@15.0.0: - resolution: {integrity: sha512-UDg4lXB6BzlobN60P8fHWVPX3Kyw8ORrTeBtClmIlGdkOOE+GYQSFvmEU5iLLpwp/6v42DINwNcwOhOLfQ//FQ==} - peerDependencies: - react: ^0.14.8 || ^15.0.1 || ^16.0.0 || ^17.0.1 || ^18.0.0 - react-dom: ^0.14.8 || ^15.0.1 || ^16.0.0 || ^17.0.1 || ^18.0.0 - - react-email@2.0.0: - resolution: {integrity: sha512-XzxyWkrfZC3zF9HnAjWwB823u9eTMpAQCy+SjLMtNSh4i8WuV8Fr5LriTTz/p1RRt6aXoiV3c/ZthaDt0nvBEA==} - engines: {node: '>=18.0.0'} - hasBin: true - - react-hook-form@7.50.1: - resolution: {integrity: sha512-3PCY82oE0WgeOgUtIr3nYNNtNvqtJ7BZjsbxh6TnYNbXButaD5WpjOmTjdxZfheuHKR68qfeFnEDVYoSSFPMTQ==} - engines: {node: '>=12.22.0'} - peerDependencies: - react: ^16.8.0 || ^17 || ^18 - - react-is@16.13.1: - resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} - - react-is@17.0.2: - resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} - - react-is@18.1.0: - resolution: {integrity: sha512-Fl7FuabXsJnV5Q1qIOQwx/sagGF18kogb4gpfcG4gjLBWO0WDiiz1ko/ExayuxE7InyQkBLkxRFG5oxY6Uu3Kg==} - - react-is@18.2.0: - resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} - - react-number-format@5.3.1: - resolution: {integrity: sha512-qpYcQLauIeEhCZUZY9jXZnnroOtdy3jYaS1zQ3M1Sr6r/KMOBEIGNIb7eKT19g2N1wbYgFgvDzs19hw5TrB8XQ==} - peerDependencies: - react: ^0.14 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 - react-dom: ^0.14 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 - - react-property@2.0.0: - resolution: {integrity: sha512-kzmNjIgU32mO4mmH5+iUyrqlpFQhF8K2k7eZ4fdLSOPFrD1XgEuSBv9LDEgxRXTMBqMd8ppT0x6TIzqE5pdGdw==} - - react-refresh@0.14.0: - resolution: {integrity: sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==} - engines: {node: '>=0.10.0'} - - react-remove-scroll-bar@2.3.4: - resolution: {integrity: sha512-63C4YQBUt0m6ALadE9XV56hV8BgJWDmmTPY758iIJjfQKt2nYwoUrPk0LXRXcB/yIj82T1/Ixfdpdk68LwIB0A==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - react-remove-scroll@2.5.5: - resolution: {integrity: sha512-ImKhrzJJsyXJfBZ4bzu8Bwpka14c/fQt0k+cyFp/PBhTfyDnU5hjOtM4AG/0AMyy8oKzOTR0lDgJIM7pYXI0kw==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - react-remove-scroll@2.5.7: - resolution: {integrity: sha512-FnrTWO4L7/Bhhf3CYBNArEG/yROV0tKmTv7/3h9QCFvH6sndeFf1wPqOcbFVu5VAulS5dV1wGT3GZZ/1GawqiA==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - react-style-singleton@2.2.1: - resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - react-textarea-autosize@8.5.3: - resolution: {integrity: sha512-XT1024o2pqCuZSuBt9FwHlaDeNtVrtCXu0Rnz88t1jUGheCLa3PhjE1GH8Ctm2axEtvdCl5SUHYschyQ0L5QHQ==} - engines: {node: '>=10'} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - - react-transition-group@4.4.5: - resolution: {integrity: sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==} - peerDependencies: - react: '>=16.6.0' - react-dom: '>=16.6.0' - - react@18.2.0: - resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} - engines: {node: '>=0.10.0'} - - read-cache@1.0.0: - resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} - - read-pkg-up@7.0.1: - resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} - engines: {node: '>=8'} - - read-pkg@3.0.0: - resolution: {integrity: sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==} - engines: {node: '>=4'} - - read-pkg@5.2.0: - resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} - engines: {node: '>=8'} - - readable-stream@1.0.34: - resolution: {integrity: sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==} - - readable-stream@2.3.7: - resolution: {integrity: sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==} - - readable-stream@3.6.0: - resolution: {integrity: sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==} - engines: {node: '>= 6'} - - readable-stream@3.6.2: - resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} - engines: {node: '>= 6'} - - readable-stream@4.5.2: - resolution: {integrity: sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - readdirp@3.6.0: - resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} - engines: {node: '>=8.10.0'} - - recast@0.23.4: - resolution: {integrity: sha512-qtEDqIZGVcSZCHniWwZWbRy79Dc6Wp3kT/UmDA2RJKBPg7+7k51aQBZirHmUGn5uvHf2rg8DkjizrN26k61ATw==} - engines: {node: '>= 4'} - - rechoir@0.6.2: - resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==} - engines: {node: '>= 0.10'} - - redent@3.0.0: - resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} - engines: {node: '>=8'} - - redis-errors@1.2.0: - resolution: {integrity: sha512-1qny3OExCf0UvUV/5wpYKf2YwPcOqXzkwKKSmKHiE6ZMQs5heeE/c8eXK+PNllPvmjgAbfnsbpkGZWy8cBpn9w==} - engines: {node: '>=4'} - - redis-parser@3.0.0: - resolution: {integrity: sha512-DJnGAeenTdpMEH6uAJRK/uiyEIH9WVsUmoLwzudwGJUwZPp80PDBWPHXSAGNPwNvIXAbe7MSUB1zQFugFml66A==} - engines: {node: '>=4'} - - reflect.getprototypeof@1.0.4: - resolution: {integrity: sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==} - engines: {node: '>= 0.4'} - - regenerate-unicode-properties@10.1.0: - resolution: {integrity: sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==} - engines: {node: '>=4'} - - regenerate@1.4.2: - resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==} - - regenerator-runtime@0.14.1: - resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} - - regenerator-transform@0.15.2: - resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==} - - regex-parser@2.3.0: - resolution: {integrity: sha512-TVILVSz2jY5D47F4mA4MppkBrafEaiUWJO/TcZHEIuI13AqoZMkK1WMA4Om1YkYbTx+9Ki1/tSUXbceyr9saRg==} - - regexp.prototype.flags@1.4.3: - resolution: {integrity: sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==} - engines: {node: '>= 0.4'} - - regexp.prototype.flags@1.5.1: - resolution: {integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==} - engines: {node: '>= 0.4'} - - regexpu-core@5.3.1: - resolution: {integrity: sha512-nCOzW2V/X15XpLsK2rlgdwrysrBq+AauCn+omItIz4R1pIcmeot5zvjdmOBRLzEH/CkC6IxMJVmxDe3QcMuNVQ==} - engines: {node: '>=4'} - - regjsparser@0.9.1: - resolution: {integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==} - hasBin: true - - relateurl@0.2.7: - resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==} - engines: {node: '>= 0.10'} - - remark-external-links@8.0.0: - resolution: {integrity: sha512-5vPSX0kHoSsqtdftSHhIYofVINC8qmp0nctkeU9YoJwV3YfiBRiI6cbFRJ0oI/1F9xS+bopXG0m2KS8VFscuKA==} - - remark-slug@6.1.0: - resolution: {integrity: sha512-oGCxDF9deA8phWvxFuyr3oSJsdyUAxMFbA0mZ7Y1Sas+emILtO+e5WutF9564gDsEN4IXaQXm5pFo6MLH+YmwQ==} - - renderkid@3.0.0: - resolution: {integrity: sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==} - - require-directory@2.1.1: - resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} - engines: {node: '>=0.10.0'} - - require-from-string@2.0.2: - resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} - engines: {node: '>=0.10.0'} - - resend@3.2.0: - resolution: {integrity: sha512-lDHhexiFYPoLXy7zRlJ8D5eKxoXy6Tr9/elN3+Vv7PkUoYuSSD1fpiIfa/JYXEWyiyN2UczkCTLpkT8dDPJ4Pg==} - engines: {node: '>=18'} - - resolve-cwd@3.0.0: - resolution: {integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==} - engines: {node: '>=8'} - - resolve-from@4.0.0: - resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} - engines: {node: '>=4'} - - resolve-from@5.0.0: - resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} - engines: {node: '>=8'} - - resolve-pkg-maps@1.0.0: - resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} - - resolve-url-loader@5.0.0: - resolution: {integrity: sha512-uZtduh8/8srhBoMx//5bwqjQ+rfYOUq8zC9NrMUGtjBiGTtFJM42s58/36+hTqeqINcnYe08Nj3LkK9lW4N8Xg==} - engines: {node: '>=12'} - - resolve.exports@2.0.0: - resolution: {integrity: sha512-6K/gDlqgQscOlg9fSRpWstA8sYe8rbELsSTNpx+3kTrsVCzvSl0zIvRErM7fdl9ERWDsKnrLnwB+Ne89918XOg==} - engines: {node: '>=10'} - - resolve@1.22.8: - resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} - hasBin: true - - resolve@2.0.0-next.4: - resolution: {integrity: sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==} - hasBin: true - - restore-cursor@3.1.0: - resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} - engines: {node: '>=8'} - - restore-cursor@4.0.0: - resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - reusify@1.0.4: - resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} - engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - - rfdc@1.3.0: - resolution: {integrity: sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==} - - rimraf@2.6.3: - resolution: {integrity: sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==} - hasBin: true - - rimraf@2.7.1: - resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==} - hasBin: true - - rimraf@3.0.2: - resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} - hasBin: true - - ripemd160@2.0.2: - resolution: {integrity: sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==} - - run-parallel@1.2.0: - resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} - - rxjs@7.8.0: - resolution: {integrity: sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==} - - safe-array-concat@1.0.1: - resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==} - engines: {node: '>=0.4'} - - safe-buffer@5.1.2: - resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} - - safe-buffer@5.2.1: - resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - - safe-regex-test@1.0.0: - resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} - - safe-stable-stringify@2.4.2: - resolution: {integrity: sha512-gMxvPJYhP0O9n2pvcfYfIuYgbledAOJFcqRThtPRmjscaipiwcwPPKLytpVzMkG2HAN87Qmo2d4PtGiri1dSLA==} - engines: {node: '>=10'} - - safer-buffer@2.1.2: - resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} - - saslprep@1.0.3: - resolution: {integrity: sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==} - engines: {node: '>=6'} - - sass-loader@12.6.0: - resolution: {integrity: sha512-oLTaH0YCtX4cfnJZxKSLAyglED0naiYfNG1iXfU5w1LNZ+ukoA5DtyDIN5zmKVZwYNJP4KRc5Y3hkWga+7tYfA==} - engines: {node: '>= 12.13.0'} - peerDependencies: - fibers: '>= 3.1.0' - node-sass: ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 - sass: ^1.3.0 - sass-embedded: '*' - webpack: ^5.0.0 - peerDependenciesMeta: - fibers: - optional: true - node-sass: - optional: true - sass: - optional: true - sass-embedded: - optional: true - - scheduler@0.23.0: - resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} - - schema-utils@3.1.1: - resolution: {integrity: sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==} - engines: {node: '>= 10.13.0'} - - schema-utils@4.0.0: - resolution: {integrity: sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==} - engines: {node: '>= 12.13.0'} - - selderee@0.11.0: - resolution: {integrity: sha512-5TF+l7p4+OsnP8BCCvSyZiSPc4x4//p5uPwK8TCnVPJYRmU2aYKMpOXvw8zM5a5JvuuCGN1jmsMwuU2W02ukfA==} - - semver@5.7.1: - resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==} - hasBin: true - - semver@6.3.0: - resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==} - hasBin: true - - semver@6.3.1: - resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} - hasBin: true - - semver@7.5.4: - resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} - engines: {node: '>=10'} - hasBin: true - - send@0.18.0: - resolution: {integrity: sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==} - engines: {node: '>= 0.8.0'} - - serialize-javascript@6.0.1: - resolution: {integrity: sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==} - - serve-static@1.15.0: - resolution: {integrity: sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==} - engines: {node: '>= 0.8.0'} - - set-function-length@1.1.1: - resolution: {integrity: sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==} - engines: {node: '>= 0.4'} - - set-function-name@2.0.1: - resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==} - engines: {node: '>= 0.4'} - - setimmediate@1.0.5: - resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==} - - setprototypeof@1.2.0: - resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} - - sha.js@2.4.11: - resolution: {integrity: sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==} - hasBin: true - - shallow-clone@3.0.1: - resolution: {integrity: sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==} - engines: {node: '>=8'} - - sharp@0.32.6: - resolution: {integrity: sha512-KyLTWwgcR9Oe4d9HwCwNM2l7+J0dUQwn/yf7S0EnTtb0eVS4RxO0eUSvxPtzT4F3SY+C4K6fqdv/DO27sJ/v/w==} - engines: {node: '>=14.15.0'} - - shebang-command@1.2.0: - resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} - engines: {node: '>=0.10.0'} - - shebang-command@2.0.0: - resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} - engines: {node: '>=8'} - - shebang-regex@1.0.0: - resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==} - engines: {node: '>=0.10.0'} - - shebang-regex@3.0.0: - resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} - engines: {node: '>=8'} - - shell-quote@1.7.2: - resolution: {integrity: sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==} - - shelljs@0.8.5: - resolution: {integrity: sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==} - engines: {node: '>=4'} - hasBin: true - - side-channel@1.0.4: - resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} - - signal-exit@3.0.7: - resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} - - signal-exit@4.1.0: - resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} - engines: {node: '>=14'} - - simple-concat@1.0.1: - resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} - - simple-get@4.0.1: - resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==} - - simple-swizzle@0.2.2: - resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} - - sisteransi@1.0.5: - resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} - - slash@3.0.0: - resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} - engines: {node: '>=8'} - - slash@4.0.0: - resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} - engines: {node: '>=12'} - - slice-ansi@3.0.0: - resolution: {integrity: sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==} - engines: {node: '>=8'} - - slice-ansi@4.0.0: - resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==} - engines: {node: '>=10'} - - slice-ansi@5.0.0: - resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} - engines: {node: '>=12'} - - slice-ansi@7.1.0: - resolution: {integrity: sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg==} - engines: {node: '>=18'} - - smart-buffer@4.2.0: - resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} - engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} - - snake-case@3.0.4: - resolution: {integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==} - - socket.io-adapter@2.5.2: - resolution: {integrity: sha512-87C3LO/NOMc+eMcpcxUBebGjkpMDkNBS9tf7KJqcDsmL936EChtVva71Dw2q4tQcuVC+hAUy4an2NO/sYXmwRA==} - - socket.io-client@4.7.3: - resolution: {integrity: sha512-nU+ywttCyBitXIl9Xe0RSEfek4LneYkJxCeNnKCuhwoH4jGXO1ipIUw/VA/+Vvv2G1MTym11fzFC0SxkrcfXDw==} - engines: {node: '>=10.0.0'} - - socket.io-client@4.7.4: - resolution: {integrity: sha512-wh+OkeF0rAVCrABWQBaEjLfb7DVPotMbu0cgWgyR0v6eA4EoVnAwcIeIbcdTE3GT/H3kbdLl7OoH2+asoDRIIg==} - engines: {node: '>=10.0.0'} - - socket.io-parser@4.2.2: - resolution: {integrity: sha512-DJtziuKypFkMMHCm2uIshOYC7QaylbtzQwiMYDuCKy3OPkjLzu4B2vAhTlqipRHHzrI0NJeBAizTK7X+6m1jVw==} - engines: {node: '>=10.0.0'} - - socket.io-parser@4.2.4: - resolution: {integrity: sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==} - engines: {node: '>=10.0.0'} - - socket.io@4.6.1: - resolution: {integrity: sha512-KMcaAi4l/8+xEjkRICl6ak8ySoxsYG+gG6/XfRCPJPQ/haCRIJBTL4wIl8YCsmtaBovcAXGLOShyVWQ/FG8GZA==} - engines: {node: '>=10.0.0'} - - socket.io@4.7.3: - resolution: {integrity: sha512-SE+UIQXBQE+GPG2oszWMlsEmWtHVqw/h1VrYJGK5/MC7CH5p58N448HwIrtREcvR4jfdOJAY4ieQfxMr55qbbw==} - engines: {node: '>=10.2.0'} - - socks@2.7.1: - resolution: {integrity: sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==} - engines: {node: '>= 10.13.0', npm: '>= 3.0.0'} - - sonner@1.3.1: - resolution: {integrity: sha512-+rOAO56b2eI3q5BtgljERSn2umRk63KFIvgb2ohbZ5X+Eb5u+a/7/0ZgswYqgBMg8dyl7n6OXd9KasA8QF9ToA==} - peerDependencies: - react: ^18.0.0 - react-dom: ^18.0.0 - - sorted-array-functions@1.3.0: - resolution: {integrity: sha512-2sqgzeFlid6N4Z2fUQ1cvFmTOLRi/sEDzSQ0OKYchqgoPmQBVyM3959qYx3fpS6Esef80KjmpgPeEr028dP3OA==} - - source-map-js@1.0.2: - resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} - engines: {node: '>=0.10.0'} - - source-map-support@0.5.13: - resolution: {integrity: sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==} - - source-map-support@0.5.21: - resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} - - source-map@0.5.7: - resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} - engines: {node: '>=0.10.0'} - - source-map@0.6.1: - resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} - engines: {node: '>=0.10.0'} - - source-map@0.7.4: - resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} - engines: {node: '>= 8'} - - space-separated-tokens@1.1.5: - resolution: {integrity: sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==} - - sparse-bitfield@3.0.3: - resolution: {integrity: sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ==} - - spdx-correct@3.1.1: - resolution: {integrity: sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==} - - spdx-exceptions@2.3.0: - resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==} - - spdx-expression-parse@3.0.1: - resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} - - spdx-license-ids@3.0.12: - resolution: {integrity: sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==} - - sprintf-js@1.0.3: - resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} - - stack-trace@0.0.10: - resolution: {integrity: sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==} - - stack-utils@2.0.6: - resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==} - engines: {node: '>=10'} - - stackframe@1.3.4: - resolution: {integrity: sha512-oeVtt7eWQS+Na6F//S4kJ2K2VbRlS9D43mAlMyVpVWovy9o+jfgH8O9agzANzaiLjclA0oYzUXEM4PurhSUChw==} - - stacktrace-parser@0.1.10: - resolution: {integrity: sha512-KJP1OCML99+8fhOHxwwzyWrlUuVX5GQ0ZpJTd1DFXhdkrvg1szxfHhawXUZ3g9TkXORQd4/WG68jMlQZ2p8wlg==} - engines: {node: '>=6'} - - standard-as-callback@2.1.0: - resolution: {integrity: sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A==} - - statuses@1.5.0: - resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==} - engines: {node: '>= 0.6'} - - statuses@2.0.1: - resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} - engines: {node: '>= 0.8'} - - stop-iteration-iterator@1.0.0: - resolution: {integrity: sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==} - engines: {node: '>= 0.4'} - - store2@2.14.2: - resolution: {integrity: sha512-siT1RiqlfQnGqgT/YzXVUNsom9S0H1OX+dpdGN1xkyYATo4I6sep5NmsRD/40s3IIOvlCq6akxkqG82urIZW1w==} - - storybook-dark-mode@3.0.3: - resolution: {integrity: sha512-ZLBLVpkuKTdtUv3DTuOjeP/bE7DHhOxVpDROKc0NtEYq9JHLUu6z05LLZinE3v6QPXQZ9TMQPm3Xe/0BcLEZlw==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - react: - optional: true - react-dom: - optional: true - - storybook@7.6.14: - resolution: {integrity: sha512-4WMb/Dyzl4QzAd1X1b13cJXwynI7fGbT3qGy+X169hsXn6u73tlRcuPXrTsEO9a+rNBxZiBEBJf5poYxCH2j5Q==} - hasBin: true - - stream-browserify@3.0.0: - resolution: {integrity: sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==} - - stream-http@3.2.0: - resolution: {integrity: sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==} - - stream-shift@1.0.3: - resolution: {integrity: sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==} - - streamsearch@1.1.0: - resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} - engines: {node: '>=10.0.0'} - - streamx@2.15.6: - resolution: {integrity: sha512-q+vQL4AAz+FdfT137VF69Cc/APqUbxy+MDOImRrMvchJpigHj9GksgDU2LYbO9rx7RX6osWgxJB2WxhYv4SZAw==} - - string-argv@0.3.1: - resolution: {integrity: sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==} - engines: {node: '>=0.6.19'} - - string-argv@0.3.2: - resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} - engines: {node: '>=0.6.19'} - - string-length@4.0.2: - resolution: {integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==} - engines: {node: '>=10'} - - string-width@4.2.3: - resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} - engines: {node: '>=8'} - - string-width@5.1.2: - resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} - engines: {node: '>=12'} - - string-width@7.1.0: - resolution: {integrity: sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw==} - engines: {node: '>=18'} - - string.prototype.matchall@4.0.8: - resolution: {integrity: sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==} - - string.prototype.padend@3.1.4: - resolution: {integrity: sha512-67otBXoksdjsnXXRUq+KMVTdlVRZ2af422Y0aTyTjVaoQkGr3mxl2Bc5emi7dOQ3OGVVQQskmLEWwFXwommpNw==} - engines: {node: '>= 0.4'} - - string.prototype.trim@1.2.8: - resolution: {integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==} - engines: {node: '>= 0.4'} - - string.prototype.trimend@1.0.6: - resolution: {integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==} - - string.prototype.trimend@1.0.7: - resolution: {integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==} - - string.prototype.trimstart@1.0.6: - resolution: {integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==} - - string.prototype.trimstart@1.0.7: - resolution: {integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==} - - string_decoder@0.10.31: - resolution: {integrity: sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==} - - string_decoder@1.1.1: - resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} - - string_decoder@1.3.0: - resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} - - strip-ansi@3.0.1: - resolution: {integrity: sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==} - engines: {node: '>=0.10.0'} - - strip-ansi@6.0.1: - resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} - engines: {node: '>=8'} - - strip-ansi@7.1.0: - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} - engines: {node: '>=12'} - - strip-bom@3.0.0: - resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} - engines: {node: '>=4'} - - strip-bom@4.0.0: - resolution: {integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==} - engines: {node: '>=8'} - - strip-final-newline@2.0.0: - resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} - engines: {node: '>=6'} - - strip-final-newline@3.0.0: - resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} - engines: {node: '>=12'} - - strip-indent@3.0.0: - resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} - engines: {node: '>=8'} - - strip-indent@4.0.0: - resolution: {integrity: sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA==} - engines: {node: '>=12'} - - strip-json-comments@2.0.1: - resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} - engines: {node: '>=0.10.0'} - - strip-json-comments@3.1.1: - resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} - engines: {node: '>=8'} - - stripe@15.7.0: - resolution: {integrity: sha512-hTJhh0Gc+l+hj2vuzaFCh0T46l7793W3wg4J9Oyy3Wu+Ofswd0OgTS4XNt7G9XHJAyHpTmNRNbWgGwn73P4j7g==} - engines: {node: '>=12.*'} - - strnum@1.0.5: - resolution: {integrity: sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA==} - - style-loader@3.3.4: - resolution: {integrity: sha512-0WqXzrsMTyb8yjZJHDqwmnwRJvhALK9LfRtRc6B4UTWe8AijYLZYZ9thuJTZc2VfQWINADW/j+LiJnfy2RoC1w==} - engines: {node: '>= 12.13.0'} - peerDependencies: - webpack: ^5.0.0 - - style-to-js@1.1.0: - resolution: {integrity: sha512-1OqefPDxGrlMwcbfpsTVRyzwdhr4W0uxYQzeA2F1CBc8WG04udg2+ybRnvh3XYL4TdHQrCahLtax2jc8xaE6rA==} - - style-to-object@0.3.0: - resolution: {integrity: sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==} - - styled-jsx@5.1.1: - resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} - engines: {node: '>= 12.0.0'} - peerDependencies: - '@babel/core': '*' - babel-plugin-macros: '*' - react: '>= 16.8.0 || 17.x.x || ^18.0.0-0' - peerDependenciesMeta: - '@babel/core': - optional: true - babel-plugin-macros: - optional: true - - stylis@4.1.3: - resolution: {integrity: sha512-GP6WDNWf+o403jrEp9c5jibKavrtLW+/qYGhFxFrG8maXhwTBI7gLLhiBb0o7uFccWN+EOS9aMO6cGHWAO07OA==} - - sucrase@3.32.0: - resolution: {integrity: sha512-ydQOU34rpSyj2TGyz4D2p8rbktIOZ8QY9s+DGLvFU1i5pWJE8vkpruCjGCMHsdXwnD7JDcS+noSwM/a7zyNFDQ==} - engines: {node: '>=8'} - hasBin: true - - sugarss@4.0.1: - resolution: {integrity: sha512-WCjS5NfuVJjkQzK10s8WOBY+hhDxxNt/N6ZaGwxFZ+wN3/lKKFSaaKUNecULcTTvE4urLcKaZFQD8vO0mOZujw==} - engines: {node: '>=12.0'} - peerDependencies: - postcss: ^8.3.3 - - supports-color@2.0.0: - resolution: {integrity: sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==} - engines: {node: '>=0.8.0'} - - supports-color@5.5.0: - resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} - engines: {node: '>=4'} - - supports-color@7.2.0: - resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} - engines: {node: '>=8'} - - supports-color@8.1.1: - resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==} - engines: {node: '>=10'} - - supports-preserve-symlinks-flag@1.0.0: - resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} - engines: {node: '>= 0.4'} - - svg-parser@2.0.4: - resolution: {integrity: sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==} - - svgo@3.2.0: - resolution: {integrity: sha512-4PP6CMW/V7l/GmKRKzsLR8xxjdHTV4IMvhTnpuHwwBazSIlw5W/5SmPjN8Dwyt7lKbSJrRDgp4t9ph0HgChFBQ==} - engines: {node: '>=14.0.0'} - hasBin: true - - swc-loader@0.2.3: - resolution: {integrity: sha512-D1p6XXURfSPleZZA/Lipb3A8pZ17fP4NObZvFCDjK/OKljroqDpPmsBdTraWhVBqUNpcWBQY1imWdoPScRlQ7A==} - peerDependencies: - '@swc/core': ^1.2.147 - webpack: '>=2' - - synchronous-promise@2.0.17: - resolution: {integrity: sha512-AsS729u2RHUfEra9xJrE39peJcc2stq2+poBXX8bcM08Y6g9j/i/PUzwNQqkaJde7Ntg1TO7bSREbR5sdosQ+g==} - - synckit@0.8.5: - resolution: {integrity: sha512-L1dapNV6vu2s/4Sputv8xGsCdAVlb5nRDMFU/E27D44l5U6cw1g0dGd45uLc+OXjNMmF4ntiMdCimzcjFKQI8Q==} - engines: {node: ^14.18.0 || >=16.0.0} - - tabbable@6.1.1: - resolution: {integrity: sha512-4kl5w+nCB44EVRdO0g/UGoOp3vlwgycUVtkk/7DPyeLZUCuNFFKCFG6/t/DgHLrUPHjrZg6s5tNm+56Q2B0xyg==} - - tailwind-merge@2.2.0: - resolution: {integrity: sha512-SqqhhaL0T06SW59+JVNfAqKdqLs0497esifRrZ7jOaefP3o64fdFNDMrAQWZFMxTLJPiHVjRLUywT8uFz1xNWQ==} - - tailwindcss@3.4.0: - resolution: {integrity: sha512-VigzymniH77knD1dryXbyxR+ePHihHociZbXnLZHUyzf2MMs2ZVqlUrZ3FvpXP8pno9JzmILt1sZPD19M3IxtA==} - engines: {node: '>=14.0.0'} - hasBin: true - - tapable@2.2.1: - resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} - engines: {node: '>=6'} - - tar-fs@2.1.1: - resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==} - - tar-fs@3.0.4: - resolution: {integrity: sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==} - - tar-stream@2.2.0: - resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} - engines: {node: '>=6'} - - tar-stream@3.1.6: - resolution: {integrity: sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==} - - tar@6.2.0: - resolution: {integrity: sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==} - engines: {node: '>=10'} - - telejson@7.2.0: - resolution: {integrity: sha512-1QTEcJkJEhc8OnStBx/ILRu5J2p0GjvWsBx56bmZRqnrkdBMUe+nX92jxV+p3dB4CP6PZCdJMQJwCggkNBMzkQ==} - - temp-dir@2.0.0: - resolution: {integrity: sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==} - engines: {node: '>=8'} - - temp@0.8.4: - resolution: {integrity: sha512-s0ZZzd0BzYv5tLSptZooSjK8oj6C+c19p7Vqta9+6NPOf7r+fxq0cJe6/oN4LTC79sy5NY8ucOJNgwsKCSbfqg==} - engines: {node: '>=6.0.0'} - - tempy@1.0.1: - resolution: {integrity: sha512-biM9brNqxSc04Ee71hzFbryD11nX7VPhQQY32AdDmjFvodsRFz/3ufeoTZ6uYkRFfGo188tENcASNs3vTdsM0w==} - engines: {node: '>=10'} - - terser-webpack-plugin@5.3.6: - 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 - - terser@5.16.4: - resolution: {integrity: sha512-5yEGuZ3DZradbogeYQ1NaGz7rXVBDWujWlx1PT8efXO6Txn+eWbfKqB2bTDVmFXmePFkoLU6XI8UektMIEA0ug==} - engines: {node: '>=10'} - hasBin: true - - test-exclude@6.0.0: - resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} - engines: {node: '>=8'} - - text-hex@1.0.0: - resolution: {integrity: sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==} - - text-table@0.2.0: - resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} - - thenify-all@1.6.0: - resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} - engines: {node: '>=0.8'} - - thenify@3.3.1: - resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} - - through2@0.4.2: - resolution: {integrity: sha512-45Llu+EwHKtAZYTPPVn3XZHBgakWMN3rokhEv5hu596XP+cNgplMg+Gj+1nmAvj+L0K7+N49zBKx5rah5u0QIQ==} - - through2@2.0.5: - resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==} - - through@2.3.8: - resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} - - timers-browserify@2.0.12: - resolution: {integrity: sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==} - engines: {node: '>=0.6.0'} - - tiny-glob@0.2.9: - resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==} - - tiny-invariant@1.3.1: - resolution: {integrity: sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==} - - tinyspy@2.2.0: - resolution: {integrity: sha512-d2eda04AN/cPOR89F7Xv5bK/jrQEhmcLFe6HFldoeO9AJtps+fqEnh486vnT/8y4bw38pSyxDcTCAq+Ks2aJTg==} - engines: {node: '>=14.0.0'} - - tmpl@1.0.5: - resolution: {integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==} - - to-fast-properties@2.0.0: - resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} - engines: {node: '>=4'} - - to-regex-range@5.0.1: - resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} - engines: {node: '>=8.0'} - - tocbot@4.25.0: - resolution: {integrity: sha512-kE5wyCQJ40hqUaRVkyQ4z5+4juzYsv/eK+aqD97N62YH0TxFhzJvo22RUQQZdO3YnXAk42ZOfOpjVdy+Z0YokA==} - - toidentifier@1.0.1: - resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} - engines: {node: '>=0.6'} - - tr46@0.0.3: - resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} - - tr46@3.0.0: - resolution: {integrity: sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==} - engines: {node: '>=12'} - - tree-cli@0.6.7: - resolution: {integrity: sha512-jfnB5YKY6Glf6bsFmQ9W97TtkPVLnHsjOR6ZdRf4zhyFRQeLheasvzE5XBJI2Hxt7ZyMyIbXUV7E2YPZbixgtA==} - engines: {node: '>=8.10.9'} - hasBin: true - - trim-newlines@3.0.1: - resolution: {integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==} - engines: {node: '>=8'} - - triple-beam@1.3.0: - resolution: {integrity: sha512-XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw==} - - ts-api-utils@1.2.1: - resolution: {integrity: sha512-RIYA36cJn2WiH9Hy77hdF9r7oEwxAtB/TS9/S4Qd90Ap4z5FSiin5zEiTL44OII1Y3IIlEvxwxFUVgrHSZ/UpA==} - engines: {node: '>=16'} - peerDependencies: - typescript: '>=4.2.0' - - ts-dedent@2.2.0: - resolution: {integrity: sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==} - engines: {node: '>=6.10'} - - ts-interface-checker@0.1.13: - resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} - - ts-jest@29.1.2: - resolution: {integrity: sha512-br6GJoH/WUX4pu7FbZXuWGKGNDuU7b8Uj77g/Sp7puZV6EXzuByl6JrECvm0MzVzSTkSHWTihsXt+5XYER5b+g==} - engines: {node: ^16.10.0 || ^18.0.0 || >=20.0.0} - hasBin: true - peerDependencies: - '@babel/core': '>=7.0.0-beta.0 <8' - '@jest/types': ^29.0.0 - babel-jest: ^29.0.0 - esbuild: '*' - jest: ^29.0.0 - typescript: '>=4.3 <6' - peerDependenciesMeta: - '@babel/core': - optional: true - '@jest/types': - optional: true - babel-jest: - optional: true - esbuild: - optional: true - - ts-node@10.9.1: - resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==} - hasBin: true - peerDependencies: - '@swc/core': '>=1.2.50' - '@swc/wasm': '>=1.2.50' - '@types/node': '*' - typescript: '>=2.7' - peerDependenciesMeta: - '@swc/core': - optional: true - '@swc/wasm': - optional: true - - ts-pnp@1.2.0: - resolution: {integrity: sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw==} - engines: {node: '>=6'} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - tsconfig-paths-webpack-plugin@4.1.0: - resolution: {integrity: sha512-xWFISjviPydmtmgeUAuXp4N1fky+VCtfhOkDUFIv5ea7p4wuTomI4QTrXvFBX2S4jZsmyTSrStQl+E+4w+RzxA==} - engines: {node: '>=10.13.0'} - - tsconfig-paths@3.15.0: - resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} - - tsconfig-paths@4.2.0: - resolution: {integrity: sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==} - engines: {node: '>=6'} - - tslib@1.14.1: - resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} - - tslib@2.5.0: - resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==} - - tslib@2.6.2: - resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} - - tsscmp@1.0.6: - resolution: {integrity: sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==} - engines: {node: '>=0.6.x'} - - tsx@4.20.4: - resolution: {integrity: sha512-yyxBKfORQ7LuRt/BQKBXrpcq59ZvSW0XxwfjAt3w2/8PmdxaFzijtMhTawprSHhpzeM5BgU2hXHG3lklIERZXg==} - engines: {node: '>=18.0.0'} - hasBin: true - - tty-browserify@0.0.1: - resolution: {integrity: sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==} - - tunnel-agent@0.6.0: - resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} - - turbo-darwin-64@1.11.1: - resolution: {integrity: sha512-JmwL8kcfxncDf2SZFioSa6dUvpMq/HbMcurh9mGm6BxWLQoB0d3fP/q3HizgCSbOE4ihScXoQ+c/C2xhl6Ngjg==} - cpu: [x64] - os: [darwin] - - turbo-darwin-arm64@1.11.1: - resolution: {integrity: sha512-lIpT7nPkU0xmpkI8VOGQcgoQKmUATRMpRhTDclz6j/Px7Qtxjc+2PitKHKfR3aCnseoRMGkgMzPEJTPUwCpnlQ==} - cpu: [arm64] - os: [darwin] - - turbo-linux-64@1.11.1: - resolution: {integrity: sha512-mHFSqMkgy3h/M8Ocj2oiOr6CqlCqB6coCPWVIAmraBk+SQywwsszgJ69GWBfm7lwwJvb3B1YN1wkZNe9ZZnBfg==} - cpu: [x64] - os: [linux] - - turbo-linux-arm64@1.11.1: - resolution: {integrity: sha512-6ybojTkAkymo1Ig7kU3s2YQUUSRf3l2qatPZgw3v4OmFTSU2feCU1sHjAEqhHwEjV1KciDo1wRl1gjjyby4foQ==} - cpu: [arm64] - os: [linux] - - turbo-windows-64@1.11.1: - resolution: {integrity: sha512-ytWy6+yEtBfv6nbgCKW6HsolgUFAC1PZGMPzbqRGnCm2eLVWhDuwO1Yk7uq4cvdrpXcXgOMcPEoJZxUCDbeJaQ==} - cpu: [x64] - os: [win32] - - turbo-windows-arm64@1.11.1: - resolution: {integrity: sha512-O04DdJoRavOh/v9/MM5wWCEtOekO4aiLljNZc/fOh853sOhid61ZRSEYUmS9ecjmZ/OjKqedIfbkitaQ77c4xA==} - cpu: [arm64] - os: [win32] - - turbo@1.11.1: - resolution: {integrity: sha512-pmIsyTcyBJ5iJIaTjJyCxAq7YquDqyRai6FW2q0mFAkwK3k0p36wJ5yH85U2Ue6esrTKzeSEKskP4/fa7dv4+A==} - hasBin: true - - tween-functions@1.2.0: - resolution: {integrity: sha512-PZBtLYcCLtEcjL14Fzb1gSxPBeL7nWvGhO5ZFPGqziCcr8uvHp0NDmdjBchp6KHL+tExcg0m3NISmKxhU394dA==} - - type-check@0.4.0: - resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} - engines: {node: '>= 0.8.0'} - - type-detect@4.0.8: - resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} - engines: {node: '>=4'} - - type-fest@0.13.1: - resolution: {integrity: sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==} - engines: {node: '>=10'} - - type-fest@0.16.0: - resolution: {integrity: sha512-eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg==} - engines: {node: '>=10'} - - type-fest@0.20.2: - resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} - engines: {node: '>=10'} - - type-fest@0.21.3: - resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} - engines: {node: '>=10'} - - type-fest@0.6.0: - resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} - engines: {node: '>=8'} - - type-fest@0.7.1: - resolution: {integrity: sha512-Ne2YiiGN8bmrmJJEuTWTLJR32nh/JdL1+PSicowtNb0WFpn59GK8/lfD61bVtzguz7b3PBt74nxpv/Pw5po5Rg==} - engines: {node: '>=8'} - - type-fest@0.8.1: - resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} - engines: {node: '>=8'} - - type-fest@2.19.0: - resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} - engines: {node: '>=12.20'} - - type-fest@3.13.1: - resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} - engines: {node: '>=14.16'} - - type-is@1.6.18: - resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} - engines: {node: '>= 0.6'} - - typed-array-buffer@1.0.0: - resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==} - engines: {node: '>= 0.4'} - - typed-array-byte-length@1.0.0: - resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} - engines: {node: '>= 0.4'} - - typed-array-byte-offset@1.0.0: - resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==} - engines: {node: '>= 0.4'} - - typed-array-length@1.0.4: - resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} - - typedarray@0.0.6: - resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} - - typescript@5.1.6: - resolution: {integrity: sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==} - engines: {node: '>=14.17'} - hasBin: true - - typescript@5.2.2: - resolution: {integrity: sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==} - engines: {node: '>=14.17'} - hasBin: true - - ufo@1.3.2: - resolution: {integrity: sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA==} - - uglify-js@3.17.4: - resolution: {integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==} - engines: {node: '>=0.8.0'} - hasBin: true - - uid2@1.0.0: - resolution: {integrity: sha512-+I6aJUv63YAcY9n4mQreLUt0d4lvwkkopDNmpomkAUz0fAkEMV9pRWxN0EjhW1YfRhcuyHg2v3mwddCDW1+LFQ==} - engines: {node: '>= 4.0.0'} - - unbox-primitive@1.0.2: - resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} - - undici-types@5.26.5: - resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} - - unicode-canonical-property-names-ecmascript@2.0.0: - resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} - engines: {node: '>=4'} - - unicode-match-property-ecmascript@2.0.0: - resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==} - engines: {node: '>=4'} - - unicode-match-property-value-ecmascript@2.1.0: - resolution: {integrity: sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==} - engines: {node: '>=4'} - - unicode-property-aliases-ecmascript@2.1.0: - resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==} - engines: {node: '>=4'} - - unique-string@2.0.0: - resolution: {integrity: sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==} - engines: {node: '>=8'} - - unist-util-is@4.1.0: - resolution: {integrity: sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==} - - unist-util-visit-parents@3.1.1: - resolution: {integrity: sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==} - - unist-util-visit@2.0.3: - resolution: {integrity: sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==} - - universalify@2.0.0: - resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==} - engines: {node: '>= 10.0.0'} - - unpipe@1.0.0: - resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} - engines: {node: '>= 0.8'} - - unplugin@1.6.0: - resolution: {integrity: sha512-BfJEpWBu3aE/AyHx8VaNE/WgouoQxgH9baAiH82JjX8cqVyi3uJQstqwD5J+SZxIK326SZIhsSZlALXVBCknTQ==} - - untildify@4.0.0: - resolution: {integrity: sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==} - engines: {node: '>=8'} - - update-browserslist-db@1.0.10: - resolution: {integrity: sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==} - hasBin: true - peerDependencies: - browserslist: '>= 4.21.0' - - update-browserslist-db@1.0.13: - resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} - hasBin: true - peerDependencies: - browserslist: '>= 4.21.0' - - uri-js@4.4.1: - resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} - - url@0.11.3: - resolution: {integrity: sha512-6hxOLGfZASQK/cijlZnZJTq8OXAkt/3YGfQX45vvMYXpZoo8NdWZcY73K108Jf759lS1Bv/8wXnHDTSz17dSRw==} - - use-callback-ref@1.3.0: - resolution: {integrity: sha512-3FT9PRuRdbB9HfXhEq35u4oZkvpJ5kuYbpqhCfmiZyReuRgpnhDlbr2ZEnnuS0RrJAPn6l23xjFg9kpDM+Ms7w==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - use-composed-ref@1.3.0: - resolution: {integrity: sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==} - peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - - use-isomorphic-layout-effect@1.1.2: - resolution: {integrity: sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==} - peerDependencies: - '@types/react': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - use-latest@1.2.1: - resolution: {integrity: sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==} - peerDependencies: - '@types/react': '*' - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - use-resize-observer@9.1.0: - resolution: {integrity: sha512-R25VqO9Wb3asSD4eqtcxk8sJalvIOYBqS8MNZlpDSQ4l4xMQxC/J7Id9HoTqPq8FwULIn0PVW+OAqF2dyYbjow==} - peerDependencies: - react: 16.8.0 - 18 - react-dom: 16.8.0 - 18 - - use-sidecar@1.1.2: - resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==} - engines: {node: '>=10'} - peerDependencies: - '@types/react': ^16.9.0 || ^17.0.0 || ^18.0.0 - react: ^16.8.0 || ^17.0.0 || ^18.0.0 - peerDependenciesMeta: - '@types/react': - optional: true - - util-deprecate@1.0.2: - resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - - util@0.12.5: - resolution: {integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==} - - utila@0.4.0: - resolution: {integrity: sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==} - - utils-merge@1.0.1: - resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} - engines: {node: '>= 0.4.0'} - - uuid@8.3.2: - resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} - hasBin: true - - uuid@9.0.0: - resolution: {integrity: sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==} - hasBin: true - - v8-compile-cache-lib@3.0.1: - resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} - - v8-to-istanbul@9.1.0: - resolution: {integrity: sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA==} - engines: {node: '>=10.12.0'} - - validate-npm-package-license@3.0.4: - resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} - - vary@1.1.2: - resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} - engines: {node: '>= 0.8'} - - vm-browserify@1.1.2: - resolution: {integrity: sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==} - - walker@1.0.8: - resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==} - - watchpack@2.4.0: - resolution: {integrity: sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==} - engines: {node: '>=10.13.0'} - - wcwidth@1.0.1: - resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} - - webidl-conversions@3.0.1: - resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} - - webidl-conversions@7.0.0: - resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} - engines: {node: '>=12'} - - webpack-dev-middleware@6.1.1: - resolution: {integrity: sha512-y51HrHaFeeWir0YO4f0g+9GwZawuigzcAdRNon6jErXy/SqV/+O6eaVAzDqE6t3e3NpGeR5CS+cCDaTC+V3yEQ==} - engines: {node: '>= 14.15.0'} - peerDependencies: - webpack: ^5.0.0 - peerDependenciesMeta: - webpack: - optional: true - - webpack-hot-middleware@2.26.0: - resolution: {integrity: sha512-okzjec5sAEy4t+7rzdT8eRyxsk0FDSmBPN2KwX4Qd+6+oQCfe5Ve07+u7cJvofgB+B4w5/4dO4Pz0jhhHyyPLQ==} - - webpack-sources@3.2.3: - resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==} - engines: {node: '>=10.13.0'} - - webpack-virtual-modules@0.5.0: - resolution: {integrity: sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==} - - webpack-virtual-modules@0.6.1: - resolution: {integrity: sha512-poXpCylU7ExuvZK8z+On3kX+S8o/2dQ/SVYueKA0D4WEMXROXgY8Ez50/bQEUmvoSMMrWcrJqCHuhAbsiwg7Dg==} - - webpack@5.75.0: - resolution: {integrity: sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==} - engines: {node: '>=10.13.0'} - hasBin: true - peerDependencies: - webpack-cli: '*' - peerDependenciesMeta: - webpack-cli: - optional: true - - whatwg-url@11.0.0: - resolution: {integrity: sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==} - engines: {node: '>=12'} - - whatwg-url@5.0.0: - resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} - - which-boxed-primitive@1.0.2: - resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} - - which-builtin-type@1.1.3: - resolution: {integrity: sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==} - engines: {node: '>= 0.4'} - - which-collection@1.0.1: - resolution: {integrity: sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==} - - which-typed-array@1.1.13: - resolution: {integrity: sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==} - engines: {node: '>= 0.4'} - - which-typed-array@1.1.9: - resolution: {integrity: sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==} - engines: {node: '>= 0.4'} - - which@1.3.1: - resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} - hasBin: true - - which@2.0.2: - resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} - engines: {node: '>= 8'} - hasBin: true - - winston-transport@4.5.0: - resolution: {integrity: sha512-YpZzcUzBedhlTAfJg6vJDlyEai/IFMIVcaEZZyl3UXIl4gmqRpU7AE89AHLkbzLUsv0NVmw7ts+iztqKxxPW1Q==} - engines: {node: '>= 6.4.0'} - - winston@3.8.2: - resolution: {integrity: sha512-MsE1gRx1m5jdTTO9Ld/vND4krP2To+lgDoMEHGGa4HIlAUyXJtfc7CxQcGXVyz2IBpw5hbFkj2b/AtUdQwyRew==} - engines: {node: '>= 12.0.0'} - - wordwrap@1.0.0: - resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} - - wrap-ansi@6.2.0: - resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} - engines: {node: '>=8'} - - wrap-ansi@7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} - - wrap-ansi@8.1.0: - resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} - engines: {node: '>=12'} - - wrap-ansi@9.0.0: - resolution: {integrity: sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==} - engines: {node: '>=18'} - - wrappy@1.0.2: - resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - - write-file-atomic@2.4.3: - resolution: {integrity: sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==} - - write-file-atomic@4.0.2: - resolution: {integrity: sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==} - engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} - - ws@6.2.2: - resolution: {integrity: sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - - ws@8.11.0: - resolution: {integrity: sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==} - engines: {node: '>=10.0.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - - xmlhttprequest-ssl@2.0.0: - resolution: {integrity: sha512-QKxVRxiRACQcVuQEYFsI1hhkrMlrXHPegbbd1yn9UHOmRxY+si12nQYzri3vbzt8VdTTRviqcKxcyllFas5z2A==} - engines: {node: '>=0.4.0'} - - xtend@2.1.2: - resolution: {integrity: sha512-vMNKzr2rHP9Dp/e1NQFnLQlwlhp9L/LfvnsVdHxN1f+uggyVI3i08uD14GPvCToPkdsRfyPqIyYGmIk58V98ZQ==} - engines: {node: '>=0.4'} - - xtend@4.0.2: - resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} - engines: {node: '>=0.4'} - - y18n@5.0.8: - resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} - engines: {node: '>=10'} - - yallist@3.1.1: - resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} - - yallist@4.0.0: - resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - - yaml@1.10.2: - resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} - engines: {node: '>= 6'} - - yaml@2.2.1: - resolution: {integrity: sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw==} - engines: {node: '>= 14'} - - yaml@2.3.4: - resolution: {integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==} - engines: {node: '>= 14'} - - yargs-parser@18.1.3: - resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==} - engines: {node: '>=6'} - - yargs-parser@21.1.1: - resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} - engines: {node: '>=12'} - - yargs@17.7.0: - resolution: {integrity: sha512-dwqOPg5trmrre9+v8SUo2q/hAwyKoVfu8OC1xPHKJGNdxAvPl4sKxL4vBnh3bQz/ZvvGAFeA5H3ou2kcOY8sQQ==} - engines: {node: '>=12'} - - yauzl@2.10.0: - resolution: {integrity: sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==} - - ylru@1.3.2: - resolution: {integrity: sha512-RXRJzMiK6U2ye0BlGGZnmpwJDPgakn6aNQ0A7gHRbD4I0uvK4TW6UqkK1V0pp9jskjJBAXd3dRrbzWkqJ+6cxA==} - engines: {node: '>= 4.0.0'} - - yn@3.1.1: - resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} - engines: {node: '>=6'} - - yocto-queue@0.1.0: - resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} - engines: {node: '>=10'} - - zod@3.21.4: - resolution: {integrity: sha512-m46AKbrzKVzOzs/DZgVnG5H55N1sv1M8qZU3A8RIKbs3mrACDNeIOeilDymVb2HdmP8uwshOCF4uJ8uM9rCqJw==} - -snapshots: - - '@aashutoshrathi/word-wrap@1.2.6': {} - - '@adobe/css-tools@4.3.2': {} - - '@alloc/quick-lru@5.2.0': {} - - '@ampproject/remapping@2.2.0': - dependencies: - '@jridgewell/gen-mapping': 0.1.1 - '@jridgewell/trace-mapping': 0.3.17 - - '@aw-web-design/x-default-browser@1.4.126': - dependencies: - default-browser-id: 3.0.0 - - '@aws-crypto/crc32@3.0.0': - dependencies: - '@aws-crypto/util': 3.0.0 - '@aws-sdk/types': 3.535.0 - tslib: 1.14.1 - - '@aws-crypto/crc32c@3.0.0': - dependencies: - '@aws-crypto/util': 3.0.0 - '@aws-sdk/types': 3.535.0 - tslib: 1.14.1 - - '@aws-crypto/ie11-detection@3.0.0': - dependencies: - tslib: 1.14.1 - - '@aws-crypto/sha1-browser@3.0.0': - dependencies: - '@aws-crypto/ie11-detection': 3.0.0 - '@aws-crypto/supports-web-crypto': 3.0.0 - '@aws-crypto/util': 3.0.0 - '@aws-sdk/types': 3.535.0 - '@aws-sdk/util-locate-window': 3.208.0 - '@aws-sdk/util-utf8-browser': 3.259.0 - tslib: 1.14.1 - - '@aws-crypto/sha256-browser@3.0.0': - dependencies: - '@aws-crypto/ie11-detection': 3.0.0 - '@aws-crypto/sha256-js': 3.0.0 - '@aws-crypto/supports-web-crypto': 3.0.0 - '@aws-crypto/util': 3.0.0 - '@aws-sdk/types': 3.535.0 - '@aws-sdk/util-locate-window': 3.208.0 - '@aws-sdk/util-utf8-browser': 3.259.0 - tslib: 1.14.1 - - '@aws-crypto/sha256-js@3.0.0': - dependencies: - '@aws-crypto/util': 3.0.0 - '@aws-sdk/types': 3.535.0 - tslib: 1.14.1 - - '@aws-crypto/supports-web-crypto@3.0.0': - dependencies: - tslib: 1.14.1 - - '@aws-crypto/util@3.0.0': - dependencies: - '@aws-sdk/types': 3.535.0 - '@aws-sdk/util-utf8-browser': 3.259.0 - tslib: 1.14.1 - - '@aws-sdk/abort-controller@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/client-cognito-identity@3.272.0': - dependencies: - '@aws-crypto/sha256-browser': 3.0.0 - '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/client-sts': 3.272.0 - '@aws-sdk/config-resolver': 3.272.0 - '@aws-sdk/credential-provider-node': 3.272.0 - '@aws-sdk/fetch-http-handler': 3.272.0 - '@aws-sdk/hash-node': 3.272.0 - '@aws-sdk/invalid-dependency': 3.272.0 - '@aws-sdk/middleware-content-length': 3.272.0 - '@aws-sdk/middleware-endpoint': 3.272.0 - '@aws-sdk/middleware-host-header': 3.272.0 - '@aws-sdk/middleware-logger': 3.272.0 - '@aws-sdk/middleware-recursion-detection': 3.272.0 - '@aws-sdk/middleware-retry': 3.272.0 - '@aws-sdk/middleware-serde': 3.272.0 - '@aws-sdk/middleware-signing': 3.272.0 - '@aws-sdk/middleware-stack': 3.272.0 - '@aws-sdk/middleware-user-agent': 3.272.0 - '@aws-sdk/node-config-provider': 3.272.0 - '@aws-sdk/node-http-handler': 3.272.0 - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/smithy-client': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/url-parser': 3.272.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.272.0 - '@aws-sdk/util-defaults-mode-node': 3.272.0 - '@aws-sdk/util-endpoints': 3.272.0 - '@aws-sdk/util-retry': 3.272.0 - '@aws-sdk/util-user-agent-browser': 3.272.0 - '@aws-sdk/util-user-agent-node': 3.272.0 - '@aws-sdk/util-utf8': 3.254.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/client-s3@3.540.0': - dependencies: - '@aws-crypto/sha1-browser': 3.0.0 - '@aws-crypto/sha256-browser': 3.0.0 - '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/client-sts': 3.540.0(@aws-sdk/credential-provider-node@3.540.0) - '@aws-sdk/core': 3.535.0 - '@aws-sdk/credential-provider-node': 3.540.0 - '@aws-sdk/middleware-bucket-endpoint': 3.535.0 - '@aws-sdk/middleware-expect-continue': 3.535.0 - '@aws-sdk/middleware-flexible-checksums': 3.535.0 - '@aws-sdk/middleware-host-header': 3.535.0 - '@aws-sdk/middleware-location-constraint': 3.535.0 - '@aws-sdk/middleware-logger': 3.535.0 - '@aws-sdk/middleware-recursion-detection': 3.535.0 - '@aws-sdk/middleware-sdk-s3': 3.535.0 - '@aws-sdk/middleware-signing': 3.535.0 - '@aws-sdk/middleware-ssec': 3.537.0 - '@aws-sdk/middleware-user-agent': 3.540.0 - '@aws-sdk/region-config-resolver': 3.535.0 - '@aws-sdk/signature-v4-multi-region': 3.535.0 - '@aws-sdk/types': 3.535.0 - '@aws-sdk/util-endpoints': 3.540.0 - '@aws-sdk/util-user-agent-browser': 3.535.0 - '@aws-sdk/util-user-agent-node': 3.535.0 - '@aws-sdk/xml-builder': 3.535.0 - '@smithy/config-resolver': 2.2.0 - '@smithy/core': 1.4.0 - '@smithy/eventstream-serde-browser': 2.2.0 - '@smithy/eventstream-serde-config-resolver': 2.2.0 - '@smithy/eventstream-serde-node': 2.2.0 - '@smithy/fetch-http-handler': 2.5.0 - '@smithy/hash-blob-browser': 2.2.0 - '@smithy/hash-node': 2.2.0 - '@smithy/hash-stream-node': 2.2.0 - '@smithy/invalid-dependency': 2.2.0 - '@smithy/md5-js': 2.2.0 - '@smithy/middleware-content-length': 2.2.0 - '@smithy/middleware-endpoint': 2.5.0 - '@smithy/middleware-retry': 2.2.0 - '@smithy/middleware-serde': 2.3.0 - '@smithy/middleware-stack': 2.2.0 - '@smithy/node-config-provider': 2.3.0 - '@smithy/node-http-handler': 2.5.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/smithy-client': 2.5.0 - '@smithy/types': 2.12.0 - '@smithy/url-parser': 2.2.0 - '@smithy/util-base64': 2.3.0 - '@smithy/util-body-length-browser': 2.2.0 - '@smithy/util-body-length-node': 2.3.0 - '@smithy/util-defaults-mode-browser': 2.2.0 - '@smithy/util-defaults-mode-node': 2.3.0 - '@smithy/util-endpoints': 1.2.0 - '@smithy/util-retry': 2.2.0 - '@smithy/util-stream': 2.2.0 - '@smithy/util-utf8': 2.3.0 - '@smithy/util-waiter': 2.2.0 - tslib: 2.6.2 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/client-sso-oidc@3.272.0': - dependencies: - '@aws-crypto/sha256-browser': 3.0.0 - '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/config-resolver': 3.272.0 - '@aws-sdk/fetch-http-handler': 3.272.0 - '@aws-sdk/hash-node': 3.272.0 - '@aws-sdk/invalid-dependency': 3.272.0 - '@aws-sdk/middleware-content-length': 3.272.0 - '@aws-sdk/middleware-endpoint': 3.272.0 - '@aws-sdk/middleware-host-header': 3.272.0 - '@aws-sdk/middleware-logger': 3.272.0 - '@aws-sdk/middleware-recursion-detection': 3.272.0 - '@aws-sdk/middleware-retry': 3.272.0 - '@aws-sdk/middleware-serde': 3.272.0 - '@aws-sdk/middleware-stack': 3.272.0 - '@aws-sdk/middleware-user-agent': 3.272.0 - '@aws-sdk/node-config-provider': 3.272.0 - '@aws-sdk/node-http-handler': 3.272.0 - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/smithy-client': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/url-parser': 3.272.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.272.0 - '@aws-sdk/util-defaults-mode-node': 3.272.0 - '@aws-sdk/util-endpoints': 3.272.0 - '@aws-sdk/util-retry': 3.272.0 - '@aws-sdk/util-user-agent-browser': 3.272.0 - '@aws-sdk/util-user-agent-node': 3.272.0 - '@aws-sdk/util-utf8': 3.254.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/client-sso-oidc@3.540.0(@aws-sdk/credential-provider-node@3.540.0)': - dependencies: - '@aws-crypto/sha256-browser': 3.0.0 - '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/client-sts': 3.540.0(@aws-sdk/credential-provider-node@3.540.0) - '@aws-sdk/core': 3.535.0 - '@aws-sdk/credential-provider-node': 3.540.0 - '@aws-sdk/middleware-host-header': 3.535.0 - '@aws-sdk/middleware-logger': 3.535.0 - '@aws-sdk/middleware-recursion-detection': 3.535.0 - '@aws-sdk/middleware-user-agent': 3.540.0 - '@aws-sdk/region-config-resolver': 3.535.0 - '@aws-sdk/types': 3.535.0 - '@aws-sdk/util-endpoints': 3.540.0 - '@aws-sdk/util-user-agent-browser': 3.535.0 - '@aws-sdk/util-user-agent-node': 3.535.0 - '@smithy/config-resolver': 2.2.0 - '@smithy/core': 1.4.0 - '@smithy/fetch-http-handler': 2.5.0 - '@smithy/hash-node': 2.2.0 - '@smithy/invalid-dependency': 2.2.0 - '@smithy/middleware-content-length': 2.2.0 - '@smithy/middleware-endpoint': 2.5.0 - '@smithy/middleware-retry': 2.2.0 - '@smithy/middleware-serde': 2.3.0 - '@smithy/middleware-stack': 2.2.0 - '@smithy/node-config-provider': 2.3.0 - '@smithy/node-http-handler': 2.5.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/smithy-client': 2.5.0 - '@smithy/types': 2.12.0 - '@smithy/url-parser': 2.2.0 - '@smithy/util-base64': 2.3.0 - '@smithy/util-body-length-browser': 2.2.0 - '@smithy/util-body-length-node': 2.3.0 - '@smithy/util-defaults-mode-browser': 2.2.0 - '@smithy/util-defaults-mode-node': 2.3.0 - '@smithy/util-endpoints': 1.2.0 - '@smithy/util-middleware': 2.2.0 - '@smithy/util-retry': 2.2.0 - '@smithy/util-utf8': 2.3.0 - tslib: 2.6.2 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/client-sso@3.272.0': - dependencies: - '@aws-crypto/sha256-browser': 3.0.0 - '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/config-resolver': 3.272.0 - '@aws-sdk/fetch-http-handler': 3.272.0 - '@aws-sdk/hash-node': 3.272.0 - '@aws-sdk/invalid-dependency': 3.272.0 - '@aws-sdk/middleware-content-length': 3.272.0 - '@aws-sdk/middleware-endpoint': 3.272.0 - '@aws-sdk/middleware-host-header': 3.272.0 - '@aws-sdk/middleware-logger': 3.272.0 - '@aws-sdk/middleware-recursion-detection': 3.272.0 - '@aws-sdk/middleware-retry': 3.272.0 - '@aws-sdk/middleware-serde': 3.272.0 - '@aws-sdk/middleware-stack': 3.272.0 - '@aws-sdk/middleware-user-agent': 3.272.0 - '@aws-sdk/node-config-provider': 3.272.0 - '@aws-sdk/node-http-handler': 3.272.0 - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/smithy-client': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/url-parser': 3.272.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.272.0 - '@aws-sdk/util-defaults-mode-node': 3.272.0 - '@aws-sdk/util-endpoints': 3.272.0 - '@aws-sdk/util-retry': 3.272.0 - '@aws-sdk/util-user-agent-browser': 3.272.0 - '@aws-sdk/util-user-agent-node': 3.272.0 - '@aws-sdk/util-utf8': 3.254.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/client-sso@3.540.0': - dependencies: - '@aws-crypto/sha256-browser': 3.0.0 - '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/core': 3.535.0 - '@aws-sdk/middleware-host-header': 3.535.0 - '@aws-sdk/middleware-logger': 3.535.0 - '@aws-sdk/middleware-recursion-detection': 3.535.0 - '@aws-sdk/middleware-user-agent': 3.540.0 - '@aws-sdk/region-config-resolver': 3.535.0 - '@aws-sdk/types': 3.535.0 - '@aws-sdk/util-endpoints': 3.540.0 - '@aws-sdk/util-user-agent-browser': 3.535.0 - '@aws-sdk/util-user-agent-node': 3.535.0 - '@smithy/config-resolver': 2.2.0 - '@smithy/core': 1.4.0 - '@smithy/fetch-http-handler': 2.5.0 - '@smithy/hash-node': 2.2.0 - '@smithy/invalid-dependency': 2.2.0 - '@smithy/middleware-content-length': 2.2.0 - '@smithy/middleware-endpoint': 2.5.0 - '@smithy/middleware-retry': 2.2.0 - '@smithy/middleware-serde': 2.3.0 - '@smithy/middleware-stack': 2.2.0 - '@smithy/node-config-provider': 2.3.0 - '@smithy/node-http-handler': 2.5.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/smithy-client': 2.5.0 - '@smithy/types': 2.12.0 - '@smithy/url-parser': 2.2.0 - '@smithy/util-base64': 2.3.0 - '@smithy/util-body-length-browser': 2.2.0 - '@smithy/util-body-length-node': 2.3.0 - '@smithy/util-defaults-mode-browser': 2.2.0 - '@smithy/util-defaults-mode-node': 2.3.0 - '@smithy/util-endpoints': 1.2.0 - '@smithy/util-middleware': 2.2.0 - '@smithy/util-retry': 2.2.0 - '@smithy/util-utf8': 2.3.0 - tslib: 2.6.2 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/client-sts@3.272.0': - dependencies: - '@aws-crypto/sha256-browser': 3.0.0 - '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/config-resolver': 3.272.0 - '@aws-sdk/credential-provider-node': 3.272.0 - '@aws-sdk/fetch-http-handler': 3.272.0 - '@aws-sdk/hash-node': 3.272.0 - '@aws-sdk/invalid-dependency': 3.272.0 - '@aws-sdk/middleware-content-length': 3.272.0 - '@aws-sdk/middleware-endpoint': 3.272.0 - '@aws-sdk/middleware-host-header': 3.272.0 - '@aws-sdk/middleware-logger': 3.272.0 - '@aws-sdk/middleware-recursion-detection': 3.272.0 - '@aws-sdk/middleware-retry': 3.272.0 - '@aws-sdk/middleware-sdk-sts': 3.272.0 - '@aws-sdk/middleware-serde': 3.272.0 - '@aws-sdk/middleware-signing': 3.272.0 - '@aws-sdk/middleware-stack': 3.272.0 - '@aws-sdk/middleware-user-agent': 3.272.0 - '@aws-sdk/node-config-provider': 3.272.0 - '@aws-sdk/node-http-handler': 3.272.0 - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/smithy-client': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/url-parser': 3.272.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.272.0 - '@aws-sdk/util-defaults-mode-node': 3.272.0 - '@aws-sdk/util-endpoints': 3.272.0 - '@aws-sdk/util-retry': 3.272.0 - '@aws-sdk/util-user-agent-browser': 3.272.0 - '@aws-sdk/util-user-agent-node': 3.272.0 - '@aws-sdk/util-utf8': 3.254.0 - fast-xml-parser: 4.0.11 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/client-sts@3.540.0(@aws-sdk/credential-provider-node@3.540.0)': - dependencies: - '@aws-crypto/sha256-browser': 3.0.0 - '@aws-crypto/sha256-js': 3.0.0 - '@aws-sdk/core': 3.535.0 - '@aws-sdk/credential-provider-node': 3.540.0 - '@aws-sdk/middleware-host-header': 3.535.0 - '@aws-sdk/middleware-logger': 3.535.0 - '@aws-sdk/middleware-recursion-detection': 3.535.0 - '@aws-sdk/middleware-user-agent': 3.540.0 - '@aws-sdk/region-config-resolver': 3.535.0 - '@aws-sdk/types': 3.535.0 - '@aws-sdk/util-endpoints': 3.540.0 - '@aws-sdk/util-user-agent-browser': 3.535.0 - '@aws-sdk/util-user-agent-node': 3.535.0 - '@smithy/config-resolver': 2.2.0 - '@smithy/core': 1.4.0 - '@smithy/fetch-http-handler': 2.5.0 - '@smithy/hash-node': 2.2.0 - '@smithy/invalid-dependency': 2.2.0 - '@smithy/middleware-content-length': 2.2.0 - '@smithy/middleware-endpoint': 2.5.0 - '@smithy/middleware-retry': 2.2.0 - '@smithy/middleware-serde': 2.3.0 - '@smithy/middleware-stack': 2.2.0 - '@smithy/node-config-provider': 2.3.0 - '@smithy/node-http-handler': 2.5.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/smithy-client': 2.5.0 - '@smithy/types': 2.12.0 - '@smithy/url-parser': 2.2.0 - '@smithy/util-base64': 2.3.0 - '@smithy/util-body-length-browser': 2.2.0 - '@smithy/util-body-length-node': 2.3.0 - '@smithy/util-defaults-mode-browser': 2.2.0 - '@smithy/util-defaults-mode-node': 2.3.0 - '@smithy/util-endpoints': 1.2.0 - '@smithy/util-middleware': 2.2.0 - '@smithy/util-retry': 2.2.0 - '@smithy/util-utf8': 2.3.0 - tslib: 2.6.2 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/config-resolver@3.272.0': - dependencies: - '@aws-sdk/signature-v4': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/util-config-provider': 3.208.0 - '@aws-sdk/util-middleware': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/core@3.535.0': - dependencies: - '@smithy/core': 1.4.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/signature-v4': 2.2.0 - '@smithy/smithy-client': 2.5.0 - '@smithy/types': 2.12.0 - fast-xml-parser: 4.2.5 - tslib: 2.6.2 - - '@aws-sdk/credential-provider-cognito-identity@3.272.0': - dependencies: - '@aws-sdk/client-cognito-identity': 3.272.0 - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/credential-provider-env@3.272.0': - dependencies: - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/credential-provider-env@3.535.0': - dependencies: - '@aws-sdk/types': 3.535.0 - '@smithy/property-provider': 2.2.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@aws-sdk/credential-provider-http@3.535.0': - dependencies: - '@aws-sdk/types': 3.535.0 - '@smithy/fetch-http-handler': 2.5.0 - '@smithy/node-http-handler': 2.5.0 - '@smithy/property-provider': 2.2.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/smithy-client': 2.5.0 - '@smithy/types': 2.12.0 - '@smithy/util-stream': 2.2.0 - tslib: 2.6.2 - - '@aws-sdk/credential-provider-imds@3.272.0': - dependencies: - '@aws-sdk/node-config-provider': 3.272.0 - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/url-parser': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/credential-provider-ini@3.272.0': - dependencies: - '@aws-sdk/credential-provider-env': 3.272.0 - '@aws-sdk/credential-provider-imds': 3.272.0 - '@aws-sdk/credential-provider-process': 3.272.0 - '@aws-sdk/credential-provider-sso': 3.272.0 - '@aws-sdk/credential-provider-web-identity': 3.272.0 - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/shared-ini-file-loader': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/credential-provider-ini@3.540.0(@aws-sdk/credential-provider-node@3.540.0)': - dependencies: - '@aws-sdk/client-sts': 3.540.0(@aws-sdk/credential-provider-node@3.540.0) - '@aws-sdk/credential-provider-env': 3.535.0 - '@aws-sdk/credential-provider-process': 3.535.0 - '@aws-sdk/credential-provider-sso': 3.540.0(@aws-sdk/credential-provider-node@3.540.0) - '@aws-sdk/credential-provider-web-identity': 3.540.0(@aws-sdk/credential-provider-node@3.540.0) - '@aws-sdk/types': 3.535.0 - '@smithy/credential-provider-imds': 2.3.0 - '@smithy/property-provider': 2.2.0 - '@smithy/shared-ini-file-loader': 2.4.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - transitivePeerDependencies: - - '@aws-sdk/credential-provider-node' - - aws-crt - - '@aws-sdk/credential-provider-node@3.272.0': - dependencies: - '@aws-sdk/credential-provider-env': 3.272.0 - '@aws-sdk/credential-provider-imds': 3.272.0 - '@aws-sdk/credential-provider-ini': 3.272.0 - '@aws-sdk/credential-provider-process': 3.272.0 - '@aws-sdk/credential-provider-sso': 3.272.0 - '@aws-sdk/credential-provider-web-identity': 3.272.0 - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/shared-ini-file-loader': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/credential-provider-node@3.540.0': - dependencies: - '@aws-sdk/credential-provider-env': 3.535.0 - '@aws-sdk/credential-provider-http': 3.535.0 - '@aws-sdk/credential-provider-ini': 3.540.0(@aws-sdk/credential-provider-node@3.540.0) - '@aws-sdk/credential-provider-process': 3.535.0 - '@aws-sdk/credential-provider-sso': 3.540.0(@aws-sdk/credential-provider-node@3.540.0) - '@aws-sdk/credential-provider-web-identity': 3.540.0(@aws-sdk/credential-provider-node@3.540.0) - '@aws-sdk/types': 3.535.0 - '@smithy/credential-provider-imds': 2.3.0 - '@smithy/property-provider': 2.2.0 - '@smithy/shared-ini-file-loader': 2.4.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/credential-provider-process@3.272.0': - dependencies: - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/shared-ini-file-loader': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/credential-provider-process@3.535.0': - dependencies: - '@aws-sdk/types': 3.535.0 - '@smithy/property-provider': 2.2.0 - '@smithy/shared-ini-file-loader': 2.4.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@aws-sdk/credential-provider-sso@3.272.0': - dependencies: - '@aws-sdk/client-sso': 3.272.0 - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/shared-ini-file-loader': 3.272.0 - '@aws-sdk/token-providers': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/credential-provider-sso@3.540.0(@aws-sdk/credential-provider-node@3.540.0)': - dependencies: - '@aws-sdk/client-sso': 3.540.0 - '@aws-sdk/token-providers': 3.540.0(@aws-sdk/credential-provider-node@3.540.0) - '@aws-sdk/types': 3.535.0 - '@smithy/property-provider': 2.2.0 - '@smithy/shared-ini-file-loader': 2.4.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - transitivePeerDependencies: - - '@aws-sdk/credential-provider-node' - - aws-crt - - '@aws-sdk/credential-provider-web-identity@3.272.0': - dependencies: - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/credential-provider-web-identity@3.540.0(@aws-sdk/credential-provider-node@3.540.0)': - dependencies: - '@aws-sdk/client-sts': 3.540.0(@aws-sdk/credential-provider-node@3.540.0) - '@aws-sdk/types': 3.535.0 - '@smithy/property-provider': 2.2.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - transitivePeerDependencies: - - '@aws-sdk/credential-provider-node' - - aws-crt - - '@aws-sdk/credential-providers@3.272.0': - dependencies: - '@aws-sdk/client-cognito-identity': 3.272.0 - '@aws-sdk/client-sso': 3.272.0 - '@aws-sdk/client-sts': 3.272.0 - '@aws-sdk/credential-provider-cognito-identity': 3.272.0 - '@aws-sdk/credential-provider-env': 3.272.0 - '@aws-sdk/credential-provider-imds': 3.272.0 - '@aws-sdk/credential-provider-ini': 3.272.0 - '@aws-sdk/credential-provider-node': 3.272.0 - '@aws-sdk/credential-provider-process': 3.272.0 - '@aws-sdk/credential-provider-sso': 3.272.0 - '@aws-sdk/credential-provider-web-identity': 3.272.0 - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/shared-ini-file-loader': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/fetch-http-handler@3.272.0': - dependencies: - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/querystring-builder': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/util-base64': 3.208.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/hash-node@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - '@aws-sdk/util-buffer-from': 3.208.0 - '@aws-sdk/util-utf8': 3.254.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/invalid-dependency@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/is-array-buffer@3.201.0': - dependencies: - tslib: 2.5.0 - optional: true - - '@aws-sdk/lib-storage@3.540.0(@aws-sdk/client-s3@3.540.0)': - dependencies: - '@aws-sdk/client-s3': 3.540.0 - '@smithy/abort-controller': 2.2.0 - '@smithy/middleware-endpoint': 2.5.0 - '@smithy/smithy-client': 2.5.0 - buffer: 5.6.0 - events: 3.3.0 - stream-browserify: 3.0.0 - tslib: 2.6.2 - - '@aws-sdk/middleware-bucket-endpoint@3.535.0': - dependencies: - '@aws-sdk/types': 3.535.0 - '@aws-sdk/util-arn-parser': 3.535.0 - '@smithy/node-config-provider': 2.3.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/types': 2.12.0 - '@smithy/util-config-provider': 2.3.0 - tslib: 2.6.2 - - '@aws-sdk/middleware-content-length@3.272.0': - dependencies: - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-endpoint@3.272.0': - dependencies: - '@aws-sdk/middleware-serde': 3.272.0 - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/signature-v4': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/url-parser': 3.272.0 - '@aws-sdk/util-config-provider': 3.208.0 - '@aws-sdk/util-middleware': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-expect-continue@3.535.0': - dependencies: - '@aws-sdk/types': 3.535.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@aws-sdk/middleware-flexible-checksums@3.535.0': - dependencies: - '@aws-crypto/crc32': 3.0.0 - '@aws-crypto/crc32c': 3.0.0 - '@aws-sdk/types': 3.535.0 - '@smithy/is-array-buffer': 2.2.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/types': 2.12.0 - '@smithy/util-utf8': 2.3.0 - tslib: 2.6.2 - - '@aws-sdk/middleware-host-header@3.272.0': - dependencies: - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-host-header@3.535.0': - dependencies: - '@aws-sdk/types': 3.535.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@aws-sdk/middleware-location-constraint@3.535.0': - dependencies: - '@aws-sdk/types': 3.535.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@aws-sdk/middleware-logger@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-logger@3.535.0': - dependencies: - '@aws-sdk/types': 3.535.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@aws-sdk/middleware-recursion-detection@3.272.0': - dependencies: - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-recursion-detection@3.535.0': - dependencies: - '@aws-sdk/types': 3.535.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@aws-sdk/middleware-retry@3.272.0': - dependencies: - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/service-error-classification': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/util-middleware': 3.272.0 - '@aws-sdk/util-retry': 3.272.0 - tslib: 2.5.0 - uuid: 8.3.2 - optional: true - - '@aws-sdk/middleware-sdk-s3@3.535.0': - dependencies: - '@aws-sdk/types': 3.535.0 - '@aws-sdk/util-arn-parser': 3.535.0 - '@smithy/node-config-provider': 2.3.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/signature-v4': 2.2.0 - '@smithy/smithy-client': 2.5.0 - '@smithy/types': 2.12.0 - '@smithy/util-config-provider': 2.3.0 - tslib: 2.6.2 - - '@aws-sdk/middleware-sdk-sts@3.272.0': - dependencies: - '@aws-sdk/middleware-signing': 3.272.0 - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/signature-v4': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-serde@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-signing@3.272.0': - dependencies: - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/signature-v4': 3.272.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/util-middleware': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-signing@3.535.0': - dependencies: - '@aws-sdk/types': 3.535.0 - '@smithy/property-provider': 2.2.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/signature-v4': 2.2.0 - '@smithy/types': 2.12.0 - '@smithy/util-middleware': 2.2.0 - tslib: 2.6.2 - - '@aws-sdk/middleware-ssec@3.537.0': - dependencies: - '@aws-sdk/types': 3.535.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@aws-sdk/middleware-stack@3.272.0': - dependencies: - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-user-agent@3.272.0': - dependencies: - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/middleware-user-agent@3.540.0': - dependencies: - '@aws-sdk/types': 3.535.0 - '@aws-sdk/util-endpoints': 3.540.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@aws-sdk/node-config-provider@3.272.0': - dependencies: - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/shared-ini-file-loader': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/node-http-handler@3.272.0': - dependencies: - '@aws-sdk/abort-controller': 3.272.0 - '@aws-sdk/protocol-http': 3.272.0 - '@aws-sdk/querystring-builder': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/property-provider@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/protocol-http@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/querystring-builder@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - '@aws-sdk/util-uri-escape': 3.201.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/querystring-parser@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/region-config-resolver@3.535.0': - dependencies: - '@aws-sdk/types': 3.535.0 - '@smithy/node-config-provider': 2.3.0 - '@smithy/types': 2.12.0 - '@smithy/util-config-provider': 2.3.0 - '@smithy/util-middleware': 2.2.0 - tslib: 2.6.2 - - '@aws-sdk/s3-request-presigner@3.540.0': - dependencies: - '@aws-sdk/signature-v4-multi-region': 3.535.0 - '@aws-sdk/types': 3.535.0 - '@aws-sdk/util-format-url': 3.535.0 - '@smithy/middleware-endpoint': 2.5.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/smithy-client': 2.5.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@aws-sdk/service-error-classification@3.272.0': - optional: true - - '@aws-sdk/shared-ini-file-loader@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/signature-v4-multi-region@3.535.0': - dependencies: - '@aws-sdk/middleware-sdk-s3': 3.535.0 - '@aws-sdk/types': 3.535.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/signature-v4': 2.2.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@aws-sdk/signature-v4@3.272.0': - dependencies: - '@aws-sdk/is-array-buffer': 3.201.0 - '@aws-sdk/types': 3.272.0 - '@aws-sdk/util-hex-encoding': 3.201.0 - '@aws-sdk/util-middleware': 3.272.0 - '@aws-sdk/util-uri-escape': 3.201.0 - '@aws-sdk/util-utf8': 3.254.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/smithy-client@3.272.0': - dependencies: - '@aws-sdk/middleware-stack': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/token-providers@3.272.0': - dependencies: - '@aws-sdk/client-sso-oidc': 3.272.0 - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/shared-ini-file-loader': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - optional: true - - '@aws-sdk/token-providers@3.540.0(@aws-sdk/credential-provider-node@3.540.0)': - dependencies: - '@aws-sdk/client-sso-oidc': 3.540.0(@aws-sdk/credential-provider-node@3.540.0) - '@aws-sdk/types': 3.535.0 - '@smithy/property-provider': 2.2.0 - '@smithy/shared-ini-file-loader': 2.4.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - transitivePeerDependencies: - - '@aws-sdk/credential-provider-node' - - aws-crt - - '@aws-sdk/types@3.272.0': - dependencies: - tslib: 2.5.0 - optional: true - - '@aws-sdk/types@3.535.0': - dependencies: - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@aws-sdk/url-parser@3.272.0': - dependencies: - '@aws-sdk/querystring-parser': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-arn-parser@3.535.0': - dependencies: - tslib: 2.6.2 - - '@aws-sdk/util-base64@3.208.0': - dependencies: - '@aws-sdk/util-buffer-from': 3.208.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-body-length-browser@3.188.0': - dependencies: - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-body-length-node@3.208.0': - dependencies: - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-buffer-from@3.208.0': - dependencies: - '@aws-sdk/is-array-buffer': 3.201.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-config-provider@3.208.0': - dependencies: - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-defaults-mode-browser@3.272.0': - dependencies: - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/types': 3.272.0 - bowser: 2.11.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-defaults-mode-node@3.272.0': - dependencies: - '@aws-sdk/config-resolver': 3.272.0 - '@aws-sdk/credential-provider-imds': 3.272.0 - '@aws-sdk/node-config-provider': 3.272.0 - '@aws-sdk/property-provider': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-endpoints@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-endpoints@3.540.0': - dependencies: - '@aws-sdk/types': 3.535.0 - '@smithy/types': 2.12.0 - '@smithy/util-endpoints': 1.2.0 - tslib: 2.6.2 - - '@aws-sdk/util-format-url@3.535.0': - dependencies: - '@aws-sdk/types': 3.535.0 - '@smithy/querystring-builder': 2.2.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@aws-sdk/util-hex-encoding@3.201.0': - dependencies: - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-locate-window@3.208.0': - dependencies: - tslib: 2.6.2 - - '@aws-sdk/util-middleware@3.272.0': - dependencies: - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-retry@3.272.0': - dependencies: - '@aws-sdk/service-error-classification': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-uri-escape@3.201.0': - dependencies: - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-user-agent-browser@3.272.0': - dependencies: - '@aws-sdk/types': 3.272.0 - bowser: 2.11.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-user-agent-browser@3.535.0': - dependencies: - '@aws-sdk/types': 3.535.0 - '@smithy/types': 2.12.0 - bowser: 2.11.0 - tslib: 2.6.2 - - '@aws-sdk/util-user-agent-node@3.272.0': - dependencies: - '@aws-sdk/node-config-provider': 3.272.0 - '@aws-sdk/types': 3.272.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/util-user-agent-node@3.535.0': - dependencies: - '@aws-sdk/types': 3.535.0 - '@smithy/node-config-provider': 2.3.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@aws-sdk/util-utf8-browser@3.259.0': - dependencies: - tslib: 2.6.2 - - '@aws-sdk/util-utf8@3.254.0': - dependencies: - '@aws-sdk/util-buffer-from': 3.208.0 - tslib: 2.5.0 - optional: true - - '@aws-sdk/xml-builder@3.535.0': - dependencies: - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@babel/code-frame@7.18.6': - dependencies: - '@babel/highlight': 7.18.6 - - '@babel/code-frame@7.23.5': - dependencies: - '@babel/highlight': 7.23.4 - chalk: 2.4.2 - - '@babel/code-frame@7.24.2': - dependencies: - '@babel/highlight': 7.24.2 - picocolors: 1.0.0 - - '@babel/compat-data@7.21.0': {} - - '@babel/compat-data@7.23.5': {} - - '@babel/core@7.21.0': - dependencies: - '@ampproject/remapping': 2.2.0 - '@babel/code-frame': 7.18.6 - '@babel/generator': 7.21.1 - '@babel/helper-compilation-targets': 7.20.7(@babel/core@7.21.0) - '@babel/helper-module-transforms': 7.21.0 - '@babel/helpers': 7.21.0 - '@babel/parser': 7.21.1 - '@babel/template': 7.20.7 - '@babel/traverse': 7.21.0 - '@babel/types': 7.21.0 - convert-source-map: 1.9.0 - debug: 4.3.4 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - '@babel/core@7.23.7': - dependencies: - '@ampproject/remapping': 2.2.0 - '@babel/code-frame': 7.23.5 - '@babel/generator': 7.23.6 - '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.7) - '@babel/helpers': 7.23.8 - '@babel/parser': 7.23.6 - '@babel/template': 7.22.15 - '@babel/traverse': 7.23.7 - '@babel/types': 7.23.6 - convert-source-map: 2.0.0 - debug: 4.3.4 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - '@babel/core@7.24.3': - dependencies: - '@ampproject/remapping': 2.2.0 - '@babel/code-frame': 7.24.2 - '@babel/generator': 7.24.1 - '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.3) - '@babel/helpers': 7.24.1 - '@babel/parser': 7.24.1 - '@babel/template': 7.24.0 - '@babel/traverse': 7.24.1 - '@babel/types': 7.24.0 - convert-source-map: 2.0.0 - debug: 4.3.4 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - '@babel/generator@7.21.1': - dependencies: - '@babel/types': 7.21.0 - '@jridgewell/gen-mapping': 0.3.2 - '@jridgewell/trace-mapping': 0.3.17 - jsesc: 2.5.2 - - '@babel/generator@7.23.6': - dependencies: - '@babel/types': 7.23.6 - '@jridgewell/gen-mapping': 0.3.2 - '@jridgewell/trace-mapping': 0.3.17 - jsesc: 2.5.2 - - '@babel/generator@7.24.1': - dependencies: - '@babel/types': 7.24.0 - '@jridgewell/gen-mapping': 0.3.5 - '@jridgewell/trace-mapping': 0.3.25 - jsesc: 2.5.2 - - '@babel/helper-annotate-as-pure@7.22.5': - dependencies: - '@babel/types': 7.23.6 - - '@babel/helper-builder-binary-assignment-operator-visitor@7.22.15': - dependencies: - '@babel/types': 7.23.6 - - '@babel/helper-compilation-targets@7.20.7(@babel/core@7.21.0)': - dependencies: - '@babel/compat-data': 7.21.0 - '@babel/core': 7.21.0 - '@babel/helper-validator-option': 7.21.0 - browserslist: 4.21.5 - lru-cache: 5.1.1 - semver: 6.3.1 - - '@babel/helper-compilation-targets@7.23.6': - dependencies: - '@babel/compat-data': 7.23.5 - '@babel/helper-validator-option': 7.23.5 - browserslist: 4.22.2 - lru-cache: 5.1.1 - semver: 6.3.1 - - '@babel/helper-create-class-features-plugin@7.23.7(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-member-expression-to-functions': 7.23.0 - '@babel/helper-optimise-call-expression': 7.22.5 - '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.7) - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - semver: 6.3.1 - - '@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-annotate-as-pure': 7.22.5 - regexpu-core: 5.3.1 - semver: 6.3.1 - - '@babel/helper-define-polyfill-provider@0.4.4(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-plugin-utils': 7.22.5 - debug: 4.3.4 - lodash.debounce: 4.0.8 - resolve: 1.22.8 - transitivePeerDependencies: - - supports-color - - '@babel/helper-define-polyfill-provider@0.5.0(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-plugin-utils': 7.22.5 - debug: 4.3.4 - lodash.debounce: 4.0.8 - resolve: 1.22.8 - transitivePeerDependencies: - - supports-color - - '@babel/helper-environment-visitor@7.18.9': {} - - '@babel/helper-environment-visitor@7.22.20': {} - - '@babel/helper-function-name@7.21.0': - dependencies: - '@babel/template': 7.20.7 - '@babel/types': 7.21.0 - - '@babel/helper-function-name@7.23.0': - dependencies: - '@babel/template': 7.22.15 - '@babel/types': 7.23.6 - - '@babel/helper-hoist-variables@7.18.6': - dependencies: - '@babel/types': 7.21.0 - - '@babel/helper-hoist-variables@7.22.5': - dependencies: - '@babel/types': 7.23.6 - - '@babel/helper-member-expression-to-functions@7.23.0': - dependencies: - '@babel/types': 7.23.6 - - '@babel/helper-module-imports@7.18.6': - dependencies: - '@babel/types': 7.21.0 - - '@babel/helper-module-imports@7.22.15': - dependencies: - '@babel/types': 7.23.6 - - '@babel/helper-module-transforms@7.21.0': - 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.21.0 - '@babel/types': 7.21.0 - transitivePeerDependencies: - - supports-color - - '@babel/helper-module-transforms@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-module-imports': 7.22.15 - '@babel/helper-simple-access': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/helper-validator-identifier': 7.22.20 - - '@babel/helper-module-transforms@7.23.3(@babel/core@7.24.3)': - dependencies: - '@babel/core': 7.24.3 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-module-imports': 7.22.15 - '@babel/helper-simple-access': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/helper-validator-identifier': 7.22.20 - - '@babel/helper-optimise-call-expression@7.22.5': - dependencies: - '@babel/types': 7.23.6 - - '@babel/helper-plugin-utils@7.20.2': {} - - '@babel/helper-plugin-utils@7.22.5': {} - - '@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-wrap-function': 7.22.20 - - '@babel/helper-replace-supers@7.22.20(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-member-expression-to-functions': 7.23.0 - '@babel/helper-optimise-call-expression': 7.22.5 - - '@babel/helper-simple-access@7.20.2': - dependencies: - '@babel/types': 7.21.0 - - '@babel/helper-simple-access@7.22.5': - dependencies: - '@babel/types': 7.23.6 - - '@babel/helper-skip-transparent-expression-wrappers@7.22.5': - dependencies: - '@babel/types': 7.23.6 - - '@babel/helper-split-export-declaration@7.18.6': - dependencies: - '@babel/types': 7.21.0 - - '@babel/helper-split-export-declaration@7.22.6': - dependencies: - '@babel/types': 7.23.6 - - '@babel/helper-string-parser@7.19.4': {} - - '@babel/helper-string-parser@7.23.4': {} - - '@babel/helper-validator-identifier@7.19.1': {} - - '@babel/helper-validator-identifier@7.22.20': {} - - '@babel/helper-validator-option@7.21.0': {} - - '@babel/helper-validator-option@7.23.5': {} - - '@babel/helper-wrap-function@7.22.20': - dependencies: - '@babel/helper-function-name': 7.23.0 - '@babel/template': 7.22.15 - '@babel/types': 7.23.6 - - '@babel/helpers@7.21.0': - dependencies: - '@babel/template': 7.20.7 - '@babel/traverse': 7.21.0 - '@babel/types': 7.21.0 - transitivePeerDependencies: - - supports-color - - '@babel/helpers@7.23.8': - dependencies: - '@babel/template': 7.22.15 - '@babel/traverse': 7.23.7 - '@babel/types': 7.23.6 - transitivePeerDependencies: - - supports-color - - '@babel/helpers@7.24.1': - dependencies: - '@babel/template': 7.24.0 - '@babel/traverse': 7.24.1 - '@babel/types': 7.24.0 - transitivePeerDependencies: - - supports-color - - '@babel/highlight@7.18.6': - dependencies: - '@babel/helper-validator-identifier': 7.19.1 - chalk: 2.4.2 - js-tokens: 4.0.0 - - '@babel/highlight@7.23.4': - dependencies: - '@babel/helper-validator-identifier': 7.22.20 - chalk: 2.4.2 - js-tokens: 4.0.0 - - '@babel/highlight@7.24.2': - dependencies: - '@babel/helper-validator-identifier': 7.22.20 - chalk: 2.4.2 - js-tokens: 4.0.0 - picocolors: 1.0.0 - - '@babel/parser@7.21.1': - dependencies: - '@babel/types': 7.21.0 - - '@babel/parser@7.23.6': - dependencies: - '@babel/types': 7.23.6 - - '@babel/parser@7.24.1': - dependencies: - '@babel/types': 7.23.6 - - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.23.7) - - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.23.7(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-proposal-export-namespace-from@7.18.9(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.21.0) - - '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - - '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.22.5 - optional: true - - '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.22.5 - optional: true - - '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.22.5 - optional: true - - '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.20.2 - - '@babel/plugin-syntax-flow@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-import-assertions@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-import-attributes@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.22.5 - optional: true - - '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.22.5 - optional: true - - '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-jsx@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.22.5 - optional: true - - '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.22.5 - optional: true - - '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.22.5 - optional: true - - '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.22.5 - optional: true - - '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.22.5 - optional: true - - '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.22.5 - optional: true - - '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-plugin-utils': 7.22.5 - optional: true - - '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-typescript@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-arrow-functions@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-async-generator-functions@7.23.7(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.7) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.7) - - '@babel/plugin-transform-async-to-generator@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-module-imports': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.7) - - '@babel/plugin-transform-block-scoped-functions@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-block-scoping@7.23.4(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-class-properties@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-create-class-features-plugin': 7.23.7(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-class-static-block@7.23.4(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-create-class-features-plugin': 7.23.7(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.7) - - '@babel/plugin-transform-classes@7.23.8(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.7) - '@babel/helper-split-export-declaration': 7.22.6 - globals: 11.12.0 - - '@babel/plugin-transform-computed-properties@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/template': 7.22.15 - - '@babel/plugin-transform-destructuring@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-dotall-regex@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-duplicate-keys@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-dynamic-import@7.23.4(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.7) - - '@babel/plugin-transform-exponentiation-operator@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-export-namespace-from@7.23.4(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.7) - - '@babel/plugin-transform-flow-strip-types@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-flow': 7.23.3(@babel/core@7.23.7) - - '@babel/plugin-transform-for-of@7.23.6(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - - '@babel/plugin-transform-function-name@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-json-strings@7.23.4(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.7) - - '@babel/plugin-transform-literals@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-logical-assignment-operators@7.23.4(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.7) - - '@babel/plugin-transform-member-expression-literals@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-modules-amd@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-modules-commonjs@7.20.11(@babel/core@7.21.0)': - dependencies: - '@babel/core': 7.21.0 - '@babel/helper-module-transforms': 7.21.0 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-simple-access': 7.20.2 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-modules-commonjs@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-simple-access': 7.22.5 - - '@babel/plugin-transform-modules-systemjs@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-identifier': 7.22.20 - - '@babel/plugin-transform-modules-umd@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-new-target@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-nullish-coalescing-operator@7.23.4(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.7) - - '@babel/plugin-transform-numeric-separator@7.23.4(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.7) - - '@babel/plugin-transform-object-rest-spread@7.23.4(@babel/core@7.23.7)': - dependencies: - '@babel/compat-data': 7.23.5 - '@babel/core': 7.23.7 - '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.23.7) - - '@babel/plugin-transform-object-super@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.7) - - '@babel/plugin-transform-optional-catch-binding@7.23.4(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.7) - - '@babel/plugin-transform-optional-chaining@7.23.4(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.7) - - '@babel/plugin-transform-parameters@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-private-methods@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-create-class-features-plugin': 7.23.7(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-private-property-in-object@7.23.4(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.23.7(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.7) - - '@babel/plugin-transform-property-literals@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-react-constant-elements@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-react-display-name@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-react-jsx-development@7.22.5(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.23.7) - - '@babel/plugin-transform-react-jsx@7.23.4(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-module-imports': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.23.7) - '@babel/types': 7.23.6 - - '@babel/plugin-transform-react-pure-annotations@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-regenerator@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - regenerator-transform: 0.15.2 - - '@babel/plugin-transform-reserved-words@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-runtime@7.23.7(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-module-imports': 7.22.15 - '@babel/helper-plugin-utils': 7.22.5 - babel-plugin-polyfill-corejs2: 0.4.8(@babel/core@7.23.7) - babel-plugin-polyfill-corejs3: 0.8.7(@babel/core@7.23.7) - babel-plugin-polyfill-regenerator: 0.5.5(@babel/core@7.23.7) - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - '@babel/plugin-transform-shorthand-properties@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-spread@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 - - '@babel/plugin-transform-sticky-regex@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-template-literals@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-typeof-symbol@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-typescript@7.23.6(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-annotate-as-pure': 7.22.5 - '@babel/helper-create-class-features-plugin': 7.23.7(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 - '@babel/plugin-syntax-typescript': 7.23.3(@babel/core@7.23.7) - - '@babel/plugin-transform-unicode-escapes@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-unicode-property-regex@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-unicode-regex@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/plugin-transform-unicode-sets-regex@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.7) - '@babel/helper-plugin-utils': 7.22.5 - - '@babel/preset-env@7.23.8(@babel/core@7.23.7)': - dependencies: - '@babel/compat-data': 7.23.5 - '@babel/core': 7.23.7 - '@babel/helper-compilation-targets': 7.23.6 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.23.5 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.23.7(@babel/core@7.23.7) - '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.7) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.7) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.23.7) - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.7) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-import-assertions': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-syntax-import-attributes': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.23.7) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.7) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.7) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.7) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.23.7) - '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.23.7) - '@babel/plugin-transform-arrow-functions': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-async-generator-functions': 7.23.7(@babel/core@7.23.7) - '@babel/plugin-transform-async-to-generator': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-block-scoped-functions': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-block-scoping': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-class-properties': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-class-static-block': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-classes': 7.23.8(@babel/core@7.23.7) - '@babel/plugin-transform-computed-properties': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-destructuring': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-dotall-regex': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-duplicate-keys': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-dynamic-import': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-exponentiation-operator': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-export-namespace-from': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-for-of': 7.23.6(@babel/core@7.23.7) - '@babel/plugin-transform-function-name': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-json-strings': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-literals': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-logical-assignment-operators': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-member-expression-literals': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-modules-amd': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-modules-systemjs': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-modules-umd': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.23.7) - '@babel/plugin-transform-new-target': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-nullish-coalescing-operator': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-numeric-separator': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-object-rest-spread': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-object-super': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-optional-catch-binding': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-private-methods': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-private-property-in-object': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-property-literals': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-regenerator': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-reserved-words': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-shorthand-properties': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-spread': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-sticky-regex': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-template-literals': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-typeof-symbol': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-unicode-escapes': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-unicode-property-regex': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-unicode-regex': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-unicode-sets-regex': 7.23.3(@babel/core@7.23.7) - '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.23.7) - babel-plugin-polyfill-corejs2: 0.4.8(@babel/core@7.23.7) - babel-plugin-polyfill-corejs3: 0.8.7(@babel/core@7.23.7) - babel-plugin-polyfill-regenerator: 0.5.5(@babel/core@7.23.7) - core-js-compat: 3.35.0 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - '@babel/preset-flow@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.23.5 - '@babel/plugin-transform-flow-strip-types': 7.23.3(@babel/core@7.23.7) - - '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/types': 7.23.6 - esutils: 2.0.3 - - '@babel/preset-react@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.23.5 - '@babel/plugin-transform-react-display-name': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-react-jsx-development': 7.22.5(@babel/core@7.23.7) - '@babel/plugin-transform-react-pure-annotations': 7.23.3(@babel/core@7.23.7) - - '@babel/preset-typescript@7.23.3(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-plugin-utils': 7.22.5 - '@babel/helper-validator-option': 7.23.5 - '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-typescript': 7.23.6(@babel/core@7.23.7) - - '@babel/register@7.23.7(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - clone-deep: 4.0.1 - find-cache-dir: 2.1.0 - make-dir: 2.1.0 - pirates: 4.0.6 - source-map-support: 0.5.21 - - '@babel/regjsgen@0.8.0': {} - - '@babel/runtime@7.23.8': - dependencies: - regenerator-runtime: 0.14.1 - - '@babel/template@7.20.7': - dependencies: - '@babel/code-frame': 7.18.6 - '@babel/parser': 7.21.1 - '@babel/types': 7.21.0 - - '@babel/template@7.22.15': - dependencies: - '@babel/code-frame': 7.23.5 - '@babel/parser': 7.23.6 - '@babel/types': 7.23.6 - - '@babel/template@7.24.0': - dependencies: - '@babel/code-frame': 7.24.2 - '@babel/parser': 7.24.1 - '@babel/types': 7.24.0 - - '@babel/traverse@7.21.0': - dependencies: - '@babel/code-frame': 7.18.6 - '@babel/generator': 7.21.1 - '@babel/helper-environment-visitor': 7.18.9 - '@babel/helper-function-name': 7.21.0 - '@babel/helper-hoist-variables': 7.18.6 - '@babel/helper-split-export-declaration': 7.18.6 - '@babel/parser': 7.21.1 - '@babel/types': 7.21.0 - debug: 4.3.4 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - - '@babel/traverse@7.23.7': - dependencies: - '@babel/code-frame': 7.23.5 - '@babel/generator': 7.23.6 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/parser': 7.23.6 - '@babel/types': 7.23.6 - debug: 4.3.4 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - - '@babel/traverse@7.24.1': - dependencies: - '@babel/code-frame': 7.24.2 - '@babel/generator': 7.24.1 - '@babel/helper-environment-visitor': 7.22.20 - '@babel/helper-function-name': 7.23.0 - '@babel/helper-hoist-variables': 7.22.5 - '@babel/helper-split-export-declaration': 7.22.6 - '@babel/parser': 7.24.1 - '@babel/types': 7.24.0 - debug: 4.3.4 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - - '@babel/types@7.21.0': - dependencies: - '@babel/helper-string-parser': 7.19.4 - '@babel/helper-validator-identifier': 7.19.1 - to-fast-properties: 2.0.0 - - '@babel/types@7.23.6': - dependencies: - '@babel/helper-string-parser': 7.23.4 - '@babel/helper-validator-identifier': 7.22.20 - to-fast-properties: 2.0.0 - - '@babel/types@7.24.0': - dependencies: - '@babel/helper-string-parser': 7.23.4 - '@babel/helper-validator-identifier': 7.22.20 - to-fast-properties: 2.0.0 - - '@base2/pretty-print-object@1.0.1': {} - - '@bcoe/v8-coverage@0.2.3': {} - - '@colors/colors@1.5.0': {} - - '@cspotcode/source-map-support@0.8.1': - dependencies: - '@jridgewell/trace-mapping': 0.3.9 - - '@dabh/diagnostics@2.0.3': - dependencies: - colorspace: 1.1.4 - enabled: 2.0.0 - kuler: 2.0.0 - - '@discoveryjs/json-ext@0.5.7': {} - - '@emotion/babel-plugin@11.10.6': - dependencies: - '@babel/helper-module-imports': 7.22.15 - '@babel/runtime': 7.23.8 - '@emotion/hash': 0.9.0 - '@emotion/memoize': 0.8.0 - '@emotion/serialize': 1.1.1 - babel-plugin-macros: 3.1.0 - convert-source-map: 1.9.0 - escape-string-regexp: 4.0.0 - find-root: 1.1.0 - source-map: 0.5.7 - stylis: 4.1.3 - - '@emotion/cache@11.10.5': - dependencies: - '@emotion/memoize': 0.8.0 - '@emotion/sheet': 1.2.1 - '@emotion/utils': 1.2.0 - '@emotion/weak-memoize': 0.3.0 - stylis: 4.1.3 - - '@emotion/hash@0.9.0': {} - - '@emotion/is-prop-valid@0.8.8': - dependencies: - '@emotion/memoize': 0.7.4 - optional: true - - '@emotion/memoize@0.7.4': - optional: true - - '@emotion/memoize@0.8.0': {} - - '@emotion/react@11.10.6(@types/react@18.2.55)(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@emotion/babel-plugin': 11.10.6 - '@emotion/cache': 11.10.5 - '@emotion/serialize': 1.1.1 - '@emotion/use-insertion-effect-with-fallbacks': 1.0.0(react@18.2.0) - '@emotion/utils': 1.2.0 - '@emotion/weak-memoize': 0.3.0 - hoist-non-react-statics: 3.3.2 - react: 18.2.0 - optionalDependencies: - '@types/react': 18.2.55 - - '@emotion/serialize@1.1.1': - dependencies: - '@emotion/hash': 0.9.0 - '@emotion/memoize': 0.8.0 - '@emotion/unitless': 0.8.0 - '@emotion/utils': 1.2.0 - csstype: 3.1.1 - - '@emotion/server@11.10.0': - dependencies: - '@emotion/utils': 1.2.0 - html-tokenize: 2.0.1 - multipipe: 1.0.2 - through: 2.3.8 - - '@emotion/sheet@1.2.1': {} - - '@emotion/unitless@0.8.0': {} - - '@emotion/use-insertion-effect-with-fallbacks@1.0.0(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@emotion/utils@1.2.0': {} - - '@emotion/weak-memoize@0.3.0': {} - - '@esbuild/aix-ppc64@0.19.11': - optional: true - - '@esbuild/aix-ppc64@0.25.9': - optional: true - - '@esbuild/android-arm64@0.18.6': - optional: true - - '@esbuild/android-arm64@0.19.11': - optional: true - - '@esbuild/android-arm64@0.25.9': - optional: true - - '@esbuild/android-arm@0.18.6': - optional: true - - '@esbuild/android-arm@0.19.11': - optional: true - - '@esbuild/android-arm@0.25.9': - optional: true - - '@esbuild/android-x64@0.18.6': - optional: true - - '@esbuild/android-x64@0.19.11': - optional: true - - '@esbuild/android-x64@0.25.9': - optional: true - - '@esbuild/darwin-arm64@0.18.6': - optional: true - - '@esbuild/darwin-arm64@0.19.11': - optional: true - - '@esbuild/darwin-arm64@0.25.9': - optional: true - - '@esbuild/darwin-x64@0.18.6': - optional: true - - '@esbuild/darwin-x64@0.19.11': - optional: true - - '@esbuild/darwin-x64@0.25.9': - optional: true - - '@esbuild/freebsd-arm64@0.18.6': - optional: true - - '@esbuild/freebsd-arm64@0.19.11': - optional: true - - '@esbuild/freebsd-arm64@0.25.9': - optional: true - - '@esbuild/freebsd-x64@0.18.6': - optional: true - - '@esbuild/freebsd-x64@0.19.11': - optional: true - - '@esbuild/freebsd-x64@0.25.9': - optional: true - - '@esbuild/linux-arm64@0.18.6': - optional: true - - '@esbuild/linux-arm64@0.19.11': - optional: true - - '@esbuild/linux-arm64@0.25.9': - optional: true - - '@esbuild/linux-arm@0.18.6': - optional: true - - '@esbuild/linux-arm@0.19.11': - optional: true - - '@esbuild/linux-arm@0.25.9': - optional: true - - '@esbuild/linux-ia32@0.18.6': - optional: true - - '@esbuild/linux-ia32@0.19.11': - optional: true - - '@esbuild/linux-ia32@0.25.9': - optional: true - - '@esbuild/linux-loong64@0.18.6': - optional: true - - '@esbuild/linux-loong64@0.19.11': - optional: true - - '@esbuild/linux-loong64@0.25.9': - optional: true - - '@esbuild/linux-mips64el@0.18.6': - optional: true - - '@esbuild/linux-mips64el@0.19.11': - optional: true - - '@esbuild/linux-mips64el@0.25.9': - optional: true - - '@esbuild/linux-ppc64@0.18.6': - optional: true - - '@esbuild/linux-ppc64@0.19.11': - optional: true - - '@esbuild/linux-ppc64@0.25.9': - optional: true - - '@esbuild/linux-riscv64@0.18.6': - optional: true - - '@esbuild/linux-riscv64@0.19.11': - optional: true - - '@esbuild/linux-riscv64@0.25.9': - optional: true - - '@esbuild/linux-s390x@0.18.6': - optional: true - - '@esbuild/linux-s390x@0.19.11': - optional: true - - '@esbuild/linux-s390x@0.25.9': - optional: true - - '@esbuild/linux-x64@0.18.6': - optional: true - - '@esbuild/linux-x64@0.19.11': - optional: true - - '@esbuild/linux-x64@0.25.9': - optional: true - - '@esbuild/netbsd-arm64@0.25.9': - optional: true - - '@esbuild/netbsd-x64@0.18.6': - optional: true - - '@esbuild/netbsd-x64@0.19.11': - optional: true - - '@esbuild/netbsd-x64@0.25.9': - optional: true - - '@esbuild/openbsd-arm64@0.25.9': - optional: true - - '@esbuild/openbsd-x64@0.18.6': - optional: true - - '@esbuild/openbsd-x64@0.19.11': - optional: true - - '@esbuild/openbsd-x64@0.25.9': - optional: true - - '@esbuild/openharmony-arm64@0.25.9': - optional: true - - '@esbuild/sunos-x64@0.18.6': - optional: true - - '@esbuild/sunos-x64@0.19.11': - optional: true - - '@esbuild/sunos-x64@0.25.9': - optional: true - - '@esbuild/win32-arm64@0.18.6': - optional: true - - '@esbuild/win32-arm64@0.19.11': - optional: true - - '@esbuild/win32-arm64@0.25.9': - optional: true - - '@esbuild/win32-ia32@0.18.6': - optional: true - - '@esbuild/win32-ia32@0.19.11': - optional: true - - '@esbuild/win32-ia32@0.25.9': - optional: true - - '@esbuild/win32-x64@0.18.6': - optional: true - - '@esbuild/win32-x64@0.19.11': - optional: true - - '@esbuild/win32-x64@0.25.9': - optional: true - - '@eslint-community/eslint-utils@4.4.0(eslint@8.56.0)': - dependencies: - eslint: 8.56.0 - eslint-visitor-keys: 3.4.3 - - '@eslint-community/regexpp@4.10.0': {} - - '@eslint/eslintrc@2.1.4': - dependencies: - ajv: 6.12.6 - debug: 4.3.4 - espree: 9.6.1 - globals: 13.20.0 - ignore: 5.2.4 - import-fresh: 3.3.0 - js-yaml: 4.1.0 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color - - '@eslint/js@8.56.0': {} - - '@fal-works/esbuild-plugin-global-externals@2.1.2': {} - - '@floating-ui/core@1.5.0': - dependencies: - '@floating-ui/utils': 0.1.6 - - '@floating-ui/dom@1.5.3': - dependencies: - '@floating-ui/core': 1.5.0 - '@floating-ui/utils': 0.1.6 - - '@floating-ui/react-dom@2.0.2(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@floating-ui/dom': 1.5.3 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@floating-ui/react@0.24.8(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@floating-ui/react-dom': 2.0.2(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - aria-hidden: 1.2.3 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - tabbable: 6.1.1 - - '@floating-ui/utils@0.1.6': {} - - '@hookform/resolvers@3.3.4(react-hook-form@7.50.1(react@18.2.0))': - dependencies: - react-hook-form: 7.50.1(react@18.2.0) - - '@humanwhocodes/config-array@0.11.14': - dependencies: - '@humanwhocodes/object-schema': 2.0.2 - debug: 4.3.4 - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color - - '@humanwhocodes/module-importer@1.0.1': {} - - '@humanwhocodes/object-schema@2.0.2': {} - - '@ioredis/commands@1.2.0': {} - - '@isaacs/cliui@8.0.2': - dependencies: - string-width: 5.1.2 - string-width-cjs: string-width@4.2.3 - strip-ansi: 7.1.0 - strip-ansi-cjs: strip-ansi@6.0.1 - wrap-ansi: 8.1.0 - wrap-ansi-cjs: wrap-ansi@7.0.0 - - '@istanbuljs/load-nyc-config@1.1.0': - dependencies: - camelcase: 5.3.1 - find-up: 4.1.0 - get-package-type: 0.1.0 - js-yaml: 3.14.1 - resolve-from: 5.0.0 - - '@istanbuljs/schema@0.1.3': {} - - '@jest/console@29.7.0': - dependencies: - '@jest/types': 29.6.3 - '@types/node': 20.11.1 - chalk: 4.1.2 - jest-message-util: 29.7.0 - jest-util: 29.7.0 - slash: 3.0.0 - - '@jest/core@29.7.0(babel-plugin-macros@3.1.0)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2))': - dependencies: - '@jest/console': 29.7.0 - '@jest/reporters': 29.7.0 - '@jest/test-result': 29.7.0 - '@jest/transform': 29.7.0 - '@jest/types': 29.6.3 - '@types/node': 20.11.1 - ansi-escapes: 4.3.2 - chalk: 4.1.2 - ci-info: 3.8.0 - exit: 0.1.2 - graceful-fs: 4.2.11 - jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@20.11.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)) - jest-haste-map: 29.7.0 - jest-message-util: 29.7.0 - jest-regex-util: 29.6.3 - jest-resolve: 29.7.0 - jest-resolve-dependencies: 29.7.0 - jest-runner: 29.7.0 - jest-runtime: 29.7.0 - jest-snapshot: 29.7.0 - jest-util: 29.7.0 - jest-validate: 29.7.0 - jest-watcher: 29.7.0 - micromatch: 4.0.5 - pretty-format: 29.7.0 - slash: 3.0.0 - strip-ansi: 6.0.1 - transitivePeerDependencies: - - babel-plugin-macros - - supports-color - - ts-node - - '@jest/environment@29.7.0': - dependencies: - '@jest/fake-timers': 29.7.0 - '@jest/types': 29.6.3 - '@types/node': 20.11.1 - jest-mock: 29.7.0 - - '@jest/expect-utils@29.5.0': - dependencies: - jest-get-type: 29.4.3 - - '@jest/expect-utils@29.7.0': - dependencies: - jest-get-type: 29.6.3 - - '@jest/expect@29.7.0': - dependencies: - expect: 29.7.0 - jest-snapshot: 29.7.0 - transitivePeerDependencies: - - supports-color - - '@jest/fake-timers@29.7.0': - dependencies: - '@jest/types': 29.6.3 - '@sinonjs/fake-timers': 10.0.2 - '@types/node': 20.11.1 - jest-message-util: 29.7.0 - jest-mock: 29.7.0 - jest-util: 29.7.0 - - '@jest/globals@29.7.0': - dependencies: - '@jest/environment': 29.7.0 - '@jest/expect': 29.7.0 - '@jest/types': 29.6.3 - jest-mock: 29.7.0 - transitivePeerDependencies: - - supports-color - - '@jest/reporters@29.7.0': - dependencies: - '@bcoe/v8-coverage': 0.2.3 - '@jest/console': 29.7.0 - '@jest/test-result': 29.7.0 - '@jest/transform': 29.7.0 - '@jest/types': 29.6.3 - '@jridgewell/trace-mapping': 0.3.25 - '@types/node': 20.11.1 - chalk: 4.1.2 - collect-v8-coverage: 1.0.1 - exit: 0.1.2 - glob: 7.2.3 - graceful-fs: 4.2.11 - istanbul-lib-coverage: 3.2.0 - istanbul-lib-instrument: 6.0.2 - istanbul-lib-report: 3.0.0 - istanbul-lib-source-maps: 4.0.1 - istanbul-reports: 3.1.5 - jest-message-util: 29.7.0 - jest-util: 29.7.0 - jest-worker: 29.7.0 - slash: 3.0.0 - string-length: 4.0.2 - strip-ansi: 6.0.1 - v8-to-istanbul: 9.1.0 - transitivePeerDependencies: - - supports-color - - '@jest/schemas@29.4.3': - dependencies: - '@sinclair/typebox': 0.25.23 - - '@jest/schemas@29.6.3': - dependencies: - '@sinclair/typebox': 0.27.8 - - '@jest/source-map@29.6.3': - dependencies: - '@jridgewell/trace-mapping': 0.3.25 - callsites: 3.1.0 - graceful-fs: 4.2.11 - - '@jest/test-result@29.7.0': - dependencies: - '@jest/console': 29.7.0 - '@jest/types': 29.6.3 - '@types/istanbul-lib-coverage': 2.0.4 - collect-v8-coverage: 1.0.1 - - '@jest/test-sequencer@29.7.0': - dependencies: - '@jest/test-result': 29.7.0 - graceful-fs: 4.2.11 - jest-haste-map: 29.7.0 - slash: 3.0.0 - - '@jest/transform@29.5.0': - dependencies: - '@babel/core': 7.23.7 - '@jest/types': 29.5.0 - '@jridgewell/trace-mapping': 0.3.17 - babel-plugin-istanbul: 6.1.1 - chalk: 4.1.2 - convert-source-map: 2.0.0 - fast-json-stable-stringify: 2.1.0 - graceful-fs: 4.2.11 - jest-haste-map: 29.5.0 - jest-regex-util: 29.4.3 - jest-util: 29.5.0 - micromatch: 4.0.5 - pirates: 4.0.5 - slash: 3.0.0 - write-file-atomic: 4.0.2 - transitivePeerDependencies: - - supports-color - - '@jest/transform@29.7.0': - dependencies: - '@babel/core': 7.23.7 - '@jest/types': 29.6.3 - '@jridgewell/trace-mapping': 0.3.25 - babel-plugin-istanbul: 6.1.1 - chalk: 4.1.2 - convert-source-map: 2.0.0 - fast-json-stable-stringify: 2.1.0 - graceful-fs: 4.2.11 - jest-haste-map: 29.7.0 - jest-regex-util: 29.6.3 - jest-util: 29.7.0 - micromatch: 4.0.5 - pirates: 4.0.6 - slash: 3.0.0 - write-file-atomic: 4.0.2 - transitivePeerDependencies: - - supports-color - - '@jest/types@27.5.1': - dependencies: - '@types/istanbul-lib-coverage': 2.0.4 - '@types/istanbul-reports': 3.0.1 - '@types/node': 20.11.1 - '@types/yargs': 16.0.9 - chalk: 4.1.2 - - '@jest/types@29.5.0': - dependencies: - '@jest/schemas': 29.4.3 - '@types/istanbul-lib-coverage': 2.0.4 - '@types/istanbul-reports': 3.0.1 - '@types/node': 20.11.1 - '@types/yargs': 17.0.22 - chalk: 4.1.2 - - '@jest/types@29.6.3': - dependencies: - '@jest/schemas': 29.6.3 - '@types/istanbul-lib-coverage': 2.0.4 - '@types/istanbul-reports': 3.0.1 - '@types/node': 20.11.1 - '@types/yargs': 17.0.22 - chalk: 4.1.2 - - '@jridgewell/gen-mapping@0.1.1': - dependencies: - '@jridgewell/set-array': 1.1.2 - '@jridgewell/sourcemap-codec': 1.4.14 - - '@jridgewell/gen-mapping@0.3.2': - dependencies: - '@jridgewell/set-array': 1.1.2 - '@jridgewell/sourcemap-codec': 1.4.14 - '@jridgewell/trace-mapping': 0.3.17 - - '@jridgewell/gen-mapping@0.3.5': - dependencies: - '@jridgewell/set-array': 1.2.1 - '@jridgewell/sourcemap-codec': 1.4.15 - '@jridgewell/trace-mapping': 0.3.25 - - '@jridgewell/resolve-uri@3.1.0': {} - - '@jridgewell/set-array@1.1.2': {} - - '@jridgewell/set-array@1.2.1': {} - - '@jridgewell/source-map@0.3.2': - dependencies: - '@jridgewell/gen-mapping': 0.3.2 - '@jridgewell/trace-mapping': 0.3.17 - - '@jridgewell/sourcemap-codec@1.4.14': {} - - '@jridgewell/sourcemap-codec@1.4.15': {} - - '@jridgewell/trace-mapping@0.3.17': - dependencies: - '@jridgewell/resolve-uri': 3.1.0 - '@jridgewell/sourcemap-codec': 1.4.14 - - '@jridgewell/trace-mapping@0.3.25': - dependencies: - '@jridgewell/resolve-uri': 3.1.0 - '@jridgewell/sourcemap-codec': 1.4.15 - - '@jridgewell/trace-mapping@0.3.9': - dependencies: - '@jridgewell/resolve-uri': 3.1.0 - '@jridgewell/sourcemap-codec': 1.4.14 - - '@juggle/resize-observer@3.4.0': {} - - '@koa/cors@4.0.0': - dependencies: - vary: 1.1.2 - - '@koa/multer@3.0.2(multer@1.4.5-lts.1)': - dependencies: - fix-esm: 1.0.1 - multer: 1.4.5-lts.1 - transitivePeerDependencies: - - supports-color - - '@koa/router@12.0.0': - dependencies: - http-errors: 2.0.0 - koa-compose: 4.1.0 - methods: 1.1.2 - path-to-regexp: 6.2.1 - - '@mantine/core@7.5.2(@mantine/hooks@7.5.2(react@18.2.0))(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@floating-ui/react': 0.24.8(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@mantine/hooks': 7.5.2(react@18.2.0) - clsx: 2.0.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - react-number-format: 5.3.1(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - react-remove-scroll: 2.5.7(@types/react@18.2.55)(react@18.2.0) - react-textarea-autosize: 8.5.3(@types/react@18.2.55)(react@18.2.0) - type-fest: 3.13.1 - transitivePeerDependencies: - - '@types/react' - - '@mantine/dates@7.5.2(@mantine/core@7.5.2(@mantine/hooks@7.5.2(react@18.2.0))(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@mantine/hooks@7.5.2(react@18.2.0))(dayjs@1.11.10)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@mantine/core': 7.5.2(@mantine/hooks@7.5.2(react@18.2.0))(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@mantine/hooks': 7.5.2(react@18.2.0) - clsx: 2.0.0 - dayjs: 1.11.10 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@mantine/dropzone@7.5.2(@mantine/core@7.5.2(@mantine/hooks@7.5.2(react@18.2.0))(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@mantine/hooks@7.5.2(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@mantine/core': 7.5.2(@mantine/hooks@7.5.2(react@18.2.0))(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@mantine/hooks': 7.5.2(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - react-dropzone-esm: 15.0.1(react@18.2.0) - - '@mantine/hooks@7.5.2(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@mantine/modals@7.5.2(@mantine/core@7.5.2(@mantine/hooks@7.5.2(react@18.2.0))(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@mantine/hooks@7.5.2(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@mantine/core': 7.5.2(@mantine/hooks@7.5.2(react@18.2.0))(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@mantine/hooks': 7.5.2(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@mantine/next@6.0.21(@emotion/react@11.10.6(@types/react@18.2.55)(react@18.2.0))(@emotion/server@11.10.0)(next@14.1.0(@babel/core@7.23.7)(babel-plugin-macros@3.1.0)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@mantine/ssr': 6.0.21(@emotion/react@11.10.6(@types/react@18.2.55)(react@18.2.0))(@emotion/server@11.10.0)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@mantine/styles': 6.0.21(@emotion/react@11.10.6(@types/react@18.2.55)(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - next: 14.1.0(@babel/core@7.23.7)(babel-plugin-macros@3.1.0)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - transitivePeerDependencies: - - '@emotion/react' - - '@emotion/server' - - '@mantine/notifications@7.5.2(@mantine/core@7.5.2(@mantine/hooks@7.5.2(react@18.2.0))(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@mantine/hooks@7.5.2(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@mantine/core': 7.5.2(@mantine/hooks@7.5.2(react@18.2.0))(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@mantine/hooks': 7.5.2(react@18.2.0) - '@mantine/store': 7.5.2(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - react-transition-group: 4.4.5(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - - '@mantine/ssr@6.0.21(@emotion/react@11.10.6(@types/react@18.2.55)(react@18.2.0))(@emotion/server@11.10.0)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@emotion/react': 11.10.6(@types/react@18.2.55)(react@18.2.0) - '@emotion/server': 11.10.0 - '@mantine/styles': 6.0.21(@emotion/react@11.10.6(@types/react@18.2.55)(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - html-react-parser: 1.4.12(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@mantine/store@7.5.2(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@mantine/styles@6.0.21(@emotion/react@11.10.6(@types/react@18.2.55)(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@emotion/react': 11.10.6(@types/react@18.2.55)(react@18.2.0) - clsx: 1.1.1 - csstype: 3.0.9 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@mdx-js/react@2.3.0(react@18.2.0)': - dependencies: - '@types/mdx': 2.0.10 - '@types/react': 18.2.55 - react: 18.2.0 - - '@mongodb-js/saslprep@1.1.5': - dependencies: - sparse-bitfield: 3.0.3 - - '@ndelangen/get-tarball@3.0.9': - dependencies: - gunzip-maybe: 1.4.2 - pump: 3.0.0 - tar-fs: 2.1.1 - - '@next/env@14.0.5-canary.46': {} - - '@next/env@14.1.0': {} - - '@next/eslint-plugin-next@14.1.0': - dependencies: - glob: 10.3.10 - - '@next/swc-darwin-arm64@14.0.5-canary.46': - optional: true - - '@next/swc-darwin-arm64@14.1.0': - optional: true - - '@next/swc-darwin-x64@14.0.5-canary.46': - optional: true - - '@next/swc-darwin-x64@14.1.0': - optional: true - - '@next/swc-linux-arm64-gnu@14.0.5-canary.46': - optional: true - - '@next/swc-linux-arm64-gnu@14.1.0': - optional: true - - '@next/swc-linux-arm64-musl@14.0.5-canary.46': - optional: true - - '@next/swc-linux-arm64-musl@14.1.0': - optional: true - - '@next/swc-linux-x64-gnu@14.0.5-canary.46': - optional: true - - '@next/swc-linux-x64-gnu@14.1.0': - optional: true - - '@next/swc-linux-x64-musl@14.0.5-canary.46': - optional: true - - '@next/swc-linux-x64-musl@14.1.0': - optional: true - - '@next/swc-win32-arm64-msvc@14.0.5-canary.46': - optional: true - - '@next/swc-win32-arm64-msvc@14.1.0': - optional: true - - '@next/swc-win32-ia32-msvc@14.0.5-canary.46': - optional: true - - '@next/swc-win32-ia32-msvc@14.1.0': - optional: true - - '@next/swc-win32-x64-msvc@14.0.5-canary.46': - optional: true - - '@next/swc-win32-x64-msvc@14.1.0': - optional: true - - '@nodelib/fs.scandir@2.1.5': - dependencies: - '@nodelib/fs.stat': 2.0.5 - run-parallel: 1.2.0 - - '@nodelib/fs.stat@2.0.5': {} - - '@nodelib/fs.walk@1.2.8': - dependencies: - '@nodelib/fs.scandir': 2.1.5 - fastq: 1.15.0 - - '@one-ini/wasm@0.1.1': {} - - '@paralect/node-mongo@3.2.0(@aws-sdk/credential-providers@3.272.0)(gcp-metadata@5.2.0)(socks@2.7.1)': - dependencies: - lodash: 4.17.21 - mongodb: 6.1.0(@aws-sdk/credential-providers@3.272.0)(gcp-metadata@5.2.0)(socks@2.7.1) - transitivePeerDependencies: - - '@aws-sdk/credential-providers' - - '@mongodb-js/zstd' - - gcp-metadata - - kerberos - - mongodb-client-encryption - - snappy - - socks - - '@pkgjs/parseargs@0.11.0': - optional: true - - '@pkgr/utils@2.3.1': - dependencies: - cross-spawn: 7.0.3 - is-glob: 4.0.3 - open: 8.4.2 - picocolors: 1.0.0 - tiny-glob: 0.2.9 - tslib: 2.5.0 - - '@pmmmwh/react-refresh-webpack-plugin@0.5.11(@types/webpack@5.28.5(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6))(react-refresh@0.14.0)(type-fest@3.13.1)(webpack-hot-middleware@2.26.0)(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6))': - dependencies: - ansi-html-community: 0.0.8 - common-path-prefix: 3.0.0 - core-js-pure: 3.35.0 - error-stack-parser: 2.1.4 - find-up: 5.0.0 - html-entities: 2.4.0 - loader-utils: 2.0.4 - react-refresh: 0.14.0 - schema-utils: 3.1.1 - source-map: 0.7.4 - webpack: 5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6) - optionalDependencies: - '@types/webpack': 5.28.5(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6) - type-fest: 3.13.1 - webpack-hot-middleware: 2.26.0 - - '@radix-ui/colors@1.0.1': {} - - '@radix-ui/number@1.0.1': - dependencies: - '@babel/runtime': 7.23.8 - - '@radix-ui/primitive@1.0.1': - dependencies: - '@babel/runtime': 7.23.8 - - '@radix-ui/react-arrow@1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - '@types/react-dom': 18.2.19 - - '@radix-ui/react-collapsible@1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/primitive': 1.0.1 - '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-context': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-id': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-presence': 1.0.1(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-use-controllable-state': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-use-layout-effect': 1.0.1(@types/react@18.2.55)(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - '@types/react-dom': 18.2.19 - - '@radix-ui/react-collection@1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-context': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-slot': 1.0.2(@types/react@18.2.55)(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - '@types/react-dom': 18.2.19 - - '@radix-ui/react-compose-refs@1.0.1(@types/react@18.2.55)(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - react: 18.2.0 - optionalDependencies: - '@types/react': 18.2.55 - - '@radix-ui/react-context@1.0.1(@types/react@18.2.55)(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - react: 18.2.0 - optionalDependencies: - '@types/react': 18.2.55 - - '@radix-ui/react-direction@1.0.1(@types/react@18.2.55)(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - react: 18.2.0 - optionalDependencies: - '@types/react': 18.2.55 - - '@radix-ui/react-dismissable-layer@1.0.4(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/primitive': 1.0.1 - '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-use-callback-ref': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-use-escape-keydown': 1.0.3(@types/react@18.2.55)(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - '@types/react-dom': 18.2.19 - - '@radix-ui/react-focus-guards@1.0.1(@types/react@18.2.55)(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - react: 18.2.0 - optionalDependencies: - '@types/react': 18.2.55 - - '@radix-ui/react-focus-scope@1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-use-callback-ref': 1.0.1(@types/react@18.2.55)(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - '@types/react-dom': 18.2.19 - - '@radix-ui/react-id@1.0.1(@types/react@18.2.55)(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/react-use-layout-effect': 1.0.1(@types/react@18.2.55)(react@18.2.0) - react: 18.2.0 - optionalDependencies: - '@types/react': 18.2.55 - - '@radix-ui/react-popover@1.0.6(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/primitive': 1.0.1 - '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-context': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-dismissable-layer': 1.0.4(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-focus-guards': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-focus-scope': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-id': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-popper': 1.1.2(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-portal': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-presence': 1.0.1(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-slot': 1.0.2(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-use-controllable-state': 1.0.1(@types/react@18.2.55)(react@18.2.0) - aria-hidden: 1.2.3 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - react-remove-scroll: 2.5.5(@types/react@18.2.55)(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - '@types/react-dom': 18.2.19 - - '@radix-ui/react-popper@1.1.2(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@floating-ui/react-dom': 2.0.2(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-arrow': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-context': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-use-callback-ref': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-use-layout-effect': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-use-rect': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-use-size': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/rect': 1.0.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - '@types/react-dom': 18.2.19 - - '@radix-ui/react-portal@1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - '@types/react-dom': 18.2.19 - - '@radix-ui/react-presence@1.0.1(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-use-layout-effect': 1.0.1(@types/react@18.2.55)(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - '@types/react-dom': 18.2.19 - - '@radix-ui/react-primitive@1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/react-slot': 1.0.2(@types/react@18.2.55)(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - '@types/react-dom': 18.2.19 - - '@radix-ui/react-roving-focus@1.0.4(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/primitive': 1.0.1 - '@radix-ui/react-collection': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-context': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-direction': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-id': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-use-callback-ref': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-use-controllable-state': 1.0.1(@types/react@18.2.55)(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - '@types/react-dom': 18.2.19 - - '@radix-ui/react-select@1.2.2(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/number': 1.0.1 - '@radix-ui/primitive': 1.0.1 - '@radix-ui/react-collection': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-context': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-direction': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-dismissable-layer': 1.0.4(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-focus-guards': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-focus-scope': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-id': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-popper': 1.1.2(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-portal': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-slot': 1.0.2(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-use-callback-ref': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-use-controllable-state': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-use-layout-effect': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-use-previous': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-visually-hidden': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - aria-hidden: 1.2.3 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - react-remove-scroll: 2.5.5(@types/react@18.2.55)(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - '@types/react-dom': 18.2.19 - - '@radix-ui/react-separator@1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - '@types/react-dom': 18.2.19 - - '@radix-ui/react-slot@1.0.2(@types/react@18.2.55)(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.55)(react@18.2.0) - react: 18.2.0 - optionalDependencies: - '@types/react': 18.2.55 - - '@radix-ui/react-toggle-group@1.0.4(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/primitive': 1.0.1 - '@radix-ui/react-context': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-direction': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-roving-focus': 1.0.4(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-toggle': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-use-controllable-state': 1.0.1(@types/react@18.2.55)(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - '@types/react-dom': 18.2.19 - - '@radix-ui/react-toggle@1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/primitive': 1.0.1 - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-use-controllable-state': 1.0.1(@types/react@18.2.55)(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - '@types/react-dom': 18.2.19 - - '@radix-ui/react-toolbar@1.0.4(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/primitive': 1.0.1 - '@radix-ui/react-context': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-direction': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-roving-focus': 1.0.4(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-separator': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-toggle-group': 1.0.4(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - '@types/react-dom': 18.2.19 - - '@radix-ui/react-tooltip@1.0.6(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/primitive': 1.0.1 - '@radix-ui/react-compose-refs': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-context': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-dismissable-layer': 1.0.4(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-id': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-popper': 1.1.2(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-portal': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-presence': 1.0.1(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-slot': 1.0.2(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-use-controllable-state': 1.0.1(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-visually-hidden': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - '@types/react-dom': 18.2.19 - - '@radix-ui/react-use-callback-ref@1.0.1(@types/react@18.2.55)(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - react: 18.2.0 - optionalDependencies: - '@types/react': 18.2.55 - - '@radix-ui/react-use-controllable-state@1.0.1(@types/react@18.2.55)(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/react-use-callback-ref': 1.0.1(@types/react@18.2.55)(react@18.2.0) - react: 18.2.0 - optionalDependencies: - '@types/react': 18.2.55 - - '@radix-ui/react-use-escape-keydown@1.0.3(@types/react@18.2.55)(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/react-use-callback-ref': 1.0.1(@types/react@18.2.55)(react@18.2.0) - react: 18.2.0 - optionalDependencies: - '@types/react': 18.2.55 - - '@radix-ui/react-use-layout-effect@1.0.1(@types/react@18.2.55)(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - react: 18.2.0 - optionalDependencies: - '@types/react': 18.2.55 - - '@radix-ui/react-use-previous@1.0.1(@types/react@18.2.55)(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - react: 18.2.0 - optionalDependencies: - '@types/react': 18.2.55 - - '@radix-ui/react-use-rect@1.0.1(@types/react@18.2.55)(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/rect': 1.0.1 - react: 18.2.0 - optionalDependencies: - '@types/react': 18.2.55 - - '@radix-ui/react-use-size@1.0.1(@types/react@18.2.55)(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/react-use-layout-effect': 1.0.1(@types/react@18.2.55)(react@18.2.0) - react: 18.2.0 - optionalDependencies: - '@types/react': 18.2.55 - - '@radix-ui/react-visually-hidden@1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@babel/runtime': 7.23.8 - '@radix-ui/react-primitive': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - '@types/react-dom': 18.2.19 - - '@radix-ui/rect@1.0.1': - dependencies: - '@babel/runtime': 7.23.8 - - '@react-email/body@0.0.7(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@react-email/button@0.0.13(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@react-email/code-block@0.0.2(react@18.2.0)': - dependencies: - prismjs: 1.29.0 - react: 18.2.0 - - '@react-email/code-inline@0.0.1(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@react-email/column@0.0.9(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@react-email/components@0.0.14(@types/react@18.2.55)(react@18.2.0)': - dependencies: - '@react-email/body': 0.0.7(react@18.2.0) - '@react-email/button': 0.0.13(react@18.2.0) - '@react-email/code-block': 0.0.2(react@18.2.0) - '@react-email/code-inline': 0.0.1(react@18.2.0) - '@react-email/column': 0.0.9(react@18.2.0) - '@react-email/container': 0.0.11(react@18.2.0) - '@react-email/font': 0.0.5(react@18.2.0) - '@react-email/head': 0.0.7(react@18.2.0) - '@react-email/heading': 0.0.11(@types/react@18.2.55)(react@18.2.0) - '@react-email/hr': 0.0.7(react@18.2.0) - '@react-email/html': 0.0.7(react@18.2.0) - '@react-email/img': 0.0.7(react@18.2.0) - '@react-email/link': 0.0.7(react@18.2.0) - '@react-email/preview': 0.0.8(react@18.2.0) - '@react-email/render': 0.0.12 - '@react-email/row': 0.0.7(react@18.2.0) - '@react-email/section': 0.0.11(react@18.2.0) - '@react-email/tailwind': 0.0.14(react@18.2.0) - '@react-email/text': 0.0.7(react@18.2.0) - react: 18.2.0 - transitivePeerDependencies: - - '@types/react' - - '@react-email/container@0.0.11(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@react-email/font@0.0.5(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@react-email/head@0.0.7(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@react-email/heading@0.0.11(@types/react@18.2.55)(react@18.2.0)': - dependencies: - '@radix-ui/react-slot': 1.0.2(@types/react@18.2.55)(react@18.2.0) - react: 18.2.0 - transitivePeerDependencies: - - '@types/react' - - '@react-email/hr@0.0.7(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@react-email/html@0.0.7(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@react-email/img@0.0.7(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@react-email/link@0.0.7(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@react-email/preview@0.0.8(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@react-email/render@0.0.12': - dependencies: - html-to-text: 9.0.5 - js-beautify: 1.15.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@react-email/row@0.0.7(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@react-email/section@0.0.11(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@react-email/tailwind@0.0.14(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@react-email/text@0.0.7(react@18.2.0)': - dependencies: - react: 18.2.0 - - '@rushstack/eslint-patch@1.6.0': {} - - '@selderee/plugin-htmlparser2@0.11.0': - dependencies: - domhandler: 5.0.3 - selderee: 0.11.0 - - '@shelf/jest-mongodb@4.2.0(@aws-sdk/credential-providers@3.272.0)(jest-environment-node@29.7.0)(mongodb@6.1.0(@aws-sdk/credential-providers@3.272.0)(gcp-metadata@5.2.0)(socks@2.7.1))': - dependencies: - debug: 4.3.4 - jest-environment-node: 29.7.0 - mongodb: 6.1.0(@aws-sdk/credential-providers@3.272.0)(gcp-metadata@5.2.0)(socks@2.7.1) - mongodb-memory-server: 9.1.1(@aws-sdk/credential-providers@3.272.0) - transitivePeerDependencies: - - '@aws-sdk/credential-providers' - - '@mongodb-js/zstd' - - kerberos - - mongodb-client-encryption - - snappy - - supports-color - - '@sinclair/typebox@0.25.23': {} - - '@sinclair/typebox@0.27.8': {} - - '@sinonjs/commons@2.0.0': - dependencies: - type-detect: 4.0.8 - - '@sinonjs/fake-timers@10.0.2': - dependencies: - '@sinonjs/commons': 2.0.0 - - '@smithy/abort-controller@2.2.0': - dependencies: - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/chunked-blob-reader-native@2.2.0': - dependencies: - '@smithy/util-base64': 2.3.0 - tslib: 2.6.2 - - '@smithy/chunked-blob-reader@2.2.0': - dependencies: - tslib: 2.6.2 - - '@smithy/config-resolver@2.2.0': - dependencies: - '@smithy/node-config-provider': 2.3.0 - '@smithy/types': 2.12.0 - '@smithy/util-config-provider': 2.3.0 - '@smithy/util-middleware': 2.2.0 - tslib: 2.6.2 - - '@smithy/core@1.4.0': - dependencies: - '@smithy/middleware-endpoint': 2.5.0 - '@smithy/middleware-retry': 2.2.0 - '@smithy/middleware-serde': 2.3.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/smithy-client': 2.5.0 - '@smithy/types': 2.12.0 - '@smithy/util-middleware': 2.2.0 - tslib: 2.6.2 - - '@smithy/credential-provider-imds@2.3.0': - dependencies: - '@smithy/node-config-provider': 2.3.0 - '@smithy/property-provider': 2.2.0 - '@smithy/types': 2.12.0 - '@smithy/url-parser': 2.2.0 - tslib: 2.6.2 - - '@smithy/eventstream-codec@2.2.0': - dependencies: - '@aws-crypto/crc32': 3.0.0 - '@smithy/types': 2.12.0 - '@smithy/util-hex-encoding': 2.2.0 - tslib: 2.6.2 - - '@smithy/eventstream-serde-browser@2.2.0': - dependencies: - '@smithy/eventstream-serde-universal': 2.2.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/eventstream-serde-config-resolver@2.2.0': - dependencies: - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/eventstream-serde-node@2.2.0': - dependencies: - '@smithy/eventstream-serde-universal': 2.2.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/eventstream-serde-universal@2.2.0': - dependencies: - '@smithy/eventstream-codec': 2.2.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/fetch-http-handler@2.5.0': - dependencies: - '@smithy/protocol-http': 3.3.0 - '@smithy/querystring-builder': 2.2.0 - '@smithy/types': 2.12.0 - '@smithy/util-base64': 2.3.0 - tslib: 2.6.2 - - '@smithy/hash-blob-browser@2.2.0': - dependencies: - '@smithy/chunked-blob-reader': 2.2.0 - '@smithy/chunked-blob-reader-native': 2.2.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/hash-node@2.2.0': - dependencies: - '@smithy/types': 2.12.0 - '@smithy/util-buffer-from': 2.2.0 - '@smithy/util-utf8': 2.3.0 - tslib: 2.6.2 - - '@smithy/hash-stream-node@2.2.0': - dependencies: - '@smithy/types': 2.12.0 - '@smithy/util-utf8': 2.3.0 - tslib: 2.6.2 - - '@smithy/invalid-dependency@2.2.0': - dependencies: - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/is-array-buffer@2.2.0': - dependencies: - tslib: 2.6.2 - - '@smithy/md5-js@2.2.0': - dependencies: - '@smithy/types': 2.12.0 - '@smithy/util-utf8': 2.3.0 - tslib: 2.6.2 - - '@smithy/middleware-content-length@2.2.0': - dependencies: - '@smithy/protocol-http': 3.3.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/middleware-endpoint@2.5.0': - dependencies: - '@smithy/middleware-serde': 2.3.0 - '@smithy/node-config-provider': 2.3.0 - '@smithy/shared-ini-file-loader': 2.4.0 - '@smithy/types': 2.12.0 - '@smithy/url-parser': 2.2.0 - '@smithy/util-middleware': 2.2.0 - tslib: 2.6.2 - - '@smithy/middleware-retry@2.2.0': - dependencies: - '@smithy/node-config-provider': 2.3.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/service-error-classification': 2.1.5 - '@smithy/smithy-client': 2.5.0 - '@smithy/types': 2.12.0 - '@smithy/util-middleware': 2.2.0 - '@smithy/util-retry': 2.2.0 - tslib: 2.6.2 - uuid: 8.3.2 - - '@smithy/middleware-serde@2.3.0': - dependencies: - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/middleware-stack@2.2.0': - dependencies: - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/node-config-provider@2.3.0': - dependencies: - '@smithy/property-provider': 2.2.0 - '@smithy/shared-ini-file-loader': 2.4.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/node-http-handler@2.5.0': - dependencies: - '@smithy/abort-controller': 2.2.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/querystring-builder': 2.2.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/property-provider@2.2.0': - dependencies: - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/protocol-http@3.3.0': - dependencies: - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/querystring-builder@2.2.0': - dependencies: - '@smithy/types': 2.12.0 - '@smithy/util-uri-escape': 2.2.0 - tslib: 2.6.2 - - '@smithy/querystring-parser@2.2.0': - dependencies: - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/service-error-classification@2.1.5': - dependencies: - '@smithy/types': 2.12.0 - - '@smithy/shared-ini-file-loader@2.4.0': - dependencies: - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/signature-v4@2.2.0': - dependencies: - '@smithy/eventstream-codec': 2.2.0 - '@smithy/is-array-buffer': 2.2.0 - '@smithy/types': 2.12.0 - '@smithy/util-hex-encoding': 2.2.0 - '@smithy/util-middleware': 2.2.0 - '@smithy/util-uri-escape': 2.2.0 - '@smithy/util-utf8': 2.3.0 - tslib: 2.6.2 - - '@smithy/smithy-client@2.5.0': - dependencies: - '@smithy/middleware-endpoint': 2.5.0 - '@smithy/middleware-stack': 2.2.0 - '@smithy/protocol-http': 3.3.0 - '@smithy/types': 2.12.0 - '@smithy/util-stream': 2.2.0 - tslib: 2.6.2 - - '@smithy/types@2.12.0': - dependencies: - tslib: 2.6.2 - - '@smithy/url-parser@2.2.0': - dependencies: - '@smithy/querystring-parser': 2.2.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/util-base64@2.3.0': - dependencies: - '@smithy/util-buffer-from': 2.2.0 - '@smithy/util-utf8': 2.3.0 - tslib: 2.6.2 - - '@smithy/util-body-length-browser@2.2.0': - dependencies: - tslib: 2.6.2 - - '@smithy/util-body-length-node@2.3.0': - dependencies: - tslib: 2.6.2 - - '@smithy/util-buffer-from@2.2.0': - dependencies: - '@smithy/is-array-buffer': 2.2.0 - tslib: 2.6.2 - - '@smithy/util-config-provider@2.3.0': - dependencies: - tslib: 2.6.2 - - '@smithy/util-defaults-mode-browser@2.2.0': - dependencies: - '@smithy/property-provider': 2.2.0 - '@smithy/smithy-client': 2.5.0 - '@smithy/types': 2.12.0 - bowser: 2.11.0 - tslib: 2.6.2 - - '@smithy/util-defaults-mode-node@2.3.0': - dependencies: - '@smithy/config-resolver': 2.2.0 - '@smithy/credential-provider-imds': 2.3.0 - '@smithy/node-config-provider': 2.3.0 - '@smithy/property-provider': 2.2.0 - '@smithy/smithy-client': 2.5.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/util-endpoints@1.2.0': - dependencies: - '@smithy/node-config-provider': 2.3.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/util-hex-encoding@2.2.0': - dependencies: - tslib: 2.6.2 - - '@smithy/util-middleware@2.2.0': - dependencies: - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/util-retry@2.2.0': - dependencies: - '@smithy/service-error-classification': 2.1.5 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@smithy/util-stream@2.2.0': - dependencies: - '@smithy/fetch-http-handler': 2.5.0 - '@smithy/node-http-handler': 2.5.0 - '@smithy/types': 2.12.0 - '@smithy/util-base64': 2.3.0 - '@smithy/util-buffer-from': 2.2.0 - '@smithy/util-hex-encoding': 2.2.0 - '@smithy/util-utf8': 2.3.0 - tslib: 2.6.2 - - '@smithy/util-uri-escape@2.2.0': - dependencies: - tslib: 2.6.2 - - '@smithy/util-utf8@2.3.0': - dependencies: - '@smithy/util-buffer-from': 2.2.0 - tslib: 2.6.2 - - '@smithy/util-waiter@2.2.0': - dependencies: - '@smithy/abort-controller': 2.2.0 - '@smithy/types': 2.12.0 - tslib: 2.6.2 - - '@socket.io/component-emitter@3.1.0': {} - - '@socket.io/redis-adapter@8.1.0(socket.io-adapter@2.5.2)': - dependencies: - debug: 4.3.4 - notepack.io: 3.0.1 - socket.io-adapter: 2.5.2 - uid2: 1.0.0 - transitivePeerDependencies: - - supports-color - - '@socket.io/redis-emitter@5.1.0': - dependencies: - debug: 4.3.4 - notepack.io: 3.0.1 - socket.io-parser: 4.2.2 - transitivePeerDependencies: - - supports-color - - '@storybook/addon-actions@7.6.14': - dependencies: - '@storybook/core-events': 7.6.14 - '@storybook/global': 5.0.0 - '@types/uuid': 9.0.7 - dequal: 2.0.3 - polished: 4.2.2 - uuid: 9.0.0 - - '@storybook/addon-backgrounds@7.6.14': - dependencies: - '@storybook/global': 5.0.0 - memoizerific: 1.11.3 - ts-dedent: 2.2.0 - - '@storybook/addon-controls@7.6.14(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@storybook/blocks': 7.6.14(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - lodash: 4.17.21 - ts-dedent: 2.2.0 - transitivePeerDependencies: - - '@types/react' - - '@types/react-dom' - - encoding - - react - - react-dom - - supports-color - - '@storybook/addon-docs@7.6.14(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@jest/transform': 29.5.0 - '@mdx-js/react': 2.3.0(react@18.2.0) - '@storybook/blocks': 7.6.14(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/client-logger': 7.6.14 - '@storybook/components': 7.6.14(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/csf-plugin': 7.6.14 - '@storybook/csf-tools': 7.6.14 - '@storybook/global': 5.0.0 - '@storybook/mdx2-csf': 1.1.0 - '@storybook/node-logger': 7.6.14 - '@storybook/postinstall': 7.6.14 - '@storybook/preview-api': 7.6.14 - '@storybook/react-dom-shim': 7.6.14(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/theming': 7.6.14(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/types': 7.6.14 - fs-extra: 11.1.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - remark-external-links: 8.0.0 - remark-slug: 6.1.0 - ts-dedent: 2.2.0 - transitivePeerDependencies: - - '@types/react' - - '@types/react-dom' - - encoding - - supports-color - - '@storybook/addon-essentials@7.6.14(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@storybook/addon-actions': 7.6.14 - '@storybook/addon-backgrounds': 7.6.14 - '@storybook/addon-controls': 7.6.14(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/addon-docs': 7.6.14(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/addon-highlight': 7.6.14 - '@storybook/addon-measure': 7.6.14 - '@storybook/addon-outline': 7.6.14 - '@storybook/addon-toolbars': 7.6.14 - '@storybook/addon-viewport': 7.6.14 - '@storybook/core-common': 7.6.14 - '@storybook/manager-api': 7.6.14(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/node-logger': 7.6.14 - '@storybook/preview-api': 7.6.14 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - ts-dedent: 2.2.0 - transitivePeerDependencies: - - '@types/react' - - '@types/react-dom' - - encoding - - supports-color - - '@storybook/addon-highlight@7.6.14': - dependencies: - '@storybook/global': 5.0.0 - - '@storybook/addon-interactions@7.6.14': - dependencies: - '@storybook/global': 5.0.0 - '@storybook/types': 7.6.14 - jest-mock: 27.5.1 - polished: 4.2.2 - ts-dedent: 2.2.0 - - '@storybook/addon-links@7.6.14(react@18.2.0)': - dependencies: - '@storybook/csf': 0.1.2 - '@storybook/global': 5.0.0 - ts-dedent: 2.2.0 - optionalDependencies: - react: 18.2.0 - - '@storybook/addon-measure@7.6.14': - dependencies: - '@storybook/global': 5.0.0 - tiny-invariant: 1.3.1 - - '@storybook/addon-onboarding@1.0.11(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@storybook/telemetry': 7.6.9 - react: 18.2.0 - react-confetti: 6.1.0(react@18.2.0) - react-dom: 18.2.0(react@18.2.0) - transitivePeerDependencies: - - encoding - - supports-color - - '@storybook/addon-outline@7.6.14': - dependencies: - '@storybook/global': 5.0.0 - ts-dedent: 2.2.0 - - '@storybook/addon-styling-webpack@0.0.6(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6))': - dependencies: - '@storybook/node-logger': 7.6.9 - webpack: 5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6) - - '@storybook/addon-toolbars@7.6.14': {} - - '@storybook/addon-viewport@7.6.14': - dependencies: - memoizerific: 1.11.3 - - '@storybook/addons@7.6.9(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@storybook/manager-api': 7.6.9(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/preview-api': 7.6.9 - '@storybook/types': 7.6.9 - transitivePeerDependencies: - - react - - react-dom - - '@storybook/blocks@7.6.14(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@storybook/channels': 7.6.14 - '@storybook/client-logger': 7.6.14 - '@storybook/components': 7.6.14(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/core-events': 7.6.14 - '@storybook/csf': 0.1.2 - '@storybook/docs-tools': 7.6.14 - '@storybook/global': 5.0.0 - '@storybook/manager-api': 7.6.14(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/preview-api': 7.6.14 - '@storybook/theming': 7.6.14(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/types': 7.6.14 - '@types/lodash': 4.14.202 - color-convert: 2.0.1 - dequal: 2.0.3 - lodash: 4.17.21 - markdown-to-jsx: 7.4.0(react@18.2.0) - memoizerific: 1.11.3 - polished: 4.2.2 - react: 18.2.0 - react-colorful: 5.6.1(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - react-dom: 18.2.0(react@18.2.0) - telejson: 7.2.0 - tocbot: 4.25.0 - ts-dedent: 2.2.0 - util-deprecate: 1.0.2 - transitivePeerDependencies: - - '@types/react' - - '@types/react-dom' - - encoding - - supports-color - - '@storybook/builder-manager@7.6.14': - dependencies: - '@fal-works/esbuild-plugin-global-externals': 2.1.2 - '@storybook/core-common': 7.6.14 - '@storybook/manager': 7.6.14 - '@storybook/node-logger': 7.6.14 - '@types/ejs': 3.1.5 - '@types/find-cache-dir': 3.2.1 - '@yarnpkg/esbuild-plugin-pnp': 3.0.0-rc.15(esbuild@0.18.6) - browser-assert: 1.2.1 - ejs: 3.1.9 - esbuild: 0.18.6 - esbuild-plugin-alias: 0.2.1 - express: 4.18.2 - find-cache-dir: 3.3.2 - fs-extra: 11.1.1 - process: 0.11.10 - util: 0.12.5 - transitivePeerDependencies: - - encoding - - supports-color - - '@storybook/builder-webpack5@7.6.14(@swc/helpers@0.5.2)(esbuild@0.18.6)(typescript@5.2.2)': - dependencies: - '@babel/core': 7.23.7 - '@storybook/channels': 7.6.14 - '@storybook/client-logger': 7.6.14 - '@storybook/core-common': 7.6.14 - '@storybook/core-events': 7.6.14 - '@storybook/core-webpack': 7.6.14 - '@storybook/node-logger': 7.6.14 - '@storybook/preview': 7.6.14 - '@storybook/preview-api': 7.6.14 - '@swc/core': 1.3.104(@swc/helpers@0.5.2) - '@types/node': 18.18.14 - '@types/semver': 7.3.13 - babel-loader: 9.1.2(@babel/core@7.23.7)(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)) - browser-assert: 1.2.1 - case-sensitive-paths-webpack-plugin: 2.4.0 - cjs-module-lexer: 1.2.3 - constants-browserify: 1.0.0 - css-loader: 6.10.0(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)) - es-module-lexer: 1.4.1 - express: 4.18.2 - fork-ts-checker-webpack-plugin: 8.0.0(typescript@5.2.2)(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)) - fs-extra: 11.1.1 - html-webpack-plugin: 5.6.0(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)) - magic-string: 0.30.5 - path-browserify: 1.0.1 - process: 0.11.10 - semver: 7.5.4 - style-loader: 3.3.4(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)) - swc-loader: 0.2.3(@swc/core@1.3.104(@swc/helpers@0.5.2))(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)) - terser-webpack-plugin: 5.3.6(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)) - ts-dedent: 2.2.0 - url: 0.11.3 - util: 0.12.5 - util-deprecate: 1.0.2 - webpack: 5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6) - webpack-dev-middleware: 6.1.1(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)) - webpack-hot-middleware: 2.26.0 - webpack-virtual-modules: 0.5.0 - optionalDependencies: - typescript: 5.2.2 - transitivePeerDependencies: - - '@rspack/core' - - '@swc/helpers' - - encoding - - esbuild - - supports-color - - uglify-js - - webpack-cli - - '@storybook/channels@7.6.14': - dependencies: - '@storybook/client-logger': 7.6.14 - '@storybook/core-events': 7.6.14 - '@storybook/global': 5.0.0 - qs: 6.11.2 - telejson: 7.2.0 - tiny-invariant: 1.3.1 - - '@storybook/channels@7.6.9': - dependencies: - '@storybook/client-logger': 7.6.9 - '@storybook/core-events': 7.6.9 - '@storybook/global': 5.0.0 - qs: 6.11.2 - telejson: 7.2.0 - tiny-invariant: 1.3.1 - - '@storybook/cli@7.6.14': - dependencies: - '@babel/core': 7.23.7 - '@babel/preset-env': 7.23.8(@babel/core@7.23.7) - '@babel/types': 7.23.6 - '@ndelangen/get-tarball': 3.0.9 - '@storybook/codemod': 7.6.14 - '@storybook/core-common': 7.6.14 - '@storybook/core-events': 7.6.14 - '@storybook/core-server': 7.6.14 - '@storybook/csf-tools': 7.6.14 - '@storybook/node-logger': 7.6.14 - '@storybook/telemetry': 7.6.14 - '@storybook/types': 7.6.14 - '@types/semver': 7.3.13 - '@yarnpkg/fslib': 2.10.3 - '@yarnpkg/libzip': 2.3.0 - chalk: 4.1.2 - commander: 6.2.1 - cross-spawn: 7.0.3 - detect-indent: 6.1.0 - envinfo: 7.11.0 - execa: 5.1.1 - express: 4.18.2 - find-up: 5.0.0 - fs-extra: 11.1.1 - get-npm-tarball-url: 2.1.0 - get-port: 5.1.1 - giget: 1.2.1 - globby: 11.1.0 - jscodeshift: 0.15.1(@babel/preset-env@7.23.8(@babel/core@7.23.7)) - leven: 3.1.0 - ora: 5.4.1 - prettier: 2.8.4 - prompts: 2.4.2 - puppeteer-core: 2.1.1 - read-pkg-up: 7.0.1 - semver: 7.5.4 - strip-json-comments: 3.1.1 - tempy: 1.0.1 - ts-dedent: 2.2.0 - util-deprecate: 1.0.2 - transitivePeerDependencies: - - bufferutil - - encoding - - supports-color - - utf-8-validate - - '@storybook/client-logger@7.6.14': - dependencies: - '@storybook/global': 5.0.0 - - '@storybook/client-logger@7.6.9': - dependencies: - '@storybook/global': 5.0.0 - - '@storybook/codemod@7.6.14': - dependencies: - '@babel/core': 7.23.7 - '@babel/preset-env': 7.23.8(@babel/core@7.23.7) - '@babel/types': 7.23.6 - '@storybook/csf': 0.1.2 - '@storybook/csf-tools': 7.6.14 - '@storybook/node-logger': 7.6.14 - '@storybook/types': 7.6.14 - '@types/cross-spawn': 6.0.6 - cross-spawn: 7.0.3 - globby: 11.1.0 - jscodeshift: 0.15.1(@babel/preset-env@7.23.8(@babel/core@7.23.7)) - lodash: 4.17.21 - prettier: 2.8.4 - recast: 0.23.4 - transitivePeerDependencies: - - supports-color - - '@storybook/components@7.6.14(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@radix-ui/react-select': 1.2.2(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-toolbar': 1.0.4(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/client-logger': 7.6.14 - '@storybook/csf': 0.1.2 - '@storybook/global': 5.0.0 - '@storybook/theming': 7.6.14(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/types': 7.6.14 - memoizerific: 1.11.3 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - use-resize-observer: 9.1.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - util-deprecate: 1.0.2 - transitivePeerDependencies: - - '@types/react' - - '@types/react-dom' - - '@storybook/components@7.6.9(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@radix-ui/react-select': 1.2.2(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-toolbar': 1.0.4(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/client-logger': 7.6.9 - '@storybook/csf': 0.1.2 - '@storybook/global': 5.0.0 - '@storybook/theming': 7.6.9(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/types': 7.6.9 - memoizerific: 1.11.3 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - use-resize-observer: 9.1.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - util-deprecate: 1.0.2 - transitivePeerDependencies: - - '@types/react' - - '@types/react-dom' - - '@storybook/core-client@7.6.14': - dependencies: - '@storybook/client-logger': 7.6.14 - '@storybook/preview-api': 7.6.14 - - '@storybook/core-common@7.6.14': - dependencies: - '@storybook/core-events': 7.6.14 - '@storybook/node-logger': 7.6.14 - '@storybook/types': 7.6.14 - '@types/find-cache-dir': 3.2.1 - '@types/node': 18.18.14 - '@types/node-fetch': 2.6.11 - '@types/pretty-hrtime': 1.0.3 - chalk: 4.1.2 - esbuild: 0.18.6 - esbuild-register: 3.5.0(esbuild@0.18.6) - file-system-cache: 2.3.0 - find-cache-dir: 3.3.2 - find-up: 5.0.0 - fs-extra: 11.1.1 - glob: 10.3.10 - handlebars: 4.7.8 - lazy-universal-dotenv: 4.0.0 - node-fetch: 2.6.9 - picomatch: 2.3.1 - pkg-dir: 5.0.0 - pretty-hrtime: 1.0.3 - resolve-from: 5.0.0 - ts-dedent: 2.2.0 - transitivePeerDependencies: - - encoding - - supports-color - - '@storybook/core-common@7.6.9': - dependencies: - '@storybook/core-events': 7.6.9 - '@storybook/node-logger': 7.6.9 - '@storybook/types': 7.6.9 - '@types/find-cache-dir': 3.2.1 - '@types/node': 18.18.14 - '@types/node-fetch': 2.6.11 - '@types/pretty-hrtime': 1.0.3 - chalk: 4.1.2 - esbuild: 0.18.6 - esbuild-register: 3.5.0(esbuild@0.18.6) - file-system-cache: 2.3.0 - find-cache-dir: 3.3.2 - find-up: 5.0.0 - fs-extra: 11.1.1 - glob: 10.3.10 - handlebars: 4.7.8 - lazy-universal-dotenv: 4.0.0 - node-fetch: 2.6.9 - picomatch: 2.3.1 - pkg-dir: 5.0.0 - pretty-hrtime: 1.0.3 - resolve-from: 5.0.0 - ts-dedent: 2.2.0 - transitivePeerDependencies: - - encoding - - supports-color - - '@storybook/core-events@7.6.14': - dependencies: - ts-dedent: 2.2.0 - - '@storybook/core-events@7.6.9': - dependencies: - ts-dedent: 2.2.0 - - '@storybook/core-server@7.6.14': - dependencies: - '@aw-web-design/x-default-browser': 1.4.126 - '@discoveryjs/json-ext': 0.5.7 - '@storybook/builder-manager': 7.6.14 - '@storybook/channels': 7.6.14 - '@storybook/core-common': 7.6.14 - '@storybook/core-events': 7.6.14 - '@storybook/csf': 0.1.2 - '@storybook/csf-tools': 7.6.14 - '@storybook/docs-mdx': 0.1.0 - '@storybook/global': 5.0.0 - '@storybook/manager': 7.6.14 - '@storybook/node-logger': 7.6.14 - '@storybook/preview-api': 7.6.14 - '@storybook/telemetry': 7.6.14 - '@storybook/types': 7.6.14 - '@types/detect-port': 1.3.5 - '@types/node': 18.18.14 - '@types/pretty-hrtime': 1.0.3 - '@types/semver': 7.5.7 - better-opn: 3.0.2 - chalk: 4.1.2 - cli-table3: 0.6.3 - compression: 1.7.4 - detect-port: 1.5.1 - express: 4.18.2 - fs-extra: 11.1.1 - globby: 11.1.0 - ip: 2.0.0 - lodash: 4.17.21 - open: 8.4.2 - pretty-hrtime: 1.0.3 - prompts: 2.4.2 - read-pkg-up: 7.0.1 - semver: 7.5.4 - telejson: 7.2.0 - tiny-invariant: 1.3.1 - ts-dedent: 2.2.0 - util: 0.12.5 - util-deprecate: 1.0.2 - watchpack: 2.4.0 - ws: 8.11.0 - transitivePeerDependencies: - - bufferutil - - encoding - - supports-color - - utf-8-validate - - '@storybook/core-webpack@7.6.14': - dependencies: - '@storybook/core-common': 7.6.14 - '@storybook/node-logger': 7.6.14 - '@storybook/types': 7.6.14 - '@types/node': 18.18.14 - ts-dedent: 2.2.0 - transitivePeerDependencies: - - encoding - - supports-color - - '@storybook/csf-plugin@7.6.14': - dependencies: - '@storybook/csf-tools': 7.6.14 - unplugin: 1.6.0 - transitivePeerDependencies: - - supports-color - - '@storybook/csf-tools@7.6.14': - dependencies: - '@babel/generator': 7.23.6 - '@babel/parser': 7.23.6 - '@babel/traverse': 7.23.7 - '@babel/types': 7.23.6 - '@storybook/csf': 0.1.2 - '@storybook/types': 7.6.14 - fs-extra: 11.1.1 - recast: 0.23.4 - ts-dedent: 2.2.0 - transitivePeerDependencies: - - supports-color - - '@storybook/csf-tools@7.6.9': - dependencies: - '@babel/generator': 7.23.6 - '@babel/parser': 7.23.6 - '@babel/traverse': 7.23.7 - '@babel/types': 7.23.6 - '@storybook/csf': 0.1.2 - '@storybook/types': 7.6.9 - fs-extra: 11.1.1 - recast: 0.23.4 - ts-dedent: 2.2.0 - transitivePeerDependencies: - - supports-color - - '@storybook/csf@0.1.2': - dependencies: - type-fest: 2.19.0 - - '@storybook/docs-mdx@0.1.0': {} - - '@storybook/docs-tools@7.6.14': - dependencies: - '@storybook/core-common': 7.6.14 - '@storybook/preview-api': 7.6.14 - '@storybook/types': 7.6.14 - '@types/doctrine': 0.0.3 - assert: 2.1.0 - doctrine: 3.0.0 - lodash: 4.17.21 - transitivePeerDependencies: - - encoding - - supports-color - - '@storybook/global@5.0.0': {} - - '@storybook/instrumenter@7.6.14': - dependencies: - '@storybook/channels': 7.6.14 - '@storybook/client-logger': 7.6.14 - '@storybook/core-events': 7.6.14 - '@storybook/global': 5.0.0 - '@storybook/preview-api': 7.6.14 - '@vitest/utils': 0.34.7 - util: 0.12.5 - - '@storybook/manager-api@7.6.14(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@storybook/channels': 7.6.14 - '@storybook/client-logger': 7.6.14 - '@storybook/core-events': 7.6.14 - '@storybook/csf': 0.1.2 - '@storybook/global': 5.0.0 - '@storybook/router': 7.6.14 - '@storybook/theming': 7.6.14(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/types': 7.6.14 - dequal: 2.0.3 - lodash: 4.17.21 - memoizerific: 1.11.3 - store2: 2.14.2 - telejson: 7.2.0 - ts-dedent: 2.2.0 - transitivePeerDependencies: - - react - - react-dom - - '@storybook/manager-api@7.6.9(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@storybook/channels': 7.6.9 - '@storybook/client-logger': 7.6.9 - '@storybook/core-events': 7.6.9 - '@storybook/csf': 0.1.2 - '@storybook/global': 5.0.0 - '@storybook/router': 7.6.9 - '@storybook/theming': 7.6.9(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/types': 7.6.9 - dequal: 2.0.3 - lodash: 4.17.21 - memoizerific: 1.11.3 - store2: 2.14.2 - telejson: 7.2.0 - ts-dedent: 2.2.0 - transitivePeerDependencies: - - react - - react-dom - - '@storybook/manager@7.6.14': {} - - '@storybook/mdx2-csf@1.1.0': {} - - '@storybook/nextjs@7.6.14(@swc/core@1.3.104(@swc/helpers@0.5.2))(@swc/helpers@0.5.2)(@types/webpack@5.28.5(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6))(babel-plugin-macros@3.1.0)(esbuild@0.18.6)(next@14.1.0(@babel/core@7.23.7)(babel-plugin-macros@3.1.0)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(type-fest@3.13.1)(typescript@5.2.2)(webpack-hot-middleware@2.26.0)(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6))': - dependencies: - '@babel/core': 7.23.7 - '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-import-assertions': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-class-properties': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-export-namespace-from': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-numeric-separator': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-object-rest-spread': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-runtime': 7.23.7(@babel/core@7.23.7) - '@babel/preset-env': 7.23.8(@babel/core@7.23.7) - '@babel/preset-react': 7.23.3(@babel/core@7.23.7) - '@babel/preset-typescript': 7.23.3(@babel/core@7.23.7) - '@babel/runtime': 7.23.8 - '@storybook/addon-actions': 7.6.14 - '@storybook/builder-webpack5': 7.6.14(@swc/helpers@0.5.2)(esbuild@0.18.6)(typescript@5.2.2) - '@storybook/core-common': 7.6.14 - '@storybook/core-events': 7.6.14 - '@storybook/node-logger': 7.6.14 - '@storybook/preset-react-webpack': 7.6.14(@babel/core@7.23.7)(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/webpack@5.28.5(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6))(esbuild@0.18.6)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(type-fest@3.13.1)(typescript@5.2.2)(webpack-hot-middleware@2.26.0) - '@storybook/preview-api': 7.6.14 - '@storybook/react': 7.6.14(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.2.2) - '@types/node': 18.18.14 - '@types/semver': 7.3.13 - css-loader: 6.10.0(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)) - find-up: 5.0.0 - fs-extra: 11.1.1 - image-size: 1.1.1 - loader-utils: 3.2.1 - next: 14.1.0(@babel/core@7.23.7)(babel-plugin-macros@3.1.0)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - node-polyfill-webpack-plugin: 2.0.1(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)) - pnp-webpack-plugin: 1.7.0(typescript@5.2.2) - postcss: 8.4.35 - postcss-loader: 7.3.4(postcss@8.4.35)(typescript@5.2.2)(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - resolve-url-loader: 5.0.0 - sass-loader: 12.6.0(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)) - semver: 7.5.4 - sharp: 0.32.6 - style-loader: 3.3.4(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)) - styled-jsx: 5.1.1(@babel/core@7.23.7)(babel-plugin-macros@3.1.0)(react@18.2.0) - ts-dedent: 2.2.0 - tsconfig-paths: 4.2.0 - tsconfig-paths-webpack-plugin: 4.1.0 - optionalDependencies: - typescript: 5.2.2 - webpack: 5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6) - transitivePeerDependencies: - - '@rspack/core' - - '@swc/core' - - '@swc/helpers' - - '@types/webpack' - - babel-plugin-macros - - encoding - - esbuild - - fibers - - node-sass - - sass - - sass-embedded - - sockjs-client - - supports-color - - type-fest - - uglify-js - - webpack-cli - - webpack-dev-server - - webpack-hot-middleware - - webpack-plugin-serve - - '@storybook/node-logger@7.6.14': {} - - '@storybook/node-logger@7.6.9': {} - - '@storybook/postinstall@7.6.14': {} - - '@storybook/preset-react-webpack@7.6.14(@babel/core@7.23.7)(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/webpack@5.28.5(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6))(esbuild@0.18.6)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(type-fest@3.13.1)(typescript@5.2.2)(webpack-hot-middleware@2.26.0)': - dependencies: - '@babel/preset-flow': 7.23.3(@babel/core@7.23.7) - '@babel/preset-react': 7.23.3(@babel/core@7.23.7) - '@pmmmwh/react-refresh-webpack-plugin': 0.5.11(@types/webpack@5.28.5(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6))(react-refresh@0.14.0)(type-fest@3.13.1)(webpack-hot-middleware@2.26.0)(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)) - '@storybook/core-webpack': 7.6.14 - '@storybook/docs-tools': 7.6.14 - '@storybook/node-logger': 7.6.14 - '@storybook/react': 7.6.14(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.2.2) - '@storybook/react-docgen-typescript-plugin': 1.0.6--canary.9.0c3f3b7.0(typescript@5.2.2)(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)) - '@types/node': 18.18.14 - '@types/semver': 7.5.7 - babel-plugin-add-react-displayname: 0.0.5 - fs-extra: 11.1.1 - magic-string: 0.30.5 - react: 18.2.0 - react-docgen: 7.0.3 - react-dom: 18.2.0(react@18.2.0) - react-refresh: 0.14.0 - semver: 7.5.4 - webpack: 5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6) - optionalDependencies: - '@babel/core': 7.23.7 - typescript: 5.2.2 - transitivePeerDependencies: - - '@swc/core' - - '@types/webpack' - - encoding - - esbuild - - sockjs-client - - supports-color - - type-fest - - uglify-js - - webpack-cli - - webpack-dev-server - - webpack-hot-middleware - - webpack-plugin-serve - - '@storybook/preview-api@7.6.14': - dependencies: - '@storybook/channels': 7.6.14 - '@storybook/client-logger': 7.6.14 - '@storybook/core-events': 7.6.14 - '@storybook/csf': 0.1.2 - '@storybook/global': 5.0.0 - '@storybook/types': 7.6.14 - '@types/qs': 6.9.11 - dequal: 2.0.3 - lodash: 4.17.21 - memoizerific: 1.11.3 - qs: 6.11.2 - synchronous-promise: 2.0.17 - ts-dedent: 2.2.0 - util-deprecate: 1.0.2 - - '@storybook/preview-api@7.6.9': - dependencies: - '@storybook/channels': 7.6.9 - '@storybook/client-logger': 7.6.9 - '@storybook/core-events': 7.6.9 - '@storybook/csf': 0.1.2 - '@storybook/global': 5.0.0 - '@storybook/types': 7.6.9 - '@types/qs': 6.9.11 - dequal: 2.0.3 - lodash: 4.17.21 - memoizerific: 1.11.3 - qs: 6.11.2 - synchronous-promise: 2.0.17 - ts-dedent: 2.2.0 - util-deprecate: 1.0.2 - - '@storybook/preview@7.6.14': {} - - '@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@5.2.2)(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6))': - dependencies: - debug: 4.3.4 - endent: 2.1.0 - find-cache-dir: 3.3.2 - flat-cache: 3.0.4 - micromatch: 4.0.5 - react-docgen-typescript: 2.2.2(typescript@5.2.2) - tslib: 2.5.0 - typescript: 5.2.2 - webpack: 5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6) - transitivePeerDependencies: - - supports-color - - '@storybook/react-dom-shim@7.6.14(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@storybook/react@7.6.14(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.2.2)': - dependencies: - '@storybook/client-logger': 7.6.14 - '@storybook/core-client': 7.6.14 - '@storybook/docs-tools': 7.6.14 - '@storybook/global': 5.0.0 - '@storybook/preview-api': 7.6.14 - '@storybook/react-dom-shim': 7.6.14(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/types': 7.6.14 - '@types/escodegen': 0.0.6 - '@types/estree': 0.0.51 - '@types/node': 18.18.14 - acorn: 7.4.1 - acorn-jsx: 5.3.2(acorn@7.4.1) - acorn-walk: 7.2.0 - escodegen: 2.1.0 - html-tags: 3.3.1 - lodash: 4.17.21 - prop-types: 15.8.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - react-element-to-jsx-string: 15.0.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - ts-dedent: 2.2.0 - type-fest: 2.19.0 - util-deprecate: 1.0.2 - optionalDependencies: - typescript: 5.2.2 - transitivePeerDependencies: - - encoding - - supports-color - - '@storybook/router@7.6.14': - dependencies: - '@storybook/client-logger': 7.6.14 - memoizerific: 1.11.3 - qs: 6.11.2 - - '@storybook/router@7.6.9': - dependencies: - '@storybook/client-logger': 7.6.9 - memoizerific: 1.11.3 - qs: 6.11.2 - - '@storybook/telemetry@7.6.14': - dependencies: - '@storybook/client-logger': 7.6.14 - '@storybook/core-common': 7.6.14 - '@storybook/csf-tools': 7.6.14 - chalk: 4.1.2 - detect-package-manager: 2.0.1 - fetch-retry: 5.0.6 - fs-extra: 11.1.1 - read-pkg-up: 7.0.1 - transitivePeerDependencies: - - encoding - - supports-color - - '@storybook/telemetry@7.6.9': - dependencies: - '@storybook/client-logger': 7.6.9 - '@storybook/core-common': 7.6.9 - '@storybook/csf-tools': 7.6.9 - chalk: 4.1.2 - detect-package-manager: 2.0.1 - fetch-retry: 5.0.6 - fs-extra: 11.1.1 - read-pkg-up: 7.0.1 - transitivePeerDependencies: - - encoding - - supports-color - - '@storybook/test@7.6.14(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.11.1)(babel-plugin-macros@3.1.0))': - dependencies: - '@storybook/client-logger': 7.6.14 - '@storybook/core-events': 7.6.14 - '@storybook/instrumenter': 7.6.14 - '@storybook/preview-api': 7.6.14 - '@testing-library/dom': 9.3.4 - '@testing-library/jest-dom': 6.2.0(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.11.1)(babel-plugin-macros@3.1.0)) - '@testing-library/user-event': 14.3.0(@testing-library/dom@9.3.4) - '@types/chai': 4.3.11 - '@vitest/expect': 0.34.7 - '@vitest/spy': 0.34.7 - chai: 4.4.1 - util: 0.12.5 - transitivePeerDependencies: - - '@jest/globals' - - '@types/jest' - - jest - - vitest - - '@storybook/theming@7.6.14(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@emotion/use-insertion-effect-with-fallbacks': 1.0.0(react@18.2.0) - '@storybook/client-logger': 7.6.14 - '@storybook/global': 5.0.0 - memoizerific: 1.11.3 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@storybook/theming@7.6.9(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@emotion/use-insertion-effect-with-fallbacks': 1.0.0(react@18.2.0) - '@storybook/client-logger': 7.6.9 - '@storybook/global': 5.0.0 - memoizerific: 1.11.3 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@storybook/types@7.6.14': - dependencies: - '@storybook/channels': 7.6.14 - '@types/babel__core': 7.20.0 - '@types/express': 4.17.17 - file-system-cache: 2.3.0 - - '@storybook/types@7.6.9': - dependencies: - '@storybook/channels': 7.6.9 - '@types/babel__core': 7.20.0 - '@types/express': 4.17.17 - file-system-cache: 2.3.0 - - '@stripe/react-stripe-js@2.7.1(@stripe/stripe-js@3.4.1)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@stripe/stripe-js': 3.4.1 - prop-types: 15.8.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@stripe/stripe-js@3.4.1': {} - - '@svgr/babel-plugin-add-jsx-attribute@8.0.0(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - - '@svgr/babel-plugin-remove-jsx-attribute@8.0.0(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - - '@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - - '@svgr/babel-plugin-replace-jsx-attribute-value@8.0.0(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - - '@svgr/babel-plugin-svg-dynamic-title@8.0.0(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - - '@svgr/babel-plugin-svg-em-dimensions@8.0.0(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - - '@svgr/babel-plugin-transform-react-native-svg@8.1.0(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - - '@svgr/babel-plugin-transform-svg-component@8.0.0(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - - '@svgr/babel-preset@8.1.0(@babel/core@7.23.7)': - dependencies: - '@babel/core': 7.23.7 - '@svgr/babel-plugin-add-jsx-attribute': 8.0.0(@babel/core@7.23.7) - '@svgr/babel-plugin-remove-jsx-attribute': 8.0.0(@babel/core@7.23.7) - '@svgr/babel-plugin-remove-jsx-empty-expression': 8.0.0(@babel/core@7.23.7) - '@svgr/babel-plugin-replace-jsx-attribute-value': 8.0.0(@babel/core@7.23.7) - '@svgr/babel-plugin-svg-dynamic-title': 8.0.0(@babel/core@7.23.7) - '@svgr/babel-plugin-svg-em-dimensions': 8.0.0(@babel/core@7.23.7) - '@svgr/babel-plugin-transform-react-native-svg': 8.1.0(@babel/core@7.23.7) - '@svgr/babel-plugin-transform-svg-component': 8.0.0(@babel/core@7.23.7) - - '@svgr/core@8.1.0(typescript@5.2.2)': - dependencies: - '@babel/core': 7.23.7 - '@svgr/babel-preset': 8.1.0(@babel/core@7.23.7) - camelcase: 6.3.0 - cosmiconfig: 8.3.6(typescript@5.2.2) - snake-case: 3.0.4 - transitivePeerDependencies: - - supports-color - - typescript - - '@svgr/hast-util-to-babel-ast@8.0.0': - dependencies: - '@babel/types': 7.23.6 - entities: 4.4.0 - - '@svgr/plugin-jsx@8.1.0(@svgr/core@8.1.0(typescript@5.2.2))': - dependencies: - '@babel/core': 7.23.7 - '@svgr/babel-preset': 8.1.0(@babel/core@7.23.7) - '@svgr/core': 8.1.0(typescript@5.2.2) - '@svgr/hast-util-to-babel-ast': 8.0.0 - svg-parser: 2.0.4 - transitivePeerDependencies: - - supports-color - - '@svgr/plugin-svgo@8.1.0(@svgr/core@8.1.0(typescript@5.2.2))(typescript@5.2.2)': - dependencies: - '@svgr/core': 8.1.0(typescript@5.2.2) - cosmiconfig: 8.3.6(typescript@5.2.2) - deepmerge: 4.3.1 - svgo: 3.2.0 - transitivePeerDependencies: - - typescript - - '@svgr/webpack@8.1.0(typescript@5.2.2)': - dependencies: - '@babel/core': 7.23.7 - '@babel/plugin-transform-react-constant-elements': 7.23.3(@babel/core@7.23.7) - '@babel/preset-env': 7.23.8(@babel/core@7.23.7) - '@babel/preset-react': 7.23.3(@babel/core@7.23.7) - '@babel/preset-typescript': 7.23.3(@babel/core@7.23.7) - '@svgr/core': 8.1.0(typescript@5.2.2) - '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@5.2.2)) - '@svgr/plugin-svgo': 8.1.0(@svgr/core@8.1.0(typescript@5.2.2))(typescript@5.2.2) - transitivePeerDependencies: - - supports-color - - typescript - - '@swc/core-darwin-arm64@1.3.101': - optional: true - - '@swc/core-darwin-arm64@1.3.104': - optional: true - - '@swc/core-darwin-x64@1.3.101': - optional: true - - '@swc/core-darwin-x64@1.3.104': - optional: true - - '@swc/core-linux-arm-gnueabihf@1.3.101': - optional: true - - '@swc/core-linux-arm-gnueabihf@1.3.104': - optional: true - - '@swc/core-linux-arm64-gnu@1.3.101': - optional: true - - '@swc/core-linux-arm64-gnu@1.3.104': - optional: true - - '@swc/core-linux-arm64-musl@1.3.101': - optional: true - - '@swc/core-linux-arm64-musl@1.3.104': - optional: true - - '@swc/core-linux-x64-gnu@1.3.101': - optional: true - - '@swc/core-linux-x64-gnu@1.3.104': - optional: true - - '@swc/core-linux-x64-musl@1.3.101': - optional: true - - '@swc/core-linux-x64-musl@1.3.104': - optional: true - - '@swc/core-win32-arm64-msvc@1.3.101': - optional: true - - '@swc/core-win32-arm64-msvc@1.3.104': - optional: true - - '@swc/core-win32-ia32-msvc@1.3.101': - optional: true - - '@swc/core-win32-ia32-msvc@1.3.104': - optional: true - - '@swc/core-win32-x64-msvc@1.3.101': - optional: true - - '@swc/core-win32-x64-msvc@1.3.104': - optional: true - - '@swc/core@1.3.101(@swc/helpers@0.5.2)': - dependencies: - '@swc/counter': 0.1.2 - '@swc/types': 0.1.5 - optionalDependencies: - '@swc/core-darwin-arm64': 1.3.101 - '@swc/core-darwin-x64': 1.3.101 - '@swc/core-linux-arm-gnueabihf': 1.3.101 - '@swc/core-linux-arm64-gnu': 1.3.101 - '@swc/core-linux-arm64-musl': 1.3.101 - '@swc/core-linux-x64-gnu': 1.3.101 - '@swc/core-linux-x64-musl': 1.3.101 - '@swc/core-win32-arm64-msvc': 1.3.101 - '@swc/core-win32-ia32-msvc': 1.3.101 - '@swc/core-win32-x64-msvc': 1.3.101 - '@swc/helpers': 0.5.2 - - '@swc/core@1.3.104(@swc/helpers@0.5.2)': - dependencies: - '@swc/counter': 0.1.2 - '@swc/types': 0.1.5 - optionalDependencies: - '@swc/core-darwin-arm64': 1.3.104 - '@swc/core-darwin-x64': 1.3.104 - '@swc/core-linux-arm-gnueabihf': 1.3.104 - '@swc/core-linux-arm64-gnu': 1.3.104 - '@swc/core-linux-arm64-musl': 1.3.104 - '@swc/core-linux-x64-gnu': 1.3.104 - '@swc/core-linux-x64-musl': 1.3.104 - '@swc/core-win32-arm64-msvc': 1.3.104 - '@swc/core-win32-ia32-msvc': 1.3.104 - '@swc/core-win32-x64-msvc': 1.3.104 - '@swc/helpers': 0.5.2 - - '@swc/counter@0.1.2': {} - - '@swc/helpers@0.5.2': - dependencies: - tslib: 2.6.2 - - '@swc/types@0.1.5': {} - - '@tabler/icons-react@2.47.0(react@18.2.0)': - dependencies: - '@tabler/icons': 2.47.0 - prop-types: 15.8.1 - react: 18.2.0 - - '@tabler/icons@2.47.0': {} - - '@tanstack/query-core@5.20.1': {} - - '@tanstack/query-devtools@5.20.1': {} - - '@tanstack/react-query-devtools@5.20.1(@tanstack/react-query@5.20.1(react@18.2.0))(react@18.2.0)': - dependencies: - '@tanstack/query-devtools': 5.20.1 - '@tanstack/react-query': 5.20.1(react@18.2.0) - react: 18.2.0 - - '@tanstack/react-query@5.20.1(react@18.2.0)': - dependencies: - '@tanstack/query-core': 5.20.1 - react: 18.2.0 - - '@tanstack/react-table@8.11.8(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': - dependencies: - '@tanstack/table-core': 8.11.8 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - '@tanstack/table-core@8.11.8': {} - - '@testing-library/dom@9.3.4': - dependencies: - '@babel/code-frame': 7.23.5 - '@babel/runtime': 7.23.8 - '@types/aria-query': 5.0.4 - aria-query: 5.1.3 - chalk: 4.1.2 - dom-accessibility-api: 0.5.16 - lz-string: 1.5.0 - pretty-format: 27.5.1 - - '@testing-library/jest-dom@6.2.0(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.11.1)(babel-plugin-macros@3.1.0))': - dependencies: - '@adobe/css-tools': 4.3.2 - '@babel/runtime': 7.23.8 - aria-query: 5.1.3 - chalk: 3.0.0 - css.escape: 1.5.1 - dom-accessibility-api: 0.6.3 - lodash: 4.17.21 - redent: 3.0.0 - optionalDependencies: - '@jest/globals': 29.7.0 - '@types/jest': 29.5.12 - jest: 29.7.0(@types/node@20.11.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)) - - '@testing-library/user-event@14.3.0(@testing-library/dom@9.3.4)': - dependencies: - '@testing-library/dom': 9.3.4 - - '@trysound/sax@0.2.0': {} - - '@tsconfig/node10@1.0.9': {} - - '@tsconfig/node12@1.0.11': {} - - '@tsconfig/node14@1.0.3': {} - - '@tsconfig/node16@1.0.4': {} - - '@types/accepts@1.3.5': - dependencies: - '@types/node': 20.11.1 - - '@types/aria-query@5.0.4': {} - - '@types/babel__core@7.20.0': - dependencies: - '@babel/parser': 7.23.6 - '@babel/types': 7.23.6 - '@types/babel__generator': 7.6.4 - '@types/babel__template': 7.4.1 - '@types/babel__traverse': 7.18.3 - - '@types/babel__generator@7.6.4': - dependencies: - '@babel/types': 7.23.6 - - '@types/babel__template@7.4.1': - dependencies: - '@babel/parser': 7.23.6 - '@babel/types': 7.23.6 - - '@types/babel__traverse@7.18.3': - dependencies: - '@babel/types': 7.23.6 - - '@types/bcryptjs@2.4.2': {} - - '@types/body-parser@1.19.2': - dependencies: - '@types/connect': 3.4.35 - '@types/node': 20.11.1 - - '@types/chai@4.3.11': {} - - '@types/connect@3.4.35': - dependencies: - '@types/node': 20.11.1 - - '@types/content-disposition@0.5.5': {} - - '@types/cookie@0.4.1': {} - - '@types/cookies@0.7.7': - dependencies: - '@types/connect': 3.4.35 - '@types/express': 4.17.17 - '@types/keygrip': 1.0.2 - '@types/node': 20.11.1 - - '@types/cors@2.8.13': - dependencies: - '@types/node': 20.11.1 - - '@types/cross-spawn@6.0.6': - dependencies: - '@types/node': 20.11.1 - - '@types/detect-port@1.3.5': {} - - '@types/doctrine@0.0.3': {} - - '@types/doctrine@0.0.9': {} - - '@types/ejs@3.1.5': {} - - '@types/emscripten@1.39.10': {} - - '@types/escodegen@0.0.6': {} - - '@types/eslint-scope@3.7.4': - dependencies: - '@types/eslint': 8.21.1 - '@types/estree': 0.0.51 - - '@types/eslint@8.21.1': - dependencies: - '@types/estree': 0.0.51 - '@types/json-schema': 7.0.15 - - '@types/estree@0.0.51': {} - - '@types/express-serve-static-core@4.17.33': - dependencies: - '@types/node': 20.11.1 - '@types/qs': 6.9.11 - '@types/range-parser': 1.2.4 - - '@types/express@4.17.17': - dependencies: - '@types/body-parser': 1.19.2 - '@types/express-serve-static-core': 4.17.33 - '@types/qs': 6.9.11 - '@types/serve-static': 1.15.0 - - '@types/find-cache-dir@3.2.1': {} - - '@types/graceful-fs@4.1.6': - dependencies: - '@types/node': 20.11.1 - - '@types/html-minifier-terser@6.1.0': {} - - '@types/http-assert@1.5.3': {} - - '@types/http-errors@2.0.1': {} - - '@types/istanbul-lib-coverage@2.0.4': {} - - '@types/istanbul-lib-report@3.0.0': - dependencies: - '@types/istanbul-lib-coverage': 2.0.4 - - '@types/istanbul-reports@3.0.1': - dependencies: - '@types/istanbul-lib-report': 3.0.0 - - '@types/jest@29.5.12': - dependencies: - expect: 29.5.0 - pretty-format: 29.5.0 - - '@types/json-schema@7.0.15': {} - - '@types/json5@0.0.29': {} - - '@types/jsonwebtoken@9.0.6': - dependencies: - '@types/node': 20.11.1 - - '@types/keygrip@1.0.2': {} - - '@types/koa-bodyparser@4.3.10': - dependencies: - '@types/koa': 2.13.5 - - '@types/koa-compose@3.2.5': - dependencies: - '@types/koa': 2.13.5 - - '@types/koa-helmet@6.0.4': - dependencies: - '@types/koa': 2.13.5 - helmet: 4.6.0 - - '@types/koa-logger@3.1.2': - dependencies: - '@types/koa': 2.13.5 - - '@types/koa-mount@4.0.2': - dependencies: - '@types/koa': 2.13.5 - - '@types/koa-ratelimit@5.0.0': - dependencies: - '@types/koa': 2.13.5 - ioredis: 5.3.2 - transitivePeerDependencies: - - supports-color - - '@types/koa@2.13.5': - dependencies: - '@types/accepts': 1.3.5 - '@types/content-disposition': 0.5.5 - '@types/cookies': 0.7.7 - '@types/http-assert': 1.5.3 - '@types/http-errors': 2.0.1 - '@types/keygrip': 1.0.2 - '@types/koa-compose': 3.2.5 - '@types/node': 20.11.1 - - '@types/koa__cors@3.3.1': - dependencies: - '@types/koa': 2.13.5 - - '@types/koa__multer@2.0.4': - dependencies: - '@types/koa': 2.13.5 - - '@types/koa__router@12.0.0': - dependencies: - '@types/koa': 2.13.5 - - '@types/lodash@4.14.191': {} - - '@types/lodash@4.14.202': {} - - '@types/mdx@2.0.10': {} - - '@types/mime-types@2.1.4': {} - - '@types/mime@3.0.1': {} - - '@types/minimist@1.2.5': {} - - '@types/mixpanel-browser@2.49.0': {} - - '@types/module-alias@2.0.1': {} - - '@types/node-fetch@2.6.11': - dependencies: - '@types/node': 20.11.1 - form-data: 4.0.0 - - '@types/node-schedule@2.1.0': - dependencies: - '@types/node': 20.11.1 - - '@types/node@18.18.14': - dependencies: - undici-types: 5.26.5 - - '@types/node@20.11.1': - dependencies: - undici-types: 5.26.5 - - '@types/normalize-package-data@2.4.1': {} - - '@types/parse-json@4.0.0': {} - - '@types/pretty-hrtime@1.0.3': {} - - '@types/prismjs@1.26.3': {} - - '@types/prop-types@15.7.5': {} - - '@types/psl@1.1.0': {} - - '@types/qs@6.9.11': {} - - '@types/range-parser@1.2.4': {} - - '@types/react-dom@18.2.19': - dependencies: - '@types/react': 18.2.55 - - '@types/react@18.2.55': - dependencies: - '@types/prop-types': 15.7.5 - '@types/scheduler': 0.16.2 - csstype: 3.1.1 - - '@types/resolve@1.20.6': {} - - '@types/scheduler@0.16.2': {} - - '@types/semver@7.3.13': {} - - '@types/semver@7.5.7': {} - - '@types/serve-static@1.15.0': - dependencies: - '@types/mime': 3.0.1 - '@types/node': 20.11.1 - - '@types/stack-utils@2.0.1': {} - - '@types/triple-beam@1.3.2': {} - - '@types/unist@2.0.10': {} - - '@types/uuid@9.0.7': {} - - '@types/webidl-conversions@7.0.0': {} - - '@types/webpack@5.28.5(@swc/core@1.3.101(@swc/helpers@0.5.2))(esbuild@0.19.11)': - dependencies: - '@types/node': 20.11.1 - tapable: 2.2.1 - webpack: 5.75.0(@swc/core@1.3.101(@swc/helpers@0.5.2))(esbuild@0.19.11) - transitivePeerDependencies: - - '@swc/core' - - esbuild - - uglify-js - - webpack-cli - - '@types/webpack@5.28.5(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)': - dependencies: - '@types/node': 20.11.1 - tapable: 2.2.1 - webpack: 5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6) - transitivePeerDependencies: - - '@swc/core' - - esbuild - - uglify-js - - webpack-cli - optional: true - - '@types/whatwg-url@8.2.2': - dependencies: - '@types/node': 20.11.1 - '@types/webidl-conversions': 7.0.0 - - '@types/yargs-parser@21.0.0': {} - - '@types/yargs@16.0.9': - dependencies: - '@types/yargs-parser': 21.0.0 - - '@types/yargs@17.0.22': - dependencies: - '@types/yargs-parser': 21.0.0 - - '@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint@8.56.0)(typescript@5.2.2)': - dependencies: - '@eslint-community/regexpp': 4.10.0 - '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.2.2) - '@typescript-eslint/scope-manager': 6.21.0 - '@typescript-eslint/type-utils': 6.21.0(eslint@8.56.0)(typescript@5.2.2) - '@typescript-eslint/utils': 6.21.0(eslint@8.56.0)(typescript@5.2.2) - '@typescript-eslint/visitor-keys': 6.21.0 - debug: 4.3.4 - eslint: 8.56.0 - graphemer: 1.4.0 - ignore: 5.2.4 - natural-compare: 1.4.0 - semver: 7.5.4 - ts-api-utils: 1.2.1(typescript@5.2.2) - optionalDependencies: - typescript: 5.2.2 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2)': - dependencies: - '@typescript-eslint/scope-manager': 6.21.0 - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.2.2) - '@typescript-eslint/visitor-keys': 6.21.0 - debug: 4.3.4 - eslint: 8.56.0 - optionalDependencies: - typescript: 5.2.2 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/scope-manager@6.21.0': - dependencies: - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/visitor-keys': 6.21.0 - - '@typescript-eslint/type-utils@6.21.0(eslint@8.56.0)(typescript@5.2.2)': - dependencies: - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.2.2) - '@typescript-eslint/utils': 6.21.0(eslint@8.56.0)(typescript@5.2.2) - debug: 4.3.4 - eslint: 8.56.0 - ts-api-utils: 1.2.1(typescript@5.2.2) - optionalDependencies: - typescript: 5.2.2 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/types@6.21.0': {} - - '@typescript-eslint/typescript-estree@6.21.0(typescript@5.2.2)': - dependencies: - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/visitor-keys': 6.21.0 - debug: 4.3.4 - globby: 11.1.0 - is-glob: 4.0.3 - minimatch: 9.0.3 - semver: 7.5.4 - ts-api-utils: 1.2.1(typescript@5.2.2) - optionalDependencies: - typescript: 5.2.2 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/utils@6.21.0(eslint@8.56.0)(typescript@5.2.2)': - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0) - '@types/json-schema': 7.0.15 - '@types/semver': 7.5.7 - '@typescript-eslint/scope-manager': 6.21.0 - '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.2.2) - eslint: 8.56.0 - semver: 7.5.4 - transitivePeerDependencies: - - supports-color - - typescript - - '@typescript-eslint/visitor-keys@6.21.0': - dependencies: - '@typescript-eslint/types': 6.21.0 - eslint-visitor-keys: 3.4.3 - - '@ungap/structured-clone@1.2.0': {} - - '@vitest/expect@0.34.7': - dependencies: - '@vitest/spy': 0.34.7 - '@vitest/utils': 0.34.7 - chai: 4.4.1 - - '@vitest/spy@0.34.7': - dependencies: - tinyspy: 2.2.0 - - '@vitest/utils@0.34.7': - dependencies: - diff-sequences: 29.4.3 - loupe: 2.3.7 - pretty-format: 29.5.0 - - '@webassemblyjs/ast@1.11.1': - dependencies: - '@webassemblyjs/helper-numbers': 1.11.1 - '@webassemblyjs/helper-wasm-bytecode': 1.11.1 - - '@webassemblyjs/floating-point-hex-parser@1.11.1': {} - - '@webassemblyjs/helper-api-error@1.11.1': {} - - '@webassemblyjs/helper-buffer@1.11.1': {} - - '@webassemblyjs/helper-numbers@1.11.1': - dependencies: - '@webassemblyjs/floating-point-hex-parser': 1.11.1 - '@webassemblyjs/helper-api-error': 1.11.1 - '@xtuc/long': 4.2.2 - - '@webassemblyjs/helper-wasm-bytecode@1.11.1': {} - - '@webassemblyjs/helper-wasm-section@1.11.1': - 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 - - '@webassemblyjs/ieee754@1.11.1': - dependencies: - '@xtuc/ieee754': 1.2.0 - - '@webassemblyjs/leb128@1.11.1': - dependencies: - '@xtuc/long': 4.2.2 - - '@webassemblyjs/utf8@1.11.1': {} - - '@webassemblyjs/wasm-edit@1.11.1': - 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 - - '@webassemblyjs/wasm-gen@1.11.1': - 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 - - '@webassemblyjs/wasm-opt@1.11.1': - dependencies: - '@webassemblyjs/ast': 1.11.1 - '@webassemblyjs/helper-buffer': 1.11.1 - '@webassemblyjs/wasm-gen': 1.11.1 - '@webassemblyjs/wasm-parser': 1.11.1 - - '@webassemblyjs/wasm-parser@1.11.1': - 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 - - '@webassemblyjs/wast-printer@1.11.1': - dependencies: - '@webassemblyjs/ast': 1.11.1 - '@xtuc/long': 4.2.2 - - '@xtuc/ieee754@1.2.0': {} - - '@xtuc/long@4.2.2': {} - - '@yarnpkg/esbuild-plugin-pnp@3.0.0-rc.15(esbuild@0.18.6)': - dependencies: - esbuild: 0.18.6 - tslib: 2.5.0 - - '@yarnpkg/fslib@2.10.3': - dependencies: - '@yarnpkg/libzip': 2.3.0 - tslib: 1.14.1 - - '@yarnpkg/libzip@2.3.0': - dependencies: - '@types/emscripten': 1.39.10 - tslib: 1.14.1 - - abbrev@2.0.0: {} - - abort-controller@3.0.0: - dependencies: - event-target-shim: 5.0.1 - - accepts@1.3.8: - dependencies: - mime-types: 2.1.35 - negotiator: 0.6.3 - - acorn-import-assertions@1.8.0(acorn@8.11.3): - dependencies: - acorn: 8.11.3 - - acorn-jsx@5.3.2(acorn@7.4.1): - dependencies: - acorn: 7.4.1 - - acorn-jsx@5.3.2(acorn@8.11.3): - dependencies: - acorn: 8.11.3 - - acorn-walk@7.2.0: {} - - acorn-walk@8.2.0: {} - - acorn@7.4.1: {} - - acorn@8.11.3: {} - - acorn@8.8.2: {} - - address@1.2.2: {} - - adjust-sourcemap-loader@4.0.0: - dependencies: - loader-utils: 2.0.4 - regex-parser: 2.3.0 - - agent-base@5.1.1: {} - - agent-base@6.0.2: - dependencies: - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - - agent-base@7.1.0: - dependencies: - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - - aggregate-error@3.1.0: - dependencies: - clean-stack: 2.2.0 - indent-string: 4.0.0 - - ajv-formats@2.1.1(ajv@8.12.0): - optionalDependencies: - ajv: 8.12.0 - - ajv-keywords@3.5.2(ajv@6.12.6): - dependencies: - ajv: 6.12.6 - - ajv-keywords@5.1.0(ajv@8.12.0): - dependencies: - ajv: 8.12.0 - fast-deep-equal: 3.1.3 - - ajv@6.12.6: - dependencies: - fast-deep-equal: 3.1.3 - fast-json-stable-stringify: 2.1.0 - json-schema-traverse: 0.4.1 - uri-js: 4.4.1 - - ajv@8.12.0: - dependencies: - fast-deep-equal: 3.1.3 - json-schema-traverse: 1.0.0 - require-from-string: 2.0.2 - uri-js: 4.4.1 - - ansi-escapes@4.3.2: - dependencies: - type-fest: 0.21.3 - - ansi-escapes@6.2.0: - dependencies: - type-fest: 3.13.1 - - ansi-html-community@0.0.8: {} - - ansi-regex@2.1.1: {} - - ansi-regex@5.0.1: {} - - ansi-regex@6.0.1: {} - - ansi-styles@2.2.1: {} - - ansi-styles@3.2.1: - dependencies: - color-convert: 1.9.3 - - ansi-styles@4.3.0: - dependencies: - color-convert: 2.0.1 - - ansi-styles@5.2.0: {} - - ansi-styles@6.2.1: {} - - any-promise@1.3.0: {} - - anymatch@3.1.3: - dependencies: - normalize-path: 3.0.0 - picomatch: 2.3.1 - - app-root-dir@1.0.2: {} - - append-field@1.0.0: {} - - arg@4.1.3: {} - - arg@5.0.2: {} - - argparse@1.0.10: - dependencies: - sprintf-js: 1.0.3 - - argparse@2.0.1: {} - - aria-hidden@1.2.3: - dependencies: - tslib: 2.5.0 - - aria-query@5.1.3: - dependencies: - deep-equal: 2.2.0 - - array-buffer-byte-length@1.0.0: - dependencies: - call-bind: 1.0.5 - is-array-buffer: 3.0.2 - - array-flatten@1.1.1: {} - - array-includes@3.1.7: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - get-intrinsic: 1.2.2 - is-string: 1.0.7 - - array-union@2.1.0: {} - - array.prototype.filter@1.0.3: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - es-array-method-boxes-properly: 1.0.0 - is-string: 1.0.7 - - array.prototype.findlastindex@1.2.4: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - es-errors: 1.3.0 - es-shim-unscopables: 1.0.2 - - array.prototype.flat@1.3.2: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - es-shim-unscopables: 1.0.2 - - array.prototype.flatmap@1.3.2: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - es-shim-unscopables: 1.0.2 - - array.prototype.tosorted@1.1.1: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - es-shim-unscopables: 1.0.2 - get-intrinsic: 1.2.2 - - arraybuffer.prototype.slice@1.0.2: - dependencies: - array-buffer-byte-length: 1.0.0 - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - get-intrinsic: 1.2.2 - is-array-buffer: 3.0.2 - is-shared-array-buffer: 1.0.2 - - arrify@1.0.1: {} - - arrify@2.0.1: {} - - asn1.js@5.4.1: - dependencies: - bn.js: 4.12.0 - inherits: 2.0.4 - minimalistic-assert: 1.0.1 - safer-buffer: 2.1.2 - - assert@2.1.0: - dependencies: - call-bind: 1.0.5 - is-nan: 1.3.2 - object-is: 1.1.5 - object.assign: 4.1.4 - util: 0.12.5 - - assertion-error@1.1.0: {} - - ast-types-flow@0.0.7: {} - - ast-types@0.16.1: - dependencies: - tslib: 2.5.0 - - astral-regex@2.0.0: {} - - async-limiter@1.0.1: {} - - async-mutex@0.3.2: - dependencies: - tslib: 2.5.0 - - async-mutex@0.4.1: - dependencies: - tslib: 2.6.2 - - async-ratelimiter@1.3.8: {} - - async@3.2.4: {} - - asynciterator.prototype@1.0.0: - dependencies: - has-symbols: 1.0.3 - - asynckit@0.4.0: {} - - autoprefixer@10.4.14(postcss@8.4.32): - dependencies: - browserslist: 4.22.2 - caniuse-lite: 1.0.30001579 - fraction.js: 4.2.0 - normalize-range: 0.1.2 - picocolors: 1.0.0 - postcss: 8.4.32 - postcss-value-parser: 4.2.0 - - available-typed-arrays@1.0.5: {} - - axe-core@4.6.3: {} - - axios@1.6.7: - dependencies: - follow-redirects: 1.15.5(debug@4.3.4) - form-data: 4.0.0 - proxy-from-env: 1.1.0 - transitivePeerDependencies: - - debug - - axobject-query@3.1.1: - dependencies: - deep-equal: 2.2.0 - - b4a@1.6.4: {} - - babel-core@7.0.0-bridge.0(@babel/core@7.23.7): - dependencies: - '@babel/core': 7.23.7 - - babel-jest@29.7.0(@babel/core@7.21.0): - dependencies: - '@babel/core': 7.21.0 - '@jest/transform': 29.7.0 - '@types/babel__core': 7.20.0 - babel-plugin-istanbul: 6.1.1 - babel-preset-jest: 29.6.3(@babel/core@7.21.0) - chalk: 4.1.2 - graceful-fs: 4.2.11 - slash: 3.0.0 - transitivePeerDependencies: - - supports-color - optional: true - - babel-jest@29.7.0(@babel/core@7.23.7): - dependencies: - '@babel/core': 7.23.7 - '@jest/transform': 29.7.0 - '@types/babel__core': 7.20.0 - babel-plugin-istanbul: 6.1.1 - babel-preset-jest: 29.6.3(@babel/core@7.23.7) - chalk: 4.1.2 - graceful-fs: 4.2.11 - slash: 3.0.0 - transitivePeerDependencies: - - supports-color - - babel-loader@9.1.2(@babel/core@7.23.7)(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)): - dependencies: - '@babel/core': 7.23.7 - find-cache-dir: 3.3.2 - schema-utils: 4.0.0 - webpack: 5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6) - - babel-plugin-add-react-displayname@0.0.5: {} - - babel-plugin-istanbul@6.1.1: - dependencies: - '@babel/helper-plugin-utils': 7.22.5 - '@istanbuljs/load-nyc-config': 1.1.0 - '@istanbuljs/schema': 0.1.3 - istanbul-lib-instrument: 5.2.1 - test-exclude: 6.0.0 - transitivePeerDependencies: - - supports-color - - babel-plugin-jest-hoist@29.6.3: - dependencies: - '@babel/template': 7.22.15 - '@babel/types': 7.23.6 - '@types/babel__core': 7.20.0 - '@types/babel__traverse': 7.18.3 - - babel-plugin-macros@3.1.0: - dependencies: - '@babel/runtime': 7.23.8 - cosmiconfig: 7.1.0 - resolve: 1.22.8 - - babel-plugin-polyfill-corejs2@0.4.8(@babel/core@7.23.7): - dependencies: - '@babel/compat-data': 7.23.5 - '@babel/core': 7.23.7 - '@babel/helper-define-polyfill-provider': 0.5.0(@babel/core@7.23.7) - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - babel-plugin-polyfill-corejs3@0.8.7(@babel/core@7.23.7): - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-define-polyfill-provider': 0.4.4(@babel/core@7.23.7) - core-js-compat: 3.35.0 - transitivePeerDependencies: - - supports-color - - babel-plugin-polyfill-regenerator@0.5.5(@babel/core@7.23.7): - dependencies: - '@babel/core': 7.23.7 - '@babel/helper-define-polyfill-provider': 0.5.0(@babel/core@7.23.7) - transitivePeerDependencies: - - supports-color - - babel-preset-current-node-syntax@1.0.1(@babel/core@7.21.0): - dependencies: - '@babel/core': 7.21.0 - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.21.0) - '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.21.0) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.21.0) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.21.0) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.21.0) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.21.0) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.21.0) - optional: true - - babel-preset-current-node-syntax@1.0.1(@babel/core@7.23.7): - dependencies: - '@babel/core': 7.23.7 - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.7) - '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.23.7) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.23.7) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.7) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.7) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.7) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.23.7) - - babel-preset-jest@29.6.3(@babel/core@7.21.0): - dependencies: - '@babel/core': 7.21.0 - babel-plugin-jest-hoist: 29.6.3 - babel-preset-current-node-syntax: 1.0.1(@babel/core@7.21.0) - optional: true - - babel-preset-jest@29.6.3(@babel/core@7.23.7): - dependencies: - '@babel/core': 7.23.7 - babel-plugin-jest-hoist: 29.6.3 - babel-preset-current-node-syntax: 1.0.1(@babel/core@7.23.7) - - balanced-match@1.0.2: {} - - base64-js@1.5.1: {} - - base64id@2.0.0: {} - - bcryptjs@2.4.3: {} - - better-opn@3.0.2: - dependencies: - open: 8.4.2 - - big-integer@1.6.51: {} - - big.js@5.2.2: {} - - bignumber.js@9.1.1: {} - - binary-extensions@2.2.0: {} - - bl@4.1.0: - dependencies: - buffer: 5.7.1 - inherits: 2.0.4 - readable-stream: 3.6.2 - - bluebird@3.4.7: {} - - bn.js@4.12.0: {} - - bn.js@5.2.1: {} - - body-parser@1.20.1: - dependencies: - bytes: 3.1.2 - content-type: 1.0.5 - 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 - transitivePeerDependencies: - - supports-color - - boolbase@1.0.0: {} - - bowser@2.11.0: {} - - bplist-parser@0.2.0: - dependencies: - big-integer: 1.6.51 - - brace-expansion@1.1.11: - dependencies: - balanced-match: 1.0.2 - concat-map: 0.0.1 - - brace-expansion@2.0.1: - dependencies: - balanced-match: 1.0.2 - - braces@3.0.2: - dependencies: - fill-range: 7.0.1 - - brorand@1.1.0: {} - - browser-assert@1.2.1: {} - - browserify-aes@1.2.0: - dependencies: - buffer-xor: 1.0.3 - cipher-base: 1.0.4 - create-hash: 1.2.0 - evp_bytestokey: 1.0.3 - inherits: 2.0.4 - safe-buffer: 5.2.1 - - browserify-cipher@1.0.1: - dependencies: - browserify-aes: 1.2.0 - browserify-des: 1.0.2 - evp_bytestokey: 1.0.3 - - browserify-des@1.0.2: - dependencies: - cipher-base: 1.0.4 - des.js: 1.1.0 - inherits: 2.0.4 - safe-buffer: 5.2.1 - - browserify-rsa@4.1.0: - dependencies: - bn.js: 5.2.1 - randombytes: 2.1.0 - - browserify-sign@4.2.2: - dependencies: - bn.js: 5.2.1 - browserify-rsa: 4.1.0 - create-hash: 1.2.0 - create-hmac: 1.1.7 - elliptic: 6.5.4 - inherits: 2.0.4 - parse-asn1: 5.1.6 - readable-stream: 3.6.2 - safe-buffer: 5.2.1 - - browserify-zlib@0.1.4: - dependencies: - pako: 0.2.9 - - browserify-zlib@0.2.0: - dependencies: - pako: 1.0.11 - - browserslist@4.21.5: - dependencies: - caniuse-lite: 1.0.30001457 - electron-to-chromium: 1.4.304 - node-releases: 2.0.10 - update-browserslist-db: 1.0.10(browserslist@4.21.5) - - browserslist@4.22.2: - dependencies: - caniuse-lite: 1.0.30001579 - electron-to-chromium: 1.4.637 - node-releases: 2.0.14 - update-browserslist-db: 1.0.13(browserslist@4.22.2) - - bs-logger@0.2.6: - dependencies: - fast-json-stable-stringify: 2.1.0 - - bser@2.1.1: - dependencies: - node-int64: 0.4.0 - - bson@4.7.2: - dependencies: - buffer: 5.7.1 - - bson@5.5.1: {} - - bson@6.5.0: {} - - buffer-crc32@0.2.13: {} - - buffer-equal-constant-time@1.0.1: {} - - buffer-from@0.1.2: {} - - buffer-from@1.1.2: {} - - buffer-xor@1.0.3: {} - - buffer@5.6.0: - dependencies: - base64-js: 1.5.1 - ieee754: 1.2.1 - - buffer@5.7.1: - dependencies: - base64-js: 1.5.1 - ieee754: 1.2.1 - - buffer@6.0.3: - dependencies: - base64-js: 1.5.1 - ieee754: 1.2.1 - - builtin-status-codes@3.0.0: {} - - busboy@1.6.0: - dependencies: - streamsearch: 1.1.0 - - bytes@3.0.0: {} - - bytes@3.1.2: {} - - cache-content-type@1.0.1: - dependencies: - mime-types: 2.1.35 - ylru: 1.3.2 - - call-bind@1.0.2: - dependencies: - function-bind: 1.1.2 - get-intrinsic: 1.2.2 - - call-bind@1.0.5: - dependencies: - function-bind: 1.1.2 - get-intrinsic: 1.2.2 - set-function-length: 1.1.1 - - callsites@3.1.0: {} - - camel-case@4.1.2: - dependencies: - pascal-case: 3.1.2 - tslib: 2.5.0 - - camelcase-css@2.0.1: {} - - camelcase-keys@6.2.2: - dependencies: - camelcase: 5.3.1 - map-obj: 4.3.0 - quick-lru: 4.0.1 - - camelcase@5.3.1: {} - - camelcase@6.3.0: {} - - caniuse-lite@1.0.30001457: {} - - caniuse-lite@1.0.30001579: {} - - case-sensitive-paths-webpack-plugin@2.4.0: {} - - chai@4.4.1: - dependencies: - assertion-error: 1.1.0 - check-error: 1.0.3 - deep-eql: 4.1.3 - get-func-name: 2.0.2 - loupe: 2.3.7 - pathval: 1.1.1 - type-detect: 4.0.8 - - chalk@1.1.3: - dependencies: - ansi-styles: 2.2.1 - escape-string-regexp: 1.0.5 - has-ansi: 2.0.0 - strip-ansi: 3.0.1 - supports-color: 2.0.0 - - chalk@2.4.2: - dependencies: - ansi-styles: 3.2.1 - escape-string-regexp: 1.0.5 - supports-color: 5.5.0 - - chalk@3.0.0: - dependencies: - ansi-styles: 4.3.0 - supports-color: 7.2.0 - - chalk@4.1.2: - dependencies: - ansi-styles: 4.3.0 - supports-color: 7.2.0 - - chalk@5.2.0: {} - - chalk@5.3.0: {} - - char-regex@1.0.2: {} - - check-error@1.0.3: - dependencies: - get-func-name: 2.0.2 - - chokidar@3.5.3: - dependencies: - anymatch: 3.1.3 - braces: 3.0.2 - glob-parent: 5.1.2 - is-binary-path: 2.1.0 - is-glob: 4.0.3 - normalize-path: 3.0.0 - readdirp: 3.6.0 - optionalDependencies: - fsevents: 2.3.2 - - chownr@1.1.4: {} - - chownr@2.0.0: {} - - chrome-trace-event@1.0.3: {} - - ci-info@3.8.0: {} - - cipher-base@1.0.4: - dependencies: - inherits: 2.0.4 - safe-buffer: 5.2.1 - - citty@0.1.5: - dependencies: - consola: 3.2.3 - - cjs-module-lexer@1.2.3: {} - - clean-css@5.3.3: - dependencies: - source-map: 0.6.1 - - clean-stack@2.2.0: {} - - cli-cursor@3.1.0: - dependencies: - restore-cursor: 3.1.0 - - cli-cursor@4.0.0: - dependencies: - restore-cursor: 4.0.0 - - cli-spinner@0.2.10: {} - - cli-spinners@2.9.0: {} - - cli-table3@0.6.3: - dependencies: - string-width: 4.2.3 - optionalDependencies: - '@colors/colors': 1.5.0 - - cli-truncate@2.1.0: - dependencies: - slice-ansi: 3.0.0 - string-width: 4.2.3 - - cli-truncate@3.1.0: - dependencies: - slice-ansi: 5.0.0 - string-width: 5.1.2 - - cli-truncate@4.0.0: - dependencies: - slice-ansi: 5.0.0 - string-width: 7.1.0 - - client-only@0.0.1: {} - - cliui@8.0.1: - dependencies: - string-width: 4.2.3 - strip-ansi: 6.0.1 - wrap-ansi: 7.0.0 - - clone-deep@4.0.1: - dependencies: - is-plain-object: 2.0.4 - kind-of: 6.0.3 - shallow-clone: 3.0.1 - - clone@1.0.4: {} - - clsx@1.1.1: {} - - clsx@1.2.1: {} - - clsx@2.0.0: {} - - clsx@2.1.0: {} - - cluster-key-slot@1.1.2: {} - - co-body@6.1.0: - dependencies: - inflation: 2.0.0 - qs: 6.11.2 - raw-body: 2.5.1 - type-is: 1.6.18 - - co@4.6.0: {} - - collect-v8-coverage@1.0.1: {} - - color-convert@1.9.3: - dependencies: - color-name: 1.1.3 - - color-convert@2.0.1: - dependencies: - color-name: 1.1.4 - - color-name@1.1.3: {} - - color-name@1.1.4: {} - - color-string@1.9.1: - dependencies: - color-name: 1.1.4 - simple-swizzle: 0.2.2 - - color@3.2.1: - dependencies: - color-convert: 1.9.3 - color-string: 1.9.1 - - color@4.2.3: - dependencies: - color-convert: 2.0.1 - color-string: 1.9.1 - - colorette@2.0.19: {} - - colorette@2.0.20: {} - - colorspace@1.1.4: - dependencies: - color: 3.2.1 - text-hex: 1.0.0 - - combined-stream@1.0.8: - dependencies: - delayed-stream: 1.0.0 - - commander@10.0.0: {} - - commander@11.1.0: {} - - commander@2.20.3: {} - - commander@4.1.1: {} - - commander@6.2.1: {} - - commander@7.2.0: {} - - commander@8.3.0: {} - - common-path-prefix@3.0.0: {} - - commondir@1.0.1: {} - - compressible@2.0.18: - dependencies: - mime-db: 1.52.0 - - compression@1.7.4: - dependencies: - accepts: 1.3.8 - bytes: 3.0.0 - compressible: 2.0.18 - debug: 2.6.9 - on-headers: 1.0.2 - safe-buffer: 5.1.2 - vary: 1.1.2 - transitivePeerDependencies: - - supports-color - - concat-map@0.0.1: {} - - concat-stream@1.6.2: - dependencies: - buffer-from: 1.1.2 - inherits: 2.0.4 - readable-stream: 2.3.7 - typedarray: 0.0.6 - - config-chain@1.1.13: - dependencies: - ini: 1.3.8 - proto-list: 1.2.4 - - confusing-browser-globals@1.0.11: {} - - consola@3.2.3: {} - - console-browserify@1.2.0: {} - - constants-browserify@1.0.0: {} - - content-disposition@0.5.4: - dependencies: - safe-buffer: 5.2.1 - - content-type@1.0.5: {} - - convert-source-map@1.9.0: {} - - convert-source-map@2.0.0: {} - - cookie-signature@1.0.6: {} - - cookie@0.4.2: {} - - cookie@0.5.0: {} - - cookies@0.8.0: - dependencies: - depd: 2.0.0 - keygrip: 1.1.0 - - copy-to@2.0.1: {} - - core-js-compat@3.35.0: - dependencies: - browserslist: 4.22.2 - - core-js-pure@3.35.0: {} - - core-util-is@1.0.3: {} - - cors@2.8.5: - dependencies: - object-assign: 4.1.1 - vary: 1.1.2 - - cosmiconfig@7.1.0: - dependencies: - '@types/parse-json': 4.0.0 - import-fresh: 3.3.0 - parse-json: 5.2.0 - path-type: 4.0.0 - yaml: 1.10.2 - - cosmiconfig@8.3.6(typescript@5.2.2): - dependencies: - import-fresh: 3.3.0 - js-yaml: 4.1.0 - parse-json: 5.2.0 - path-type: 4.0.0 - optionalDependencies: - typescript: 5.2.2 - - create-ecdh@4.0.4: - dependencies: - bn.js: 4.12.0 - elliptic: 6.5.4 - - create-hash@1.2.0: - dependencies: - cipher-base: 1.0.4 - inherits: 2.0.4 - md5.js: 1.3.5 - ripemd160: 2.0.2 - sha.js: 2.4.11 - - create-hmac@1.1.7: - dependencies: - cipher-base: 1.0.4 - create-hash: 1.2.0 - inherits: 2.0.4 - ripemd160: 2.0.2 - safe-buffer: 5.2.1 - sha.js: 2.4.11 - - create-jest@29.7.0(@types/node@20.11.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)): - dependencies: - '@jest/types': 29.6.3 - chalk: 4.1.2 - exit: 0.1.2 - graceful-fs: 4.2.11 - jest-config: 29.7.0(@types/node@20.11.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)) - jest-util: 29.7.0 - prompts: 2.4.2 - transitivePeerDependencies: - - '@types/node' - - babel-plugin-macros - - supports-color - - ts-node - - create-require@1.1.1: {} - - cron-parser@4.8.1: - dependencies: - luxon: 3.3.0 - - cross-spawn@6.0.5: - dependencies: - nice-try: 1.0.5 - path-key: 2.0.1 - semver: 5.7.1 - shebang-command: 1.2.0 - which: 1.3.1 - - cross-spawn@7.0.3: - dependencies: - path-key: 3.1.1 - shebang-command: 2.0.0 - which: 2.0.2 - - crypto-browserify@3.12.0: - dependencies: - browserify-cipher: 1.0.1 - browserify-sign: 4.2.2 - create-ecdh: 4.0.4 - create-hash: 1.2.0 - create-hmac: 1.1.7 - diffie-hellman: 5.0.3 - inherits: 2.0.4 - pbkdf2: 3.1.2 - public-encrypt: 4.0.3 - randombytes: 2.1.0 - randomfill: 1.0.4 - - crypto-random-string@2.0.0: {} - - css-loader@6.10.0(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)): - dependencies: - icss-utils: 5.1.0(postcss@8.4.35) - postcss: 8.4.35 - postcss-modules-extract-imports: 3.0.0(postcss@8.4.35) - postcss-modules-local-by-default: 4.0.4(postcss@8.4.35) - postcss-modules-scope: 3.1.1(postcss@8.4.35) - postcss-modules-values: 4.0.0(postcss@8.4.35) - postcss-value-parser: 4.2.0 - semver: 7.5.4 - optionalDependencies: - webpack: 5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6) - - css-select@4.3.0: - dependencies: - boolbase: 1.0.0 - css-what: 6.1.0 - domhandler: 4.3.1 - domutils: 2.8.0 - nth-check: 2.1.1 - - css-select@5.1.0: - dependencies: - boolbase: 1.0.0 - css-what: 6.1.0 - domhandler: 5.0.3 - domutils: 3.1.0 - nth-check: 2.1.1 - - css-tree@2.2.1: - dependencies: - mdn-data: 2.0.28 - source-map-js: 1.0.2 - - css-tree@2.3.1: - dependencies: - mdn-data: 2.0.30 - source-map-js: 1.0.2 - - css-what@6.1.0: {} - - css.escape@1.5.1: {} - - cssesc@3.0.0: {} - - csso@5.0.5: - dependencies: - css-tree: 2.2.1 - - csstype@3.0.9: {} - - csstype@3.1.1: {} - - damerau-levenshtein@1.0.8: {} - - dayjs@1.11.10: {} - - debounce@2.0.0: {} - - debug@2.6.9: - dependencies: - ms: 2.0.0 - - debug@3.2.7: - dependencies: - ms: 2.1.3 - - debug@4.3.4: - dependencies: - ms: 2.1.2 - - decamelize-keys@1.1.1: - dependencies: - decamelize: 1.2.0 - map-obj: 1.0.1 - - decamelize@1.2.0: {} - - decompress-response@6.0.0: - dependencies: - mimic-response: 3.1.0 - - dedent@0.7.0: {} - - dedent@1.5.1(babel-plugin-macros@3.1.0): - optionalDependencies: - babel-plugin-macros: 3.1.0 - - deep-eql@4.1.3: - dependencies: - type-detect: 4.0.8 - - deep-equal@1.0.1: {} - - deep-equal@2.2.0: - dependencies: - call-bind: 1.0.5 - es-get-iterator: 1.1.3 - get-intrinsic: 1.2.2 - is-arguments: 1.1.1 - is-array-buffer: 3.0.2 - is-date-object: 1.0.5 - is-regex: 1.1.4 - is-shared-array-buffer: 1.0.2 - isarray: 2.0.5 - object-is: 1.1.5 - object-keys: 1.1.1 - object.assign: 4.1.4 - regexp.prototype.flags: 1.5.1 - side-channel: 1.0.4 - which-boxed-primitive: 1.0.2 - which-collection: 1.0.1 - which-typed-array: 1.1.13 - - deep-extend@0.6.0: {} - - deep-is@0.1.4: {} - - deepmerge@4.3.0: {} - - deepmerge@4.3.1: {} - - default-browser-id@3.0.0: - dependencies: - bplist-parser: 0.2.0 - untildify: 4.0.0 - - defaults@1.0.4: - dependencies: - clone: 1.0.4 - - define-data-property@1.1.1: - dependencies: - get-intrinsic: 1.2.2 - gopd: 1.0.1 - has-property-descriptors: 1.0.0 - - define-lazy-prop@2.0.0: {} - - define-properties@1.2.0: - dependencies: - has-property-descriptors: 1.0.0 - object-keys: 1.1.1 - - define-properties@1.2.1: - dependencies: - define-data-property: 1.1.1 - has-property-descriptors: 1.0.0 - object-keys: 1.1.1 - - defu@6.1.4: {} - - del@6.1.1: - dependencies: - globby: 11.1.0 - graceful-fs: 4.2.11 - is-glob: 4.0.3 - is-path-cwd: 2.2.0 - is-path-inside: 3.0.3 - p-map: 4.0.0 - rimraf: 3.0.2 - slash: 3.0.0 - - delayed-stream@1.0.0: {} - - delegates@1.0.0: {} - - denque@2.1.0: {} - - depd@1.1.2: {} - - depd@2.0.0: {} - - dequal@2.0.3: {} - - des.js@1.1.0: - dependencies: - inherits: 2.0.4 - minimalistic-assert: 1.0.1 - - destroy@1.2.0: {} - - detect-indent@6.1.0: {} - - detect-libc@2.0.2: {} - - detect-newline@3.1.0: {} - - detect-node-es@1.1.0: {} - - detect-package-manager@2.0.1: - dependencies: - execa: 5.1.1 - - detect-port@1.5.1: - dependencies: - address: 1.2.2 - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - - didyoumean@1.2.2: {} - - diff-sequences@29.4.3: {} - - diff-sequences@29.6.3: {} - - diff@4.0.2: {} - - diffie-hellman@5.0.3: - dependencies: - bn.js: 4.12.0 - miller-rabin: 4.0.1 - randombytes: 2.1.0 - - dir-glob@3.0.1: - dependencies: - path-type: 4.0.0 - - dlv@1.1.3: {} - - doctrine@2.1.0: - dependencies: - esutils: 2.0.3 - - doctrine@3.0.0: - dependencies: - esutils: 2.0.3 - - dom-accessibility-api@0.5.16: {} - - dom-accessibility-api@0.6.3: {} - - dom-converter@0.2.0: - dependencies: - utila: 0.4.0 - - dom-helpers@5.2.1: - dependencies: - '@babel/runtime': 7.23.8 - csstype: 3.1.1 - - dom-serializer@1.4.1: - dependencies: - domelementtype: 2.3.0 - domhandler: 4.3.1 - entities: 2.2.0 - - dom-serializer@2.0.0: - dependencies: - domelementtype: 2.3.0 - domhandler: 5.0.3 - entities: 4.4.0 - - domain-browser@4.23.0: {} - - domelementtype@2.3.0: {} - - domhandler@4.3.1: - dependencies: - domelementtype: 2.3.0 - - domhandler@5.0.3: - dependencies: - domelementtype: 2.3.0 - - domutils@2.8.0: - dependencies: - dom-serializer: 1.4.1 - domelementtype: 2.3.0 - domhandler: 4.3.1 - - domutils@3.1.0: - dependencies: - dom-serializer: 2.0.0 - domelementtype: 2.3.0 - domhandler: 5.0.3 - - dot-case@3.0.4: - dependencies: - no-case: 3.0.4 - tslib: 2.5.0 - - dotenv-expand@10.0.0: {} - - dotenv-flow@4.1.0: - dependencies: - dotenv: 16.0.3 - - dotenv@16.0.3: {} - - duplexer2@0.1.4: - dependencies: - readable-stream: 2.3.7 - - duplexify@3.7.1: - dependencies: - end-of-stream: 1.4.4 - inherits: 2.0.4 - readable-stream: 2.3.7 - stream-shift: 1.0.3 - - eastasianwidth@0.2.0: {} - - ecdsa-sig-formatter@1.0.11: - dependencies: - safe-buffer: 5.2.1 - - editorconfig@1.0.4: - dependencies: - '@one-ini/wasm': 0.1.1 - commander: 10.0.0 - minimatch: 9.0.1 - semver: 7.5.4 - - ee-first@1.1.1: {} - - ejs@3.1.9: - dependencies: - jake: 10.8.7 - - electron-to-chromium@1.4.304: {} - - electron-to-chromium@1.4.637: {} - - elliptic@6.5.4: - dependencies: - bn.js: 4.12.0 - brorand: 1.1.0 - hash.js: 1.1.7 - hmac-drbg: 1.0.1 - inherits: 2.0.4 - minimalistic-assert: 1.0.1 - minimalistic-crypto-utils: 1.0.1 - - emittery@0.13.1: {} - - emoji-regex@10.3.0: {} - - emoji-regex@8.0.0: {} - - emoji-regex@9.2.2: {} - - emojis-list@3.0.0: {} - - enabled@2.0.0: {} - - encodeurl@1.0.2: {} - - end-of-stream@1.4.4: - dependencies: - once: 1.4.0 - - endent@2.1.0: - dependencies: - dedent: 0.7.0 - fast-json-parse: 1.0.3 - objectorarray: 1.0.5 - - engine.io-client@6.5.3: - dependencies: - '@socket.io/component-emitter': 3.1.0 - debug: 4.3.4 - engine.io-parser: 5.2.2 - ws: 8.11.0 - xmlhttprequest-ssl: 2.0.0 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - engine.io-parser@5.0.6: {} - - engine.io-parser@5.2.2: {} - - engine.io@6.4.1: - dependencies: - '@types/cookie': 0.4.1 - '@types/cors': 2.8.13 - '@types/node': 20.11.1 - accepts: 1.3.8 - base64id: 2.0.0 - cookie: 0.4.2 - cors: 2.8.5 - debug: 4.3.4 - engine.io-parser: 5.0.6 - ws: 8.11.0 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - engine.io@6.5.4: - dependencies: - '@types/cookie': 0.4.1 - '@types/cors': 2.8.13 - '@types/node': 20.11.1 - accepts: 1.3.8 - base64id: 2.0.0 - cookie: 0.4.2 - cors: 2.8.5 - debug: 4.3.4 - engine.io-parser: 5.2.2 - ws: 8.11.0 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - enhanced-resolve@5.12.0: - dependencies: - graceful-fs: 4.2.11 - tapable: 2.2.1 - - entities@2.2.0: {} - - entities@3.0.1: {} - - entities@4.4.0: {} - - envinfo@7.11.0: {} - - error-ex@1.3.2: - dependencies: - is-arrayish: 0.2.1 - - error-stack-parser@2.1.4: - dependencies: - stackframe: 1.3.4 - - es-abstract@1.21.1: - dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.5 - es-set-tostringtag: 2.0.1 - es-to-primitive: 1.2.1 - function-bind: 1.1.2 - function.prototype.name: 1.1.5 - get-intrinsic: 1.2.2 - get-symbol-description: 1.0.0 - globalthis: 1.0.3 - gopd: 1.0.1 - has: 1.0.3 - has-property-descriptors: 1.0.0 - has-proto: 1.0.1 - has-symbols: 1.0.3 - internal-slot: 1.0.5 - is-array-buffer: 3.0.1 - is-callable: 1.2.7 - is-negative-zero: 2.0.2 - is-regex: 1.1.4 - is-shared-array-buffer: 1.0.2 - is-string: 1.0.7 - is-typed-array: 1.1.10 - is-weakref: 1.0.2 - object-inspect: 1.13.1 - object-keys: 1.1.1 - object.assign: 4.1.4 - regexp.prototype.flags: 1.4.3 - safe-regex-test: 1.0.0 - string.prototype.trimend: 1.0.6 - string.prototype.trimstart: 1.0.6 - typed-array-length: 1.0.4 - unbox-primitive: 1.0.2 - which-typed-array: 1.1.9 - - es-abstract@1.22.3: - dependencies: - array-buffer-byte-length: 1.0.0 - arraybuffer.prototype.slice: 1.0.2 - available-typed-arrays: 1.0.5 - call-bind: 1.0.5 - es-set-tostringtag: 2.0.1 - es-to-primitive: 1.2.1 - function.prototype.name: 1.1.6 - get-intrinsic: 1.2.2 - get-symbol-description: 1.0.0 - globalthis: 1.0.3 - gopd: 1.0.1 - has-property-descriptors: 1.0.0 - has-proto: 1.0.1 - has-symbols: 1.0.3 - hasown: 2.0.0 - internal-slot: 1.0.5 - is-array-buffer: 3.0.2 - is-callable: 1.2.7 - is-negative-zero: 2.0.2 - is-regex: 1.1.4 - is-shared-array-buffer: 1.0.2 - is-string: 1.0.7 - is-typed-array: 1.1.12 - is-weakref: 1.0.2 - object-inspect: 1.13.1 - object-keys: 1.1.1 - object.assign: 4.1.4 - regexp.prototype.flags: 1.5.1 - safe-array-concat: 1.0.1 - safe-regex-test: 1.0.0 - string.prototype.trim: 1.2.8 - string.prototype.trimend: 1.0.7 - string.prototype.trimstart: 1.0.7 - typed-array-buffer: 1.0.0 - typed-array-byte-length: 1.0.0 - typed-array-byte-offset: 1.0.0 - typed-array-length: 1.0.4 - unbox-primitive: 1.0.2 - which-typed-array: 1.1.13 - - es-array-method-boxes-properly@1.0.0: {} - - es-errors@1.3.0: {} - - es-get-iterator@1.1.3: - dependencies: - call-bind: 1.0.5 - get-intrinsic: 1.2.2 - has-symbols: 1.0.3 - is-arguments: 1.1.1 - is-map: 2.0.2 - is-set: 2.0.2 - is-string: 1.0.7 - isarray: 2.0.5 - stop-iteration-iterator: 1.0.0 - - es-iterator-helpers@1.0.15: - dependencies: - asynciterator.prototype: 1.0.0 - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - es-set-tostringtag: 2.0.1 - function-bind: 1.1.2 - get-intrinsic: 1.2.2 - globalthis: 1.0.3 - has-property-descriptors: 1.0.0 - has-proto: 1.0.1 - has-symbols: 1.0.3 - internal-slot: 1.0.5 - iterator.prototype: 1.1.2 - safe-array-concat: 1.0.1 - - es-module-lexer@0.9.3: {} - - es-module-lexer@1.4.1: {} - - es-set-tostringtag@2.0.1: - dependencies: - get-intrinsic: 1.2.2 - has: 1.0.3 - has-tostringtag: 1.0.0 - - es-shim-unscopables@1.0.2: - dependencies: - hasown: 2.0.0 - - es-to-primitive@1.2.1: - dependencies: - is-callable: 1.2.7 - is-date-object: 1.0.5 - is-symbol: 1.0.4 - - esbuild-plugin-alias@0.2.1: {} - - esbuild-register@3.5.0(esbuild@0.18.6): - dependencies: - debug: 4.3.4 - esbuild: 0.18.6 - transitivePeerDependencies: - - supports-color - - esbuild@0.18.6: - optionalDependencies: - '@esbuild/android-arm': 0.18.6 - '@esbuild/android-arm64': 0.18.6 - '@esbuild/android-x64': 0.18.6 - '@esbuild/darwin-arm64': 0.18.6 - '@esbuild/darwin-x64': 0.18.6 - '@esbuild/freebsd-arm64': 0.18.6 - '@esbuild/freebsd-x64': 0.18.6 - '@esbuild/linux-arm': 0.18.6 - '@esbuild/linux-arm64': 0.18.6 - '@esbuild/linux-ia32': 0.18.6 - '@esbuild/linux-loong64': 0.18.6 - '@esbuild/linux-mips64el': 0.18.6 - '@esbuild/linux-ppc64': 0.18.6 - '@esbuild/linux-riscv64': 0.18.6 - '@esbuild/linux-s390x': 0.18.6 - '@esbuild/linux-x64': 0.18.6 - '@esbuild/netbsd-x64': 0.18.6 - '@esbuild/openbsd-x64': 0.18.6 - '@esbuild/sunos-x64': 0.18.6 - '@esbuild/win32-arm64': 0.18.6 - '@esbuild/win32-ia32': 0.18.6 - '@esbuild/win32-x64': 0.18.6 - - esbuild@0.19.11: - optionalDependencies: - '@esbuild/aix-ppc64': 0.19.11 - '@esbuild/android-arm': 0.19.11 - '@esbuild/android-arm64': 0.19.11 - '@esbuild/android-x64': 0.19.11 - '@esbuild/darwin-arm64': 0.19.11 - '@esbuild/darwin-x64': 0.19.11 - '@esbuild/freebsd-arm64': 0.19.11 - '@esbuild/freebsd-x64': 0.19.11 - '@esbuild/linux-arm': 0.19.11 - '@esbuild/linux-arm64': 0.19.11 - '@esbuild/linux-ia32': 0.19.11 - '@esbuild/linux-loong64': 0.19.11 - '@esbuild/linux-mips64el': 0.19.11 - '@esbuild/linux-ppc64': 0.19.11 - '@esbuild/linux-riscv64': 0.19.11 - '@esbuild/linux-s390x': 0.19.11 - '@esbuild/linux-x64': 0.19.11 - '@esbuild/netbsd-x64': 0.19.11 - '@esbuild/openbsd-x64': 0.19.11 - '@esbuild/sunos-x64': 0.19.11 - '@esbuild/win32-arm64': 0.19.11 - '@esbuild/win32-ia32': 0.19.11 - '@esbuild/win32-x64': 0.19.11 - - esbuild@0.25.9: - optionalDependencies: - '@esbuild/aix-ppc64': 0.25.9 - '@esbuild/android-arm': 0.25.9 - '@esbuild/android-arm64': 0.25.9 - '@esbuild/android-x64': 0.25.9 - '@esbuild/darwin-arm64': 0.25.9 - '@esbuild/darwin-x64': 0.25.9 - '@esbuild/freebsd-arm64': 0.25.9 - '@esbuild/freebsd-x64': 0.25.9 - '@esbuild/linux-arm': 0.25.9 - '@esbuild/linux-arm64': 0.25.9 - '@esbuild/linux-ia32': 0.25.9 - '@esbuild/linux-loong64': 0.25.9 - '@esbuild/linux-mips64el': 0.25.9 - '@esbuild/linux-ppc64': 0.25.9 - '@esbuild/linux-riscv64': 0.25.9 - '@esbuild/linux-s390x': 0.25.9 - '@esbuild/linux-x64': 0.25.9 - '@esbuild/netbsd-arm64': 0.25.9 - '@esbuild/netbsd-x64': 0.25.9 - '@esbuild/openbsd-arm64': 0.25.9 - '@esbuild/openbsd-x64': 0.25.9 - '@esbuild/openharmony-arm64': 0.25.9 - '@esbuild/sunos-x64': 0.25.9 - '@esbuild/win32-arm64': 0.25.9 - '@esbuild/win32-ia32': 0.25.9 - '@esbuild/win32-x64': 0.25.9 - - escalade@3.1.1: {} - - escape-html@1.0.3: {} - - escape-string-regexp@1.0.5: {} - - escape-string-regexp@2.0.0: {} - - escape-string-regexp@4.0.0: {} - - escodegen@2.1.0: - dependencies: - esprima: 4.0.1 - estraverse: 5.3.0 - esutils: 2.0.3 - optionalDependencies: - source-map: 0.6.1 - - eslint-config-airbnb-base@15.0.0(eslint-plugin-import@2.27.5(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint@8.56.0))(eslint@8.56.0): - dependencies: - confusing-browser-globals: 1.0.11 - eslint: 8.56.0 - eslint-plugin-import: 2.27.5(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint@8.56.0) - object.assign: 4.1.4 - object.entries: 1.1.6 - semver: 6.3.0 - - eslint-config-airbnb-typescript@17.1.0(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint@8.56.0)(typescript@5.2.2))(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint-plugin-import@2.27.5(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint@8.56.0))(eslint@8.56.0): - dependencies: - '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint@8.56.0)(typescript@5.2.2) - '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.2.2) - eslint: 8.56.0 - eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.27.5(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint@8.56.0))(eslint@8.56.0) - eslint-plugin-import: 2.27.5(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint@8.56.0) - - eslint-config-airbnb@19.0.4(eslint-plugin-import@2.27.5(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint@8.56.0))(eslint-plugin-jsx-a11y@6.7.1(eslint@8.56.0))(eslint-plugin-react-hooks@4.6.0(eslint@8.56.0))(eslint-plugin-react@7.28.0(eslint@8.56.0))(eslint@8.56.0): - dependencies: - eslint: 8.56.0 - eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.27.5(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint@8.56.0))(eslint@8.56.0) - eslint-plugin-import: 2.27.5(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint@8.56.0) - eslint-plugin-jsx-a11y: 6.7.1(eslint@8.56.0) - eslint-plugin-react: 7.28.0(eslint@8.56.0) - eslint-plugin-react-hooks: 4.6.0(eslint@8.56.0) - object.assign: 4.1.4 - object.entries: 1.1.6 - - eslint-config-next@14.1.0(eslint@8.56.0)(typescript@5.2.2): - dependencies: - '@next/eslint-plugin-next': 14.1.0 - '@rushstack/eslint-patch': 1.6.0 - '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.2.2) - eslint: 8.56.0 - eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.5.3(eslint-plugin-import@2.29.1)(eslint@8.56.0) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint-import-resolver-typescript@3.5.3)(eslint@8.56.0) - eslint-plugin-jsx-a11y: 6.7.1(eslint@8.56.0) - eslint-plugin-react: 7.33.2(eslint@8.56.0) - eslint-plugin-react-hooks: 4.6.0(eslint@8.56.0) - optionalDependencies: - typescript: 5.2.2 - transitivePeerDependencies: - - eslint-import-resolver-webpack - - supports-color - - eslint-config-prettier@9.0.0(eslint@8.56.0): - dependencies: - eslint: 8.56.0 - - eslint-config-prettier@9.1.0(eslint@8.56.0): - dependencies: - eslint: 8.56.0 - - eslint-config-turbo@1.10.12(eslint@8.56.0): - dependencies: - eslint: 8.56.0 - eslint-plugin-turbo: 1.10.12(eslint@8.56.0) - - eslint-import-resolver-node@0.3.9: - dependencies: - debug: 3.2.7 - is-core-module: 2.13.1 - resolve: 1.22.8 - transitivePeerDependencies: - - supports-color - - eslint-import-resolver-typescript@3.5.3(eslint-plugin-import@2.29.1)(eslint@8.56.0): - dependencies: - debug: 4.3.4 - enhanced-resolve: 5.12.0 - eslint: 8.56.0 - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint-import-resolver-typescript@3.5.3)(eslint@8.56.0) - get-tsconfig: 4.4.0 - globby: 13.1.3 - is-core-module: 2.13.1 - is-glob: 4.0.3 - synckit: 0.8.5 - transitivePeerDependencies: - - supports-color - - eslint-module-utils@2.8.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.5.3(eslint-plugin-import@2.29.1)(eslint@8.56.0))(eslint@8.56.0): - dependencies: - debug: 3.2.7 - optionalDependencies: - '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.2.2) - eslint: 8.56.0 - eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.5.3(eslint-plugin-import@2.29.1)(eslint@8.56.0) - transitivePeerDependencies: - - supports-color - - eslint-plugin-import@2.27.5(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint@8.56.0): - dependencies: - array-includes: 3.1.7 - array.prototype.flat: 1.3.2 - array.prototype.flatmap: 1.3.2 - debug: 3.2.7 - doctrine: 2.1.0 - eslint: 8.56.0 - eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.5.3(eslint-plugin-import@2.29.1)(eslint@8.56.0))(eslint@8.56.0) - has: 1.0.3 - is-core-module: 2.13.1 - is-glob: 4.0.3 - minimatch: 3.1.2 - object.values: 1.1.7 - resolve: 1.22.8 - semver: 6.3.1 - tsconfig-paths: 3.15.0 - optionalDependencies: - '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.2.2) - transitivePeerDependencies: - - eslint-import-resolver-typescript - - eslint-import-resolver-webpack - - supports-color - - eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint-import-resolver-typescript@3.5.3)(eslint@8.56.0): - dependencies: - array-includes: 3.1.7 - array.prototype.findlastindex: 1.2.4 - array.prototype.flat: 1.3.2 - array.prototype.flatmap: 1.3.2 - debug: 3.2.7 - doctrine: 2.1.0 - eslint: 8.56.0 - eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@5.2.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.5.3(eslint-plugin-import@2.29.1)(eslint@8.56.0))(eslint@8.56.0) - hasown: 2.0.0 - is-core-module: 2.13.1 - is-glob: 4.0.3 - minimatch: 3.1.2 - object.fromentries: 2.0.7 - object.groupby: 1.0.2 - object.values: 1.1.7 - semver: 6.3.1 - tsconfig-paths: 3.15.0 - optionalDependencies: - '@typescript-eslint/parser': 6.21.0(eslint@8.56.0)(typescript@5.2.2) - transitivePeerDependencies: - - eslint-import-resolver-typescript - - eslint-import-resolver-webpack - - supports-color - - eslint-plugin-jsx-a11y@6.7.1(eslint@8.56.0): - dependencies: - '@babel/runtime': 7.23.8 - aria-query: 5.1.3 - array-includes: 3.1.7 - array.prototype.flatmap: 1.3.2 - ast-types-flow: 0.0.7 - axe-core: 4.6.3 - axobject-query: 3.1.1 - damerau-levenshtein: 1.0.8 - emoji-regex: 9.2.2 - eslint: 8.56.0 - has: 1.0.3 - jsx-ast-utils: 3.3.3 - language-tags: 1.0.5 - minimatch: 3.1.2 - object.entries: 1.1.6 - object.fromentries: 2.0.7 - semver: 6.3.1 - - eslint-plugin-react-hooks@4.6.0(eslint@8.56.0): - dependencies: - eslint: 8.56.0 - - eslint-plugin-react@7.28.0(eslint@8.56.0): - dependencies: - array-includes: 3.1.7 - array.prototype.flatmap: 1.3.2 - doctrine: 2.1.0 - eslint: 8.56.0 - estraverse: 5.3.0 - jsx-ast-utils: 3.3.3 - minimatch: 3.1.2 - object.entries: 1.1.6 - object.fromentries: 2.0.7 - object.hasown: 1.1.2 - object.values: 1.1.7 - prop-types: 15.8.1 - resolve: 2.0.0-next.4 - semver: 6.3.1 - string.prototype.matchall: 4.0.8 - - eslint-plugin-react@7.33.2(eslint@8.56.0): - dependencies: - array-includes: 3.1.7 - array.prototype.flatmap: 1.3.2 - array.prototype.tosorted: 1.1.1 - doctrine: 2.1.0 - es-iterator-helpers: 1.0.15 - eslint: 8.56.0 - estraverse: 5.3.0 - jsx-ast-utils: 3.3.3 - minimatch: 3.1.2 - object.entries: 1.1.6 - object.fromentries: 2.0.7 - object.hasown: 1.1.2 - object.values: 1.1.7 - prop-types: 15.8.1 - resolve: 2.0.0-next.4 - semver: 6.3.1 - string.prototype.matchall: 4.0.8 - - eslint-plugin-simple-import-sort@10.0.0(eslint@8.56.0): - dependencies: - eslint: 8.56.0 - - eslint-plugin-turbo@1.10.12(eslint@8.56.0): - dependencies: - dotenv: 16.0.3 - eslint: 8.56.0 - - eslint-scope@5.1.1: - dependencies: - esrecurse: 4.3.0 - estraverse: 4.3.0 - - eslint-scope@7.2.2: - dependencies: - esrecurse: 4.3.0 - estraverse: 5.3.0 - - eslint-visitor-keys@3.4.3: {} - - eslint@8.56.0: - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0) - '@eslint-community/regexpp': 4.10.0 - '@eslint/eslintrc': 2.1.4 - '@eslint/js': 8.56.0 - '@humanwhocodes/config-array': 0.11.14 - '@humanwhocodes/module-importer': 1.0.1 - '@nodelib/fs.walk': 1.2.8 - '@ungap/structured-clone': 1.2.0 - ajv: 6.12.6 - chalk: 4.1.2 - cross-spawn: 7.0.3 - debug: 4.3.4 - doctrine: 3.0.0 - escape-string-regexp: 4.0.0 - eslint-scope: 7.2.2 - eslint-visitor-keys: 3.4.3 - espree: 9.6.1 - esquery: 1.4.2 - esutils: 2.0.3 - fast-deep-equal: 3.1.3 - file-entry-cache: 6.0.1 - find-up: 5.0.0 - glob-parent: 6.0.2 - globals: 13.20.0 - graphemer: 1.4.0 - ignore: 5.2.4 - imurmurhash: 0.1.4 - is-glob: 4.0.3 - is-path-inside: 3.0.3 - 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.3 - strip-ansi: 6.0.1 - text-table: 0.2.0 - transitivePeerDependencies: - - supports-color - - espree@9.6.1: - dependencies: - acorn: 8.11.3 - acorn-jsx: 5.3.2(acorn@8.11.3) - eslint-visitor-keys: 3.4.3 - - esprima@4.0.1: {} - - esquery@1.4.2: - dependencies: - estraverse: 5.3.0 - - esrecurse@4.3.0: - dependencies: - estraverse: 5.3.0 - - estraverse@4.3.0: {} - - estraverse@5.3.0: {} - - esutils@2.0.3: {} - - etag@1.8.1: {} - - event-target-shim@5.0.1: {} - - eventemitter3@5.0.1: {} - - events@3.3.0: {} - - evp_bytestokey@1.0.3: - dependencies: - md5.js: 1.3.5 - safe-buffer: 5.2.1 - - execa@5.1.1: - dependencies: - cross-spawn: 7.0.3 - get-stream: 6.0.1 - human-signals: 2.1.0 - is-stream: 2.0.1 - merge-stream: 2.0.0 - npm-run-path: 4.0.1 - onetime: 5.1.2 - signal-exit: 3.0.7 - strip-final-newline: 2.0.0 - - execa@7.1.0: - dependencies: - cross-spawn: 7.0.3 - get-stream: 6.0.1 - human-signals: 4.3.0 - is-stream: 3.0.0 - merge-stream: 2.0.0 - npm-run-path: 5.1.0 - onetime: 6.0.0 - signal-exit: 3.0.7 - strip-final-newline: 3.0.0 - - execa@8.0.1: - dependencies: - cross-spawn: 7.0.3 - get-stream: 8.0.1 - human-signals: 5.0.0 - is-stream: 3.0.0 - merge-stream: 2.0.0 - npm-run-path: 5.1.0 - onetime: 6.0.0 - signal-exit: 4.1.0 - strip-final-newline: 3.0.0 - - exit@0.1.2: {} - - expand-template@2.0.3: {} - - expect@29.5.0: - dependencies: - '@jest/expect-utils': 29.5.0 - jest-get-type: 29.4.3 - jest-matcher-utils: 29.5.0 - jest-message-util: 29.5.0 - jest-util: 29.5.0 - - expect@29.7.0: - dependencies: - '@jest/expect-utils': 29.7.0 - jest-get-type: 29.6.3 - jest-matcher-utils: 29.7.0 - jest-message-util: 29.7.0 - jest-util: 29.7.0 - - express@4.18.2: - dependencies: - accepts: 1.3.8 - array-flatten: 1.1.1 - body-parser: 1.20.1 - content-disposition: 0.5.4 - content-type: 1.0.5 - 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 - transitivePeerDependencies: - - supports-color - - extend@3.0.2: {} - - extract-zip@1.7.0: - dependencies: - concat-stream: 1.6.2 - debug: 2.6.9 - mkdirp: 0.5.6 - yauzl: 2.10.0 - transitivePeerDependencies: - - supports-color - - fast-deep-equal@3.1.3: {} - - fast-fifo@1.3.2: {} - - fast-glob@3.2.12: - dependencies: - '@nodelib/fs.stat': 2.0.5 - '@nodelib/fs.walk': 1.2.8 - glob-parent: 5.1.2 - merge2: 1.4.1 - micromatch: 4.0.5 - - fast-glob@3.3.2: - dependencies: - '@nodelib/fs.stat': 2.0.5 - '@nodelib/fs.walk': 1.2.8 - glob-parent: 5.1.2 - merge2: 1.4.1 - micromatch: 4.0.5 - - fast-json-parse@1.0.3: {} - - fast-json-stable-stringify@2.1.0: {} - - fast-levenshtein@2.0.6: {} - - fast-text-encoding@1.0.6: {} - - fast-xml-parser@4.0.11: - dependencies: - strnum: 1.0.5 - optional: true - - fast-xml-parser@4.2.5: - dependencies: - strnum: 1.0.5 - - fastq@1.15.0: - dependencies: - reusify: 1.0.4 - - fb-watchman@2.0.2: - dependencies: - bser: 2.1.1 - - fd-slicer@1.1.0: - dependencies: - pend: 1.2.0 - - fecha@4.2.3: {} - - fetch-retry@5.0.6: {} - - file-entry-cache@6.0.1: - dependencies: - flat-cache: 3.0.4 - - file-system-cache@2.3.0: - dependencies: - fs-extra: 11.1.1 - ramda: 0.29.0 - - filelist@1.0.4: - dependencies: - minimatch: 5.1.6 - - fill-range@7.0.1: - dependencies: - to-regex-range: 5.0.1 - - filter-obj@2.0.2: {} - - finalhandler@1.2.0: - 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 - transitivePeerDependencies: - - supports-color - - find-cache-dir@2.1.0: - dependencies: - commondir: 1.0.1 - make-dir: 2.1.0 - pkg-dir: 3.0.0 - - find-cache-dir@3.3.2: - dependencies: - commondir: 1.0.1 - make-dir: 3.1.0 - pkg-dir: 4.2.0 - - find-root@1.1.0: {} - - find-up@3.0.0: - dependencies: - locate-path: 3.0.0 - - find-up@4.1.0: - dependencies: - locate-path: 5.0.0 - path-exists: 4.0.0 - - find-up@5.0.0: - dependencies: - locate-path: 6.0.0 - path-exists: 4.0.0 - - fix-esm@1.0.1: - dependencies: - '@babel/core': 7.21.0 - '@babel/plugin-proposal-export-namespace-from': 7.18.9(@babel/core@7.21.0) - '@babel/plugin-transform-modules-commonjs': 7.20.11(@babel/core@7.21.0) - transitivePeerDependencies: - - supports-color - - flat-cache@3.0.4: - dependencies: - flatted: 3.2.7 - rimraf: 3.0.2 - - flatted@3.2.7: {} - - flow-parser@0.226.0: {} - - fn.name@1.1.0: {} - - follow-redirects@1.15.5(debug@4.3.4): - optionalDependencies: - debug: 4.3.4 - - for-each@0.3.3: - dependencies: - is-callable: 1.2.7 - - foreground-child@3.1.1: - dependencies: - cross-spawn: 7.0.3 - signal-exit: 4.1.0 - - fork-ts-checker-webpack-plugin@8.0.0(typescript@5.2.2)(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)): - dependencies: - '@babel/code-frame': 7.23.5 - chalk: 4.1.2 - chokidar: 3.5.3 - cosmiconfig: 7.1.0 - deepmerge: 4.3.0 - fs-extra: 10.1.0 - memfs: 3.5.3 - minimatch: 3.1.2 - node-abort-controller: 3.1.1 - schema-utils: 3.1.1 - semver: 7.5.4 - tapable: 2.2.1 - typescript: 5.2.2 - webpack: 5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6) - - form-data@4.0.0: - dependencies: - asynckit: 0.4.0 - combined-stream: 1.0.8 - mime-types: 2.1.35 - - forwarded@0.2.0: {} - - fraction.js@4.2.0: {} - - framer-motion@10.17.4(react-dom@18.2.0(react@18.2.0))(react@18.2.0): - dependencies: - tslib: 2.5.0 - optionalDependencies: - '@emotion/is-prop-valid': 0.8.8 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - fresh@0.5.2: {} - - fs-constants@1.0.0: {} - - fs-extra@10.1.0: - dependencies: - graceful-fs: 4.2.11 - jsonfile: 6.1.0 - universalify: 2.0.0 - - fs-extra@11.1.1: - dependencies: - graceful-fs: 4.2.11 - jsonfile: 6.1.0 - universalify: 2.0.0 - - fs-minipass@2.1.0: - dependencies: - minipass: 3.3.6 - - fs-monkey@1.0.5: {} - - fs.realpath@1.0.0: {} - - fsevents@2.3.2: - optional: true - - fsevents@2.3.3: - optional: true - - function-bind@1.1.2: {} - - function.prototype.name@1.1.5: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - functions-have-names: 1.2.3 - - function.prototype.name@1.1.6: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - functions-have-names: 1.2.3 - - functions-have-names@1.2.3: {} - - gaxios@5.0.2: - dependencies: - extend: 3.0.2 - https-proxy-agent: 5.0.1 - is-stream: 2.0.1 - node-fetch: 2.6.9 - transitivePeerDependencies: - - encoding - - supports-color - - gcp-metadata@5.2.0: - dependencies: - gaxios: 5.0.2 - json-bigint: 1.0.0 - transitivePeerDependencies: - - encoding - - supports-color - - gensync@1.0.0-beta.2: {} - - get-caller-file@2.0.5: {} - - get-east-asian-width@1.2.0: {} - - get-func-name@2.0.2: {} - - get-intrinsic@1.2.2: - dependencies: - function-bind: 1.1.2 - has-proto: 1.0.1 - has-symbols: 1.0.3 - hasown: 2.0.0 - - get-nonce@1.0.1: {} - - get-npm-tarball-url@2.1.0: {} - - get-package-type@0.1.0: {} - - get-port@5.1.1: {} - - get-stream@6.0.1: {} - - get-stream@8.0.1: {} - - get-symbol-description@1.0.0: - dependencies: - call-bind: 1.0.5 - get-intrinsic: 1.2.2 - - get-tsconfig@4.10.1: - dependencies: - resolve-pkg-maps: 1.0.0 - - get-tsconfig@4.4.0: {} - - giget@1.2.1: - dependencies: - citty: 0.1.5 - consola: 3.2.3 - defu: 6.1.4 - node-fetch-native: 1.6.1 - nypm: 0.3.4 - ohash: 1.1.3 - pathe: 1.1.2 - tar: 6.2.0 - - github-from-package@0.0.0: {} - - github-slugger@1.5.0: {} - - glob-parent@5.1.2: - dependencies: - is-glob: 4.0.3 - - glob-parent@6.0.2: - dependencies: - is-glob: 4.0.3 - - glob-to-regexp@0.4.1: {} - - glob@10.3.10: - dependencies: - foreground-child: 3.1.1 - jackspeak: 2.3.6 - minimatch: 9.0.3 - minipass: 7.0.4 - path-scurry: 1.10.1 - - glob@10.3.4: - dependencies: - foreground-child: 3.1.1 - jackspeak: 2.3.6 - minimatch: 9.0.3 - minipass: 7.0.4 - path-scurry: 1.10.1 - - glob@7.1.6: - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.1.2 - once: 1.4.0 - path-is-absolute: 1.0.1 - - glob@7.2.3: - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.1.2 - once: 1.4.0 - path-is-absolute: 1.0.1 - - globals@11.12.0: {} - - globals@13.20.0: - dependencies: - type-fest: 0.20.2 - - globalthis@1.0.3: - dependencies: - define-properties: 1.2.1 - - globalyzer@0.1.0: {} - - globby@11.1.0: - dependencies: - array-union: 2.1.0 - dir-glob: 3.0.1 - fast-glob: 3.3.2 - ignore: 5.2.4 - merge2: 1.4.1 - slash: 3.0.0 - - globby@13.1.3: - dependencies: - dir-glob: 3.0.1 - fast-glob: 3.3.2 - ignore: 5.2.4 - merge2: 1.4.1 - slash: 4.0.0 - - globrex@0.1.2: {} - - google-auth-library@8.7.0: - dependencies: - arrify: 2.0.1 - base64-js: 1.5.1 - ecdsa-sig-formatter: 1.0.11 - fast-text-encoding: 1.0.6 - gaxios: 5.0.2 - gcp-metadata: 5.2.0 - gtoken: 6.1.2 - jws: 4.0.0 - lru-cache: 6.0.0 - transitivePeerDependencies: - - encoding - - supports-color - - google-p12-pem@4.0.1: - dependencies: - node-forge: 1.3.1 - - gopd@1.0.1: - dependencies: - get-intrinsic: 1.2.2 - - graceful-fs@4.2.11: {} - - graphemer@1.4.0: {} - - gtoken@6.1.2: - dependencies: - gaxios: 5.0.2 - google-p12-pem: 4.0.1 - jws: 4.0.0 - transitivePeerDependencies: - - encoding - - supports-color - - gunzip-maybe@1.4.2: - dependencies: - browserify-zlib: 0.1.4 - is-deflate: 1.0.0 - is-gzip: 1.0.0 - peek-stream: 1.1.3 - pumpify: 1.5.1 - through2: 2.0.5 - - handlebars@4.7.8: - dependencies: - minimist: 1.2.8 - neo-async: 2.6.2 - source-map: 0.6.1 - wordwrap: 1.0.0 - optionalDependencies: - uglify-js: 3.17.4 - - hard-rejection@2.1.0: {} - - has-ansi@2.0.0: - dependencies: - ansi-regex: 2.1.1 - - has-bigints@1.0.2: {} - - has-flag@3.0.0: {} - - has-flag@4.0.0: {} - - has-property-descriptors@1.0.0: - dependencies: - get-intrinsic: 1.2.2 - - has-proto@1.0.1: {} - - has-symbols@1.0.3: {} - - has-tostringtag@1.0.0: - dependencies: - has-symbols: 1.0.3 - - has@1.0.3: - dependencies: - function-bind: 1.1.2 - - hash-base@3.1.0: - dependencies: - inherits: 2.0.4 - readable-stream: 3.6.2 - safe-buffer: 5.2.1 - - hash.js@1.1.7: - dependencies: - inherits: 2.0.4 - minimalistic-assert: 1.0.1 - - hasown@2.0.0: - dependencies: - function-bind: 1.1.2 - - he@1.2.0: {} - - helmet@4.6.0: {} - - hmac-drbg@1.0.1: - dependencies: - hash.js: 1.1.7 - minimalistic-assert: 1.0.1 - minimalistic-crypto-utils: 1.0.1 - - hoist-non-react-statics@3.3.2: - dependencies: - react-is: 16.13.1 - - hosted-git-info@2.8.9: {} - - html-dom-parser@1.2.0: - dependencies: - domhandler: 4.3.1 - htmlparser2: 7.2.0 - - html-entities@2.4.0: {} - - html-escaper@2.0.2: {} - - html-minifier-terser@6.1.0: - dependencies: - camel-case: 4.1.2 - clean-css: 5.3.3 - commander: 8.3.0 - he: 1.2.0 - param-case: 3.0.4 - relateurl: 0.2.7 - terser: 5.16.4 - - html-react-parser@1.4.12(react@18.2.0): - dependencies: - domhandler: 4.3.1 - html-dom-parser: 1.2.0 - react: 18.2.0 - react-property: 2.0.0 - style-to-js: 1.1.0 - - html-tags@3.3.1: {} - - html-to-text@9.0.5: - dependencies: - '@selderee/plugin-htmlparser2': 0.11.0 - deepmerge: 4.3.1 - dom-serializer: 2.0.0 - htmlparser2: 8.0.2 - selderee: 0.11.0 - - html-tokenize@2.0.1: - dependencies: - buffer-from: 0.1.2 - inherits: 2.0.4 - minimist: 1.2.8 - readable-stream: 1.0.34 - through2: 0.4.2 - - html-webpack-plugin@5.6.0(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)): - dependencies: - '@types/html-minifier-terser': 6.1.0 - html-minifier-terser: 6.1.0 - lodash: 4.17.21 - pretty-error: 4.0.0 - tapable: 2.2.1 - optionalDependencies: - webpack: 5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6) - - htmlparser2@6.1.0: - dependencies: - domelementtype: 2.3.0 - domhandler: 4.3.1 - domutils: 2.8.0 - entities: 2.2.0 - - htmlparser2@7.2.0: - dependencies: - domelementtype: 2.3.0 - domhandler: 4.3.1 - domutils: 2.8.0 - entities: 3.0.1 - - htmlparser2@8.0.2: - dependencies: - domelementtype: 2.3.0 - domhandler: 5.0.3 - domutils: 3.1.0 - entities: 4.4.0 - - http-assert@1.5.0: - dependencies: - deep-equal: 1.0.1 - http-errors: 1.8.1 - - http-errors@1.8.1: - dependencies: - depd: 1.1.2 - inherits: 2.0.4 - setprototypeof: 1.2.0 - statuses: 1.5.0 - toidentifier: 1.0.1 - - http-errors@2.0.0: - dependencies: - depd: 2.0.0 - inherits: 2.0.4 - setprototypeof: 1.2.0 - statuses: 2.0.1 - toidentifier: 1.0.1 - - https-browserify@1.0.0: {} - - https-proxy-agent@4.0.0: - dependencies: - agent-base: 5.1.1 - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - - https-proxy-agent@5.0.0: - dependencies: - agent-base: 6.0.2 - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - - https-proxy-agent@5.0.1: - dependencies: - agent-base: 6.0.2 - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - - https-proxy-agent@7.0.4: - dependencies: - agent-base: 7.1.0 - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - - human-signals@2.1.0: {} - - human-signals@4.3.0: {} - - human-signals@5.0.0: {} - - humanize-number@0.0.2: {} - - husky@9.0.11: {} - - iconv-lite@0.4.24: - dependencies: - safer-buffer: 2.1.2 - - icss-utils@5.1.0(postcss@8.4.35): - dependencies: - postcss: 8.4.35 - - ieee754@1.2.1: {} - - ignore@5.2.4: {} - - image-size@1.1.1: - dependencies: - queue: 6.0.2 - - import-fresh@3.3.0: - dependencies: - parent-module: 1.0.1 - resolve-from: 4.0.0 - - import-local@3.1.0: - dependencies: - pkg-dir: 4.2.0 - resolve-cwd: 3.0.0 - - imurmurhash@0.1.4: {} - - indent-string@4.0.0: {} - - inflation@2.0.0: {} - - inflight@1.0.6: - dependencies: - once: 1.4.0 - wrappy: 1.0.2 - - inherits@2.0.4: {} - - ini@1.3.8: {} - - inline-style-parser@0.1.1: {} - - internal-slot@1.0.5: - dependencies: - get-intrinsic: 1.2.2 - has: 1.0.3 - side-channel: 1.0.4 - - interpret@1.4.0: {} - - invariant@2.2.4: - dependencies: - loose-envify: 1.4.0 - - ioredis@5.3.2: - dependencies: - '@ioredis/commands': 1.2.0 - cluster-key-slot: 1.1.2 - debug: 4.3.4 - denque: 2.1.0 - lodash.defaults: 4.2.0 - lodash.isarguments: 3.1.0 - redis-errors: 1.2.0 - redis-parser: 3.0.0 - standard-as-callback: 2.1.0 - transitivePeerDependencies: - - supports-color - - ip@2.0.0: {} - - ipaddr.js@1.9.1: {} - - is-absolute-url@3.0.3: {} - - is-arguments@1.1.1: - dependencies: - call-bind: 1.0.5 - has-tostringtag: 1.0.0 - - is-array-buffer@3.0.1: - dependencies: - call-bind: 1.0.5 - get-intrinsic: 1.2.2 - is-typed-array: 1.1.10 - - is-array-buffer@3.0.2: - dependencies: - call-bind: 1.0.5 - get-intrinsic: 1.2.2 - is-typed-array: 1.1.12 - - is-arrayish@0.2.1: {} - - is-arrayish@0.3.2: {} - - is-async-function@2.0.0: - dependencies: - has-tostringtag: 1.0.0 - - is-bigint@1.0.4: - dependencies: - has-bigints: 1.0.2 - - is-binary-path@2.1.0: - dependencies: - binary-extensions: 2.2.0 - - is-boolean-object@1.1.2: - dependencies: - call-bind: 1.0.5 - has-tostringtag: 1.0.0 - - is-callable@1.2.7: {} - - is-core-module@2.13.1: - dependencies: - hasown: 2.0.0 - - is-date-object@1.0.5: - dependencies: - has-tostringtag: 1.0.0 - - is-deflate@1.0.0: {} - - is-docker@2.2.1: {} - - is-extglob@2.1.1: {} - - is-finalizationregistry@1.0.2: - dependencies: - call-bind: 1.0.5 - - is-fullwidth-code-point@3.0.0: {} - - is-fullwidth-code-point@4.0.0: {} - - is-fullwidth-code-point@5.0.0: - dependencies: - get-east-asian-width: 1.2.0 - - is-generator-fn@2.1.0: {} - - is-generator-function@1.0.10: - dependencies: - has-tostringtag: 1.0.0 - - is-glob@4.0.3: - dependencies: - is-extglob: 2.1.1 - - is-gzip@1.0.0: {} - - is-interactive@1.0.0: {} - - is-map@2.0.2: {} - - is-nan@1.3.2: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - - is-negative-zero@2.0.2: {} - - is-number-object@1.0.7: - dependencies: - has-tostringtag: 1.0.0 - - is-number@7.0.0: {} - - is-path-cwd@2.2.0: {} - - is-path-inside@3.0.3: {} - - is-plain-obj@1.1.0: {} - - is-plain-object@2.0.4: - dependencies: - isobject: 3.0.1 - - is-plain-object@5.0.0: {} - - is-regex@1.1.4: - dependencies: - call-bind: 1.0.5 - has-tostringtag: 1.0.0 - - is-set@2.0.2: {} - - is-shared-array-buffer@1.0.2: - dependencies: - call-bind: 1.0.5 - - is-stream@2.0.1: {} - - is-stream@3.0.0: {} - - is-string@1.0.7: - dependencies: - has-tostringtag: 1.0.0 - - is-symbol@1.0.4: - dependencies: - has-symbols: 1.0.3 - - is-typed-array@1.1.10: - dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.5 - for-each: 0.3.3 - gopd: 1.0.1 - has-tostringtag: 1.0.0 - - is-typed-array@1.1.12: - dependencies: - which-typed-array: 1.1.13 - - is-unicode-supported@0.1.0: {} - - is-weakmap@2.0.1: {} - - is-weakref@1.0.2: - dependencies: - call-bind: 1.0.5 - - is-weakset@2.0.2: - dependencies: - call-bind: 1.0.5 - get-intrinsic: 1.2.2 - - is-wsl@2.2.0: - dependencies: - is-docker: 2.2.1 - - isarray@0.0.1: {} - - isarray@1.0.0: {} - - isarray@2.0.5: {} - - isexe@2.0.0: {} - - isobject@3.0.1: {} - - istanbul-lib-coverage@3.2.0: {} - - istanbul-lib-instrument@5.2.1: - dependencies: - '@babel/core': 7.23.7 - '@babel/parser': 7.23.6 - '@istanbuljs/schema': 0.1.3 - istanbul-lib-coverage: 3.2.0 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - istanbul-lib-instrument@6.0.2: - dependencies: - '@babel/core': 7.24.3 - '@babel/parser': 7.24.1 - '@istanbuljs/schema': 0.1.3 - istanbul-lib-coverage: 3.2.0 - semver: 7.5.4 - transitivePeerDependencies: - - supports-color - - istanbul-lib-report@3.0.0: - dependencies: - istanbul-lib-coverage: 3.2.0 - make-dir: 3.1.0 - supports-color: 7.2.0 - - istanbul-lib-source-maps@4.0.1: - dependencies: - debug: 4.3.4 - istanbul-lib-coverage: 3.2.0 - source-map: 0.6.1 - transitivePeerDependencies: - - supports-color - - istanbul-reports@3.1.5: - dependencies: - html-escaper: 2.0.2 - istanbul-lib-report: 3.0.0 - - iterator.prototype@1.1.2: - dependencies: - define-properties: 1.2.1 - get-intrinsic: 1.2.2 - has-symbols: 1.0.3 - reflect.getprototypeof: 1.0.4 - set-function-name: 2.0.1 - - jackspeak@2.3.6: - dependencies: - '@isaacs/cliui': 8.0.2 - optionalDependencies: - '@pkgjs/parseargs': 0.11.0 - - jake@10.8.7: - dependencies: - async: 3.2.4 - chalk: 4.1.2 - filelist: 1.0.4 - minimatch: 3.1.2 - - jest-changed-files@29.7.0: - dependencies: - execa: 5.1.1 - jest-util: 29.7.0 - p-limit: 3.1.0 - - jest-circus@29.7.0(babel-plugin-macros@3.1.0): - dependencies: - '@jest/environment': 29.7.0 - '@jest/expect': 29.7.0 - '@jest/test-result': 29.7.0 - '@jest/types': 29.6.3 - '@types/node': 20.11.1 - chalk: 4.1.2 - co: 4.6.0 - dedent: 1.5.1(babel-plugin-macros@3.1.0) - is-generator-fn: 2.1.0 - jest-each: 29.7.0 - jest-matcher-utils: 29.7.0 - jest-message-util: 29.7.0 - jest-runtime: 29.7.0 - jest-snapshot: 29.7.0 - jest-util: 29.7.0 - p-limit: 3.1.0 - pretty-format: 29.7.0 - pure-rand: 6.0.1 - slash: 3.0.0 - stack-utils: 2.0.6 - transitivePeerDependencies: - - babel-plugin-macros - - supports-color - - jest-cli@29.7.0(@types/node@20.11.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)): - dependencies: - '@jest/core': 29.7.0(babel-plugin-macros@3.1.0)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)) - '@jest/test-result': 29.7.0 - '@jest/types': 29.6.3 - chalk: 4.1.2 - create-jest: 29.7.0(@types/node@20.11.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)) - exit: 0.1.2 - import-local: 3.1.0 - jest-config: 29.7.0(@types/node@20.11.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)) - jest-util: 29.7.0 - jest-validate: 29.7.0 - yargs: 17.7.0 - transitivePeerDependencies: - - '@types/node' - - babel-plugin-macros - - supports-color - - ts-node - - jest-config@29.7.0(@types/node@20.11.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)): - dependencies: - '@babel/core': 7.23.7 - '@jest/test-sequencer': 29.7.0 - '@jest/types': 29.6.3 - babel-jest: 29.7.0(@babel/core@7.23.7) - chalk: 4.1.2 - ci-info: 3.8.0 - deepmerge: 4.3.1 - glob: 7.2.3 - graceful-fs: 4.2.11 - jest-circus: 29.7.0(babel-plugin-macros@3.1.0) - jest-environment-node: 29.7.0 - jest-get-type: 29.6.3 - jest-regex-util: 29.6.3 - jest-resolve: 29.7.0 - jest-runner: 29.7.0 - jest-util: 29.7.0 - jest-validate: 29.7.0 - micromatch: 4.0.5 - parse-json: 5.2.0 - pretty-format: 29.7.0 - slash: 3.0.0 - strip-json-comments: 3.1.1 - optionalDependencies: - '@types/node': 20.11.1 - ts-node: 10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2) - transitivePeerDependencies: - - babel-plugin-macros - - supports-color - - jest-diff@29.5.0: - dependencies: - chalk: 4.1.2 - diff-sequences: 29.4.3 - jest-get-type: 29.4.3 - pretty-format: 29.5.0 - - jest-diff@29.7.0: - dependencies: - chalk: 4.1.2 - diff-sequences: 29.6.3 - jest-get-type: 29.6.3 - pretty-format: 29.7.0 - - jest-docblock@29.7.0: - dependencies: - detect-newline: 3.1.0 - - jest-each@29.7.0: - dependencies: - '@jest/types': 29.6.3 - chalk: 4.1.2 - jest-get-type: 29.6.3 - jest-util: 29.7.0 - pretty-format: 29.7.0 - - jest-environment-node@29.7.0: - dependencies: - '@jest/environment': 29.7.0 - '@jest/fake-timers': 29.7.0 - '@jest/types': 29.6.3 - '@types/node': 20.11.1 - jest-mock: 29.7.0 - jest-util: 29.7.0 - - jest-get-type@29.4.3: {} - - jest-get-type@29.6.3: {} - - jest-haste-map@29.5.0: - dependencies: - '@jest/types': 29.5.0 - '@types/graceful-fs': 4.1.6 - '@types/node': 20.11.1 - anymatch: 3.1.3 - fb-watchman: 2.0.2 - graceful-fs: 4.2.11 - jest-regex-util: 29.4.3 - jest-util: 29.5.0 - jest-worker: 29.5.0 - micromatch: 4.0.5 - walker: 1.0.8 - optionalDependencies: - fsevents: 2.3.2 - - jest-haste-map@29.7.0: - dependencies: - '@jest/types': 29.6.3 - '@types/graceful-fs': 4.1.6 - '@types/node': 20.11.1 - anymatch: 3.1.3 - fb-watchman: 2.0.2 - graceful-fs: 4.2.11 - jest-regex-util: 29.6.3 - jest-util: 29.7.0 - jest-worker: 29.7.0 - micromatch: 4.0.5 - walker: 1.0.8 - optionalDependencies: - fsevents: 2.3.2 - - jest-leak-detector@29.7.0: - dependencies: - jest-get-type: 29.6.3 - pretty-format: 29.7.0 - - jest-matcher-utils@29.5.0: - dependencies: - chalk: 4.1.2 - jest-diff: 29.5.0 - jest-get-type: 29.4.3 - pretty-format: 29.5.0 - - jest-matcher-utils@29.7.0: - dependencies: - chalk: 4.1.2 - jest-diff: 29.7.0 - jest-get-type: 29.6.3 - pretty-format: 29.7.0 - - jest-message-util@29.5.0: - dependencies: - '@babel/code-frame': 7.23.5 - '@jest/types': 29.5.0 - '@types/stack-utils': 2.0.1 - chalk: 4.1.2 - graceful-fs: 4.2.11 - micromatch: 4.0.5 - pretty-format: 29.5.0 - slash: 3.0.0 - stack-utils: 2.0.6 - - jest-message-util@29.7.0: - dependencies: - '@babel/code-frame': 7.23.5 - '@jest/types': 29.6.3 - '@types/stack-utils': 2.0.1 - chalk: 4.1.2 - graceful-fs: 4.2.11 - micromatch: 4.0.5 - pretty-format: 29.7.0 - slash: 3.0.0 - stack-utils: 2.0.6 - - jest-mock@27.5.1: - dependencies: - '@jest/types': 27.5.1 - '@types/node': 20.11.1 - - jest-mock@29.7.0: - dependencies: - '@jest/types': 29.6.3 - '@types/node': 20.11.1 - jest-util: 29.7.0 - - jest-pnp-resolver@1.2.3(jest-resolve@29.7.0): - optionalDependencies: - jest-resolve: 29.7.0 - - jest-regex-util@29.4.3: {} - - jest-regex-util@29.6.3: {} - - jest-resolve-dependencies@29.7.0: - dependencies: - jest-regex-util: 29.6.3 - jest-snapshot: 29.7.0 - transitivePeerDependencies: - - supports-color - - jest-resolve@29.7.0: - dependencies: - chalk: 4.1.2 - graceful-fs: 4.2.11 - jest-haste-map: 29.7.0 - jest-pnp-resolver: 1.2.3(jest-resolve@29.7.0) - jest-util: 29.7.0 - jest-validate: 29.7.0 - resolve: 1.22.8 - resolve.exports: 2.0.0 - slash: 3.0.0 - - jest-runner@29.7.0: - dependencies: - '@jest/console': 29.7.0 - '@jest/environment': 29.7.0 - '@jest/test-result': 29.7.0 - '@jest/transform': 29.7.0 - '@jest/types': 29.6.3 - '@types/node': 20.11.1 - chalk: 4.1.2 - emittery: 0.13.1 - graceful-fs: 4.2.11 - jest-docblock: 29.7.0 - jest-environment-node: 29.7.0 - jest-haste-map: 29.7.0 - jest-leak-detector: 29.7.0 - jest-message-util: 29.7.0 - jest-resolve: 29.7.0 - jest-runtime: 29.7.0 - jest-util: 29.7.0 - jest-watcher: 29.7.0 - jest-worker: 29.7.0 - p-limit: 3.1.0 - source-map-support: 0.5.13 - transitivePeerDependencies: - - supports-color - - jest-runtime@29.7.0: - dependencies: - '@jest/environment': 29.7.0 - '@jest/fake-timers': 29.7.0 - '@jest/globals': 29.7.0 - '@jest/source-map': 29.6.3 - '@jest/test-result': 29.7.0 - '@jest/transform': 29.7.0 - '@jest/types': 29.6.3 - '@types/node': 20.11.1 - chalk: 4.1.2 - cjs-module-lexer: 1.2.3 - collect-v8-coverage: 1.0.1 - glob: 7.2.3 - graceful-fs: 4.2.11 - jest-haste-map: 29.7.0 - jest-message-util: 29.7.0 - jest-mock: 29.7.0 - jest-regex-util: 29.6.3 - jest-resolve: 29.7.0 - jest-snapshot: 29.7.0 - jest-util: 29.7.0 - slash: 3.0.0 - strip-bom: 4.0.0 - transitivePeerDependencies: - - supports-color - - jest-snapshot@29.7.0: - dependencies: - '@babel/core': 7.23.7 - '@babel/generator': 7.23.6 - '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-syntax-typescript': 7.23.3(@babel/core@7.23.7) - '@babel/types': 7.23.6 - '@jest/expect-utils': 29.7.0 - '@jest/transform': 29.7.0 - '@jest/types': 29.6.3 - babel-preset-current-node-syntax: 1.0.1(@babel/core@7.23.7) - chalk: 4.1.2 - expect: 29.7.0 - graceful-fs: 4.2.11 - jest-diff: 29.7.0 - jest-get-type: 29.6.3 - jest-matcher-utils: 29.7.0 - jest-message-util: 29.7.0 - jest-util: 29.7.0 - natural-compare: 1.4.0 - pretty-format: 29.7.0 - semver: 7.5.4 - transitivePeerDependencies: - - supports-color - - jest-util@29.5.0: - dependencies: - '@jest/types': 29.5.0 - '@types/node': 20.11.1 - chalk: 4.1.2 - ci-info: 3.8.0 - graceful-fs: 4.2.11 - picomatch: 2.3.1 - - jest-util@29.7.0: - dependencies: - '@jest/types': 29.6.3 - '@types/node': 20.11.1 - chalk: 4.1.2 - ci-info: 3.8.0 - graceful-fs: 4.2.11 - picomatch: 2.3.1 - - jest-validate@29.7.0: - dependencies: - '@jest/types': 29.6.3 - camelcase: 6.3.0 - chalk: 4.1.2 - jest-get-type: 29.6.3 - leven: 3.1.0 - pretty-format: 29.7.0 - - jest-watcher@29.7.0: - dependencies: - '@jest/test-result': 29.7.0 - '@jest/types': 29.6.3 - '@types/node': 20.11.1 - ansi-escapes: 4.3.2 - chalk: 4.1.2 - emittery: 0.13.1 - jest-util: 29.7.0 - string-length: 4.0.2 - - jest-worker@27.5.1: - dependencies: - '@types/node': 20.11.1 - merge-stream: 2.0.0 - supports-color: 8.1.1 - - jest-worker@29.5.0: - dependencies: - '@types/node': 20.11.1 - jest-util: 29.5.0 - merge-stream: 2.0.0 - supports-color: 8.1.1 - - jest-worker@29.7.0: - dependencies: - '@types/node': 20.11.1 - jest-util: 29.7.0 - merge-stream: 2.0.0 - supports-color: 8.1.1 - - jest@29.7.0(@types/node@20.11.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)): - dependencies: - '@jest/core': 29.7.0(babel-plugin-macros@3.1.0)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)) - '@jest/types': 29.6.3 - import-local: 3.1.0 - jest-cli: 29.7.0(@types/node@20.11.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)) - transitivePeerDependencies: - - '@types/node' - - babel-plugin-macros - - supports-color - - ts-node - - jiti@1.21.0: {} - - js-beautify@1.15.0: - dependencies: - config-chain: 1.1.13 - editorconfig: 1.0.4 - glob: 10.3.10 - js-cookie: 3.0.5 - nopt: 7.2.0 - - js-cookie@3.0.5: {} - - js-tokens@4.0.0: {} - - js-yaml@3.14.1: - dependencies: - argparse: 1.0.10 - esprima: 4.0.1 - - js-yaml@4.1.0: - dependencies: - argparse: 2.0.1 - - jscodeshift@0.15.1(@babel/preset-env@7.23.8(@babel/core@7.23.7)): - dependencies: - '@babel/core': 7.23.7 - '@babel/parser': 7.23.6 - '@babel/plugin-transform-class-properties': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.23.7) - '@babel/plugin-transform-nullish-coalescing-operator': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.23.7) - '@babel/plugin-transform-private-methods': 7.23.3(@babel/core@7.23.7) - '@babel/preset-flow': 7.23.3(@babel/core@7.23.7) - '@babel/preset-typescript': 7.23.3(@babel/core@7.23.7) - '@babel/register': 7.23.7(@babel/core@7.23.7) - babel-core: 7.0.0-bridge.0(@babel/core@7.23.7) - chalk: 4.1.2 - flow-parser: 0.226.0 - graceful-fs: 4.2.11 - micromatch: 4.0.5 - neo-async: 2.6.2 - node-dir: 0.1.17 - recast: 0.23.4 - temp: 0.8.4 - write-file-atomic: 2.4.3 - optionalDependencies: - '@babel/preset-env': 7.23.8(@babel/core@7.23.7) - transitivePeerDependencies: - - supports-color - - jsesc@0.5.0: {} - - jsesc@2.5.2: {} - - json-bigint@1.0.0: - dependencies: - bignumber.js: 9.1.1 - - json-parse-better-errors@1.0.2: {} - - json-parse-even-better-errors@2.3.1: {} - - json-schema-traverse@0.4.1: {} - - json-schema-traverse@1.0.0: {} - - json-stable-stringify-without-jsonify@1.0.1: {} - - json5@1.0.2: - dependencies: - minimist: 1.2.8 - - json5@2.2.3: {} - - jsonfile@6.1.0: - dependencies: - universalify: 2.0.0 - optionalDependencies: - graceful-fs: 4.2.11 - - jsonwebtoken@9.0.0: - dependencies: - jws: 3.2.2 - lodash: 4.17.21 - ms: 2.1.3 - semver: 7.5.4 - - jsx-ast-utils@3.3.3: - dependencies: - array-includes: 3.1.7 - object.assign: 4.1.4 - - jwa@1.4.1: - dependencies: - buffer-equal-constant-time: 1.0.1 - ecdsa-sig-formatter: 1.0.11 - safe-buffer: 5.2.1 - - jwa@2.0.0: - dependencies: - buffer-equal-constant-time: 1.0.1 - ecdsa-sig-formatter: 1.0.11 - safe-buffer: 5.2.1 - - jws@3.2.2: - dependencies: - jwa: 1.4.1 - safe-buffer: 5.2.1 - - jws@4.0.0: - dependencies: - jwa: 2.0.0 - safe-buffer: 5.2.1 - - keygrip@1.1.0: - dependencies: - tsscmp: 1.0.6 - - kind-of@6.0.3: {} - - kleur@3.0.3: {} - - klona@2.0.6: {} - - koa-bodyparser@4.3.0: - dependencies: - co-body: 6.1.0 - copy-to: 2.0.1 - - koa-compose@4.1.0: {} - - koa-convert@2.0.0: - dependencies: - co: 4.6.0 - koa-compose: 4.1.0 - - koa-helmet@6.1.0: - dependencies: - helmet: 4.6.0 - - koa-logger@3.2.1: - dependencies: - bytes: 3.1.2 - chalk: 2.4.2 - humanize-number: 0.0.2 - passthrough-counter: 1.0.0 - - koa-mount@4.0.0: - dependencies: - debug: 4.3.4 - koa-compose: 4.1.0 - transitivePeerDependencies: - - supports-color - - koa-qs@3.0.0: - dependencies: - merge-descriptors: 1.0.1 - qs: 6.11.0 - - koa-ratelimit@5.0.1: - dependencies: - async-ratelimiter: 1.3.8 - debug: 4.3.4 - ms: 2.1.3 - transitivePeerDependencies: - - supports-color - - koa@2.14.1: - dependencies: - accepts: 1.3.8 - cache-content-type: 1.0.1 - content-disposition: 0.5.4 - content-type: 1.0.5 - cookies: 0.8.0 - debug: 4.3.4 - delegates: 1.0.0 - depd: 2.0.0 - destroy: 1.2.0 - encodeurl: 1.0.2 - escape-html: 1.0.3 - fresh: 0.5.2 - http-assert: 1.5.0 - http-errors: 1.8.1 - is-generator-function: 1.0.10 - koa-compose: 4.1.0 - koa-convert: 2.0.0 - on-finished: 2.4.1 - only: 0.0.2 - parseurl: 1.3.3 - statuses: 1.5.0 - type-is: 1.6.18 - vary: 1.1.2 - transitivePeerDependencies: - - supports-color - - kuler@2.0.0: {} - - language-subtag-registry@0.3.22: {} - - language-tags@1.0.5: - dependencies: - language-subtag-registry: 0.3.22 - - lazy-universal-dotenv@4.0.0: - dependencies: - app-root-dir: 1.0.2 - dotenv: 16.0.3 - dotenv-expand: 10.0.0 - - leac@0.6.0: {} - - leven@3.1.0: {} - - levn@0.4.1: - dependencies: - prelude-ls: 1.2.1 - type-check: 0.4.0 - - lilconfig@2.1.0: {} - - lilconfig@3.0.0: {} - - lines-and-columns@1.2.4: {} - - lint-staged@13.2.0: - dependencies: - chalk: 5.2.0 - cli-truncate: 3.1.0 - commander: 10.0.0 - debug: 4.3.4 - execa: 7.1.0 - lilconfig: 2.1.0 - listr2: 5.0.8 - micromatch: 4.0.5 - normalize-path: 3.0.0 - object-inspect: 1.12.3 - pidtree: 0.6.0 - string-argv: 0.3.1 - yaml: 2.2.1 - transitivePeerDependencies: - - enquirer - - supports-color - - lint-staged@15.2.2: - dependencies: - chalk: 5.3.0 - commander: 11.1.0 - debug: 4.3.4 - execa: 8.0.1 - lilconfig: 3.0.0 - listr2: 8.0.1 - micromatch: 4.0.5 - pidtree: 0.6.0 - string-argv: 0.3.2 - yaml: 2.3.4 - transitivePeerDependencies: - - supports-color - - listr2@5.0.8: - dependencies: - cli-truncate: 2.1.0 - colorette: 2.0.19 - log-update: 4.0.0 - p-map: 4.0.0 - rfdc: 1.3.0 - rxjs: 7.8.0 - through: 2.3.8 - wrap-ansi: 7.0.0 - - listr2@8.0.1: - dependencies: - cli-truncate: 4.0.0 - colorette: 2.0.20 - eventemitter3: 5.0.1 - log-update: 6.0.0 - rfdc: 1.3.0 - wrap-ansi: 9.0.0 - - load-json-file@4.0.0: - dependencies: - graceful-fs: 4.2.11 - parse-json: 4.0.0 - pify: 3.0.0 - strip-bom: 3.0.0 - - loader-runner@4.3.0: {} - - loader-utils@2.0.4: - dependencies: - big.js: 5.2.2 - emojis-list: 3.0.0 - json5: 2.2.3 - - loader-utils@3.2.1: {} - - locate-path@3.0.0: - dependencies: - p-locate: 3.0.0 - path-exists: 3.0.0 - - locate-path@5.0.0: - dependencies: - p-locate: 4.1.0 - - locate-path@6.0.0: - dependencies: - p-locate: 5.0.0 - - lodash.debounce@4.0.8: {} - - lodash.defaults@4.2.0: {} - - lodash.includes@4.3.0: {} - - lodash.isarguments@3.1.0: {} - - lodash.memoize@4.1.2: {} - - lodash.merge@4.6.2: {} - - lodash@4.17.21: {} - - log-symbols@4.1.0: - dependencies: - chalk: 4.1.2 - is-unicode-supported: 0.1.0 - - log-update@4.0.0: - dependencies: - ansi-escapes: 4.3.2 - cli-cursor: 3.1.0 - slice-ansi: 4.0.0 - wrap-ansi: 6.2.0 - - log-update@6.0.0: - dependencies: - ansi-escapes: 6.2.0 - cli-cursor: 4.0.0 - slice-ansi: 7.1.0 - strip-ansi: 7.1.0 - wrap-ansi: 9.0.0 - - logform@2.5.1: - dependencies: - '@colors/colors': 1.5.0 - '@types/triple-beam': 1.3.2 - fecha: 4.2.3 - ms: 2.1.3 - safe-stable-stringify: 2.4.2 - triple-beam: 1.3.0 - - long-timeout@0.1.1: {} - - loose-envify@1.4.0: - dependencies: - js-tokens: 4.0.0 - - loupe@2.3.7: - dependencies: - get-func-name: 2.0.2 - - lower-case@2.0.2: - dependencies: - tslib: 2.5.0 - - lru-cache@10.1.0: {} - - lru-cache@5.1.1: - dependencies: - yallist: 3.1.1 - - lru-cache@6.0.0: - dependencies: - yallist: 4.0.0 - - luxon@3.3.0: {} - - lz-string@1.5.0: {} - - magic-string@0.30.5: - dependencies: - '@jridgewell/sourcemap-codec': 1.4.15 - - make-dir@2.1.0: - dependencies: - pify: 4.0.1 - semver: 5.7.1 - - make-dir@3.1.0: - dependencies: - semver: 6.3.1 - - make-error@1.3.6: {} - - makeerror@1.0.12: - dependencies: - tmpl: 1.0.5 - - map-obj@1.0.1: {} - - map-obj@4.3.0: {} - - map-or-similar@1.5.0: {} - - markdown-to-jsx@7.4.0(react@18.2.0): - dependencies: - react: 18.2.0 - - md5-file@5.0.0: {} - - md5.js@1.3.5: - dependencies: - hash-base: 3.1.0 - inherits: 2.0.4 - safe-buffer: 5.2.1 - - mdast-util-definitions@4.0.0: - dependencies: - unist-util-visit: 2.0.3 - - mdast-util-to-string@1.1.0: {} - - mdn-data@2.0.28: {} - - mdn-data@2.0.30: {} - - media-typer@0.3.0: {} - - memfs@3.5.3: - dependencies: - fs-monkey: 1.0.5 - - memoizerific@1.11.3: - dependencies: - map-or-similar: 1.5.0 - - memory-pager@1.5.0: {} - - memorystream@0.3.1: {} - - meow@7.1.1: - dependencies: - '@types/minimist': 1.2.5 - camelcase-keys: 6.2.2 - decamelize-keys: 1.1.1 - hard-rejection: 2.1.0 - minimist-options: 4.1.0 - normalize-package-data: 2.5.0 - read-pkg-up: 7.0.1 - redent: 3.0.0 - trim-newlines: 3.0.1 - type-fest: 0.13.1 - yargs-parser: 18.1.3 - - merge-descriptors@1.0.1: {} - - merge-stream@2.0.0: {} - - merge2@1.4.1: {} - - methods@1.1.2: {} - - micromatch@4.0.5: - dependencies: - braces: 3.0.2 - picomatch: 2.3.1 - - miller-rabin@4.0.1: - dependencies: - bn.js: 4.12.0 - brorand: 1.1.0 - - mime-db@1.52.0: {} - - mime-types@2.1.35: - dependencies: - mime-db: 1.52.0 - - mime@1.6.0: {} - - mime@2.6.0: {} - - mimic-fn@2.1.0: {} - - mimic-fn@4.0.0: {} - - mimic-response@3.1.0: {} - - min-indent@1.0.1: {} - - minimalistic-assert@1.0.1: {} - - minimalistic-crypto-utils@1.0.1: {} - - minimatch@3.1.2: - dependencies: - brace-expansion: 1.1.11 - - minimatch@5.1.6: - dependencies: - brace-expansion: 2.0.1 - - minimatch@9.0.1: - dependencies: - brace-expansion: 2.0.1 - - minimatch@9.0.3: - dependencies: - brace-expansion: 2.0.1 - - minimist-options@4.1.0: - dependencies: - arrify: 1.0.1 - is-plain-obj: 1.1.0 - kind-of: 6.0.3 - - minimist@1.2.8: {} - - minipass@3.3.6: - dependencies: - yallist: 4.0.0 - - minipass@5.0.0: {} - - minipass@7.0.4: {} - - minizlib@2.1.2: - dependencies: - minipass: 3.3.6 - yallist: 4.0.0 - - mixpanel-browser@2.49.0: {} - - mixpanel@0.17.0: - dependencies: - https-proxy-agent: 5.0.0 - transitivePeerDependencies: - - supports-color - - mkdirp-classic@0.5.3: {} - - mkdirp@0.5.6: - dependencies: - minimist: 1.2.8 - - mkdirp@1.0.4: {} - - module-alias@2.2.2: {} - - mongodb-connection-string-url@2.6.0: - dependencies: - '@types/whatwg-url': 8.2.2 - whatwg-url: 11.0.0 - - mongodb-memory-server-core@8.12.0: - dependencies: - async-mutex: 0.3.2 - camelcase: 6.3.0 - debug: 4.3.4 - find-cache-dir: 3.3.2 - get-port: 5.1.1 - https-proxy-agent: 5.0.1 - md5-file: 5.0.0 - mongodb: 4.14.0 - new-find-package-json: 2.0.0 - semver: 7.5.4 - tar-stream: 2.2.0 - tslib: 2.5.0 - uuid: 9.0.0 - yauzl: 2.10.0 - transitivePeerDependencies: - - aws-crt - - supports-color - - mongodb-memory-server-core@9.1.1(@aws-sdk/credential-providers@3.272.0): - dependencies: - async-mutex: 0.4.1 - camelcase: 6.3.0 - debug: 4.3.4 - find-cache-dir: 3.3.2 - follow-redirects: 1.15.5(debug@4.3.4) - https-proxy-agent: 7.0.4 - mongodb: 5.9.2(@aws-sdk/credential-providers@3.272.0) - new-find-package-json: 2.0.0 - semver: 7.5.4 - tar-stream: 3.1.6 - tslib: 2.6.2 - yauzl: 2.10.0 - transitivePeerDependencies: - - '@aws-sdk/credential-providers' - - '@mongodb-js/zstd' - - kerberos - - mongodb-client-encryption - - snappy - - supports-color - - mongodb-memory-server@8.12.0: - dependencies: - mongodb-memory-server-core: 8.12.0 - tslib: 2.5.0 - transitivePeerDependencies: - - aws-crt - - supports-color - - mongodb-memory-server@9.1.1(@aws-sdk/credential-providers@3.272.0): - dependencies: - mongodb-memory-server-core: 9.1.1(@aws-sdk/credential-providers@3.272.0) - tslib: 2.6.2 - transitivePeerDependencies: - - '@aws-sdk/credential-providers' - - '@mongodb-js/zstd' - - kerberos - - mongodb-client-encryption - - snappy - - supports-color - - mongodb@4.14.0: - dependencies: - bson: 4.7.2 - mongodb-connection-string-url: 2.6.0 - socks: 2.7.1 - optionalDependencies: - '@aws-sdk/credential-providers': 3.272.0 - saslprep: 1.0.3 - transitivePeerDependencies: - - aws-crt - - mongodb@5.9.2(@aws-sdk/credential-providers@3.272.0): - dependencies: - bson: 5.5.1 - mongodb-connection-string-url: 2.6.0 - socks: 2.7.1 - optionalDependencies: - '@aws-sdk/credential-providers': 3.272.0 - '@mongodb-js/saslprep': 1.1.5 - - mongodb@6.1.0(@aws-sdk/credential-providers@3.272.0)(gcp-metadata@5.2.0)(socks@2.7.1): - dependencies: - '@mongodb-js/saslprep': 1.1.5 - bson: 6.5.0 - mongodb-connection-string-url: 2.6.0 - optionalDependencies: - '@aws-sdk/credential-providers': 3.272.0 - gcp-metadata: 5.2.0 - socks: 2.7.1 - - ms@2.0.0: {} - - ms@2.1.2: {} - - ms@2.1.3: {} - - multer@1.4.5-lts.1: - dependencies: - append-field: 1.0.0 - busboy: 1.6.0 - concat-stream: 1.6.2 - mkdirp: 0.5.6 - object-assign: 4.1.1 - type-is: 1.6.18 - xtend: 4.0.2 - - multipipe@1.0.2: - dependencies: - duplexer2: 0.1.4 - object-assign: 4.1.1 - - mz@2.7.0: - dependencies: - any-promise: 1.3.0 - object-assign: 4.1.1 - thenify-all: 1.6.0 - - nanoid@3.3.7: {} - - napi-build-utils@1.0.2: {} - - natural-compare@1.4.0: {} - - negotiator@0.6.3: {} - - neo-async@2.6.2: {} - - new-find-package-json@2.0.0: - dependencies: - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - - next@14.0.5-canary.46(react-dom@18.2.0(react@18.2.0))(react@18.2.0): - dependencies: - '@next/env': 14.0.5-canary.46 - '@swc/helpers': 0.5.2 - busboy: 1.6.0 - caniuse-lite: 1.0.30001579 - graceful-fs: 4.2.11 - postcss: 8.4.31 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - styled-jsx: 5.1.1(@babel/core@7.23.7)(babel-plugin-macros@3.1.0)(react@18.2.0) - optionalDependencies: - '@next/swc-darwin-arm64': 14.0.5-canary.46 - '@next/swc-darwin-x64': 14.0.5-canary.46 - '@next/swc-linux-arm64-gnu': 14.0.5-canary.46 - '@next/swc-linux-arm64-musl': 14.0.5-canary.46 - '@next/swc-linux-x64-gnu': 14.0.5-canary.46 - '@next/swc-linux-x64-musl': 14.0.5-canary.46 - '@next/swc-win32-arm64-msvc': 14.0.5-canary.46 - '@next/swc-win32-ia32-msvc': 14.0.5-canary.46 - '@next/swc-win32-x64-msvc': 14.0.5-canary.46 - transitivePeerDependencies: - - '@babel/core' - - babel-plugin-macros - - next@14.1.0(@babel/core@7.23.7)(babel-plugin-macros@3.1.0)(react-dom@18.2.0(react@18.2.0))(react@18.2.0): - dependencies: - '@next/env': 14.1.0 - '@swc/helpers': 0.5.2 - busboy: 1.6.0 - caniuse-lite: 1.0.30001579 - graceful-fs: 4.2.11 - postcss: 8.4.31 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - styled-jsx: 5.1.1(@babel/core@7.23.7)(babel-plugin-macros@3.1.0)(react@18.2.0) - optionalDependencies: - '@next/swc-darwin-arm64': 14.1.0 - '@next/swc-darwin-x64': 14.1.0 - '@next/swc-linux-arm64-gnu': 14.1.0 - '@next/swc-linux-arm64-musl': 14.1.0 - '@next/swc-linux-x64-gnu': 14.1.0 - '@next/swc-linux-x64-musl': 14.1.0 - '@next/swc-win32-arm64-msvc': 14.1.0 - '@next/swc-win32-ia32-msvc': 14.1.0 - '@next/swc-win32-x64-msvc': 14.1.0 - transitivePeerDependencies: - - '@babel/core' - - babel-plugin-macros - - nice-try@1.0.5: {} - - no-case@3.0.4: - dependencies: - lower-case: 2.0.2 - tslib: 2.5.0 - - node-abi@3.54.0: - dependencies: - semver: 7.5.4 - - node-abort-controller@3.1.1: {} - - node-addon-api@6.1.0: {} - - node-dir@0.1.17: - dependencies: - minimatch: 3.1.2 - - node-fetch-native@1.6.1: {} - - node-fetch@2.6.9: - dependencies: - whatwg-url: 5.0.0 - - node-forge@1.3.1: {} - - node-int64@0.4.0: {} - - node-polyfill-webpack-plugin@2.0.1(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)): - dependencies: - assert: 2.1.0 - browserify-zlib: 0.2.0 - buffer: 6.0.3 - console-browserify: 1.2.0 - constants-browserify: 1.0.0 - crypto-browserify: 3.12.0 - domain-browser: 4.23.0 - events: 3.3.0 - filter-obj: 2.0.2 - https-browserify: 1.0.0 - os-browserify: 0.3.0 - path-browserify: 1.0.1 - process: 0.11.10 - punycode: 2.3.0 - querystring-es3: 0.2.1 - readable-stream: 4.5.2 - stream-browserify: 3.0.0 - stream-http: 3.2.0 - string_decoder: 1.3.0 - timers-browserify: 2.0.12 - tty-browserify: 0.0.1 - type-fest: 2.19.0 - url: 0.11.3 - util: 0.12.5 - vm-browserify: 1.1.2 - webpack: 5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6) - - node-releases@2.0.10: {} - - node-releases@2.0.14: {} - - node-schedule@2.1.1: - dependencies: - cron-parser: 4.8.1 - long-timeout: 0.1.1 - sorted-array-functions: 1.3.0 - - nopt@7.2.0: - dependencies: - abbrev: 2.0.0 - - normalize-package-data@2.5.0: - dependencies: - hosted-git-info: 2.8.9 - resolve: 1.22.8 - semver: 5.7.1 - validate-npm-package-license: 3.0.4 - - normalize-path@3.0.0: {} - - normalize-range@0.1.2: {} - - notepack.io@3.0.1: {} - - npm-run-all@4.1.5: - dependencies: - ansi-styles: 3.2.1 - chalk: 2.4.2 - cross-spawn: 6.0.5 - memorystream: 0.3.1 - minimatch: 3.1.2 - pidtree: 0.3.1 - read-pkg: 3.0.0 - shell-quote: 1.7.2 - string.prototype.padend: 3.1.4 - - npm-run-path@4.0.1: - dependencies: - path-key: 3.1.1 - - npm-run-path@5.1.0: - dependencies: - path-key: 4.0.0 - - npm@9.6.1: {} - - nth-check@2.1.1: - dependencies: - boolbase: 1.0.0 - - nypm@0.3.4: - dependencies: - citty: 0.1.5 - execa: 8.0.1 - pathe: 1.1.2 - ufo: 1.3.2 - - object-assign@4.1.1: {} - - object-hash@3.0.0: {} - - object-inspect@1.12.3: {} - - object-inspect@1.13.1: {} - - object-is@1.1.5: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - - object-keys@0.4.0: {} - - object-keys@1.1.1: {} - - object.assign@4.1.4: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - has-symbols: 1.0.3 - object-keys: 1.1.1 - - object.entries@1.1.6: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - - object.fromentries@2.0.7: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - - object.groupby@1.0.2: - dependencies: - array.prototype.filter: 1.0.3 - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - es-errors: 1.3.0 - - object.hasown@1.1.2: - dependencies: - define-properties: 1.2.1 - es-abstract: 1.22.3 - - object.values@1.1.7: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - - objectorarray@1.0.5: {} - - ohash@1.1.3: {} - - on-finished@2.4.1: - dependencies: - ee-first: 1.1.1 - - on-headers@1.0.2: {} - - once@1.4.0: - dependencies: - wrappy: 1.0.2 - - one-time@1.0.0: - dependencies: - fn.name: 1.1.0 - - onetime@5.1.2: - dependencies: - mimic-fn: 2.1.0 - - onetime@6.0.0: - dependencies: - mimic-fn: 4.0.0 - - only@0.0.2: {} - - open@8.4.2: - dependencies: - define-lazy-prop: 2.0.0 - is-docker: 2.2.1 - is-wsl: 2.2.0 - - optionator@0.9.3: - dependencies: - '@aashutoshrathi/word-wrap': 1.2.6 - deep-is: 0.1.4 - fast-levenshtein: 2.0.6 - levn: 0.4.1 - prelude-ls: 1.2.1 - type-check: 0.4.0 - - ora@5.4.1: - dependencies: - bl: 4.1.0 - chalk: 4.1.2 - cli-cursor: 3.1.0 - cli-spinners: 2.9.0 - is-interactive: 1.0.0 - is-unicode-supported: 0.1.0 - log-symbols: 4.1.0 - strip-ansi: 6.0.1 - wcwidth: 1.0.1 - - os-browserify@0.3.0: {} - - p-limit@2.3.0: - dependencies: - p-try: 2.2.0 - - p-limit@3.1.0: - dependencies: - yocto-queue: 0.1.0 - - p-locate@3.0.0: - dependencies: - p-limit: 2.3.0 - - p-locate@4.1.0: - dependencies: - p-limit: 2.3.0 - - p-locate@5.0.0: - dependencies: - p-limit: 3.1.0 - - p-map@4.0.0: - dependencies: - aggregate-error: 3.1.0 - - p-try@2.2.0: {} - - pako@0.2.9: {} - - pako@1.0.11: {} - - param-case@3.0.4: - dependencies: - dot-case: 3.0.4 - tslib: 2.5.0 - - parent-module@1.0.1: - dependencies: - callsites: 3.1.0 - - parse-asn1@5.1.6: - dependencies: - asn1.js: 5.4.1 - browserify-aes: 1.2.0 - evp_bytestokey: 1.0.3 - pbkdf2: 3.1.2 - safe-buffer: 5.2.1 - - parse-json@4.0.0: - dependencies: - error-ex: 1.3.2 - json-parse-better-errors: 1.0.2 - - parse-json@5.2.0: - dependencies: - '@babel/code-frame': 7.18.6 - error-ex: 1.3.2 - json-parse-even-better-errors: 2.3.1 - lines-and-columns: 1.2.4 - - parseley@0.12.1: - dependencies: - leac: 0.6.0 - peberminta: 0.9.0 - - parseurl@1.3.3: {} - - pascal-case@3.1.2: - dependencies: - no-case: 3.0.4 - tslib: 2.5.0 - - passthrough-counter@1.0.0: {} - - path-browserify@1.0.1: {} - - path-exists@3.0.0: {} - - path-exists@4.0.0: {} - - path-is-absolute@1.0.1: {} - - path-key@2.0.1: {} - - path-key@3.1.1: {} - - path-key@4.0.0: {} - - path-parse@1.0.7: {} - - path-scurry@1.10.1: - dependencies: - lru-cache: 10.1.0 - minipass: 7.0.4 - - path-to-regexp@0.1.7: {} - - path-to-regexp@6.2.1: {} - - path-type@3.0.0: - dependencies: - pify: 3.0.0 - - path-type@4.0.0: {} - - pathe@1.1.2: {} - - pathval@1.1.1: {} - - pbkdf2@3.1.2: - dependencies: - create-hash: 1.2.0 - create-hmac: 1.1.7 - ripemd160: 2.0.2 - safe-buffer: 5.2.1 - sha.js: 2.4.11 - - peberminta@0.9.0: {} - - peek-stream@1.1.3: - dependencies: - buffer-from: 1.1.2 - duplexify: 3.7.1 - through2: 2.0.5 - - pend@1.2.0: {} - - picocolors@1.0.0: {} - - picomatch@2.3.1: {} - - pidtree@0.3.1: {} - - pidtree@0.6.0: {} - - pify@2.3.0: {} - - pify@3.0.0: {} - - pify@4.0.1: {} - - pirates@4.0.5: {} - - pirates@4.0.6: {} - - pkg-dir@3.0.0: - dependencies: - find-up: 3.0.0 - - pkg-dir@4.2.0: - dependencies: - find-up: 4.1.0 - - pkg-dir@5.0.0: - dependencies: - find-up: 5.0.0 - - pnp-webpack-plugin@1.7.0(typescript@5.2.2): - dependencies: - ts-pnp: 1.2.0(typescript@5.2.2) - transitivePeerDependencies: - - typescript - - polished@4.2.2: - dependencies: - '@babel/runtime': 7.23.8 - - postcss-import@15.1.0(postcss@8.4.35): - dependencies: - postcss: 8.4.35 - postcss-value-parser: 4.2.0 - read-cache: 1.0.0 - resolve: 1.22.8 - - postcss-js@4.0.1(postcss@8.4.35): - dependencies: - camelcase-css: 2.0.1 - postcss: 8.4.35 - - postcss-load-config@4.0.1(postcss@8.4.35)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)): - dependencies: - lilconfig: 2.1.0 - yaml: 2.3.4 - optionalDependencies: - postcss: 8.4.35 - ts-node: 10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2) - - postcss-loader@7.3.4(postcss@8.4.35)(typescript@5.2.2)(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)): - dependencies: - cosmiconfig: 8.3.6(typescript@5.2.2) - jiti: 1.21.0 - postcss: 8.4.35 - semver: 7.5.4 - webpack: 5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6) - transitivePeerDependencies: - - typescript - - postcss-mixins@9.0.4(postcss@8.4.35): - dependencies: - fast-glob: 3.2.12 - postcss: 8.4.35 - postcss-js: 4.0.1(postcss@8.4.35) - postcss-simple-vars: 7.0.1(postcss@8.4.35) - sugarss: 4.0.1(postcss@8.4.35) - - postcss-modules-extract-imports@3.0.0(postcss@8.4.35): - dependencies: - postcss: 8.4.35 - - postcss-modules-local-by-default@4.0.4(postcss@8.4.35): - dependencies: - icss-utils: 5.1.0(postcss@8.4.35) - postcss: 8.4.35 - postcss-selector-parser: 6.0.11 - postcss-value-parser: 4.2.0 - - postcss-modules-scope@3.1.1(postcss@8.4.35): - dependencies: - postcss: 8.4.35 - postcss-selector-parser: 6.0.11 - - postcss-modules-values@4.0.0(postcss@8.4.35): - dependencies: - icss-utils: 5.1.0(postcss@8.4.35) - postcss: 8.4.35 - - postcss-nested@6.0.1(postcss@8.4.35): - dependencies: - postcss: 8.4.35 - postcss-selector-parser: 6.0.11 - - postcss-preset-mantine@1.13.0(postcss@8.4.35): - dependencies: - postcss: 8.4.35 - postcss-mixins: 9.0.4(postcss@8.4.35) - postcss-nested: 6.0.1(postcss@8.4.35) - - postcss-selector-parser@6.0.11: - dependencies: - cssesc: 3.0.0 - util-deprecate: 1.0.2 - - postcss-simple-vars@7.0.1(postcss@8.4.35): - dependencies: - postcss: 8.4.35 - - postcss-value-parser@4.2.0: {} - - postcss@8.4.31: - dependencies: - nanoid: 3.3.7 - picocolors: 1.0.0 - source-map-js: 1.0.2 - - postcss@8.4.32: - dependencies: - nanoid: 3.3.7 - picocolors: 1.0.0 - source-map-js: 1.0.2 - - postcss@8.4.35: - dependencies: - nanoid: 3.3.7 - picocolors: 1.0.0 - source-map-js: 1.0.2 - - prebuild-install@7.1.1: - dependencies: - detect-libc: 2.0.2 - expand-template: 2.0.3 - github-from-package: 0.0.0 - minimist: 1.2.8 - mkdirp-classic: 0.5.3 - napi-build-utils: 1.0.2 - node-abi: 3.54.0 - pump: 3.0.0 - rc: 1.2.8 - simple-get: 4.0.1 - tar-fs: 2.1.1 - tunnel-agent: 0.6.0 - - prelude-ls@1.2.1: {} - - prettier@2.8.4: {} - - prettier@3.2.5: {} - - pretty-error@4.0.0: - dependencies: - lodash: 4.17.21 - renderkid: 3.0.0 - - pretty-format@27.5.1: - dependencies: - ansi-regex: 5.0.1 - ansi-styles: 5.2.0 - react-is: 17.0.2 - - pretty-format@29.5.0: - dependencies: - '@jest/schemas': 29.4.3 - ansi-styles: 5.2.0 - react-is: 18.2.0 - - pretty-format@29.7.0: - dependencies: - '@jest/schemas': 29.6.3 - ansi-styles: 5.2.0 - react-is: 18.2.0 - - pretty-hrtime@1.0.3: {} - - prism-react-renderer@2.1.0(react@18.2.0): - dependencies: - '@types/prismjs': 1.26.3 - clsx: 1.2.1 - react: 18.2.0 - - prismjs@1.29.0: {} - - process-nextick-args@2.0.1: {} - - process@0.11.10: {} - - progress@2.0.3: {} - - prompts@2.4.2: - dependencies: - kleur: 3.0.3 - sisteransi: 1.0.5 - - prop-types@15.8.1: - dependencies: - loose-envify: 1.4.0 - object-assign: 4.1.1 - react-is: 16.13.1 - - proto-list@1.2.4: {} - - proxy-addr@2.0.7: - dependencies: - forwarded: 0.2.0 - ipaddr.js: 1.9.1 - - proxy-from-env@1.1.0: {} - - psl@1.9.0: {} - - public-encrypt@4.0.3: - dependencies: - bn.js: 4.12.0 - browserify-rsa: 4.1.0 - create-hash: 1.2.0 - parse-asn1: 5.1.6 - randombytes: 2.1.0 - safe-buffer: 5.2.1 - - pump@2.0.1: - dependencies: - end-of-stream: 1.4.4 - once: 1.4.0 - - pump@3.0.0: - dependencies: - end-of-stream: 1.4.4 - once: 1.4.0 - - pumpify@1.5.1: - dependencies: - duplexify: 3.7.1 - inherits: 2.0.4 - pump: 2.0.1 - - punycode@1.4.1: {} - - punycode@2.3.0: {} - - puppeteer-core@2.1.1: - dependencies: - '@types/mime-types': 2.1.4 - debug: 4.3.4 - extract-zip: 1.7.0 - https-proxy-agent: 4.0.0 - mime: 2.6.0 - mime-types: 2.1.35 - progress: 2.0.3 - proxy-from-env: 1.1.0 - rimraf: 2.7.1 - ws: 6.2.2 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - pure-rand@6.0.1: {} - - qs@6.11.0: - dependencies: - side-channel: 1.0.4 - - qs@6.11.2: - dependencies: - side-channel: 1.0.4 - - querystring-es3@0.2.1: {} - - queue-microtask@1.2.3: {} - - queue-tick@1.0.1: {} - - queue@6.0.2: - dependencies: - inherits: 2.0.4 - - quick-lru@4.0.1: {} - - ramda@0.29.0: {} - - randombytes@2.1.0: - dependencies: - safe-buffer: 5.2.1 - - randomfill@1.0.4: - dependencies: - randombytes: 2.1.0 - safe-buffer: 5.2.1 - - range-parser@1.2.1: {} - - raw-body@2.5.1: - dependencies: - bytes: 3.1.2 - http-errors: 2.0.0 - iconv-lite: 0.4.24 - unpipe: 1.0.0 - - rc@1.2.8: - dependencies: - deep-extend: 0.6.0 - ini: 1.3.8 - minimist: 1.2.8 - strip-json-comments: 2.0.1 - - react-colorful@5.6.1(react-dom@18.2.0(react@18.2.0))(react@18.2.0): - dependencies: - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - react-confetti@6.1.0(react@18.2.0): - dependencies: - react: 18.2.0 - tween-functions: 1.2.0 - - react-docgen-typescript@2.2.2(typescript@5.2.2): - dependencies: - typescript: 5.2.2 - - react-docgen@7.0.3: - dependencies: - '@babel/core': 7.23.7 - '@babel/traverse': 7.23.7 - '@babel/types': 7.23.6 - '@types/babel__core': 7.20.0 - '@types/babel__traverse': 7.18.3 - '@types/doctrine': 0.0.9 - '@types/resolve': 1.20.6 - doctrine: 3.0.0 - resolve: 1.22.8 - strip-indent: 4.0.0 - transitivePeerDependencies: - - supports-color - - react-dom@18.2.0(react@18.2.0): - dependencies: - loose-envify: 1.4.0 - react: 18.2.0 - scheduler: 0.23.0 - - react-dropzone-esm@15.0.1(react@18.2.0): - dependencies: - prop-types: 15.8.1 - react: 18.2.0 - - react-element-to-jsx-string@15.0.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0): - dependencies: - '@base2/pretty-print-object': 1.0.1 - is-plain-object: 5.0.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - react-is: 18.1.0 - - react-email@2.0.0(@swc/helpers@0.5.2)(eslint@8.56.0)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)): - dependencies: - '@radix-ui/colors': 1.0.1 - '@radix-ui/react-collapsible': 1.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-popover': 1.0.6(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-slot': 1.0.2(@types/react@18.2.55)(react@18.2.0) - '@radix-ui/react-toggle-group': 1.0.4(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@radix-ui/react-tooltip': 1.0.6(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@react-email/components': 0.0.14(@types/react@18.2.55)(react@18.2.0) - '@react-email/render': 0.0.12 - '@swc/core': 1.3.101(@swc/helpers@0.5.2) - '@types/react': 18.2.55 - '@types/react-dom': 18.2.19 - '@types/webpack': 5.28.5(@swc/core@1.3.101(@swc/helpers@0.5.2))(esbuild@0.19.11) - autoprefixer: 10.4.14(postcss@8.4.32) - chalk: 4.1.2 - chokidar: 3.5.3 - clsx: 2.1.0 - commander: 11.1.0 - debounce: 2.0.0 - esbuild: 0.19.11 - eslint-config-prettier: 9.0.0(eslint@8.56.0) - eslint-config-turbo: 1.10.12(eslint@8.56.0) - framer-motion: 10.17.4(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - glob: 10.3.4 - log-symbols: 4.1.0 - mime-types: 2.1.35 - next: 14.0.5-canary.46(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - normalize-path: 3.0.0 - ora: 5.4.1 - postcss: 8.4.32 - prism-react-renderer: 2.1.0(react@18.2.0) - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - shelljs: 0.8.5 - socket.io: 4.7.3 - socket.io-client: 4.7.3 - sonner: 1.3.1(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - source-map-js: 1.0.2 - stacktrace-parser: 0.1.10 - tailwind-merge: 2.2.0 - tailwindcss: 3.4.0(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)) - tree-cli: 0.6.7 - typescript: 5.1.6 - transitivePeerDependencies: - - '@babel/core' - - '@opentelemetry/api' - - '@swc/helpers' - - babel-plugin-macros - - bufferutil - - eslint - - sass - - supports-color - - ts-node - - uglify-js - - utf-8-validate - - webpack-cli - - react-hook-form@7.50.1(react@18.2.0): - dependencies: - react: 18.2.0 - - react-is@16.13.1: {} - - react-is@17.0.2: {} - - react-is@18.1.0: {} - - react-is@18.2.0: {} - - react-number-format@5.3.1(react-dom@18.2.0(react@18.2.0))(react@18.2.0): - dependencies: - prop-types: 15.8.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - react-property@2.0.0: {} - - react-refresh@0.14.0: {} - - react-remove-scroll-bar@2.3.4(@types/react@18.2.55)(react@18.2.0): - dependencies: - react: 18.2.0 - react-style-singleton: 2.2.1(@types/react@18.2.55)(react@18.2.0) - tslib: 2.5.0 - optionalDependencies: - '@types/react': 18.2.55 - - react-remove-scroll@2.5.5(@types/react@18.2.55)(react@18.2.0): - dependencies: - react: 18.2.0 - react-remove-scroll-bar: 2.3.4(@types/react@18.2.55)(react@18.2.0) - react-style-singleton: 2.2.1(@types/react@18.2.55)(react@18.2.0) - tslib: 2.5.0 - use-callback-ref: 1.3.0(@types/react@18.2.55)(react@18.2.0) - use-sidecar: 1.1.2(@types/react@18.2.55)(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - - react-remove-scroll@2.5.7(@types/react@18.2.55)(react@18.2.0): - dependencies: - react: 18.2.0 - react-remove-scroll-bar: 2.3.4(@types/react@18.2.55)(react@18.2.0) - react-style-singleton: 2.2.1(@types/react@18.2.55)(react@18.2.0) - tslib: 2.5.0 - use-callback-ref: 1.3.0(@types/react@18.2.55)(react@18.2.0) - use-sidecar: 1.1.2(@types/react@18.2.55)(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - - react-style-singleton@2.2.1(@types/react@18.2.55)(react@18.2.0): - dependencies: - get-nonce: 1.0.1 - invariant: 2.2.4 - react: 18.2.0 - tslib: 2.5.0 - optionalDependencies: - '@types/react': 18.2.55 - - react-textarea-autosize@8.5.3(@types/react@18.2.55)(react@18.2.0): - dependencies: - '@babel/runtime': 7.23.8 - react: 18.2.0 - use-composed-ref: 1.3.0(react@18.2.0) - use-latest: 1.2.1(@types/react@18.2.55)(react@18.2.0) - transitivePeerDependencies: - - '@types/react' - - react-transition-group@4.4.5(react-dom@18.2.0(react@18.2.0))(react@18.2.0): - dependencies: - '@babel/runtime': 7.23.8 - dom-helpers: 5.2.1 - loose-envify: 1.4.0 - prop-types: 15.8.1 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - react@18.2.0: - dependencies: - loose-envify: 1.4.0 - - read-cache@1.0.0: - dependencies: - pify: 2.3.0 - - read-pkg-up@7.0.1: - dependencies: - find-up: 4.1.0 - read-pkg: 5.2.0 - type-fest: 0.8.1 - - read-pkg@3.0.0: - dependencies: - load-json-file: 4.0.0 - normalize-package-data: 2.5.0 - path-type: 3.0.0 - - read-pkg@5.2.0: - dependencies: - '@types/normalize-package-data': 2.4.1 - normalize-package-data: 2.5.0 - parse-json: 5.2.0 - type-fest: 0.6.0 - - readable-stream@1.0.34: - dependencies: - core-util-is: 1.0.3 - inherits: 2.0.4 - isarray: 0.0.1 - string_decoder: 0.10.31 - - readable-stream@2.3.7: - dependencies: - core-util-is: 1.0.3 - inherits: 2.0.4 - isarray: 1.0.0 - process-nextick-args: 2.0.1 - safe-buffer: 5.1.2 - string_decoder: 1.1.1 - util-deprecate: 1.0.2 - - readable-stream@3.6.0: - dependencies: - inherits: 2.0.4 - string_decoder: 1.3.0 - util-deprecate: 1.0.2 - - readable-stream@3.6.2: - dependencies: - inherits: 2.0.4 - string_decoder: 1.3.0 - util-deprecate: 1.0.2 - - readable-stream@4.5.2: - dependencies: - abort-controller: 3.0.0 - buffer: 6.0.3 - events: 3.3.0 - process: 0.11.10 - string_decoder: 1.3.0 - - readdirp@3.6.0: - dependencies: - picomatch: 2.3.1 - - recast@0.23.4: - dependencies: - assert: 2.1.0 - ast-types: 0.16.1 - esprima: 4.0.1 - source-map: 0.6.1 - tslib: 2.5.0 - - rechoir@0.6.2: - dependencies: - resolve: 1.22.8 - - redent@3.0.0: - dependencies: - indent-string: 4.0.0 - strip-indent: 3.0.0 - - redis-errors@1.2.0: {} - - redis-parser@3.0.0: - dependencies: - redis-errors: 1.2.0 - - reflect.getprototypeof@1.0.4: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - get-intrinsic: 1.2.2 - globalthis: 1.0.3 - which-builtin-type: 1.1.3 - - regenerate-unicode-properties@10.1.0: - dependencies: - regenerate: 1.4.2 - - regenerate@1.4.2: {} - - regenerator-runtime@0.14.1: {} - - regenerator-transform@0.15.2: - dependencies: - '@babel/runtime': 7.23.8 - - regex-parser@2.3.0: {} - - regexp.prototype.flags@1.4.3: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - functions-have-names: 1.2.3 - - regexp.prototype.flags@1.5.1: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - set-function-name: 2.0.1 - - regexpu-core@5.3.1: - dependencies: - '@babel/regjsgen': 0.8.0 - regenerate: 1.4.2 - regenerate-unicode-properties: 10.1.0 - regjsparser: 0.9.1 - unicode-match-property-ecmascript: 2.0.0 - unicode-match-property-value-ecmascript: 2.1.0 - - regjsparser@0.9.1: - dependencies: - jsesc: 0.5.0 - - relateurl@0.2.7: {} - - remark-external-links@8.0.0: - dependencies: - extend: 3.0.2 - is-absolute-url: 3.0.3 - mdast-util-definitions: 4.0.0 - space-separated-tokens: 1.1.5 - unist-util-visit: 2.0.3 - - remark-slug@6.1.0: - dependencies: - github-slugger: 1.5.0 - mdast-util-to-string: 1.1.0 - unist-util-visit: 2.0.3 - - renderkid@3.0.0: - dependencies: - css-select: 4.3.0 - dom-converter: 0.2.0 - htmlparser2: 6.1.0 - lodash: 4.17.21 - strip-ansi: 6.0.1 - - require-directory@2.1.1: {} - - require-from-string@2.0.2: {} - - resend@3.2.0: - dependencies: - '@react-email/render': 0.0.12 - - resolve-cwd@3.0.0: - dependencies: - resolve-from: 5.0.0 - - resolve-from@4.0.0: {} - - resolve-from@5.0.0: {} - - resolve-pkg-maps@1.0.0: {} - - resolve-url-loader@5.0.0: - dependencies: - adjust-sourcemap-loader: 4.0.0 - convert-source-map: 1.9.0 - loader-utils: 2.0.4 - postcss: 8.4.35 - source-map: 0.6.1 - - resolve.exports@2.0.0: {} - - resolve@1.22.8: - dependencies: - is-core-module: 2.13.1 - path-parse: 1.0.7 - supports-preserve-symlinks-flag: 1.0.0 - - resolve@2.0.0-next.4: - dependencies: - is-core-module: 2.13.1 - path-parse: 1.0.7 - supports-preserve-symlinks-flag: 1.0.0 - - restore-cursor@3.1.0: - dependencies: - onetime: 5.1.2 - signal-exit: 3.0.7 - - restore-cursor@4.0.0: - dependencies: - onetime: 5.1.2 - signal-exit: 3.0.7 - - reusify@1.0.4: {} - - rfdc@1.3.0: {} - - rimraf@2.6.3: - dependencies: - glob: 7.2.3 - - rimraf@2.7.1: - dependencies: - glob: 7.2.3 - - rimraf@3.0.2: - dependencies: - glob: 7.2.3 - - ripemd160@2.0.2: - dependencies: - hash-base: 3.1.0 - inherits: 2.0.4 - - run-parallel@1.2.0: - dependencies: - queue-microtask: 1.2.3 - - rxjs@7.8.0: - dependencies: - tslib: 2.5.0 - - safe-array-concat@1.0.1: - dependencies: - call-bind: 1.0.5 - get-intrinsic: 1.2.2 - has-symbols: 1.0.3 - isarray: 2.0.5 - - safe-buffer@5.1.2: {} - - safe-buffer@5.2.1: {} - - safe-regex-test@1.0.0: - dependencies: - call-bind: 1.0.5 - get-intrinsic: 1.2.2 - is-regex: 1.1.4 - - safe-stable-stringify@2.4.2: {} - - safer-buffer@2.1.2: {} - - saslprep@1.0.3: - dependencies: - sparse-bitfield: 3.0.3 - optional: true - - sass-loader@12.6.0(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)): - dependencies: - klona: 2.0.6 - neo-async: 2.6.2 - webpack: 5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6) - - scheduler@0.23.0: - dependencies: - loose-envify: 1.4.0 - - schema-utils@3.1.1: - dependencies: - '@types/json-schema': 7.0.15 - ajv: 6.12.6 - ajv-keywords: 3.5.2(ajv@6.12.6) - - schema-utils@4.0.0: - dependencies: - '@types/json-schema': 7.0.15 - ajv: 8.12.0 - ajv-formats: 2.1.1(ajv@8.12.0) - ajv-keywords: 5.1.0(ajv@8.12.0) - - selderee@0.11.0: - dependencies: - parseley: 0.12.1 - - semver@5.7.1: {} - - semver@6.3.0: {} - - semver@6.3.1: {} - - semver@7.5.4: - dependencies: - lru-cache: 6.0.0 - - send@0.18.0: - 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 - transitivePeerDependencies: - - supports-color - - serialize-javascript@6.0.1: - dependencies: - randombytes: 2.1.0 - - serve-static@1.15.0: - dependencies: - encodeurl: 1.0.2 - escape-html: 1.0.3 - parseurl: 1.3.3 - send: 0.18.0 - transitivePeerDependencies: - - supports-color - - set-function-length@1.1.1: - dependencies: - define-data-property: 1.1.1 - get-intrinsic: 1.2.2 - gopd: 1.0.1 - has-property-descriptors: 1.0.0 - - set-function-name@2.0.1: - dependencies: - define-data-property: 1.1.1 - functions-have-names: 1.2.3 - has-property-descriptors: 1.0.0 - - setimmediate@1.0.5: {} - - setprototypeof@1.2.0: {} - - sha.js@2.4.11: - dependencies: - inherits: 2.0.4 - safe-buffer: 5.2.1 - - shallow-clone@3.0.1: - dependencies: - kind-of: 6.0.3 - - sharp@0.32.6: - dependencies: - color: 4.2.3 - detect-libc: 2.0.2 - node-addon-api: 6.1.0 - prebuild-install: 7.1.1 - semver: 7.5.4 - simple-get: 4.0.1 - tar-fs: 3.0.4 - tunnel-agent: 0.6.0 - - shebang-command@1.2.0: - dependencies: - shebang-regex: 1.0.0 - - shebang-command@2.0.0: - dependencies: - shebang-regex: 3.0.0 - - shebang-regex@1.0.0: {} - - shebang-regex@3.0.0: {} - - shell-quote@1.7.2: {} - - shelljs@0.8.5: - dependencies: - glob: 7.2.3 - interpret: 1.4.0 - rechoir: 0.6.2 - - side-channel@1.0.4: - dependencies: - call-bind: 1.0.5 - get-intrinsic: 1.2.2 - object-inspect: 1.13.1 - - signal-exit@3.0.7: {} - - signal-exit@4.1.0: {} - - simple-concat@1.0.1: {} - - simple-get@4.0.1: - dependencies: - decompress-response: 6.0.0 - once: 1.4.0 - simple-concat: 1.0.1 - - simple-swizzle@0.2.2: - dependencies: - is-arrayish: 0.3.2 - - sisteransi@1.0.5: {} - - slash@3.0.0: {} - - slash@4.0.0: {} - - slice-ansi@3.0.0: - dependencies: - ansi-styles: 4.3.0 - astral-regex: 2.0.0 - is-fullwidth-code-point: 3.0.0 - - slice-ansi@4.0.0: - dependencies: - ansi-styles: 4.3.0 - astral-regex: 2.0.0 - is-fullwidth-code-point: 3.0.0 - - slice-ansi@5.0.0: - dependencies: - ansi-styles: 6.2.1 - is-fullwidth-code-point: 4.0.0 - - slice-ansi@7.1.0: - dependencies: - ansi-styles: 6.2.1 - is-fullwidth-code-point: 5.0.0 - - smart-buffer@4.2.0: {} - - snake-case@3.0.4: - dependencies: - dot-case: 3.0.4 - tslib: 2.5.0 - - socket.io-adapter@2.5.2: - dependencies: - ws: 8.11.0 - transitivePeerDependencies: - - bufferutil - - utf-8-validate - - socket.io-client@4.7.3: - dependencies: - '@socket.io/component-emitter': 3.1.0 - debug: 4.3.4 - engine.io-client: 6.5.3 - socket.io-parser: 4.2.4 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - socket.io-client@4.7.4: - dependencies: - '@socket.io/component-emitter': 3.1.0 - debug: 4.3.4 - engine.io-client: 6.5.3 - socket.io-parser: 4.2.4 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - socket.io-parser@4.2.2: - dependencies: - '@socket.io/component-emitter': 3.1.0 - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - - socket.io-parser@4.2.4: - dependencies: - '@socket.io/component-emitter': 3.1.0 - debug: 4.3.4 - transitivePeerDependencies: - - supports-color - - socket.io@4.6.1: - dependencies: - accepts: 1.3.8 - base64id: 2.0.0 - debug: 4.3.4 - engine.io: 6.4.1 - socket.io-adapter: 2.5.2 - socket.io-parser: 4.2.2 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - socket.io@4.7.3: - dependencies: - accepts: 1.3.8 - base64id: 2.0.0 - cors: 2.8.5 - debug: 4.3.4 - engine.io: 6.5.4 - socket.io-adapter: 2.5.2 - socket.io-parser: 4.2.4 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - socks@2.7.1: - dependencies: - ip: 2.0.0 - smart-buffer: 4.2.0 - - sonner@1.3.1(react-dom@18.2.0(react@18.2.0))(react@18.2.0): - dependencies: - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - sorted-array-functions@1.3.0: {} - - source-map-js@1.0.2: {} - - source-map-support@0.5.13: - dependencies: - buffer-from: 1.1.2 - source-map: 0.6.1 - - source-map-support@0.5.21: - dependencies: - buffer-from: 1.1.2 - source-map: 0.6.1 - - source-map@0.5.7: {} - - source-map@0.6.1: {} - - source-map@0.7.4: {} - - space-separated-tokens@1.1.5: {} - - sparse-bitfield@3.0.3: - dependencies: - memory-pager: 1.5.0 - - spdx-correct@3.1.1: - dependencies: - spdx-expression-parse: 3.0.1 - spdx-license-ids: 3.0.12 - - spdx-exceptions@2.3.0: {} - - spdx-expression-parse@3.0.1: - dependencies: - spdx-exceptions: 2.3.0 - spdx-license-ids: 3.0.12 - - spdx-license-ids@3.0.12: {} - - sprintf-js@1.0.3: {} - - stack-trace@0.0.10: {} - - stack-utils@2.0.6: - dependencies: - escape-string-regexp: 2.0.0 - - stackframe@1.3.4: {} - - stacktrace-parser@0.1.10: - dependencies: - type-fest: 0.7.1 - - standard-as-callback@2.1.0: {} - - statuses@1.5.0: {} - - statuses@2.0.1: {} - - stop-iteration-iterator@1.0.0: - dependencies: - internal-slot: 1.0.5 - - store2@2.14.2: {} - - storybook-dark-mode@3.0.3(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0): - dependencies: - '@storybook/addons': 7.6.9(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/components': 7.6.9(@types/react-dom@18.2.19)(@types/react@18.2.55)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/core-events': 7.6.9 - '@storybook/global': 5.0.0 - '@storybook/manager-api': 7.6.9(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@storybook/theming': 7.6.9(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - fast-deep-equal: 3.1.3 - memoizerific: 1.11.3 - optionalDependencies: - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - transitivePeerDependencies: - - '@types/react' - - '@types/react-dom' - - storybook@7.6.14: - dependencies: - '@storybook/cli': 7.6.14 - transitivePeerDependencies: - - bufferutil - - encoding - - supports-color - - utf-8-validate - - stream-browserify@3.0.0: - dependencies: - inherits: 2.0.4 - readable-stream: 3.6.2 - - stream-http@3.2.0: - dependencies: - builtin-status-codes: 3.0.0 - inherits: 2.0.4 - readable-stream: 3.6.2 - xtend: 4.0.2 - - stream-shift@1.0.3: {} - - streamsearch@1.1.0: {} - - streamx@2.15.6: - dependencies: - fast-fifo: 1.3.2 - queue-tick: 1.0.1 - - string-argv@0.3.1: {} - - string-argv@0.3.2: {} - - string-length@4.0.2: - dependencies: - char-regex: 1.0.2 - strip-ansi: 6.0.1 - - string-width@4.2.3: - dependencies: - emoji-regex: 8.0.0 - is-fullwidth-code-point: 3.0.0 - strip-ansi: 6.0.1 - - string-width@5.1.2: - dependencies: - eastasianwidth: 0.2.0 - emoji-regex: 9.2.2 - strip-ansi: 7.1.0 - - string-width@7.1.0: - dependencies: - emoji-regex: 10.3.0 - get-east-asian-width: 1.2.0 - strip-ansi: 7.1.0 - - string.prototype.matchall@4.0.8: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - get-intrinsic: 1.2.2 - has-symbols: 1.0.3 - internal-slot: 1.0.5 - regexp.prototype.flags: 1.5.1 - side-channel: 1.0.4 - - string.prototype.padend@3.1.4: - dependencies: - call-bind: 1.0.2 - define-properties: 1.2.0 - es-abstract: 1.21.1 - - string.prototype.trim@1.2.8: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - - string.prototype.trimend@1.0.6: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - - string.prototype.trimend@1.0.7: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - - string.prototype.trimstart@1.0.6: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - - string.prototype.trimstart@1.0.7: - dependencies: - call-bind: 1.0.5 - define-properties: 1.2.1 - es-abstract: 1.22.3 - - string_decoder@0.10.31: {} - - string_decoder@1.1.1: - dependencies: - safe-buffer: 5.1.2 - - string_decoder@1.3.0: - dependencies: - safe-buffer: 5.2.1 - - strip-ansi@3.0.1: - dependencies: - ansi-regex: 2.1.1 - - strip-ansi@6.0.1: - dependencies: - ansi-regex: 5.0.1 - - strip-ansi@7.1.0: - dependencies: - ansi-regex: 6.0.1 - - strip-bom@3.0.0: {} - - strip-bom@4.0.0: {} - - strip-final-newline@2.0.0: {} - - strip-final-newline@3.0.0: {} - - strip-indent@3.0.0: - dependencies: - min-indent: 1.0.1 - - strip-indent@4.0.0: - dependencies: - min-indent: 1.0.1 - - strip-json-comments@2.0.1: {} - - strip-json-comments@3.1.1: {} - - stripe@15.7.0: - dependencies: - '@types/node': 20.11.1 - qs: 6.11.2 - - strnum@1.0.5: {} - - style-loader@3.3.4(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)): - dependencies: - webpack: 5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6) - - style-to-js@1.1.0: - dependencies: - style-to-object: 0.3.0 - - style-to-object@0.3.0: - dependencies: - inline-style-parser: 0.1.1 - - styled-jsx@5.1.1(@babel/core@7.23.7)(babel-plugin-macros@3.1.0)(react@18.2.0): - dependencies: - client-only: 0.0.1 - react: 18.2.0 - optionalDependencies: - '@babel/core': 7.23.7 - babel-plugin-macros: 3.1.0 - - stylis@4.1.3: {} - - sucrase@3.32.0: - dependencies: - '@jridgewell/gen-mapping': 0.3.2 - commander: 4.1.1 - glob: 7.1.6 - lines-and-columns: 1.2.4 - mz: 2.7.0 - pirates: 4.0.6 - ts-interface-checker: 0.1.13 - - sugarss@4.0.1(postcss@8.4.35): - dependencies: - postcss: 8.4.35 - - supports-color@2.0.0: {} - - supports-color@5.5.0: - dependencies: - has-flag: 3.0.0 - - supports-color@7.2.0: - dependencies: - has-flag: 4.0.0 - - supports-color@8.1.1: - dependencies: - has-flag: 4.0.0 - - supports-preserve-symlinks-flag@1.0.0: {} - - svg-parser@2.0.4: {} - - svgo@3.2.0: - dependencies: - '@trysound/sax': 0.2.0 - commander: 7.2.0 - css-select: 5.1.0 - css-tree: 2.3.1 - css-what: 6.1.0 - csso: 5.0.5 - picocolors: 1.0.0 - - swc-loader@0.2.3(@swc/core@1.3.104(@swc/helpers@0.5.2))(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)): - dependencies: - '@swc/core': 1.3.104(@swc/helpers@0.5.2) - webpack: 5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6) - - synchronous-promise@2.0.17: {} - - synckit@0.8.5: - dependencies: - '@pkgr/utils': 2.3.1 - tslib: 2.5.0 - - tabbable@6.1.1: {} - - tailwind-merge@2.2.0: - dependencies: - '@babel/runtime': 7.23.8 - - tailwindcss@3.4.0(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)): - dependencies: - '@alloc/quick-lru': 5.2.0 - arg: 5.0.2 - chokidar: 3.5.3 - didyoumean: 1.2.2 - dlv: 1.1.3 - fast-glob: 3.3.2 - glob-parent: 6.0.2 - is-glob: 4.0.3 - jiti: 1.21.0 - lilconfig: 2.1.0 - micromatch: 4.0.5 - normalize-path: 3.0.0 - object-hash: 3.0.0 - picocolors: 1.0.0 - postcss: 8.4.35 - postcss-import: 15.1.0(postcss@8.4.35) - postcss-js: 4.0.1(postcss@8.4.35) - postcss-load-config: 4.0.1(postcss@8.4.35)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)) - postcss-nested: 6.0.1(postcss@8.4.35) - postcss-selector-parser: 6.0.11 - resolve: 1.22.8 - sucrase: 3.32.0 - transitivePeerDependencies: - - ts-node - - tapable@2.2.1: {} - - tar-fs@2.1.1: - dependencies: - chownr: 1.1.4 - mkdirp-classic: 0.5.3 - pump: 3.0.0 - tar-stream: 2.2.0 - - tar-fs@3.0.4: - dependencies: - mkdirp-classic: 0.5.3 - pump: 3.0.0 - tar-stream: 3.1.6 - - tar-stream@2.2.0: - dependencies: - bl: 4.1.0 - end-of-stream: 1.4.4 - fs-constants: 1.0.0 - inherits: 2.0.4 - readable-stream: 3.6.0 - - tar-stream@3.1.6: - dependencies: - b4a: 1.6.4 - fast-fifo: 1.3.2 - streamx: 2.15.6 - - tar@6.2.0: - dependencies: - chownr: 2.0.0 - fs-minipass: 2.1.0 - minipass: 5.0.0 - minizlib: 2.1.2 - mkdirp: 1.0.4 - yallist: 4.0.0 - - telejson@7.2.0: - dependencies: - memoizerific: 1.11.3 - - temp-dir@2.0.0: {} - - temp@0.8.4: - dependencies: - rimraf: 2.6.3 - - tempy@1.0.1: - dependencies: - del: 6.1.1 - is-stream: 2.0.1 - temp-dir: 2.0.0 - type-fest: 0.16.0 - unique-string: 2.0.0 - - terser-webpack-plugin@5.3.6(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)): - dependencies: - '@jridgewell/trace-mapping': 0.3.17 - jest-worker: 27.5.1 - schema-utils: 3.1.1 - serialize-javascript: 6.0.1 - terser: 5.16.4 - webpack: 5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6) - optionalDependencies: - '@swc/core': 1.3.104(@swc/helpers@0.5.2) - esbuild: 0.18.6 - - terser-webpack-plugin@5.3.6(@swc/core@1.3.104(@swc/helpers@0.5.2))(webpack@5.75.0(@swc/core@1.3.101(@swc/helpers@0.5.2))(esbuild@0.19.11)): - dependencies: - '@jridgewell/trace-mapping': 0.3.17 - jest-worker: 27.5.1 - schema-utils: 3.1.1 - serialize-javascript: 6.0.1 - terser: 5.16.4 - webpack: 5.75.0(@swc/core@1.3.101(@swc/helpers@0.5.2))(esbuild@0.19.11) - optionalDependencies: - '@swc/core': 1.3.104(@swc/helpers@0.5.2) - - terser@5.16.4: - dependencies: - '@jridgewell/source-map': 0.3.2 - acorn: 8.11.3 - commander: 2.20.3 - source-map-support: 0.5.21 - - test-exclude@6.0.0: - dependencies: - '@istanbuljs/schema': 0.1.3 - glob: 7.2.3 - minimatch: 3.1.2 - - text-hex@1.0.0: {} - - text-table@0.2.0: {} - - thenify-all@1.6.0: - dependencies: - thenify: 3.3.1 - - thenify@3.3.1: - dependencies: - any-promise: 1.3.0 - - through2@0.4.2: - dependencies: - readable-stream: 1.0.34 - xtend: 2.1.2 - - through2@2.0.5: - dependencies: - readable-stream: 2.3.7 - xtend: 4.0.2 - - through@2.3.8: {} - - timers-browserify@2.0.12: - dependencies: - setimmediate: 1.0.5 - - tiny-glob@0.2.9: - dependencies: - globalyzer: 0.1.0 - globrex: 0.1.2 - - tiny-invariant@1.3.1: {} - - tinyspy@2.2.0: {} - - tmpl@1.0.5: {} - - to-fast-properties@2.0.0: {} - - to-regex-range@5.0.1: - dependencies: - is-number: 7.0.0 - - tocbot@4.25.0: {} - - toidentifier@1.0.1: {} - - tr46@0.0.3: {} - - tr46@3.0.0: - dependencies: - punycode: 2.3.0 - - tree-cli@0.6.7: - dependencies: - bluebird: 3.4.7 - chalk: 1.1.3 - cli-spinner: 0.2.10 - lodash.includes: 4.3.0 - meow: 7.1.1 - object-assign: 4.1.1 - - trim-newlines@3.0.1: {} - - triple-beam@1.3.0: {} - - ts-api-utils@1.2.1(typescript@5.2.2): - dependencies: - typescript: 5.2.2 - - ts-dedent@2.2.0: {} - - ts-interface-checker@0.1.13: {} - - ts-jest@29.1.2(@babel/core@7.21.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.21.0))(jest@29.7.0(@types/node@20.11.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)))(typescript@5.2.2): - dependencies: - bs-logger: 0.2.6 - fast-json-stable-stringify: 2.1.0 - jest: 29.7.0(@types/node@20.11.1)(babel-plugin-macros@3.1.0)(ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2)) - jest-util: 29.5.0 - json5: 2.2.3 - lodash.memoize: 4.1.2 - make-error: 1.3.6 - semver: 7.5.4 - typescript: 5.2.2 - yargs-parser: 21.1.1 - optionalDependencies: - '@babel/core': 7.21.0 - '@jest/types': 29.6.3 - babel-jest: 29.7.0(@babel/core@7.21.0) - - ts-node@10.9.1(@swc/core@1.3.104(@swc/helpers@0.5.2))(@types/node@20.11.1)(typescript@5.2.2): - dependencies: - '@cspotcode/source-map-support': 0.8.1 - '@tsconfig/node10': 1.0.9 - '@tsconfig/node12': 1.0.11 - '@tsconfig/node14': 1.0.3 - '@tsconfig/node16': 1.0.4 - '@types/node': 20.11.1 - acorn: 8.8.2 - acorn-walk: 8.2.0 - arg: 4.1.3 - create-require: 1.1.1 - diff: 4.0.2 - make-error: 1.3.6 - typescript: 5.2.2 - v8-compile-cache-lib: 3.0.1 - yn: 3.1.1 - optionalDependencies: - '@swc/core': 1.3.104(@swc/helpers@0.5.2) - - ts-pnp@1.2.0(typescript@5.2.2): - optionalDependencies: - typescript: 5.2.2 - - tsconfig-paths-webpack-plugin@4.1.0: - dependencies: - chalk: 4.1.2 - enhanced-resolve: 5.12.0 - tsconfig-paths: 4.2.0 - - tsconfig-paths@3.15.0: - dependencies: - '@types/json5': 0.0.29 - json5: 1.0.2 - minimist: 1.2.8 - strip-bom: 3.0.0 - - tsconfig-paths@4.2.0: - dependencies: - json5: 2.2.3 - minimist: 1.2.8 - strip-bom: 3.0.0 - - tslib@1.14.1: {} - - tslib@2.5.0: {} - - tslib@2.6.2: {} - - tsscmp@1.0.6: {} - - tsx@4.20.4: - dependencies: - esbuild: 0.25.9 - get-tsconfig: 4.10.1 - optionalDependencies: - fsevents: 2.3.3 - - tty-browserify@0.0.1: {} - - tunnel-agent@0.6.0: - dependencies: - safe-buffer: 5.2.1 - - turbo-darwin-64@1.11.1: - optional: true - - turbo-darwin-arm64@1.11.1: - optional: true - - turbo-linux-64@1.11.1: - optional: true - - turbo-linux-arm64@1.11.1: - optional: true - - turbo-windows-64@1.11.1: - optional: true - - turbo-windows-arm64@1.11.1: - optional: true - - turbo@1.11.1: - optionalDependencies: - turbo-darwin-64: 1.11.1 - turbo-darwin-arm64: 1.11.1 - turbo-linux-64: 1.11.1 - turbo-linux-arm64: 1.11.1 - turbo-windows-64: 1.11.1 - turbo-windows-arm64: 1.11.1 - - tween-functions@1.2.0: {} - - type-check@0.4.0: - dependencies: - prelude-ls: 1.2.1 - - type-detect@4.0.8: {} - - type-fest@0.13.1: {} - - type-fest@0.16.0: {} - - type-fest@0.20.2: {} - - type-fest@0.21.3: {} - - type-fest@0.6.0: {} - - type-fest@0.7.1: {} - - type-fest@0.8.1: {} - - type-fest@2.19.0: {} - - type-fest@3.13.1: {} - - type-is@1.6.18: - dependencies: - media-typer: 0.3.0 - mime-types: 2.1.35 - - typed-array-buffer@1.0.0: - dependencies: - call-bind: 1.0.5 - get-intrinsic: 1.2.2 - is-typed-array: 1.1.12 - - typed-array-byte-length@1.0.0: - dependencies: - call-bind: 1.0.5 - for-each: 0.3.3 - has-proto: 1.0.1 - is-typed-array: 1.1.12 - - typed-array-byte-offset@1.0.0: - dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.5 - for-each: 0.3.3 - has-proto: 1.0.1 - is-typed-array: 1.1.12 - - typed-array-length@1.0.4: - dependencies: - call-bind: 1.0.5 - for-each: 0.3.3 - is-typed-array: 1.1.12 - - typedarray@0.0.6: {} - - typescript@5.1.6: {} - - typescript@5.2.2: {} - - ufo@1.3.2: {} - - uglify-js@3.17.4: - optional: true - - uid2@1.0.0: {} - - unbox-primitive@1.0.2: - dependencies: - call-bind: 1.0.5 - has-bigints: 1.0.2 - has-symbols: 1.0.3 - which-boxed-primitive: 1.0.2 - - undici-types@5.26.5: {} - - unicode-canonical-property-names-ecmascript@2.0.0: {} - - unicode-match-property-ecmascript@2.0.0: - dependencies: - unicode-canonical-property-names-ecmascript: 2.0.0 - unicode-property-aliases-ecmascript: 2.1.0 - - unicode-match-property-value-ecmascript@2.1.0: {} - - unicode-property-aliases-ecmascript@2.1.0: {} - - unique-string@2.0.0: - dependencies: - crypto-random-string: 2.0.0 - - unist-util-is@4.1.0: {} - - unist-util-visit-parents@3.1.1: - dependencies: - '@types/unist': 2.0.10 - unist-util-is: 4.1.0 - - unist-util-visit@2.0.3: - dependencies: - '@types/unist': 2.0.10 - unist-util-is: 4.1.0 - unist-util-visit-parents: 3.1.1 - - universalify@2.0.0: {} - - unpipe@1.0.0: {} - - unplugin@1.6.0: - dependencies: - acorn: 8.11.3 - chokidar: 3.5.3 - webpack-sources: 3.2.3 - webpack-virtual-modules: 0.6.1 - - untildify@4.0.0: {} - - update-browserslist-db@1.0.10(browserslist@4.21.5): - dependencies: - browserslist: 4.21.5 - escalade: 3.1.1 - picocolors: 1.0.0 - - update-browserslist-db@1.0.13(browserslist@4.22.2): - dependencies: - browserslist: 4.22.2 - escalade: 3.1.1 - picocolors: 1.0.0 - - uri-js@4.4.1: - dependencies: - punycode: 2.3.0 - - url@0.11.3: - dependencies: - punycode: 1.4.1 - qs: 6.11.2 - - use-callback-ref@1.3.0(@types/react@18.2.55)(react@18.2.0): - dependencies: - react: 18.2.0 - tslib: 2.5.0 - optionalDependencies: - '@types/react': 18.2.55 - - use-composed-ref@1.3.0(react@18.2.0): - dependencies: - react: 18.2.0 - - use-isomorphic-layout-effect@1.1.2(@types/react@18.2.55)(react@18.2.0): - dependencies: - react: 18.2.0 - optionalDependencies: - '@types/react': 18.2.55 - - use-latest@1.2.1(@types/react@18.2.55)(react@18.2.0): - dependencies: - react: 18.2.0 - use-isomorphic-layout-effect: 1.1.2(@types/react@18.2.55)(react@18.2.0) - optionalDependencies: - '@types/react': 18.2.55 - - use-resize-observer@9.1.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0): - dependencies: - '@juggle/resize-observer': 3.4.0 - react: 18.2.0 - react-dom: 18.2.0(react@18.2.0) - - use-sidecar@1.1.2(@types/react@18.2.55)(react@18.2.0): - dependencies: - detect-node-es: 1.1.0 - react: 18.2.0 - tslib: 2.5.0 - optionalDependencies: - '@types/react': 18.2.55 - - util-deprecate@1.0.2: {} - - util@0.12.5: - dependencies: - inherits: 2.0.4 - is-arguments: 1.1.1 - is-generator-function: 1.0.10 - is-typed-array: 1.1.12 - which-typed-array: 1.1.13 - - utila@0.4.0: {} - - utils-merge@1.0.1: {} - - uuid@8.3.2: {} - - uuid@9.0.0: {} - - v8-compile-cache-lib@3.0.1: {} - - v8-to-istanbul@9.1.0: - dependencies: - '@jridgewell/trace-mapping': 0.3.25 - '@types/istanbul-lib-coverage': 2.0.4 - convert-source-map: 1.9.0 - - validate-npm-package-license@3.0.4: - dependencies: - spdx-correct: 3.1.1 - spdx-expression-parse: 3.0.1 - - vary@1.1.2: {} - - vm-browserify@1.1.2: {} - - walker@1.0.8: - dependencies: - makeerror: 1.0.12 - - watchpack@2.4.0: - dependencies: - glob-to-regexp: 0.4.1 - graceful-fs: 4.2.11 - - wcwidth@1.0.1: - dependencies: - defaults: 1.0.4 - - webidl-conversions@3.0.1: {} - - webidl-conversions@7.0.0: {} - - webpack-dev-middleware@6.1.1(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)): - dependencies: - colorette: 2.0.19 - memfs: 3.5.3 - mime-types: 2.1.35 - range-parser: 1.2.1 - schema-utils: 4.0.0 - optionalDependencies: - webpack: 5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6) - - webpack-hot-middleware@2.26.0: - dependencies: - ansi-html-community: 0.0.8 - html-entities: 2.4.0 - strip-ansi: 6.0.1 - - webpack-sources@3.2.3: {} - - webpack-virtual-modules@0.5.0: {} - - webpack-virtual-modules@0.6.1: {} - - webpack@5.75.0(@swc/core@1.3.101(@swc/helpers@0.5.2))(esbuild@0.19.11): - 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.11.3 - acorn-import-assertions: 1.8.0(acorn@8.11.3) - browserslist: 4.22.2 - 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.11 - 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(@swc/core@1.3.104(@swc/helpers@0.5.2))(webpack@5.75.0(@swc/core@1.3.101(@swc/helpers@0.5.2))(esbuild@0.19.11)) - watchpack: 2.4.0 - webpack-sources: 3.2.3 - transitivePeerDependencies: - - '@swc/core' - - esbuild - - uglify-js - - webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6): - 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.11.3 - acorn-import-assertions: 1.8.0(acorn@8.11.3) - browserslist: 4.22.2 - 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.11 - 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(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)(webpack@5.75.0(@swc/core@1.3.104(@swc/helpers@0.5.2))(esbuild@0.18.6)) - watchpack: 2.4.0 - webpack-sources: 3.2.3 - transitivePeerDependencies: - - '@swc/core' - - esbuild - - uglify-js - - whatwg-url@11.0.0: - dependencies: - tr46: 3.0.0 - webidl-conversions: 7.0.0 - - whatwg-url@5.0.0: - dependencies: - tr46: 0.0.3 - webidl-conversions: 3.0.1 - - which-boxed-primitive@1.0.2: - dependencies: - is-bigint: 1.0.4 - is-boolean-object: 1.1.2 - is-number-object: 1.0.7 - is-string: 1.0.7 - is-symbol: 1.0.4 - - which-builtin-type@1.1.3: - dependencies: - function.prototype.name: 1.1.6 - has-tostringtag: 1.0.0 - is-async-function: 2.0.0 - is-date-object: 1.0.5 - is-finalizationregistry: 1.0.2 - is-generator-function: 1.0.10 - is-regex: 1.1.4 - is-weakref: 1.0.2 - isarray: 2.0.5 - which-boxed-primitive: 1.0.2 - which-collection: 1.0.1 - which-typed-array: 1.1.13 - - which-collection@1.0.1: - dependencies: - is-map: 2.0.2 - is-set: 2.0.2 - is-weakmap: 2.0.1 - is-weakset: 2.0.2 - - which-typed-array@1.1.13: - dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.5 - for-each: 0.3.3 - gopd: 1.0.1 - has-tostringtag: 1.0.0 - - which-typed-array@1.1.9: - dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.5 - for-each: 0.3.3 - gopd: 1.0.1 - has-tostringtag: 1.0.0 - is-typed-array: 1.1.10 - - which@1.3.1: - dependencies: - isexe: 2.0.0 - - which@2.0.2: - dependencies: - isexe: 2.0.0 - - winston-transport@4.5.0: - dependencies: - logform: 2.5.1 - readable-stream: 3.6.0 - triple-beam: 1.3.0 - - winston@3.8.2: - dependencies: - '@colors/colors': 1.5.0 - '@dabh/diagnostics': 2.0.3 - async: 3.2.4 - is-stream: 2.0.1 - logform: 2.5.1 - one-time: 1.0.0 - readable-stream: 3.6.0 - safe-stable-stringify: 2.4.2 - stack-trace: 0.0.10 - triple-beam: 1.3.0 - winston-transport: 4.5.0 - - wordwrap@1.0.0: {} - - wrap-ansi@6.2.0: - dependencies: - ansi-styles: 4.3.0 - string-width: 4.2.3 - strip-ansi: 6.0.1 - - wrap-ansi@7.0.0: - dependencies: - ansi-styles: 4.3.0 - string-width: 4.2.3 - strip-ansi: 6.0.1 - - wrap-ansi@8.1.0: - dependencies: - ansi-styles: 6.2.1 - string-width: 5.1.2 - strip-ansi: 7.1.0 - - wrap-ansi@9.0.0: - dependencies: - ansi-styles: 6.2.1 - string-width: 7.1.0 - strip-ansi: 7.1.0 - - wrappy@1.0.2: {} - - write-file-atomic@2.4.3: - dependencies: - graceful-fs: 4.2.11 - imurmurhash: 0.1.4 - signal-exit: 3.0.7 - - write-file-atomic@4.0.2: - dependencies: - imurmurhash: 0.1.4 - signal-exit: 3.0.7 - - ws@6.2.2: - dependencies: - async-limiter: 1.0.1 - - ws@8.11.0: {} - - xmlhttprequest-ssl@2.0.0: {} - - xtend@2.1.2: - dependencies: - object-keys: 0.4.0 - - xtend@4.0.2: {} - - y18n@5.0.8: {} - - yallist@3.1.1: {} - - yallist@4.0.0: {} - - yaml@1.10.2: {} - - yaml@2.2.1: {} - - yaml@2.3.4: {} - - yargs-parser@18.1.3: - dependencies: - camelcase: 5.3.1 - decamelize: 1.2.0 - - yargs-parser@21.1.1: {} - - yargs@17.7.0: - 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.8 - yargs-parser: 21.1.1 - - yauzl@2.10.0: - dependencies: - buffer-crc32: 0.2.13 - fd-slicer: 1.1.0 - - ylru@1.3.2: {} - - yn@3.1.1: {} - - yocto-queue@0.1.0: {} - - zod@3.21.4: {} diff --git a/examples/stripe-subscriptions/pnpm-workspace.yaml b/examples/stripe-subscriptions/pnpm-workspace.yaml deleted file mode 100644 index 38adf840f..000000000 --- a/examples/stripe-subscriptions/pnpm-workspace.yaml +++ /dev/null @@ -1,3 +0,0 @@ -packages: - - ./apps/* - - ./packages/* diff --git a/examples/stripe-subscriptions/render.yaml b/examples/stripe-subscriptions/render.yaml deleted file mode 100644 index a1a6850b2..000000000 --- a/examples/stripe-subscriptions/render.yaml +++ /dev/null @@ -1,17 +0,0 @@ -services: - - type: web - name: stripe-subscriptions-api - runtime: docker - plan: free - dockerfilePath: apps/api/Dockerfile - buildFilter: - paths: - - apps/api/** - - type: web - name: stripe-subscriptions-web - runtime: docker - plan: free - dockerfilePath: apps/web/Dockerfile - buildFilter: - paths: - - apps/web/** diff --git a/examples/stripe-subscriptions/turbo.json b/examples/stripe-subscriptions/turbo.json deleted file mode 100644 index ce5eda862..000000000 --- a/examples/stripe-subscriptions/turbo.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "$schema": "https://turborepo.org/schema.json", - "pipeline": { - "build": { - "outputs": ["dist/**", ".next/**", "public/dist/**"], - "dependsOn": ["^build"] - }, - "api#migrate-dev": { - "cache": false - }, - "api#schedule-dev": { - "dependsOn": ["api#migrate-dev"], - "cache": false - }, - "dev": { - "cache": false - }, - "development": { - "dependsOn": ["api#migrate-dev", "api#schedule-dev", "dev"], - "cache": false - }, - "precommit": { - "outputs": [] - }, - "test:eslint": { - "outputs": [] - } - } -} diff --git a/package.json b/package.json index cf09f49a6..c0f221b68 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,11 @@ { "name": "ship", "version": "1.0.0", - "keywords": ["ship", "next", "koa"], + "keywords": [ + "ship", + "next", + "koa" + ], "author": "Ship Team ", "license": "MIT", "scripts": { diff --git a/packages/create-ship-app/src/config/index.ts b/packages/create-ship-app/src/config/index.ts index 20b8b070f..ce639c170 100644 --- a/packages/create-ship-app/src/config/index.ts +++ b/packages/create-ship-app/src/config/index.ts @@ -6,6 +6,8 @@ const config = { TEMP_DIR_PATH: process.env.TEMP_DIR_PATH, CLEANUP_TEMP_DIR: process.env.CLEANUP_TEMP_DIR === 'true' || false, PNPM_SILENT: process.env.PNPM_SILENT === 'true' || false, + PLUGINS_REPO_OWNER: process.env.PLUGINS_REPO_OWNER || 'paralect', + PLUGINS_REPO_NAME: process.env.PLUGINS_REPO_NAME || 'ship-plugins', }; export default config; diff --git a/packages/create-ship-app/src/index.ts b/packages/create-ship-app/src/index.ts index a5d469f4c..8ea4670e3 100644 --- a/packages/create-ship-app/src/index.ts +++ b/packages/create-ship-app/src/index.ts @@ -18,6 +18,8 @@ import { validateNpmName, } from 'helpers'; +import { createPlugin, installPlugin } from 'plugins'; + import config from 'config'; import { Deployment } from 'types'; @@ -73,6 +75,24 @@ const run = async (): Promise => { return; } + // rawArgs = ['install', ]; + const isCommandInstall = rawArgs.length === 2 && rawArgs[0] === 'install'; + + if (isCommandInstall) { + await installPlugin(rawArgs[1].toLowerCase()); + + return; + } + + // rawArgs = ['add', ]; + const isCommandAdd = rawArgs.length === 2 && rawArgs[0] === 'add'; + + if (isCommandAdd) { + await createPlugin(rawArgs[1].toLowerCase()); + + return; + } + const conf = new Conf({ projectName: 'create-ship-app' }); console.clear(); diff --git a/packages/create-ship-app/src/plugins/create-plugin.ts b/packages/create-ship-app/src/plugins/create-plugin.ts new file mode 100644 index 000000000..93310bc57 --- /dev/null +++ b/packages/create-ship-app/src/plugins/create-plugin.ts @@ -0,0 +1,244 @@ +import { execSync } from 'child_process'; +import fs from 'fs'; +import { tmpdir } from 'os'; +import path from 'path'; +import { bold, cyan, green, red, yellow } from 'picocolors'; + +import config from 'config'; + +interface PackageJsonDiff { + /** Workspace path like "apps/api" */ + workspace: string; + /** Added dependencies: name β†’ version */ + added: Record; +} + +const IGNORED_FILES = [ + 'pnpm-lock.yaml', + 'packages/shared/src/generated/', + 'packages/shared/src/schemas/', +]; + +const shouldIgnoreFile = (filePath: string): boolean => + IGNORED_FILES.some((pattern) => filePath.includes(pattern)); + +const isWorkspacePackageJson = (filePath: string): boolean => + /^apps\/[^/]+\/package\.json$/.test(filePath); + +const git = (args: string, cwd: string): string => + execSync(`git ${args}`, { cwd, encoding: 'utf8' }).trim(); + +/** + * Get the path prefix from git root to the project root. + * E.g. if git root is /monorepo and cwd is /monorepo/template, returns "template/". + * If cwd IS the git root, returns "". + */ +const getGitPrefix = (projectRoot: string): string => { + const prefix = git('rev-parse --show-prefix', projectRoot); + + return prefix; // already has trailing slash if non-empty +}; + +/** + * Strip prefix and normalize a path from git diff output. + * E.g. "template/apps/api/src/foo.ts" with prefix "template/" β†’ "apps/api/src/foo.ts" + */ +const stripPrefix = (filePath: string, prefix: string): string => + prefix && filePath.startsWith(prefix) ? filePath.slice(prefix.length) : filePath; + +/** + * Get new files from the last commit (status A = added). + * Excludes package.json diffs, lock files, and generated files. + */ +const getNewFiles = (projectRoot: string): string[] => { + const prefix = getGitPrefix(projectRoot); + const output = git('diff --name-status HEAD~1 HEAD', projectRoot); + + return output + .split('\n') + .filter((line) => line.startsWith('A\t')) + .map((line) => stripPrefix(line.slice(2), prefix)) + .filter((file) => !shouldIgnoreFile(file) && !isWorkspacePackageJson(file) && file !== 'package.json'); +}; + +/** + * Extract added dependencies from modified workspace package.json files. + * Compares HEAD~1 vs HEAD to find new deps. + */ +const getPackageJsonDiffs = (projectRoot: string): PackageJsonDiff[] => { + const prefix = getGitPrefix(projectRoot); + const output = git('diff --name-status HEAD~1 HEAD', projectRoot); + const diffs: PackageJsonDiff[] = []; + + const modifiedPackageJsons = output + .split('\n') + .filter((line) => line.startsWith('M\t')) + .map((line) => { + const gitPath = line.slice(2); + return { gitPath, localPath: stripPrefix(gitPath, prefix) }; + }) + .filter(({ localPath }) => isWorkspacePackageJson(localPath)); + + for (const { gitPath, localPath } of modifiedPackageJsons) { + const workspace = path.dirname(localPath); + + let oldPkg: Record; + let newPkg: Record; + + try { + oldPkg = JSON.parse(git(`show HEAD~1:${gitPath}`, projectRoot)).dependencies || {}; + newPkg = JSON.parse(git(`show HEAD:${gitPath}`, projectRoot)).dependencies || {}; + } catch { + continue; + } + + const added: Record = {}; + + for (const [name, version] of Object.entries(newPkg)) { + if (!oldPkg[name]) { + added[name] = version; + } + } + + if (Object.keys(added).length > 0) { + diffs.push({ workspace, added }); + } + } + + return diffs; +}; + +/** + * Build plugin package.json with dependency map. + */ +const buildPluginManifest = (pluginName: string, diffs: PackageJsonDiff[]): string => { + const manifest: Record = { + name: `ship-plugin-${pluginName}`, + version: '1.0.0', + private: true, + }; + + if (diffs.length > 0) { + const dependencies: Record> = {}; + + for (const diff of diffs) { + dependencies[diff.workspace] = diff.added; + } + + manifest.dependencies = dependencies; + } + + return JSON.stringify(manifest, null, 2) + '\n'; +}; + +/** + * Clone the plugins repo, create a branch with the plugin files, and push. + */ +const pushToPluginsRepo = (pluginName: string, pluginDir: string): string => { + const owner = config.PLUGINS_REPO_OWNER; + const repo = config.PLUGINS_REPO_NAME; + const repoUrl = `git@github.com:${owner}/${repo}.git`; + const branch = `add/${pluginName}`; + + const tempDir = path.join(tmpdir(), `ship-plugin-${Date.now()}`); + + console.log(cyan(` Cloning ${owner}/${repo}...`)); + execSync(`git clone --depth 1 ${repoUrl} ${tempDir}`, { stdio: 'pipe' }); + + console.log(cyan(` Creating branch ${branch}...`)); + execSync(`git checkout -b ${branch}`, { cwd: tempDir, stdio: 'pipe' }); + + // Copy plugin directory into the repo + const destDir = path.join(tempDir, pluginName); + fs.cpSync(pluginDir, destDir, { recursive: true }); + + execSync('git add .', { cwd: tempDir, stdio: 'pipe' }); + execSync(`git commit -m "Add ${pluginName} plugin"`, { cwd: tempDir, stdio: 'pipe' }); + + console.log(cyan(` Pushing to ${owner}/${repo}...`)); + execSync(`git push origin ${branch}`, { cwd: tempDir, stdio: 'pipe' }); + + // Cleanup + fs.rmSync(tempDir, { recursive: true, force: true }); + + return `https://github.com/${owner}/${repo}/compare/main...${branch}?expand=1`; +}; + +export const createPlugin = async (pluginName: string): Promise => { + const projectRoot = process.cwd(); + + console.log(); + console.log(bold(`Creating plugin: ${cyan(pluginName)}`)); + console.log(); + + // 1. Extract new files from last commit + console.log(bold('Extracting files from last commit...')); + + const newFiles = getNewFiles(projectRoot); + + if (newFiles.length === 0) { + console.log(red('\n βœ— No new files found in the last commit.\n')); + process.exit(1); + } + + for (const file of newFiles) { + console.log(green(` βœ“ ${file}`)); + } + + // 2. Extract dependency diffs + console.log(bold('\nExtracting dependency changes...')); + + const depDiffs = getPackageJsonDiffs(projectRoot); + + if (depDiffs.length === 0) { + console.log(yellow(' No new dependencies found.')); + } else { + for (const diff of depDiffs) { + for (const [name, version] of Object.entries(diff.added)) { + console.log(green(` βœ“ ${name}@${version} β†’ ${diff.workspace}`)); + } + } + } + + // 3. Build plugin directory in temp location + console.log(bold('\nPackaging plugin...')); + + const pluginDir = path.join(tmpdir(), `ship-plugin-build-${Date.now()}`, pluginName); + fs.mkdirSync(pluginDir, { recursive: true }); + + // Copy new files preserving directory structure + for (const file of newFiles) { + const src = path.join(projectRoot, file); + const dest = path.join(pluginDir, file); + + fs.mkdirSync(path.dirname(dest), { recursive: true }); + fs.copyFileSync(src, dest); + } + + // Write plugin package.json + const manifest = buildPluginManifest(pluginName, depDiffs); + fs.writeFileSync(path.join(pluginDir, 'package.json'), manifest, 'utf8'); + + console.log(green(` βœ“ Packaged ${newFiles.length} files + package.json`)); + + // 4. Push to plugins repo + console.log(bold('\nPushing to plugins repository...')); + + try { + const prUrl = pushToPluginsRepo(pluginName, pluginDir); + + // Cleanup build dir + fs.rmSync(path.dirname(pluginDir), { recursive: true, force: true }); + + console.log(bold(green(`\nβœ“ Plugin "${pluginName}" pushed successfully!\n`))); + console.log(`Create a pull request: ${cyan(prUrl)}\n`); + } catch (error) { + const message = error instanceof Error ? error.message : String(error); + console.log(red(`\n βœ— Failed to push: ${message}`)); + console.log(yellow(' Make sure you have push access to the plugins repository.\n')); + + // Still show the local build path + console.log(` Plugin files are at: ${cyan(pluginDir)}\n`); + process.exit(1); + } +}; diff --git a/packages/create-ship-app/src/plugins/download.ts b/packages/create-ship-app/src/plugins/download.ts new file mode 100644 index 000000000..d6d12cde8 --- /dev/null +++ b/packages/create-ship-app/src/plugins/download.ts @@ -0,0 +1,76 @@ +import got from 'got'; + +import config from 'config'; + +interface GitHubContent { + name: string; + path: string; + type: 'file' | 'dir'; + download_url: string | null; +} + +export interface PluginFile { + /** Path relative to the plugin root (e.g. "apps/api/src/config/stripe.config.ts") */ + relativePath: string; + content: string; +} + +export interface PluginManifest { + name: string; + version: string; + dependencies?: Record>; +} + +export interface DownloadedPlugin { + files: PluginFile[]; + manifest: PluginManifest | null; +} + +const fetchContents = async (owner: string, repo: string, dirPath: string): Promise => { + return got(`https://api.github.com/repos/${owner}/${repo}/contents/${dirPath}`, { + headers: { Accept: 'application/vnd.github.v3+json', 'User-Agent': 'create-ship-app' }, + }).json(); +}; + +const downloadFileContent = async (url: string): Promise => { + return got(url, { + headers: { 'User-Agent': 'create-ship-app' }, + }).text(); +}; + +const downloadDirectory = async ( + owner: string, + repo: string, + githubPath: string, + pluginRoot: string, + result: DownloadedPlugin, +): Promise => { + const contents = await fetchContents(owner, repo, githubPath); + + for (const item of contents) { + const relativePath = item.path.slice(pluginRoot.length + 1); + + if (item.type === 'dir') { + await downloadDirectory(owner, repo, item.path, pluginRoot, result); + } else if (item.type === 'file' && item.download_url) { + const content = await downloadFileContent(item.download_url); + + if (relativePath === 'package.json') { + result.manifest = JSON.parse(content) as PluginManifest; + } else { + result.files.push({ relativePath, content }); + } + } + } +}; + +export const downloadPlugin = async (pluginName: string): Promise => { + const owner = config.PLUGINS_REPO_OWNER; + const repo = config.PLUGINS_REPO_NAME; + + const result: DownloadedPlugin = { files: [], manifest: null }; + + await downloadDirectory(owner, repo, pluginName, pluginName, result); + + return result; +}; diff --git a/packages/create-ship-app/src/plugins/index.ts b/packages/create-ship-app/src/plugins/index.ts new file mode 100644 index 000000000..237fbd31c --- /dev/null +++ b/packages/create-ship-app/src/plugins/index.ts @@ -0,0 +1,3 @@ +export { createPlugin } from './create-plugin'; +export { installPlugin } from './install-plugin'; +export type { PluginFile, PluginManifest, DownloadedPlugin } from './types'; diff --git a/packages/create-ship-app/src/plugins/install-plugin.ts b/packages/create-ship-app/src/plugins/install-plugin.ts new file mode 100644 index 000000000..9e8f99c1b --- /dev/null +++ b/packages/create-ship-app/src/plugins/install-plugin.ts @@ -0,0 +1,140 @@ +import spawn from 'cross-spawn'; +import fs from 'fs'; +import path from 'path'; +import { bold, cyan, green, red, yellow } from 'picocolors'; + +import config from 'config'; + +import { downloadPlugin, type DownloadedPlugin, type PluginManifest } from './download'; + +const resolveProjectRoot = (): string => { + let cwd = process.cwd(); + + if (config.USE_LOCAL_REPO) { + cwd = path.join(cwd, '..', '..', 'template'); + } + + return cwd; +}; + +const copyFiles = (root: string, files: DownloadedPlugin['files']): void => { + for (const file of files) { + const fullPath = path.join(root, file.relativePath); + const dir = path.dirname(fullPath); + + if (!fs.existsSync(dir)) { + fs.mkdirSync(dir, { recursive: true }); + } + + if (fs.existsSync(fullPath)) { + console.log(yellow(` ⚠ File already exists, skipping: ${file.relativePath}`)); + continue; + } + + fs.writeFileSync(fullPath, file.content, 'utf8'); + console.log(green(` βœ“ Created ${file.relativePath}`)); + } +}; + +const mergeDependencies = (root: string, manifest: PluginManifest): void => { + const deps = manifest.dependencies; + + if (!deps) return; + + for (const [workspace, packages] of Object.entries(deps)) { + const pkgPath = path.join(root, workspace, 'package.json'); + + if (!fs.existsSync(pkgPath)) { + console.log(red(` βœ— Package.json not found: ${workspace}/package.json`)); + continue; + } + + const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf8')); + + if (!pkg.dependencies) { + pkg.dependencies = {}; + } + + for (const [name, version] of Object.entries(packages)) { + if (pkg.dependencies[name]) { + console.log(yellow(` ⚠ Dependency already exists: ${name} in ${workspace}`)); + continue; + } + + pkg.dependencies[name] = version; + console.log(green(` βœ“ Added ${name}@${version} to ${workspace}/package.json`)); + } + + pkg.dependencies = Object.fromEntries( + Object.entries(pkg.dependencies).sort(([a], [b]) => a.localeCompare(b)), + ); + + fs.writeFileSync(pkgPath, JSON.stringify(pkg, null, 2) + '\n', 'utf8'); + } +}; + +const runCommand = (cwd: string, command: string): Promise => + new Promise((resolve, reject) => { + const [cmd, ...args] = command.split(' '); + + const child = spawn(cmd, args, { stdio: 'inherit', cwd }); + + child.on('close', (code) => { + if (code !== 0) { + reject(new Error(`Command failed: ${command}`)); + return; + } + + resolve(); + }); + }); + +export const installPlugin = async (pluginName: string): Promise => { + const root = resolveProjectRoot(); + + console.log(); + console.log(bold(`Installing plugin: ${cyan(pluginName)}`)); + console.log(); + + // 1. Download plugin from GitHub + console.log(bold('Downloading plugin...')); + + let plugin: DownloadedPlugin; + + try { + plugin = await downloadPlugin(pluginName); + } catch (error) { + const message = error instanceof Error ? error.message : String(error); + console.log(red(`\n βœ— Failed to download plugin "${pluginName}": ${message}`)); + console.log(red(' Make sure the plugin name is correct and you have internet access.\n')); + process.exit(1); + } + + if (plugin.files.length === 0) { + console.log(red(`\n βœ— Plugin "${pluginName}" contains no files.\n`)); + process.exit(1); + } + + console.log(green(` βœ“ Downloaded ${plugin.files.length} files\n`)); + + // 2. Copy files to project + console.log(bold('Creating files...')); + copyFiles(root, plugin.files); + + // 3. Merge dependencies + if (plugin.manifest?.dependencies && Object.keys(plugin.manifest.dependencies).length > 0) { + console.log(bold('\nAdding dependencies...')); + mergeDependencies(root, plugin.manifest); + } + + // 4. Post-install: install deps + regenerate shared schemas + console.log(bold('\nRunning post-install...')); + + console.log(cyan(' $ pnpm install')); + await runCommand(root, 'pnpm install'); + + console.log(cyan(' $ pnpm run --filter shared generate')); + await runCommand(root, 'pnpm run --filter shared generate'); + + console.log(bold(green(`\nβœ“ Plugin "${pluginName}" installed successfully!\n`))); +}; diff --git a/packages/create-ship-app/src/plugins/types.ts b/packages/create-ship-app/src/plugins/types.ts new file mode 100644 index 000000000..a3dc30563 --- /dev/null +++ b/packages/create-ship-app/src/plugins/types.ts @@ -0,0 +1 @@ +export type { PluginFile, PluginManifest, DownloadedPlugin } from './download'; diff --git a/packages/node-mongo/src/service.ts b/packages/node-mongo/src/service.ts index f4bb06ad6..ded426ace 100755 --- a/packages/node-mongo/src/service.ts +++ b/packages/node-mongo/src/service.ts @@ -104,7 +104,7 @@ class Service { return result; } catch (err: any) { - logger.error(`Schema is not valid for ${this._collectionName} collection: ${err.stack || err}`, entity); + logger.error(`Schema is not valid for ${this._collectionName} collection: ${err.stack || err}`); throw err; } } @@ -463,7 +463,7 @@ class Service { if (!doc) { if (isDev) { - logger.warn(`Document not found when updating ${this._collectionName} collection. Request query β€” ${JSON.stringify(filter)}`); + logger.warn(`Document not found when updating ${this._collectionName} collection.`); } return null; } @@ -502,7 +502,7 @@ class Service { if (!isUpdated) { if (isDev) { - logger.warn(`Document hasn't changed when updating ${this._collectionName} collection. Request query β€” ${JSON.stringify(filter)}`); + logger.warn(`Document hasn't changed when updating ${this._collectionName} collection.`); } return newDoc; @@ -587,7 +587,7 @@ class Service { if (documents.length === 0) { if (isDev) { - logger.warn(`Documents not found when updating ${this._collectionName} collection. Request query β€” ${JSON.stringify(filter)}`); + logger.warn(`Documents not found when updating ${this._collectionName} collection.`); } return []; } @@ -637,7 +637,7 @@ class Service { if (!isUpdated) { if (isDev) { - logger.warn(`Documents hasn't changed when updating ${this._collectionName} collection. Request query β€” ${JSON.stringify(filter)}`); + logger.warn(`Documents hasn't changed when updating ${this._collectionName} collection.`); } return updated.filter(Boolean).map((u) => u?.doc) as U[]; @@ -715,7 +715,7 @@ class Service { if (!doc) { if (isDev) { - logger.warn(`Document not found when deleting ${this._collectionName} collection. Request query β€” ${JSON.stringify(filter)}`); + logger.warn(`Document not found when deleting ${this._collectionName} collection.`); } return null; @@ -762,7 +762,7 @@ class Service { if (documents.length === 0) { if (isDev) { - logger.warn(`Documents not found when deleting ${this._collectionName} collection. Request query β€” ${JSON.stringify(filter)}`); + logger.warn(`Documents not found when deleting ${this._collectionName} collection.`); } return []; @@ -809,7 +809,7 @@ class Service { if (documents.length === 0) { if (isDev) { - logger.warn(`Documents not found when deleting ${this._collectionName} collection. Request query β€” ${JSON.stringify(filter)}`); + logger.warn(`Documents not found when deleting ${this._collectionName} collection.`); } return []; diff --git a/template/AGENTS.md b/template/AGENTS.md new file mode 100644 index 000000000..e9856af33 --- /dev/null +++ b/template/AGENTS.md @@ -0,0 +1,100 @@ +# AGENTS.md β€” Ship Monorepo + +> pnpm monorepo (Turborepo): `apps/api` (Koa + MongoDB), `apps/web` (Next.js Pages Router), `packages/shared` (auto-generated typed API client), plus `app-constants`, `mailer`, config packages. + +--- + +## Before You Code + +1. **Read this file** for universal rules and commands. +2. **Read the scoped file** nearest to your task: + - API work β†’ `apps/api/AGENTS.md` + - Web work β†’ `apps/web/AGENTS.md` + - Codegen / shared types β†’ `packages/shared/AGENTS.md` +3. **Read the relevant workflow doc** from the index below. +4. **Scan existing code** β€” search for a similar resource/page/endpoint before creating new patterns. +5. **Plan, implement, verify** β€” every task ends with a verification command. + +--- + +## Progressive Disclosure Index + +| Doc | When to read | +|-----|-------------| +| `agent_docs/workflows_dev_build_test.md` | Any task: install, dev, build, typecheck, lint, test | +| `agent_docs/api_resource_and_endpoint_workflow.md` | Adding/modifying API resources or endpoints | +| `agent_docs/web_pages_and_data_access.md` | Adding/modifying web pages or API data consumption | +| `agent_docs/shared_codegen_contract.md` | After any API endpoint/schema change; understanding the type bridge | +| `agent_docs/common_failure_modes.md` | When debugging errors or before submitting changes | +| `apps/api/AGENTS.md` | API-specific invariants (middleware, services, config) | +| `apps/web/AGENTS.md` | Web-specific invariants (routing, components, styling) | +| `packages/shared/AGENTS.md` | What's generated, what's hand-written, what not to touch | + +--- + +## Universal Commands + +```bash +# Install (always after pulling or changing deps) +pnpm install + +# Start infra (MongoDB + Redis via Docker) +pnpm infra + +# Start everything (infra β†’ migrator β†’ scheduler β†’ api + web) +pnpm start + +# Dev mode (with Turborepo β€” runs migrate, schedule, then dev for all apps) +pnpm turbo-start + +# Build all +pnpm turbo build + +# Typecheck (per-package) +pnpm --filter api tsc --noEmit +pnpm --filter web tsc --noEmit + +# Lint (per-package) +pnpm --filter api eslint . +pnpm --filter web eslint . + +# Regenerate shared typed client (REQUIRED after any API endpoint/schema change) +pnpm --filter shared generate +``` + +--- + +## Never Do + +- **Use npm or yarn.** `engines` block rejects them. pnpm β‰₯9.5.0 only. +- **Use Node < 22.13.0.** See `.nvmrc`. +- **Hand-edit `packages/shared/src/generated/`** or `packages/shared/src/schemas/`. These are overwritten by codegen. +- **Forget to run codegen** after changing any `*.schema.ts` or `endpoints/*.ts` in the API. +- **Register routes manually.** Endpoint auto-discovery handles it β€” just put files in `resources//endpoints/`. +- **Create a web page without `.page.tsx` extension.** Next.js config only recognizes `*.page.tsx` and `*.api.ts`. +- **Skip the `` wrapper** in web pages. Every page needs ``. +- **Import from `src/...`** in API code. `tsconfig.baseUrl` is `src`, so use `'resources/...'`, `'routes/...'`, `'config'`, etc. +- **Use Zod 3 API.** This repo uses Zod 4 (e.g., `z.email()` not `z.string().email()`). +- **Add env vars without updating the Zod config schema** in `apps/api/src/config/` or `apps/web/src/config/`. + +--- + +## Definition of Done + +Every change must pass before submission: + +- [ ] `pnpm --filter tsc --noEmit` β€” no type errors +- [ ] `pnpm --filter eslint .` β€” no lint errors +- [ ] If API endpoints/schemas changed β†’ `pnpm --filter shared generate` ran and output committed +- [ ] If new env vars β†’ added to `.env.example` AND the Zod config schema +- [ ] Spot-check: the feature works (dev server loads, endpoint responds, page renders) + +--- + +## Self-Maintenance + +Update **this file** when: monorepo structure changes, new packages added, universal commands change, or new "never do" items discovered. + +Update **scoped files** (`apps/*/AGENTS.md`, `packages/shared/AGENTS.md`) when the invariants they document change. + +Update **`agent_docs/*`** when workflows, checklists, or failure modes change. Each doc lists its own update triggers. diff --git a/template/agent_docs/api_resource_and_endpoint_workflow.md b/template/agent_docs/api_resource_and_endpoint_workflow.md new file mode 100644 index 000000000..138c9d09a --- /dev/null +++ b/template/agent_docs/api_resource_and_endpoint_workflow.md @@ -0,0 +1,142 @@ +# API: Resource & Endpoint Workflow + +> Read this when adding or modifying API resources, endpoints, or middlewares. + +--- + +## Resource Structure (Non-Negotiable) + +Every resource lives in `apps/api/src/resources//` with this layout: + +``` +/ +β”œβ”€β”€ .schema.ts # Zod schema extending dbSchema +β”œβ”€β”€ .service.ts # db.createService(COLLECTION_NAME, { schemaValidator }) +β”œβ”€β”€ index.ts # Barrel: export service, import handler (side-effect) +β”œβ”€β”€ .handler.ts # Optional: eventBus side effects +└── endpoints/ # One file per HTTP endpoint (auto-discovered) + └── *.ts # Each default-exports createEndpoint({...}) +``` + +Search existing resources for reference: `grep -r "createEndpoint" apps/api/src/resources/users/endpoints/`. + +--- + +## Add New Resource Checklist + +- [ ] **Register collection name** in `packages/app-constants/src/api.constants.ts` β†’ `DATABASE_DOCUMENTS` +- [ ] **Create schema** extending `dbSchema` from `resources/base.schema.ts` (provides `_id`, `createdOn`, `updatedOn`, `deletedOn`) +- [ ] **Create service** via `db.createService(DATABASE_DOCUMENTS.NAME, { schemaValidator: (obj) => schema.parseAsync(obj) })` +- [ ] **Create barrel** `index.ts` β€” export service; if handler exists, `import './name.handler'` at top (side-effect) +- [ ] **Create endpoint files** in `endpoints/` β€” each must **default-export** `createEndpoint({...})` +- [ ] **Run codegen**: `pnpm --filter shared generate` +- [ ] **Verify**: `pnpm --filter api tsc --noEmit` +- [ ] **Check startup logs**: `[routes] POST /projects`, etc. + +--- + +## Critical Invariants + +### Auto-discovery +- Routes register automatically. No manual registration anywhere. +- Resource name = folder name = URL prefix (`resources/projects/` β†’ `/projects/*`). +- The `token` resource is in `IGNORE_RESOURCES` and excluded from routes + codegen. + +### Auth default +- Every endpoint requires auth **unless** `isPublic` is in the `middlewares` array. +- `isPublic` is a sentinel reference β€” the route system checks `middleware === isPublic` by identity. +- Import: `import isPublic from 'middlewares/isPublic'`. + +### Validation +- If `schema` is provided, `validate` middleware auto-applies. +- Validate merges `body + files + query + params` into one object, then runs Zod. +- Result lives on `ctx.validatedData` (typed by schema). + +### Handler return +- Return a value from `handler` β†’ it becomes `ctx.body` automatically. +- For 204 no-content: set `ctx.status = 204`, return nothing. + +### Imports +- API `tsconfig.baseUrl` is `src`. Use `'resources/...'`, `'routes/...'`, `'config'`, `'db'` β€” never `'src/...'` or deep relative paths. + +### Soft deletes +- `service.deleteSoft(filter)` sets `deletedOn` timestamp instead of removing. +- All `find`/`findOne` queries auto-exclude `deletedOn !== null`. + +--- + +## `shouldExist` Middleware + +Pre-fetches a document and returns 404 if missing. The collection name must match a registered `db.createService` name. + +```typescript +import shouldExist from 'routes/middlewares/shouldExist'; + +// With custom criteria (e.g., scope to current user): +middlewares: [ + shouldExist('projects', { + criteria: (ctx) => ({ _id: ctx.params.projectId, userId: ctx.state.user._id }), + }), +], +``` + +--- + +## User-Scoped CRUD Pattern + +When an endpoint modifies a resource owned by the current user, scope queries by `userId` and guard with `throwError`: + +```typescript +import { myService } from 'resources/my-resource'; +import createEndpoint from 'routes/createEndpoint'; + +export default createEndpoint({ + method: 'put', + path: '/:id', + schema, + + async handler(ctx) { + const userId = ctx.state.user._id; + const { id } = ctx.request.params; + + const doc = await myService.findOne({ _id: id, userId }); + + if (!doc) { + ctx.throwError('Not found', 404); + return; + } + + const updated = await myService.updateOne({ _id: id, userId }, () => ctx.validatedData); + return updated; + }, +}); +``` + +Key points: +- Always filter by `userId` in both the guard query and the mutation to prevent access to other users' data. +- Use `ctx.throwError(message, status?)` β€” not `ctx.assertError()` β€” to avoid TS2775 (assertion functions require explicit type annotations on `ctx`). +- For deletes, use `service.deleteSoft(filter)` and set `ctx.status = 204`. + +--- + +## Service API Quick Reference + +`db.createService` returns a `@paralect/node-mongo` Service. Key methods: +- `find(filter, { page, perPage }, { sort })` β†’ `{ results, pagesCount, count }` +- `findOne(filter)`, `insertOne(doc)`, `updateOne(filter, updateFn)`, `deleteSoft(filter)` +- `exists(filter)`, `distinct(field, filter)`, `countDocuments(filter)` +- `atomic.updateOne(filter, update)` β€” raw MongoDB update (bypass schema validator) +- `createIndex(keys, options?)` β€” call at module level in the service file + +Event bus: `eventBus.on('collectionName.created' | '.updated' | '.deleted', handler)`. + +--- + +## Update Triggers + +Update this doc when: +- `createEndpoint` signature or behavior changes (see `apps/api/src/routes/createEndpoint.ts`) +- Route auto-discovery logic changes (see `apps/api/src/routes/routes.ts`) +- New middleware is added to `apps/api/src/middlewares/` or `apps/api/src/routes/middlewares/` +- `@paralect/node-mongo` is upgraded with API changes +- `IGNORE_RESOURCES` list changes in `packages/shared/scripts/generate.ts` diff --git a/template/agent_docs/common_failure_modes.md b/template/agent_docs/common_failure_modes.md new file mode 100644 index 000000000..b371eda26 --- /dev/null +++ b/template/agent_docs/common_failure_modes.md @@ -0,0 +1,84 @@ +# Common Failure Modes + +> Consult this when debugging errors or before submitting changes. + +--- + +## 1. "Module not found" for a new endpoint/type in web + +**Cause**: Codegen not run after API changes. +**Fix**: `pnpm --filter shared generate && pnpm --filter web tsc --noEmit` + +## 2. Page exists but returns 404 in browser + +**Cause**: File is not named `*.page.tsx`. Next.js config only routes files matching `pageExtensions: ['page.tsx', 'api.ts']`. +**Fix**: Rename to `index.page.tsx` or `[param].page.tsx`. + +## 3. Endpoint returns 401 unexpectedly + +**Cause**: Missing `isPublic` in the endpoint's `middlewares` array. All endpoints require auth by default. +**Fix**: Add `import isPublic from 'middlewares/isPublic'` and include it in `middlewares: [isPublic]`. + +## 4. Zod validation errors: "unrecognized key" or wrong method + +**Cause**: Using Zod 3 API in a Zod 4 repo. Example: `z.string().email()` doesn't exist in Zod 4. +**Fix**: Use `z.email()`, `z.url()`, `z.uuid()` etc. Check `node_modules/zod` version. Search existing schemas for patterns. + +## 5. Import errors in API code: "Cannot find module 'src/...'" + +**Cause**: API `tsconfig.baseUrl` is `src`. Imports should be `'resources/...'`, `'routes/...'`, `'config'`, `'db'` β€” no `src/` prefix. +**Fix**: Remove the `src/` prefix from the import path. + +## 6. New resource's endpoints don't appear in startup logs + +**Cause**: Either (a) no `endpoints/` subfolder, (b) endpoint files don't default-export `createEndpoint()`, or (c) the resource folder name is in `IGNORE_RESOURCES`. +**Fix**: Check `apps/api/src/resources//endpoints/` exists and files use `export default createEndpoint({...})`. Check `generate.ts` for `IGNORE_RESOURCES`. + +## 7. `shouldExist` middleware returns "service not found" + +**Cause**: The collection name passed to `shouldExist('name')` doesn't match any `db.createService` registration. Services register into `db.services` by their `DATABASE_DOCUMENTS` name. +**Fix**: Ensure the service file calls `db.createService(DATABASE_DOCUMENTS.NAME, ...)` and the barrel `index.ts` imports it (triggering registration). + +## 8. `useApiMutation` pathParams don't change per call + +**Cause**: `pathParams` in `useApiMutation` are bound at hook initialization, not per `mutate()` call. +**Fix**: For dynamic IDs, use `apiClient.resource.endpoint.call(params, { pathParams })` directly instead of the hook. See `agent_docs/web_pages_and_data_access.md`. + +## 9. "Command not found: npm" / wrong package manager + +**Cause**: Using npm or yarn. This repo requires pnpm. +**Fix**: `pnpm install`. The `engines` field in root `package.json` enforces `pnpm β‰₯9.5.0` and rejects yarn. + +## 10. Env var undefined at runtime + +**Cause**: Either (a) not added to `.env`, (b) not added to the Zod config schema, or (c) web vars missing `NEXT_PUBLIC_` prefix. +**Fix**: Add to `.env` AND the validation schema in `apps/api/src/config/index.ts` or `apps/web/src/config/index.ts`. Web vars must start with `NEXT_PUBLIC_`. + +## 11. Type errors after editing `packages/shared/src/schemas/*` or `src/generated/*` + +**Cause**: These files are auto-generated and overwritten by codegen. +**Fix**: Don't edit them. Edit the source in `apps/api/src/resources/`, then run `pnpm --filter shared generate`. + +## 12. `eslint` reports import order violations + +**Cause**: ESLint enforces strict import ordering via `simple-import-sort` with custom groups. +**Fix**: Run `pnpm --filter eslint . --fix`. Don't hand-sort imports. + +## 13. MongoDB connection fails locally + +**Cause**: Docker infrastructure not running. MongoDB requires replica set initialization. +**Fix**: `pnpm infra` β€” starts MongoDB + Redis + replica set initializer. + +## 14. Handler/event bus side effects not firing + +**Cause**: The handler file isn't imported. Handler files must be imported as side effects in the resource's `index.ts`. +**Fix**: Add `import './.handler'` at the top of the resource's `index.ts`. + +--- + +## Update Triggers + +Update this doc when: +- New recurring failure patterns are discovered +- Existing failure modes are fixed by architectural changes +- Error messages change (update the symptoms) diff --git a/template/agent_docs/shared_codegen_contract.md b/template/agent_docs/shared_codegen_contract.md new file mode 100644 index 000000000..5f9b40c46 --- /dev/null +++ b/template/agent_docs/shared_codegen_contract.md @@ -0,0 +1,108 @@ +# Shared Package: Codegen Contract + +> Read this before modifying API endpoints/schemas, or when types seem stale/missing. + +--- + +## What Codegen Does + +The script `packages/shared/scripts/generate.ts` bridges API β†’ Web with zero manual types: + +1. **Copies schemas**: All `*.schema.ts` (and `*.extend.ts`) from `apps/api/src/resources/` β†’ `packages/shared/src/schemas/` +2. **Scans endpoints**: Reads each `resources/*/endpoints/*.ts` β€” extracts method, path, schema, path params +3. **Infers return types**: Uses the TypeScript compiler API to statically infer handler return types +4. **Generates**: `packages/shared/src/generated/index.ts` β€” typed endpoint descriptors, param types, response types, `createApiEndpoints()` factory + +--- + +## Commands + +```bash +pnpm --filter shared generate # one-shot (CI, after changes) +pnpm --filter shared generate:watch # dev mode (watches API resources) +``` + +--- + +## When to Run + +Run `pnpm --filter shared generate` after **any** of: +- Adding, removing, or modifying files in `apps/api/src/resources/*/endpoints/` +- Adding or modifying `*.schema.ts` files in API resources +- Changing an endpoint's method, path, schema, or handler return type + +**Not running this** = stale types β†’ web won't compile or will have wrong types. + +--- + +## What's Generated (Never Hand-Edit) + +| Path | Contents | +|------|----------| +| `packages/shared/src/generated/index.ts` | Schemas, `*Params`, `*PathParams`, `*Response` types, `createApiEndpoints()` | +| `packages/shared/src/schemas/*.ts` | Copies of API schema files (overwritten each run) | + +These files are **overwritten entirely** on every generation. Any manual edit will be lost. + +## What's Hand-Written (Safe to Edit) + +| Path | Contents | +|------|----------| +| `packages/shared/src/client.ts` | `ApiClient` Axios wrapper, `ApiError` class | +| `packages/shared/src/types.ts` | Shared utility types (`ListResult`, `SortParams`, etc.) | +| `packages/shared/src/constants.ts` | Shared constants | +| `packages/shared/scripts/generate.ts` | The generator itself | + +--- + +## How to Detect Stale Code + +Symptoms: +- Web typecheck fails with "property X does not exist on apiClient.resource" +- Import from `'shared'` can't find a `*Params` or `*Response` type +- Endpoint exists in API but `apiClient` doesn't have it + +Fix: `pnpm --filter shared generate`, then `pnpm --filter web tsc --noEmit`. + +--- + +## Ignored Resources + +The `IGNORE_RESOURCES` array in `generate.ts` currently contains `["token"]`. Resources in this list are excluded from route registration and codegen. Check the array if a resource seems invisible to codegen. + +--- + +## Consuming Generated Types (Web) + +```typescript +// Endpoint functions +import { apiClient } from 'services/api-client.service'; +apiClient.projects.list // typed: params, pathParams, response + +// Types +import type { ProjectsCreateParams, ProjectsListResponse } from 'shared'; + +// Schemas (for client-side validation) +import { schemas } from 'shared'; +schemas.account.signUp // Zod schema +``` + +--- + +## Verification + +```bash +pnpm --filter shared generate # regenerate +pnpm --filter shared tsc --noEmit # shared compiles +pnpm --filter web tsc --noEmit # web compiles with new types +``` + +--- + +## Update Triggers + +Update this doc when: +- `generate.ts` scanning logic changes (new file patterns, new output structure) +- `IGNORE_RESOURCES` list changes +- Output file locations change +- New exports are added to the generated file diff --git a/template/agent_docs/web_pages_and_data_access.md b/template/agent_docs/web_pages_and_data_access.md new file mode 100644 index 000000000..a742ca49d --- /dev/null +++ b/template/agent_docs/web_pages_and_data_access.md @@ -0,0 +1,147 @@ +# Web: Pages & Data Access + +> Read this when adding or modifying web pages, consuming API data, or working with forms. + +--- + +## Page File Convention + +**Only `*.page.tsx` files are treated as routes** (configured in `next.config.mjs` β†’ `pageExtensions`). + +- `pages/projects/index.page.tsx` β†’ route `/projects` +- `pages/projects/[id].page.tsx` β†’ route `/projects/:id` +- `pages/projects/components/List.tsx` β†’ **NOT a route** (no `.page.tsx` extension) + +This is the most common agent mistake. A file named `index.tsx` inside `pages/` will **not** be routed. + +--- + +## Page Wrapper (Required) + +Every page must wrap its content in the `Page` component: + +```tsx +import { LayoutType, Page, ScopeType } from 'components'; + +const MyPage = () => ( + + {/* content */} + +); +export default MyPage; +``` + +| Scope | Effect | +|-------|--------| +| `PRIVATE` | Requires auth β€” redirects to `/sign-in` if not logged in | +| `PUBLIC` | Non-auth only β€” redirects to `/` if already logged in | + +| Layout | Effect | +|--------|--------| +| `MAIN` | App shell with sidebar navigation | +| `UNAUTHORIZED` | Centered layout for auth pages | + +Import from `'components'` (barrel at `src/components/index.ts`). + +--- + +## Data Fetching + +The typed API client is auto-generated from API endpoints. Import from `services/api-client.service`: + +```tsx +import { apiClient } from 'services/api-client.service'; +``` + +### Queries (GET) + +```tsx +import { useApiQuery } from 'hooks'; + +const { data, isLoading } = useApiQuery(apiClient.projects.list); +const { data } = useApiQuery(apiClient.projects.list, { page: 1, perPage: 10 }); +``` + +### Mutations (POST/PUT/DELETE) + +```tsx +import { useApiMutation } from 'hooks'; + +const { mutate, isPending } = useApiMutation(apiClient.projects.create); +mutate({ name: 'New' }, { onError: (e) => handleApiError(e, setError) }); +``` + +### Dynamic Path Params Gotcha + +`useApiMutation` binds `pathParams` at **hook level** β€” they're fixed for all `mutate()` calls. For dynamic IDs (e.g., deleting different items in a list), use `endpoint.call()` directly: + +```tsx +// βœ… Dynamic pathParams β€” use .call() +const handleDelete = async (id: string) => { + await apiClient.projects.remove.call({}, { pathParams: { id } }); + queryClient.invalidateQueries({ queryKey: [apiClient.projects.list.path] }); +}; + +// βœ… Fixed pathParams β€” hook level is fine +const { mutate: update } = useApiMutation(apiClient.projects.update, { + pathParams: { id: projectId }, +}); +``` + +### Forms + +```tsx +import { useApiForm, useApiMutation } from 'hooks'; + +const form = useApiForm(apiClient.projects.create); // auto-resolves Zod schema +const { mutate } = useApiMutation(apiClient.projects.create); +const onSubmit = form.handleSubmit((data) => + mutate(data, { onError: (e) => handleApiError(e, form.setError) }) +); +``` + +### Streaming (SSE) + +```tsx +import { useApiStreamMutation } from 'hooks'; +const { mutate, isLoading } = useApiStreamMutation(apiClient.chats.sendMessage); +mutate({ content: 'Hi' }, { pathParams: { chatId }, onToken: (t) => {}, onDone: (d) => {} }); +``` + +--- + +## Query Invalidation + +```tsx +import queryClient from 'query-client'; + +queryClient.invalidateQueries({ queryKey: [apiClient.projects.list.path] }); +queryClient.setQueryData([apiClient.account.get.path], updatedData); +``` + +Query keys = `[endpoint.path, ...params]`. The first element is always the endpoint path string. + +--- + +## Error Handling + +`handleApiError(e, setError)` from `utils`: +- Maps server validation errors β†’ react-hook-form field errors +- Shows global errors via Sonner toast + +--- + +## Verification + +After web changes: +```bash +pnpm --filter web tsc --noEmit # type errors +pnpm --filter web eslint . # lint +pnpm --filter web build # full build passes +``` + +--- + +## Update Triggers + +Update this doc when: `pageExtensions`, `PageConfig`, `useApi*` hook signatures, or `handleApiError` behavior changes. diff --git a/template/agent_docs/workflows_dev_build_test.md b/template/agent_docs/workflows_dev_build_test.md new file mode 100644 index 000000000..b6d43b67a --- /dev/null +++ b/template/agent_docs/workflows_dev_build_test.md @@ -0,0 +1,139 @@ +# Workflows: Dev / Build / Test + +> Read this for any task that involves running, building, or validating code. + +--- + +## Prerequisites + +- **Node β‰₯22.13.0** (see `.nvmrc`). Use `nvm use` if needed. +- **pnpm β‰₯9.5.0** (`corepack enable && corepack prepare pnpm@9.5.0 --activate`). +- **Docker** for local MongoDB + Redis. + +--- + +## Install + +```bash +pnpm install +``` + +Run after pulling, after changing any `package.json`, or after modifying `pnpm-workspace.yaml` catalog. + +--- + +## Infrastructure (Local) + +```bash +pnpm infra # starts MongoDB (27017) + Redis (6379) via Docker +``` + +MongoDB runs as a replica set (`rs`) β€” required for change streams and transactions. + +--- + +## Dev Mode + +```bash +# Everything at once (infra β†’ migrate β†’ schedule β†’ api + web dev): +pnpm start + +# Or with Turborepo (assumes infra already running): +pnpm turbo-start +``` + +Individual apps: + +```bash +pnpm --filter api dev # API on :3001 (tsx watch) +pnpm --filter web dev # Web on :3002 (next dev) +``` + +Turbo pipeline order: `api#migrate-dev` β†’ `api#schedule-dev` β†’ `dev` (all apps). + +--- + +## Build + +```bash +pnpm turbo build # builds all packages + apps +pnpm --filter api build # API only (tsc) +pnpm --filter web build # Web only (next build) +``` + +--- + +## Typecheck + +```bash +pnpm --filter api tsc --noEmit +pnpm --filter web tsc --noEmit +pnpm --filter shared tsc --noEmit +``` + +No project-wide `tsc` β€” run per-package. These are the verification commands to run after changes. + +--- + +## Lint + +```bash +pnpm --filter api eslint . +pnpm --filter web eslint . +``` + +Uses `@antfu/eslint-config` (flat config, ESLint 9). Key enforced rules: +- `no-explicit-any` is an **error** (not warning) +- Import ordering is enforced (don't hand-sort β€” let eslint fix) +- No relative imports beyond 1 level deep in API (`no-relative-import-paths` plugin) + +Run `eslint . --fix` to auto-fix. Don't fight the linter β€” if it's enforced, comply. + +--- + +## Codegen + +```bash +pnpm --filter shared generate # one-shot +pnpm --filter shared generate:watch # watches API resources for changes +``` + +Must run after any change to `apps/api/src/resources/*/endpoints/*.ts` or `*.schema.ts`. +See `agent_docs/shared_codegen_contract.md` for details. + +--- + +## When to Run What + +| I changed... | Run | +|---|---| +| Any `package.json` or catalog | `pnpm install` | +| API endpoint or schema file | `pnpm --filter shared generate`, then typecheck | +| API code (any) | `pnpm --filter api tsc --noEmit` | +| Web code (any) | `pnpm --filter web tsc --noEmit` | +| Shared package code | `pnpm --filter shared tsc --noEmit`, then typecheck consumers | +| `app-constants` | Typecheck any package that imports it | +| Before committing | `pnpm --filter api tsc --noEmit && pnpm --filter web tsc --noEmit` | + +--- + +## Turborepo Filter Patterns + +```bash +pnpm --filter api