diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml
index 366b461a4..eeb7effeb 100644
--- a/.github/workflows/ci.yaml
+++ b/.github/workflows/ci.yaml
@@ -2,21 +2,17 @@ name: CI
on:
pull_request:
- branches: ["*"]
+ branches: ['*']
push:
- branches: ["main"]
+ branches: ['main']
merge_group:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}
-# You can leverage Vercel Remote Caching with Turbo to speed up your builds
-# @link https://turborepo.org/docs/core-concepts/remote-caching#remote-caching-on-vercel-builds
env:
FORCE_COLOR: 3
- TURBO_TEAM: ${{ vars.TURBO_TEAM }}
- TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }}
CI: true
jobs:
@@ -66,12 +62,9 @@ jobs:
echo "JWT_SECRET=${{ vars.TEST_JWT_SECRET }}" >> ./apps/api/.env.test
echo "OPENSEARCH_USE=true" >> ./apps/api/.env.test
echo "OPENSEARCH_NODE=http://localhost:9200" >> ./apps/api/.env.test
- echo "OPENSEARCH_USERNAME=''" >> ./apps/api/.env.test
- echo "OPENSEARCH_PASSWORD=''" >> ./apps/api/.env.test
echo "SMTP_HOST='localhost'" >> ./apps/api/.env.test
echo "SMTP_PORT=25" >> ./apps/api/.env.test
echo "SMTP_SENDER='user@feedback.com'" >> ./apps/api/.env.test
- echo "SMTP_BASE_URL='http://localhost:3000'" >> ./apps/api/.env.test
- name: Run Tests
run: pnpm test
@@ -84,7 +77,6 @@ jobs:
echo "SMTP_HOST='localhost'" >> ./apps/api/.env.test
echo "SMTP_PORT=25" >> ./apps/api/.env.test
echo "SMTP_SENDER='user@feedback.com'" >> ./apps/api/.env.test
- echo "SMTP_BASE_URL='http://localhost:3000'" >> ./apps/api/.env.test
- name: Run Tests
run: pnpm test
diff --git a/.github/workflows/docker-dev-image.yml b/.github/workflows/docker-dev-image.yml
index 905e53d48..098c6ac0a 100644
--- a/.github/workflows/docker-dev-image.yml
+++ b/.github/workflows/docker-dev-image.yml
@@ -6,13 +6,18 @@ on:
- '**-dev'
jobs:
- api-build:
+ build:
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v5
- - name: Docker meta
+ - name: Set up Docker Buildx
+ uses: docker/setup-buildx-action@v3
+ with:
+ driver: docker-container
+
+ - name: Docker meta for API
id: api-meta
uses: docker/metadata-action@v5
with:
@@ -23,29 +28,7 @@ jobs:
type=semver,pattern={{version}}
type=semver,pattern={{major}}.{{minor}}
- - name: Login to DockerHub
- if: github.event_name != 'pull_request'
- uses: docker/login-action@v3
- with:
- username: ${{ secrets.DOCKERHUB_USERNAME }}
- password: ${{ secrets.DOCKERHUB_TOKEN }}
-
- - name: Build and push API
- uses: docker/build-push-action@v6
- with:
- context: .
- file: ./docker/api.dockerfile
- push: ${{ github.event_name != 'pull_request' }}
- tags: ${{ steps.api-meta.outputs.tags }}
- labels: ${{ steps.api-meta.outputs.labels }}
-
- web-build:
- runs-on: ubuntu-latest
- steps:
- - name: Checkout repo
- uses: actions/checkout@v5
-
- - name: Docker meta
+ - name: Docker meta for Web
id: web-meta
uses: docker/metadata-action@v5
with:
@@ -63,11 +46,12 @@ jobs:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- - name: Build and push Web
- uses: docker/build-push-action@v6
+ - name: Bake and push multi-platform Docker images
+ uses: docker/bake-action@v4
with:
- context: .
- file: ./docker/web.dockerfile
- push: ${{ github.event_name != 'pull_request' }}
- tags: ${{ steps.web-meta.outputs.tags }}
- labels: ${{ steps.web-meta.outputs.labels }}
+ files: |
+ ./docker/docker-bake.hcl
+ push: true
+ set: |
+ api.tags=${{ steps.api-meta.outputs.tags }}
+ web.tags=${{ steps.web-meta.outputs.tags }}
diff --git a/.github/workflows/docker-prod-image.yml b/.github/workflows/docker-prod-image.yml
index 60f0a8237..5aeb9f25d 100644
--- a/.github/workflows/docker-prod-image.yml
+++ b/.github/workflows/docker-prod-image.yml
@@ -8,13 +8,18 @@ on:
- '!**-dev'
jobs:
- api-build:
+ build:
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v5
- - name: Docker meta
+ - name: Set up Docker Buildx
+ uses: docker/setup-buildx-action@v3
+ with:
+ driver: docker-container
+
+ - name: Docker meta for API
id: api-meta
uses: docker/metadata-action@v5
with:
@@ -25,29 +30,7 @@ jobs:
type=semver,pattern={{version}}
type=semver,pattern={{major}}.{{minor}}
- - name: Login to DockerHub
- if: github.event_name != 'pull_request'
- uses: docker/login-action@v3
- with:
- username: ${{ secrets.DOCKERHUB_USERNAME }}
- password: ${{ secrets.DOCKERHUB_TOKEN }}
-
- - name: Build and push API
- uses: docker/build-push-action@v6
- with:
- context: .
- file: ./docker/api.dockerfile
- push: ${{ github.event_name != 'pull_request' }}
- tags: ${{ steps.api-meta.outputs.tags }}
- labels: ${{ steps.api-meta.outputs.labels }}
-
- web-build:
- runs-on: ubuntu-latest
- steps:
- - name: Checkout repo
- uses: actions/checkout@v5
-
- - name: Docker meta
+ - name: Docker meta for Web
id: web-meta
uses: docker/metadata-action@v5
with:
@@ -65,11 +48,12 @@ jobs:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- - name: Build and push Web
- uses: docker/build-push-action@v6
+ - name: Bake and push multi-platform Docker images
+ uses: docker/bake-action@v4
with:
- context: .
- file: ./docker/web.dockerfile
- push: ${{ github.event_name != 'pull_request' }}
- tags: ${{ steps.web-meta.outputs.tags }}
- labels: ${{ steps.web-meta.outputs.labels }}
+ files: |
+ ./docker/docker-bake.hcl
+ push: true
+ set: |
+ api.tags=${{ steps.api-meta.outputs.tags }}
+ web.tags=${{ steps.web-meta.outputs.tags }}
diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml
index 272249b74..38e3ecf5d 100644
--- a/.github/workflows/e2e-test.yml
+++ b/.github/workflows/e2e-test.yml
@@ -29,8 +29,8 @@ jobs:
image: opensearchproject/opensearch:2.4.1
env:
discovery.type: single-node
- bootstrap.memory_lock: 'true'
- plugins.security.disabled: 'true'
+ bootstrap.memory_lock: "true"
+ plugins.security.disabled: "true"
options: >-
--health-cmd="curl -s http://localhost:9200/_cluster/health | grep -q '\"status\":\"green\"'"
--health-interval=10s
diff --git a/.github/workflows/integration-test.yml b/.github/workflows/integration-test.yml
index 2ffb1c0b9..15836e954 100644
--- a/.github/workflows/integration-test.yml
+++ b/.github/workflows/integration-test.yml
@@ -10,7 +10,7 @@ jobs:
services:
mysql:
- image: mysql:8.0.39
+ image: mysql:8.0
env:
MYSQL_ROOT_PASSWORD: userfeedback
MYSQL_DATABASE: e2e
@@ -49,7 +49,7 @@ jobs:
steps:
- name: Check out repository code
- uses: actions/checkout@v4
+ uses: actions/checkout@v5
- name: Setup integration test (with opensearch)
run: |
@@ -57,16 +57,12 @@ jobs:
corepack enable
pnpm install --frozen-lockfile
pnpm build
- echo "BASE_URL=http://localhost:3000" >> ./apps/api/.env
echo "JWT_SECRET=DEV" >> ./apps/api/.env
echo "OPENSEARCH_USE=true" >> ./apps/api/.env
echo "OPENSEARCH_NODE=http://localhost:9200" >> ./apps/api/.env
- echo "OPENSEARCH_USERNAME=''" >> ./apps/api/.env
- echo "OPENSEARCH_PASSWORD=''" >> ./apps/api/.env
echo "SMTP_HOST='localhost'" >> ./apps/api/.env
echo "SMTP_PORT=25" >> ./apps/api/.env
echo "SMTP_SENDER='user@feedback.com'" >> ./apps/api/.env
- echo "SMTP_BASE_URL='http://localhost:3000'" >> ./apps/api/.env
- name: Run integration tests (with opensearch)
run: |
diff --git a/.github/workflows/publish-api-docs.yml b/.github/workflows/publish-api-docs.yml
index 78c425d53..8b304e625 100644
--- a/.github/workflows/publish-api-docs.yml
+++ b/.github/workflows/publish-api-docs.yml
@@ -10,7 +10,7 @@ jobs:
services:
mysql:
- image: mysql:8.0.39
+ image: mysql:8.0
env:
MYSQL_ROOT_PASSWORD: userfeedback
MYSQL_DATABASE: userfeedback
@@ -22,7 +22,7 @@ jobs:
steps:
- name: Check out repository code
- uses: actions/checkout@v4
+ uses: actions/checkout@v5
- name: Build app and swagger docs
run: |
@@ -36,7 +36,7 @@ jobs:
- name: Run Redocly CLI
uses: fluximus-prime/redocly-cli-github-action@v1
with:
- args: "build-docs apps/api/swagger.json --output docs/index.html"
+ args: 'build-docs apps/api/swagger.json --output docs/index.html'
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
diff --git a/README.md b/README.md
index 009bffad9..fd53ff275 100644
--- a/README.md
+++ b/README.md
@@ -2,31 +2,7 @@

-ABC User Feedback is a standalone web application designed to manage Voice of Customer (VOC) data. It enables you to efficiently gather and categorize customer feedback. With AI-powered insights, you can manage feedback more effectively. The application is currently utilized in services reaching 10 million monthly active users (MAU).
-## Quick Start
-
-To quickly set up and run the application locally, follow these steps:
-
-1. **Clone the Repository**:
-
- ```bash
- git clone https://github.com/line/abc-user-feedback
- cd abc-user-feedback
- ```
-
-2. **Install Dependencies**:
-
- ```bash
- pnpm install
- ```
-
-3. **Start the Application**:
- ```bash
- npx auf-cli init
- npx auf-cli start
- ```
-
-For more detailed setup instructions, refer to the [Getting Started](#getting-started) section.
+ABC User Feedback is a standalone web application designed to manage Voice of Customer (VoC) data. It enables you to efficiently gather and categorize customer feedback. The application is currently utilized in services with a reach of 10 million MAU.
@@ -78,9 +54,7 @@ Before you begin, ensure you have the following installed:
- SMTP - for mail verification during making accounts
- [OpenSearch v2.16](https://opensearch.org/) - for performance on searching feedback
-You can use the [docker-compose.infra-amd64.yml](/docker/docker-compose.infra-amd64.yml) file for requirements.
-
-For ARM architecture, use the [docker-compose.infra-arm64.yml](/docker/docker-compose.infra-arm64.yml) file.
+You can use the [docker-compose.infra.yml](/docker/docker-compose.infra.yml) file for requirements.
### Docker Hub Images
@@ -149,7 +123,7 @@ npm run migration:run
pnpm dev
```
-### Build Docker Image
+### Option3. Build Docker Image
For your code build, you can build a Docker image using Docker Compose. Refer to [remote caching](https://turbo.build/repo/docs/core-concepts/remote-caching) and [deploying with Docker](https://turbo.build/repo/docs/handbook/deploying-with-docker) using `turborepo`.
diff --git a/apps/api/.env.example b/apps/api/.env.example
index c56f6a941..dc9be7ba7 100644
--- a/apps/api/.env.example
+++ b/apps/api/.env.example
@@ -3,10 +3,8 @@ JWT_SECRET=DEV
MYSQL_PRIMARY_URL=mysql://userfeedback:userfeedback@localhost:13306/userfeedback # required
-BASE_URL=http://localhost:3000 # default: http://localhost:3000
-
ACCESS_TOKEN_EXPIRED_TIME=10m # default: 10m
-REFESH_TOKEN_EXPIRED_TIME=1h # default: 1h
+REFRESH_TOKEN_EXPIRED_TIME=1h # default: 1h
# Optional enviroment variables
@@ -17,22 +15,21 @@ REFESH_TOKEN_EXPIRED_TIME=1h # default: 1h
SMTP_HOST=localhost # required
SMTP_PORT=25 # required
+SMTP_SENDER=user@feedback.com # required
# SMTP_USERNAME= # optional
# SMTP_PASSWORD= # optional
-SMTP_SENDER=user@feedback.com # required
-SMTP_BASE_URL=http://localhost:3000 # required
# SMTP_TLS= # default: false
# SMTP_CIPHER_SPEC= # default: TLSv1.2 if SMTP_TLS=true
# SMTP_OPPORTUNISTIC_TLS= # default: true if SMTP_TLS=true
# OPENSEARCH_USE=false # default: false
# OPENSEARCH_NODE= # required if OPENSEARCH_USE=true
-# OPENSEARCH_USERNAME= # required if OPENSEARCH_USE=true
-# OPENSEARCH_PASSWORD= # required if OPENSEARCH_USE=true
+# OPENSEARCH_USERNAME= # optional
+# OPENSEARCH_PASSWORD= # optional
# AUTO_MIGRATION=true # default: true
# MASTER_API_KEY= # default: none
-# ENABLE_AUTO_FEEDBACK_DELETION=false # default: false
+# AUTO_FEEDBACK_DELETION_ENABLED=false # default: false
# AUTO_FEEDBACK_DELETION_PERIOD_DAYS=365*5
\ No newline at end of file
diff --git a/apps/api/README.md b/apps/api/README.md
index dece16f1e..0c27ccb8a 100644
--- a/apps/api/README.md
+++ b/apps/api/README.md
@@ -72,38 +72,37 @@ The following is a list of environment variables used by the application, along
### Required Environment Variables
-| Environment | Description | Default Value |
-| --------------------------- | -------------------------------------------- | -------------------------------------------------------- |
-| `JWT_SECRET` | Secret key for signing JSON Web Tokens (JWT) | _required_ |
-| `MYSQL_PRIMARY_URL` | Primary MySQL connection URL | `mysql://userfeedback:userfeedback@localhost:13306/test` |
-| `BASE_URL` | Base URL of the application | `http://localhost:3000` |
-| `ACCESS_TOKEN_EXPIRED_TIME` | Duration until the access token expires | `10m` |
-| `REFESH_TOKEN_EXPIRED_TIME` | Duration until the refresh token expires | `1h` |
+| Environment | Description | Default Value |
+| ------------------- | -------------------------------------------- | ------------- |
+| `JWT_SECRET` | Secret key for signing JSON Web Tokens (JWT) | _required_ |
+| `MYSQL_PRIMARY_URL` | Primary MySQL connection URL | _required_ |
+| `SMTP_HOST` | SMTP server host | _required_ |
+| `SMTP_PORT` | SMTP server port | _required_ |
+| `SMTP_SENDER` | Email address used as sender in emails | _required_ |
### Optional Environment Variables
-| Environment | Description | Default Value |
-| ------------------------------------ | -------------------------------------------------------------- | --------------------------------------------- |
-| `APP_PORT` | The port that the server runs on | `4000` |
-| `APP_ADDRESS` | The address that the server binds to | `0.0.0.0` |
-| `MYSQL_SECONDARY_URLS` | Secondary MySQL connection URLs (must be in JSON array format) | _optional_ |
-| `SMTP_HOST` | SMTP server host | _required_ |
-| `SMTP_PORT` | SMTP server port | _required_ |
-| `SMTP_USERNAME` | SMTP server authentication username | _optional_ |
-| `SMTP_PASSWORD` | SMTP server authentication password | _optional_ |
-| `SMTP_SENDER` | Email address used as sender in emails | _required_ |
-| `SMTP_BASE_URL` | Base URL for emails to link back to the application | _required_ |
-| `SMTP_TLS` | Flag to enable SMTP server with secure option | `false` |
-| `SMTP_CIPHER_SPEC` | SMTP Cipher Algorithm Specification | `TLSv1.2` |
-| `SMTP_OPPORTUNISTIC_TLS` | Use Opportunistic TLS using STARTTLS | `true` |
-| `OPENSEARCH_USE` | Flag to enable OpenSearch integration | `false` |
-| `OPENSEARCH_NODE` | OpenSearch node URL | _required if `OPENSEARCH_USE=true`_ |
-| `OPENSEARCH_USERNAME` | OpenSearch username (if authentication is enabled) | _required if `OPENSEARCH_USE=true`_ |
-| `OPENSEARCH_PASSWORD` | OpenSearch password (if authentication is enabled) | _required if `OPENSEARCH_USE=true`_ |
-| `AUTO_MIGRATION` | Automatically perform database migration on application start | `true` |
-| `MASTER_API_KEY` | Master API key for privileged operations | _none_ |
-| `ENABLE_AUTO_FEEDBACK_DELETION` | Enable auto old feedback deletion cron on application start | `false` |
-| `AUTO_FEEDBACK_DELETION_PERIOD_DAYS` | Auto old feedback deletion period (in days) | _required if `ENABLE_AUTO_FEEDBACK_DELETION`_ |
+| Environment | Description | Default Value |
+| ------------------------------------ | -------------------------------------------------------------- | ---------------------------------------------- |
+| `ADMIN_WEB_URL` | Admin Web URL | `http://localhost:3000` |
+| `APP_PORT` | The port that the server runs on | `4000` |
+| `APP_ADDRESS` | The address that the server binds to | `0.0.0.0` |
+| `MYSQL_SECONDARY_URLS` | Secondary MySQL connection URLs (must be in JSON array format) | _optional_ |
+| `SMTP_USERNAME` | SMTP server authentication username | _optional_ |
+| `SMTP_PASSWORD` | SMTP server authentication password | _optional_ |
+| `SMTP_TLS` | Flag to enable SMTP server with secure option | `false` |
+| `SMTP_CIPHER_SPEC` | SMTP Cipher Algorithm Specification | `TLSv1.2` |
+| `SMTP_OPPORTUNISTIC_TLS` | Use Opportunistic TLS using STARTTLS | `true` |
+| `OPENSEARCH_USE` | Flag to enable OpenSearch integration | `false` |
+| `OPENSEARCH_NODE` | OpenSearch node URL | _required if `OPENSEARCH_USE=true`_ |
+| `OPENSEARCH_USERNAME` | OpenSearch username (if authentication is enabled) | "" |
+| `OPENSEARCH_PASSWORD` | OpenSearch password (if authentication is enabled) | "" |
+| `AUTO_MIGRATION` | Automatically perform database migration on application start | `true` |
+| `MASTER_API_KEY` | Master API key for privileged operations | _none_ |
+| `AUTO_FEEDBACK_DELETION_ENABLED` | Enable auto old feedback deletion cron on application start | `false` |
+| `AUTO_FEEDBACK_DELETION_PERIOD_DAYS` | Auto old feedback deletion period (in days) | _required if `AUTO_FEEDBACK_DELETION_ENABLED`_ |
+| `ACCESS_TOKEN_EXPIRED_TIME` | Duration until the access token expires | `10m` |
+| `REFRESH_TOKEN_EXPIRED_TIME` | Duration until the refresh token expires | `1h` |
Please ensure that you set the required environment variables before starting the application. Optional variables can be set as needed based on your specific configuration and requirements.
diff --git a/apps/api/integration-test/global.setup.ts b/apps/api/integration-test/global.setup.ts
index 257062baf..b7e227d92 100644
--- a/apps/api/integration-test/global.setup.ts
+++ b/apps/api/integration-test/global.setup.ts
@@ -26,7 +26,7 @@ process.env.MYSQL_SECONDARY_URLS = JSON.stringify([
'mysql://root:userfeedback@localhost:13307/integration',
]);
process.env.MASTER_API_KEY = 'master-api-key';
-process.env.ENABLE_AUTO_FEEDBACK_DELETION = 'true';
+process.env.AUTO_FEEDBACK_DELETION_ENABLED = 'true';
process.env.AUTO_FEEDBACK_DELETION_PERIOD_DAYS = '30';
async function createTestDatabase() {
diff --git a/apps/api/src/configs/app.config.ts b/apps/api/src/configs/app.config.ts
index 7c1d24d11..19633814d 100644
--- a/apps/api/src/configs/app.config.ts
+++ b/apps/api/src/configs/app.config.ts
@@ -21,10 +21,10 @@ import { v4 as uuidv4 } from 'uuid';
export const appConfigSchema = Joi.object({
APP_PORT: Joi.number().default(4000),
APP_ADDRESS: Joi.string().default('0.0.0.0'),
- BASE_URL: Joi.string().required(),
- ENABLE_AUTO_FEEDBACK_DELETION: Joi.boolean().default(false),
+ ADMIN_WEB_URL: Joi.string().default('http://localhost:3000'),
+ AUTO_FEEDBACK_DELETION_ENABLED: Joi.boolean().default(false),
AUTO_FEEDBACK_DELETION_PERIOD_DAYS: Joi.number().when(
- 'ENABLE_AUTO_FEEDBACK_DELETION',
+ 'AUTO_FEEDBACK_DELETION_ENABLED',
{
is: true,
then: Joi.required(),
@@ -36,9 +36,9 @@ export const appConfigSchema = Joi.object({
export const appConfig = registerAs('app', () => ({
port: process.env.APP_PORT,
address: process.env.APP_ADDRESS,
- baseUrl: process.env.APP_BASE_URL,
+ adminWebUrl: process.env.ADMIN_WEB_URL,
enableAutoFeedbackDeletion:
- process.env.ENABLE_AUTO_FEEDBACK_DELETION === 'true',
+ process.env.AUTO_FEEDBACK_DELETION_ENABLED === 'true',
autoFeedbackDeletionPeriodDays:
process.env.AUTO_FEEDBACK_DELETION_PERIOD_DAYS,
serverId: uuidv4(),
diff --git a/apps/api/src/configs/jwt.config.ts b/apps/api/src/configs/jwt.config.ts
index 8b4322165..0ea8e0069 100644
--- a/apps/api/src/configs/jwt.config.ts
+++ b/apps/api/src/configs/jwt.config.ts
@@ -19,11 +19,11 @@ import Joi from 'joi';
export const jwtConfigSchema = Joi.object({
JWT_SECRET: Joi.string().required(),
ACCESS_TOKEN_EXPIRED_TIME: Joi.string().default('10m'),
- REFESH_TOKEN_EXPIRED_TIME: Joi.string().default('1h'),
+ REFRESH_TOKEN_EXPIRED_TIME: Joi.string().default('1h'),
});
export const jwtConfig = registerAs('jwt', () => ({
secret: process.env.JWT_SECRET,
accessTokenExpiredTime: process.env.ACCESS_TOKEN_EXPIRED_TIME,
- refreshTokenExpiredTime: process.env.REFESH_TOKEN_EXPIRED_TIME,
+ refreshTokenExpiredTime: process.env.REFRESH_TOKEN_EXPIRED_TIME,
}));
diff --git a/apps/api/src/configs/opensearch.config.ts b/apps/api/src/configs/opensearch.config.ts
index 38d8cbf30..3974a2aa8 100644
--- a/apps/api/src/configs/opensearch.config.ts
+++ b/apps/api/src/configs/opensearch.config.ts
@@ -23,16 +23,8 @@ export const opensearchConfigSchema = Joi.object({
then: Joi.required(),
otherwise: Joi.optional(),
}),
- OPENSEARCH_USERNAME: Joi.string().allow('').when('OPENSEARCH_USE', {
- is: true,
- then: Joi.required(),
- otherwise: Joi.optional(),
- }),
- OPENSEARCH_PASSWORD: Joi.string().allow('').when('OPENSEARCH_USE', {
- is: true,
- then: Joi.required(),
- otherwise: Joi.optional(),
- }),
+ OPENSEARCH_USERNAME: Joi.string().allow('').optional().default(''),
+ OPENSEARCH_PASSWORD: Joi.string().allow('').optional().default(''),
});
export const opensearchConfig = registerAs('opensearch', () => ({
diff --git a/apps/api/src/configs/smtp.config.ts b/apps/api/src/configs/smtp.config.ts
index 79be08409..e0eb39672 100644
--- a/apps/api/src/configs/smtp.config.ts
+++ b/apps/api/src/configs/smtp.config.ts
@@ -19,10 +19,9 @@ import Joi from 'joi';
export const smtpConfigSchema = Joi.object({
SMTP_HOST: Joi.string().required(),
SMTP_PORT: Joi.number().required(),
- SMTP_USERNAME: Joi.string().optional(),
- SMTP_PASSWORD: Joi.string().optional(),
+ SMTP_USERNAME: Joi.string().optional().allow(''),
+ SMTP_PASSWORD: Joi.string().optional().allow(''),
SMTP_SENDER: Joi.string().required(),
- SMTP_BASE_URL: Joi.string().required(),
SMTP_TLS: Joi.boolean().optional().default(false),
SMTP_CIPHER_SPEC: Joi.string().when('SMTP_TLS', {
is: true,
@@ -42,7 +41,6 @@ export const smtpConfig = registerAs('smtp', () => ({
username: process.env.SMTP_USERNAME,
password: process.env.SMTP_PASSWORD,
sender: process.env.SMTP_SENDER,
- baseUrl: process.env.SMTP_BASE_URL,
tls: process.env.SMTP_TLS === 'true',
cipherSpec: process.env.SMTP_CIPHER_SPEC,
opportunisticTLS: process.env.SMTP_OPPORTUNISTIC_TLS === 'true',
diff --git a/apps/api/src/domains/admin/auth/auth.controller.ts b/apps/api/src/domains/admin/auth/auth.controller.ts
index 1570998da..2727b890d 100644
--- a/apps/api/src/domains/admin/auth/auth.controller.ts
+++ b/apps/api/src/domains/admin/auth/auth.controller.ts
@@ -101,7 +101,9 @@ export class AuthController {
@ApiOkResponse({ type: OAuthLoginUrlResponseDto })
@Get('signIn/oauth/loginURL')
async redirectToLoginURL(@Query('callback_url') callbackUrl: string) {
- return { url: await this.authService.getOAuthLoginURL(callbackUrl) };
+ return {
+ url: await this.authService.getOAuthLoginURL(callbackUrl),
+ };
}
@UseGuards(UseOAuthGuard)
diff --git a/apps/api/src/domains/admin/auth/auth.service.ts b/apps/api/src/domains/admin/auth/auth.service.ts
index ab1169e16..50ef2358a 100644
--- a/apps/api/src/domains/admin/auth/auth.service.ts
+++ b/apps/api/src/domains/admin/auth/auth.service.ts
@@ -71,7 +71,6 @@ type UserProfileResponse = Record;
@Injectable()
export class AuthService {
private readonly logger = new Logger(AuthService.name);
- private REDIRECT_URI = `${process.env.BASE_URL}/auth/oauth-callback`;
constructor(
private readonly createUserService: CreateUserService,
@@ -249,7 +248,7 @@ export class AuthService {
}
const params = new URLSearchParams({
- redirect_uri: this.REDIRECT_URI,
+ redirect_uri: this.getRedirectURI(),
client_id: oauthConfig.clientId,
response_type: 'code',
state: crypto.randomBytes(10).toString('hex'),
@@ -278,7 +277,7 @@ export class AuthService {
{
grant_type: 'authorization_code',
code,
- redirect_uri: this.REDIRECT_URI,
+ redirect_uri: this.getRedirectURI(),
},
{
headers: {
@@ -354,4 +353,10 @@ export class AuthService {
return await this.signIn(user);
}
}
+
+ private getRedirectURI() {
+ const app = this.configService.get('app', { infer: true });
+
+ return `${app?.adminWebUrl}/auth/oauth-callback`;
+ }
}
diff --git a/apps/api/src/shared/mailing/email-verification-mailing.service.spec.ts b/apps/api/src/shared/mailing/email-verification-mailing.service.spec.ts
index 536292aaa..899d50d2e 100644
--- a/apps/api/src/shared/mailing/email-verification-mailing.service.spec.ts
+++ b/apps/api/src/shared/mailing/email-verification-mailing.service.spec.ts
@@ -40,9 +40,7 @@ describe('EmailVerificationMailingService', () => {
{
provide: ConfigService,
useValue: {
- get: jest
- .fn()
- .mockReturnValue({ baseUrl: 'http://localhost:3000' }),
+ get: jest.fn().mockReturnValue('http://localhost:3000'),
},
},
],
@@ -131,7 +129,7 @@ describe('EmailVerificationMailingService', () => {
});
it('should use empty string when smtp config is not available', async () => {
- // Configure ConfigService to return undefined baseUrl
+ // Configure ConfigService to return undefined
const module = await Test.createTestingModule({
imports: [TestConfig],
providers: [
@@ -143,7 +141,7 @@ describe('EmailVerificationMailingService', () => {
{
provide: ConfigService,
useValue: {
- get: jest.fn().mockReturnValue({ baseUrl: undefined }),
+ get: jest.fn().mockReturnValue(undefined),
},
},
],
diff --git a/apps/api/src/shared/mailing/email-verification-mailing.service.ts b/apps/api/src/shared/mailing/email-verification-mailing.service.ts
index eff5ee156..7b51b5ea2 100644
--- a/apps/api/src/shared/mailing/email-verification-mailing.service.ts
+++ b/apps/api/src/shared/mailing/email-verification-mailing.service.ts
@@ -28,8 +28,7 @@ export class EmailVerificationMailingService {
private readonly configService: ConfigService,
) {
this.baseUrl =
- (this.configService.get('smtp', { infer: true }) ?? { baseUrl: '' })
- .baseUrl ?? '';
+ this.configService.get('app.adminWebUrl', { infer: true }) || '';
}
async send({ code, email }: SendMailDto) {
await this.mailerService.sendMail({
diff --git a/apps/api/src/shared/mailing/reset-password-mailing.service.ts b/apps/api/src/shared/mailing/reset-password-mailing.service.ts
index ef4d78bf5..482c784ef 100644
--- a/apps/api/src/shared/mailing/reset-password-mailing.service.ts
+++ b/apps/api/src/shared/mailing/reset-password-mailing.service.ts
@@ -28,8 +28,7 @@ export class ResetPasswordMailingService {
private readonly configService: ConfigService,
) {
this.baseUrl =
- (this.configService.get('smtp', { infer: true }) ?? { baseUrl: '' })
- .baseUrl ?? '';
+ this.configService.get('app.adminWebUrl', { infer: true }) || '';
}
async send({ code, email }: SendMailDto) {
await this.mailerService.sendMail({
diff --git a/apps/api/src/shared/mailing/user-invitation-mailing.service.ts b/apps/api/src/shared/mailing/user-invitation-mailing.service.ts
index 7bf8a59b4..3055842f7 100644
--- a/apps/api/src/shared/mailing/user-invitation-mailing.service.ts
+++ b/apps/api/src/shared/mailing/user-invitation-mailing.service.ts
@@ -28,8 +28,7 @@ export class UserInvitationMailingService {
private readonly configService: ConfigService,
) {
this.baseUrl =
- (this.configService.get('smtp', { infer: true }) ?? { baseUrl: '' })
- .baseUrl ?? '';
+ this.configService.get('app.adminWebUrl', { infer: true }) || '';
}
async send({ code, email }: SendMailDto) {
diff --git a/apps/cli/.gitignore b/apps/cli/.gitignore
new file mode 100644
index 000000000..ab8b69cbc
--- /dev/null
+++ b/apps/cli/.gitignore
@@ -0,0 +1 @@
+config.toml
\ No newline at end of file
diff --git a/apps/cli/bin/auf-cli.ts b/apps/cli/bin/auf-cli.ts
deleted file mode 100755
index 8e4c7305c..000000000
--- a/apps/cli/bin/auf-cli.ts
+++ /dev/null
@@ -1,219 +0,0 @@
-#!/usr/bin/env node
-/**
- * Copyright 2025 LY Corporation
- *
- * LY Corporation licenses this file to you under the Apache License,
- * version 2.0 (the "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at:
- *
- * https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- * License for the specific language governing permissions and limitations
- * under the License.
- */
-import { execSync } from 'child_process';
-import * as fs from 'fs';
-import os from 'os';
-import * as path from 'path';
-import { Command } from 'commander';
-import { load } from 'js-toml';
-
-const program = new Command();
-
-program.description(
- 'ABC User Feedback CLI that helps to run web frontend and server easily.',
-);
-
-function getArchitectureType() {
- const arch = os.arch();
-
- switch (arch) {
- case 'arm':
- case 'arm64':
- return 'arm';
- case 'ia32':
- case 'x32':
- case 'x64':
- return 'amd';
- default:
- return 'arm';
- }
-}
-
-program
- .command('init')
- .description(
- 'Start the appropriate Docker Compose file based on architecture to setup the ABC User Feedback infrastructure.',
- )
- .action(() => {
- const architecture = getArchitectureType();
- console.log(`Your system architecture is detected as: ${architecture}`);
-
- const composeFile =
- architecture === 'amd' ?
- 'docker-compose.infra-amd64.yml'
- : 'docker-compose.infra-arm64.yml';
-
- const composeFilePath = path.join(__dirname + '/../', composeFile);
- console.log(
- `Terminates existing Docker Compose with auf-cli project name...`,
- );
- execSync(`docker compose -p auf-cli down`);
-
- console.log(`Running Docker Compose with ${composeFilePath.toString()}...`);
- execSync(
- `docker compose -p auf-cli -f ${composeFilePath.toString()} up -d`,
- {
- stdio: 'inherit',
- },
- );
-
- const sourceConfigPath = path.join(__dirname + '/../config.toml');
- const destinationConfigPath = path.join(process.cwd(), 'config.toml');
- fs.copyFileSync(sourceConfigPath, destinationConfigPath);
- console.log(
- 'config.toml has been created. Please fill in the required environment variables.',
- );
- });
-
-program
- .command('start')
- .description(
- 'Pull ABC User Feedback Docker image and run container with environment variables',
- )
- .action(() => {
- if (fs.existsSync(path.join(process.cwd(), 'config.toml')) === false) {
- console.error(
- 'config.toml file is missing. Please run "npx auf-cli init" first.',
- );
- return;
- }
-
- const destinationConfigPath = path.join(process.cwd(), 'config.toml');
-
- const templatePath = path.join(
- __dirname + '/../docker-compose.template.yml',
- );
-
- interface TomlConfig {
- web: Record;
- api: Record;
- }
-
- const tomlContent = fs.readFileSync(destinationConfigPath, 'utf-8');
- const tomlConfig = load(tomlContent) as TomlConfig;
-
- const webEnvVars = ['NEXT_PUBLIC_API_BASE_URL'];
-
- const apiEnvVars = [
- 'JWT_SECRET',
- 'MYSQL_PRIMARY_URL',
- 'BASE_URL',
- 'SMTP_HOST',
- 'SMTP_PORT',
- 'SMTP_SENDER',
- 'SMTP_BASE_URL',
- 'AUTO_MIGRATION',
- 'MASTER_API_KEY',
- 'NODE_OPTIONS',
- ];
-
- const missingWebEnvVars = webEnvVars.filter(
- (varName) => !tomlConfig.web[varName],
- );
- const missingApiEnvVars = apiEnvVars.filter(
- (varName) => !tomlConfig.api[varName],
- );
-
- if (missingWebEnvVars.length > 0) {
- console.error(
- `Missing required environment variables for web service: ${missingWebEnvVars.join(', ')}`,
- );
- process.exit(1);
- }
-
- if (missingApiEnvVars.length > 0) {
- console.error(
- `Missing required environment variables for api service: ${missingApiEnvVars.join(', ')}`,
- );
- process.exit(1);
- }
-
- let dockerComposeTemplate = fs.readFileSync(templatePath, 'utf-8');
-
- webEnvVars.forEach((varName) => {
- const regex = new RegExp(`\\$\\{${varName}\\}`, 'g');
- dockerComposeTemplate = dockerComposeTemplate.replace(
- regex,
- tomlConfig.web[varName],
- );
- });
- apiEnvVars.forEach((varName) => {
- const regex = new RegExp(`\\$\\{${varName}\\}`, 'g');
- dockerComposeTemplate = dockerComposeTemplate.replace(
- regex,
- tomlConfig.api[varName],
- );
- });
-
- const dockerComposePath = path.resolve(
- process.cwd(),
- 'docker-compose.generated.yml',
- );
- fs.writeFileSync(dockerComposePath, dockerComposeTemplate);
-
- console.log('docker-compose.generated.yml has been created');
-
- const apiDockerImage = 'line/abc-user-feedback-api';
- const webDockerImage = 'line/abc-user-feedback-web';
-
- console.log(`Pulling Docker image ${apiDockerImage}, ${webDockerImage}...`);
- execSync(`docker pull ${apiDockerImage}`);
- execSync(`docker pull ${webDockerImage}`);
-
- const dockerComposeCommand = `docker compose -p auf-cli -f ${dockerComposePath} up -d`;
- console.log(`Running Docker Compose with command: ${dockerComposeCommand}`);
- execSync(dockerComposeCommand);
-
- console.log(
- '\x1b[32m',
- '\nStarted ABC User Feedback services.\n',
- '\x1b[0m',
- );
- const serviceInfos = {
- 'API URL': 'http://localhost:4000',
- 'WEB URL': 'http://localhost:3000',
- 'DB URL': 'http://localhost:13306',
- 'OPENSEARCH URL': 'http://localhost:9200',
- 'OPENSEARCH ADMIN URL': 'http://localhost:5601',
- JWT_SECRET: tomlConfig.api.JWT_SECRET,
- };
-
- for (const [key, value] of Object.entries(serviceInfos)) {
- console.log(`${key.padStart(20)}: ${value}`);
- }
- });
-
-program
- .command('stop')
- .description('Stop the running Docker containers for app and web services')
- .action(() => {
- const dockerComposeCommand = `docker compose -p auf-cli down`;
- console.log(
- `Stopping Docker Compose with command: ${dockerComposeCommand}`,
- );
- execSync(dockerComposeCommand);
- });
-
-program
- .command('clean')
- .description('Delete existing mounted docker volumes')
- .action(() => {
- console.log('Deletes existing mounted docker volumes...');
- execSync(`rm -rf ${path.join(__dirname, '../volumes')}`);
- });
-
-program.parse(process.argv);
diff --git a/apps/cli/bin/compose.ts b/apps/cli/bin/compose.ts
new file mode 100644
index 000000000..9eb4d814a
--- /dev/null
+++ b/apps/cli/bin/compose.ts
@@ -0,0 +1,190 @@
+/**
+ * Copyright 2025 LY Corporation
+ *
+ * LY Corporation licenses this file to you under the Apache License,
+ * version 2.0 (the "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at:
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+import YAML from 'yaml';
+
+import type { AppConfig } from './config';
+
+export function generateComposeContent(cfg: AppConfig) {
+ const doc = {
+ name: 'abc-user-feedback',
+ services: {
+ web: {
+ image: 'line/abc-user-feedback-web:latest',
+ ports: [`${cfg.web.port}:3000`],
+ depends_on: { api: { condition: 'service_healthy' } },
+ restart: 'unless-stopped',
+ environment: [
+ `NEXT_PUBLIC_API_BASE_URL=http://localhost:${cfg.api.port}`,
+ ],
+ },
+ api: {
+ image: 'line/abc-user-feedback-api:latest',
+ environment: [
+ `JWT_SECRET=${cfg.api.jwt_secret}`,
+ 'MYSQL_PRIMARY_URL=mysql://userfeedback:userfeedback@mysql:3306/userfeedback',
+ `SMTP_HOST=${cfg.api.smtp.host}`,
+ `SMTP_PORT=${cfg.api.smtp.port}`,
+ `SMTP_SENDER=${cfg.api.smtp.sender}`,
+ ],
+ ports: [`${cfg.api.port}:4000`],
+ depends_on: { mysql: { condition: 'service_healthy' } },
+ restart: 'unless-stopped',
+ healthcheck: {
+ test: [
+ 'CMD-SHELL',
+ "node -e \"require('http').get('http://localhost:4000/api/health', res => process.exit(res.statusCode === 200 ? 0 : 1))\"",
+ ],
+ interval: '10s',
+ timeout: '5s',
+ retries: '5',
+ },
+ },
+ smtp4dev: {
+ image: 'rnwood/smtp4dev:v3',
+ ports: ['5080:80', '25:25', '143:143'],
+ volumes: ['smtp4dev:/smtp4dev'],
+ restart: 'unless-stopped',
+ },
+ mysql: {
+ image: 'mysql:8.0',
+ command: [
+ '--default-authentication-plugin=mysql_native_password',
+ '--collation-server=utf8mb4_bin',
+ ],
+ environment: {
+ MYSQL_ROOT_PASSWORD: 'userfeedback',
+ MYSQL_DATABASE: 'userfeedback',
+ MYSQL_USER: 'userfeedback',
+ MYSQL_PASSWORD: 'userfeedback',
+ TZ: 'UTC',
+ },
+ ports: [`${cfg.mysql?.port}:3306`],
+ volumes: ['mysql:/var/lib/mysql'],
+ restart: 'unless-stopped',
+ healthcheck: {
+ test: [
+ 'CMD',
+ 'mysqladmin',
+ 'ping',
+ '-h',
+ 'localhost',
+ '-uuserfeedback',
+ '-puserfeedback',
+ ],
+ interval: '10s',
+ timeout: '5s',
+ retries: '5',
+ },
+ },
+ },
+ volumes: { mysql: {}, smtp4dev: {} } as Record,
+ };
+
+ const apiEnvVariables = {
+ MASTER_API_KEY: cfg.api.master_api_key,
+ ACCESS_TOKEN_EXPIRED_TIME: cfg.api.access_token_expired_time,
+ REFRESH_TOKEN_EXPIRED_TIME: cfg.api.refresh_token_expired_time,
+ SMTP_USERNAME: cfg.api.smtp.username,
+ SMTP_PASSWORD: cfg.api.smtp.password,
+ SMTP_TLS: cfg.api.smtp.tls,
+ SMTP_CIPHER_SPEC: cfg.api.smtp.cipher_spec,
+ SMTP_OPPORTUNISTIC_TLS: cfg.api.smtp.opportunistic_tls,
+ AUTO_FEEDBACK_DELETION_ENABLED: cfg.api.auto_feedback_deletion?.enabled,
+ AUTO_FEEDBACK_DELETION_PERIOD_DAYS:
+ cfg.api.auto_feedback_deletion?.period_days,
+ OPENSEARCH_USE: cfg.api.opensearch?.enabled,
+ };
+
+ for (const [key, value] of Object.entries(apiEnvVariables)) {
+ if (value !== undefined) {
+ doc.services.api.environment.push(`${key}=${value}`);
+ }
+ if (key === 'OPENSEARCH_USE' && value === true) {
+ console.log('value: ', value);
+ doc.services.api.environment.push(
+ `OPENSEARCH_NODE=http://opensearch:9200`,
+ );
+ }
+ }
+ if (cfg.mysql) {
+ doc.services.mysql = {
+ image: 'mysql:8.0',
+ command: [
+ '--default-authentication-plugin=mysql_native_password',
+ '--collation-server=utf8mb4_bin',
+ ],
+ environment: {
+ MYSQL_ROOT_PASSWORD: 'userfeedback',
+ MYSQL_DATABASE: 'userfeedback',
+ MYSQL_USER: 'userfeedback',
+ MYSQL_PASSWORD: 'userfeedback',
+ TZ: 'UTC',
+ },
+ ports: [`${cfg.mysql.port}:3306`],
+ volumes: ['mysql:/var/lib/mysql'],
+ restart: 'unless-stopped',
+ healthcheck: {
+ test: [
+ 'CMD',
+ 'mysqladmin',
+ 'ping',
+ '-h',
+ 'localhost',
+ '-uuserfeedback',
+ '-puserfeedback',
+ ],
+ interval: '10s',
+ timeout: '5s',
+ retries: '5',
+ },
+ };
+ }
+
+ if (cfg.api.opensearch) {
+ doc.services['opensearch-node'] = {
+ image: 'opensearchproject/opensearch:2.16.0',
+ restart: 'unless-stopped',
+ environment: [
+ 'cluster.name=opensearch-cluster',
+ 'node.name=opensearch-node',
+ 'discovery.type=single-node',
+ 'bootstrap.memory_lock=true',
+ 'OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m',
+ 'plugins.security.disabled=true',
+ 'OPENSEARCH_INITIAL_ADMIN_PASSWORD=UserFeedback123!@#',
+ ],
+ ulimits: {
+ memlock: { soft: -1, hard: -1 },
+ nofile: { soft: 65536, hard: 65536 },
+ },
+ volumes: ['opensearch:/usr/share/opensearch/data'],
+ ports: ['9200:9200', '9600:9600'],
+ healthcheck: {
+ test: ['CMD', 'curl', '-f', 'http://localhost:9200/_cluster/health'],
+ interval: '10s',
+ timeout: '5s',
+ retries: '5',
+ },
+ };
+ doc.services.api.depends_on['opensearch-node'] = {
+ condition: 'service_healthy',
+ };
+ doc.volumes.opensearch = {};
+ }
+
+ const yml = YAML.stringify(doc);
+ return yml;
+}
diff --git a/apps/cli/bin/config.ts b/apps/cli/bin/config.ts
new file mode 100644
index 000000000..da822fd89
--- /dev/null
+++ b/apps/cli/bin/config.ts
@@ -0,0 +1,73 @@
+/**
+ * Copyright 2025 LY Corporation
+ *
+ * LY Corporation licenses this file to you under the Apache License,
+ * version 2.0 (the "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at:
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+import path from 'path';
+import * as TOML from 'toml';
+import { z } from 'zod';
+
+import { exists, readFile } from './fsutil';
+
+const ConfigSchema = z.object({
+ web: z.object({
+ port: z.number().default(3000),
+ api_base_url: z.string().default('http://localhost:4000'),
+ }),
+ api: z.object({
+ port: z.number().default(4000),
+ jwt_secret: z.string().min(32).default('jwtsecretjwtsecretjwtsecret'),
+ master_api_key: z.string().optional(),
+ access_token_expired_time: z.string().optional(),
+ refresh_token_expired_time: z.string().optional(),
+ auto_feedback_deletion: z
+ .object({
+ enabled: z.boolean().default(false),
+ period_days: z.number().optional(),
+ })
+ .optional(),
+ smtp: z
+ .object({
+ host: z.string(),
+ port: z.number(),
+ sender: z.string(),
+ username: z.string().optional(),
+ password: z.string().optional(),
+ tls: z.string().optional(),
+ cipher_spec: z.string().optional(),
+ opportunistic_tls: z.string().optional(),
+ })
+ .optional()
+ .default({ host: 'smtp4dev', port: 25, sender: 'user@feedback.com' }),
+ opensearch: z.object({ enabled: z.boolean().default(false) }).optional(),
+ }),
+ mysql: z.object({ port: z.number().default(13306) }).optional(),
+});
+
+export type AppConfig = z.infer;
+
+export function loadConfig(cwd = process.cwd()): AppConfig {
+ const mainPath = path.join(cwd, 'config.toml');
+ if (!exists(mainPath))
+ throw new Error(
+ "config.toml 이 없습니다. 먼저 'mystack init'을 실행하세요.",
+ );
+ const main = TOML.parse(readFile(mainPath)) as unknown;
+ const parsed = ConfigSchema.safeParse(main);
+ if (!parsed.success)
+ throw new Error(
+ 'config.toml 검증 실패:\n' +
+ JSON.stringify(parsed.error.format(), null, 2),
+ );
+ return parsed.data;
+}
diff --git a/apps/cli/bin/fsutil.ts b/apps/cli/bin/fsutil.ts
new file mode 100644
index 000000000..96141c782
--- /dev/null
+++ b/apps/cli/bin/fsutil.ts
@@ -0,0 +1,31 @@
+/**
+ * Copyright 2025 LY Corporation
+ *
+ * LY Corporation licenses this file to you under the Apache License,
+ * version 2.0 (the "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at:
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+import fs from 'fs';
+import path from 'path';
+
+export function ensureDir(dir: string) {
+ if (!fs.existsSync(dir)) fs.mkdirSync(dir, { recursive: true });
+}
+export function writeFile(p: string, content: string) {
+ ensureDir(path.dirname(p));
+ fs.writeFileSync(p, content, 'utf8');
+}
+export function exists(p: string) {
+ return fs.existsSync(p);
+}
+export function readFile(p: string) {
+ return fs.readFileSync(p, 'utf8');
+}
diff --git a/apps/cli/bin/index.ts b/apps/cli/bin/index.ts
new file mode 100755
index 000000000..124b5f24c
--- /dev/null
+++ b/apps/cli/bin/index.ts
@@ -0,0 +1,145 @@
+#!/usr/bin/env node
+/**
+ * Copyright 2025 LY Corporation
+ *
+ * LY Corporation licenses this file to you under the Apache License,
+ * version 2.0 (the "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at:
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+import { Command } from 'commander';
+
+import packageJson from '../package.json';
+import { generateComposeContent } from './compose';
+import { loadConfig } from './config';
+import { exists, writeFile } from './fsutil';
+import { run, runWithStdin } from './shell';
+
+const program = new Command();
+program
+ .name('auf-cli')
+ .description('Tiny stack CLI (config.toml only)')
+ .version(packageJson.version);
+
+program
+ .command('init')
+ .description('Generate config.toml template — use without .env')
+ .option('--force', 'Overwrite existing file')
+ .action((opts: { force?: boolean }) => {
+ if (exists('config.toml') && !opts.force)
+ throw new Error('config.toml already exists. Use --force to overwrite.');
+ writeFile('config.toml', defaultConfigToml());
+ console.log('✅ Created: config.toml');
+ });
+
+program
+ .command('start')
+ .description('Start services with docker compose up -d based on config.toml')
+ .action(async () => {
+ const cfg = loadConfig();
+
+ const composeContent = generateComposeContent(cfg);
+ await runWithStdin(
+ 'docker',
+ ['compose', '-f', '-', 'up', '-d', '--remove-orphans'],
+ composeContent,
+ );
+
+ console.log('🚀 Services started successfully!');
+ console.log('🔗 Available URLs:');
+ console.log(` 📱 Web: http://localhost:${cfg.web.port}`);
+ console.log(` 🔧 API: http://localhost:${cfg.api.port}`);
+ if (cfg.mysql) {
+ console.log(
+ ` 🗄️ MySQL: mysql://userfeedback:userfeedback@localhost:${cfg.mysql.port}`,
+ );
+ }
+ if (cfg.api.opensearch?.enabled) {
+ console.log(` 🔍 OpenSearch: http://localhost:9200`);
+ }
+ if (cfg.api.smtp.host === 'smtp4dev') {
+ console.log(` 📧 SMTP Mail Web: http://localhost:5080`);
+ }
+ });
+
+program
+ .command('stop')
+ .description('Stop services with docker compose down')
+ .action(async () => {
+ const cfg = loadConfig();
+
+ const composeContent = generateComposeContent(cfg);
+ await runWithStdin(
+ 'docker',
+ ['compose', '-f', '-', 'down'],
+ composeContent,
+ );
+ console.log('🛑 Services stopped successfully');
+ });
+
+program
+ .command('clean')
+ .description('Clean up containers/networks/volumes')
+ .option('--images', 'Also prune images')
+ .action(async (opts: { images?: boolean }) => {
+ const cfg = loadConfig();
+
+ const composeContent = generateComposeContent(cfg);
+ await runWithStdin(
+ 'docker',
+ ['compose', '-f', '-', 'down', '--volumes', '--remove-orphans'],
+ composeContent,
+ );
+
+ if (opts.images) await run('docker', ['image', 'prune', '-f']);
+ console.log('🧹 Cleanup completed successfully');
+ });
+
+program.parseAsync().catch((e: Error) => {
+ console.error('❌ Error:', e.message);
+ process.exit(1);
+});
+
+function defaultConfigToml() {
+ return `
+[web]
+port = 3000
+# api_base_url = "http://localhost:4000"
+
+[api]
+port = 4000
+jwt_secret = "jwtsecretjwtsecretjwtsecretjwtsecretjwtsecretjwtsecret"
+
+# master_api_key = "MASTER_KEY"
+# access_token_expired_time = "10m"
+# refresh_token_expired_time = "1h"
+
+# [api.auto_feedback_deletion]
+# enabled = true
+# period_days = 365
+
+# [api.smtp]
+# host = "smtp4dev" # SMTP_HOST
+# port = 25 # SMTP_PORT
+# sender = "user@feedback.com"
+# username=
+# password=
+# tls=
+# ciper_spec=
+# opportunitic_tls=
+
+
+# [api.opensearch]
+# enabled = true
+
+[mysql]
+port = 13306
+`;
+}
diff --git a/apps/cli/bin/shell.ts b/apps/cli/bin/shell.ts
new file mode 100644
index 000000000..78f488fab
--- /dev/null
+++ b/apps/cli/bin/shell.ts
@@ -0,0 +1,55 @@
+/**
+ * Copyright 2025 LY Corporation
+ *
+ * LY Corporation licenses this file to you under the Apache License,
+ * version 2.0 (the "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at:
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+import { spawn } from 'child_process';
+
+export function run(cmd: string, args: string[] = [], cwd?: string) {
+ return new Promise((resolve, reject) => {
+ const p = spawn(cmd, args, {
+ stdio: 'inherit',
+ cwd,
+ shell: process.platform === 'win32',
+ });
+ p.on('close', (code) =>
+ code === 0 ? resolve() : (
+ reject(new Error(`${cmd} ${args.join(' ')} exited with ${code}`))
+ ),
+ );
+ });
+}
+
+export function runWithStdin(
+ cmd: string,
+ args: string[] = [],
+ input: string,
+ cwd?: string,
+) {
+ return new Promise((resolve, reject) => {
+ const p = spawn(cmd, args, {
+ stdio: ['pipe', 'inherit', 'inherit'],
+ cwd,
+ shell: process.platform === 'win32',
+ });
+
+ p.stdin.write(input);
+ p.stdin.end();
+
+ p.on('close', (code) =>
+ code === 0 ? resolve() : (
+ reject(new Error(`${cmd} ${args.join(' ')} exited with ${code}`))
+ ),
+ );
+ });
+}
diff --git a/apps/cli/config.toml b/apps/cli/config.toml
deleted file mode 100644
index b1795c527..000000000
--- a/apps/cli/config.toml
+++ /dev/null
@@ -1,19 +0,0 @@
-[api]
-MYSQL_PRIMARY_URL="mysql://root:userfeedback@host.docker.internal:13306/userfeedback"
-# MYSQL_SECONDARY_URLS= ["mysql://root:userfeedback@host.docker.internal:13306/userfeedback"]
-OPENSEARCH_USE=true
-OPENSEARCH_NODE="http://localhost:9200"
-OPENSEARCH_USERNAME="UserFeedback123!@#"
-SMTP_HOST="localhost"
-SMTP_PORT=25
-SMTP_SENDER="noreply@linecorp.com"
-SMTP_BASE_URL="http://localhost:3000"
-AUTO_MIGRATION=true
-NODE_OPTIONS="--max_old_space_size=3072"
-BASE_URL="http://localhost:3000"
-JWT_SECRET="secret"
-OPENSEARCH_PASSWORD="UserFeedback123!@#"
-MASTER_API_KEY="MASTER_API_KEY"
-
-[web]
-NEXT_PUBLIC_API_BASE_URL="http://localhost:4000"
diff --git a/apps/cli/docker-compose.infra-amd64.yml b/apps/cli/docker-compose.infra-amd64.yml
deleted file mode 100644
index 927373be6..000000000
--- a/apps/cli/docker-compose.infra-amd64.yml
+++ /dev/null
@@ -1,106 +0,0 @@
-services:
- mysql:
- hostname: mysql
- image: mysql:8.0.39
- platform: linux/amd64
- restart: always
- command:
- [
- '--default-authentication-plugin=mysql_native_password',
- '--collation-server=utf8mb4_bin',
- ]
- environment:
- MYSQL_ROOT_PASSWORD: userfeedback
- MYSQL_DATABASE: userfeedback
- MYSQL_USER: userfeedback
- MYSQL_PASSWORD: userfeedback
- TZ: UTC
- ports:
- - 13306:3306
- volumes:
- - ./volumes/mysql:/var/lib/mysql
- networks:
- - app_network
-
- # optional for e2e test
- mysql-for-e2e:
- hostname: mysql
- image: mysql:8.0.39
- platform: linux/amd64
- restart: always
- command:
- [
- '--default-authentication-plugin=mysql_native_password',
- '--collation-server=utf8mb4_bin',
- ]
- environment:
- MYSQL_ROOT_PASSWORD: userfeedback
- MYSQL_DATABASE: e2e
- MYSQL_USER: userfeedback
- MYSQL_PASSWORD: userfeedback
- TZ: UTC
- ports:
- - 13307:3306
- volumes:
- - ./volumes/mysql-for-e2e:/var/lib/mysql-for-e2e
- networks:
- - app_network
-
- # optional for email verification on creating user
- smtp4dev:
- image: rnwood/smtp4dev:v3
- restart: always
- ports:
- - 5080:80
- - 25:25
- - 143:143
- volumes:
- - ./volumes/smtp4dev:/smtp4dev
- networks:
- - app_network
-
- # optional for better performance on searching feedbacks
- opensearch-node:
- image: opensearchproject/opensearch:2.15.0
- restart: always
- container_name: opensearch-node
- environment:
- - cluster.name=opensearch-cluster
- - node.name=opensearch-node
- - discovery.type=single-node
- - bootstrap.memory_lock=true
- - 'OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m'
- - plugins.security.disabled=true
- - OPENSEARCH_INITIAL_ADMIN_PASSWORD=UserFeedback123!@#
- ulimits:
- memlock:
- soft: -1
- hard: -1
- nofile:
- soft: 65536
- hard: 65536
- volumes:
- - ./volumes/opensearch:/usr/share/opensearch/data
- ports:
- - 9200:9200
- - 9600:9600
- networks:
- - app_network
-
- # optional for opensearch
- opensearch-dashboards:
- image: opensearchproject/opensearch-dashboards:2.15.0
- restart: always
- container_name: opensearch-dashboards
- ports:
- - 5601:5601
- environment:
- - 'OPENSEARCH_HOSTS=["http://opensearch-node:9200"]'
- - 'DISABLE_SECURITY_DASHBOARDS_PLUGIN=true'
- depends_on:
- - opensearch-node
- networks:
- - app_network
-
-networks:
- app_network:
diff --git a/apps/cli/docker-compose.infra-arm64.yml b/apps/cli/docker-compose.infra-arm64.yml
deleted file mode 100644
index 4fbfe2d13..000000000
--- a/apps/cli/docker-compose.infra-arm64.yml
+++ /dev/null
@@ -1,106 +0,0 @@
-services:
- mysql:
- hostname: mysql
- image: mysql:8.0.39
- platform: linux/arm64/v8
- restart: always
- command:
- [
- '--default-authentication-plugin=mysql_native_password',
- '--collation-server=utf8mb4_bin',
- ]
- environment:
- MYSQL_ROOT_PASSWORD: userfeedback
- MYSQL_DATABASE: userfeedback
- MYSQL_USER: userfeedback
- MYSQL_PASSWORD: userfeedback
- TZ: UTC
- ports:
- - 13306:3306
- volumes:
- - ./volumes/mysql:/var/lib/mysql
- networks:
- - app_network
-
- # optional for e2e test
- mysql-for-e2e:
- hostname: mysql
- image: mysql:8.0.39
- platform: linux/arm64/v8
- restart: always
- command:
- [
- '--default-authentication-plugin=mysql_native_password',
- '--collation-server=utf8mb4_bin',
- ]
- environment:
- MYSQL_ROOT_PASSWORD: userfeedback
- MYSQL_DATABASE: e2e
- MYSQL_USER: userfeedback
- MYSQL_PASSWORD: userfeedback
- TZ: UTC
- ports:
- - 13307:3306
- volumes:
- - ./volumes/mysql-for-e2e:/var/lib/mysql-for-e2e
- networks:
- - app_network
-
- # optional for email verification on creating user
- smtp4dev:
- image: rnwood/smtp4dev:v3
- restart: always
- ports:
- - 5080:80
- - 25:25
- - 143:143
- volumes:
- - ./volumes/smtp4dev:/smtp4dev
- networks:
- - app_network
-
- # optional for better performance on searching feedbacks
- opensearch-node:
- image: opensearchproject/opensearch:2.14.0
- restart: always
- container_name: opensearch-node
- environment:
- - cluster.name=opensearch-cluster
- - node.name=opensearch-node
- - discovery.type=single-node
- - bootstrap.memory_lock=true
- - 'OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m'
- - plugins.security.disabled=true
- - OPENSEARCH_INITIAL_ADMIN_PASSWORD=UserFeedback123!@#
- ulimits:
- memlock:
- soft: -1
- hard: -1
- nofile:
- soft: 65536
- hard: 65536
- volumes:
- - ./volumes/opensearch:/usr/share/opensearch/data
- ports:
- - 9200:9200
- - 9600:9600
- networks:
- - app_network
-
- # optional for opensearch
- opensearch-dashboards:
- image: opensearchproject/opensearch-dashboards:2.14.0
- restart: always
- container_name: opensearch-dashboards
- ports:
- - 5601:5601
- environment:
- - 'OPENSEARCH_HOSTS=["http://opensearch-node:9200"]'
- - 'DISABLE_SECURITY_DASHBOARDS_PLUGIN=true'
- depends_on:
- - opensearch-node
- networks:
- - app_network
-
-networks:
- app_network:
diff --git a/apps/cli/docker-compose.template.yml b/apps/cli/docker-compose.template.yml
deleted file mode 100644
index b1728596d..000000000
--- a/apps/cli/docker-compose.template.yml
+++ /dev/null
@@ -1,33 +0,0 @@
-services:
- web:
- hostname: web
- image: line/abc-user-feedback-web
- restart: always
- ports:
- - 3000:3000
- extra_hosts:
- - 'host.docker.internal:host-gateway'
- environment:
- - NEXT_PUBLIC_API_BASE_URL=${NEXT_PUBLIC_API_BASE_URL}
- depends_on:
- - api
-
- api:
- hostname: api
- image: line/abc-user-feedback-api
- restart: always
- ports:
- - 4000:4000
- extra_hosts:
- - 'host.docker.internal:host-gateway'
- environment:
- - JWT_SECRET=${JWT_SECRET}
- - MYSQL_PRIMARY_URL=${MYSQL_PRIMARY_URL}
- - BASE_URL=${BASE_URL}
- - SMTP_HOST=${SMTP_HOST}
- - SMTP_PORT=${SMTP_PORT}
- - SMTP_SENDER=${SMTP_SENDER}
- - SMTP_BASE_URL=${SMTP_BASE_URL}
- - AUTO_MIGRATION=${AUTO_MIGRATION}
- - MASTER_API_KEY=${MASTER_API_KEY}
- - NODE_OPTIONS=${NODE_OPTIONS}
diff --git a/apps/cli/package.json b/apps/cli/package.json
index 84f409b68..b77af111d 100644
--- a/apps/cli/package.json
+++ b/apps/cli/package.json
@@ -1,30 +1,46 @@
{
"name": "auf-cli",
"version": "1.0.10",
- "type": "module",
+ "description": "Command line interface for ABC User Feedback",
+ "repository": "https://github.com/line/abc-user-feedback/tree/main/apps/cli",
"bin": {
- "auf-cli": "./dist/auf-cli.js"
+ "auf-cli": "./dist/index.js"
},
+ "author": "ABC User Feedback",
+ "keywords": [
+ "auf",
+ "cli",
+ "command-line",
+ "tool",
+ "abc-user-feedback",
+ "VOC"
+ ],
"scripts": {
"build": "tsc",
"clean": "git clean -xdf dist .turbo node_modules .cache",
"format": "prettier --check . --ignore-path ../../.gitignore",
"format:fix": "prettier --write --list-different .",
"lint": "eslint",
- "start": "node dist/auf-cli.js",
- "start:dev": "ts-node bin/auf-cli.ts"
+ "start": "node dist/index.js",
+ "start:dev": "ts-node bin/index.ts",
+ "dev": "ts-node bin/index.ts"
},
"dependencies": {
"@types/prompts": "^2.4.9",
"child_process": "^1.0.2",
"commander": "^14.0.2",
- "js-toml": "^1.0.2"
+ "js-toml": "^1.0.2",
+ "toml": "^3.0.0",
+ "yaml": "^2.4.2",
+ "zod": "^4.1.12"
},
"devDependencies": {
+ "@types/node": "22.18.13",
"@ufb/eslint-config": "workspace:*",
"@ufb/prettier-config": "workspace:*",
"@ufb/tsconfig": "workspace:*",
- "ts-node": "^10.9.2"
+ "ts-node": "^10.9.2",
+ "typescript": "catalog:"
},
"prettier": "@ufb/prettier-config"
}
diff --git a/apps/cli/tsconfig.json b/apps/cli/tsconfig.json
index cdfdf747a..ec5172e9c 100644
--- a/apps/cli/tsconfig.json
+++ b/apps/cli/tsconfig.json
@@ -3,10 +3,8 @@
"compilerOptions": {
"outDir": "./dist",
"baseUrl": "./",
- "paths": {
- "@/*": ["./src/*"]
- }
+ "resolveJsonModule": true
},
- "include": ["bin"],
+ "include": ["."],
"exclude": ["node_modules", "dist"]
}
diff --git a/apps/docs/.gitignore b/apps/docs/.gitignore
new file mode 100644
index 000000000..b2d6de306
--- /dev/null
+++ b/apps/docs/.gitignore
@@ -0,0 +1,20 @@
+# Dependencies
+/node_modules
+
+# Production
+/build
+
+# Generated files
+.docusaurus
+.cache-loader
+
+# Misc
+.DS_Store
+.env.local
+.env.development.local
+.env.test.local
+.env.production.local
+
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
diff --git a/apps/docs/README.md b/apps/docs/README.md
new file mode 100644
index 000000000..0c6c2c27b
--- /dev/null
+++ b/apps/docs/README.md
@@ -0,0 +1,41 @@
+# Website
+
+This website is built using [Docusaurus](https://docusaurus.io/), a modern static website generator.
+
+### Installation
+
+```
+$ yarn
+```
+
+### Local Development
+
+```
+$ yarn start
+```
+
+This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
+
+### Build
+
+```
+$ yarn build
+```
+
+This command generates static content into the `build` directory and can be served using any static contents hosting service.
+
+### Deployment
+
+Using SSH:
+
+```
+$ USE_SSH=true yarn deploy
+```
+
+Not using SSH:
+
+```
+$ GIT_USER= yarn deploy
+```
+
+If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the `gh-pages` branch.
diff --git a/apps/docs/docs/00-introduction/00.index.md b/apps/docs/docs/00-introduction/00.index.md
new file mode 100644
index 000000000..c2028467e
--- /dev/null
+++ b/apps/docs/docs/00-introduction/00.index.md
@@ -0,0 +1,39 @@
+---
+sidebar_position: 1
+slug: /
+---
+
+# 환영합니다
+
+환영합니다! 이 문서는 ABC User Feedback에 대한 포괄적인 가이드를 제공합니다.
+
+
+
+## ABC User Feedback란?
+
+ABC User Feedback은 고객의 소리(VoC) 피드백을 효율적으로 수집, 분류, 관리하도록 설계된 독립형 웹 애플리케이션입니다. 피드백 태깅 시스템, 칸반 모드, 이슈 트래커, SSO 인증 등 다양한 기능을 제공합니다. 현재 1,000만 MAU를 보유한 서비스에서 활용되고 있습니다.
+
+
+
+
+
+## 주요 기능
+
+- **피드백 태깅 시스템**: 주제별로 피드백을 분류하고 관리
+- **칸반 모드**: 이슈 그룹을 효율적으로 시각화하고 관리
+- **이슈 트래커 통합**: 상태 표시기로 이슈를 추적하고 외부 시스템과 통합
+- **싱글 사인온(SSO)**: 엔터프라이즈급 인증 요구사항을 지원하는 OAuth 인증
+- **역할 기반 접근 제어(RBAC)**: 세분화된 사용자 권한 관리
+- **대시보드**: 피드백 및 이슈에 대한 통계 데이터 시각화
+
+## 시작하기
+
+- [설치 가이드](/docs/02-developer-guide/01-installation/01-docker-hub-images.md) - Docker, CLI 도구 또는 수동 설치 방법
+- [튜토리얼](/docs/01-user-guide/01-getting-started.md) - 기본 사용법 가이드
+
+## 지원 받기
+
+질문이 있거나 도움이 필요하신가요? 다음 리소스를 활용하세요:
+
+- [GitHub Issues](https://github.com/line/abc-user-feedback/issues) - 버그 리포트 및 기능 요청
+- [GitHub Discussions](https://github.com/line/abc-user-feedback/discussions) - 커뮤니티 토론
diff --git a/apps/docs/docs/00-introduction/01-project-overview.md b/apps/docs/docs/00-introduction/01-project-overview.md
new file mode 100644
index 000000000..429aaf025
--- /dev/null
+++ b/apps/docs/docs/00-introduction/01-project-overview.md
@@ -0,0 +1,74 @@
+---
+sidebar_position: 1
+title: "프로젝트 개요"
+description: "프로젝트 개요를 소개합니다."
+---
+
+# 프로젝트 개요
+
+## ABC User Feedback이란?
+
+ABC User Feedback은 고객의 소리(Voice of Customer, VoC)를 효율적으로 수집, 분류 및 관리하기 위해 설계된 독립형 웹 애플리케이션입니다. 이 오픈소스 솔루션은 사용자 피드백을 체계적으로 관리하여 제품과 서비스 개선에 필요한 인사이트를 도출하는 데 중점을 두고 있습니다.
+
+현재 이 애플리케이션은 월간 활성 사용자(MAU) 1,000만 명 규모의 서비스에서 활용되고 있어, 대규모 피드백 처리에 대한 검증된 안정성을 갖추고 있습니다.
+
+## 핵심 가치 제안
+
+ABC User Feedback은 다음 핵심 가치를 제공합니다:
+
+1. **중앙화된 피드백 관리**: 다양한 채널에서 수집된 사용자 피드백을 한 곳에서 관리
+2. **구조화된 분석**: 이슈 시스템을 통한 피드백 분류 및 추세 파악
+3. **이슈 추적**: 피드백에서 발견된 문제점을 이슈로 전환하여 추적 관리
+4. **데이터 기반 의사결정**: 대시보드를 통한 피드백 데이터 시각화 및 인사이트 도출
+
+## 기술 스택
+
+ABC User Feedback은 현대적인 웹 기술을 기반으로 구축되었습니다:
+
+- **프론트엔드**: [Next.js](https://nextjs.org/) - React 기반의 프론트엔드 프레임워크
+- **백엔드**: [NestJS](https://nestjs.com/) - TypeScript 기반의 확장 가능한 백엔드 프레임워크
+- **데이터베이스**: [MySQL v8](https://www.mysql.com/) - 안정적인 관계형 데이터베이스
+- **검색 엔진**: [OpenSearch v2.16](https://opensearch.org/) (선택 사항) - 대량의 피드백 데이터에 대한 고성능 검색 기능
+
+## 아키텍처 개요
+
+ABC User Feedback은 다음 주요 컴포넌트로 구성됩니다:
+
+1. **웹 관리자 인터페이스**: 피드백 관리, 이슈 추적, 대시보드 등 사용자 인터페이스를 제공하는 Next.js 기반 웹 애플리케이션
+2. **API 서버**: 데이터 처리, 비즈니스 로직, 인증 등을 담당하는 NestJS 기반 백엔드 서버
+3. **데이터베이스**: 피드백, 이슈, 사용자 정보 등을 저장하는 MySQL 데이터베이스
+4. **검색 엔진**: 대량의 피드백 데이터에 대한 고성능 검색을 제공하는 OpenSearch (선택 사항)
+5. **SMTP 서버**: 계정 생성 시 이메일 인증, 비밀번호 재설정 등 사용자 인증 프로세스에 필요한 이메일 발송을 담당하는 컴포넌트
+
+이 컴포넌트들은 Docker를 통해 컨테이너화되어 있어 쉽게 배포하고 확장할 수 있습니다.
+
+## 주요 사용 사례
+
+ABC User Feedback은 다음 상황에서 특히 유용합니다:
+
+1. **제품 개선 프로세스**: 사용자 피드백을 수집하고 분석하여 제품 개선 방향 설정
+2. **고객 지원**: 사용자 문의와 이슈를 효율적으로 추적하고 관리
+3. **사용자 경험 최적화**: 사용자 의견을 기반으로 UX/UI 개선
+4. **품질 관리**: 버그 리포트와 기능 요청을 체계적으로 관리
+5. **데이터 기반 의사결정**: 사용자 피드백 통계를 활용한 전략적 의사결정 지원
+
+## 차별화 요소
+
+ABC User Feedback은 다음 특징으로 다른 피드백 관리 도구와 차별화됩니다:
+
+1. **완전한 오픈소스**: 상용 솔루션과 달리 완전히 무료로 사용 가능하며 커스터마이징 가능
+2. **엔터프라이즈급 기능**: SSO 인증, RBAC 등 기업 환경에 필요한 기능 제공
+3. **확장성**: 대규모 사용자 기반(1,000만 MAU)에서 검증된 성능
+4. **통합 용이성**: RESTful API와 웹훅으로 기존 시스템과 쉽게 통합
+5. **컨테이너화**: Docker 지원으로 간편한 배포 및 확장
+
+## 다음 단계
+
+ABC User Feedback을 시작하려면 다음 문서를 참조하세요:
+
+- [주요 기능](./02-key-features.md) - 상세한 기능 설명
+- [설치 가이드](/docs/02-developer-guide/01-installation/01-docker-hub-images.md) - 설치 방법
+
+---
+
+이 문서는 ABC User Feedback의 기본 개요를 제공합니다. 더 자세한 정보는 해당 섹션의 문서를 참조하세요.
diff --git a/apps/docs/docs/00-introduction/02-key-features.md b/apps/docs/docs/00-introduction/02-key-features.md
new file mode 100644
index 000000000..caa9ea89e
--- /dev/null
+++ b/apps/docs/docs/00-introduction/02-key-features.md
@@ -0,0 +1,192 @@
+---
+sidebar_position: 3
+title: "주요 기능"
+description: "주요 기능을 소개합니다."
+---
+
+# 주요 기능
+
+ABC User Feedback은 사용자 피드백을 효과적으로 수집, 관리 및 분석하기 위한 다양한 기능을 제공합니다. 이 문서에서는 핵심 기능들을 자세히 설명합니다.
+
+## 피드백 태깅 시스템
+
+
+
+피드백 태깅 시스템은 대량의 사용자 피드백을 체계적으로 분류하고 관리하는 핵심 기능입니다.
+
+### 주요 특징
+
+- **다중 이슈 할당**: 각 피드백에 여러 이슈를 할당하여 다차원적 분류 가능
+- **커스텀 이슈 생성**: 프로젝트 특성에 맞는 맞춤형 이슈 생성 및 관리
+- **이슈 기반 필터링**: 이슈별로 피드백을 필터링하여 특정 주제에 집중
+- **이슈 통계**: 이슈 사용 빈도 및 추세 분석을 통한 인사이트 도출
+- **이슈 색상 코딩**: 시각적 구분을 위한 이슈별 색상 지정
+
+### 활용 방법
+
+1. 관리자 패널에서 이슈 카테고리 및 이슈 생성
+2. 수신된 피드백에 관련 이슈 할당
+3. 이슈별 피드백 필터링 및 분석
+4. 이슈 사용 패턴을 통한 주요 이슈 및 추세 파악
+
+## 칸반 모드
+
+
+
+칸반 모드는 이슈 그룹을 시각적으로 관리하고 워크플로우를 최적화하기 위한 기능입니다.
+
+### 주요 특징
+
+- **직관적인 드래그 앤 드롭**: 이슈 상태 변경을 위한 간편한 인터페이스
+- **상태별 열 구성**: 이슈 진행 상태에 따른 열 구분 (예: 할 일, 진행 중, 완료)
+- **작업 흐름 시각화**: 팀의 작업 프로세스 및 진행 상황 한눈에 파악
+- **작업 부하 관리**: 각 상태별 이슈 수를 통한 작업 부하 모니터링
+- **필터 및 정렬**: 다양한 기준으로 칸반 보드 내 이슈 필터링 및 정렬
+
+### 활용 방법
+
+1. 칸반 모드 뷰 선택
+2. 상태별 이슈 확인 및 관리
+3. 드래그 앤 드롭으로 이슈 상태 변경
+4. 팀 작업 흐름 최적화 및 병목 현상 식별
+
+## 이슈 트래커 연동
+
+
+
+이슈 트래커 연동은 피드백에서 발견된 문제점이나 개선사항을 체계적으로 관리하기 위한 기능입니다.
+
+### 주요 특징
+
+- **상태 표시기**: 이슈의 현재 상태를 시각적으로 표시 (신규, 진행 중, 해결됨 등)
+- **우선순위 설정**: 이슈의 중요도에 따른 우선순위 지정
+- **외부 시스템 연동**: 기존 이슈 트래커 시스템(JIRA, GitHub Issues 등)과 연결 가능
+- **담당자 할당**: 이슈 해결을 위한 담당자 지정
+- **타임라인 추적**: 이슈 상태 변경 및 코멘트 히스토리 관리
+
+### 활용 방법
+
+1. 피드백에서 이슈 생성 또는 직접 이슈 등록
+2. 이슈 세부 정보, 우선순위, 담당자 설정
+3. 외부 이슈 트래커와 연결 (선택 사항)
+4. 이슈 진행 상황 모니터링 및 업데이트
+5. 해결 후 이슈 종료 및 피드백 제공자에게 알림 (선택 사항)
+
+## 싱글 사인온(SSO)
+
+
+
+싱글 사인온은 기업 환경에서의 인증 프로세스를 간소화하고 보안을 강화하는 기능입니다.
+
+### 주요 특징
+
+- **OAuth 지원**: 다양한 OAuth 제공자를 통한 인증 지원
+- **기업 ID 통합**: 기존 기업 ID 시스템과의 원활한 통합
+- **중앙화된 사용자 관리**: 단일 인증 시스템을 통한 사용자 접근 관리
+- **보안 강화**: 다중 인증 및 기업 보안 정책 적용 가능
+- **간소화된 로그인 경험**: 사용자를 위한 추가 계정 생성 불필요
+
+### 지원하는 SSO 제공자
+
+- Google
+- Custom (표준 OAuth 2.0 및 OpenID Connect 제공자)
+
+### 활용 방법
+
+1. 관리자 설정에서 SSO 제공자 구성
+2. 인증 파라미터 및 리디렉션 URL 설정
+3. 사용자 속성 매핑 구성
+4. SSO 로그인 활성화 및 테스트
+
+## 역할 기반 접근 제어(RBAC)
+
+
+
+역할 기반 접근 제어는 사용자의 권한을 효과적으로 관리하고 시스템 보안을 유지하는 기능입니다.
+
+### 주요 특징
+
+- **사전 정의된 역할**: 관리자, 분석가, 뷰어 등 기본 역할 제공
+- **커스텀 역할 생성**: 조직 구조에 맞는 맞춤형 역할 및 권한 설정
+- **세분화된 권한 제어**: 기능별, 데이터별 접근 권한 설정
+- **역할 할당 관리**: 사용자별 역할 할당 및 변경
+- **권한 상속**: 계층적 권한 구조 지원
+
+### 기본 제공 역할
+
+1. **시스템 관리자**: 모든 기능 및 설정에 대한 완전한 접근 권한
+2. **프로젝트 관리자**: 특정 프로젝트 내의 모든 기능 관리 권한
+3. **분석가**: 피드백 조회, 분석, 이슈 지정 권한
+4. **이슈 관리자**: 이슈 생성, 수정, 상태 변경 권한
+5. **뷰어**: 피드백 및 대시보드 조회만 가능한 제한된 권한
+
+### 활용 방법
+
+1. 관리자 패널에서 역할 관리 메뉴 접근
+2. 필요에 따라 새로운 역할 생성 또는 기존 역할 수정
+3. 사용자에게 적절한 역할 할당
+4. 역할별 권한 및 접근 범위 정기적 검토
+
+## 대시보드
+
+
+
+대시보드는 피드백 데이터를 시각화하여 중요한 인사이트를 한눈에 파악할 수 있게 해주는 기능입니다.
+
+### 주요 특징
+
+- **실시간 통계**: 피드백 수, 이슈 상태, 해결률 등 주요 지표 실시간 표시
+- **추세 분석**: 시간에 따른 피드백 및 이슈 추세 그래프
+- **이슈 분포**: 이슈별 피드백 분포 시각화
+- **감정 분석**: 피드백의 긍정/부정/중립 감정 분석 (선택 기능)
+- **커스텀 대시보드**: 사용자별 맞춤형 대시보드 구성 가능
+
+### 제공되는 차트 및 위젯
+
+1. **피드백 요약 카드**: 총 피드백 수, 신규 피드백, 처리된 피드백 등 주요 지표
+2. **시계열 그래프**: 일별/주별/월별 피드백 추세
+3. **이슈 클라우드**: 자주 사용되는 이슈 시각화
+4. **이슈 상태 도넛 차트**: 이슈 상태별 분포
+5. **최근 피드백 목록**: 최신 피드백 빠른 확인
+6. **성과 지표**: 응답 시간, 해결 시간 등의 성과 측정 지표
+
+### 활용 방법
+
+1. 대시보드 페이지 접속
+2. 기간 및 필터 설정을 통한 데이터 범위 조정
+3. 주요 지표 및 추세 분석
+4. 인사이트 기반 의사결정 및 액션 아이템 도출
+5. 필요시 상세 보고서 내보내기
+
+## 추가 기능
+
+ABC User Feedback은 위에서 설명한 주요 기능 외에도 다음과 같은 추가 기능을 제공합니다:
+
+### API 통합
+
+- RESTful API를 통한 외부 시스템 연동
+- 프로그래매틱 피드백 수집 및 관리
+
+### 웹훅
+
+- 주요 이벤트 발생 시 외부 시스템에 알림
+- 자동화된 워크플로우 구축 지원
+
+### 이미지 저장 통합
+
+- S3 호환 스토리지를 통한 사용자 제출 이미지 관리
+- 피드백에 스크린샷 및 이미지 첨부 기능
+
+### 데이터 내보내기
+
+- CSV, Excel 형식으로 피드백 데이터 내보내기
+- 맞춤형 보고서 생성
+
+### 다국어 지원
+
+- 다양한 언어로 인터페이스 제공
+- 국제적 팀을 위한 다국어 피드백 관리
+
+---
+
+이 문서는 ABC User Feedback의 주요 기능을 개괄적으로 설명합니다. 각 기능에 대한 더 자세한 사용법은 [사용자 가이드](/docs/01-user-guide/01-getting-started.md) 섹션을 참조하세요.
diff --git a/apps/docs/docs/00-introduction/_category_.json b/apps/docs/docs/00-introduction/_category_.json
new file mode 100644
index 000000000..ccd04cb9d
--- /dev/null
+++ b/apps/docs/docs/00-introduction/_category_.json
@@ -0,0 +1,4 @@
+{
+ "position": 1,
+ "label": "소개"
+}
diff --git a/apps/docs/docs/01-user-guide/01-getting-started.md b/apps/docs/docs/01-user-guide/01-getting-started.md
new file mode 100644
index 000000000..1ebb34a82
--- /dev/null
+++ b/apps/docs/docs/01-user-guide/01-getting-started.md
@@ -0,0 +1,272 @@
+---
+title: 시작하기
+description: ABC User Feedback 설치 후 초기 설정부터 첫 피드백 수집까지 시스템을 시작하는 방법을 설명합니다.
+sidebar_position: 1
+---
+
+# 시작하기
+
+ABC User Feedback을 처음 설치한 후, 시스템을 사용하기 위해서는 초기 설정이 필요합니다. 이 문서에서는 테넌트 생성부터 첫 피드백 수집까지 전체 과정을 단계별로 안내합니다.
+
+---
+
+## 초기 설정 개요
+
+ABC User Feedback을 시작하기 위해서는 다음 순서로 설정을 진행합니다:
+
+1. **테넌트 및 관리자 계정 생성**
+2. **첫 로그인 및 프로필 설정**
+3. **프로젝트 생성**
+4. **채널 생성 및 필드 설정**
+5. **API 키 발급**
+6. **첫 피드백 수집 테스트**
+
+---
+
+## 시스템 접속
+
+ABC User Feedback 설치가 필요한 경우, [Docker Hub 이미지를 사용한 설치](/docs/02-developer-guide/01-installation/01-docker-hub-images.md)를 먼저 진행하세요.
+
+설치를 완료했다면, 웹 브라우저를 통해 ABC User Feedback에 접속합니다:
+
+```
+http://localhost:3000
+```
+
+> 포트나 도메인을 변경한 경우, 설정에 맞는 주소를 입력하세요.
+
+---
+
+## 테넌트 및 관리자 계정 생성
+
+처음 접속하면 **테넌트 생성 및 관리자 계정 등록** 화면이 표시됩니다.
+
+🎥 **영상**: `테넌트 및 관리자 계정 생성 과정 영상`
+
+### Step 1: 테넌트 정보 입력
+
+테넌트 이름의 이름을 설정합니다.
+
+테넌트 이름을 입력한 후 **Next** 버튼을 클릭합니다.
+
+> 이 테넌트 이름은 로그인 UI에 표시됩니다.
+
+### Step 2: 관리자 계정 생성
+
+시스템의 첫 관리자 계정을 생성합니다.
+
+1. 관리자 계정의 이메일을 입력한 후 **Request Code** 버튼을 클릭합니다.
+2. 이메일함에서 인증 코드를 확인하여 입력합니다
+3. **Verify** 버튼을 클릭합니다
+4. 인증이 완료되면 비밀번호를 설정합니다.
+
+:::info 비밀번호 요구사항
+
+- **8자 이상**
+- **영문자 포함** (A–Z, a–z)
+- **특수문자 포함** (예: `@`, `#`, `!`)
+- **연속 문자 금지** (예: `aa`, `11`)
+
+> **예시**: ✅ `MyCompany2024!`, ❌ `12345678`, `password`
+
+:::
+
+테넌트와 관리자 계정 생성이 완료되면 확인 화면이 표시됩니다.
+
+**다음 단계**: **확인** 버튼을 클릭하여 로그인 화면으로 이동합니다.
+
+---
+
+## 로그인하기
+
+생성한 관리자 계정으로 첫 로그인을 진행합니다.
+
+1. **Email**: 앞에서 등록한 관리자 이메일을 입력합니다
+2. **Password**: 설정한 비밀번호를 입력합니다
+3. **Sign In** 버튼을 클릭합니다
+
+---
+
+## 첫 프로젝트 생성
+
+로그인하면 프로젝트 생성 마법사가 자동으로 시작됩니다.
+
+### 시스템 구조 이해
+
+ABC User Feedback은 다음과 같은 계층 구조를 가집니다:
+
+```
+테넌트 (조직)
+ └── 프로젝트 (제품/서비스 단위)
+ └── 채널 (피드백 수집 경로)
+```
+
+### Step 1: 프로젝트 기본 정보
+
+| 항목 | 설명 | 예시 |
+| --------------- | ----------------------------------- | -------------------------- |
+| **Name** | 프로젝트 이름 | `모바일 앱`, `웹 서비스` |
+| **Description** | 프로젝트 설명 (선택) | `고객 피드백 수집 및 분석` |
+| **Time Zone** | 시간 기준 (대시보드 및 통계에 영향) | `Asia/Seoul` |
+
+**완료 후**: 정보를 입력한 후 **Next** 버튼을 클릭합니다.
+
+### Step 2: 팀 멤버 초대 (선택)
+
+이 단계에서는 프로젝트에 팀 멤버를 초대할 수 있습니다. 지금 건너뛰어도 나중에 언제든 추가할 수 있습니다.
+
+> 팀 멤버 관리에 대한 자세한 내용은 [프로젝트 관리](./02-project-management.md) 문서를 참고하세요.
+
+### Step 3: API 키 생성 (선택)
+
+외부 시스템과 연동할 API 키를 미리 생성할 수 있습니다.
+
+> API Key에 대해 자세한 내용은 [API Key 설정](./07-settings/02-api-key-management.md) 문서를 참고하세요.
+
+### 프로젝트 생성 완료
+
+모든 정보를 입력하면 프로젝트 생성이 완료됩니다.
+
+**다음 단계 선택**:
+
+- **Create Channel**: 바로 채널을 생성해 피드백 수집 시작
+- **Skip for Now**: 나중에 채널 생성
+
+---
+
+## 첫 채널 생성
+
+프로젝트 생성 후, 피드백을 실제로 수집하려면 **채널**을 생성해야 합니다.
+
+### 채널 개념 이해
+
+채널은 **피드백 수집 경로**를 의미합니다:
+
+- 웹사이트 문의폼
+- 모바일 앱 내 피드백
+- 고객센터 VOC
+- 설문조사 응답
+
+### Step 1: 채널 기본 정보
+
+| 항목 | 설명 | 예시 |
+| ---------------------------------- | --------------------------------------------- | ---------------------- |
+| **Name** | 채널 이름 | `웹 피드백`, `앱 리뷰` |
+| **Description** | 채널 설명 (선택) | `웹사이트 사용자 의견` |
+| **Maximum Feedback Search Period** | 피드백 검색 가능 기간 (30/90/180/365일, 전체) | `90일` |
+
+**완료 후**: 정보를 입력한 후 **Next** 버튼을 클릭합니다.
+
+### Step 2: 필드 설정
+
+채널에서 수집할 데이터 구조를 정의합니다.
+
+#### 기본 제공 필드
+
+시스템에서 자동으로 생성되는 필드들:
+
+| 필드명 | 형식 | 속성 | 설명 |
+| ----------- | ----------- | --------- | ---------------- |
+| `id` | number | Read Only | 피드백 고유 ID |
+| `createdAt` | date | Read Only | 생성 시간 |
+| `updatedAt` | date | Read Only | 수정 시간 |
+| `issues` | multiSelect | Editable | 연결된 이슈 목록 |
+
+#### 커스텀 필드 추가
+
+실제 피드백 수집을 위해 커스텀 필드를 추가합니다:
+
+1. **Add Field** 버튼 클릭
+2. 필드 정보 입력:
+
+| 항목 | 설명 | 예시 |
+| ---------------- | --------------------------------------------------------- | -------------------------------------------------------------------------- |
+| **Key** | 고유 식별자 (영문 대/소문자, 숫자, `_`) | `message`, `rating` |
+| **Display Name** | UI에 표시될 이름 | `피드백 내용` |
+| **Format** | 데이터 형식 | `text`,`keyword`,`number`,`date`,`select`,`multiSelect`,`images`,`aiField` |
+| **Property** | `Editable` (UI에서 수정 가능) / `Read Only` (수정 불가능) | `Editable` |
+| **Status** | `Active` / `Inactive` | `Active` |
+
+> 필드 정보에 대해 자세한 내용은 [필드 설정](./03-channel-management.md) 문서를 참고하세요.
+
+#### 권장 기본 필드 구성
+
+첫 채널에는 다음 필드들을 추가하는 것을 권장합니다:
+
+| Key | Display Name | Format | 설명 |
+| ----------- | ------------- | ------- | ------------- |
+| `message` | 피드백 내용 | text | 사용자 피드백 |
+| `userEmail` | 사용자 이메일 | keyword | 연락처 (선택) |
+| `rating` | 만족도 | number | 1-5점 평가 |
+
+### 필드 미리보기
+
+필드 설정을 완료한 후 **Preview** 버튼으로 피드백 입력 화면을 미리 확인할 수 있습니다.
+
+**완료 후**: **Complete** 버튼으로 채널 생성을 완료합니다.
+
+### 채널 생성 완료
+
+**다음 단계**: **Start** 버튼을 클릭하여 피드백 수집을 시작합니다.
+
+---
+
+## 첫 피드백 수집 테스트
+
+채널 생성이 완료되면 실제로 피드백을 수집해볼 수 있습니다.
+
+### API를 통한 피드백 등록
+
+생성한 API 키를 사용해 첫 피드백을 등록해봅시다.
+
+#### API 요청 예시
+
+```bash
+curl -X POST http://localhost:4000/api/projects/1/channels/1/feedbacks \
+ -H "Content-Type: application/json" \
+ -H "X-API-KEY: YOUR_API_KEY" \
+ -d '{
+ "message": "앱 실행 속도가 느려요",
+ "userEmail": "user@example.com",
+ "rating": 3
+ }'
+```
+
+> `YOUR_API_KEY`는 앞에서 생성한 실제 API 키로 대체하세요.
+
+#### 성공 응답 확인
+
+API 요청이 성공하면 다음과 같은 응답을 받습니다:
+
+```json
+{
+ "id": 1
+}
+```
+
+### 피드백 확인하기
+
+등록한 피드백을 웹 인터페이스에서 확인해봅시다.
+
+1. 상단 메뉴에서 **Feedback** 탭 클릭
+2. 피드백 목록에서 등록된 피드백 확인
+3. 피드백을 클릭하여 상세 정보 확인
+
+### 첫 이슈 생성
+
+피드백을 바탕으로 이슈를 생성해봅시다.
+
+1. 피드백 상세 화면에서 **Issue** 섹션의 **`+` 버튼** 클릭
+2. 이슈 이름 입력 후 **Enter** 키 또는 **Create** 버튼 클릭
+3. 생성된 이슈 확인
+
+## 다음 단계 안내
+
+기본 설정과 첫 피드백 수집이 완료되었습니다!
+
+## 관련 문서
+
+- [프로젝트 관리](./02-project-management.md) - 프로젝트 설정 및 팀 관리
+- [채널 관리](./03-channel-management.md) - 채널 및 필드 고급 설정
+- [피드백 관리](./04-feedback-management.md) - 피드백 분석 및 관리
+- [API 연동](/docs/02-developer-guide/02-api-integration.md) - API 사용법 상세 가이드
diff --git a/apps/docs/docs/01-user-guide/02-project-management.md b/apps/docs/docs/01-user-guide/02-project-management.md
new file mode 100644
index 000000000..bb85f31b9
--- /dev/null
+++ b/apps/docs/docs/01-user-guide/02-project-management.md
@@ -0,0 +1,329 @@
+---
+title: 프로젝트
+description: ABC User Feedback에서 프로젝트를 생성, 설정, 관리하고 팀 멤버의 역할과 권한을 설정하는 방법을 설명합니다.
+sidebar_position: 2
+---
+
+# 프로젝트
+
+ABC User Feedback에서 **프로젝트**는 피드백을 수집하고 분석하는 가장 기본적인 단위입니다. 프로젝트 생성부터 팀 관리, 권한 설정에 대한 기능을 다룹니다.
+
+---
+
+## 프로젝트 개요
+
+프로젝트는 다음 계층 구조를 가집니다:
+
+```
+테넌트
+ └── 프로젝트 (여러 개 가능)
+ ├── 채널 (여러 개 가능)
+ ├── 멤버 및 역할
+ ├── 이슈 트래커 연동
+ ├── 웹훅 연동
+ ├── AI 기능
+ └── API 키
+```
+
+각 프로젝트는 여러 채널을 포함하는 관리 단위로, 팀 멤버와 역할, 이슈 트래커 연동, 외부 시스템 연동 등을 독립적으로 설정하고 운영할 수 있습니다.
+
+---
+
+## 프로젝트 생성하기
+
+### 접근 권한
+
+프로젝트 생성은 **Super 유저**만 가능합니다. 일반 사용자는 기존 프로젝트에 멤버로 초대받아 참여할 수 있습니다.
+
+> Super 유저 권한이 필요한 경우 시스템 관리자에게 문의하시기 바랍니다.
+
+### 접근 방법
+
+새 프로젝트를 생성하는 방법은 두 가지입니다:
+
+1. **첫 로그인 시**: 프로젝트 생성 마법사가 자동으로 시작됩니다
+2. **추가 프로젝트**: 좌측 사이드바 상단의 **Create Project** 버튼을 클릭합니다
+
+### Step 1: 프로젝트 기본 정보
+
+프로젝트 생성 시 다음 정보를 입력합니다:
+
+| 항목 | 설명 | 예시 |
+| --------------- | ------------------------------------------------------ | -------------------------------------- |
+| **Name** | 프로젝트의 이름 (필수) | `모바일 앱`, `고객센터`, `Beta 서비스` |
+| **Description** | 간단한 설명 (선택) | `iOS/Android 앱 사용자 피드백 수집` |
+| **Time Zone** | 피드백 시간 기준 및 리포트 기준 시간대로 사용됨 (필수) | `Asia/Seoul` |
+
+> 시간대는 **대시보드 통계**에 영향을 줍니다.
+
+**완료 후**: 모든 정보를 입력한 뒤 **Next** 버튼을 클릭합니다.
+
+### Step 2: 팀 멤버 추가 (선택)
+
+이 단계는 **건너뛸 수 있습니다**. 나중에 프로젝트 설정에서 언제든 추가 가능합니다.
+
+#### 멤버 추가 방법
+
+1. 우측 상단의 **Register Member** 버튼을 클릭합니다
+2. 다음 항목을 입력합니다:
+ - **Email**: 시스템에 등록된 사용자 선택
+ - **Role**: Admin, Editor, Viewer 중 선택
+
+> 커스텀 역할을 사용하고 싶다면 **Role Management** 버튼을 눌러 추가 설정이 가능합니다.
+
+**완료 후**: 멤버 목록을 확인하고 **Next**를 클릭합니다.
+
+### Step 3: API 키 발급 (선택)
+
+API 키는 외부 시스템에서 피드백을 수집할 때 사용됩니다. 설정 메뉴에서 나중에 발급 가능하므로 지금 생략해도 됩니다.
+
+#### 키 생성 방법
+
+1. 우측 상단 **Create API Key** 버튼을 클릭합니다
+2. 키가 자동 생성되어 목록에 표시됩니다
+3. 생성된 키를 복사해 안전한 장소에 저장합니다
+
+### 프로젝트 생성 완료
+
+모든 단계를 완료하면 **요약 화면**이 나타납니다:
+
+- 프로젝트 정보: 이름, 설명, 시간대
+- 멤버 목록
+- 생성된 API 키
+- 역할 설정 상태
+
+#### 다음 단계
+
+- 바로 채널을 만들고 피드백 수집을 시작하려면 **Create Channel** 버튼을 클릭합니다
+- 또는 **Later** 버튼으로 나중에 생성할 수 있습니다
+
+---
+
+## 프로젝트 설정 관리
+
+### 접근 방법
+
+프로젝트 설정을 변경하려면:
+
+1. 상단 메뉴에서 **Settings** 클릭
+2. 좌측 메뉴에서 **Project Setting** 선택
+
+### 기본 정보 수정
+
+다음 항목들을 언제든 수정할 수 있습니다:
+
+| 항목 | 설명 | 주의사항 |
+| --------------- | --------------------------------------- | ---------------------------------------- |
+| **Name** | 프로젝트 이름 | 팀원들에게 표시되는 이름 |
+| **Description** | 설명 (선택사항) | 프로젝트 목적 명시 |
+| **Time Zone** | 통계 및 시간 관련 데이터 기준 시각 설정 | 변경 시 기존 데이터에는 영향을 주지 않음 |
+
+**저장 방법**: 수정 후 우측 상단의 **Save** 버튼을 클릭합니다.
+
+### 시간대 변경 시 주의사항
+
+- 기존 피드백/이슈의 시간 정보에는 영향을 주지 않습니다
+- 변경 후 대시보드 통계에 데이터 불일치가 발생할 수 있습니다.
+
+### 프로젝트 삭제
+
+#### 삭제 절차
+
+프로젝트를 완전히 삭제하려면:
+
+1. Project Setting 화면 하단의 **Delete Project** 버튼을 클릭합니다
+2. 확인 팝업에서 프로젝트 이름을 정확히 입력합니다
+3. **Delete** 버튼으로 최종 확정합니다
+
+#### 삭제 시 유의사항
+
+- 해당 프로젝트 내 **모든 피드백, 이슈, 설정이 영구 삭제**됩니다
+- **되돌릴 수 없으므로** 사전 백업 또는 Export를 권장합니다
+- 삭제 시 연결된 채널 및 API 키도 함께 제거됩니다
+
+---
+
+## 멤버 관리
+
+### 멤버 목록 확인
+
+현재 프로젝트에 참여한 멤버를 확인하려면:
+
+1. 상단 메뉴에서 **Settings** 클릭
+2. 좌측 메뉴에서 **Member Management** 선택
+
+멤버 목록에는 다음 정보가 표시됩니다:
+
+| 항목 | 설명 |
+| ---------- | ------------------------- |
+| Email | 계정 이메일 |
+| Name | 사용자 이름 (프로필 기준) |
+| Department | 소속 부서 |
+| Role | 프로젝트 내 역할 |
+| Joined | 프로젝트 참여일 |
+
+### 새 멤버 초대
+
+#### 초대 절차
+
+1. **Register Member** 버튼을 클릭합니다
+2. 초대 정보를 입력합니다:
+
+| 항목 | 설명 |
+| --------- | -------------------------------------- |
+| **Email** | 초대할 사용자의 이메일 |
+| **Role** | 부여할 역할 (Admin, Editor, Viewer 등) |
+
+3. **Invite** 버튼을 클릭하여 초대를 완료합니다
+
+### 멤버 정보 수정
+
+기존 멤버의 정보를 수정하려면:
+
+1. 멤버 목록에서 수정하려는 멤버 행을 클릭합니다
+2. 팝업에서 다음 항목을 Role을 수정할 수 있습니다:
+3. **Save** 버튼으로 변경사항을 저장합니다
+
+### 멤버 제거
+
+멤버를 프로젝트에서 제거하려면:
+
+1. 멤버 수정 팝업에서 하단의 **삭제** 버튼을 클릭합니다
+2. 확인 메시지에서 **확인**을 클릭합니다
+
+> 멤버를 제거해도 해당 사용자가 작성한 피드백/이슈 기록은 그대로 유지되며, 프로젝트 접근 권한만 제거됩니다.
+
+---
+
+## 역할 및 권한 관리
+
+### 기본 제공 역할
+
+시스템에서는 다음 기본 역할을 제공합니다:
+
+| 역할 | 권한 요약 |
+| ---------- | ---------------------------------------------- |
+| **Admin** | 모든 기능 접근 가능. 프로젝트 삭제 포함 |
+| **Editor** | 피드백/이슈 생성, 수정, 삭제 가능. 설정은 불가 |
+| **Viewer** | 조회만 가능. 수정, 삭제, 설정 접근 불가 |
+
+### 커스텀 역할 생성
+
+더 세분화된 권한이 필요한 경우 커스텀 역할을 생성할 수 있습니다:
+
+1. Member Management 화면에서 **Role Management** 링크를 클릭합니다
+2. **Create Role** 버튼을 클릭합니다
+3. 역할 이름과와 권한을 입력합니다:
+
+### 권한 설정
+
+각 역할에 대해 다음과 같은 기능별 권한을 설정할 수 있습니다:
+
+#### 피드백 권한
+
+| 권한 항목 | 설명 |
+| ----------------------------------- | ----------------------- |
+| **Download Feedback** | 피드백 데이터 다운로드 |
+| **Edit Feedback** | 피드백 편집 |
+| **Delete Feedback** | 피드백 삭제 |
+| **Attach/Detach Issue in Feedback** | 피드백과 이슈 연결/해제 |
+
+#### 이슈 권한
+
+| 권한 항목 | 설명 |
+| ---------------- | --------- |
+| **Create Issue** | 이슈 생성 |
+| **Edit Issue** | 이슈 편집 |
+| **Delete Issue** | 이슈 삭제 |
+
+#### 프로젝트 관리
+
+| 권한 항목 | 설명 |
+| --------------------- | ------------------ |
+| **Edit Project Info** | 프로젝트 정보 편집 |
+| **Delete Project** | 프로젝트 삭제 |
+
+#### 멤버 관리
+
+| 권한 항목 | 설명 |
+| ------------------------- | ------------------ |
+| **Read Project Member** | 프로젝트 멤버 조회 |
+| **Create Project Member** | 프로젝트 멤버 초대 |
+| **Edit Project Member** | 프로젝트 멤버 편집 |
+| **Delete Project Member** | 프로젝트 멤버 삭제 |
+
+#### 역할 관리
+
+| 권한 항목 | 설명 |
+| ----------------------- | ------------------ |
+| **Read Project Role** | 프로젝트 역할 조회 |
+| **Create Project Role** | 프로젝트 역할 생성 |
+| **Edit Project Role** | 프로젝트 역할 편집 |
+| **Delete Project Role** | 프로젝트 역할 삭제 |
+
+#### API 키 관리
+
+| 권한 항목 | 설명 |
+| ------------------ | ----------- |
+| **Read API Key** | API 키 조회 |
+| **Create API Key** | API 키 생성 |
+| **Edit API Key** | API 키 편집 |
+| **Delete API Key** | API 키 삭제 |
+
+#### 이슈 트래커
+
+| 권한 항목 | 설명 |
+| ---------------------- | ---------------- |
+| **Read Issue Tracker** | 이슈 트래커 조회 |
+| **Edit Issue Tracker** | 이슈 트래커 설정 |
+
+#### 웹훅 관리
+
+| 권한 항목 | 설명 |
+| ------------------ | --------- |
+| **Read Webhook** | 웹훅 조회 |
+| **Create Webhook** | 웹훅 생성 |
+| **Edit Webhook** | 웹훅 편집 |
+| **Delete Webhook** | 웹훅 삭제 |
+
+#### AI 및 채널 설정
+
+| 권한 항목 | 설명 |
+| ---------------------- | ------------ |
+| **Read Generative AI** | AI 설정 조회 |
+| **Edit Generative AI** | AI 설정 편집 |
+
+#### 채널 관련 설정
+
+| 권한 항목 | 설명 |
+| ---------------------- | ---------------- |
+| **Edit Channel Info** | 채널 정보 편집 |
+| **Delete Channel** | 채널 삭제 |
+| **Read Field** | 필드 조회 |
+| **Edit Field** | 필드 편집 |
+| **Read Image Setting** | 이미지 설정 조회 |
+| **Edit Image Setting** | 이미지 설정 편집 |
+| **Create Channel** | 새로운 채널 생성 |
+
+### 권한 설정 팁
+
+#### 보안 모범 사례
+
+- **최소 권한 원칙**: 업무에 필요한 최소한의 권한만 부여
+- **정기 검토**: 팀 변경이나 퇴사자 발생 시 권한 점검
+- **Admin 역할 제한**: 관리자는 가능한 한 적은 수로 유지
+
+### 역할 수정 및 삭제
+
+- **수정**: 역할 목록에서 원하는 항목을 클릭하여 이름과 권한을 수정할 수 있습니다
+- **삭제**: 사용 중이지 않은 역할은 **Delete** 버튼으로 삭제 가능합니다
+
+> **주의**: Admin 역할은 항상 하나 이상 존재해야 하며, 삭제할 수 없습니다.
+
+---
+
+## 관련 문서
+
+- [채널 관리](./03-channel-management.md) - 채널 생성 및 필드 설정
+- [피드백 관리](./04-feedback-management.md) - 피드백 수집 및 분석
+- [API 연동](/docs/02-developer-guide/02-api-integration.md) - API 키 사용법
diff --git a/apps/docs/docs/01-user-guide/03-channel-management.md b/apps/docs/docs/01-user-guide/03-channel-management.md
new file mode 100644
index 000000000..8e32763a3
--- /dev/null
+++ b/apps/docs/docs/01-user-guide/03-channel-management.md
@@ -0,0 +1,220 @@
+---
+title: 채널
+description: ABC User Feedback에서 피드백 수집 채널을 생성, 설정, 관리하고 커스텀 필드 및 이미지 설정을 다루는 방법을 설명합니다.
+sidebar_position: 3
+---
+
+# 채널
+
+**채널(Channel)** 은 피드백을 수집하는 경로 또는 목적에 따라 구분되는 단위입니다. 각 채널은 독립된 필드 구조, 이미지 설정, AI 기능을 가져 다양한 피드백 수집 시나리오에 맞게 설정할 수 있습니다.
+
+---
+
+## 채널 개요
+
+### 채널의 역할
+
+채널은 다음 역할을 합니다:
+
+- **피드백 수집 경로 구분**: 웹, 앱, 고객센터, 설문조사 등
+- **데이터 구조 정의**: 채널별 고유한 필드 설정
+- **수집 정책 관리**: 이미지 허용, 검색 기간, 보안 설정 등
+- **분석 단위 제공**: 채널별 독립적인 통계 및 분석
+
+---
+
+## 채널 생성하기
+
+### 접근 방법
+
+새 채널을 생성하는 방법은 다음과 같습니다:
+
+1. **프로젝트 생성 직후**: 프로젝트 완료 화면에서 **Create Channel** 버튼 클릭
+2. **추가 채널 생성**: **Settings > Channel List**에서 **Create Channel** 버튼 클릭
+
+### Step 1: 채널 기본 정보
+
+| 항목 | 설명 | 예시 |
+| ---------------------------------- | ---------------------------------------------------- | ---------------------------------- |
+| **Name** | 채널명 (필수) | `웹 피드백`, `앱 리뷰`, `고객센터` |
+| **Description** | 채널 간단한 설명 (선택) | `웹사이트 사용자 의견 수집` |
+| **Maximum Feedback Search Period** | 피드백 검색 가능한 최대 기간 (30/90/180/365일, 전체) | `90일` |
+
+#### 피드백 검색 가능한 최대 기간 설정 시 주의사항
+
+- **영향 범위**: 피드백 다운로드 기능에 직접적으로 영향을 줍니다
+- **다운로드 동작**: 설정된 검색 기간 내의 모든 피드백이 다운로드 대상이 됩니다
+- **성능 테스트**: 일일 피드백 수가 많은 경우, 다양한 기간으로 테스트하여 최적값을 찾는 것을 권장합니다
+- **점진적 조정**: 초기에는 짧은 기간으로 시작하여 필요에 따라 점진적으로 늘려가는 것이 안전합니다
+
+**완료 후**: 정보를 입력한 후 **Next** 버튼을 클릭합니다.
+
+### Step 2: 필드 설정
+
+채널에서 수집할 데이터 구조를 정의합니다. 이는 API 요청 구조와 피드백 테이블 구성에 직접적으로 영향을 줍니다.
+
+#### 기본 시스템 필드
+
+모든 채널에 자동으로 포함되는 필드들:
+
+| Key | Format | 속성 | 설명 |
+| ----------- | ----------- | --------- | ---------------- |
+| `id` | number | Read Only | 피드백 고유 ID |
+| `createdAt` | date | Read Only | 피드백 생성 시각 |
+| `updatedAt` | date | Read Only | 피드백 수정 시각 |
+| `issues` | multiSelect | Editable | 연결된 이슈 목록 |
+
+> 이 필드들은 삭제하거나 주요 속성을 수정할 수 없습니다.
+
+#### 커스텀 필드 추가
+
+실제 비즈니스 요구사항에 맞는 필드를 추가합니다.
+
+1. **Add Field** 버튼을 클릭합니다
+2. 필드 정보를 입력합니다
+
+| 항목 | 설명 | 예시 |
+| ---------------- | -------------------------------------------------- | ------------------------------ |
+| **Key** | 고유 식별자 (영문 대/소문자, 숫자, `_`) | `message`, `rating` |
+| **Display Name** | UI에 표시될 이름 | `피드백 내용`, `사용자 이메일` |
+| **Format** | 데이터 형식 (아래 표 참고) | `text`, `keyword`, `number` |
+| **Property** | `Editable` (입력 가능) / `Read Only` (조회만 가능) | `Editable` |
+| **Status** | `Active` / `Inactive` | `Active` |
+| **Description** | 팀원이 이해하기 쉬운 설명 (선택) | `사용자가 입력한 피드백 내용` |
+
+### 필드 Format 종류
+
+| Format | 설명 | 사용 예시 | API 예시 |
+| ------------- | ----------------- | ---------------------------- | ------------------------ |
+| `text` | 자유 텍스트 입력 | 피드백 내용, 상세 설명 | `"앱이 자꾸 멈춰요"` |
+| `keyword` | 짧은 키워드/태그 | 버전 정보, 페이지명 | `"v1.2.3"` |
+| `number` | 숫자 | 평점, 나이, 사용 시간 | `5` |
+| `date` | 날짜 | 발생일, 만료일 | `"2024-03-01T00:00:00Z"` |
+| `select` | 단일 선택 | 카테고리, 우선순위 | `"기능 요청"` |
+| `multiSelect` | 다중 선택 | 태그, 관련 기능 | `["버그", "UI"]` |
+| `images` | 이미지 URL 배열 | 스크린샷, 첨부 파일 | `["https://..."]` |
+| `aiField` | AI 분석 결과 필드 | 감정 분석, 요약, 키워드 추출 | `"긍정"` |
+
+> **images 형식 관련**: 자세한 이미지 설정 방법은 [이미지 설정](/docs/01-user-guide/07-settings/06-image-setting.md) 문서를 참고하세요.
+>
+> **aiField 형식 관련**: AI 필드 설정 및 템플릿 구성 방법은 [AI 설정](/docs/01-user-guide/07-settings/05-ai-setting.md) 문서를 참고하세요.
+
+### 필드 구성 예시
+
+#### 웹 피드백 채널
+
+| Key | Display Name | Format | 용도 |
+| ------------- | ------------ | ------- | ---------------------- |
+| `message` | 피드백 내용 | text | 사용자 의견 |
+| `userEmail` | 이메일 | keyword | 연락처 (선택) |
+| `pageUrl` | 페이지 URL | keyword | 피드백 발생 위치 |
+| `category` | 카테고리 | select | 버그/기능요청/개선사항 |
+| `priority` | 우선순위 | select | 높음/보통/낮음 |
+| `screenshots` | 스크린샷 | images | 문제 상황 캡처 |
+
+#### 모바일 앱 리뷰 채널
+
+| Key | Display Name | Format | 용도 |
+| ------------ | ------------ | ------- | ---------------- |
+| `message` | 리뷰 내용 | text | 사용자 리뷰 |
+| `rating` | 평점 | number | 1-5점 평가 |
+| `appVersion` | 앱 버전 | keyword | 버그 추적용 |
+| `deviceType` | 기기 타입 | select | iOS/Android |
+| `crashLogs` | 크래시 로그 | text | 기술적 오류 정보 |
+
+### 필드 미리보기
+
+필드 설정을 완료한 후 **Preview** 버튼으로 실제 피드백 입력 화면을 미리 확인할 수 있습니다.
+
+이 미리보기는 API 요청 시 필요한 필드 구조와 동일합니다.
+
+**완료 후**: **Next** 버튼으로 다음 단계로 진행합니다.
+
+---
+
+## 필드 관리
+
+### 필드 수정
+
+기존 필드를 수정하려면 필드 목록에서 수정하려는 필드 행을 클릭하여 정보를 수정합니다.
+
+> **주의**: `Key`와 `Format`은 생성 후 수정할 수 없습니다. 데이터 일관성을 위해 제한됩니다.
+
+### 필드 삭제
+
+피드백 데이터의 무결성과 일관성을 보장하기 위해 **필드 삭제 기능은 제공하지 않습니다**.
+
+#### 삭제 대신 권장하는 방법
+
+1. **Inactive 상태로 변경**: 필드를 비활성화하여 새로운 피드백 수집에서 제외
+2. **데이터 보존**: 기존에 수집된 피드백 데이터는 그대로 유지
+3. **필터링 활용**: 필드 목록에서 Active 필드만 표시하여 관리 효율성 확보
+
+#### 완전 제거가 필요한 경우
+
+필드를 완전히 제거해야 하는 상황에서는:
+
+- 채널 전체를 삭제하고 새로 생성하는 방법을 고려
+- 데이터 Export 후 새 구조로 마이그레이션
+- 개발팀과 상의하여 데이터베이스 레벨에서 처리
+
+### 필드 상태 관리
+
+#### Active / Inactive 전환
+
+- **Active**: 피드백 수집 시 사용되는 필드
+- **Inactive**: 일시적으로 비활성화된 필드 (데이터는 보존)
+
+#### 필터링 옵션
+
+상단 컨트롤로 다음 조건으로 필드를 필터링할 수 있습니다:
+
+- **Status**: `Active` / `Inactive`
+- **Property**: `Editable` / `Read Only`
+
+---
+
+## 채널 정보 관리
+
+### 채널 기본 정보 수정
+
+생성된 채널의 기본 정보를 수정할 수 있습니다.
+
+#### 접근 방법
+
+1. **Settings > Channel List > [채널 선택]**
+2. **Channel Information** 탭 클릭
+
+#### 수정 가능한 항목
+
+| 항목 | 수정 가능 여부 | 주의사항 |
+| ---------------------------------- | -------------- | ------------------------ |
+| **Channel ID** | ❌ 불가능 | 시스템 내부 식별자 |
+| **Channel Name** | ✅ 가능 | 팀원들에게 표시되는 이름 |
+| **Description** | ✅ 가능 | 채널 목적 명시 |
+| **Maximum Feedback Search Period** | ✅ 가능 | 성능에 영향을 줄 수 있음 |
+
+### 채널 삭제
+
+더 이상 사용하지 않는 채널을 삭제할 수 있습니다.
+
+#### 삭제 절차
+
+1. Channel Information 화면 하단의 **Delete Channel** 버튼 클릭
+2. 확인 팝업에서 채널 이름을 정확히 입력
+3. **Delete** 버튼으로 최종 확정
+
+#### 삭제 시 유의사항
+
+- 해당 채널의 **모든 피드백 데이터가 영구 삭제**됩니다
+- **되돌릴 수 없으므로** 사전 백업 또는 Export를 권장합니다
+- 관련된 API 키 설정도 함께 확인이 필요합니다
+
+---
+
+## 관련 문서
+
+- [프로젝트 관리](./02-project-management.md) - 프로젝트 설정 및 권한 관리
+- [피드백 관리](./04-feedback-management.md) - 수집된 피드백 분석 및 활용
+- [API 연동](/docs/02-developer-guide/02-api-integration.md) - 외부 시스템과의 연동 방법
+- [AI 연동](/docs/01-user-guide/07-settings/05-ai-setting.md) - AI 기능 설정
diff --git a/apps/docs/docs/01-user-guide/04-feedback-management.md b/apps/docs/docs/01-user-guide/04-feedback-management.md
new file mode 100644
index 000000000..d8e9eed08
--- /dev/null
+++ b/apps/docs/docs/01-user-guide/04-feedback-management.md
@@ -0,0 +1,328 @@
+---
+title: 피드백
+description: ABC User Feedback에서 피드백을 생성, 조회, 분석 및 관리하는 방법을 설명합니다.
+sidebar_position: 4
+---
+
+# 피드백
+
+피드백은 ABC User Feedback의 핵심 데이터입니다. 이 문서에서는 피드백 생성부터 분석, 관리까지 피드백과 관련된 모든 기능을 다룹니다.
+
+---
+
+## 피드백 생성
+
+피드백은 주로 외부 시스템(웹사이트, 모바일 앱, API 연동)으로 생성되지만, 관리자가 직접 생성할 수도 있습니다.
+
+### API를 통한 피드백 생성
+
+가장 일반적인 피드백 생성 방법입니다.
+
+#### 기본 API 요청 구조
+
+```bash
+curl -X POST http://your-domain.com/api/v1/projects/{projectId}/channels/{channelId}/feedbacks \
+ -H "Content-Type: application/json" \
+ -H "X-API-KEY: YOUR_API_KEY" \
+ -d '{
+ "message": "사용자 피드백 내용",
+ "userEmail": "user@example.com",
+ "category": "버그 신고"
+ }'
+```
+
+#### 채널 필드에 따른 요청 예시
+
+각 채널의 필드 설정에 따라 요청 구조가 달라집니다:
+
+**웹 피드백 채널 예시**:
+
+```json
+{
+ "message": "로그인 버튼이 작동하지 않습니다",
+ "userEmail": "user@company.com",
+ "pageUrl": "https://example.com/login",
+ "category": "버그",
+ "priority": "높음",
+ "browserInfo": "Chrome 119.0.0"
+}
+```
+
+**모바일 앱 채널 예시**:
+
+```json
+{
+ "message": "앱이 자주 멈춰요",
+ "rating": 2,
+ "appVersion": "v2.1.3",
+ "deviceType": "iOS",
+ "crashLogs": "Exception in thread main..."
+}
+```
+
+#### 이미지가 포함된 피드백
+
+이미지 URL 방식을 사용하는 경우:
+
+```json
+{
+ "message": "화면이 깨져서 보입니다",
+ "userEmail": "user@example.com",
+ "images": [
+ "https://cdn.example.com/screenshot1.png",
+ "https://cdn.example.com/screenshot2.png"
+ ]
+}
+```
+
+### 피드백 생성 확인
+
+생성된 피드백은 즉시 피드백 목록에 표시됩니다.
+
+---
+
+## 피드백 목록 접근
+
+생성된 피드백들을 확인하고 관리하기 위해 피드백 목록에 접근합니다.
+
+### 접근 방법
+
+1. 좌측 사이드바에서 원하는 **프로젝트**를 선택합니다
+2. 하단 채널 목록에서 원하는 **채널**을 클릭합니다
+3. 상단 메뉴에서 **Feedback** 탭을 선택합니다
+
+### 피드백 테이블 구성
+
+피드백 목록은 테이블 형태로 표시되며, 다음과 같은 기본 구조를 가집니다:
+
+| 컬럼 유형 | 설명 | 예시 |
+| --------------- | -------------------------- | ---------------------------- |
+| **디폴트 컬럼** | 모든 채널에 공통으로 표시 | ID, Created, Updated, Issue |
+| **커스텀 컬럼** | 채널 필드 설정에 따라 표시 | Message, UserEmail, Category |
+
+---
+
+## 피드백 필터링/정렬/뷰 옵션
+
+대량의 피드백 데이터에서 원하는 정보를 빠르게 찾기 위한 다양한 도구들을 제공합니다.
+
+### 날짜 필터링
+
+상단의 **Date** 버튼으로 조회 기간을 설정할 수 있습니다.
+
+#### 제공되는 기간 옵션
+
+| 옵션 | 설명 | 사용 사례 |
+| --------------- | ----------------------- | ---------------- |
+| **오늘** | 당일 등록된 피드백 | 실시간 모니터링 |
+| **어제** | 전일 피드백 | 일일 리뷰 |
+| **지난 7일** | 최근 1주일 데이터 | 주간 분석 |
+| **지난 30일** | 최근 1개월 데이터 | 월간 트렌드 파악 |
+| **사용자 정의** | 시작일-종료일 직접 설정 | 특정 기간 분석 |
+
+### 고급 필터
+
+**Filter** 버튼을 클릭하면 다양한 조건으로 피드백을 필터링할 수 있습니다.
+
+#### 필터 구조
+
+```
+Where: 첫 번째 조건
+And: 모든 조건을 만족하는 피드백
+Or: 하나라도 만족하는 피드백
+```
+
+> **주의**: `And`와 `Or`는 한 번에 혼합 사용할 수 없습니다.
+
+#### 필드별 필터 옵션
+
+| 필드 유형 | 사용 가능한 연산자 | 예시 |
+| --------------- | ------------------------------------ | ------------------------- |
+| **text** | Contains (부분 일치) | message contains "버그" |
+| **keyword** | Is (완전 일치) | category is "기능 요청" |
+| **number** | Is (완전 일치) | rating == 3 |
+| **select** | Is (완전 일치) | |
+| **multiSelect** | Is (완전 일치), Contains (부분 일치) | |
+| **aiField** | Contains (부분 일치) | |
+| **date** | Is (완전 일치), Between (기간 일치) | created between 날짜 범위 |
+
+#### 필터 사용 예시
+
+**멀티셀렉트 카테고리의 고급 검색**:
+
+```
+Where: category contains "버그"
+And: priority is "높음"
+```
+
+**복수 이슈 연결된 피드백 찾기**:
+
+```
+Where: issues contains "로그인 이슈"
+Or: issues contains "UI 개선"
+```
+
+**특정 카테고리의 4 평점 피드백 찾기**:
+
+```
+Where: category is "기능 요청"
+And: rating is 4
+```
+
+### 정렬 기능
+
+테이블 헤더를 클릭하여 해당 컬럼 기준으로 정렬할 수 있습니다. Created 컬럼과 Updated 컬럼에 해당 기능이 제공됩니다.
+
+### 뷰 옵션
+
+피드백 목록의 표시 방식을 사용자의 필요에 맞게 조정할 수 있습니다.
+
+#### Expand 기능
+
+**Expand** 버튼을 클릭하면 테이블에서 각 피드백의 상세 내용을 미리 볼 수 있습니다.
+
+**활용 방법**:
+
+- 상세 패널을 열지 않고도 주요 내용 확인
+- 여러 피드백을 빠르게 훑어보기
+- 긴 텍스트 필드의 전체 내용 확인
+
+#### 컬럼 표시/숨기기
+
+테이블 상단의 **View** 버튼으로 표시할 컬럼을 선택할 수 있습니다.
+
+**기능**:
+
+- **필수 컬럼**: ID, Created는 항상 표시 (숨김 불가)
+- **선택적 컬럼**: 커스텀 필드들을 개별적으로 표시/숨김 설정
+- **화면 최적화**: 필요한 정보만 표시하여 화면 공간 효율적 활용
+
+**사용 팁**:
+
+```
+모니터링용: ID, Created, Message만 표시
+분석용: 모든 커스텀 필드 표시
+리뷰용: Message, Category, Priority 표시
+```
+
+## 피드백 확인/수정/삭제
+
+개별 피드백의 상세 정보를 확인하고 필요시 수정하거나 삭제할 수 있습니다.
+
+### 피드백 상세 보기
+
+#### 접근 방법
+
+피드백 테이블에서 **행을 클릭**하면 우측에 상세 보기 패널이 열립니다.
+
+### 상세 패널 구성
+
+상세 패널은 다음처럼 구성됩니다:
+
+#### 1. 기본 정보 영역
+
+- **피드백 ID**: 고유 식별 번호
+- **생성 시간**: 최초 등록 일시
+- **수정 시간**: 마지막 변경 일시
+- **이슈**: 태깅된 이슈들
+
+#### 2. 커스텀 필드 영역
+
+채널에서 설정한 모든 커스텀 필드가 표시됩니다.
+
+### 피드백 수정
+
+#### 편집 가능한 필드
+
+상세 패널에서 **Edit** 버튼을 클릭하여 수정 모드로 전환할 수 있습니다.
+
+#### 수정 가능한 항목
+
+| 항목 | 수정 가능 여부 | 주의사항 |
+| --------------- | -------------- | ----------------------------------------------------------------- |
+| **디폴트 필드** | ❌ 불가능 | ID, 생성일 등 |
+| **커스텀 필드** | ✅ 가능 | 필드 설정의 Property에 따라 다름, Status가 Inactive일 경우 불가능 |
+
+#### 수정 완료
+
+1. 필요한 정보를 수정합니다
+2. **Save** 버튼을 클릭합니다
+3. 수정 내용이 즉시 반영되며 "Updated" 시간이 갱신됩니다
+
+### 이슈 연결 관리
+
+#### 새 이슈 생성
+
+1. 이슈 컬럼에 **+ 버튼**을 클릭합니다
+2. 이슈 이름을 입력하고 **Create** 옵션을 클릭 합니다
+
+#### 기존 이슈 연결
+
+1. 이슈 섹션의 **+ 버튼**을 클릭합니다
+2. 연결할 이슈의 이름을 입력합니다
+3. 드롭다운에서 연결할 이슈를 선택합니다
+
+#### 이슈 연결 해제
+
+1. 이슈 섹션의 **+ 버튼**을 클릭합니다
+2. 해제할 이슈를 선택합니다
+
+### 피드백 삭제
+
+#### 단일 피드백 삭제
+
+1. 상세 패널 하단의 **Delete Feedback** 버튼을 클릭합니다
+2. 확인 대화상자에서 삭제를 승인합니다
+
+#### 다중 피드백 삭제
+
+1. 피드백 목록에서 **체크박스**를 통해 여러 피드백을 선택합니다
+2. 상단에 나타나는 **Delete Selected** 버튼을 클릭합니다
+3. 일괄 삭제를 확인합니다
+
+#### 삭제 시 주의사항
+
+- **복구 불가능**: 삭제된 피드백은 되돌릴 수 없습니다
+- **이슈 연결 해제**: 연결된 이슈는 그대로 유지되지만 연결이 해제됩니다
+- **통계 영향**: 대시보드 통계에서 해당 데이터가 제외됩니다
+
+---
+
+## 피드백 다운로드
+
+수집된 피드백 데이터를 분석하거나 백업하기 위해 다양한 형식으로 내보낼 수 있습니다.
+
+### 다운로드 기능 접근
+
+#### 전체 피드백 다운로드
+
+1. 피드백 목록 상단의 **Export** 버튼을 클릭합니다
+
+#### 필터된 피드백 다운로드
+
+1. 원하는 조건으로 필터링을 적용합니다
+2. **Export** 버튼을 클릭하여 현재 필터 조건에 맞는 데이터만 다운로드합니다
+
+#### 선택된 피드백 다운로드
+
+1. 체크박스로 특정 피드백들을 선택합니다
+2. **Export Selected** 버튼을 클릭합니다
+
+### 다운로드 형식 선택
+
+Export 버튼 클릭 시 다운로드 형식을 선택할 수 있습니다.
+
+#### 지원되는 형식
+
+| 형식 | 확장자 | 장점 | 권장 사용 사례 |
+| --------- | ------- | ------------------------- | ------------------------- |
+| **CSV** | `.csv` | 가볍고 호환성 우수 | Excel, Google Sheets 분석 |
+| **Excel** | `.xlsx` | 서식 보존, 다중 시트 지원 | 상세 분석, 보고서 작성 |
+
+---
+
+## 관련 문서
+
+- [채널 관리](./03-channel-management.md) - 피드백 수집을 위한 채널 및 필드 설정
+- [이슈 관리](./05-issue-management.md) - 피드백에서 이슈 생성 및 관리
+- [API 연동](/docs/02-developer-guide/02-api-integration.md) - 외부 시스템에서 피드백 전송 방법
diff --git a/apps/docs/docs/01-user-guide/05-issue-management.md b/apps/docs/docs/01-user-guide/05-issue-management.md
new file mode 100644
index 000000000..62efe54ea
--- /dev/null
+++ b/apps/docs/docs/01-user-guide/05-issue-management.md
@@ -0,0 +1,422 @@
+---
+title: 이슈
+description: ABC User Feedback에서 이슈를 생성, 관리하고 칸반/리스트 뷰로 효율적으로 추적하는 방법을 설명합니다.
+sidebar_position: 5
+---
+
+# 이슈
+
+**이슈(Issue)** 는 피드백에서 발견된 문제점이나 개선사항을 체계적으로 관리하기 위한 핵심 기능입니다. 이슈 생성부터 카테고리 관리, 다양한 뷰 모드 활용까지 이슈 관리의 모든 기능을 다룹니다.
+
+---
+
+## 이슈 개요
+
+### 이슈의 역할
+
+이슈는 다음 목적으로 사용됩니다:
+
+- **문제 추적**: 버그, 오류, 성능 문제 등을 체계적으로 관리
+- **기능 요청 관리**: 사용자 요청사항을 구조화하여 개발 계획에 반영
+- **개선사항 도출**: 피드백 분석을 통한 개선 포인트 식별
+
+### 이슈 상태
+
+각 이슈는 다음 상태를 가집니다:
+
+| 상태 | 설명 | 사용 시점 |
+| --------------- | ----------- | ------------------------ |
+| **New** | 새로 등록됨 | 이슈 최초 생성 |
+| **On Review** | 검토 중 | 담당자가 검토 시작 |
+| **In Progress** | 처리 중 | 실제 작업 진행 중 |
+| **Resolved** | 해결 완료 | 문제 해결 및 완료 |
+| **On Hold** | 일시 보류 | 추가 정보 대기 또는 연기 |
+
+---
+
+## 이슈 생성/수정/삭제
+
+### 이슈 생성 방법
+
+이슈는 두 가지 방법으로 생성할 수 있습니다.
+
+#### 1. 피드백에서 이슈 생성 (권장)
+
+가장 일반적인 방법으로, 특정 피드백을 기반으로 이슈를 생성합니다.
+
+1. **Feedback** 탭에서 피드백을 클릭하여 상세 보기를 엽니다
+2. 우측 상세 패널의 **Issue** 섹션에서 **`+` 버튼**을 클릭합니다
+3. 이슈 이름을 입력하고 **Enter** 키를 누르거나 **Create** 옵션을 클릭합니다
+
+#### 2. 이슈 목록에서 직접 생성
+
+1. 상단 메뉴에서 **Issue** 탭을 클릭합니다
+2. 좌측 상단의 **+ Create Issue** 버튼을 클릭합니다
+3. 이슈 생성 대화상자에서 정보를 입력합니다:
+
+| 항목 | 설명 | 필수 여부 | 예시 |
+| --------------- | ----------------------- | --------- | ------------------------ |
+| **Title** | 이슈 제목 | 필수 | `로그인 버튼 오작동` |
+| **Description** | 상세 설명 | 선택 | `특정 브라우저에서 발생` |
+| **Category** | 이슈 분류 | 선택 | `버그` |
+| **Status** | 초기 상태 (기본값: New) | 선택 | `New` |
+
+### 이슈 수정
+
+생성된 이슈의 정보를 수정할 수 있습니다.
+
+#### 수정 방법
+
+1. 이슈 목록에서 수정하려는 이슈를 클릭합니다
+2. 우측에 열리는 **Issue Details** 패널에서 **Edit** 버튼을 클릭합니다
+3. 편집 모드에서 다음 항목들을 수정할 수 있습니다:
+
+#### 수정 가능한 항목
+
+| 항목 | 수정 가능 여부 | 설명 |
+| --------------- | -------------- | ----------------------------- |
+| **Title** | ✅ 가능 | 이슈 제목 |
+| **Description** | ✅ 가능 | 상세 설명 |
+| **Category** | ✅ 가능 | 이슈 분류 (드롭다운에서 선택) |
+| **Status** | ✅ 가능 | 현재 진행 상태 |
+| **Ticket** | ✅ 가능 | 외부 이슈 트래커 티켓 번호 |
+| **ID** | ❌ 불가능 | 시스템 자동 생성 |
+| **Created** | ❌ 불가능 | 생성 일시 |
+
+#### 저장 및 취소
+
+- **Save** 버튼: 변경사항을 저장하고 수정 모드를 종료합니다
+- **Cancel** 버튼: 변경사항을 취소하고 원래 상태로 되돌립니다
+
+### 외부 이슈 트래커 연동
+
+외부 이슈 트래커(Jira 등)와 연동이 설정되어 있는 경우, 이슈에 외부 티켓을 연결할 수 있습니다.
+
+#### 티켓 연결 방법
+
+1. 이슈 상세 패널에서 **Ticket** 필드에 외부 티켓 번호를 입력합니다
+2. 입력된 번호는 자동으로 외부 시스템 링크로 변환됩니다
+
+> **참고**: 외부 이슈 트래커 연동은 **Settings > Issue Tracker Management**에서 사전 설정이 필요합니다.
+
+### 이슈 삭제
+
+더 이상 필요하지 않은 이슈를 삭제할 수 있습니다.
+
+#### 삭제 방법
+
+1. 이슈 상세 패널에서 **Delete** 버튼을 클릭합니다
+
+2. 확인 대화상자에서 삭제를 승인합니다
+
+#### 삭제 시 주의사항
+
+- **복구 불가능**: 삭제된 이슈는 되돌릴 수 없습니다
+- **피드백 연결 해제**: 연결된 피드백들의 이슈 링크가 제거됩니다
+- **통계 영향**: 대시보드 이슈 통계에서 해당 데이터가 제외됩니다
+
+---
+
+## 칸반뷰
+
+칸반뷰는 이슈들을 상태별 열로 구분하여 시각적으로 관리할 수 있는 보기 방식입니다.
+
+### 칸반뷰 접근
+
+1. 상단 메뉴에서 **Issue** 탭을 클릭합니다
+2. 우측 상단에서 **Kanban** 뷰를 선택합니다
+
+### 칸반 보드 구성
+
+각 상태별로 열이 구성되어 있으며, 이슈들이 카드 형태로 표시됩니다.
+
+#### 칸반 열 구성
+
+| 열 | 표시 정보 | 카드 개수 표시 |
+| --------------- | ------------------ | -------------- |
+| **New** | 새로 등록된 이슈들 | 상단에 숫자 |
+| **On Review** | 검토 중인 이슈들 | 상단에 숫자 |
+| **In Progress** | 진행 중인 이슈들 | 상단에 숫자 |
+| **Resolved** | 해결 완료된 이슈들 | 상단에 숫자 |
+| **On Hold** | 보류된 이슈들 | 상단에 숫자 |
+
+#### 이슈 카드 정보
+
+각 이슈 카드에는 다음 정보가 표시됩니다:
+
+- **이슈 제목**: 클릭 시 상세 보기로 이동
+- **피드백 수**: 연결된 피드백 개수 (📝 아이콘과 함께)
+- **카테고리**: 설정된 경우 하단에 표시
+- **외부 티켓**: 연결된 경우 티켓 번호 표시
+
+### 드래그 앤 드롭 상태 변경
+
+칸반뷰의 핵심 기능으로, 이슈 카드를 드래그하여 다른 열로 이동시켜 상태를 변경할 수 있습니다.
+
+#### 사용 방법
+
+1. 이슈 카드를 마우스로 클릭하고 드래그합니다
+2. 원하는 상태 열 위로 이동시킵니다
+3. 마우스를 놓으면 상태가 자동으로 변경됩니다
+
+### 칸반뷰 필터링
+
+상단의 필터 기능을 사용하여 특정 조건의 이슈만 표시할 수 있습니다.
+
+#### 사용 가능한 필터
+
+1. **Date** 필터: 특정 기간에 생성된 이슈만 표시
+2. **Filter** 버튼: 고급 필터 조건 설정
+
+#### 필터 조건 예시
+
+| 필터 유형 | 조건 예시 | 사용 사례 |
+| ------------ | ----------------------- | -------------------------- |
+| **Category** | Category = "버그" | 버그 이슈만 확인 |
+| **Title** | Title contains "로그인" | 로그인 관련 이슈 찾기 |
+| **Created** | Created >= 2024-03-01 | 특정 날짜 이후 생성된 이슈 |
+| **Status** | Status != "Resolved" | 미해결 이슈만 표시 |
+
+### 칸반뷰 정렬
+
+각 열 내에서 이슈 카드의 정렬 순서를 변경할 수 있습니다.
+
+#### 정렬 옵션
+
+- **Created Date ↓**: 최신 생성 순
+- **Created Date ↑**: 오래된 순
+- **Feedback Count ↓**: 연결된 피드백 수 많은 순
+
+---
+
+## 리스트뷰
+
+리스트뷰는 이슈들을 카테고리별로 그룹화하여 테이블 형태로 표시하는 보기 방식입니다.
+
+### 리스트뷰 접근
+
+1. 상단 메뉴에서 **Issue** 탭을 클릭합니다
+2. 우측 상단에서 **List** 뷰를 선택합니다
+
+### 리스트뷰 구성
+
+카테고리별로 그룹화된 이슈들이 계층적으로 표시됩니다.
+
+#### 카테고리 그룹
+
+각 카테고리는 접힘/펼침이 가능한 그룹으로 표시됩니다:
+
+- **그룹 헤더**: 카테고리 이름과 포함된 이슈 수
+- **접힘/펼침 화살표**: 그룹 내용 표시/숨김 토글
+- **"No Category"**: 카테고리가 지정되지 않은 이슈들
+
+### 리스트뷰 필터링
+
+칸반뷰와 동일한 필터 기능을 제공합니다.
+
+#### 필터 적용 방법
+
+1. 상단의 **Date** 또는 **Filter** 버튼을 클릭합니다
+2. 원하는 조건을 설정합니다
+3. 필터링된 결과가 카테고리별로 그룹화되어 표시됩니다
+
+#### 빈 카테고리 처리
+
+필터링 결과 이슈가 없는 카테고리는 자동으로 숨겨집니다.
+
+### 리스트뷰 정렬
+
+각 컬럼 헤더를 클릭하여 정렬할 수 있습니다.
+
+#### 정렬 동작
+
+- **첫 번째 클릭**: 오름차순 정렬 ↑
+- **두 번째 클릭**: 내림차순 정렬 ↓
+
+#### 각 정렬 내용
+
+| 정렬 기준 | 사용 사례 |
+| -------------------- | -------------------------- |
+| **Created ↓** | 최신 이슈부터 확인 |
+| **Feedback Count ↓** | 영향도가 큰 이슈 우선 처리 |
+| **Status** | 상태별로 그룹화하여 확인 |
+
+---
+
+## 이슈 카테고리
+
+이슈 카테고리는 이슈를 분류하여 체계적으로 관리할 수 있게 해주는 기능입니다.
+
+### 카테고리의 목적
+
+- **이슈 분류**: 버그, 기능 요청, 개선 사항 등으로 구분
+- **우선순위 관리**: 카테고리별 처리 우선순위 설정
+- **팀 분배**: 카테고리별 담당 팀 지정
+- **분석 용이성**: 카테고리별 이슈 발생 패턴 분석
+
+### 기본 카테고리 예시
+
+일반적으로 사용되는 카테고리 분류:
+
+| 카테고리 | 설명 | 우선순위 | 담당팀 예시 |
+| ------------- | ---------------------- | -------- | ----------- |
+| **버그** | 기능 오작동, 오류 | 높음 | 개발팀 |
+| **기능 요청** | 새로운 기능 추가 요청 | 중간 | 기획팀 |
+| **개선 사항** | 기존 기능 향상 | 중간 | UX팀 |
+| **성능** | 속도, 안정성 문제 | 높음 | 인프라팀 |
+| **UI/UX** | 사용자 인터페이스 문제 | 낮음 | 디자인팀 |
+| **문서** | 도움말, 가이드 관련 | 낮음 | 기술문서팀 |
+
+### 카테고리 관리
+
+#### 카테고리 추가
+
+이슈 상세 패널에서 새로운 카테고리를 추가할 수 있습니다:
+
+1. 이슈 상세 패널의 **Category** 필드에서 **Add** 버튼을 클릭합니다
+2. 새 카테고리 이름을 입력합니다
+3. **Enter** 키를 누르거나 확인 버튼을 클릭합니다
+
+#### 카테고리 할당
+
+기존 이슈에 카테고리를 할당하거나 변경할 수 있습니다:
+
+1. 이슈 상세 패널에서 **Edit** 버튼을 클릭합니다
+2. **Category** 드롭다운에서 원하는 카테고리를 선택합니다
+3. **Save** 버튼으로 변경사항을 저장합니다
+
+### 카테고리별 이슈 관리
+
+#### 리스트뷰에서 카테고리별 확인
+
+리스트뷰에서는 카테고리별로 그룹화된 이슈들을 한눈에 확인할 수 있습니다:
+
+- **카테고리별 이슈 수**: 각 그룹 헤더에 포함된 이슈 개수 표시
+- **그룹 접힘/펼침**: 필요한 카테고리만 선택적으로 확인
+- **"No Category" 그룹**: 미분류 이슈들의 별도 관리
+
+#### 카테고리별 필터링
+
+특정 카테고리의 이슈만 확인하고 싶을 때:
+
+1. **Filter** 버튼을 클릭합니다
+2. **Category** 조건을 추가합니다
+3. 원하는 카테고리를 선택합니다
+
+---
+
+## 이슈 활용 가이드
+
+### 효율적인 이슈 관리 워크플로우
+
+#### 1. 피드백 기반 이슈 생성
+
+```
+피드백 수집 → 분석 → 이슈 생성 → 카테고리 분류
+```
+
+**단계별 가이드**:
+
+1. **일일 피드백 검토**: 새로 등록된 피드백 확인
+2. **패턴 분석**: 비슷한 내용의 피드백들 그룹화
+3. **이슈 생성**: 공통 문제에 대한 이슈 생성
+4. **우선순위 설정**: 카테고리와 상태를 통한 우선순위 관리
+
+#### 2. 이슈 상태 관리 프로세스
+
+```
+New → On Review → In Progress → Resolved
+ ↓
+ On Hold (필요시)
+```
+
+**상태별 액션**:
+
+- **New**: 새 이슈 발생, 초기 분류 및 우선순위 설정
+- **On Review**: 담당자 배정, 상세 분석 및 해결 방안 검토
+- **In Progress**: 실제 개발/수정 작업 진행
+- **On Hold**: 추가 정보 필요, 외부 의존성 대기
+- **Resolved**: 문제 해결 완료, 피드백 제공자에게 알림
+
+### 데이터 분석 및 인사이트 도출
+
+#### 이슈 패턴 분석
+
+1. **카테고리별 분포 분석**:
+
+ - 어떤 유형의 문제가 가장 많이 발생하는가?
+ - 특정 카테고리의 이슈 증가 추세는?
+
+2. **해결 시간 분석**:
+
+ - 카테고리별 평균 해결 시간
+ - 상태 전환에 소요되는 시간
+
+3. **피드백 연관성 분석**:
+ - 많은 피드백이 연결된 이슈 우선 처리
+ - 사용자 영향도 기반 우선순위 조정
+
+#### 성과 지표 (KPI) 설정
+
+| 지표 | 계산 방법 | 목표 예시 |
+| --------------------- | --------------------------------- | --------- |
+| **이슈 해결률** | Resolved / Total Issues × 100 | 90% 이상 |
+| **평균 해결 시간** | 총 해결 시간 / 해결된 이슈 수 | 7일 이내 |
+| **신규 이슈 증가율** | 이번 달 신규 / 지난 달 신규 × 100 | 20% 이하 |
+| **카테고리별 재발률** | 같은 카테고리 재발 이슈 / 총 이슈 | 10% 이하 |
+
+### 이슈 관리 모범 사례
+
+#### 이슈 제목 작성 가이드
+
+**좋은 이슈 제목 예시**:
+
+- ✅ `로그인 페이지에서 비밀번호 재설정 버튼 비활성화`
+- ✅ `모바일에서 이미지 업로드 시 앱 크래시`
+- ✅ `결제 페이지 로딩 시간 5초 이상 소요`
+
+**피해야 할 이슈 제목**:
+
+- ❌ `버그 있음`
+- ❌ `문제 발생`
+- ❌ `사용자 불만`
+
+#### 카테고리 분류 기준
+
+**기능별 분류**:
+
+- `로그인/인증`, `결제`, `검색`, `알림` 등
+
+**심각도별 분류**:
+
+- `Critical`: 서비스 중단 수준
+- `High`: 주요 기능 장애
+- `Medium`: 일부 기능 문제
+- `Low`: 개선 사항
+
+**담당팀별 분류**:
+
+- `Frontend`, `Backend`, `Infrastructure`, `Design` 등
+
+### 외부 도구 연동 활용
+
+#### 이슈 트래커 연동 시 장점
+
+외부 이슈 트래커(Jira, GitHub Issues 등)와 연동하면:
+
+1. **개발 워크플로우 통합**: 개발팀의 기존 도구와 연계
+2. **진행 상황 동기화**: 외부 티켓의 상태 변경 추적
+3. **커뮤니케이션 일원화**: 모든 관련 정보를 한 곳에서 관리
+4. **리포팅 강화**: 개발 진행도와 사용자 피드백 연관 분석
+
+#### 연동 설정 안내
+
+> **참고**: 외부 이슈 트래커 연동은 **Settings > Issue Tracker Management**에서 설정할 수 있습니다. 자세한 내용은 [이슈 트래커 연동 가이드](/docs/01-user-guide/07-settings/03-issue-tracker-management.md)를 참조하세요.
+
+---
+
+## 관련 문서
+
+- [피드백 관리](./04-feedback-management.md) - 피드백에서 이슈 생성 및 연결 방법
+- [이슈 트래커 연동](/docs/01-user-guide/07-settings/03-issue-tracker-management.md) - 외부 도구와의 연동 설정
+- [프로젝트 관리](./02-project-management.md) - 팀 구성 및 권한 관리
diff --git a/apps/docs/docs/01-user-guide/07-settings/01-tenant-settings.md b/apps/docs/docs/01-user-guide/07-settings/01-tenant-settings.md
new file mode 100644
index 000000000..b4ca6f598
--- /dev/null
+++ b/apps/docs/docs/01-user-guide/07-settings/01-tenant-settings.md
@@ -0,0 +1,235 @@
+---
+title: Tenant 설정
+description: ABC User Feedback의 테넌트 정보, 로그인 방식, 사용자 관리 등 조직 전체에 영향을 주는 설정을 관리하는 방법을 안내합니다.
+sidebar_position: 1
+---
+
+# Tenant 설정
+
+테넌트 설정은 ABC User Feedback의 최상위 관리 기능으로, 조직 전체에 영향을 주는 중요한 설정들을 다룹니다. 이 문서에서는 테넌트 정보 관리, 로그인 방식 설정, 전체 사용자 관리 방법을 설명합니다.
+
+> **주의**: 이 설정들은 **Super Admin 권한**을 가진 사용자만 접근할 수 있습니다.
+
+---
+
+## Tenant 설정
+
+테넌트는 조직의 최상위 단위로, 모든 프로젝트와 사용자가 포함되는 범위입니다.
+
+### 접근 방법
+
+1. 우측 상단 메뉴에서 **Home** 아이콘을 클릭합니다
+2. 좌측 메뉴에서 **Tenant Information**을 선택합니다
+
+### 수정 가능한 항목
+
+| 항목 | 설명 | 수정 가능 여부 | 예시 |
+| --------------- | ------------------------------------- | -------------- | ------------------------- |
+| **ID** | 테넌트 고유 식별자 (시스템 자동 생성) | ❌ 수정 불가 | `1` |
+| **Name** | 테넌트 이름 (조직명, 회사명 등) | ✅ 수정 가능 | `ABC Company` |
+| **Description** | 테넌트 설명 (선택사항) | ✅ 수정 가능 | `고객 피드백 관리 시스템` |
+
+### 정보 수정 방법
+
+1. **Name** 또는 **Description** 필드를 수정합니다
+2. 우측 상단의 **Save** 버튼을 클릭합니다
+3. 저장 완료 시 성공 메시지가 표시됩니다
+
+> 테넌트 이름은 로그인 UI에 표시될 수 있습니다.
+
+---
+
+## 로그인 설정
+
+사용자가 시스템에 접근할 때 사용할 인증 방식을 설정합니다.
+
+### 접근 방법
+
+1. 우측 상단 메뉴에서 **Home** 아이콘을 클릭합니다
+2. 좌측 메뉴에서 **Login Management**를 선택합니다
+
+### 지원하는 로그인 방식
+
+#### 1. 이메일 로그인
+
+기본적으로 제공되는 이메일 + 비밀번호 조합 방식입니다.
+
+**특징**:
+
+- 별도 설정 없이 기본 활성화
+- 사용자 초대 → 이메일 인증 → 비밀번호 설정 순서
+- 비밀번호 재설정 기능 제공
+
+**비밀번호 정책**:
+
+- 최소 8자 이상
+- 영문자, 숫자, 특수문자 포함 권장
+- 연속 문자 금지 (예: `aa`, `11`)
+
+#### 2. Google 로그인
+
+Google OAuth 2.0을 통한 소셜 로그인 방식입니다.
+
+**설정 방법**:
+
+1. **Google 로그인 활성화**: 토글을 ON으로 전환합니다
+2. **Google Cloud Console 설정이 필요합니다**:
+
+> **참고**: Google OAuth 연동의 상세한 구현 방법은 [OAuth 연동 가이드](/docs/02-developer-guide/03-oauth-integration.md)를 참조하세요.
+
+#### 3. 커스텀 OAuth 로그인
+
+자체 OAuth 서버나 다른 OAuth 제공자를 사용하는 방식입니다.
+
+**설정 항목**:
+
+| 항목 | 설명 | 예시 |
+| ----------------- | ----------------------------- | ------------------------------------------ |
+| **Provider Name** | 로그인 버튼에 표시될 이름 | `Microsoft로 로그인` |
+| **Client ID** | OAuth 클라이언트 ID | `abc123xyz` |
+| **Client Secret** | OAuth 클라이언트 시크릿 | `supersecret` |
+| **Auth URL** | 인증 요청 URL | `https://auth.example.com/oauth2/auth` |
+| **Token URL** | 토큰 요청 URL | `https://auth.example.com/oauth2/token` |
+| **User Info URL** | 사용자 정보 요청 URL | `https://auth.example.com/oauth2/userinfo` |
+| **Scope** | 요청할 권한 범위 | `openid email profile` |
+| **Email Key** | 사용자 정보에서 이메일 필드명 | `email` |
+
+**설정 순서**:
+
+1. 각 필드에 OAuth 서버 정보를 입력합니다
+2. **Save** 버튼을 클릭하여 저장합니다
+3. 로그인 화면에서 설정된 Provider Name으로 버튼이 표시됩니다
+
+### 로그인 방식 조합
+
+여러 로그인 방식을 동시에 활성화할 수 있습니다:
+
+- **이메일만**: 기본 로그인 폼만 표시
+- **이메일 + Google**: 로그인 폼 + "Google로 로그인" 버튼
+- **이메일 + 커스텀**: 로그인 폼 + 커스텀 OAuth 버튼
+
+### 로그인 설정 테스트
+
+설정 변경 후 반드시 테스트를 진행하세요:
+
+1. 브라우저 시크릿 모드로 로그인 페이지 접속
+2. 설정한 로그인 방식들이 정상 표시되는지 확인
+3. 각 방식으로 실제 로그인 테스트 수행
+
+---
+
+## 사용자 관리
+
+테넌트 전체 사용자를 중앙에서 통합 관리하는 기능입니다.
+
+### 접근 방법
+
+1. 우측 상단 메뉴에서 **Home** 아이콘을 클릭합니다
+2. 좌측 메뉴에서 **User Management**를 선택합니다
+
+### 사용자 목록 조회
+
+#### 표시되는 정보
+
+| 컬럼 | 설명 | 표시 예시 |
+| ---------- | ------------------------- | ---------------------- |
+| Email | 로그인 계정 이메일 | `user@company.com` |
+| Name | 사용자 이름 (프로필 기준) | `김사용자` |
+| Department | 소속 부서 | `개발팀` |
+| Type | 사용자 유형 | `SUPER` / `GENERAL` |
+| Project | 접근 가능한 프로젝트 목록 | `프로젝트A, 프로젝트B` |
+| Created | 계정 생성일시 | `2024-03-15 14:30` |
+
+#### 사용자 유형 설명
+
+| 유형 | 설명 | 권한 범위 |
+| --------- | -------------------------------------------------------- | --------------- |
+| `SUPER` | 모든 프로젝트 및 설정 접근 가능. 전체 시스템 관리자 역할 | 테넌트 전체 |
+| `GENERAL` | 지정된 프로젝트에만 접근 가능 | 특정 프로젝트만 |
+
+### 사용자 검색 및 필터링
+
+대량의 사용자가 있을 때 원하는 사용자를 빠르게 찾을 수 있습니다.
+
+#### 필터 기능
+
+상단의 **Filter** 버튼을 클릭하여 조건을 설정합니다.
+
+**필터 조건**:
+
+- **Email**: 이메일 주소로 검색
+- **Name**: 사용자 이름으로 검색
+- **Department**: 부서명으로 검색
+
+**연산자 옵션**:
+
+- **CONTAINS**: 포함하는 경우
+- **IS**: 정확히 일치하는 경우
+
+### 사용자 초대
+
+새로운 사용자를 시스템에 초대합니다.
+
+#### 초대 방법
+
+1. 우측 상단의 **Invite User** 버튼을 클릭합니다
+2. 초대 정보를 입력합니다
+
+| 항목 | 설명 | 선택 사항 |
+| ----------- | --------------------------- | ----------------------------- |
+| **Email** | 초대할 사용자의 이메일 주소 | 필수 입력 |
+| **Type** | 사용자 유형 | `GENERAL` / `SUPER` |
+| **Project** | 접근 허용할 프로젝트 | 프로젝트 목록에서 선택 |
+| **Role** | 해당 프로젝트에서의 역할 | `Admin` / `Editor` / `Viewer` |
+
+3. **Invite** 버튼을 클릭하여 초대를 완료합니다
+
+#### 초대 후 프로세스
+
+1. 초대된 사용자에게 이메일이 발송됩니다
+2. 사용자가 이메일의 링크를 클릭하여 가입 절차를 진행합니다
+3. 가입 완료 후 지정된 프로젝트에 자동으로 추가됩니다
+
+### 사용자 정보 수정
+
+기존 사용자의 정보와 권한을 수정할 수 있습니다.
+
+#### 수정 방법
+
+1. 사용자 목록에서 수정하려는 사용자를 클릭합니다
+2. **Edit User** 팝업이 열립니다
+
+#### 수정 가능한 항목
+
+| 항목 | 수정 가능 여부 | 설명 |
+| --------- | -------------- | ------------------------------ |
+| **Email** | ❌ 수정 불가 | 계정 식별자로 변경 불가 |
+| **Type** | ✅ 수정 가능 | `GENERAL` ↔ `SUPER` 변경 가능 |
+
+#### 저장 및 적용
+
+1. 필요한 정보를 수정합니다
+2. **Save** 버튼을 클릭합니다
+3. 변경사항이 즉시 적용되며, 해당 사용자의 다음 로그인부터 반영됩니다
+
+### 사용자 삭제
+
+더 이상 시스템을 사용하지 않는 사용자를 삭제할 수 있습니다.
+
+#### 삭제 방법
+
+1. 사용자 수정 팝업에서 하단의 **Delete** 버튼을 클릭합니다
+2. 확인 대화상자에서 삭제를 승인합니다
+
+#### 삭제 시 주의사항
+
+- **복구 불가능**: 삭제된 사용자 계정은 되돌릴 수 없습니다
+- **접근 권한 즉시 제거**: 삭제 즉시 모든 시스템 접근이 차단됩니다
+
+---
+
+## 관련 문서
+
+- [프로젝트 관리](../02-project-management.md) - 프로젝트별 멤버 및 권한 관리
+- [OAuth 연동 가이드](../../02-developer-guide/03-oauth-integration.md) - OAuth 설정의 기술적 구현 방법
+- [API 연동](/docs/02-developer-guide/02-api-integration.md) - API를 통한 사용자 관리 방법
diff --git a/apps/docs/docs/01-user-guide/07-settings/02-api-key-management.md b/apps/docs/docs/01-user-guide/07-settings/02-api-key-management.md
new file mode 100644
index 000000000..2d9b553d9
--- /dev/null
+++ b/apps/docs/docs/01-user-guide/07-settings/02-api-key-management.md
@@ -0,0 +1,130 @@
+---
+title: API 키 설정
+description: ABC User Feedback에서 외부 시스템 연동을 위한 API 키를 생성, 관리하고 보안을 유지하는 방법을 설명합니다.
+sidebar_position: 2
+---
+
+# API 키 설정
+
+API 키는 외부 시스템이 ABC User Feedback과 안전하게 연동할 수 있도록 하는 인증 수단입니다. 이 문서에서는 API 키 생성부터 관리, 보안 유지까지 화면 중심으로 설명합니다.
+
+---
+
+## API 키 개요
+
+### API 키의 역할
+
+API 키는 다음과 같은 목적으로 사용됩니다:
+
+- **외부 시스템 인증**: 웹사이트, 모바일 앱에서 피드백 전송
+- **자동화 연동**: 배치 작업, 스크립트를 통한 데이터 수집
+- **서드파티 도구 연결**: 분석 도구, 모니터링 시스템 연동
+- **보안 제어**: 프로젝트별 독립적인 접근 권한 관리
+
+### 보안 특징
+
+- **프로젝트별 독립성**: 각 프로젝트마다 별도의 키 발급
+- **상태 관리**: Active/Inactive 상태로 즉시 제어 가능
+
+---
+
+## API 키 생성
+
+### 접근 방법
+
+1. 상단 메뉴에서 **Settings** 클릭
+2. 좌측 메뉴에서 **API 키 관리** 선택
+
+### 키 생성 과정
+
+#### 1. 생성 버튼 클릭
+
+API 키 관리 화면에서 우측 상단의 **Create API Key** 버튼을 클릭합니다.
+
+#### 2. 자동 생성 및 표시
+
+버튼 클릭 즉시 새로운 API 키가 자동으로 생성되고 팝업으로 표시됩니다.
+
+**팝업 구성 요소**:
+
+- **API 키 값**: 전체 키 문자열 표시
+- **Copy 버튼**: 클립보드로 즉시 복사
+
+---
+
+## API 키 목록 관리
+
+### 키 목록 화면 구성
+
+생성된 API 키들은 테이블 형태로 관리됩니다.
+
+#### 테이블 컬럼 정보
+
+| 컬럼 | 설명 | 표시 형태 |
+| ----------- | ---------------- | -------------------- |
+| **API 키** | 생성된 키 값 | `AbcdEfgh...` |
+| **Status** | 현재 활성화 상태 | Active / Inactive |
+| **Created** | 키 생성 일시 | `2024-03-15 14:30` |
+| **Actions** | 관리 액션 버튼들 | 상태 변경, 삭제 버튼 |
+
+#### 키 식별 방법
+
+전체 키 값을 다시 볼 수 없으므로 다음 방법으로 키를 구분합니다:
+
+- **생성 시간**: 언제 만들어진 키인지 확인
+- **사용 목적 메모**: 별도로 키의 용도를 기록해 두기
+
+---
+
+## API 키 상태 관리
+
+### Active / Inactive 전환
+
+각 API 키는 즉시 활성화/비활성화할 수 있습니다.
+
+#### 상태별 의미
+
+| 상태 | 설명 | API 호출 결과 |
+| ------------ | ------------------------- | ---------------- |
+| **Active** | 실제 API 호출에 사용 가능 | 정상 처리 |
+| **Inactive** | 호출 차단 상태 | 401 Unauthorized |
+
+#### 상태 변경 방법
+
+1. API 키 목록에서 **Status** 컬럼의 토글 스위치를 클릭합니다
+2. 상태가 즉시 변경되며 화면에 반영됩니다
+3. 해당 키를 사용하는 외부 시스템에서 즉시 영향을 받습니다
+
+---
+
+## API 키 삭제
+
+### 삭제 시점
+
+다음과 같은 경우 API 키를 삭제해야 합니다:
+
+- **키 노출**: 실수로 키가 공개된 경우
+- **프로젝트 종료**: 해당 프로젝트 사용 종료
+- **보안 정책**: 정기적 키 교체 정책에 따라
+- **미사용 키**: 더 이상 사용하지 않는 키 정리
+
+### 삭제 방법
+
+#### 1. 삭제 버튼 클릭
+
+키 목록에서 삭제하려는 키의 **Actions** 컬럼에서 삭제 버튼을 클릭합니다.
+
+#### 2. 삭제 확인
+
+확인 대화상자에서 삭제를 최종 승인합니다.
+
+#### 3. 삭제 완료
+
+**Delete** 버튼 클릭 시 키가 즉시 삭제되며 목록에서 제거됩니다.
+
+---
+
+## 관련 문서
+
+- [API 연동 가이드](/docs/02-developer-guide/02-api-integration.md) - API 키를 사용한 실제 연동 구현 방법
+- [프로젝트 관리](/docs/01-user-guide/02-project-management.md) - 프로젝트별 API 키 관리
diff --git a/apps/docs/docs/01-user-guide/07-settings/03-issue-tracker-management.md b/apps/docs/docs/01-user-guide/07-settings/03-issue-tracker-management.md
new file mode 100644
index 000000000..f39b28eb6
--- /dev/null
+++ b/apps/docs/docs/01-user-guide/07-settings/03-issue-tracker-management.md
@@ -0,0 +1,166 @@
+---
+title: 이슈 트래커 설정
+description: ABC User Feedback에서 외부 이슈 트래커(Jira 등)와 연동하여 이슈를 추적하고 링크하는 방법을 안내합니다.
+sidebar_position: 3
+---
+
+# 이슈 트래커 설정
+
+이슈 트래커 설정으로 ABC User Feedback의 이슈를 외부 이슈 관리 시스템(Jira 등)과 연동할 수 있습니다. 내부 이슈에 외부 티켓 링크를 연결하여 개발 워크플로우와 자연스럽게 통합할 수 있습니다.
+
+---
+
+## 이슈 트래커 개요
+
+### 연동의 목적
+
+이슈 트래커 연동은 다음과 같은 목적으로 사용됩니다:
+
+- **워크플로우 통합**: 고객 피드백과 개발 작업 연결
+- **이슈 추적**: 내부 이슈와 외부 티켓의 일대일 매핑
+- **진행 상황 공유**: 개발팀과 고객지원팀 간 정보 동기화
+- **효율성 향상**: 중복 작업 방지 및 컨텍스트 유지
+
+### 연동 방식
+
+- **수동 링크 연결**: ABC 이슈에 외부 티켓 번호를 수동으로 입력
+- **URL 자동 생성**: 설정된 Base URL과 Project Key로 자동 링크 생성
+- **클릭 이동**: 생성된 링크를 클릭하여 외부 시스템으로 바로 이동
+
+> **참고**: 실시간 양방향 동기화는 지원하지 않습니다. 상태 변경과 같은 동기화가 필요한 경우 [Webhook](./04-webhook-management.md)을 활용하세요.
+
+---
+
+## 설정 화면 접근
+
+### 접근 방법
+
+1. 상단 메뉴에서 **Settings** 클릭
+2. 좌측 메뉴에서 **이슈 트래커 관리** 선택
+
+### 설정 화면 구성
+
+이슈 트래커 관리 화면은 다음과 같이 구성됩니다:
+
+- **Issue Tracking System**: 연동할 시스템 선택 드롭다운
+- **Connection Settings**: 연결 정보 입력 영역
+- **Link Preview**: 생성될 링크 미리보기
+- **Test Connection**: 연결 테스트 버튼
+
+---
+
+## Jira 연동 설정
+
+### 시스템 선택
+
+#### 1. Issue Tracking System 설정
+
+드롭다운에서 **Jira**를 선택합니다.
+
+### 연결 정보 입력
+
+#### 2. Base URL 설정
+
+Jira 시스템의 기본 주소를 입력합니다.
+
+| 입력 예시 | 설명 |
+| ----------------------------------- | ----------------------- |
+| `https://yourcompany.atlassian.net` | Jira Cloud 인스턴스 |
+| `https://jira.company.com` | 자체 호스팅 Jira Server |
+| `https://jira.internal:8080` | 내부 네트워크 Jira |
+
+**주의사항**:
+
+- `https://` 또는 `http://` 프로토콜 포함 필수
+- 마지막 슬래시(`/`) 제거
+- 포트 번호가 있는 경우 포함
+
+#### 3. Project Key 설정
+
+Jira 프로젝트의 고유 키를 입력합니다.
+
+| 입력 예시 | 설명 |
+| --------- | -------------------- |
+| `PROJ` | 일반적인 프로젝트 키 |
+| `DEV` | 개발팀 프로젝트 |
+| `CS` | 고객지원팀 프로젝트 |
+| `BUG` | 버그 관리 전용 |
+
+**Project Key 확인 방법**:
+
+1. Jira에서 해당 프로젝트 접속
+2. 이슈 번호에서 `-` 앞부분이 Project Key
+3. 예: `PROJ-123`에서 `PROJ`가 Project Key
+
+### 링크 미리보기
+
+설정한 정보를 바탕으로 생성될 링크를 미리 확인할 수 있습니다.
+
+#### 미리보기 구성
+
+```
+Base URL + /browse/ + Project Key + - + Issue Number
+```
+
+**예시**:
+
+- Base URL: `https://yourcompany.atlassian.net`
+- Project Key: `PROJ`
+- Issue Number: `123` (사용자가 입력)
+- **생성된 링크**: `https://yourcompany.atlassian.net/browse/PROJ-123`
+
+#### 링크 형식 검증
+
+미리보기로 다음 사항을 확인하세요:
+
+- URL 형식이 올바른지
+- 실제 Jira 이슈 접근 가능한지
+- 팀원들이 접근 권한을 가지고 있는지
+
+---
+
+## 이슈에서 티켓 연결
+
+### 티켓 번호 입력
+
+이슈 트래커 설정이 완료되면 개별 이슈에서 외부 티켓을 연결할 수 있습니다.
+
+#### 연결 방법
+
+1. **Issue** 탭에서 원하는 이슈를 클릭합니다
+2. 우측 **Issue Details** 패널이 열립니다
+3. **Ticket** 필드에 외부 티켓 번호를 입력합니다
+
+#### 입력 형식
+
+| 입력 방식 | 설명 | 생성되는 링크 |
+| --------- | ----------- | ------------------------------------------ |
+| `123` | 숫자만 입력 | `https://jira.company.com/browse/PROJ-123` |
+
+시스템이 자동으로 Project Key를 추가하므로 숫자만 입력해도 됩니다.
+
+### 링크 자동 생성
+
+티켓 번호 입력 후 **Save** 버튼을 클릭하면 링크가 자동으로 생성됩니다.
+
+#### 링크 기능
+
+- **클릭 이동**: 링크 클릭 시 새 탭에서 외부 Jira 이슈로 이동
+- **외부 링크 표시**: 링크 옆에 외부 링크 아이콘 표시
+- **수정 가능**: Edit 모드에서 티켓 번호 변경 가능
+
+### 연결 해제
+
+외부 티켓 연결을 제거하려면:
+
+1. 이슈 상세 패널에서 **Edit** 버튼 클릭
+2. **Ticket** 필드의 내용을 삭제
+3. **Save** 버튼으로 변경사항 저장
+
+---
+
+## 관련 문서
+
+- [이슈 관리](/docs/01-user-guide/05-issue-management.md) - 이슈 생성 및 티켓 연결 사용법
+- [Webhook 관리](/docs/01-user-guide/07-settings/04-webhook-management.md) - 이슈 상태 변경 시 외부 시스템 알림
+- [API 연동 가이드](/docs/02-developer-guide/02-api-integration.md) - API를 통한 이슈 관리
diff --git a/apps/docs/docs/01-user-guide/07-settings/04-webhook-management.md b/apps/docs/docs/01-user-guide/07-settings/04-webhook-management.md
new file mode 100644
index 000000000..f721296db
--- /dev/null
+++ b/apps/docs/docs/01-user-guide/07-settings/04-webhook-management.md
@@ -0,0 +1,166 @@
+---
+sidebar_position: 4
+title: '웹훅 설정'
+description: '외부 시스템과 자동 연동을 위해 웹훅을 설정하고 이벤트 발생 시 알림을 전송하는 방법을 설명합니다.'
+---
+
+# 웹훅 설정
+
+웹훅은 ABC User Feedback에서 **특정 이벤트 발생 시 외부 시스템으로 자동 알림**을 전송하는 기능입니다. 피드백 생성, 이슈 상태 변경 등의 이벤트를 실시간으로 외부 서비스(Slack, Discord, 자체 서버 등)에 전달할 수 있습니다. 자세한 연동 가이드는 [웹훅 연동](/docs/02-developer-guide/04-webhook-integration.md) 문서를 참고하세요.
+
+---
+
+## 접근 방법
+
+1. 상단 메뉴에서 **Settings** 클릭
+2. 좌측 메뉴에서 **Webhook Integration** 선택
+
+---
+
+## Webhook Integration 화면 개요
+
+웹훅 연동 화면은 다음처럼 구성됩니다:
+
+### 웹훅 목록 테이블 구성
+
+| 컬럼 | 설명 |
+| ----------------- | -------------------------------- |
+| **On/Off** | 웹훅 활성화/비활성화 토글 스위치 |
+| **Name** | 웹훅 이름 |
+| **URL** | 알림을 받을 외부 엔드포인트 |
+| **Event Trigger** | 구독 중인 이벤트 트리거 |
+| **Created** | 웹훅 생성일시 |
+
+---
+
+## 새 웹훅 생성하기
+
+### 1. 웹훅 등록 시작
+
+우측 상단의 **Register Webhook** 버튼을 클릭하면 웹훅 등록 모달이 열립니다.
+
+### 2. 기본 정보 입력
+
+#### 필수 입력 항목
+
+| 항목 | 설명 |
+| -------- | -------------------------------- |
+| **Name** | 웹훅 식별을 위한 이름 |
+| **URL** | HTTP POST 요청을 받을 엔드포인트 |
+
+### 3. 토큰 설정 (선택사항)
+
+**Token** 필드에서 인증을 위한 토큰을 설정할 수 있습니다:
+
+- **Generate** 버튼을 클릭하여 자동 생성
+- 또는 직접 토큰 값 입력
+
+### 4. Event Trigger 선택
+
+구독할 이벤트를 채널별로 선택할 수 있습니다:
+
+#### 지원되는 이벤트 타입
+
+각 채널(VOC, Review, Survey, VOC Test)에 대해 다음 이벤트를 선택할 수 있습니다:
+
+| 이벤트 타입 | 설명 |
+| ----------------------- | ----------------------------- |
+| **Feedback Creation** | 새 피드백이 등록되었을 때 |
+| **Issue Registration** | 새 이슈가 생성되었을 때 |
+| **Issue Status Change** | 이슈 상태가 변경되었을 때 |
+| **Issue Creation** | 이슈가 피드백에 연결되었을 때 |
+
+### 5. 웹훅 저장
+
+모든 정보를 입력한 후:
+
+1. **OK** 버튼을 클릭하여 웹훅 생성
+2. **Cancel** 버튼으로 취소 가능
+
+---
+
+## 웹훅 상태 관리
+
+### 활성화/비활성화 전환
+
+웹훅 목록에서 각 웹훅의 **On/Off** 컬럼에 있는 토글 스위치를 클릭하여 상태를 변경할 수 있습니다:
+
+- **On (활성화)**: 이벤트 발생 시 실시간 전송
+- **Off (비활성화)**: 웹훅은 유지되지만 전송 중단
+
+### 임시 비활성화 시나리오
+
+- 외부 서버 점검 중일 때
+- 웹훅 URL 변경 작업 중일 때
+- 스팸성 알림 방지가 필요할 때
+
+---
+
+## 웹훅 편집 및 삭제
+
+### 웹훅 편집
+
+웹훅 목록에서 수정하려는 웹훅을 클릭하면 편집 모달이 열립니다:
+
+#### 편집 가능한 항목
+
+- 웹훅 이름
+- Target URL 변경
+- 토큰 값 수정
+- 이벤트 타입 추가/제거
+
+### 웹훅 삭제
+
+웹훅을 완전히 제거하려면:
+
+1. 편집 모달에서 삭제 옵션 선택
+2. 또는 목록에서 직접 삭제 버튼 클릭 (UI에 삭제 버튼이 있는 경우)
+
+---
+
+## 웹훅 테스트 및 검증
+
+### 수동 검증 방법
+
+1. **피드백 생성 테스트**:
+ - 테스트 피드백을 등록하여 `Feedback Creation` 이벤트 확인
+2. **이슈 관리 테스트**:
+ - 이슈를 생성하거나 상태를 변경하여 관련 이벤트 확인
+3. **외부 서비스 확인**:
+ - Slack, Discord 등에서 메시지 수신 여부 확인
+
+---
+
+## 일반적인 연동 예시
+
+### Slack 웹훅 설정
+
+```
+Name: Slack 알림
+URL: https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXX
+Events: Feedback Creation, Issue Registration (모든 채널)
+```
+
+### Discord 웹훅 설정
+
+```
+Name: Discord 개발팀 알림
+URL: https://discord.com/api/webhooks/123456789/abcdefghijk
+Events: Issue Status Change (VOC 채널만)
+```
+
+### 커스텀 서버 연동
+
+```
+Name: 내부 분석 시스템
+URL: https://api.yourcompany.com/webhooks/feedback
+Token: your-generated-token
+Events: 모든 이벤트 (전체 채널)
+```
+
+---
+
+## 관련 문서
+
+- [Webhook 개발자 가이드](/docs/02-developer-guide/04-webhook-integration.md) - 웹훅 수신 서버 구현 방법
+- [API 키 관리](./02-api-key-management.md) - API 키 기반 인증 설정
diff --git a/apps/docs/docs/01-user-guide/07-settings/05-ai-setting.md b/apps/docs/docs/01-user-guide/07-settings/05-ai-setting.md
new file mode 100644
index 000000000..df7f3d338
--- /dev/null
+++ b/apps/docs/docs/01-user-guide/07-settings/05-ai-setting.md
@@ -0,0 +1,261 @@
+---
+sidebar_position: 5
+title: 'AI 설정'
+description: '생성형 AI 기능을 사용하기 위한 기본 설정 및 연동 방법을 설명합니다.'
+---
+
+# AI 설정
+
+ABC User Feedback에서 **생성형 AI 기능**을 사용하려면 먼저 AI 제공자와의 연동을 설정해야 합니다.
+AI 설정을 완료하면 **AI 필드 템플릿**, **AI 이슈 추천**, **AI 사용량 모니터링** 등의 모든 기능을 활용할 수 있습니다.
+
+---
+
+## 접근 방법
+
+1. 상단 메뉴에서 **Settings** 클릭
+2. 좌측 메뉴에서 **Generative AI Integration** 선택
+3. 상단 탭에서 **AI Setting** 클릭
+
+---
+
+## AI 제공자 선택 및 설정
+
+### 1. 제공자 선택
+
+현재 지원되는 AI 제공자 OpenAI, Google Gemini 중 하나를 선택합니다:
+
+### 2. API 키 입력
+
+선택한 AI 제공자에서 발급받은 API 키를 입력합니다.
+
+### 3. Base URL 설정 (선택사항)
+
+대부분의 경우 **비워두면 기본값**이 자동으로 사용됩니다.
+
+특별한 엔드포인트나 프록시 서버를 사용하는 경우에만 입력하세요.
+
+### 4. System Prompt 설정 (선택사항)
+
+AI가 모든 요청을 처리할 때 참고할 **기본 지시사항**을 설정할 수 있습니다.
+
+조직의 톤앤매너나 특별한 요구사항이 있을 때 활용하세요.
+
+### 5. 설정 저장
+
+모든 정보를 입력한 후 우측 상단의 **Save** 버튼을 클릭합니다.
+
+---
+
+## AI 사용량 모니터링
+
+**AI Usage** 탭에서 AI 기능 사용량과 비용을 모니터링할 수 있습니다.
+
+### 사용량 대시보드
+
+확인할 수 있는 정보:
+
+- **일별/월별 API 호출 수**
+- **토큰 사용량** (입력/출력 별도)
+- **기능별 사용 분포** (AI 필드 vs 이슈 추천)
+
+---
+
+## AI 필드 템플릿 관리
+
+AI 설정을 완료한 후, **AI Field Template** 탭에서 피드백 자동 분석 템플릿을 관리할 수 있습니다.
+
+### 기본 제공 템플릿
+
+시스템에서 제공하는 기본 템플릿들:
+
+| 템플릿 | 설명 | 활용 예시 |
+| ---------------------- | -------------------------- | ----------------------- |
+| **Feedback Summary** | 피드백을 1문장으로 요약 | 긴 피드백의 핵심 파악 |
+| **Sentiment Analysis** | 감정 분석 (긍정/부정/중립) | 고객 만족도 추세 분석 |
+| **Translation** | 피드백을 영어로 번역 | 다국어 피드백 통합 분석 |
+| **Keyword Extraction** | 핵심 키워드 2-3개 추출 | 이슈 카테고리 자동 태깅 |
+
+### 커스텀 템플릿 생성
+
+1. **Create New** 카드 클릭
+
+2. 템플릿 정보 입력
+
+| 항목 | 설명 |
+| --------------- | --------------------- |
+| **Title** | 템플릿 이름 |
+| **Prompt** | AI에게 줄 지시 문장 |
+| **Model** | 사용할 AI 모델 선택 |
+| **Temperature** | 창의성 조절 (0.0~1.0) |
+
+3. Playground에서 테스트
+
+- "Add Data" 버튼으로 테스트 피드백 입력
+- "AI test execution" 클릭으로 결과 확인
+
+### 템플릿 편집 및 삭제
+
+- 템플릿 카드 클릭 → 편집
+- **Delete Template** 버튼으로 삭제
+- 삭제 시 해당 템플릿을 사용하는 AI 필드에 영향을 줄 수 있음
+
+---
+
+## AI 필드를 채널에 적용하기
+
+AI 필드 템플릿을 생성한 후, 실제 채널의 필드로 적용해야 피드백에서 AI 분석 결과를 확인할 수 있습니다.
+
+### 1. Field Management에서 AI 필드 추가
+
+**Settings > Channel List > [채널 선택] > Field Management**에서 AI 필드를 추가합니다.
+
+#### AI 필드 설정 항목
+
+| 항목 | 설명 | 필수 여부 |
+| ----------------------- | -------------------------- | --------- |
+| **Key** | 필드 고유 식별자 | 필수 |
+| **Display Name** | UI에 표시될 이름 | 필수 |
+| **Format** | `aiField` 선택 | 필수 |
+| **Template** | 생성한 AI 필드 템플릿 선택 | 필수 |
+| **Target Field** | 분석 대상이 될 텍스트 필드 | 필수 |
+| **Property** | Editable 또는 Read Only | 필수 |
+| **AI Field Automation** | 자동 실행 여부 | 선택 |
+
+#### 설정 예시
+
+```
+Key: sentiment_analysis
+Display Name: 감정 분석
+Format: aiField
+Template: Feedback Sentiment Analysis
+Target Field: message
+Property: Read Only
+AI Field Automation: ON (자동 실행)
+```
+
+### 2. Template 연결 및 Target Field 설정
+
+**Template** 드롭다운에서 이전에 생성한 AI 필드 템플릿을 선택합니다.
+
+**Target Field**는 AI 분석의 대상이 될 필드들을 지정합니다
+
+### 3. AI Field Automation 설정
+
+**AI Field Automation** 토글을 통해 실행 방식을 선택합니다:
+
+- **ON (자동 실행)**: 새 피드백 등록 시 자동으로 AI 분석 실행
+- **OFF (수동 실행)**: 사용자가 수동으로 실행 버튼을 클릭해야 함
+
+## 피드백에서 AI 분석 결과 확인
+
+AI 필드 설정이 완료되면 피드백 목록과 상세 화면에서 AI 분석 결과를 확인할 수 있습니다.
+
+### 피드백 목록에서 확인
+
+피드백 테이블에 AI 필드가 새로운 컬럼으로 추가됩니다:
+
+- **Summary**: AI가 생성한 요약
+- **Classification**: AI 분류 결과
+- **Korean**: 번역 결과 등
+
+### 피드백 상세 화면에서 확인
+
+피드백 상세 보기 패널에서 더 자세한 AI 분석 결과를 확인할 수 있습니다:
+
+1. 피드백 행 클릭 → 우측 상세 패널 열림
+2. AI 필드별 분석 결과 확인
+3. 각 AI 필드마다 분석 결과와 함께 표시
+
+## AI 분석 수동 실행
+
+피드백 상세 화면에서 수동으로 AI 분석을 실행할 수 있습니다.
+
+### Run AI 버튼 사용
+
+1. 피드백 상세 화면에서 **Run AI** 버튼 클릭
+2. AI 분석이 실행되고 결과가 해당 필드에 자동 입력됨
+3. 분석 완료 후 결과 즉시 확인 가능
+
+### 수동 실행 활용 시나리오
+
+- **비용 절약**: 필요한 피드백만 선별하여 AI 분석
+- **성능 확인**: 새로운 템플릿의 결과를 미리 테스트
+- **재분석**: 템플릿 수정 후 기존 피드백 재분석
+
+---
+
+## AI 이슈 추천 설정
+
+**AI Issue Recommendation** 탭에서 피드백 기반 자동 이슈 추천 기능을 설정할 수 있습니다.
+
+### 추천 설정 생성
+
+1. **Create New** 버튼 클릭
+2. 설정 항목 입력
+
+| 항목 | 설명 | 필수 여부 |
+| ---------------- | ---------------------------- | --------- |
+| **Channel** | 적용할 채널 선택 | 필수 |
+| **Target Field** | 분석 대상 필드 (예: message) | 필수 |
+| **Prompt** | 추천 기준 프롬프트 | 선택 |
+| **Enable** | 기능 활성화 토글 | 필수 |
+
+3. 고급 설정
+
+| 설정 | 설명 |
+| ------------------------- | ------------------------------------- |
+| **Model** | 사용 모델 |
+| **Temperature** | 창의성 조절 |
+| **Data Reference Amount** | 참조할 이슈 양 (이슈와 관련 피드백들) |
+
+### 추천 기능 테스트
+
+입력된 설정에 대해 Playground에서 테스트:
+
+1. 예시 피드백 입력
+2. "AI test execution" 클릭
+3. 추천 이슈 목록 확인
+
+### 실제 피드백에서 추천 활용
+
+피드백 상세 보기에서:
+
+- AI 추천 이슈 목록 확인
+- 체크박스로 적절한 이슈 선택
+- **Retry** 버튼으로 다른 추천 요청
+
+### 피드백 목록에서 이슈 추천 사용
+
+AI 이슈 추천을 설정한 채널에서는 피드백 목록 화면에서도 직접 이슈 추천 기능을 사용할 수 있습니다.
+
+#### 사용 방법
+
+1. 피드백 목록에서 이슈를 연결하고 싶은 피드백의 **Issue 컬럼**에 있는 **+ 버튼** 클릭
+2. 드롭다운 메뉴가 표시되면 **"Run AI"** 선택
+3. AI가 관련 이슈를 분석하여 추천 목록 표시
+
+#### 추천 결과 확인 및 적용
+
+AI 분석 완료 후 추천 이슈 목록에서:
+
+- **추천된 이슈들** 확인
+- 추천된 적절한 이슈 선택
+- 새 이슈 생성 옵션도 제공
+- 선택 완료 후 해당 이슈가 피드백에 자동 연결
+
+#### 일괄 처리 활용
+
+여러 피드백을 선택한 상태에서도 AI 이슈 추천을 사용할 수 있어 효율적인 피드백 분류가 가능합니다:
+
+1. 피드백 목록에서 여러 행 선택 (체크박스 활용)
+2. 상단 일괄 작업 메뉴에서 AI 이슈 추천 실행
+3. 각 피드백별로 추천 이슈 확인 및 적용
+
+---
+
+## 관련 문서
+
+- [필드 설정하기](/docs/01-user-guide/04-feedback-management.md) - AI 필드를 채널에 적용하는 방법
+- [이슈 생성 및 상태 관리](/docs/01-user-guide/05-issue-management.md) - AI 추천 이슈 활용법
+- [피드백 확인 및 필터링](/docs/01-user-guide/04-feedback-management.md) - AI 분석 결과 확인 방법
diff --git a/apps/docs/docs/01-user-guide/07-settings/06-image-setting.md b/apps/docs/docs/01-user-guide/07-settings/06-image-setting.md
new file mode 100644
index 000000000..252a6e803
--- /dev/null
+++ b/apps/docs/docs/01-user-guide/07-settings/06-image-setting.md
@@ -0,0 +1,100 @@
+---
+sidebar_position: 6
+title: '이미지 설정'
+description: '피드백에 첨부된 이미지 저장 방식과 보안 정책을 설정하는 방법을 안내합니다.'
+---
+
+# 이미지 설정
+
+ABC User Feedback에서는 사용자가 피드백을 제출할 때 **이미지와 함께 업로드**할 수 있도록 지원합니다. 이미지 저장 방식과 보안 정책을 적절히 설정하여 안전하고 효율적인 피드백 수집 환경을 구축할 수 있습니다.
+
+---
+
+## 접근 방법
+
+1. 상단 메뉴에서 **Settings** 클릭
+2. 좌측 메뉴에서 **Channel List > [채널 선택]**
+3. 하단 탭 중 **Image Management** 선택
+
+---
+
+## Image Storage Integration 설정
+
+**Multipart Upload API** 방식을 통해 이미지를 서버로 직접 업로드하거나 **Presigned URL Download** 기능을 활용하려면 S3 또는 S3 호환 저장소 연동이 필수입니다.
+
+### 필수 설정 항목
+
+| 항목 | 설명 | 예시 |
+| --------------------- | ------------------------- | ----------------------------------------- |
+| **Access Key ID** | S3 접근을 위한 키 ID | `AKIAIOSFODNN7EXAMPLE` |
+| **Secret Access Key** | 키에 대한 시크릿 | `wJalrXUtnFEMI/K7MDENG/...` |
+| **End Point** | S3 API 엔드포인트 URL | `https://s3.ap-northeast-1.amazonaws.com` |
+| **Region** | 버킷이 위치한 지역 | `ap-northeast-1` |
+| **Bucket Name** | 이미지가 저장될 대상 버킷 | `consumer-ufb-images` |
+
+### Presigned URL Download 설정
+
+**Presigned URL Download** 옵션을 통해 이미지 다운로드 보안을 강화할 수 있습니다.
+
+#### 설정 옵션
+
+- **Enable**: 인증된 일회용 URL을 통해 이미지 접근 (보안 강화)
+- **Disable**: 이미지 URL이 직접 노출되어 공개 접근 가능
+
+### 연결 테스트
+
+모든 설정을 입력한 후 **Test Connection** 버튼을 클릭하여 저장소 연결을 확인합니다.
+
+연결 결과:
+
+- ✅ **성공**: "Connection test succeeded" 메시지
+- ❌ **실패**: 입력 값, 버킷 권한, 네트워크 설정 재확인 필요
+
+---
+
+## Image URL Domain Whitelist 설정
+
+**Image URL 방식**을 사용하거나 보안을 강화하고 싶은 경우, 신뢰할 수 있는 도메인만 허용하도록 화이트리스트를 설정할 수 있습니다.
+
+### 현재 상태 확인
+
+기본 설정은 **"All image URLs are allowed"** 상태로, 모든 도메인의 이미지 URL을 허용합니다.
+
+### 화이트리스트 추가
+
+보안 강화를 위해 특정 도메인만 허용하려면:
+
+1. **Whitelist** 영역에 신뢰할 수 있는 도메인 추가
+2. 예시 도메인:
+ - `cdn.yourcompany.com`
+ - `images.trusted-partner.io`
+ - `storage.googleapis.com`
+
+---
+
+## 지원되는 저장소 서비스
+
+### AWS S3
+
+- 가장 일반적으로 사용되는 클라우드 스토리지
+- 안정적이고 확장성이 뛰어남
+
+---
+
+## 설정 저장
+
+모든 설정을 완료한 후 우측 상단의 **Save** 버튼을 클릭하여 변경사항을 저장합니다.
+
+저장 후에는:
+
+- 새로운 이미지 업로드가 설정한 방식으로 동작
+- 기존 이미지는 기존 설정 그대로 유지
+- Test Connection으로 설정 정상 작동 여부 재확인 권장
+
+---
+
+## 관련 문서
+
+- [필드 설정하기](/docs/01-user-guide/04-feedback-management.md) - 이미지 필드를 피드백 폼에 추가하는 방법
+- [피드백 확인 및 필터링](/docs/01-user-guide/04-feedback-management.md) - 업로드된 이미지를 피드백에서 확인하는 방법
+- [API 키 관리](./02-api-key-management.md) - API 키 보안 관리 방법
diff --git a/apps/docs/docs/01-user-guide/07-settings/_category_.json b/apps/docs/docs/01-user-guide/07-settings/_category_.json
new file mode 100644
index 000000000..0bdb96d87
--- /dev/null
+++ b/apps/docs/docs/01-user-guide/07-settings/_category_.json
@@ -0,0 +1,4 @@
+{
+ "position": 7,
+ "label": "설정"
+}
diff --git a/apps/docs/docs/01-user-guide/_category_.json b/apps/docs/docs/01-user-guide/_category_.json
new file mode 100644
index 000000000..89ee060a0
--- /dev/null
+++ b/apps/docs/docs/01-user-guide/_category_.json
@@ -0,0 +1,4 @@
+{
+ "position": 2,
+ "label": "사용자 가이드"
+}
diff --git a/apps/docs/docs/02-developer-guide/01-installation/01-docker-hub-images.md b/apps/docs/docs/02-developer-guide/01-installation/01-docker-hub-images.md
new file mode 100644
index 000000000..cb6937322
--- /dev/null
+++ b/apps/docs/docs/02-developer-guide/01-installation/01-docker-hub-images.md
@@ -0,0 +1,379 @@
+---
+id: docker-hub-images
+title: Docker Hub 이미지 설치
+description: Docker Hub에 등록된 ABC User Feedback 공식 이미지로 빠르게 시스템을 설치하는 방법을 설명합니다.
+sidebar_position: 1
+---
+
+# Docker Hub 이미지 설치
+
+ABC User Feedback은 공식 Docker 이미지를 제공합니다.
+이 문서는 Docker Compose를 이용하여 **웹 UI, API 서버, 데이터베이스, SMTP 서버** 등 시스템을 로컬에서 빠르게 구성하는 방법을 설명합니다.
+
+---
+
+## 1. 사전 요구 사항
+
+| 항목 | 설명 |
+| -------------- | ----------------------------------------------------------------- |
+| Docker | 20.10 이상 |
+| Docker Compose | v2 이상 권장 |
+| 사용 포트 | `3000`, `4000`, `13306`, `5080`, `25` (로컬에서 비워져 있어야 함) |
+
+---
+
+## 2. Docker 이미지 구성
+
+| 서비스 이름 | 설명 | Docker 이미지 이름 |
+| ----------------- | ---------------------------------- | ------------------------------------- |
+| Web (Admin UI) | 프론트엔드 웹 UI (Next.js) | `line/abc-user-feedback-web` |
+| API (Backend) | 백엔드 서버 (NestJS) | `line/abc-user-feedback-api` |
+| MySQL | 데이터베이스 | `mysql:8.0` |
+| SMTP4Dev | 로컬 테스트용 이메일 서버 | `rnwood/smtp4dev:v3` |
+| (선택) OpenSearch | 검색 기능 및 AI 분석 정확도 향상용 | `opensearchproject/opensearch:2.16.0` |
+
+---
+
+## 3. `docker-compose.yml` 예시
+
+```yaml
+name: abc-user-feedback
+services:
+ web:
+ image: line/abc-user-feedback-web:latest
+ environment:
+ - NEXT_PUBLIC_API_BASE_URL=http://localhost:4000
+ ports:
+ - 3000:3000
+ depends_on:
+ - api
+ restart: unless-stopped
+
+ api:
+ image: line/abc-user-feedback-api:latest
+ environment:
+ - JWT_SECRET=jwtsecretjwtsecretjwtsecret
+ - MYSQL_PRIMARY_URL=mysql://userfeedback:userfeedback@mysql:3306/userfeedback
+ - SMTP_HOST=smtp4dev
+ - SMTP_PORT=25
+ - SMTP_SENDER=user@feedback.com
+ # OpenSearch 사용 시 아래 주석을 제거하세요
+ # - OPENSEARCH_USE=true
+ # - OPENSEARCH_NODE=http://opensearch-node:9200
+ ports:
+ - 4000:4000
+ depends_on:
+ - mysql
+ restart: unless-stopped
+
+ mysql:
+ image: mysql:8.0
+ command:
+ [
+ "--default-authentication-plugin=mysql_native_password",
+ "--collation-server=utf8mb4_bin",
+ ]
+ environment:
+ MYSQL_ROOT_PASSWORD: userfeedback
+ MYSQL_DATABASE: userfeedback
+ MYSQL_USER: userfeedback
+ MYSQL_PASSWORD: userfeedback
+ TZ: UTC
+ ports:
+ - 13306:3306
+ volumes:
+ - mysql:/var/lib/mysql
+ restart: unless-stopped
+
+ smtp4dev:
+ image: rnwood/smtp4dev:v3
+ ports:
+ - 5080:80
+ - 25:25
+ - 143:143
+ volumes:
+ - smtp4dev:/smtp4dev
+ restart: unless-stopped
+
+ # OpenSearch를 사용하려면 아래 주석을 제거하세요
+ # opensearch-node:
+ # image: opensearchproject/opensearch:2.16.0
+ # restart: unless-stopped
+ # environment:
+ # - cluster.name=opensearch-cluster
+ # - node.name=opensearch-node
+ # - discovery.type=single-node
+ # - bootstrap.memory_lock=true
+ # - 'OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m'
+ # - plugins.security.disabled=true
+ # - OPENSEARCH_INITIAL_ADMIN_PASSWORD=UserFeedback123!@#
+ # ulimits:
+ # memlock:
+ # soft: -1
+ # hard: -1
+ # nofile:
+ # soft: 65536
+ # hard: 65536
+ # volumes:
+ # - opensearch:/usr/share/opensearch/data
+ # ports:
+ # - 9200:9200
+ # - 9600:9600
+
+volumes:
+ mysql:
+ smtp4dev:
+ # opensearch:
+```
+
+---
+
+## 4. 실행 단계
+
+### 4.1 Docker 이미지 다운로드 및 실행
+
+```bash
+# Docker Compose로 모든 서비스를 백그라운드에서 실행
+docker compose up -d
+```
+
+### 4.2 실행 상태 확인
+
+```bash
+# 모든 컨테이너가 정상적으로 실행 중인지 확인
+docker compose ps
+```
+
+### 4.3 서비스 접속 확인
+
+- **웹 애플리케이션**: [http://localhost:3000](http://localhost:3000)
+- **API 서버**: [http://localhost:4000](http://localhost:4000)
+- **SMTP 테스트 페이지**: [http://localhost:5080](http://localhost:5080)
+- **MySQL 데이터베이스**: `localhost:13306` (사용자: `userfeedback`, 비밀번호: `userfeedback`)
+
+---
+
+## 5. SMTP 설정
+
+기본적으로 이 구성에서는 `smtp4dev`를 통해 메일을 테스트할 수 있습니다.
+
+- **웹 인터페이스**: [http://localhost:5080](http://localhost:5080)
+- **SMTP 포트**: `25`
+- **IMAP 포트**: `143`
+
+### SMTP 테스트 방법
+
+1. 웹 애플리케이션에서 사용자 가입을 하거나 사용자 초대 기능을 사용
+2. [http://localhost:5080](http://localhost:5080)에서 전송된 이메일 확인
+3. 이메일 내용과 첨부파일 등을 테스트
+
+> **중요**: 실제 운영 환경에서는 반드시 외부 SMTP 서버(예: Gmail, SendGrid, 사내 SMTP 등)와 연동해야 합니다.
+
+👉 운영용 SMTP 연동이 필요하다면 [SMTP 서버 연동 가이드](./04-smtp-configuration.md)를 참고하세요.
+
+## 6. 설치 확인
+
+### 6.1 웹 애플리케이션 접속 확인
+
+브라우저에서 `http://localhost:3000`으로 접속하여 다음을 확인하세요:
+
+- 테넌트 생성 화면이 정상적으로 표시되는지
+- 페이지 로딩이 완료되는지
+- JavaScript 오류가 없는지 (브라우저 개발자 도구에서 확인)
+
+### 6.2 API 서버 상태 확인
+
+```bash
+# API 서버 헬스 체크
+curl http://localhost:4000/api/health
+```
+
+예상 응답:
+
+```json
+{
+ "status": "ok",
+ "info": {
+ "database": {
+ "status": "up"
+ }
+ }
+}
+```
+
+### 6.3 데이터베이스 연결 확인
+
+```bash
+# MySQL 컨테이너에 직접 접속하여 데이터베이스 확인
+docker compose exec mysql mysql -u userfeedback -puserfeedback -e "SHOW DATABASES;"
+
+# 테이블 생성 확인
+docker compose exec mysql mysql -u userfeedback -puserfeedback -e "USE userfeedback; SHOW TABLES;"
+```
+
+### 6.4 로그 확인
+
+```bash
+# 모든 서비스의 로그 확인
+docker compose logs
+
+# 특정 서비스의 로그만 확인
+docker compose logs api
+docker compose logs web
+docker compose logs mysql
+```
+
+---
+
+## 7. OpenSearch 사용 시 주의사항
+
+OpenSearch는 검색 기능과 AI 분석의 정확도를 향상시키는 선택적 구성 요소입니다.
+
+### 7.1 OpenSearch 활성화 방법
+
+1. `docker-compose.yml` 파일에서 `api` 서비스의 환경 변수 주석 해제:
+
+```yaml
+- OPENSEARCH_USE=true
+- OPENSEARCH_NODE=http://opensearch-node:9200
+```
+
+2. `opensearch-node` 서비스 주석 해제
+3. `volumes:` 섹션에서 `opensearch:` 주석 해제
+4. 포트 `9200`, `9600`이 로컬에서 사용 중이지 않은지 확인
+
+### 7.2 메모리 요구사항
+
+> **주의**: OpenSearch는 최소 2GB 이상의 메모리를 요구합니다. 메모리 부족 시 컨테이너가 자동 종료될 수 있습니다.
+
+### 7.3 OpenSearch 상태 확인
+
+```bash
+# OpenSearch 클러스터 상태 확인
+curl http://localhost:9200/_cluster/health
+
+# OpenSearch 노드 정보 확인
+curl http://localhost:9200/_nodes
+
+# 인덱스 확인
+curl http://localhost:9200/_cat/indices
+```
+
+### 7.4 OpenSearch 비활성화
+
+OpenSearch를 사용하지 않으려면 `docker-compose.yml`에서 해당 서비스와 환경 변수를 주석 처리하면 됩니다.
+
+---
+
+## 8. 문제 해결
+
+### 8.1 포트 충돌 문제
+
+**증상**: `docker compose up` 실행 시 포트 바인딩 오류 발생
+
+**해결 방법**:
+
+```bash
+# 사용 중인 포트 확인
+lsof -i :3000 # 웹 포트
+lsof -i :4000 # API 포트
+lsof -i :13306 # MySQL 포트
+lsof -i :5080 # SMTP 포트
+
+# 해당 포트를 사용하는 프로세스 종료 후 재시작
+docker compose down
+docker compose up -d
+```
+
+### 8.2 컨테이너 시작 실패
+
+**증상**: 일부 컨테이너가 시작되지 않거나 계속 재시작됨
+
+**해결 방법**:
+
+```bash
+# 컨테이너 상태 확인
+docker compose ps
+
+# 실패한 컨테이너의 로그 확인
+docker compose logs [서비스명]
+
+# 모든 컨테이너 중지 및 제거
+docker compose down
+
+# 볼륨까지 제거 (데이터 손실 주의)
+docker compose down -v
+
+# 다시 시작
+docker compose up -d
+```
+
+### 8.3 데이터베이스 연결 오류
+
+**증상**: API 서버에서 MySQL 연결 실패
+
+**해결 방법**:
+
+```bash
+# MySQL 컨테이너가 완전히 시작될 때까지 대기
+docker compose logs mysql
+
+# MySQL 컨테이너에 직접 접속 테스트
+docker compose exec mysql mysql -u userfeedback -puserfeedback -e "SELECT 1;"
+
+# API 서비스 재시작
+docker compose restart api
+```
+
+### 8.4 이미지 다운로드 실패
+
+**증상**: Docker 이미지를 다운로드할 수 없음
+
+**해결 방법**:
+
+```bash
+# Docker Hub 로그인 확인
+docker login
+
+# 이미지 수동 다운로드
+docker pull line/abc-user-feedback-web:latest
+docker pull line/abc-user-feedback-api:latest
+
+# 네트워크 연결 확인
+ping hub.docker.com
+```
+
+### 8.5 메모리 부족 문제
+
+**증상**: OpenSearch 컨테이너가 자동 종료됨
+
+**해결 방법**:
+
+```bash
+# 시스템 메모리 확인
+free -h
+
+# Docker 메모리 사용량 확인
+docker stats
+
+# OpenSearch 비활성화 (docker-compose.yml에서 주석 처리)
+# 또는 메모리 할당량 증가
+```
+
+---
+
+## 9. 참고 링크
+
+- [ABC User Feedback Web - Docker Hub](https://hub.docker.com/r/line/abc-user-feedback-web)
+- [ABC User Feedback API - Docker Hub](https://hub.docker.com/r/line/abc-user-feedback-api)
+- [smtp4dev - Docker Hub](https://hub.docker.com/r/rnwood/smtp4dev)
+- [OpenSearch - Docker Hub](https://hub.docker.com/r/opensearchproject/opensearch)
+
+---
+
+## 관련 문서
+
+- [수동 설치 가이드](./03-manual-setup.md)
+- [SMTP 서버 연동 가이드](./04-smtp-configuration.md)
+- [환경 변수 목록 및 설정](./05-configuration.md)
+- [초기 셋팅 가이드](/docs/01-user-guide/01-getting-started.md)
diff --git a/apps/docs/docs/02-developer-guide/01-installation/02-cli-tool.md b/apps/docs/docs/02-developer-guide/01-installation/02-cli-tool.md
new file mode 100644
index 000000000..49f143b9b
--- /dev/null
+++ b/apps/docs/docs/02-developer-guide/01-installation/02-cli-tool.md
@@ -0,0 +1,272 @@
+---
+sidebar_position: 2
+title: "CLI 도구 사용법"
+description: "ABC User Feedback CLI 도구로 빠르고 쉽게 시스템을 설치하고 관리하는 방법을 설명합니다."
+---
+
+# CLI 도구 사용법
+
+ABC User Feedback CLI (`auf-cli`)는 시스템 설치, 실행, 관리를 간소화하는 명령줄 도구입니다. Node.js와 Docker만 설치되어 있으면 추가 의존성 설치나 저장소 클론 없이 `npx`를 통해 바로 실행할 수 있습니다.
+
+## 주요 기능
+
+- 필요한 인프라 자동 설정 (MySQL, SMTP, OpenSearch)
+- 환경 변수 설정 간소화
+- API 및 웹 서버 자동 시작/중지
+- 볼륨 데이터 정리
+- 동적 Docker Compose 파일 생성
+
+## 사용되는 Docker 이미지
+
+- `line/abc-user-feedback-web:latest` - 웹 프론트엔드
+- `line/abc-user-feedback-api:latest` - API 백엔드
+- `mysql:8.0` - 데이터베이스
+- `rnwood/smtp4dev:v3` - SMTP 테스트 서버
+- `opensearchproject/opensearch:2.16.0` - 검색 엔진 (선택사항)
+
+## 사전 요구사항
+
+CLI 도구를 사용하기 전에 다음 요구사항을 충족해야 합니다:
+
+- [Node.js v22 이상](https://nodejs.org/en/download/)
+- [Docker](https://docs.docker.com/desktop/)
+
+## 기본 명령어
+
+### 초기화
+
+ABC User Feedback에 필요한 인프라를 설정하려면 다음 명령어를 실행하세요:
+
+```bash
+npx auf-cli init
+```
+
+이 명령어는 다음 작업을 수행합니다:
+
+1. 환경 변수 설정을 위한 `config.toml` 파일 생성
+2. 아키텍처(ARM/AMD)에 따라 필요한 인프라 설정
+
+초기화가 완료되면 현재 디렉토리에 `config.toml` 파일이 생성됩니다. 필요에 따라 이 파일을 편집하여 환경 변수를 조정할 수 있습니다.
+
+### 서버 시작
+
+API 및 웹 서버를 시작하려면 다음 명령어를 실행하세요:
+
+```bash
+npx auf-cli start
+```
+
+이 명령어는 다음 작업을 수행합니다:
+
+1. `config.toml` 파일에서 환경 변수 읽기
+2. Docker Compose 파일 생성 및 서비스 시작
+3. API 및 웹 서버 컨테이너와 필요한 인프라(MySQL, SMTP, OpenSearch) 시작
+
+서버가 성공적으로 시작되면 웹 브라우저에서 `http://localhost:3000` (또는 설정된 URL)로 ABC User Feedback 웹 인터페이스에 접근할 수 있습니다. CLI는 다음 URL들을 표시합니다:
+
+- 웹 인터페이스 URL
+- API URL
+- MySQL 연결 문자열
+- OpenSearch URL (활성화된 경우)
+- SMTP 웹 인터페이스 (smtp4dev 사용 시)
+
+### 서버 중지
+
+API 및 웹 서버를 중지하려면 다음 명령어를 실행하세요:
+
+```bash
+npx auf-cli stop
+```
+
+이 명령어는 실행 중인 API 및 웹 서버 컨테이너와 인프라 컨테이너를 중지합니다. 볼륨에 저장된 모든 데이터는 보존됩니다.
+
+### 볼륨 정리
+
+시작 중 생성된 Docker 볼륨을 정리하려면 다음 명령어를 실행하세요:
+
+```bash
+npx auf-cli clean
+```
+
+이 명령어는 모든 컨테이너를 중지하고 MySQL, SMTP, OpenSearch 등의 Docker 볼륨을 삭제합니다.
+
+**경고**: 이 작업은 모든 데이터를 삭제하므로 백업이 필요한 경우 미리 백업하세요.
+
+`--images` 옵션을 사용하여 사용하지 않는 Docker 이미지도 정리할 수 있습니다:
+
+```bash
+npx auf-cli clean --images
+```
+
+## 설정 파일 (config.toml)
+
+`init` 명령어를 실행하면 현재 디렉토리에 `config.toml` 파일이 생성됩니다. 이 파일은 ABC User Feedback의 환경 변수를 설정하는 데 사용됩니다.
+
+다음은 `config.toml` 파일의 예시입니다:
+
+```toml
+[web]
+port = 3000
+# api_base_url = "http://localhost:4000"
+
+[api]
+port = 4000
+jwt_secret = "jwtsecretjwtsecretjwtsecretjwtsecretjwtsecretjwtsecret"
+
+# master_api_key = "MASTER_KEY"
+# access_token_expired_time = "10m"
+# refresh_token_expired_time = "1h"
+
+# [api.auto_feedback_deletion]
+# enabled = true
+# period_days = 365
+
+# [api.smtp]
+# host = "smtp4dev" # SMTP_HOST
+# port = 25 # SMTP_PORT
+# sender = "user@feedback.com"
+# username=
+# password=
+# tls=
+# cipher_spec=
+# opportunitic_tls=
+
+# [api.opensearch]
+# enabled = true
+
+[mysql]
+port = 13306
+```
+
+필요에 따라 이 파일을 편집하여 환경 변수를 조정할 수 있습니다. 환경 변수 자세한 정보는 [환경 변수 설정](./05-configuration.md) 문서를 참조하세요.
+
+## 고급 사용법
+
+### 포트 변경
+
+기본적으로 웹 서버는 포트 3000을, API 서버는 포트 4000을 사용합니다. 이를 변경하려면 `config.toml` 파일에서 다음 설정을 수정하세요:
+
+```toml
+[web]
+port = 8000 # 웹 서버 포트 변경
+api_base_url = "http://localhost:8080" # API URL도 함께 변경해야 함
+
+[api]
+port = 8080 # API 서버 포트 변경
+
+[mysql]
+port = 13307 # 필요시 MySQL 포트 변경
+```
+
+### OpenSearch 활성화
+
+고급 검색 기능을 위해 OpenSearch를 활성화하려면:
+
+```toml
+[api.opensearch]
+enabled = true
+```
+
+**주의사항**:
+
+- OpenSearch는 최소 2GB의 사용 가능한 메모리가 필요합니다
+- OpenSearch 컨테이너는 `http://localhost:9200`에서 사용할 수 있습니다
+- OpenSearch 상태 확인: `http://localhost:9200/_cluster/health`
+
+### SMTP 설정
+
+개발 환경에서는 기본 `smtp4dev` 설정을 권장합니다:
+
+```toml
+[api.smtp]
+host = "smtp4dev"
+port = 25
+sender = "dev@feedback.local"
+```
+
+smtp4dev 웹 인터페이스는 `http://localhost:5080`에서 전송된 이메일을 확인할 수 있습니다.
+
+## 문제 해결
+
+### 일반적인 문제
+
+1. **Docker 관련 오류**:
+
+ - Docker가 실행 중인지 확인: `docker --version`
+ - Docker 권한 확인: `docker ps`
+ - Docker Desktop이 올바르게 설치되고 실행 중인지 확인
+
+2. **포트 충돌**:
+
+ - 포트 사용 확인: `lsof -i :PORT` (macOS/Linux) 또는 `netstat -ano | findstr :PORT` (Windows)
+ - `config.toml`에서 포트 설정 변경
+ - 일반적인 충돌 포트: 3000, 4000, 13306, 9200, 5080
+
+3. **서비스 시작 실패**:
+
+ - 컨테이너 로그 확인: `docker compose logs SERVICE_NAME`
+ - Docker 이미지 사용 가능 여부 확인: `docker images`
+ - 충분한 시스템 리소스(메모리, 디스크 공간) 확인
+
+4. **데이터베이스 연결 문제**:
+ - MySQL 컨테이너 상태 확인: `docker compose ps mysql`
+ - MySQL 로그 확인: `docker compose logs mysql`
+ - 연결 테스트: `docker compose exec mysql mysql -u userfeedback -p`
+
+### 디버깅 팁
+
+1. **컨테이너 로그 확인**:
+
+ ```bash
+ # 모든 컨테이너 로그
+ docker compose logs
+
+ # 특정 서비스 로그
+ docker compose logs api
+ docker compose logs web
+ docker compose logs mysql
+ ```
+
+2. **서비스 상태 확인**:
+
+ ```bash
+ # API 상태 확인
+ curl http://localhost:4000/api/health
+
+ # OpenSearch 상태 확인 (활성화된 경우)
+ curl http://localhost:9200/_cluster/health
+ ```
+
+3. **데이터베이스 직접 접근**:
+ ```bash
+ # MySQL 연결
+ docker compose exec mysql mysql -u userfeedback -p userfeedback
+ ```
+
+## 제한사항
+
+CLI 도구는 개발 및 테스트 환경을 위해 설계되었습니다. 프로덕션 배포를 위해서는 다음 사항을 고려하세요:
+
+1. **보안 고려사항**:
+
+ - 민감한 데이터에 대해서는 설정 파일 대신 환경 변수 사용
+ - 적절한 비밀 관리 구현
+ - 프로덕션급 JWT 비밀 사용
+ - HTTPS/TLS 암호화 활성화
+
+2. **확장성 및 가용성**:
+
+ - Kubernetes 또는 Docker Swarm과 같은 오케스트레이션 도구 사용
+ - 로드 밸런싱 및 자동 스케일링 구현
+ - 적절한 모니터링 및 알림 설정
+ - 관리형 데이터베이스 서비스(RDS, Cloud SQL 등) 사용
+
+3. **데이터 관리**:
+ - 자동화된 백업 전략 구현
+ - 적절한 백업이 있는 영구 볼륨 사용
+ - 데이터 보존 정책 고려
+ - 디스크 사용량 및 성능 모니터링
+
+## 다음 단계
+
+자세한 API 및 웹 서버 설정 옵션은 [환경 변수 설정](./05-configuration.md) 문서를 참조하세요.
diff --git a/apps/docs/docs/02-developer-guide/01-installation/03-manual-setup.md b/apps/docs/docs/02-developer-guide/01-installation/03-manual-setup.md
new file mode 100644
index 000000000..0e817d506
--- /dev/null
+++ b/apps/docs/docs/02-developer-guide/01-installation/03-manual-setup.md
@@ -0,0 +1,258 @@
+---
+sidebar_position: 3
+title: "수동 설치"
+description: "소스 코드에서 직접 ABC User Feedback을 빌드하고 실행하는 수동 설치 가이드"
+---
+
+# 수동 설치
+
+이 문서는 ABC User Feedback을 수동으로 설치하고 구성하는 방법을 설명합니다. 소스 코드에서 직접 애플리케이션을 빌드하고 실행하고 싶을 때 유용합니다.
+
+## 사전 요구사항
+
+수동 설치를 진행하기 전에 다음 요구사항을 충족해야 합니다:
+
+- [Node.js v22.19.0 이상](https://nodejs.org/en/download/)
+- [pnpm v10.15.0 이상](https://pnpm.io/installation) (패키지 매니저)
+- [Git](https://git-scm.com/downloads)
+- [MySQL 8.0](https://www.mysql.com/downloads/)
+- SMTP 서버
+- (선택사항) [OpenSearch 2.16](https://opensearch.org/)
+
+## 소스 코드 다운로드
+
+먼저 GitHub 저장소에서 ABC User Feedback 소스 코드를 클론합니다:
+
+```bash
+git clone https://github.com/line/abc-user-feedback.git
+cd abc-user-feedback
+```
+
+## 인프라 설정
+
+ABC User Feedback은 MySQL 데이터베이스와 SMTP 서버 그리고 선택적으로 OpenSearch가 필요합니다. 이러한 인프라 구성 요소를 설정하는 방법은 여러 가지가 있습니다.
+
+### Docker를 사용한 인프라 설정
+
+가장 간단한 방법은 Docker Compose로 필요한 인프라를 설정하는 것입니다:
+
+```bash
+docker-compose -f docker/docker-compose.infra.yml up -d
+```
+
+### 기존 인프라 사용
+
+이미 MySQL, OpenSearch 또는 SMTP 서버가 있다면, 나중에 환경 변수로 연결 정보를 구성할 수 있습니다.
+
+## 의존성 설치
+
+ABC User Feedback은 모노레포 구조를 사용하며 TurboRepo를 통해 관리됩니다. 모든 패키지의 의존성을 설치하려면:
+
+```bash
+pnpm install
+```
+
+## 환경 변수 설정
+
+### API 서버 환경 변수
+
+`apps/api` 디렉토리에 `.env` 파일을 생성하고 다음처럼 구성합니다:
+
+```env
+# 필수 환경 변수
+JWT_SECRET=your-jwt-secret-key
+MYSQL_PRIMARY_URL=mysql://username:password@localhost:3306/database
+ACCESS_TOKEN_EXPIRED_TIME=10m
+REFRESH_TOKEN_EXPIRED_TIME=1h
+
+# 선택적 환경 변수
+APP_PORT=4000
+APP_ADDRESS=0.0.0.0
+AUTO_MIGRATION=true
+
+# SMTP 설정
+SMTP_HOST=smtp.example.com
+SMTP_PORT=587
+SMTP_USERNAME=your-username
+SMTP_PASSWORD=your-password
+SMTP_SENDER=noreply@example.com
+
+# OpenSearch 설정 (선택사항)
+OPENSEARCH_USE=false
+# OPENSEARCH_NODE=http://localhost:9200
+# OPENSEARCH_USERNAME=admin
+# OPENSEARCH_PASSWORD=admin
+```
+
+### Web 서버 환경 변수
+
+`apps/web` 디렉토리에 `.env` 파일을 생성하고 다음처럼 구성합니다:
+
+```env
+# 필수 환경 변수
+NEXT_PUBLIC_API_BASE_URL=http://localhost:4000
+```
+
+환경 변수 자세한 정보는 [환경 변수 설정](./05-configuration.md) 문서를 참조하세요.
+
+## 데이터베이스 마이그레이션
+
+API 서버를 처음 실행하기 전에 데이터베이스 스키마를 생성해야 합니다. `AUTO_MIGRATION=true` 환경 변수를 설정하면 서버 시작 시 마이그레이션이 자동으로 실행됩니다.
+
+수동으로 마이그레이션을 실행하려면:
+
+```bash
+cd apps/api
+npm run migration:run
+```
+
+## 개발 모드 실행
+
+### 단일 명령어로 실행
+
+API 서버와 웹 서버를 개발 모드로 실행하려면:
+
+```bash
+# 프로젝트 루트 디렉토리에서
+pnpm dev
+```
+
+이 명령어는 API 서버와 웹 서버를 동시에 시작합니다. API 서버는 기본적으로 포트 4000에서, 웹 서버는 포트 3000에서 실행됩니다.
+
+### 개별 패키지 실행
+
+#### 공통 패키지 빌드
+
+웹 애플리케이션을 실행하기 전에 공유 패키지를 빌드해야 합니다:
+
+```bash
+# 프로젝트 루트 디렉토리에서
+cd packages/ufb-shared
+pnpm build
+```
+
+#### UI 패키지 빌드
+
+웹 애플리케이션을 실행하기 전에 UI 패키지들을 빌드해야 합니다:
+
+```bash
+# 프로젝트 루트 디렉토리에서
+cd packages/ufb-tailwindcss
+pnpm build
+```
+
+#### 각 서버 개별 실행
+
+각 서버를 개별적으로 실행하려면:
+
+```bash
+# API 서버만 실행
+cd apps/api
+pnpm dev
+
+# 웹 서버만 실행
+cd apps/web
+pnpm dev
+```
+
+## 프로덕션 빌드
+
+프로덕션 환경을 위한 애플리케이션을 빌드하려면:
+
+```bash
+# 프로젝트 루트 디렉토리에서
+pnpm build
+```
+
+이 명령어는 API 서버와 웹 서버를 모두 빌드합니다.
+
+## 프로덕션 모드 실행
+
+프로덕션 빌드를 실행하려면:
+
+```bash
+# API 서버 실행
+cd apps/api
+pnpm start
+
+# 웹 서버 실행
+cd apps/web
+pnpm start
+```
+
+## API 타입 생성
+
+백엔드 API가 실행 중일 때 프론트엔드용 API 타입을 생성할 수 있습니다:
+
+```bash
+cd apps/web
+pnpm generate-api-type
+```
+
+이 명령어는 OpenAPI 명세로 TypeScript 타입을 생성하고 `src/shared/types/api.type.ts` 파일에 저장합니다.
+
+**참고**: 이 명령어가 제대로 작동하려면 API 서버가 `http://localhost:4000`에서 실행 중이어야 합니다.
+
+## 코드 품질 관리
+
+### 린팅
+
+코드 린팅을 실행하려면:
+
+```bash
+pnpm lint
+```
+
+### 포맷팅
+
+코드 포맷팅을 실행하려면:
+
+```bash
+pnpm format
+```
+
+### 테스트
+
+테스트를 실행하려면:
+
+```bash
+pnpm test
+```
+
+## Swagger 문서
+
+API 서버가 실행 중일 때 다음 엔드포인트에서 Swagger 문서를 확인할 수 있습니다:
+
+- **API 문서**: http://localhost:4000/docs
+- **관리자 API 문서**: http://localhost:4000/admin-docs
+- **OpenAPI JSON**: http://localhost:4000/docs-json
+- **관리자 OpenAPI JSON**: http://localhost:4000/admin-docs-json
+
+## 문제 해결
+
+### 일반적인 문제
+
+1. **의존성 설치 오류**:
+
+ - Node.js 버전이 v22.19.0 이상인지 확인하세요.
+ - pnpm 버전이 v10.15.0 이상인지 확인하세요.
+ - pnpm을 최신 버전으로 업데이트하세요.
+ - `pnpm install --force`를 시도해보세요.
+
+2. **데이터베이스 연결 오류**:
+
+ - MySQL 서버가 실행 중인지 확인하세요.
+ - 데이터베이스 자격 증명이 올바른지 확인하세요.
+ - `MYSQL_PRIMARY_URL` 환경 변수 형식이 올바른지 확인하세요.
+ - Docker 인프라를 사용하는 경우 MySQL이 포트 13306(3306이 아님)에서 실행되는지 확인하세요.
+
+3. **빌드 오류**:
+
+ - UI 패키지가 빌드되었는지 확인하세요 (`pnpm build:ui`).
+ - 모든 의존성이 설치되었는지 확인하세요.
+ - TypeScript 오류를 확인하세요.
+
+4. **런타임 오류**:
+ - 환경 변수가 올바르게 설정되었는지 확인하세요.
+ - 필요한 포트가 사용 가능한지 확인하세요.
+ - 로그의 오류 메시지를 확인하세요.
diff --git a/apps/docs/docs/02-developer-guide/01-installation/04-smtp-configuration.md b/apps/docs/docs/02-developer-guide/01-installation/04-smtp-configuration.md
new file mode 100644
index 000000000..0ce4b0291
--- /dev/null
+++ b/apps/docs/docs/02-developer-guide/01-installation/04-smtp-configuration.md
@@ -0,0 +1,164 @@
+---
+id: smtp-configuration
+title: SMTP 서버 연동 가이드
+description: 운영 환경에서 인증 메일 발송을 위한 외부 SMTP 서버 연동 방법을 안내합니다.
+sidebar_position: 4
+---
+
+# SMTP 서버 연동 가이드
+
+운영 환경에서는 `smtp4dev`와 같은 로컬 테스트 서버 대신,
+**외부 SMTP 서버(Gmail, SendGrid, 회사 SMTP 등)** 와 연결하여
+인증 메일(가입, 비밀번호 재설정 등)을 정상적으로 발송할 수 있어야 합니다.
+
+이 문서에서는 SMTP 서버 연동을 위한 환경 변수 설정과 주요 연동 사례를 안내합니다.
+
+---
+
+## 1. SMTP 관련 환경 변수
+
+`api` 서비스 또는 `.env` 파일에 다음 환경변수를 설정하세요:
+
+> **참고**: 인증이 필요하지 않은 SMTP 서버의 경우 `SMTP_USERNAME`과 `SMTP_PASSWORD`는 생략할 수 있습니다.
+
+| 환경 변수 | 설명 | 필수 여부 |
+| ------------------------ | ----------------------------------------------- | --------- |
+| `SMTP_HOST` | SMTP 서버 주소 (예: smtp.gmail.com) | 필수 |
+| `SMTP_PORT` | 포트 번호 (보통 587, 465 등) | 필수 |
+| `SMTP_SENDER` | 발신 이메일 주소 (예: `noreply@yourdomain.com`) | 필수 |
+| `SMTP_USERNAME` | SMTP 인증 사용자명 (계정 ID) | 선택 |
+| `SMTP_PASSWORD` | SMTP 인증 비밀번호 또는 API 키 | 선택 |
+| `SMTP_TLS` | TLS 사용 여부 (`true` 또는 `false`) | 선택 |
+| `SMTP_CIPHER_SPEC` | TLS 암호화 알고리즘 (기본값: `TLSv1.2`) | 선택 |
+| `SMTP_OPPORTUNISTIC_TLS` | STARTTLS 사용 여부 (`true` 또는 `false`) | 선택 |
+
+> **중요**: 실제 코드에서는 `SMTP_USERNAME`과 `SMTP_PASSWORD`를 사용하며, `SMTP_TLS=true`는 포트 465에, `false`는 포트 587에 주로 사용됩니다.
+
+---
+
+## 2. Docker 환경 예시
+
+```yaml
+api:
+ image: line/abc-user-feedback-api
+ environment:
+ - SMTP_HOST=smtp.gmail.com
+ - SMTP_PORT=587
+ - SMTP_USERNAME=your-email@gmail.com
+ - SMTP_PASSWORD=your-email-app-password
+ - SMTP_SENDER=noreply@yourdomain.com
+ - SMTP_TLS=false
+ - SMTP_OPPORTUNISTIC_TLS=true
+```
+
+또는 `.env` 파일로 분리 관리할 수 있습니다:
+
+```env
+SMTP_HOST=smtp.gmail.com
+SMTP_PORT=587
+SMTP_USERNAME=your-email@gmail.com
+SMTP_PASSWORD=your-email-app-password
+SMTP_SENDER=noreply@yourdomain.com
+SMTP_TLS=false
+SMTP_OPPORTUNISTIC_TLS=true
+```
+
+---
+
+## 3. SMTP 연동 예시
+
+### ✅ Gmail SMTP 연동 (개인 테스트용)
+
+- `SMTP_HOST`: `smtp.gmail.com`
+- `SMTP_PORT`: `587`
+- `SMTP_USERNAME`: Gmail 주소 (예: `abc@gmail.com`)
+- `SMTP_PASSWORD`: **앱 비밀번호** (보안 수준 낮은 앱 허용 → 비권장)
+- `SMTP_TLS`: `false`
+- `SMTP_OPPORTUNISTIC_TLS`: `true`
+
+> Gmail 계정에 **2단계 인증**이 활성화된 경우 [앱 비밀번호](https://myaccount.google.com/apppasswords)를 생성해야 합니다.
+
+---
+
+### ✅ SendGrid 연동 (권장)
+
+- `SMTP_HOST`: `smtp.sendgrid.net`
+- `SMTP_PORT`: `587`
+- `SMTP_USERNAME`: `apikey`
+- `SMTP_PASSWORD`: 실제 SendGrid API Key
+- `SMTP_SENDER`: verified sender 주소
+- `SMTP_TLS`: `false`
+- `SMTP_OPPORTUNISTIC_TLS`: `true`
+
+---
+
+## 4. 테스트 방법
+
+### 4.1 메일 발송 테스트
+
+1. **이메일 인증 테스트**:
+
+ - 관리자 또는 사용자 계정 생성
+ - 이메일 인증 코드 발송 확인
+
+2. **비밀번호 재설정 테스트**:
+
+ - 비밀번호 재설정 요청
+ - 재설정 링크가 포함된 메일 수신 확인
+
+3. **사용자 초대 테스트**:
+ - 관리자가 새 사용자 초대
+ - 초대 메일 발송 확인
+
+### 4.2 로그 확인
+
+메일 발송 실패 시 다음 명령어로 상세 로그를 확인하세요:
+
+```bash
+# Docker Compose 환경
+docker compose logs api
+
+# 특정 시간대 로그 확인
+docker compose logs --since=10m api
+
+# 실시간 로그 모니터링
+docker compose logs -f api
+```
+
+SMTP 오류가 발생하면 로그에 상세 메시지가 표시됩니다.
+
+---
+
+## 5. 문제 해결 (Troubleshooting)
+
+| 문제 유형 | 원인 또는 해결 방법 |
+| -------------------------- | ---------------------------------------- |
+| 인증 오류 (`535`) | `SMTP_USERNAME` / `SMTP_PASSWORD` 재확인 |
+| 연결 거부 (`ECONNREFUSED`) | 방화벽 또는 잘못된 포트 설정 |
+| 메일 안 도착 | `SMTP_SENDER`가 인증되지 않음 |
+| TLS 오류 (`ETLS`) | `SMTP_TLS` 설정이 잘못됨 |
+| STARTTLS 실패 | `SMTP_OPPORTUNISTIC_TLS` 설정 확인 |
+
+---
+
+## 6. SMTP와 관련된 메일 템플릿
+
+현재 시스템에서 메일은 다음 상황에서 발송됩니다:
+
+- **이메일 인증**: 관리자/사용자 가입 시 인증 코드 발송
+- **비밀번호 재설정**: 비밀번호 재설정 요청 시 링크 발송
+- **사용자 초대**: 관리자가 사용자를 초대할 때 초대 메일 발송
+
+메일 내용은 **Handlebars 템플릿** 기반으로 구성되어 있으며, 다음 정보가 포함됩니다:
+
+- 발신자: `"User feedback" `
+- 기본 URL: `ADMIN_WEB_URL` 환경변수 값 사용
+- 템플릿 위치: `src/configs/modules/mailer-config/templates/`
+
+---
+
+## 관련 문서
+
+- [Docker Hub 설치 가이드](./01-docker-hub-images.md)
+- [환경 변수 설정](./05-configuration.md)
+- [초기 셋팅 가이드](/docs/01-user-guide/01-getting-started.md)
diff --git a/apps/docs/docs/02-developer-guide/01-installation/05-configuration.md b/apps/docs/docs/02-developer-guide/01-installation/05-configuration.md
new file mode 100644
index 000000000..1ed503bd7
--- /dev/null
+++ b/apps/docs/docs/02-developer-guide/01-installation/05-configuration.md
@@ -0,0 +1,157 @@
+---
+id: configuration
+title: 환경 변수 구성
+description: ABC User Feedback의 API 및 웹 서버 환경 변수 구성 방법을 설명합니다.
+sidebar_position: 5
+---
+
+# 환경 변수 구성
+
+이 문서에서는 ABC User Feedback의 **API 서버** 및 **웹 서버**에서 사용하는 주요 환경 변수와 설정 방법을 설명합니다.
+
+---
+
+## 1. API 서버 환경 변수
+
+### 필수 환경 변수
+
+| 환경 변수 | 설명 | 기본값 | 예시 |
+| ---------------------------- | ------------------------- | ------ | -------------------------------- |
+| `JWT_SECRET` | JWT 서명을 위한 시크릿 키 | 없음 | `jwtsecretjwtsecretjwtsecret` |
+| `MYSQL_PRIMARY_URL` | MySQL 연결 URL | 없음 | `mysql://user:pass@host:3306/db` |
+| `ACCESS_TOKEN_EXPIRED_TIME` | Access Token 유효 시간 | `10m` | `10m`, `30s`, `1h` |
+| `REFRESH_TOKEN_EXPIRED_TIME` | Refresh Token 유효 시간 | `1h` | `1h`, `7d` |
+
+> JWT 시크릿은 충분히 복잡하고 안전한 문자열을 사용해야 합니다.
+
+⚠️ **보안 주의사항**:
+
+- `JWT_SECRET`은 최소 32자 이상의 복잡한 문자열을 사용하세요
+- 프로덕션 환경에서는 절대 기본값을 사용하지 마세요
+- 환경 변수 파일(`.env`)은 버전 관리에 포함하지 마세요
+- 민감한 정보는 환경 변수나 시크릿 관리 시스템을 통해 관리하세요
+
+---
+
+### 선택 환경 변수
+
+| 환경 변수 | 설명 | 기본값 | 예시 |
+| ---------------------- | ------------------------------- | ----------------------- | --------------------------- |
+| `APP_PORT` | API 서버 포트 | `4000` | `4000` |
+| `APP_ADDRESS` | 바인딩 주소 | `0.0.0.0` | `127.0.0.1` |
+| `ADMIN_WEB_URL` | 관리자 웹 URL | `http://localhost:3000` | `https://admin.company.com` |
+| `MYSQL_SECONDARY_URLS` | 보조 DB URL (JSON 배열) | 없음 | `["mysql://..."]` |
+| `AUTO_MIGRATION` | 앱 시작 시 DB 자동 마이그레이션 | `true` | `false` |
+| `MASTER_API_KEY` | 마스터 권한 API 키 (선택) | 없음 | `abc123xyz` |
+| `NODE_OPTIONS` | Node 실행 옵션 | 없음 | `--max_old_space_size=4096` |
+
+---
+
+### SMTP 설정 (이메일 인증)
+
+| 환경 변수 | 설명 | 예시 |
+| ------------------------ | ------------------------- | ------------------------------ |
+| `SMTP_HOST` | SMTP 서버 주소 | `smtp.gmail.com` |
+| `SMTP_PORT` | 포트 (보통 587 또는 465) | `587` |
+| `SMTP_USERNAME` | 로그인 사용자 | `user@example.com` |
+| `SMTP_PASSWORD` | 로그인 비밀번호 또는 토큰 | `app-password` |
+| `SMTP_SENDER` | 발신자 주소 | `noreply@company.com` |
+| `SMTP_BASE_URL` | 메일 내 링크용 기본 URL | `https://feedback.company.com` |
+| `SMTP_TLS` | TLS 사용 여부 | `true` |
+| `SMTP_CIPHER_SPEC` | 암호화 스펙 | `TLSv1.2` |
+| `SMTP_OPPORTUNISTIC_TLS` | STARTTLS 지원 여부 | `true` |
+
+📎 자세한 설정은 [SMTP 연동 가이드](./04-smtp-configuration.md)를 참고하세요.
+
+---
+
+## 2. OpenSearch 설정 (선택)
+
+| 환경 변수 | 설명 | 예시 |
+| --------------------- | ---------------------- | ----------------------- |
+| `OPENSEARCH_USE` | OpenSearch 활성화 여부 | `true` |
+| `OPENSEARCH_NODE` | OpenSearch 노드 URL | `http://localhost:9200` |
+| `OPENSEARCH_USERNAME` | 인증 ID | `admin` |
+| `OPENSEARCH_PASSWORD` | 인증 비밀번호 | `admin123` |
+
+> OpenSearch는 검색 속도 향상 및 AI 기능 개선에 사용됩니다.
+
+---
+
+## 3. 자동 피드백 삭제 설정
+
+| 환경 변수 | 설명 | 기본값 / 조건 |
+| ------------------------------------ | ------------------------------ | ----------------------- |
+| `AUTO_FEEDBACK_DELETION_ENABLED` | 오래된 피드백 삭제 기능 활성화 | `false` |
+| `AUTO_FEEDBACK_DELETION_PERIOD_DAYS` | 삭제 기준 일수 | `365` (필수 if enabled) |
+
+---
+
+## 4. 웹 서버 환경 변수
+
+### 필수 환경 변수
+
+| 환경 변수 | 설명 | 예시 |
+| -------------------------- | ----------------------------------- | ----------------------- |
+| `NEXT_PUBLIC_API_BASE_URL` | 클라이언트에서 사용할 API 서버 주소 | `http://localhost:4000` |
+
+### 선택 환경 변수
+
+| 환경 변수 | 설명 | 기본값 | 예시 |
+| --------- | --------------- | ------ | ------ |
+| `PORT` | 프론트엔드 포트 | `3000` | `3000` |
+
+---
+
+## 5. 설정 방법
+
+### Docker Compose 예시
+
+```yaml
+services:
+ api:
+ image: line/abc-user-feedback-api
+ environment:
+ - JWT_SECRET=changeme
+ - MYSQL_PRIMARY_URL=mysql://user:pass@mysql:3306/userfeedback
+ - SMTP_HOST=smtp.sendgrid.net
+ - SMTP_USERNAME=apikey
+ - SMTP_PASSWORD=your-sendgrid-key
+```
+
+### .env 파일 예시
+
+```
+# apps/api/.env
+JWT_SECRET=changemechangemechangeme
+MYSQL_PRIMARY_URL=mysql://root:pass@localhost:3306/db
+ACCESS_TOKEN_EXPIRED_TIME=10m
+REFRESH_TOKEN_EXPIRED_TIME=1h
+SMTP_HOST=smtp.example.com
+SMTP_SENDER=noreply@example.com
+
+# apps/web/.env
+NEXT_PUBLIC_API_BASE_URL=http://localhost:4000
+```
+
+---
+
+## 7. 문제 해결 가이드
+
+| 문제 | 원인 및 해결책 |
+| ------------------------- | -------------------------------------------- |
+| 환경 변수가 인식되지 않음 | `.env` 위치 확인 또는 컨테이너 재시작 |
+| DB 연결 실패 | `MYSQL_PRIMARY_URL` 형식 또는 연결 정보 확인 |
+| SMTP 오류 | 포트/TLS 설정 또는 인증 정보 재확인 |
+| OpenSearch 오류 | 노드 URL 또는 사용자 인증 확인 |
+| JWT 토큰 오류 | `JWT_SECRET` 길이 및 복잡성 확인 |
+| 환경 변수 검증 실패 | 필수 환경 변수 누락 또는 타입 오류 확인 |
+| 포트 충돌 | `APP_PORT`, `PORT` 설정 확인 |
+
+---
+
+## 관련 문서
+
+- [Docker 설치 가이드](./01-docker-hub-images.md)
+- [SMTP 연동 가이드](./04-smtp-configuration.md)
+- [초기 셋팅 가이드](/docs/01-user-guide/01-getting-started.md)
diff --git a/apps/docs/docs/02-developer-guide/01-installation/_category_.json b/apps/docs/docs/02-developer-guide/01-installation/_category_.json
new file mode 100644
index 000000000..df563a166
--- /dev/null
+++ b/apps/docs/docs/02-developer-guide/01-installation/_category_.json
@@ -0,0 +1,4 @@
+{
+ "position": 1,
+ "label": "설치"
+}
diff --git a/apps/docs/docs/02-developer-guide/02-api-integration.md b/apps/docs/docs/02-developer-guide/02-api-integration.md
new file mode 100644
index 000000000..f3ecffced
--- /dev/null
+++ b/apps/docs/docs/02-developer-guide/02-api-integration.md
@@ -0,0 +1,532 @@
+---
+sidebar_position: 2
+title: "API 연동"
+description: "ABC User Feedback API를 활용한 외부 시스템 연동 방법과 실제 구현 예시를 안내합니다."
+---
+
+# API 연동
+
+ABC User Feedback은 **RESTful API**를 통해 외부 시스템과 연동할 수 있습니다. 프로그래매틱하게 피드백을 수집하고, 이슈를 관리하며, 데이터를 조회할 수 있어 기존 서비스나 워크플로우에 쉽게 통합할 수 있습니다.
+
+---
+
+## API 기본 정보
+
+### 공식 API 문서
+
+ABC User Feedback의 **완전한 API 문서**는 다음 링크에서 확인할 수 있습니다:
+
+🔗 **[공식 API 문서 (Redocly)](https://line.github.io/abc-user-feedback/)**
+
+이 문서에서는 모든 엔드포인트의 상세한 스펙, 요청/응답 예제, 그리고 실제 테스트가 가능한 인터페이스를 제공합니다.
+
+### Base URL
+
+```
+https://your-domain.com/api
+```
+
+### 인증 방식
+
+모든 API 요청은 **API 키 기반 인증**을 사용합니다.
+
+```http
+X-API-KEY: your-api-key-here
+Content-Type: application/json
+```
+
+:::warning 보안 주의사항
+API 키는 서버 사이드에서만 사용하고, 클라이언트(브라우저, 모바일 앱)에 노출하지 마세요.
+:::
+
+### API 키 발급 방법
+
+1. **관리자 페이지 접속**: ABC User Feedback 관리자 페이지에 로그인
+2. **프로젝트 설정**: 해당 프로젝트의 설정 페이지로 이동
+3. **API 키 관리**: "API 키 관리" 메뉴에서 새 API 키 생성
+4. **키 복사**: 생성된 API 키를 안전한 곳에 저장
+
+:::info API 키 권한
+API 키는 프로젝트별로 발급되며, 해당 프로젝트의 데이터에만 접근할 수 있습니다.
+:::
+
+---
+
+## 주요 API 엔드포인트 예제
+
+### 1. 피드백 생성
+
+#### 기본 피드백 생성
+
+```javascript
+const createFeedback = async (
+ projectId,
+ channelId,
+ message,
+ issueNames = []
+) => {
+ const response = await fetch(
+ `/api/projects/${projectId}/channels/${channelId}/feedbacks`,
+ {
+ method: "POST",
+ headers: {
+ "Content-Type": "application/json",
+ "X-API-KEY": "your-api-key-here",
+ },
+ body: JSON.stringify({
+ message: message,
+ issueNames: issueNames,
+ }),
+ }
+ );
+
+ return await response.json();
+};
+
+// 사용 예제
+const feedback = await createFeedback(1, 1, "결제 오류가 발생했습니다", [
+ "결제",
+ "오류",
+]);
+```
+
+### 2. 피드백 조회
+
+#### 채널별 피드백 검색
+
+```javascript
+const searchFeedbacks = async (
+ projectId,
+ channelId,
+ searchText,
+ limit = 10,
+ page = 1
+) => {
+ const response = await fetch(
+ `/api/projects/${projectId}/channels/${channelId}/feedbacks/search`,
+ {
+ method: "POST",
+ headers: {
+ "Content-Type": "application/json",
+ "X-API-KEY": "your-api-key-here",
+ },
+ body: JSON.stringify({
+ limit: limit,
+ page: page,
+ query: {
+ searchText: searchText,
+ createdAt: {
+ gte: "2024-01-01",
+ lt: "2024-12-31",
+ },
+ },
+ sort: {
+ createdAt: "DESC",
+ },
+ }),
+ }
+ );
+
+ return await response.json();
+};
+
+// 사용 예제
+const feedbacks = await searchFeedbacks(1, 1, "결제", 20, 1);
+console.log(
+ `총 ${feedbacks.meta.totalItems}개의 피드백 중 ${feedbacks.items.length}개 조회`
+);
+```
+
+#### 단일 피드백 조회
+
+```javascript
+const getFeedbackById = async (projectId, channelId, feedbackId) => {
+ const response = await fetch(
+ `/api/projects/${projectId}/channels/${channelId}/feedbacks/${feedbackId}`,
+ {
+ method: "GET",
+ headers: {
+ "X-API-KEY": "your-api-key-here",
+ },
+ }
+ );
+
+ return await response.json();
+};
+
+// 사용 예제
+const feedback = await getFeedbackById(1, 1, 123);
+console.log("피드백 상세:", feedback);
+```
+
+#### 피드백 업데이트
+
+```javascript
+const updateFeedback = async (projectId, channelId, feedbackId, updateData) => {
+ const response = await fetch(
+ `/api/projects/${projectId}/channels/${channelId}/feedbacks/${feedbackId}`,
+ {
+ method: "PUT",
+ headers: {
+ "Content-Type": "application/json",
+ "X-API-KEY": "your-api-key-here",
+ },
+ body: JSON.stringify(updateData),
+ }
+ );
+
+ return await response.json();
+};
+
+// 사용 예제
+const updatedFeedback = await updateFeedback(1, 1, 123, {
+ message: "수정된 피드백 내용",
+ issueNames: ["수정된 이슈"],
+});
+```
+
+#### 피드백 삭제
+
+```javascript
+const deleteFeedbacks = async (projectId, channelId, feedbackIds) => {
+ const response = await fetch(
+ `/api/projects/${projectId}/channels/${channelId}/feedbacks`,
+ {
+ method: "DELETE",
+ headers: {
+ "Content-Type": "application/json",
+ "X-API-KEY": "your-api-key-here",
+ },
+ body: JSON.stringify({
+ feedbackIds: feedbackIds,
+ }),
+ }
+ );
+
+ return await response.json();
+};
+
+// 사용 예제
+const result = await deleteFeedbacks(1, 1, [123, 124, 125]);
+console.log("삭제 완료:", result);
+```
+
+### 3. 이슈 관리
+
+#### 이슈 생성
+
+```javascript
+const createIssue = async (projectId, name, description) => {
+ const response = await fetch(`/api/projects/${projectId}/issues`, {
+ method: "POST",
+ headers: {
+ "Content-Type": "application/json",
+ "X-API-KEY": "your-api-key-here",
+ },
+ body: JSON.stringify({
+ name: name,
+ description: description,
+ }),
+ });
+
+ return await response.json();
+};
+
+// 사용 예제
+const issue = await createIssue(
+ 1,
+ "결제 오류",
+ "사용자가 결제 과정에서 오류를 경험함"
+);
+```
+
+#### 이슈 검색
+
+```javascript
+const searchIssues = async (projectId, query = {}) => {
+ const response = await fetch(`/api/projects/${projectId}/issues/search`, {
+ method: "POST",
+ headers: {
+ "Content-Type": "application/json",
+ "X-API-KEY": "your-api-key-here",
+ },
+ body: JSON.stringify({
+ limit: 10,
+ page: 1,
+ query: query,
+ sort: {
+ createdAt: "DESC",
+ },
+ }),
+ });
+
+ return await response.json();
+};
+
+// 사용 예제
+const issues = await searchIssues(1, { name: "결제" });
+```
+
+#### 이슈 조회
+
+```javascript
+const getIssueById = async (projectId, issueId) => {
+ const response = await fetch(`/api/projects/${projectId}/issues/${issueId}`, {
+ method: "GET",
+ headers: {
+ "X-API-KEY": "your-api-key-here",
+ },
+ });
+
+ return await response.json();
+};
+
+// 사용 예제
+const issue = await getIssueById(1, 123);
+console.log("이슈 상세:", issue);
+```
+
+#### 이슈 업데이트
+
+```javascript
+const updateIssue = async (projectId, issueId, updateData) => {
+ const response = await fetch(`/api/projects/${projectId}/issues/${issueId}`, {
+ method: "PUT",
+ headers: {
+ "Content-Type": "application/json",
+ "X-API-KEY": "your-api-key-here",
+ },
+ body: JSON.stringify(updateData),
+ });
+
+ return await response.json();
+};
+
+// 사용 예제
+const updatedIssue = await updateIssue(1, 123, {
+ name: "수정된 이슈명",
+ description: "수정된 이슈 설명",
+});
+```
+
+#### 이슈 삭제
+
+```javascript
+const deleteIssues = async (projectId, issueIds) => {
+ const response = await fetch(`/api/projects/${projectId}/issues`, {
+ method: "DELETE",
+ headers: {
+ "Content-Type": "application/json",
+ "X-API-KEY": "your-api-key-here",
+ },
+ body: JSON.stringify({
+ issueIds: issueIds,
+ }),
+ });
+
+ return await response.json();
+};
+
+// 사용 예제
+const result = await deleteIssues(1, [123, 124, 125]);
+console.log("이슈 삭제 완료:", result);
+```
+
+#### 피드백에 이슈 추가
+
+```javascript
+const addIssueToFeedback = async (
+ projectId,
+ channelId,
+ feedbackId,
+ issueId
+) => {
+ const response = await fetch(
+ `/api/projects/${projectId}/channels/${channelId}/feedbacks/${feedbackId}/issues/${issueId}`,
+ {
+ method: "POST",
+ headers: {
+ "X-API-KEY": "your-api-key-here",
+ },
+ }
+ );
+
+ return await response.json();
+};
+
+// 사용 예제
+const result = await addIssueToFeedback(1, 1, 123, 456);
+console.log("이슈 추가 완료:", result);
+```
+
+#### 피드백에서 이슈 제거
+
+```javascript
+const removeIssueFromFeedback = async (
+ projectId,
+ channelId,
+ feedbackId,
+ issueId
+) => {
+ const response = await fetch(
+ `/api/projects/${projectId}/channels/${channelId}/feedbacks/${feedbackId}/issues/${issueId}`,
+ {
+ method: "DELETE",
+ headers: {
+ "X-API-KEY": "your-api-key-here",
+ },
+ }
+ );
+
+ return await response.json();
+};
+
+// 사용 예제
+const result = await removeIssueFromFeedback(1, 1, 123, 456);
+console.log("이슈 제거 완료:", result);
+```
+
+### 4. 프로젝트 및 채널 정보
+
+#### 프로젝트 정보 조회
+
+```javascript
+const getProjectInfo = async (projectId) => {
+ const response = await fetch(`/api/projects/${projectId}`, {
+ method: "GET",
+ headers: {
+ "X-API-KEY": "your-api-key-here",
+ },
+ });
+
+ return await response.json();
+};
+
+// 사용 예제
+const project = await getProjectInfo(1);
+console.log("프로젝트 정보:", project);
+```
+
+#### 채널 필드 조회
+
+```javascript
+const getChannelFields = async (projectId, channelId) => {
+ const response = await fetch(
+ `/api/projects/${projectId}/channels/${channelId}/fields`,
+ {
+ method: "GET",
+ headers: {
+ "X-API-KEY": "your-api-key-here",
+ },
+ }
+ );
+
+ return await response.json();
+};
+
+// 사용 예제
+const fields = await getChannelFields(1, 1);
+console.log("채널 필드:", fields);
+```
+
+---
+
+## Swagger를 통한 API 테스트
+
+ABC User Feedback은 **Swagger UI**를 제공하여 API를 쉽게 테스트하고 이해할 수 있습니다.
+
+### Swagger 접근 방법
+
+**API 서버 주소 + `/docs`** 로 접속합니다:
+
+```
+https://your-domain.com/api/docs
+```
+
+또는 **ReDoc 형식**으로:
+
+```
+https://your-domain.com/api/docs/redoc
+```
+
+### Swagger에서 API 키 설정
+
+1. Swagger UI 상단의 **"Authorize"** 버튼 클릭
+2. **X-API-KEY** 필드에 발급받은 API 키 입력
+3. **"Authorize"** 클릭으로 인증 완료
+
+이후 모든 API 요청에서 자동으로 API 키가 포함되어 테스트할 수 있습니다.
+
+### Swagger 활용 팁
+
+- **"Try it out"** 버튼으로 실제 API 호출 테스트
+- **Response body** 섹션에서 실제 응답 데이터 구조 확인
+- **Schema** 탭에서 요청/응답 데이터 형식 상세 확인
+- **cURL** 명령어 자동 생성으로 CLI 테스트 가능
+
+---
+
+## 에러 처리 및 재시도 로직
+
+### HTTP 상태 코드
+
+| 상태 코드 | 의미 | 처리 방법 |
+| --------- | -------------- | ----------------------- |
+| **200** | 성공 | 정상 처리 |
+| **400** | 잘못된 요청 | 요청 데이터 검증 |
+| **401** | 인증 실패 | API 키 확인 |
+| **403** | 권한 없음 | 프로젝트 접근 권한 확인 |
+| **404** | 리소스 없음 | ID 값 확인 |
+| **429** | 요청 한도 초과 | 잠시 후 재시도 |
+| **500** | 서버 오류 | 재시도 또는 지원팀 문의 |
+
+## 응답 데이터 파싱 방법
+
+### 페이지네이션 응답 구조
+
+```json
+{
+ "meta": {
+ "itemCount": 10,
+ "totalItems": 100,
+ "itemsPerPage": 10,
+ "totalPages": 10,
+ "currentPage": 1
+ },
+ "items": [
+ {
+ "id": 1,
+ "message": "피드백 내용",
+ "createdAt": "2024-01-01T00:00:00.000Z",
+ "issues": [
+ {
+ "id": 1,
+ "name": "이슈명"
+ }
+ ]
+ }
+ ]
+}
+```
+
+## 보안 및 성능 최적화
+
+### API 키 보안
+
+- **환경 변수 사용**: API 키를 환경 변수로 관리
+- **서버 사이드만**: 클라이언트에 API 키 노출 금지
+- **키 로테이션**: 정기적인 API 키 교체
+- **IP 화이트리스트**: 가능한 경우 특정 IP에서만 접근 허용
+
+### 성능 최적화
+
+- **페이지네이션 활용**: 대량 데이터 조회 시 적절한 limit 설정
+- **필요한 필드만 요청**: 쿼리 최적화로 응답 속도 개선
+- **캐싱 전략**: 자주 조회하는 데이터는 클라이언트 사이드 캐싱
+- **배치 처리**: 여러 요청을 묶어서 처리
+
+## 관련 문서
+
+- [API 키 관리](/docs/01-user-guide/07-settings/02-api-key-management.md) - UI에서 API 키 발급하는 방법
+- [이미지 설정](/docs/01-user-guide/07-settings/06-image-setting.md) - 이미지 업로드 API 사용을 위한 설정
+- [Webhook 연동](/docs/01-user-guide/07-settings/04-webhook-management.md) - API와 함께 활용할 수 있는 실시간 알림 설정
diff --git a/apps/docs/docs/02-developer-guide/03-oauth-integration.md b/apps/docs/docs/02-developer-guide/03-oauth-integration.md
new file mode 100644
index 000000000..bbecdecbe
--- /dev/null
+++ b/apps/docs/docs/02-developer-guide/03-oauth-integration.md
@@ -0,0 +1,171 @@
+---
+sidebar_position: 3
+title: "OAuth 연동"
+description: "Google OAuth 및 커스텀 OAuth 제공자를 통한 싱글 사인온(SSO) 연동 방법을 안내합니다."
+---
+
+# OAuth 연동
+
+ABC User Feedback에서 OAuth 2.0 기반의 싱글 사인온(SSO)을 설정하면, 사용자들이 별도의 계정 생성 없이 기존 계정(Google, Microsoft, GitHub 등)으로 로그인할 수 있습니다. 이는 사용자 편의성을 높이고 기업 환경에서 통합 인증을 구현하는 데 필수적입니다.
+
+---
+
+## OAuth 연동 개요
+
+ABC User Feedback에서 지원하는 OAuth 방식:
+
+### 1. Google OAuth
+
+- 별도 설정 없이 기본 제공
+- Google 계정을 통한 간편 로그인
+
+### 2. 커스텀 OAuth 제공자
+
+- 사내 인증 시스템
+- 기타 OAuth 2.0/OpenID Connect 호환 서비스
+
+OAuth를 설정하면 기존 이메일 로그인과 병행하여 사용할 수 있으며, 조직 정책에 따라 OAuth만 허용하도록 제한할 수도 있습니다.
+
+---
+
+## Google OAuth 연동 설정
+
+### Google Cloud Console에서 설정
+
+#### 1. Google Cloud Console 접속
+
+[Google Cloud Console](https://console.cloud.google.com)에 접속하여 프로젝트를 생성하거나 기존 프로젝트를 선택합니다.
+
+#### 2. OAuth 2.0 클라이언트 ID 생성
+
+1. **API 및 서비스 > 사용자 인증 정보** 메뉴로 이동
+2. **+ 사용자 인증 정보 만들기 > OAuth 클라이언트 ID** 선택
+3. 애플리케이션 유형을 **웹 애플리케이션**으로 선택
+
+#### 3. 승인된 리디렉션 URI 설정
+
+**승인된 리디렉션 URI**에 다음 URL을 추가합니다:
+
+```
+https://your-domain.com/auth/oauth-callback
+```
+
+예시:
+
+- `https://feedback.company.com/auth/oauth-callback`
+- `http://localhost:3000/auth/oauth-callback` (개발 환경)
+
+#### 4. 클라이언트 정보 확인
+
+생성 완료 후 다음 정보를 확인하고 복사해둡니다:
+
+- **클라이언트 ID**: `1234567890-abc123def456.apps.googleusercontent.com`
+- **클라이언트 보안 비밀번호**: `GOCSPX-abcdef123456`
+
+### ABC User Feedback에서 Google OAuth 설정
+
+Google OAuth를 사용하려면 다음 단계를 따라 설정해야 합니다:
+
+#### 1. Google OAuth 설정 활성화
+
+**Settings > Login Management**에서:
+
+1. **OAuth2.0 Login** 토글을 활성화
+2. **Login Button Type**을 "Google Login"으로 선택
+3. Google Cloud Console에서 얻은 정보 입력:
+ - **Client ID**: Google Cloud Console에서 생성한 클라이언트 ID
+ - **Client Secret**: Google Cloud Console에서 생성한 클라이언트 보안 비밀번호
+ - **Authorization Code Request URL**: `https://accounts.google.com/o/oauth2/v2/auth`
+ - **Scope**: `openid email profile`
+ - **Access Token URL**: `https://oauth2.googleapis.com/token`
+ - **User Profile Request URL**: `https://www.googleapis.com/oauth2/v2/userinfo`
+ - **Email Key**: `email`
+
+#### 2. 리디렉션 URI 등록
+
+Google Cloud Console에서 다음 URL을 **승인된 리디렉션 URI**에 추가:
+
+```
+https://your-domain.com/auth/oauth-callback
+```
+
+개발 환경의 경우:
+
+```
+http://localhost:3000/auth/oauth-callback
+```
+
+---
+
+## 커스텀 OAuth 제공자 연동
+
+### 사내 인증 시스템 연동
+
+ABC User Feedback은 기업 환경에서 사용하는 사내 인증 시스템과 연동할 수 있습니다. 대부분의 사내 인증 시스템은 OAuth 2.0 또는 OpenID Connect 표준을 지원하므로, 표준 OAuth 플로우를 통해 연동이 가능합니다.
+
+#### 사내 인증 시스템 설정 요구사항
+
+사내 인증 시스템과 연동하려면 다음 정보가 필요합니다:
+
+1. **OAuth 클라이언트 등록**
+
+ - 클라이언트 ID
+ - 클라이언트 시크릿
+ - 리디렉션 URI: `https://your-domain.com/auth/oauth-callback`
+
+2. **OAuth 엔드포인트 정보**
+
+ - Authorization URL (인증 요청 URL)
+ - Token URL (토큰 교환 URL)
+ - User Info URL (사용자 정보 조회 URL)
+
+3. **권한 범위(Scope)**
+ - 사용자 프로필 정보 접근 권한
+ - 이메일 주소 접근 권한
+
+#### 일반적인 사내 인증 시스템 예시
+
+| 항목 | 설명 | 사내 시스템 예시 |
+| ---------------------------------- | ---------------------------------- | ------------------------------------------ |
+| **Login Button Type** | 로그인 버튼 타입 | `CUSTOM` |
+| **Login Button Name** | 로그인 버튼에 표시될 이름 | `사내 계정으로 로그인` |
+| **Client ID** | OAuth 클라이언트 ID | `company-auth-client-123` |
+| **Client Secret** | 클라이언트 보안 비밀번호 | `company-secret-abc123` |
+| **Authorization Code Request URL** | 사용자 인증 요청 URL | `https://auth.company.com/oauth/authorize` |
+| **Scope** | 요청할 권한 범위 | `openid email profile` |
+| **Access Token URL** | 토큰 요청 URL | `https://auth.company.com/oauth/token` |
+| **User Profile Request URL** | 사용자 정보 조회 API | `https://auth.company.com/api/user` |
+| **Email Key** | 사용자 정보 JSON에서 이메일 필드명 | `email` 또는 `mail` |
+
+### 기타 OAuth 2.0/OpenID Connect 호환 서비스
+
+ABC User Feedback은 OAuth 2.0 또는 OpenID Connect 표준을 준수하는 모든 인증 서비스와 연동할 수 있습니다.
+
+#### 지원 가능한 서비스 유형
+
+- **OpenID Connect 제공자**: 표준 OpenID Connect 프로토콜을 지원하는 서비스
+- **OAuth 2.0 제공자**: OAuth 2.0 Authorization Code 플로우를 지원하는 서비스
+- **커스텀 인증 서버**: 표준 OAuth 엔드포인트를 제공하는 자체 구축 서비스
+
+#### 연동 설정 방법
+
+**Settings > Login Management**에서 커스텀 OAuth를 설정합니다:
+
+1. **관리자 계정으로 로그인** 후 **Settings > Login Management** 메뉴로 이동
+2. **OAuth2.0 Login** 토글을 활성화
+3. **Login Button Type**을 `CUSTOM`으로 선택
+4. 인증 서비스 제공자로부터 받은 정보 입력:
+ - **Login Button Name**: 로그인 버튼에 표시될 텍스트 (예: "사내 계정으로 로그인")
+ - **Client ID**: OAuth 클라이언트 식별자
+ - **Client Secret**: 클라이언트 인증 비밀번호
+ - **Authorization Code Request URL**: 사용자 인증 요청 URL
+ - **Scope**: 요청할 권한 범위 (공백으로 구분, 예: "openid email profile")
+ - **Access Token URL**: 액세스 토큰 요청 URL
+ - **User Profile Request URL**: 사용자 프로필 정보 조회 URL
+ - **Email Key**: 사용자 정보 JSON에서 이메일 필드명 (예: "email" 또는 "mail")
+
+---
+
+## 관련 문서
+
+- [로그인 관리](/docs/01-user-guide/07-settings/01-tenant-settings.md) - UI에서 OAuth 설정하는 방법
diff --git a/apps/docs/docs/02-developer-guide/04-webhook-integration.md b/apps/docs/docs/02-developer-guide/04-webhook-integration.md
new file mode 100644
index 000000000..4411fa841
--- /dev/null
+++ b/apps/docs/docs/02-developer-guide/04-webhook-integration.md
@@ -0,0 +1,302 @@
+---
+sidebar_position: 4
+title: '웹훅 연동'
+description: '웹훅을 활용하여 외부 시스템과 실시간 연동하는 방법과 구현 예시를 안내합니다.'
+---
+
+# 웹훅 연동
+
+웹훅으로 ABC User Feedback에서 발생하는 주요 이벤트를 실시간으로 외부 시스템에 전달할 수 있습니다. Slack 알림, 자동화 워크플로우, 커스텀 분석 시스템 등과 연동할 수 있습니다.
+
+---
+
+## 지원되는 이벤트 타입
+
+ABC User Feedback에서 지원하는 이벤트는 다음과 같습니다:
+
+### 1. FEEDBACK_CREATION
+
+새로운 피드백이 생성되었을 때 발생합니다.
+
+**요청 헤더:**
+
+```
+Content-Type: application/json
+x-webhook-token: your-secret-token
+```
+
+**페이로드 예시:**
+
+```json
+{
+ "event": "FEEDBACK_CREATION",
+ "data": {
+ "feedback": {
+ "id": 123,
+ "createdAt": "2024-01-15T10:30:00.000Z",
+ "updatedAt": "2024-01-15T10:30:00.000Z",
+ "message": "사용자 피드백 내용",
+ "userEmail": "user@example.com",
+ "issues": [
+ {
+ "id": 456,
+ "createdAt": "2024-01-15T10:30:00.000Z",
+ "updatedAt": "2024-01-15T10:30:00.000Z",
+ "name": "버그 리포트",
+ "description": "이슈 설명",
+ "status": "OPEN",
+ "externalIssueId": "EXT-123",
+ "feedbackCount": 5
+ }
+ ]
+ },
+ "channel": {
+ "id": 1,
+ "name": "웹사이트 피드백"
+ },
+ "project": {
+ "id": 1,
+ "name": "My Project"
+ }
+ }
+}
+```
+
+### 2. ISSUE_CREATION
+
+새로운 이슈가 생성되었을 때 발생합니다.
+
+**페이로드 예시:**
+
+```json
+{
+ "event": "ISSUE_CREATION",
+ "data": {
+ "issue": {
+ "id": 789,
+ "createdAt": "2024-01-15T11:00:00.000Z",
+ "updatedAt": "2024-01-15T11:00:00.000Z",
+ "name": "새로운 이슈",
+ "description": "이슈 설명",
+ "status": "OPEN",
+ "externalIssueId": "EXT-789",
+ "feedbackCount": 0
+ },
+ "project": {
+ "id": 1,
+ "name": "My Project"
+ }
+ }
+}
+```
+
+### 3. ISSUE_STATUS_CHANGE
+
+이슈 상태가 변경되었을 때 발생합니다.
+
+**페이로드 예시:**
+
+```json
+{
+ "event": "ISSUE_STATUS_CHANGE",
+ "data": {
+ "issue": {
+ "id": 789,
+ "createdAt": "2024-01-15T11:00:00.000Z",
+ "updatedAt": "2024-01-15T12:00:00.000Z",
+ "name": "이슈 이름",
+ "description": "이슈 설명",
+ "status": "IN_PROGRESS",
+ "externalIssueId": "EXT-789",
+ "feedbackCount": 3
+ },
+ "project": {
+ "id": 1,
+ "name": "My Project"
+ },
+ "previousStatus": "OPEN"
+ }
+}
+```
+
+### 4. ISSUE_ADDITION
+
+피드백에 이슈가 추가되었을 때 발생합니다.
+
+**페이로드 예시:**
+
+```json
+{
+ "event": "ISSUE_ADDITION",
+ "data": {
+ "feedback": {
+ "id": 123,
+ "createdAt": "2024-01-15T10:30:00.000Z",
+ "updatedAt": "2024-01-15T10:30:00.000Z",
+ "message": "사용자 피드백 내용",
+ "issues": [
+ {
+ "id": 456,
+ "name": "기존 이슈",
+ "status": "OPEN"
+ },
+ {
+ "id": 789,
+ "name": "새로 추가된 이슈",
+ "status": "OPEN"
+ }
+ ]
+ },
+ "channel": {
+ "id": 1,
+ "name": "웹사이트 피드백"
+ },
+ "project": {
+ "id": 1,
+ "name": "My Project"
+ },
+ "addedIssue": {
+ "id": 789,
+ "createdAt": "2024-01-15T11:00:00.000Z",
+ "updatedAt": "2024-01-15T11:00:00.000Z",
+ "name": "새로 추가된 이슈",
+ "description": "이슈 설명",
+ "status": "OPEN",
+ "externalIssueId": "EXT-456",
+ "feedbackCount": 1
+ }
+ }
+}
+```
+
+---
+
+## 웹훅 수신 서버 구현
+
+웹훅을 받기 위한 HTTP 서버를 구현해야 합니다. 서버는 다음 요구사항을 만족해야 합니다:
+
+### 기본 요구사항
+
+1. **HTTP POST 요청 처리**: 웹훅은 HTTP POST로 전송됩니다
+2. **JSON 페이로드 파싱**: 요청 본문은 JSON 형식입니다
+3. **200 응답 코드 반환**: 처리 성공 시 반드시 200 상태 코드로 응답
+
+### 구현 예시 (Node.js/Express)
+
+```javascript
+const express = require('express');
+const app = express();
+
+app.use(express.json());
+
+app.post('/webhook', (req, res) => {
+ const { event, data } = req.body;
+ const token = req.headers['x-webhook-token'];
+
+ // 토큰 검증
+ if (token !== 'your-secret-token') {
+ return res.status(401).json({ error: 'Unauthorized' });
+ }
+
+ // 이벤트 처리
+ switch (event) {
+ case 'FEEDBACK_CREATION':
+ console.log('새 피드백 생성:', data.feedback);
+ // 피드백 처리 로직
+ break;
+ case 'ISSUE_CREATION':
+ console.log('새 이슈 생성:', data.issue);
+ // 이슈 처리 로직
+ break;
+ case 'ISSUE_STATUS_CHANGE':
+ console.log(
+ '이슈 상태 변경:',
+ data.issue,
+ '이전 상태:',
+ data.previousStatus,
+ );
+ // 상태 변경 처리 로직
+ break;
+ case 'ISSUE_ADDITION':
+ console.log('이슈 추가:', data.addedIssue);
+ // 이슈 추가 처리 로직
+ break;
+ }
+
+ res.status(200).json({ success: true });
+});
+
+app.listen(3000, () => {
+ console.log('웹훅 리스너 서버가 포트 3000에서 실행 중입니다.');
+});
+```
+
+---
+
+## 보안 및 재시도 정책
+
+### 보안 고려사항
+
+- **토큰 검증**: `x-webhook-token` 헤더를 통해 요청을 검증합니다
+- **HTTPS 사용**: 프로덕션 환경에서는 반드시 HTTPS를 사용하세요
+
+### 재시도 정책
+
+- **자동 재시도**: ABC User Feedback은 웹훅 전송 실패 시 최대 3회까지 자동 재시도합니다
+- **재시도 간격**: 각 재시도는 3초 후에 실행됩니다
+
+### 에러 처리
+
+- **4xx 에러**: 클라이언트 오류로 간주하여 재시도하지 않습니다
+- **5xx 에러**: 서버 오류로 간주하여 재시도합니다
+- **네트워크 오류**: 연결 실패 시 재시도합니다
+
+---
+
+## 활용 사례
+
+### 1. 자동 번역
+
+```javascript
+// FEEDBACK_CREATION 이벤트를 받아서 자동 번역
+if (event === 'FEEDBACK_CREATION') {
+ const translatedMessage = await translateText(data.feedback.message);
+ // 번역된 내용을 피드백에 업데이트
+ await updateFeedback(data.feedback.id, { translatedMessage });
+}
+```
+
+### 2. 외부 티켓 시스템 연동
+
+```javascript
+// ISSUE_CREATION 이벤트를 받아서 외부 시스템에 티켓 생성
+if (event === 'ISSUE_CREATION') {
+ const ticketId = await createExternalTicket({
+ title: data.issue.name,
+ description: data.issue.description,
+ priority: 'medium',
+ });
+ // 외부 티켓 ID를 이슈에 저장
+ await updateIssue(data.issue.id, { externalIssueId: ticketId });
+}
+```
+
+### 3. 알림 시스템 연동
+
+```javascript
+// ISSUE_STATUS_CHANGE 이벤트를 받아서 팀에 알림
+if (event === 'ISSUE_STATUS_CHANGE') {
+ await sendSlackNotification({
+ channel: '#feedback-alerts',
+ message: `이슈 "${data.issue.name}"의 상태가 ${data.previousStatus}에서 ${data.issue.status}로 변경되었습니다.`,
+ });
+}
+```
+
+---
+
+## 관련 문서
+
+- [웹훅 관리](/docs/01-user-guide/07-settings/04-webhook-management.md) - UI에서 웹훅 설정하는 방법
+- [API 연동](./02-api-integration.md) - 웹훅과 함께 사용할 수 있는 API 활용
+- [이슈 관리](/docs/01-user-guide/05-issue-management.md) - 이슈 상태 변경 이벤트 이해
diff --git a/apps/docs/docs/02-developer-guide/_category_.json b/apps/docs/docs/02-developer-guide/_category_.json
new file mode 100644
index 000000000..da7f033da
--- /dev/null
+++ b/apps/docs/docs/02-developer-guide/_category_.json
@@ -0,0 +1,4 @@
+{
+ "position": 3,
+ "label": "개발자 가이드"
+}
diff --git a/apps/docs/docusaurus.config.ts b/apps/docs/docusaurus.config.ts
new file mode 100644
index 000000000..aec3ca0e4
--- /dev/null
+++ b/apps/docs/docusaurus.config.ts
@@ -0,0 +1,68 @@
+import type * as Preset from '@docusaurus/preset-classic';
+import type { Config } from '@docusaurus/types';
+import { themes as prismThemes } from 'prism-react-renderer';
+
+// This runs in Node.js - Don't use client-side code here (browser APIs, JSX...)
+
+const config: Config = {
+ title: 'ABC User Feedback',
+ tagline:
+ 'ABC User Feedback is a standalone web application designed to manage Voice of Customer (VoC) data',
+ favicon: 'img/logo.svg',
+ url: 'https://docs.abc-user-feedback.com',
+ // Set the // pathname under which your site is served
+ // For GitHub pages deployment, it is often '//'
+ baseUrl: '/',
+
+ // // Even if you don't use internationalization, you can use this field to set
+ // // useful metadata like html lang. For example, if your site is Chinese, you
+ // // may want to replace "en" with "zh-Hans".
+ // i18n: {
+ // defaultLocale: 'en',
+ // locales: ['en', 'zh', 'de', 'ja', 'ko'],
+ // },
+
+ presets: [
+ [
+ 'classic',
+ {
+ docs: {
+ routeBasePath: '/',
+ sidebarPath: './sidebars.ts',
+ editUrl:
+ 'https://github.com/line/abc-user-feedback/tree/feat/docs/apps/docs',
+ },
+ } satisfies Preset.Options,
+ ],
+ ],
+ themeConfig: {
+ // Replace with your project's social card
+ image: 'img/docusaurus-social-card.jpg',
+ navbar: {
+ title: 'ABC User Feedback',
+ logo: { alt: 'LOGO', src: 'img/logo.svg' },
+ items: [
+ {
+ type: 'docSidebar',
+ sidebarId: 'docs',
+ position: 'left',
+ label: 'Docs',
+ },
+ {
+ href: 'https://github.com/line/abc-user-feedback',
+ label: 'GitHub',
+ position: 'right',
+ },
+ ],
+ },
+ footer: {
+ copyright: `Copyright © ${new Date().getFullYear()} ABC User Feedback.`,
+ },
+ prism: {
+ theme: prismThemes.github,
+ darkTheme: prismThemes.dracula,
+ },
+ } satisfies Preset.ThemeConfig,
+};
+
+export default config;
diff --git a/apps/docs/eslint.config.mjs b/apps/docs/eslint.config.mjs
new file mode 100644
index 000000000..67bd65d26
--- /dev/null
+++ b/apps/docs/eslint.config.mjs
@@ -0,0 +1,8 @@
+import baseConfig from '@ufb/eslint-config/base';
+
+export default [
+ {
+ ignores: ['dist/**', '**/*.js'],
+ },
+ ...baseConfig,
+];
diff --git a/apps/docs/package.json b/apps/docs/package.json
new file mode 100644
index 000000000..8b4cb2f72
--- /dev/null
+++ b/apps/docs/package.json
@@ -0,0 +1,39 @@
+{
+ "name": "docs",
+ "version": "0.0.0",
+ "private": true,
+ "scripts": {
+ "docusaurus": "docusaurus",
+ "dev": "docusaurus start",
+ "build": "docusaurus build",
+ "swizzle": "docusaurus swizzle",
+ "deploy": "docusaurus deploy",
+ "clear": "docusaurus clear",
+ "start": "docusaurus serve",
+ "write-translations": "docusaurus write-translations",
+ "write-heading-ids": "docusaurus write-heading-ids",
+ "lint": "eslint",
+ "typecheck": "tsc"
+ },
+ "dependencies": {
+ "@docusaurus/core": "3.7.0",
+ "@docusaurus/preset-classic": "3.7.0",
+ "@mdx-js/react": "^3.0.0",
+ "clsx": "^2.1.1",
+ "prism-react-renderer": "^2.3.0",
+ "react": "^19.2.0",
+ "react-dom": "^19.2.0"
+ },
+ "devDependencies": {
+ "@docusaurus/module-type-aliases": "3.7.0",
+ "@docusaurus/tsconfig": "3.7.0",
+ "@docusaurus/types": "3.7.0",
+ "@ufb/eslint-config": "workspace:*",
+ "@ufb/prettier-config": "workspace:*",
+ "@ufb/tsconfig": "workspace:*",
+ "eslint": "catalog:",
+ "prettier": "catalog:",
+ "typescript": "catalog:"
+ },
+ "prettier": "@ufb/prettier-config"
+}
diff --git a/apps/docs/sidebars.ts b/apps/docs/sidebars.ts
new file mode 100644
index 000000000..5a4708d5f
--- /dev/null
+++ b/apps/docs/sidebars.ts
@@ -0,0 +1,48 @@
+/**
+ * Copyright 2025 LY Corporation
+ *
+ * LY Corporation licenses this file to you under the Apache License,
+ * version 2.0 (the "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at:
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations
+ * under the License.
+ */
+import type { SidebarsConfig } from '@docusaurus/plugin-content-docs';
+
+// This runs in Node.js - Don't use client-side code here (browser APIs, JSX...)
+
+/**
+ * Creating a sidebar enables you to:
+ - create an ordered group of docs
+ - render a sidebar for each doc of that group
+ - provide next/previous navigation
+
+ The sidebars can be generated from the filesystem, or explicitly defined here.
+
+ Create as many sidebars as you want.
+ */
+const sidebars: SidebarsConfig = {
+ // By default, Docusaurus generates a sidebar from the docs folder structure
+ docs: [{ type: 'autogenerated', dirName: '.' }],
+
+ // But you can create a sidebar manually
+ /*
+ tutorialSidebar: [
+ 'intro',
+ 'hello',
+ {
+ type: 'category',
+ label: 'Tutorial',
+ items: ['tutorial-basics/create-a-document'],
+ },
+ ],
+ */
+};
+
+export default sidebars;
diff --git a/apps/docs/static/.nojekyll b/apps/docs/static/.nojekyll
new file mode 100644
index 000000000..e69de29bb
diff --git a/apps/docs/static/assets/01-feedback-tag.png b/apps/docs/static/assets/01-feedback-tag.png
new file mode 100644
index 000000000..a361eaf40
Binary files /dev/null and b/apps/docs/static/assets/01-feedback-tag.png differ
diff --git a/apps/docs/static/assets/02-Issue-Kanban.png b/apps/docs/static/assets/02-Issue-Kanban.png
new file mode 100644
index 000000000..cd89ba6f8
Binary files /dev/null and b/apps/docs/static/assets/02-Issue-Kanban.png differ
diff --git a/apps/docs/static/assets/03-issue-tracker.png b/apps/docs/static/assets/03-issue-tracker.png
new file mode 100644
index 000000000..b5b9d5935
Binary files /dev/null and b/apps/docs/static/assets/03-issue-tracker.png differ
diff --git a/apps/docs/static/assets/04-single-signon.png b/apps/docs/static/assets/04-single-signon.png
new file mode 100644
index 000000000..b20aacc99
Binary files /dev/null and b/apps/docs/static/assets/04-single-signon.png differ
diff --git a/apps/docs/static/assets/05-role-management.png b/apps/docs/static/assets/05-role-management.png
new file mode 100644
index 000000000..975a3f15c
Binary files /dev/null and b/apps/docs/static/assets/05-role-management.png differ
diff --git a/apps/docs/static/assets/06-dashboard.png b/apps/docs/static/assets/06-dashboard.png
new file mode 100644
index 000000000..054042d08
Binary files /dev/null and b/apps/docs/static/assets/06-dashboard.png differ
diff --git a/apps/docs/static/assets/cover.png b/apps/docs/static/assets/cover.png
new file mode 100644
index 000000000..29ddd0367
Binary files /dev/null and b/apps/docs/static/assets/cover.png differ
diff --git a/apps/docs/static/assets/dashboard.png b/apps/docs/static/assets/dashboard.png
new file mode 100644
index 000000000..4f6814ba6
Binary files /dev/null and b/apps/docs/static/assets/dashboard.png differ
diff --git a/apps/docs/static/img/docusaurus-social-card.jpg b/apps/docs/static/img/docusaurus-social-card.jpg
new file mode 100644
index 000000000..ffcb44821
Binary files /dev/null and b/apps/docs/static/img/docusaurus-social-card.jpg differ
diff --git a/apps/docs/static/img/docusaurus.png b/apps/docs/static/img/docusaurus.png
new file mode 100644
index 000000000..f458149e3
Binary files /dev/null and b/apps/docs/static/img/docusaurus.png differ
diff --git a/apps/docs/static/img/favicon.ico b/apps/docs/static/img/favicon.ico
new file mode 100644
index 000000000..c01d54bcd
Binary files /dev/null and b/apps/docs/static/img/favicon.ico differ
diff --git a/apps/docs/static/img/logo.svg b/apps/docs/static/img/logo.svg
new file mode 100644
index 000000000..589f91f93
--- /dev/null
+++ b/apps/docs/static/img/logo.svg
@@ -0,0 +1,5 @@
+
diff --git a/apps/docs/static/img/undraw_docusaurus_mountain.svg b/apps/docs/static/img/undraw_docusaurus_mountain.svg
new file mode 100644
index 000000000..af961c49a
--- /dev/null
+++ b/apps/docs/static/img/undraw_docusaurus_mountain.svg
@@ -0,0 +1,171 @@
+
diff --git a/apps/docs/static/img/undraw_docusaurus_react.svg b/apps/docs/static/img/undraw_docusaurus_react.svg
new file mode 100644
index 000000000..94b5cf08f
--- /dev/null
+++ b/apps/docs/static/img/undraw_docusaurus_react.svg
@@ -0,0 +1,170 @@
+
diff --git a/apps/docs/static/img/undraw_docusaurus_tree.svg b/apps/docs/static/img/undraw_docusaurus_tree.svg
new file mode 100644
index 000000000..d9161d339
--- /dev/null
+++ b/apps/docs/static/img/undraw_docusaurus_tree.svg
@@ -0,0 +1,40 @@
+
diff --git a/apps/docs/tsconfig.json b/apps/docs/tsconfig.json
new file mode 100644
index 000000000..ef0c86323
--- /dev/null
+++ b/apps/docs/tsconfig.json
@@ -0,0 +1,9 @@
+{
+ // This file is not used in compilation. It is here just for a nice editor experience.
+ "extends": "@docusaurus/tsconfig",
+ "compilerOptions": {
+ "baseUrl": ".",
+ "strictNullChecks": true
+ },
+ "exclude": [".docusaurus", "build"]
+}
diff --git a/apps/web/README.md b/apps/web/README.md
index 8027fbfa2..5a569cdf3 100644
--- a/apps/web/README.md
+++ b/apps/web/README.md
@@ -61,11 +61,9 @@ pnpm build
## Environment Variables
-### Required Environment Variables
-
-| Environment | Description | Default Value |
-| ------------------------ | ------------------------------------------------------- | ------------- |
-| NEXT_PUBLIC_API_BASE_URL | api base url in client side (ex. http://localhost:4000) | |
+| Environment | Description | Default Value |
+| ------------------------ | ------------------------------------------------------- | --------------------- |
+| NEXT_PUBLIC_API_BASE_URL | api base url in client side (ex. http://localhost:4000) | http://localhost:4000 |
## Learn More
diff --git a/apps/web/src/entities/tenant/ui/oauth-config-form.ui.tsx b/apps/web/src/entities/tenant/ui/oauth-config-form.ui.tsx
index 3f9afa249..873b0ed3e 100644
--- a/apps/web/src/entities/tenant/ui/oauth-config-form.ui.tsx
+++ b/apps/web/src/entities/tenant/ui/oauth-config-form.ui.tsx
@@ -62,7 +62,7 @@ const OAuthConfigForm: React.FC = ({ disabled }) => {
/>
= (props) => {
const { register, watch, setValue, handleSubmit, formState } =
useForm({ resolver: zodResolver(scheme), defaultValues });
- const { type, projectId } = watch();
+ const { type, projectId, roleId } = watch();
const { data: projectData } = useAllProjects();
@@ -99,14 +99,18 @@ const InviteUserDialog: React.FC = (props) => {
/>
- setValue('type', v as UserTypeEnum, { shouldDirty: true })
- }
+ onChange={(v) => {
+ setValue('type', v as UserTypeEnum, { shouldDirty: true });
+ if (type === 'SUPER') {
+ setValue('projectId', 0);
+ setValue('roleId', 0);
+ }
+ }}
required
/>
{type === 'GENERAL' && (
@@ -118,13 +122,15 @@ const InviteUserDialog: React.FC = (props) => {
label: name,
value: id.toString(),
}))}
- onChange={(v) =>
- setValue('projectId', Number(v), { shouldDirty: true })
- }
+ onChange={(v) => {
+ setValue('projectId', Number(v), { shouldDirty: true });
+ setValue('roleId', 0, { shouldDirty: true });
+ }}
+ value={projectId === 0 ? '' : projectId.toString()}
error={formState.errors.projectId?.message}
required
/>
- {projectId && (
+ {projectId > 0 && (
= (props) => {
onChange={(v) =>
setValue('roleId', Number(v), { shouldDirty: true })
}
+ value={roleId === 0 ? '' : roleId.toString()}
error={formState.errors.roleId?.message}
required
/>
diff --git a/apps/web/src/entities/user/user.schema.ts b/apps/web/src/entities/user/user.schema.ts
index 1cea90be0..d1518d3a0 100644
--- a/apps/web/src/entities/user/user.schema.ts
+++ b/apps/web/src/entities/user/user.schema.ts
@@ -18,7 +18,7 @@ import { z } from 'zod';
export const userSchema = z.object({
id: z.number(),
- email: z.string().email(),
+ email: z.email(),
type: z.union([z.literal('SUPER'), z.literal('GENERAL')]),
name: z.string().max(20).trim().nullable(),
department: z.string().max(50).trim().nullable(),
@@ -91,7 +91,7 @@ export const invitedUserSignupSchema = z
password: z.string().min(8),
confirmPassword: z.string().min(8),
code: z.string(),
- email: z.string().email(),
+ email: z.email(),
})
.refine(({ password, confirmPassword }) => password === confirmPassword, {
message: 'must equal Password',
diff --git a/apps/web/src/env.ts b/apps/web/src/env.ts
index 2926f92a0..8cb5ac92e 100644
--- a/apps/web/src/env.ts
+++ b/apps/web/src/env.ts
@@ -23,7 +23,7 @@ export const env = createEnv({
.default('development'),
},
client: {
- NEXT_PUBLIC_API_BASE_URL: z.string().url(),
+ NEXT_PUBLIC_API_BASE_URL: z.string(),
},
runtimeEnv: {
NEXT_PUBLIC_API_BASE_URL: process.env.NEXT_PUBLIC_API_BASE_URL,
diff --git a/apps/web/src/features/auth/reset-password-with-email/request-reset-password-with-email.schema.ts b/apps/web/src/features/auth/reset-password-with-email/request-reset-password-with-email.schema.ts
index ac48d54ed..f2949f365 100644
--- a/apps/web/src/features/auth/reset-password-with-email/request-reset-password-with-email.schema.ts
+++ b/apps/web/src/features/auth/reset-password-with-email/request-reset-password-with-email.schema.ts
@@ -16,5 +16,5 @@
import { z } from 'zod';
export const requestResetPasswordWithEmailSchema = z.object({
- email: z.string().email(),
+ email: z.email(),
});
diff --git a/apps/web/src/features/auth/reset-password-with-email/reset-password-with-email.schema.ts b/apps/web/src/features/auth/reset-password-with-email/reset-password-with-email.schema.ts
index 0d6e965af..e6b9f01c1 100644
--- a/apps/web/src/features/auth/reset-password-with-email/reset-password-with-email.schema.ts
+++ b/apps/web/src/features/auth/reset-password-with-email/reset-password-with-email.schema.ts
@@ -20,7 +20,7 @@ export const resetPasswordWithEmailSchema = z
password: z.string().min(8),
confirmPassword: z.string().min(8),
code: z.string(),
- email: z.string().email(),
+ email: z.email(),
})
.refine(({ password, confirmPassword }) => password === confirmPassword, {
message: 'must equal Password',
diff --git a/apps/web/src/features/auth/sign-up-with-email/sign-up-with-email.schema.ts b/apps/web/src/features/auth/sign-up-with-email/sign-up-with-email.schema.ts
index 4b340dfe7..9ae267572 100644
--- a/apps/web/src/features/auth/sign-up-with-email/sign-up-with-email.schema.ts
+++ b/apps/web/src/features/auth/sign-up-with-email/sign-up-with-email.schema.ts
@@ -18,7 +18,7 @@ import { z } from 'zod';
//
export const signUpWithEmailSchema = z
.object({
- email: z.string().email(),
+ email: z.email(),
emailState: z.enum(['NOT_VERIFIED', 'VERIFING', 'EXPIRED', 'VERIFIED']),
code: z.string().length(6),
password: z.string().min(8),
diff --git a/apps/web/src/features/update-ai-setting/ui/ai-field-template-form.ui.css b/apps/web/src/features/update-ai-setting/ui/ai-field-template-form.ui.css
new file mode 100644
index 000000000..e69de29bb
diff --git a/apps/web/src/pages/auth/sign-in.tsx b/apps/web/src/pages/auth/sign-in.tsx
index 24c73a173..a448e0b7e 100644
--- a/apps/web/src/pages/auth/sign-in.tsx
+++ b/apps/web/src/pages/auth/sign-in.tsx
@@ -33,7 +33,7 @@ import { AnonymousLayout } from '@/widgets/anonymous-layout';
import serverSideTranslations from '@/server-side-translations';
const signInWithEmailSchema = z.object({
- email: z.string().email(),
+ email: z.email(),
password: z.string().min(8),
});
diff --git a/docker/api.dockerfile b/docker/api.dockerfile
index 912a0e27c..178fb1aaa 100644
--- a/docker/api.dockerfile
+++ b/docker/api.dockerfile
@@ -33,12 +33,6 @@ COPY --from=builder /app/out/full/ .
COPY turbo.json ./
COPY .turbo/ ./.turbo/
-ARG TURBO_TOKEN
-ENV TURBO_TOKEN=${TURBO_TOKEN}
-
-ARG TURBO_TEAM
-ENV TURBO_TEAM=${TURBO_TEAM}
-
RUN pnpm dlx turbo run build --filter=api...
FROM base AS runner
@@ -51,4 +45,4 @@ USER nestjs
COPY --from=installer --chown=nestjs:nodejs /app .
-CMD node -r source-map-support/register apps/api/dist/main.js
+CMD ["node", "-r", "source-map-support/register", "apps/api/dist/main.js"]
diff --git a/docker/build.sh b/docker/build.sh
index 6890b13a5..a6287d285 100755
--- a/docker/build.sh
+++ b/docker/build.sh
@@ -3,7 +3,7 @@
if [[ ${1} == "help" || "$#" -lt 2 ]]; then
echo "Usage: sh ${0} APP VER"
echo "APP APP of docker image"
- echo " ex. api, web"
+ echo " ex. api, web, docs"
echo "VER Version of docker image"
echo " ex. 1.0.0, 1.1.0, ..."
exit;
@@ -26,7 +26,7 @@ echo "TAG:${TAG}"
echo ""
echo "docker image build start - ${TAG}"
-docker build --platform linux/amd64 -t ${TAG} -f ${DOCKER_FILE} ${APP_DIR}
+docker build -t ${TAG} -f ${DOCKER_FILE} ${APP_DIR}
if [[ $? -ne 0 ]]; then
echo "docker image build failed - ${TAG}"
diff --git a/docker/docker-bake.hcl b/docker/docker-bake.hcl
new file mode 100644
index 000000000..af0872e74
--- /dev/null
+++ b/docker/docker-bake.hcl
@@ -0,0 +1,21 @@
+group "default" {
+ targets = ["api", "web"]
+}
+
+target "api" {
+ context = "."
+ dockerfile = "./docker/api.dockerfile"
+ tags = ["line/abc-user-feedback-api:latest"]
+ platforms = ["linux/amd64", "linux/arm64/v8"]
+ cache-from = ["type=gha"]
+ cache-to = ["type=gha,mode=max"]
+}
+
+target "web" {
+ context = "."
+ dockerfile = "./docker/web.dockerfile"
+ tags = ["line/abc-user-feedback-web:latest"]
+ platforms = ["linux/amd64", "linux/arm64/v8"]
+ cache-from = ["type=gha"]
+ cache-to = ["type=gha,mode=max"]
+}
\ No newline at end of file
diff --git a/docker/docker-compose.apps.yml b/docker/docker-compose.apps.yml
new file mode 100644
index 000000000..de47ed17c
--- /dev/null
+++ b/docker/docker-compose.apps.yml
@@ -0,0 +1,26 @@
+name: abc-user-feedback
+
+services:
+ web:
+ image: line/abc-user-feedback-web:latest
+ environment:
+ - NEXT_PUBLIC_API_BASE_URL=http://localhost:4000
+ ports:
+ - 3000:3000
+ depends_on:
+ - api
+ restart: unless-stopped
+
+ api:
+ image: line/abc-user-feedback-api:latest
+ environment:
+ - JWT_SECRET=jwtsecretjwtsecretjwtsecret
+ - MYSQL_PRIMARY_URL=mysql://userfeedback:userfeedback@mysql:3306/userfeedback
+ - SMTP_HOST=smtp4dev
+ - SMTP_PORT=25
+ - SMTP_SENDER=user@feedback.com
+ - OPENSEARCH_USE=true
+ - OPENSEARCH_NODE=http://opensearch-node:9200
+ ports:
+ - 4000:4000
+ restart: unless-stopped
diff --git a/docker/docker-compose.e2e.yml b/docker/docker-compose.e2e.yml
index e5ab7ae76..cc6d8157d 100644
--- a/docker/docker-compose.e2e.yml
+++ b/docker/docker-compose.e2e.yml
@@ -29,11 +29,9 @@ services:
environment:
- JWT_SECRET=jwtsecretjwtsecretjwtsecret
- MYSQL_PRIMARY_URL=mysql://userfeedback:userfeedback@host.docker.internal:13307/e2e
- - BASE_URL=http://host.docker.internal:3000
- SMTP_HOST=localhost
- SMTP_PORT=25
- SMTP_SENDER=abc@feedback.user
- - SMTP_BASE_URL=http://localhost:3000
- APP_PORT=4000
- AUTO_MIGRATION=true
- MASTER_API_KEY=MASTER_API_KEY
diff --git a/docker/docker-compose.infra-arm64.yml b/docker/docker-compose.infra-arm64.yml
deleted file mode 100644
index d85cab619..000000000
--- a/docker/docker-compose.infra-arm64.yml
+++ /dev/null
@@ -1,112 +0,0 @@
-services:
- mysql:
- hostname: mysql
- image: mysql:8.0.39
- platform: linux/x86_64
- restart: always
- command:
- [
- "--default-authentication-plugin=mysql_native_password",
- "--collation-server=utf8mb4_bin",
- ]
- environment:
- MYSQL_ROOT_PASSWORD: userfeedback
- MYSQL_DATABASE: userfeedback
- MYSQL_USER: userfeedback
- MYSQL_PASSWORD: userfeedback
- TZ: UTC
- ports:
- - 13306:3306
- volumes:
- - mysql:/var/lib/mysql
- networks:
- - app_network
-
- # optional for e2e test
- mysql-for-e2e:
- hostname: mysql
- image: mysql:8.0.39
- platform: linux/x86_64
- restart: always
- command:
- [
- "--default-authentication-plugin=mysql_native_password",
- "--collation-server=utf8mb4_bin",
- ]
- environment:
- MYSQL_ROOT_PASSWORD: userfeedback
- MYSQL_DATABASE: e2e
- MYSQL_USER: userfeedback
- MYSQL_PASSWORD: userfeedback
- TZ: UTC
- ports:
- - 13307:3306
- volumes:
- - mysql-for-e2e:/var/lib/mysql-for-e2e
- networks:
- - app_network
-
- # optional for email verification on creating user
- smtp4dev:
- image: rnwood/smtp4dev:v3
- restart: always
- ports:
- - 5080:80
- - 25:25
- - 143:143
- volumes:
- - smtp4dev:/smtp4dev
- networks:
- - app_network
-
- # optional for better performance on searching feedbacks
- opensearch-node:
- image: opensearchproject/opensearch:2.16.0
- restart: always
- container_name: opensearch-node
- environment:
- - cluster.name=opensearch-cluster
- - node.name=opensearch-node
- - discovery.type=single-node
- - bootstrap.memory_lock=true
- - "OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m"
- - plugins.security.disabled=true
- - OPENSEARCH_INITIAL_ADMIN_PASSWORD=UserFeedback123!@#
- ulimits:
- memlock:
- soft: -1
- hard: -1
- nofile:
- soft: 65536
- hard: 65536
- volumes:
- - opensearch:/usr/share/opensearch/data
- ports:
- - 9200:9200
- - 9600:9600
- networks:
- - app_network
-
- # optional for opensearch
- opensearch-dashboards:
- image: opensearchproject/opensearch-dashboards:2.16.0
- restart: always
- container_name: opensearch-dashboards
- ports:
- - 5601:5601
- environment:
- - 'OPENSEARCH_HOSTS=["http://opensearch-node:9200"]'
- - "DISABLE_SECURITY_DASHBOARDS_PLUGIN=true"
- depends_on:
- - opensearch-node
- networks:
- - app_network
-
-networks:
- app_network:
-
-volumes:
- mysql:
- mysql-for-e2e:
- smtp4dev:
- opensearch:
diff --git a/docker/docker-compose.infra-amd64.yml b/docker/docker-compose.infra.yml
similarity index 54%
rename from docker/docker-compose.infra-amd64.yml
rename to docker/docker-compose.infra.yml
index 570dbda00..8a5f8b7da 100644
--- a/docker/docker-compose.infra-amd64.yml
+++ b/docker/docker-compose.infra.yml
@@ -1,13 +1,12 @@
+name: abc-user-feedback
+
services:
mysql:
- hostname: mysql
- image: mysql:8.0.39
- platform: linux/amd64
- restart: always
+ image: mysql:8.0
command:
[
- "--default-authentication-plugin=mysql_native_password",
- "--collation-server=utf8mb4_bin",
+ '--default-authentication-plugin=mysql_native_password',
+ '--collation-server=utf8mb4_bin',
]
environment:
MYSQL_ROOT_PASSWORD: userfeedback
@@ -19,57 +18,28 @@ services:
- 13306:3306
volumes:
- mysql:/var/lib/mysql
- networks:
- - app_network
-
- # optional for e2e test
- mysql-for-e2e:
- hostname: mysql
- image: mysql:8.0.39
- platform: linux/amd64
- restart: always
- command:
- [
- "--default-authentication-plugin=mysql_native_password",
- "--collation-server=utf8mb4_bin",
- ]
- environment:
- MYSQL_ROOT_PASSWORD: userfeedback
- MYSQL_DATABASE: e2e
- MYSQL_USER: userfeedback
- MYSQL_PASSWORD: userfeedback
- TZ: UTC
- ports:
- - 13307:3306
- volumes:
- - mysql-for-e2e:/var/lib/mysql-for-e2e
- networks:
- - app_network
+ restart: unless-stopped
- # optional for email verification on creating user
smtp4dev:
image: rnwood/smtp4dev:v3
- restart: always
ports:
- 5080:80
- 25:25
- 143:143
volumes:
- smtp4dev:/smtp4dev
- networks:
- - app_network
+ restart: unless-stopped
# optional for better performance on searching feedbacks
opensearch-node:
image: opensearchproject/opensearch:2.16.0
restart: always
- container_name: opensearch-node
environment:
- cluster.name=opensearch-cluster
- node.name=opensearch-node
- discovery.type=single-node
- bootstrap.memory_lock=true
- - "OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m"
+ - 'OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m'
- plugins.security.disabled=true
- OPENSEARCH_INITIAL_ADMIN_PASSWORD=UserFeedback123!@#
ulimits:
@@ -84,29 +54,20 @@ services:
ports:
- 9200:9200
- 9600:9600
- networks:
- - app_network
# optional for opensearch
opensearch-dashboards:
image: opensearchproject/opensearch-dashboards:2.16.0
restart: always
- container_name: opensearch-dashboards
ports:
- 5601:5601
environment:
- 'OPENSEARCH_HOSTS=["http://opensearch-node:9200"]'
- - "DISABLE_SECURITY_DASHBOARDS_PLUGIN=true"
+ - 'DISABLE_SECURITY_DASHBOARDS_PLUGIN=true'
depends_on:
- opensearch-node
- networks:
- - app_network
-
-networks:
- app_network:
volumes:
mysql:
- mysql-for-e2e:
smtp4dev:
opensearch:
diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml
index d2d057486..21a64bf92 100644
--- a/docker/docker-compose.yml
+++ b/docker/docker-compose.yml
@@ -1,35 +1,85 @@
+name: abc-user-feedback
services:
web:
- hostname: web
image: line/abc-user-feedback-web:latest
- restart: always
- ports:
- - 3000:3000
environment:
- NEXT_PUBLIC_API_BASE_URL=http://localhost:4000
+ ports:
+ - 3000:3000
depends_on:
- api
- networks:
- - app_network
+ restart: unless-stopped
api:
- hostname: api
image: line/abc-user-feedback-api:latest
- restart: always
- ports:
- - 4000:4000
environment:
- JWT_SECRET=jwtsecretjwtsecretjwtsecret
- MYSQL_PRIMARY_URL=mysql://userfeedback:userfeedback@mysql:3306/userfeedback
- - BASE_URL=http://api:3000
- - ACCESS_TOKEN_EXPIRED_TIME=10m
- - REFESH_TOKEN_EXPIRED_TIME=1h
- - APP_PORT=4000
- - APP_ADDRESS=api
- - AUTO_MIGRATION=true
- - NODE_OPTIONS="--max_old_space_size=3072"
- networks:
- - app_network
+ - SMTP_HOST=smtp4dev
+ - SMTP_PORT=25
+ - SMTP_SENDER=user@feedback.com
+ # - OPENSEARCH_USE=true
+ # - OPENSEARCH_NODE=http://opensearch-node:9200
+ ports:
+ - 4000:4000
+ depends_on:
+ - mysql
+ restart: unless-stopped
+
+ mysql:
+ image: mysql:8.0
+ command:
+ [
+ '--default-authentication-plugin=mysql_native_password',
+ '--collation-server=utf8mb4_bin',
+ ]
+ environment:
+ MYSQL_ROOT_PASSWORD: userfeedback
+ MYSQL_DATABASE: userfeedback
+ MYSQL_USER: userfeedback
+ MYSQL_PASSWORD: userfeedback
+ TZ: UTC
+ ports:
+ - 13306:3306
+ volumes:
+ - mysql:/var/lib/mysql
+ restart: unless-stopped
+
+ smtp4dev:
+ image: rnwood/smtp4dev:v3
+ ports:
+ - 5080:80
+ - 25:25
+ - 143:143
+ volumes:
+ - smtp4dev:/smtp4dev
+ restart: unless-stopped
+
+ # opensearch-node:
+ # image: opensearchproject/opensearch:2.16.0
+ # restart: unless-stopped
+ # environment:
+ # - cluster.name=opensearch-cluster
+ # - node.name=opensearch-node
+ # - discovery.type=single-node
+ # - bootstrap.memory_lock=true
+ # - 'OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m'
+ # - plugins.security.disabled=true
+ # - OPENSEARCH_INITIAL_ADMIN_PASSWORD=UserFeedback123!@#
+ # ulimits:
+ # memlock:
+ # soft: -1
+ # hard: -1
+ # nofile:
+ # soft: 65536
+ # hard: 65536
+ # volumes:
+ # - opensearch:/usr/share/opensearch/data
+ # ports:
+ # - 9200:9200
+ # - 9600:9600
-networks:
- app_network:
+volumes:
+ mysql:
+ smtp4dev:
+ # opensearch:
diff --git a/docker/docs.dockerfile b/docker/docs.dockerfile
new file mode 100644
index 000000000..96827e1da
--- /dev/null
+++ b/docker/docs.dockerfile
@@ -0,0 +1,46 @@
+
+FROM node:22-alpine AS base
+
+# ---- Builder Stage ----
+FROM base AS builder
+
+WORKDIR /app
+
+RUN npm install -g turbo
+
+COPY . .
+
+# Only isolate needed parts for docs
+RUN turbo prune --scope=docs --docker
+
+# ---- Installer Stage ----
+FROM base AS installer
+
+WORKDIR /app
+
+RUN corepack enable
+
+# Copy pruned workspace
+COPY --from=builder /app/out/json/ .
+COPY --from=builder /app/out/pnpm-lock.yaml ./pnpm-lock.yaml
+
+# Install only necessary dependencies
+RUN pnpm install --frozen-lockfile
+
+# Copy full source for build
+COPY --from=builder /app/out/full/ .
+COPY turbo.json ./
+COPY .turbo/ ./.turbo/
+COPY .git/ ./.git/
+
+# Build Docusaurus
+RUN pnpm dlx turbo run build --filter=docs...
+
+
+# ---- Runner Stage ----
+FROM installer AS runner
+
+EXPOSE 3000
+
+WORKDIR /app/apps/docs
+CMD ["pnpm", "start", "--host", "0.0.0.0", "--no-open"]
diff --git a/docker/web.dockerfile b/docker/web.dockerfile
index 71ba0b1a0..b235e9f3f 100644
--- a/docker/web.dockerfile
+++ b/docker/web.dockerfile
@@ -33,11 +33,6 @@ COPY --from=builder /app/out/full/ .
COPY turbo.json ./
COPY .turbo/ ./.turbo/
-ARG TURBO_TOKEN
-ENV TURBO_TOKEN=${TURBO_TOKEN}
-
-ARG TURBO_TEAM
-ENV TURBO_TEAM=${TURBO_TEAM}
COPY --from=builder /app/apps/web/.env.build /app/apps/web/.env.production
RUN SKIP_ENV_VALIDATION=true pnpm dlx turbo run build --filter=web...
@@ -70,4 +65,4 @@ COPY --from=installer --chown=nextjs:nodejs /app/apps/web/entrypoint.sh ./apps/w
ENTRYPOINT ["apps/web/entrypoint.sh"]
-CMD node apps/web/server.js
\ No newline at end of file
+CMD ["node", "apps/web/server.js"]
\ No newline at end of file
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 486548c05..721501b85 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -303,7 +303,19 @@ importers:
js-toml:
specifier: ^1.0.2
version: 1.0.2
+ toml:
+ specifier: ^3.0.0
+ version: 3.0.0
+ yaml:
+ specifier: ^2.4.2
+ version: 2.8.1
+ zod:
+ specifier: ^4.1.12
+ version: 4.1.12
devDependencies:
+ '@types/node':
+ specifier: 22.18.13
+ version: 22.18.13
'@ufb/eslint-config':
specifier: workspace:*
version: link:../../tooling/eslint
@@ -316,6 +328,61 @@ importers:
ts-node:
specifier: ^10.9.2
version: 10.9.2(@swc/core@1.13.5(@swc/helpers@0.5.17))(@types/node@22.18.13)(typescript@5.9.3)
+ typescript:
+ specifier: 'catalog:'
+ version: 5.9.3
+
+ apps/docs:
+ dependencies:
+ '@docusaurus/core':
+ specifier: 3.7.0
+ version: 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/preset-classic':
+ specifier: 3.7.0
+ version: 3.7.0(@algolia/client-search@5.43.0)(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(@types/react@19.2.2)(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(search-insights@2.17.3)(typescript@5.9.3)
+ '@mdx-js/react':
+ specifier: ^3.0.0
+ version: 3.1.1(@types/react@19.2.2)(react@19.2.0)
+ clsx:
+ specifier: ^2.1.1
+ version: 2.1.1
+ prism-react-renderer:
+ specifier: ^2.3.0
+ version: 2.4.1(react@19.2.0)
+ react:
+ specifier: ^19.2.0
+ version: 19.2.0
+ react-dom:
+ specifier: ^19.2.0
+ version: 19.2.0(react@19.2.0)
+ devDependencies:
+ '@docusaurus/module-type-aliases':
+ specifier: 3.7.0
+ version: 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/tsconfig':
+ specifier: 3.7.0
+ version: 3.7.0
+ '@docusaurus/types':
+ specifier: 3.7.0
+ version: 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@ufb/eslint-config':
+ specifier: workspace:*
+ version: link:../../tooling/eslint
+ '@ufb/prettier-config':
+ specifier: workspace:*
+ version: link:../../tooling/prettier
+ '@ufb/tsconfig':
+ specifier: workspace:*
+ version: link:../../tooling/typescript
+ eslint:
+ specifier: 'catalog:'
+ version: 9.39.1(jiti@1.21.7)
+ prettier:
+ specifier: 'catalog:'
+ version: 3.6.2
+ typescript:
+ specifier: 'catalog:'
+ version: 5.9.3
apps/e2e:
devDependencies:
@@ -474,7 +541,7 @@ importers:
version: 3.4.0
tailwind-scrollbar-hide:
specifier: ^4.0.0
- version: 4.0.0(tailwindcss@3.4.18)
+ version: 4.0.0(tailwindcss@3.4.18(yaml@2.8.1))
zod:
specifier: ^4.1.12
version: 4.1.12
@@ -559,7 +626,7 @@ importers:
version: 3.6.2
tailwindcss:
specifier: ^3.4.18
- version: 3.4.18
+ version: 3.4.18(yaml@2.8.1)
ts-toolbelt:
specifier: ^9.6.0
version: 9.6.0
@@ -683,7 +750,7 @@ importers:
version: 19.2.0
tailwindcss:
specifier: 'catalog:'
- version: 3.4.18
+ version: 3.4.18(yaml@2.8.1)
typescript:
specifier: 'catalog:'
version: 5.9.3
@@ -710,7 +777,7 @@ importers:
version: 19.2.0
tsup:
specifier: ^8.5.0
- version: 8.5.0(@swc/core@1.13.5(@swc/helpers@0.5.17))(jiti@1.21.7)(postcss@8.5.6)(typescript@5.9.3)
+ version: 8.5.0(@swc/core@1.13.5(@swc/helpers@0.5.17))(jiti@1.21.7)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.1)
typescript:
specifier: 'catalog:'
version: 5.9.3
@@ -752,7 +819,7 @@ importers:
version: 3.6.2
tailwindcss:
specifier: 'catalog:'
- version: 3.4.18
+ version: 3.4.18(yaml@2.8.1)
tooling/eslint:
dependencies:
@@ -836,6 +903,85 @@ packages:
'@adobe/css-tools@4.4.4':
resolution: {integrity: sha512-Elp+iwUx5rN5+Y8xLt5/GRoG20WGoDCQ/1Fb+1LiGtvwbDavuSk0jhD/eZdckHAuzcDzccnkv+rEjyWfRx18gg==}
+ '@algolia/abtesting@1.9.0':
+ resolution: {integrity: sha512-4q9QCxFPiDIx1n5w41A1JMkrXI8p0ugCQnCGFtCKZPmWtwgWCqwVRncIbp++81xSELFZVQUfiB7Kbsla1tIBSw==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/autocomplete-core@1.17.9':
+ resolution: {integrity: sha512-O7BxrpLDPJWWHv/DLA9DRFWs+iY1uOJZkqUwjS5HSZAGcl0hIVCQ97LTLewiZmZ402JYUrun+8NqFP+hCknlbQ==}
+
+ '@algolia/autocomplete-plugin-algolia-insights@1.17.9':
+ resolution: {integrity: sha512-u1fEHkCbWF92DBeB/KHeMacsjsoI0wFhjZtlCq2ddZbAehshbZST6Hs0Avkc0s+4UyBGbMDnSuXHLuvRWK5iDQ==}
+ peerDependencies:
+ search-insights: '>= 1 < 3'
+
+ '@algolia/autocomplete-preset-algolia@1.17.9':
+ resolution: {integrity: sha512-Na1OuceSJeg8j7ZWn5ssMu/Ax3amtOwk76u4h5J4eK2Nx2KB5qt0Z4cOapCsxot9VcEN11ADV5aUSlQF4RhGjQ==}
+ peerDependencies:
+ '@algolia/client-search': '>= 4.9.1 < 6'
+ algoliasearch: '>= 4.9.1 < 6'
+
+ '@algolia/autocomplete-shared@1.17.9':
+ resolution: {integrity: sha512-iDf05JDQ7I0b7JEA/9IektxN/80a2MZ1ToohfmNS3rfeuQnIKI3IJlIafD0xu4StbtQTghx9T3Maa97ytkXenQ==}
+ peerDependencies:
+ '@algolia/client-search': '>= 4.9.1 < 6'
+ algoliasearch: '>= 4.9.1 < 6'
+
+ '@algolia/client-abtesting@5.43.0':
+ resolution: {integrity: sha512-YsKYkohIMxiYEAu8nppZi5EioYDUIo9Heoor8K8vMUnkUtGCOEU/Q4p5OWaYSSBx3evo09Ga9rG4jsKViIcDzQ==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/client-analytics@5.43.0':
+ resolution: {integrity: sha512-kDGJWt3nzf0nu5RPFXQhNGl6Q0cn35fazxVWXhd0Fw3Vo6gcVfrcezcBenHb66laxnVJ7uwr1uKhmsu3Wy25sQ==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/client-common@5.43.0':
+ resolution: {integrity: sha512-RAFipkAnI8xhL/Sgi/gpXgNWN5HDM6F7z4NNNOcI8ZMYysZEBsqVXojg/WdKEKkQCOHVTZ3mooIjc5BaQdyVtA==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/client-insights@5.43.0':
+ resolution: {integrity: sha512-PmVs83THco8Qig3cAjU9a5eAGaSxsfgh7PdmWMQFE/MCmIcLPv0MVpgfcGGyPjZGYvPC4cg+3q7JJxcNSsEaTg==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/client-personalization@5.43.0':
+ resolution: {integrity: sha512-Bs4zMLXvkAr19FSOZWNizlNUpRFxZVxtvyEJ+q3n3+hPZUcKjo0LIh15qghhRcQPEihjBN6Gr/U+AqRfOCsvnA==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/client-query-suggestions@5.43.0':
+ resolution: {integrity: sha512-pwHv+z8TZAKbwAWt9+v2gIqlqcCFiMdteTdgdPn2yOBRx4WUQdsIWAaG9GiV3by8jO51FuFQnTohhauuI63y3A==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/client-search@5.43.0':
+ resolution: {integrity: sha512-wKy6x6fKcnB1CsfeNNdGp4dzLzz04k8II3JLt6Sp81F8s57Ks3/K9qsysmL9SJa8P486s719bBttVLE8JJYurQ==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/events@4.0.1':
+ resolution: {integrity: sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==}
+
+ '@algolia/ingestion@1.43.0':
+ resolution: {integrity: sha512-TA21h2KwqCUyPXhSAWF3R2UES/FAnzjaVPDI6cRPXeadX+pdrGN0GWat5gSUATJVcMHECn+lGvuMMRxO86o2Pg==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/monitoring@1.43.0':
+ resolution: {integrity: sha512-rvWVEiA1iLcFmHS3oIXGIBreHIxNZqEFDjiNyRtLEffgd62kul2DjXM7H5bOouDMTo1ywMWT9OeQnzrhlTGAwA==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/recommend@5.43.0':
+ resolution: {integrity: sha512-scCijGd38npvH2uHbYhO4f1SR8It5R2FZqOjNcMfw/7Ph7Hxvl+cd7Mo6RzIxsNRcLW5RrwjtpTK3gpDe8r/WQ==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/requester-browser-xhr@5.43.0':
+ resolution: {integrity: sha512-jMkRLWJYr4Hcmpl89e4vIWs69Mkf8Uwx7MG5ZKk2UxW3G3TmouGjI0Ph5mVPmg3Jf1UG3AdmVDc4XupzycT1Jw==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/requester-fetch@5.43.0':
+ resolution: {integrity: sha512-KyQiVz+HdYtissC0J9KIGhHhKytQyJX+82GVsbv5rSCXbETnAoojvUyCn+3KRtWUvMDYCsZ+Y7hM71STTUJUJg==}
+ engines: {node: '>= 14.0.0'}
+
+ '@algolia/requester-node-http@5.43.0':
+ resolution: {integrity: sha512-UnUBNY0U+oT0bkYDsEqVsCkErC2w7idk4CRiLSzicqY8tGylD9oP0j13X/fse1CuiAFCCr3jfl+cBlN6dC0OFw==}
+ engines: {node: '>= 14.0.0'}
+
'@alloc/quick-lru@5.2.0':
resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==}
engines: {node: '>=10'}
@@ -1278,6 +1424,11 @@ packages:
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-import-assertions@7.27.1':
resolution: {integrity: sha512-UT/Jrhw57xg4ILHLFnzFpPDlMbcdEicaAtjPQpbj9wa8T4r5KVWCimHcL/460g8Ht0DMxDyjsLgiWSkVjnwPFg==}
engines: {node: '>=6.9.0'}
@@ -1642,6 +1793,12 @@ packages:
peerDependencies:
'@babel/core': ^7.0.0-0
+ '@babel/plugin-transform-runtime@7.28.5':
+ resolution: {integrity: sha512-20NUVgOrinudkIBzQ2bNxP08YpKprUkRTiRSd2/Z5GOdPImJGkoN4Z7IQe1T5AdyKI1i5L6RBmluqdSzvaq9/w==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
'@babel/plugin-transform-shorthand-properties@7.27.1':
resolution: {integrity: sha512-N/wH1vcn4oYawbJ13Y/FxcQrWk63jhfNa7jef0ih7PHSIHX2LB7GWE1rkPrOnka9kwMxb6hMl19p7lidA+EHmQ==}
engines: {node: '>=6.9.0'}
@@ -1838,6 +1995,13 @@ packages:
resolution: {integrity: sha512-u4eku+hnPqqHIGq/ZUQcaP0TrCbYeLIYBaK7qClNRGZbnh8RC4gVxLEIo8Pceo1nOK9E5G4Lxzlw5KnXcvflfA==}
engines: {node: '>= 10'}
+ '@csstools/cascade-layer-name-parser@2.0.5':
+ resolution: {integrity: sha512-p1ko5eHgV+MgXFVa4STPKpvPxr6ReS8oS2jzTukjR74i5zJNyWO1ZM1m8YKBXnzDKWfBN1ztLYlHxbVemDD88A==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@csstools/css-parser-algorithms': ^3.0.5
+ '@csstools/css-tokenizer': ^3.0.4
+
'@csstools/color-helpers@5.1.0':
resolution: {integrity: sha512-S11EXWJyy0Mz5SYvRmY8nJYTFFd1LCNV+7cXyAgQtOOuzb4EsgfqDufL+9esx72/eLhsRdGZwaldu/h+E4t4BA==}
engines: {node: '>=18'}
@@ -1866,1480 +2030,1940 @@ packages:
resolution: {integrity: sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==}
engines: {node: '>=18'}
- '@csstools/selector-resolve-nested@3.1.0':
- resolution: {integrity: sha512-mf1LEW0tJLKfWyvn5KdDrhpxHyuxpbNwTIwOYLIvsTffeyOf85j5oIzfG0yosxDgx/sswlqBnESYUcQH0vgZ0g==}
+ '@csstools/media-query-list-parser@4.0.3':
+ resolution: {integrity: sha512-HAYH7d3TLRHDOUQK4mZKf9k9Ph/m8Akstg66ywKR4SFAigjs3yBiUeZtFxywiTm5moZMAp/5W/ZuFnNXXYLuuQ==}
engines: {node: '>=18'}
peerDependencies:
- postcss-selector-parser: ^7.0.0
+ '@csstools/css-parser-algorithms': ^3.0.5
+ '@csstools/css-tokenizer': ^3.0.4
- '@csstools/selector-specificity@5.0.0':
- resolution: {integrity: sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==}
+ '@csstools/postcss-alpha-function@1.0.1':
+ resolution: {integrity: sha512-isfLLwksH3yHkFXfCI2Gcaqg7wGGHZZwunoJzEZk0yKYIokgre6hYVFibKL3SYAoR1kBXova8LB+JoO5vZzi9w==}
engines: {node: '>=18'}
peerDependencies:
- postcss-selector-parser: ^7.0.0
+ postcss: ^8.4
- '@dnd-kit/accessibility@3.1.1':
- resolution: {integrity: sha512-2P+YgaXF+gRsIihwwY1gCsQSYnu9Zyj2py8kY5fFvUM1qm2WA2u639R6YNVfU4GWr+ZM5mqEsfHZZLoRONbemw==}
+ '@csstools/postcss-cascade-layers@5.0.2':
+ resolution: {integrity: sha512-nWBE08nhO8uWl6kSAeCx4im7QfVko3zLrtgWZY4/bP87zrSPpSyN/3W3TDqz1jJuH+kbKOHXg5rJnK+ZVYcFFg==}
+ engines: {node: '>=18'}
peerDependencies:
- react: '>=16.8.0'
+ postcss: ^8.4
- '@dnd-kit/core@6.3.1':
- resolution: {integrity: sha512-xkGBRQQab4RLwgXxoqETICr6S5JlogafbhNsidmrkVv2YRs5MLwpjoF2qpiGjQt8S9AoxtIV603s0GIUpY5eYQ==}
+ '@csstools/postcss-color-function-display-p3-linear@1.0.1':
+ resolution: {integrity: sha512-E5qusdzhlmO1TztYzDIi8XPdPoYOjoTY6HBYBCYSj+Gn4gQRBlvjgPQXzfzuPQqt8EhkC/SzPKObg4Mbn8/xMg==}
+ engines: {node: '>=18'}
peerDependencies:
- react: '>=16.8.0'
- react-dom: '>=16.8.0'
+ postcss: ^8.4
- '@dnd-kit/modifiers@9.0.0':
- resolution: {integrity: sha512-ybiLc66qRGuZoC20wdSSG6pDXFikui/dCNGthxv4Ndy8ylErY0N3KVxY2bgo7AWwIbxDmXDg3ylAFmnrjcbVvw==}
+ '@csstools/postcss-color-function@4.0.12':
+ resolution: {integrity: sha512-yx3cljQKRaSBc2hfh8rMZFZzChaFgwmO2JfFgFr1vMcF3C/uyy5I4RFIBOIWGq1D+XbKCG789CGkG6zzkLpagA==}
+ engines: {node: '>=18'}
peerDependencies:
- '@dnd-kit/core': ^6.3.0
- react: '>=16.8.0'
+ postcss: ^8.4
- '@dnd-kit/sortable@10.0.0':
- resolution: {integrity: sha512-+xqhmIIzvAYMGfBYYnbKuNicfSsk4RksY2XdmJhT+HAC01nix6fHCztU68jooFiMUB01Ky3F0FyOvhG/BZrWkg==}
+ '@csstools/postcss-color-mix-function@3.0.12':
+ resolution: {integrity: sha512-4STERZfCP5Jcs13P1U5pTvI9SkgLgfMUMhdXW8IlJWkzOOOqhZIjcNhWtNJZes2nkBDsIKJ0CJtFtuaZ00moag==}
+ engines: {node: '>=18'}
peerDependencies:
- '@dnd-kit/core': ^6.3.0
- react: '>=16.8.0'
+ postcss: ^8.4
- '@dnd-kit/utilities@3.2.2':
- resolution: {integrity: sha512-+MKAJEOfaBe5SmV6t34p80MMKhjvUz0vRrvVJbPT0WElzaOJ/1xs+D+KDv+tD/NE5ujfrChEcshd4fLn0wpiqg==}
+ '@csstools/postcss-color-mix-variadic-function-arguments@1.0.2':
+ resolution: {integrity: sha512-rM67Gp9lRAkTo+X31DUqMEq+iK+EFqsidfecmhrteErxJZb6tUoJBVQca1Vn1GpDql1s1rD1pKcuYzMsg7Z1KQ==}
+ engines: {node: '>=18'}
peerDependencies:
- react: '>=16.8.0'
-
- '@emnapi/core@1.7.0':
- resolution: {integrity: sha512-pJdKGq/1iquWYtv1RRSljZklxHCOCAJFJrImO5ZLKPJVJlVUcs8yFwNQlqS0Lo8xT1VAXXTCZocF9n26FWEKsw==}
+ postcss: ^8.4
- '@emnapi/runtime@1.7.0':
- resolution: {integrity: sha512-oAYoQnCYaQZKVS53Fq23ceWMRxq5EhQsE0x0RdQ55jT7wagMu5k+fS39v1fiSLrtrLQlXwVINenqhLMtTrV/1Q==}
+ '@csstools/postcss-content-alt-text@2.0.8':
+ resolution: {integrity: sha512-9SfEW9QCxEpTlNMnpSqFaHyzsiRpZ5J5+KqCu1u5/eEJAWsMhzT40qf0FIbeeglEvrGRMdDzAxMIz3wqoGSb+Q==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
- '@emnapi/wasi-threads@1.1.0':
- resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==}
+ '@csstools/postcss-contrast-color-function@2.0.12':
+ resolution: {integrity: sha512-YbwWckjK3qwKjeYz/CijgcS7WDUCtKTd8ShLztm3/i5dhh4NaqzsbYnhm4bjrpFpnLZ31jVcbK8YL77z3GBPzA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
- '@emotion/babel-plugin@11.13.5':
- resolution: {integrity: sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==}
+ '@csstools/postcss-exponential-functions@2.0.9':
+ resolution: {integrity: sha512-abg2W/PI3HXwS/CZshSa79kNWNZHdJPMBXeZNyPQFbbj8sKO3jXxOt/wF7juJVjyDTc6JrvaUZYFcSBZBhaxjw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
- '@emotion/cache@11.14.0':
- resolution: {integrity: sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA==}
+ '@csstools/postcss-font-format-keywords@4.0.0':
+ resolution: {integrity: sha512-usBzw9aCRDvchpok6C+4TXC57btc4bJtmKQWOHQxOVKen1ZfVqBUuCZ/wuqdX5GHsD0NRSr9XTP+5ID1ZZQBXw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
- '@emotion/hash@0.9.2':
- resolution: {integrity: sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g==}
+ '@csstools/postcss-gamut-mapping@2.0.11':
+ resolution: {integrity: sha512-fCpCUgZNE2piVJKC76zFsgVW1apF6dpYsqGyH8SIeCcM4pTEsRTWTLCaJIMKFEundsCKwY1rwfhtrio04RJ4Dw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
- '@emotion/memoize@0.9.0':
- resolution: {integrity: sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==}
+ '@csstools/postcss-gradients-interpolation-method@5.0.12':
+ resolution: {integrity: sha512-jugzjwkUY0wtNrZlFeyXzimUL3hN4xMvoPnIXxoZqxDvjZRiSh+itgHcVUWzJ2VwD/VAMEgCLvtaJHX+4Vj3Ow==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
- '@emotion/react@11.14.0':
- resolution: {integrity: sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA==}
+ '@csstools/postcss-hwb-function@4.0.12':
+ resolution: {integrity: sha512-mL/+88Z53KrE4JdePYFJAQWFrcADEqsLprExCM04GDNgHIztwFzj0Mbhd/yxMBngq0NIlz58VVxjt5abNs1VhA==}
+ engines: {node: '>=18'}
peerDependencies:
- '@types/react': '*'
- react: '>=16.8.0'
- peerDependenciesMeta:
- '@types/react':
- optional: true
+ postcss: ^8.4
- '@emotion/serialize@1.3.3':
- resolution: {integrity: sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==}
+ '@csstools/postcss-ic-unit@4.0.4':
+ resolution: {integrity: sha512-yQ4VmossuOAql65sCPppVO1yfb7hDscf4GseF0VCA/DTDaBc0Wtf8MTqVPfjGYlT5+2buokG0Gp7y0atYZpwjg==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
- '@emotion/sheet@1.4.0':
- resolution: {integrity: sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==}
+ '@csstools/postcss-initial@2.0.1':
+ resolution: {integrity: sha512-L1wLVMSAZ4wovznquK0xmC7QSctzO4D0Is590bxpGqhqjboLXYA16dWZpfwImkdOgACdQ9PqXsuRroW6qPlEsg==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
- '@emotion/unitless@0.10.0':
- resolution: {integrity: sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==}
+ '@csstools/postcss-is-pseudo-class@5.0.3':
+ resolution: {integrity: sha512-jS/TY4SpG4gszAtIg7Qnf3AS2pjcUM5SzxpApOrlndMeGhIbaTzWBzzP/IApXoNWEW7OhcjkRT48jnAUIFXhAQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
- '@emotion/use-insertion-effect-with-fallbacks@1.2.0':
- resolution: {integrity: sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg==}
+ '@csstools/postcss-light-dark-function@2.0.11':
+ resolution: {integrity: sha512-fNJcKXJdPM3Lyrbmgw2OBbaioU7yuKZtiXClf4sGdQttitijYlZMD5K7HrC/eF83VRWRrYq6OZ0Lx92leV2LFA==}
+ engines: {node: '>=18'}
peerDependencies:
- react: '>=16.8.0'
+ postcss: ^8.4
- '@emotion/utils@1.4.2':
- resolution: {integrity: sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA==}
+ '@csstools/postcss-logical-float-and-clear@3.0.0':
+ resolution: {integrity: sha512-SEmaHMszwakI2rqKRJgE+8rpotFfne1ZS6bZqBoQIicFyV+xT1UF42eORPxJkVJVrH9C0ctUgwMSn3BLOIZldQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
- '@emotion/weak-memoize@0.4.0':
- resolution: {integrity: sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg==}
+ '@csstools/postcss-logical-overflow@2.0.0':
+ resolution: {integrity: sha512-spzR1MInxPuXKEX2csMamshR4LRaSZ3UXVaRGjeQxl70ySxOhMpP2252RAFsg8QyyBXBzuVOOdx1+bVO5bPIzA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
- '@esbuild/aix-ppc64@0.25.12':
- resolution: {integrity: sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==}
+ '@csstools/postcss-logical-overscroll-behavior@2.0.0':
+ resolution: {integrity: sha512-e/webMjoGOSYfqLunyzByZj5KKe5oyVg/YSbie99VEaSDE2kimFm0q1f6t/6Jo+VVCQ/jbe2Xy+uX+C4xzWs4w==}
engines: {node: '>=18'}
- cpu: [ppc64]
- os: [aix]
+ peerDependencies:
+ postcss: ^8.4
- '@esbuild/android-arm64@0.25.12':
- resolution: {integrity: sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==}
+ '@csstools/postcss-logical-resize@3.0.0':
+ resolution: {integrity: sha512-DFbHQOFW/+I+MY4Ycd/QN6Dg4Hcbb50elIJCfnwkRTCX05G11SwViI5BbBlg9iHRl4ytB7pmY5ieAFk3ws7yyg==}
engines: {node: '>=18'}
- cpu: [arm64]
- os: [android]
+ peerDependencies:
+ postcss: ^8.4
- '@esbuild/android-arm@0.25.12':
- resolution: {integrity: sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==}
+ '@csstools/postcss-logical-viewport-units@3.0.4':
+ resolution: {integrity: sha512-q+eHV1haXA4w9xBwZLKjVKAWn3W2CMqmpNpZUk5kRprvSiBEGMgrNH3/sJZ8UA3JgyHaOt3jwT9uFa4wLX4EqQ==}
engines: {node: '>=18'}
- cpu: [arm]
- os: [android]
+ peerDependencies:
+ postcss: ^8.4
- '@esbuild/android-x64@0.25.12':
- resolution: {integrity: sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==}
+ '@csstools/postcss-media-minmax@2.0.9':
+ resolution: {integrity: sha512-af9Qw3uS3JhYLnCbqtZ9crTvvkR+0Se+bBqSr7ykAnl9yKhk6895z9rf+2F4dClIDJWxgn0iZZ1PSdkhrbs2ig==}
engines: {node: '>=18'}
- cpu: [x64]
- os: [android]
+ peerDependencies:
+ postcss: ^8.4
- '@esbuild/darwin-arm64@0.25.12':
- resolution: {integrity: sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==}
+ '@csstools/postcss-media-queries-aspect-ratio-number-values@3.0.5':
+ resolution: {integrity: sha512-zhAe31xaaXOY2Px8IYfoVTB3wglbJUVigGphFLj6exb7cjZRH9A6adyE22XfFK3P2PzwRk0VDeTJmaxpluyrDg==}
engines: {node: '>=18'}
- cpu: [arm64]
- os: [darwin]
+ peerDependencies:
+ postcss: ^8.4
- '@esbuild/darwin-x64@0.25.12':
- resolution: {integrity: sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==}
+ '@csstools/postcss-nested-calc@4.0.0':
+ resolution: {integrity: sha512-jMYDdqrQQxE7k9+KjstC3NbsmC063n1FTPLCgCRS2/qHUbHM0mNy9pIn4QIiQGs9I/Bg98vMqw7mJXBxa0N88A==}
engines: {node: '>=18'}
- cpu: [x64]
- os: [darwin]
+ peerDependencies:
+ postcss: ^8.4
- '@esbuild/freebsd-arm64@0.25.12':
- resolution: {integrity: sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==}
+ '@csstools/postcss-normalize-display-values@4.0.0':
+ resolution: {integrity: sha512-HlEoG0IDRoHXzXnkV4in47dzsxdsjdz6+j7MLjaACABX2NfvjFS6XVAnpaDyGesz9gK2SC7MbNwdCHusObKJ9Q==}
engines: {node: '>=18'}
- cpu: [arm64]
- os: [freebsd]
+ peerDependencies:
+ postcss: ^8.4
- '@esbuild/freebsd-x64@0.25.12':
- resolution: {integrity: sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==}
+ '@csstools/postcss-oklab-function@4.0.12':
+ resolution: {integrity: sha512-HhlSmnE1NKBhXsTnNGjxvhryKtO7tJd1w42DKOGFD6jSHtYOrsJTQDKPMwvOfrzUAk8t7GcpIfRyM7ssqHpFjg==}
engines: {node: '>=18'}
- cpu: [x64]
- os: [freebsd]
+ peerDependencies:
+ postcss: ^8.4
- '@esbuild/linux-arm64@0.25.12':
- resolution: {integrity: sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==}
+ '@csstools/postcss-progressive-custom-properties@4.2.1':
+ resolution: {integrity: sha512-uPiiXf7IEKtUQXsxu6uWtOlRMXd2QWWy5fhxHDnPdXKCQckPP3E34ZgDoZ62r2iT+UOgWsSbM4NvHE5m3mAEdw==}
engines: {node: '>=18'}
- cpu: [arm64]
- os: [linux]
+ peerDependencies:
+ postcss: ^8.4
- '@esbuild/linux-arm@0.25.12':
- resolution: {integrity: sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==}
+ '@csstools/postcss-random-function@2.0.1':
+ resolution: {integrity: sha512-q+FQaNiRBhnoSNo+GzqGOIBKoHQ43lYz0ICrV+UudfWnEF6ksS6DsBIJSISKQT2Bvu3g4k6r7t0zYrk5pDlo8w==}
engines: {node: '>=18'}
- cpu: [arm]
- os: [linux]
+ peerDependencies:
+ postcss: ^8.4
- '@esbuild/linux-ia32@0.25.12':
- resolution: {integrity: sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==}
+ '@csstools/postcss-relative-color-syntax@3.0.12':
+ resolution: {integrity: sha512-0RLIeONxu/mtxRtf3o41Lq2ghLimw0w9ByLWnnEVuy89exmEEq8bynveBxNW3nyHqLAFEeNtVEmC1QK9MZ8Huw==}
engines: {node: '>=18'}
- cpu: [ia32]
- os: [linux]
+ peerDependencies:
+ postcss: ^8.4
- '@esbuild/linux-loong64@0.25.12':
- resolution: {integrity: sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==}
+ '@csstools/postcss-scope-pseudo-class@4.0.1':
+ resolution: {integrity: sha512-IMi9FwtH6LMNuLea1bjVMQAsUhFxJnyLSgOp/cpv5hrzWmrUYU5fm0EguNDIIOHUqzXode8F/1qkC/tEo/qN8Q==}
engines: {node: '>=18'}
- cpu: [loong64]
- os: [linux]
+ peerDependencies:
+ postcss: ^8.4
- '@esbuild/linux-mips64el@0.25.12':
- resolution: {integrity: sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==}
+ '@csstools/postcss-sign-functions@1.1.4':
+ resolution: {integrity: sha512-P97h1XqRPcfcJndFdG95Gv/6ZzxUBBISem0IDqPZ7WMvc/wlO+yU0c5D/OCpZ5TJoTt63Ok3knGk64N+o6L2Pg==}
engines: {node: '>=18'}
- cpu: [mips64el]
- os: [linux]
-
- '@esbuild/linux-ppc64@0.25.12':
- resolution: {integrity: sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==}
- engines: {node: '>=18'}
- cpu: [ppc64]
- os: [linux]
+ peerDependencies:
+ postcss: ^8.4
- '@esbuild/linux-riscv64@0.25.12':
- resolution: {integrity: sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==}
+ '@csstools/postcss-stepped-value-functions@4.0.9':
+ resolution: {integrity: sha512-h9btycWrsex4dNLeQfyU3y3w40LMQooJWFMm/SK9lrKguHDcFl4VMkncKKoXi2z5rM9YGWbUQABI8BT2UydIcA==}
engines: {node: '>=18'}
- cpu: [riscv64]
- os: [linux]
+ peerDependencies:
+ postcss: ^8.4
- '@esbuild/linux-s390x@0.25.12':
- resolution: {integrity: sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==}
+ '@csstools/postcss-text-decoration-shorthand@4.0.3':
+ resolution: {integrity: sha512-KSkGgZfx0kQjRIYnpsD7X2Om9BUXX/Kii77VBifQW9Ih929hK0KNjVngHDH0bFB9GmfWcR9vJYJJRvw/NQjkrA==}
engines: {node: '>=18'}
- cpu: [s390x]
- os: [linux]
+ peerDependencies:
+ postcss: ^8.4
- '@esbuild/linux-x64@0.25.12':
- resolution: {integrity: sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==}
+ '@csstools/postcss-trigonometric-functions@4.0.9':
+ resolution: {integrity: sha512-Hnh5zJUdpNrJqK9v1/E3BbrQhaDTj5YiX7P61TOvUhoDHnUmsNNxcDAgkQ32RrcWx9GVUvfUNPcUkn8R3vIX6A==}
engines: {node: '>=18'}
- cpu: [x64]
- os: [linux]
+ peerDependencies:
+ postcss: ^8.4
- '@esbuild/netbsd-arm64@0.25.12':
- resolution: {integrity: sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==}
+ '@csstools/postcss-unset-value@4.0.0':
+ resolution: {integrity: sha512-cBz3tOCI5Fw6NIFEwU3RiwK6mn3nKegjpJuzCndoGq3BZPkUjnsq7uQmIeMNeMbMk7YD2MfKcgCpZwX5jyXqCA==}
engines: {node: '>=18'}
- cpu: [arm64]
- os: [netbsd]
+ peerDependencies:
+ postcss: ^8.4
- '@esbuild/netbsd-x64@0.25.12':
- resolution: {integrity: sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==}
+ '@csstools/selector-resolve-nested@3.1.0':
+ resolution: {integrity: sha512-mf1LEW0tJLKfWyvn5KdDrhpxHyuxpbNwTIwOYLIvsTffeyOf85j5oIzfG0yosxDgx/sswlqBnESYUcQH0vgZ0g==}
engines: {node: '>=18'}
- cpu: [x64]
- os: [netbsd]
+ peerDependencies:
+ postcss-selector-parser: ^7.0.0
- '@esbuild/openbsd-arm64@0.25.12':
- resolution: {integrity: sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==}
+ '@csstools/selector-specificity@5.0.0':
+ resolution: {integrity: sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==}
engines: {node: '>=18'}
- cpu: [arm64]
- os: [openbsd]
+ peerDependencies:
+ postcss-selector-parser: ^7.0.0
- '@esbuild/openbsd-x64@0.25.12':
- resolution: {integrity: sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==}
+ '@csstools/utilities@2.0.0':
+ resolution: {integrity: sha512-5VdOr0Z71u+Yp3ozOx8T11N703wIFGVRgOWbOZMKgglPJsWA54MRIoMNVMa7shUToIhx5J8vX4sOZgD2XiihiQ==}
engines: {node: '>=18'}
- cpu: [x64]
- os: [openbsd]
+ peerDependencies:
+ postcss: ^8.4
- '@esbuild/openharmony-arm64@0.25.12':
- resolution: {integrity: sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==}
- engines: {node: '>=18'}
- cpu: [arm64]
- os: [openharmony]
+ '@discoveryjs/json-ext@0.5.7':
+ resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==}
+ engines: {node: '>=10.0.0'}
- '@esbuild/sunos-x64@0.25.12':
- resolution: {integrity: sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==}
- engines: {node: '>=18'}
- cpu: [x64]
- os: [sunos]
+ '@dnd-kit/accessibility@3.1.1':
+ resolution: {integrity: sha512-2P+YgaXF+gRsIihwwY1gCsQSYnu9Zyj2py8kY5fFvUM1qm2WA2u639R6YNVfU4GWr+ZM5mqEsfHZZLoRONbemw==}
+ peerDependencies:
+ react: '>=16.8.0'
- '@esbuild/win32-arm64@0.25.12':
- resolution: {integrity: sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==}
- engines: {node: '>=18'}
- cpu: [arm64]
- os: [win32]
+ '@dnd-kit/core@6.3.1':
+ resolution: {integrity: sha512-xkGBRQQab4RLwgXxoqETICr6S5JlogafbhNsidmrkVv2YRs5MLwpjoF2qpiGjQt8S9AoxtIV603s0GIUpY5eYQ==}
+ peerDependencies:
+ react: '>=16.8.0'
+ react-dom: '>=16.8.0'
- '@esbuild/win32-ia32@0.25.12':
- resolution: {integrity: sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==}
- engines: {node: '>=18'}
- cpu: [ia32]
- os: [win32]
+ '@dnd-kit/modifiers@9.0.0':
+ resolution: {integrity: sha512-ybiLc66qRGuZoC20wdSSG6pDXFikui/dCNGthxv4Ndy8ylErY0N3KVxY2bgo7AWwIbxDmXDg3ylAFmnrjcbVvw==}
+ peerDependencies:
+ '@dnd-kit/core': ^6.3.0
+ react: '>=16.8.0'
- '@esbuild/win32-x64@0.25.12':
- resolution: {integrity: sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==}
- engines: {node: '>=18'}
- cpu: [x64]
- os: [win32]
+ '@dnd-kit/sortable@10.0.0':
+ resolution: {integrity: sha512-+xqhmIIzvAYMGfBYYnbKuNicfSsk4RksY2XdmJhT+HAC01nix6fHCztU68jooFiMUB01Ky3F0FyOvhG/BZrWkg==}
+ peerDependencies:
+ '@dnd-kit/core': ^6.3.0
+ react: '>=16.8.0'
- '@eslint-community/eslint-utils@4.9.0':
- resolution: {integrity: sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ '@dnd-kit/utilities@3.2.2':
+ resolution: {integrity: sha512-+MKAJEOfaBe5SmV6t34p80MMKhjvUz0vRrvVJbPT0WElzaOJ/1xs+D+KDv+tD/NE5ujfrChEcshd4fLn0wpiqg==}
peerDependencies:
- eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
+ react: '>=16.8.0'
- '@eslint-community/regexpp@4.12.2':
- resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==}
- engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
+ '@docsearch/css@3.9.0':
+ resolution: {integrity: sha512-cQbnVbq0rrBwNAKegIac/t6a8nWoUAn8frnkLFW6YARaRmAQr5/Eoe6Ln2fqkUCZ40KpdrKbpSAmgrkviOxuWA==}
- '@eslint/compat@1.4.1':
- resolution: {integrity: sha512-cfO82V9zxxGBxcQDr1lfaYB7wykTa0b00mGa36FrJl7iTFd0Z2cHfEYuxcBRP/iNijCsWsEkA+jzT8hGYmv33w==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@docsearch/react@3.9.0':
+ resolution: {integrity: sha512-mb5FOZYZIkRQ6s/NWnM98k879vu5pscWqTLubLFBO87igYYT4VzVazh4h5o/zCvTIZgEt3PvsCOMOswOUo9yHQ==}
peerDependencies:
- eslint: ^8.40 || 9
+ '@types/react': '>= 16.8.0 < 20.0.0'
+ react: '>= 16.8.0 < 20.0.0'
+ react-dom: '>= 16.8.0 < 20.0.0'
+ search-insights: '>= 1 < 3'
peerDependenciesMeta:
- eslint:
+ '@types/react':
+ optional: true
+ react:
+ optional: true
+ react-dom:
+ optional: true
+ search-insights:
optional: true
- '@eslint/config-array@0.21.1':
- resolution: {integrity: sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@docusaurus/babel@3.7.0':
+ resolution: {integrity: sha512-0H5uoJLm14S/oKV3Keihxvh8RV+vrid+6Gv+2qhuzbqHanawga8tYnsdpjEyt36ucJjqlby2/Md2ObWjA02UXQ==}
+ engines: {node: '>=18.0'}
- '@eslint/config-helpers@0.4.2':
- resolution: {integrity: sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@docusaurus/bundler@3.7.0':
+ resolution: {integrity: sha512-CUUT9VlSGukrCU5ctZucykvgCISivct+cby28wJwCC/fkQFgAHRp/GKv2tx38ZmXb7nacrKzFTcp++f9txUYGg==}
+ engines: {node: '>=18.0'}
+ peerDependencies:
+ '@docusaurus/faster': '*'
+ peerDependenciesMeta:
+ '@docusaurus/faster':
+ optional: true
- '@eslint/core@0.17.0':
- resolution: {integrity: sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@docusaurus/core@3.7.0':
+ resolution: {integrity: sha512-b0fUmaL+JbzDIQaamzpAFpTviiaU4cX3Qz8cuo14+HGBCwa0evEK0UYCBFY3n4cLzL8Op1BueeroUD2LYAIHbQ==}
+ engines: {node: '>=18.0'}
+ hasBin: true
+ peerDependencies:
+ '@mdx-js/react': ^3.0.0
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
- '@eslint/eslintrc@3.3.1':
- resolution: {integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@docusaurus/cssnano-preset@3.7.0':
+ resolution: {integrity: sha512-X9GYgruZBSOozg4w4dzv9uOz8oK/EpPVQXkp0MM6Tsgp/nRIU9hJzJ0Pxg1aRa3xCeEQTOimZHcocQFlLwYajQ==}
+ engines: {node: '>=18.0'}
- '@eslint/js@9.39.1':
- resolution: {integrity: sha512-S26Stp4zCy88tH94QbBv3XCuzRQiZ9yXofEILmglYTh/Ug/a9/umqvgFtYBAo3Lp0nsI/5/qH1CCrbdK3AP1Tw==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@docusaurus/logger@3.7.0':
+ resolution: {integrity: sha512-z7g62X7bYxCYmeNNuO9jmzxLQG95q9QxINCwpboVcNff3SJiHJbGrarxxOVMVmAh1MsrSfxWkVGv4P41ktnFsA==}
+ engines: {node: '>=18.0'}
- '@eslint/object-schema@2.1.7':
- resolution: {integrity: sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@docusaurus/mdx-loader@3.7.0':
+ resolution: {integrity: sha512-OFBG6oMjZzc78/U3WNPSHs2W9ZJ723ewAcvVJaqS0VgyeUfmzUV8f1sv+iUHA0DtwiR5T5FjOxj6nzEE8LY6VA==}
+ engines: {node: '>=18.0'}
+ peerDependencies:
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
- '@eslint/plugin-kit@0.4.1':
- resolution: {integrity: sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==}
- engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ '@docusaurus/module-type-aliases@3.7.0':
+ resolution: {integrity: sha512-g7WdPqDNaqA60CmBrr0cORTrsOit77hbsTj7xE2l71YhBn79sxdm7WMK7wfhcaafkbpIh7jv5ef5TOpf1Xv9Lg==}
+ peerDependencies:
+ react: '*'
+ react-dom: '*'
- '@faker-js/faker@10.1.0':
- resolution: {integrity: sha512-C3mrr3b5dRVlKPJdfrAXS8+dq+rq8Qm5SNRazca0JKgw1HQERFmrVb0towvMmw5uu8hHKNiQasMaR/tydf3Zsg==}
- engines: {node: ^20.19.0 || ^22.13.0 || ^23.5.0 || >=24.0.0, npm: '>=10'}
+ '@docusaurus/plugin-content-blog@3.7.0':
+ resolution: {integrity: sha512-EFLgEz6tGHYWdPU0rK8tSscZwx+AsyuBW/r+tNig2kbccHYGUJmZtYN38GjAa3Fda4NU+6wqUO5kTXQSRBQD3g==}
+ engines: {node: '>=18.0'}
+ peerDependencies:
+ '@docusaurus/plugin-content-docs': '*'
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
- '@fast-csv/format@4.3.5':
- resolution: {integrity: sha512-8iRn6QF3I8Ak78lNAa+Gdl5MJJBM5vRHivFtMRUWINdevNo00K7OXxS2PshawLKTejVwieIlPmK5YlLu6w4u8A==}
+ '@docusaurus/plugin-content-docs@3.7.0':
+ resolution: {integrity: sha512-GXg5V7kC9FZE4FkUZA8oo/NrlRb06UwuICzI6tcbzj0+TVgjq/mpUXXzSgKzMS82YByi4dY2Q808njcBCyy6tQ==}
+ engines: {node: '>=18.0'}
+ peerDependencies:
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
- '@fast-csv/format@5.0.5':
- resolution: {integrity: sha512-0P9SJXXnqKdmuWlLaTelqbrfdgN37Mvrb369J6eNmqL41IEIZQmV4sNM4GgAK2Dz3aH04J0HKGDMJFkYObThTw==}
+ '@docusaurus/plugin-content-pages@3.7.0':
+ resolution: {integrity: sha512-YJSU3tjIJf032/Aeao8SZjFOrXJbz/FACMveSMjLyMH4itQyZ2XgUIzt4y+1ISvvk5zrW4DABVT2awTCqBkx0Q==}
+ engines: {node: '>=18.0'}
+ peerDependencies:
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
- '@fast-csv/parse@4.3.6':
- resolution: {integrity: sha512-uRsLYksqpbDmWaSmzvJcuApSEe38+6NQZBUsuAyMZKqHxH0g1wcJgsKUvN3WC8tewaqFjBMMGrkHmC+T7k8LvA==}
+ '@docusaurus/plugin-debug@3.7.0':
+ resolution: {integrity: sha512-Qgg+IjG/z4svtbCNyTocjIwvNTNEwgRjSXXSJkKVG0oWoH0eX/HAPiu+TS1HBwRPQV+tTYPWLrUypYFepfujZA==}
+ engines: {node: '>=18.0'}
+ peerDependencies:
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
- '@fast-csv/parse@5.0.5':
- resolution: {integrity: sha512-M0IbaXZDbxfOnpVE5Kps/a6FGlILLhtLsvWd9qNH3d2TxNnpbNkFf3KD26OmJX6MHq7PdQAl5htStDwnuwHx6w==}
+ '@docusaurus/plugin-google-analytics@3.7.0':
+ resolution: {integrity: sha512-otIqiRV/jka6Snjf+AqB360XCeSv7lQC+DKYW+EUZf6XbuE8utz5PeUQ8VuOcD8Bk5zvT1MC4JKcd5zPfDuMWA==}
+ engines: {node: '>=18.0'}
+ peerDependencies:
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
- '@fastify/accept-negotiator@2.0.1':
- resolution: {integrity: sha512-/c/TW2bO/v9JeEgoD/g1G5GxGeCF1Hafdf79WPmUlgYiBXummY0oX3VVq4yFkKKVBKDNlaDUYoab7g38RpPqCQ==}
+ '@docusaurus/plugin-google-gtag@3.7.0':
+ resolution: {integrity: sha512-M3vrMct1tY65ModbyeDaMoA+fNJTSPe5qmchhAbtqhDD/iALri0g9LrEpIOwNaoLmm6lO88sfBUADQrSRSGSWA==}
+ engines: {node: '>=18.0'}
+ peerDependencies:
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
- '@fastify/ajv-compiler@4.0.5':
- resolution: {integrity: sha512-KoWKW+MhvfTRWL4qrhUwAAZoaChluo0m0vbiJlGMt2GXvL4LVPQEjt8kSpHI3IBq5Rez8fg+XeH3cneztq+C7A==}
+ '@docusaurus/plugin-google-tag-manager@3.7.0':
+ resolution: {integrity: sha512-X8U78nb8eiMiPNg3jb9zDIVuuo/rE1LjGDGu+5m5CX4UBZzjMy+klOY2fNya6x8ACyE/L3K2erO1ErheP55W/w==}
+ engines: {node: '>=18.0'}
+ peerDependencies:
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
- '@fastify/busboy@3.2.0':
- resolution: {integrity: sha512-m9FVDXU3GT2ITSe0UaMA5rU3QkfC/UXtCU8y0gSN/GugTqtVldOBWIB5V6V3sbmenVZUIpU6f+mPEO2+m5iTaA==}
+ '@docusaurus/plugin-sitemap@3.7.0':
+ resolution: {integrity: sha512-bTRT9YLZ/8I/wYWKMQke18+PF9MV8Qub34Sku6aw/vlZ/U+kuEuRpQ8bTcNOjaTSfYsWkK4tTwDMHK2p5S86cA==}
+ engines: {node: '>=18.0'}
+ peerDependencies:
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
- '@fastify/cors@11.1.0':
- resolution: {integrity: sha512-sUw8ed8wP2SouWZTIbA7V2OQtMNpLj2W6qJOYhNdcmINTu6gsxVYXjQiM9mdi8UUDlcoDDJ/W2syPo1WB2QjYA==}
+ '@docusaurus/plugin-svgr@3.7.0':
+ resolution: {integrity: sha512-HByXIZTbc4GV5VAUkZ2DXtXv1Qdlnpk3IpuImwSnEzCDBkUMYcec5282hPjn6skZqB25M1TYCmWS91UbhBGxQg==}
+ engines: {node: '>=18.0'}
+ peerDependencies:
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
- '@fastify/deepmerge@3.1.0':
- resolution: {integrity: sha512-lCVONBQINyNhM6LLezB6+2afusgEYR4G8xenMsfe+AT+iZ7Ca6upM5Ha8UkZuYSnuMw3GWl/BiPXnLMi/gSxuQ==}
+ '@docusaurus/preset-classic@3.7.0':
+ resolution: {integrity: sha512-nPHj8AxDLAaQXs+O6+BwILFuhiWbjfQWrdw2tifOClQoNfuXDjfjogee6zfx6NGHWqshR23LrcN115DmkHC91Q==}
+ engines: {node: '>=18.0'}
+ peerDependencies:
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
- '@fastify/error@4.2.0':
- resolution: {integrity: sha512-RSo3sVDXfHskiBZKBPRgnQTtIqpi/7zhJOEmAxCiBcM7d0uwdGdxLlsCaLzGs8v8NnxIRlfG0N51p5yFaOentQ==}
+ '@docusaurus/react-loadable@6.0.0':
+ resolution: {integrity: sha512-YMMxTUQV/QFSnbgrP3tjDzLHRg7vsbMn8e9HAa8o/1iXoiomo48b7sk/kkmWEuWNDPJVlKSJRB6Y2fHqdJk+SQ==}
+ peerDependencies:
+ react: '*'
- '@fastify/fast-json-stringify-compiler@5.0.3':
- resolution: {integrity: sha512-uik7yYHkLr6fxd8hJSZ8c+xF4WafPK+XzneQDPU+D10r5X19GW8lJcom2YijX2+qtFF1ENJlHXKFM9ouXNJYgQ==}
+ '@docusaurus/theme-classic@3.7.0':
+ resolution: {integrity: sha512-MnLxG39WcvLCl4eUzHr0gNcpHQfWoGqzADCly54aqCofQX6UozOS9Th4RK3ARbM9m7zIRv3qbhggI53dQtx/hQ==}
+ engines: {node: '>=18.0'}
+ peerDependencies:
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
- '@fastify/formbody@8.0.2':
- resolution: {integrity: sha512-84v5J2KrkXzjgBpYnaNRPqwgMsmY7ZDjuj0YVuMR3NXCJRCgKEZy/taSP1wUYGn0onfxJpLyRGDLa+NMaDJtnA==}
+ '@docusaurus/theme-common@3.7.0':
+ resolution: {integrity: sha512-8eJ5X0y+gWDsURZnBfH0WabdNm8XMCXHv8ENy/3Z/oQKwaB/EHt5lP9VsTDTf36lKEp0V6DjzjFyFIB+CetL0A==}
+ engines: {node: '>=18.0'}
+ peerDependencies:
+ '@docusaurus/plugin-content-docs': '*'
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
- '@fastify/forwarded@3.0.1':
- resolution: {integrity: sha512-JqDochHFqXs3C3Ml3gOY58zM7OqO9ENqPo0UqAjAjH8L01fRZqwX9iLeX34//kiJubF7r2ZQHtBRU36vONbLlw==}
+ '@docusaurus/theme-search-algolia@3.7.0':
+ resolution: {integrity: sha512-Al/j5OdzwRU1m3falm+sYy9AaB93S1XF1Lgk9Yc6amp80dNxJVplQdQTR4cYdzkGtuQqbzUA8+kaoYYO0RbK6g==}
+ engines: {node: '>=18.0'}
+ peerDependencies:
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
- '@fastify/merge-json-schemas@0.2.1':
- resolution: {integrity: sha512-OA3KGBCy6KtIvLf8DINC5880o5iBlDX4SxzLQS8HorJAbqluzLRn80UXU0bxZn7UOFhFgpRJDasfwn9nG4FG4A==}
+ '@docusaurus/theme-translations@3.7.0':
+ resolution: {integrity: sha512-Ewq3bEraWDmienM6eaNK7fx+/lHMtGDHQyd1O+4+3EsDxxUmrzPkV7Ct3nBWTuE0MsoZr3yNwQVKjllzCMuU3g==}
+ engines: {node: '>=18.0'}
- '@fastify/middie@9.0.3':
- resolution: {integrity: sha512-7OYovKXp9UKYeVMcjcFLMcSpoMkmcZmfnG+eAvtdiatN35W7c+r9y1dRfpA+pfFVNuHGGqI3W+vDTmjvcfLcMA==}
+ '@docusaurus/tsconfig@3.7.0':
+ resolution: {integrity: sha512-vRsyj3yUZCjscgfgcFYjIsTcAru/4h4YH2/XAE8Rs7wWdnng98PgWKvP5ovVc4rmRpRg2WChVW0uOy2xHDvDBQ==}
- '@fastify/multipart@9.3.0':
- resolution: {integrity: sha512-NpeKipTOjjL1dA7SSlRMrOWWtrE8/0yKOmeudkdQoEaz4sVDJw5MVdZIahsWhvpc3YTN7f04f9ep/Y65RKoOWA==}
+ '@docusaurus/types@3.7.0':
+ resolution: {integrity: sha512-kOmZg5RRqJfH31m+6ZpnwVbkqMJrPOG5t0IOl4i/+3ruXyNfWzZ0lVtVrD0u4ONc/0NOsS9sWYaxxWNkH1LdLQ==}
+ peerDependencies:
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
- '@fastify/proxy-addr@5.1.0':
- resolution: {integrity: sha512-INS+6gh91cLUjB+PVHfu1UqcB76Sqtpyp7bnL+FYojhjygvOPA9ctiD/JDKsyD9Xgu4hUhCSJBPig/w7duNajw==}
+ '@docusaurus/utils-common@3.7.0':
+ resolution: {integrity: sha512-IZeyIfCfXy0Mevj6bWNg7DG7B8G+S6o6JVpddikZtWyxJguiQ7JYr0SIZ0qWd8pGNuMyVwriWmbWqMnK7Y5PwA==}
+ engines: {node: '>=18.0'}
- '@fastify/send@4.1.0':
- resolution: {integrity: sha512-TMYeQLCBSy2TOFmV95hQWkiTYgC/SEx7vMdV+wnZVX4tt8VBLKzmH8vV9OzJehV0+XBfg+WxPMt5wp+JBUKsVw==}
+ '@docusaurus/utils-validation@3.7.0':
+ resolution: {integrity: sha512-w8eiKk8mRdN+bNfeZqC4nyFoxNyI1/VExMKAzD9tqpJfLLbsa46Wfn5wcKH761g9WkKh36RtFV49iL9lh1DYBA==}
+ engines: {node: '>=18.0'}
- '@fastify/static@8.3.0':
- resolution: {integrity: sha512-yKxviR5PH1OKNnisIzZKmgZSus0r2OZb8qCSbqmw34aolT4g3UlzYfeBRym+HJ1J471CR8e2ldNub4PubD1coA==}
+ '@docusaurus/utils@3.7.0':
+ resolution: {integrity: sha512-e7zcB6TPnVzyUaHMJyLSArKa2AG3h9+4CfvKXKKWNx6hRs+p0a+u7HHTJBgo6KW2m+vqDnuIHK4X+bhmoghAFA==}
+ engines: {node: '>=18.0'}
- '@floating-ui/core@1.7.3':
- resolution: {integrity: sha512-sGnvb5dmrJaKEZ+LDIpguvdX3bDlEllmv4/ClQ9awcmCZrlx5jQyyMWFM5kBI+EyNOCDDiKk8il0zeuX3Zlg/w==}
+ '@emnapi/core@1.7.0':
+ resolution: {integrity: sha512-pJdKGq/1iquWYtv1RRSljZklxHCOCAJFJrImO5ZLKPJVJlVUcs8yFwNQlqS0Lo8xT1VAXXTCZocF9n26FWEKsw==}
- '@floating-ui/dom@1.7.4':
- resolution: {integrity: sha512-OOchDgh4F2CchOX94cRVqhvy7b3AFb+/rQXyswmzmGakRfkMgoWVjfnLWkRirfLEfuD4ysVW16eXzwt3jHIzKA==}
+ '@emnapi/runtime@1.7.0':
+ resolution: {integrity: sha512-oAYoQnCYaQZKVS53Fq23ceWMRxq5EhQsE0x0RdQ55jT7wagMu5k+fS39v1fiSLrtrLQlXwVINenqhLMtTrV/1Q==}
- '@floating-ui/react-dom@2.1.6':
- resolution: {integrity: sha512-4JX6rEatQEvlmgU80wZyq9RT96HZJa88q8hp0pBd+LrczeDI4o6uA2M+uvxngVHo4Ihr8uibXxH6+70zhAFrVw==}
- peerDependencies:
- react: '>=16.8.0'
- react-dom: '>=16.8.0'
+ '@emnapi/wasi-threads@1.1.0':
+ resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==}
- '@floating-ui/utils@0.2.10':
- resolution: {integrity: sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==}
+ '@emotion/babel-plugin@11.13.5':
+ resolution: {integrity: sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==}
- '@hapi/address@5.1.1':
- resolution: {integrity: sha512-A+po2d/dVoY7cYajycYI43ZbYMXukuopIsqCjh5QzsBCipDtdofHntljDlpccMjIfTy6UOkg+5KPriwYch2bXA==}
- engines: {node: '>=14.0.0'}
+ '@emotion/cache@11.14.0':
+ resolution: {integrity: sha512-L/B1lc/TViYk4DcpGxtAVbx0ZyiKM5ktoIyafGkH6zg/tj+mA+NE//aPYKG0k8kCHSHVJrpLpcAlOBEXQ3SavA==}
- '@hapi/formula@3.0.2':
- resolution: {integrity: sha512-hY5YPNXzw1He7s0iqkRQi+uMGh383CGdyyIGYtB+W5N3KHPXoqychklvHhKCC9M3Xtv0OCs/IHw+r4dcHtBYWw==}
+ '@emotion/hash@0.9.2':
+ resolution: {integrity: sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g==}
- '@hapi/hoek@11.0.7':
- resolution: {integrity: sha512-HV5undWkKzcB4RZUusqOpcgxOaq6VOAH7zhhIr2g3G8NF/MlFO75SjOr2NfuSx0Mh40+1FqCkagKLJRykUWoFQ==}
+ '@emotion/memoize@0.9.0':
+ resolution: {integrity: sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==}
- '@hapi/pinpoint@2.0.1':
- resolution: {integrity: sha512-EKQmr16tM8s16vTT3cA5L0kZZcTMU5DUOZTuvpnY738m+jyP3JIUj+Mm1xc1rsLkGBQ/gVnfKYPwOmPg1tUR4Q==}
+ '@emotion/react@11.14.0':
+ resolution: {integrity: sha512-O000MLDBDdk/EohJPFUqvnp4qnHeYkVP5B0xEG0D/L7cOKP9kefu2DXn8dj74cQfsEzUqh+sr1RzFqiL1o+PpA==}
+ peerDependencies:
+ '@types/react': '*'
+ react: '>=16.8.0'
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
- '@hapi/tlds@1.1.4':
- resolution: {integrity: sha512-Fq+20dxsxLaUn5jSSWrdtSRcIUba2JquuorF9UW1wIJS5cSUwxIsO2GIhaWynPRflvxSzFN+gxKte2HEW1OuoA==}
- engines: {node: '>=14.0.0'}
+ '@emotion/serialize@1.3.3':
+ resolution: {integrity: sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==}
- '@hapi/topo@6.0.2':
- resolution: {integrity: sha512-KR3rD5inZbGMrHmgPxsJ9dbi6zEK+C3ZwUwTa+eMwWLz7oijWUTWD2pMSNNYJAU6Qq+65NkxXjqHr/7LM2Xkqg==}
+ '@emotion/sheet@1.4.0':
+ resolution: {integrity: sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg==}
- '@hookform/resolvers@5.2.2':
- resolution: {integrity: sha512-A/IxlMLShx3KjV/HeTcTfaMxdwy690+L/ZADoeaTltLx+CVuzkeVIPuybK3jrRfw7YZnmdKsVVHAlEPIAEUNlA==}
+ '@emotion/unitless@0.10.0':
+ resolution: {integrity: sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==}
+
+ '@emotion/use-insertion-effect-with-fallbacks@1.2.0':
+ resolution: {integrity: sha512-yJMtVdH59sxi/aVJBpk9FQq+OR8ll5GT8oWd57UpeaKEVGab41JWaCFA7FRLoMLloOZF/c/wsPoe+bfGmRKgDg==}
peerDependencies:
- react-hook-form: ^7.55.0
+ react: '>=16.8.0'
- '@humanfs/core@0.19.1':
- resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==}
- engines: {node: '>=18.18.0'}
+ '@emotion/utils@1.4.2':
+ resolution: {integrity: sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA==}
- '@humanfs/node@0.16.7':
- resolution: {integrity: sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==}
- engines: {node: '>=18.18.0'}
+ '@emotion/weak-memoize@0.4.0':
+ resolution: {integrity: sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg==}
- '@humanwhocodes/module-importer@1.0.1':
- resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
- engines: {node: '>=12.22'}
+ '@esbuild/aix-ppc64@0.25.12':
+ resolution: {integrity: sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==}
+ engines: {node: '>=18'}
+ cpu: [ppc64]
+ os: [aix]
- '@humanwhocodes/retry@0.4.3':
- resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==}
- engines: {node: '>=18.18'}
+ '@esbuild/android-arm64@0.25.12':
+ resolution: {integrity: sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [android]
- '@ianvs/prettier-plugin-sort-imports@4.7.0':
- resolution: {integrity: sha512-soa2bPUJAFruLL4z/CnMfSEKGznm5ebz29fIa9PxYtu8HHyLKNE1NXAs6dylfw1jn/ilEIfO2oLLN6uAafb7DA==}
- peerDependencies:
- '@prettier/plugin-oxc': ^0.0.4
- '@vue/compiler-sfc': 2.7.x || 3.x
- content-tag: ^4.0.0
- prettier: 2 || 3 || ^4.0.0-0
- prettier-plugin-ember-template-tag: ^2.1.0
- peerDependenciesMeta:
- '@prettier/plugin-oxc':
- optional: true
- '@vue/compiler-sfc':
- optional: true
- content-tag:
- optional: true
- prettier-plugin-ember-template-tag:
- optional: true
+ '@esbuild/android-arm@0.25.12':
+ resolution: {integrity: sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==}
+ engines: {node: '>=18'}
+ cpu: [arm]
+ os: [android]
- '@img/colour@1.0.0':
- resolution: {integrity: sha512-A5P/LfWGFSl6nsckYtjw9da+19jB8hkJ6ACTGcDfEJ0aE+l2n2El7dsVM7UVHZQ9s2lmYMWlrS21YLy2IR1LUw==}
+ '@esbuild/android-x64@0.25.12':
+ resolution: {integrity: sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==}
engines: {node: '>=18'}
+ cpu: [x64]
+ os: [android]
- '@img/sharp-darwin-arm64@0.34.5':
- resolution: {integrity: sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ '@esbuild/darwin-arm64@0.25.12':
+ resolution: {integrity: sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==}
+ engines: {node: '>=18'}
cpu: [arm64]
os: [darwin]
- '@img/sharp-darwin-x64@0.34.5':
- resolution: {integrity: sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ '@esbuild/darwin-x64@0.25.12':
+ resolution: {integrity: sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==}
+ engines: {node: '>=18'}
cpu: [x64]
os: [darwin]
- '@img/sharp-libvips-darwin-arm64@1.2.4':
- resolution: {integrity: sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g==}
+ '@esbuild/freebsd-arm64@0.25.12':
+ resolution: {integrity: sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==}
+ engines: {node: '>=18'}
cpu: [arm64]
- os: [darwin]
+ os: [freebsd]
- '@img/sharp-libvips-darwin-x64@1.2.4':
- resolution: {integrity: sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg==}
+ '@esbuild/freebsd-x64@0.25.12':
+ resolution: {integrity: sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==}
+ engines: {node: '>=18'}
cpu: [x64]
- os: [darwin]
+ os: [freebsd]
- '@img/sharp-libvips-linux-arm64@1.2.4':
- resolution: {integrity: sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==}
+ '@esbuild/linux-arm64@0.25.12':
+ resolution: {integrity: sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==}
+ engines: {node: '>=18'}
cpu: [arm64]
os: [linux]
- '@img/sharp-libvips-linux-arm@1.2.4':
- resolution: {integrity: sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==}
+ '@esbuild/linux-arm@0.25.12':
+ resolution: {integrity: sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==}
+ engines: {node: '>=18'}
cpu: [arm]
os: [linux]
- '@img/sharp-libvips-linux-ppc64@1.2.4':
- resolution: {integrity: sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==}
- cpu: [ppc64]
- os: [linux]
-
- '@img/sharp-libvips-linux-riscv64@1.2.4':
- resolution: {integrity: sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==}
- cpu: [riscv64]
- os: [linux]
-
- '@img/sharp-libvips-linux-s390x@1.2.4':
- resolution: {integrity: sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==}
- cpu: [s390x]
- os: [linux]
-
- '@img/sharp-libvips-linux-x64@1.2.4':
- resolution: {integrity: sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==}
- cpu: [x64]
- os: [linux]
-
- '@img/sharp-libvips-linuxmusl-arm64@1.2.4':
- resolution: {integrity: sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==}
- cpu: [arm64]
- os: [linux]
-
- '@img/sharp-libvips-linuxmusl-x64@1.2.4':
- resolution: {integrity: sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==}
- cpu: [x64]
+ '@esbuild/linux-ia32@0.25.12':
+ resolution: {integrity: sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==}
+ engines: {node: '>=18'}
+ cpu: [ia32]
os: [linux]
- '@img/sharp-linux-arm64@0.34.5':
- resolution: {integrity: sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
- cpu: [arm64]
+ '@esbuild/linux-loong64@0.25.12':
+ resolution: {integrity: sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==}
+ engines: {node: '>=18'}
+ cpu: [loong64]
os: [linux]
- '@img/sharp-linux-arm@0.34.5':
- resolution: {integrity: sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
- cpu: [arm]
+ '@esbuild/linux-mips64el@0.25.12':
+ resolution: {integrity: sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==}
+ engines: {node: '>=18'}
+ cpu: [mips64el]
os: [linux]
- '@img/sharp-linux-ppc64@0.34.5':
- resolution: {integrity: sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ '@esbuild/linux-ppc64@0.25.12':
+ resolution: {integrity: sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==}
+ engines: {node: '>=18'}
cpu: [ppc64]
os: [linux]
- '@img/sharp-linux-riscv64@0.34.5':
- resolution: {integrity: sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ '@esbuild/linux-riscv64@0.25.12':
+ resolution: {integrity: sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==}
+ engines: {node: '>=18'}
cpu: [riscv64]
os: [linux]
- '@img/sharp-linux-s390x@0.34.5':
- resolution: {integrity: sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ '@esbuild/linux-s390x@0.25.12':
+ resolution: {integrity: sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==}
+ engines: {node: '>=18'}
cpu: [s390x]
os: [linux]
- '@img/sharp-linux-x64@0.34.5':
- resolution: {integrity: sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ '@esbuild/linux-x64@0.25.12':
+ resolution: {integrity: sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==}
+ engines: {node: '>=18'}
cpu: [x64]
os: [linux]
- '@img/sharp-linuxmusl-arm64@0.34.5':
- resolution: {integrity: sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ '@esbuild/netbsd-arm64@0.25.12':
+ resolution: {integrity: sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==}
+ engines: {node: '>=18'}
cpu: [arm64]
- os: [linux]
+ os: [netbsd]
- '@img/sharp-linuxmusl-x64@0.34.5':
- resolution: {integrity: sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ '@esbuild/netbsd-x64@0.25.12':
+ resolution: {integrity: sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==}
+ engines: {node: '>=18'}
cpu: [x64]
- os: [linux]
-
- '@img/sharp-wasm32@0.34.5':
- resolution: {integrity: sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
- cpu: [wasm32]
+ os: [netbsd]
- '@img/sharp-win32-arm64@0.34.5':
- resolution: {integrity: sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ '@esbuild/openbsd-arm64@0.25.12':
+ resolution: {integrity: sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==}
+ engines: {node: '>=18'}
cpu: [arm64]
- os: [win32]
-
- '@img/sharp-win32-ia32@0.34.5':
- resolution: {integrity: sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
- cpu: [ia32]
- os: [win32]
+ os: [openbsd]
- '@img/sharp-win32-x64@0.34.5':
- resolution: {integrity: sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw==}
- engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ '@esbuild/openbsd-x64@0.25.12':
+ resolution: {integrity: sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==}
+ engines: {node: '>=18'}
cpu: [x64]
- os: [win32]
+ os: [openbsd]
- '@inquirer/ansi@1.0.1':
- resolution: {integrity: sha512-yqq0aJW/5XPhi5xOAL1xRCpe1eh8UFVgYFpFsjEqmIR8rKLyP+HINvFXwUaxYICflJrVlxnp7lLN6As735kVpw==}
+ '@esbuild/openharmony-arm64@0.25.12':
+ resolution: {integrity: sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==}
engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [openharmony]
- '@inquirer/checkbox@4.3.0':
- resolution: {integrity: sha512-5+Q3PKH35YsnoPTh75LucALdAxom6xh5D1oeY561x4cqBuH24ZFVyFREPe14xgnrtmGu3EEt1dIi60wRVSnGCw==}
- engines: {node: '>=18'}
- peerDependencies:
- '@types/node': '>=18'
- peerDependenciesMeta:
- '@types/node':
- optional: true
-
- '@inquirer/confirm@5.1.19':
- resolution: {integrity: sha512-wQNz9cfcxrtEnUyG5PndC8g3gZ7lGDBzmWiXZkX8ot3vfZ+/BLjR8EvyGX4YzQLeVqtAlY/YScZpW7CW8qMoDQ==}
+ '@esbuild/sunos-x64@0.25.12':
+ resolution: {integrity: sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==}
engines: {node: '>=18'}
- peerDependencies:
- '@types/node': '>=18'
- peerDependenciesMeta:
- '@types/node':
- optional: true
+ cpu: [x64]
+ os: [sunos]
- '@inquirer/core@10.3.0':
- resolution: {integrity: sha512-Uv2aPPPSK5jeCplQmQ9xadnFx2Zhj9b5Dj7bU6ZeCdDNNY11nhYy4btcSdtDguHqCT2h5oNeQTcUNSGGLA7NTA==}
+ '@esbuild/win32-arm64@0.25.12':
+ resolution: {integrity: sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==}
engines: {node: '>=18'}
- peerDependencies:
- '@types/node': '>=18'
- peerDependenciesMeta:
- '@types/node':
- optional: true
+ cpu: [arm64]
+ os: [win32]
- '@inquirer/editor@4.2.21':
- resolution: {integrity: sha512-MjtjOGjr0Kh4BciaFShYpZ1s9400idOdvQ5D7u7lE6VztPFoyLcVNE5dXBmEEIQq5zi4B9h2kU+q7AVBxJMAkQ==}
+ '@esbuild/win32-ia32@0.25.12':
+ resolution: {integrity: sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==}
engines: {node: '>=18'}
- peerDependencies:
- '@types/node': '>=18'
- peerDependenciesMeta:
- '@types/node':
- optional: true
+ cpu: [ia32]
+ os: [win32]
- '@inquirer/expand@4.0.21':
- resolution: {integrity: sha512-+mScLhIcbPFmuvU3tAGBed78XvYHSvCl6dBiYMlzCLhpr0bzGzd8tfivMMeqND6XZiaZ1tgusbUHJEfc6YzOdA==}
+ '@esbuild/win32-x64@0.25.12':
+ resolution: {integrity: sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==}
engines: {node: '>=18'}
- peerDependencies:
- '@types/node': '>=18'
- peerDependenciesMeta:
- '@types/node':
- optional: true
+ cpu: [x64]
+ os: [win32]
- '@inquirer/external-editor@1.0.2':
- resolution: {integrity: sha512-yy9cOoBnx58TlsPrIxauKIFQTiyH+0MK4e97y4sV9ERbI+zDxw7i2hxHLCIEGIE/8PPvDxGhgzIOTSOWcs6/MQ==}
- engines: {node: '>=18'}
+ '@eslint-community/eslint-utils@4.9.0':
+ resolution: {integrity: sha512-ayVFHdtZ+hsq1t2Dy24wCmGXGe4q9Gu3smhLYALJrr473ZH27MsnSL+LKUlimp4BWJqMDMLmPpx/Q9R3OAlL4g==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
peerDependencies:
- '@types/node': '>=18'
- peerDependenciesMeta:
- '@types/node':
- optional: true
+ eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
- '@inquirer/figures@1.0.14':
- resolution: {integrity: sha512-DbFgdt+9/OZYFM+19dbpXOSeAstPy884FPy1KjDu4anWwymZeOYhMY1mdFri172htv6mvc/uvIAAi7b7tvjJBQ==}
- engines: {node: '>=18'}
+ '@eslint-community/regexpp@4.12.2':
+ resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==}
+ engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
- '@inquirer/input@4.2.5':
- resolution: {integrity: sha512-7GoWev7P6s7t0oJbenH0eQ0ThNdDJbEAEtVt9vsrYZ9FulIokvd823yLyhQlWHJPGce1wzP53ttfdCZmonMHyA==}
- engines: {node: '>=18'}
+ '@eslint/compat@1.4.1':
+ resolution: {integrity: sha512-cfO82V9zxxGBxcQDr1lfaYB7wykTa0b00mGa36FrJl7iTFd0Z2cHfEYuxcBRP/iNijCsWsEkA+jzT8hGYmv33w==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
- '@types/node': '>=18'
+ eslint: ^8.40 || 9
peerDependenciesMeta:
- '@types/node':
+ eslint:
optional: true
- '@inquirer/number@3.0.21':
- resolution: {integrity: sha512-5QWs0KGaNMlhbdhOSCFfKsW+/dcAVC2g4wT/z2MCiZM47uLgatC5N20kpkDQf7dHx+XFct/MJvvNGy6aYJn4Pw==}
- engines: {node: '>=18'}
- peerDependencies:
- '@types/node': '>=18'
- peerDependenciesMeta:
- '@types/node':
- optional: true
+ '@eslint/config-array@0.21.1':
+ resolution: {integrity: sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@inquirer/password@4.0.21':
- resolution: {integrity: sha512-xxeW1V5SbNFNig2pLfetsDb0svWlKuhmr7MPJZMYuDnCTkpVBI+X/doudg4pznc1/U+yYmWFFOi4hNvGgUo7EA==}
- engines: {node: '>=18'}
- peerDependencies:
- '@types/node': '>=18'
- peerDependenciesMeta:
- '@types/node':
- optional: true
+ '@eslint/config-helpers@0.4.2':
+ resolution: {integrity: sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@inquirer/prompts@7.3.2':
- resolution: {integrity: sha512-G1ytyOoHh5BphmEBxSwALin3n1KGNYB6yImbICcRQdzXfOGbuJ9Jske/Of5Sebk339NSGGNfUshnzK8YWkTPsQ==}
- engines: {node: '>=18'}
- peerDependencies:
- '@types/node': '>=18'
- peerDependenciesMeta:
- '@types/node':
- optional: true
+ '@eslint/core@0.17.0':
+ resolution: {integrity: sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@inquirer/prompts@7.8.0':
- resolution: {integrity: sha512-JHwGbQ6wjf1dxxnalDYpZwZxUEosT+6CPGD9Zh4sm9WXdtUp9XODCQD3NjSTmu+0OAyxWXNOqf0spjIymJa2Tw==}
- engines: {node: '>=18'}
- peerDependencies:
- '@types/node': '>=18'
- peerDependenciesMeta:
- '@types/node':
- optional: true
+ '@eslint/eslintrc@3.3.1':
+ resolution: {integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@inquirer/rawlist@4.1.9':
- resolution: {integrity: sha512-AWpxB7MuJrRiSfTKGJ7Y68imYt8P9N3Gaa7ySdkFj1iWjr6WfbGAhdZvw/UnhFXTHITJzxGUI9k8IX7akAEBCg==}
- engines: {node: '>=18'}
- peerDependencies:
- '@types/node': '>=18'
- peerDependenciesMeta:
- '@types/node':
- optional: true
+ '@eslint/js@9.39.1':
+ resolution: {integrity: sha512-S26Stp4zCy88tH94QbBv3XCuzRQiZ9yXofEILmglYTh/Ug/a9/umqvgFtYBAo3Lp0nsI/5/qH1CCrbdK3AP1Tw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@inquirer/search@3.2.0':
- resolution: {integrity: sha512-a5SzB/qrXafDX1Z4AZW3CsVoiNxcIYCzYP7r9RzrfMpaLpB+yWi5U8BWagZyLmwR0pKbbL5umnGRd0RzGVI8bQ==}
- engines: {node: '>=18'}
- peerDependencies:
- '@types/node': '>=18'
- peerDependenciesMeta:
- '@types/node':
- optional: true
+ '@eslint/object-schema@2.1.7':
+ resolution: {integrity: sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@inquirer/select@4.4.0':
- resolution: {integrity: sha512-kaC3FHsJZvVyIjYBs5Ih8y8Bj4P/QItQWrZW22WJax7zTN+ZPXVGuOM55vzbdCP9zKUiBd9iEJVdesujfF+cAA==}
- engines: {node: '>=18'}
- peerDependencies:
- '@types/node': '>=18'
- peerDependenciesMeta:
- '@types/node':
- optional: true
+ '@eslint/plugin-kit@0.4.1':
+ resolution: {integrity: sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@inquirer/type@3.0.9':
- resolution: {integrity: sha512-QPaNt/nmE2bLGQa9b7wwyRJoLZ7pN6rcyXvzU0YCmivmJyq1BVo94G98tStRWkoD1RgDX5C+dPlhhHzNdu/W/w==}
- engines: {node: '>=18'}
- peerDependencies:
- '@types/node': '>=18'
- peerDependenciesMeta:
- '@types/node':
- optional: true
+ '@faker-js/faker@10.1.0':
+ resolution: {integrity: sha512-C3mrr3b5dRVlKPJdfrAXS8+dq+rq8Qm5SNRazca0JKgw1HQERFmrVb0towvMmw5uu8hHKNiQasMaR/tydf3Zsg==}
+ engines: {node: ^20.19.0 || ^22.13.0 || ^23.5.0 || >=24.0.0, npm: '>=10'}
- '@isaacs/balanced-match@4.0.1':
- resolution: {integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==}
- engines: {node: 20 || >=22}
+ '@fast-csv/format@4.3.5':
+ resolution: {integrity: sha512-8iRn6QF3I8Ak78lNAa+Gdl5MJJBM5vRHivFtMRUWINdevNo00K7OXxS2PshawLKTejVwieIlPmK5YlLu6w4u8A==}
- '@isaacs/brace-expansion@5.0.0':
- resolution: {integrity: sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==}
- engines: {node: 20 || >=22}
+ '@fast-csv/format@5.0.5':
+ resolution: {integrity: sha512-0P9SJXXnqKdmuWlLaTelqbrfdgN37Mvrb369J6eNmqL41IEIZQmV4sNM4GgAK2Dz3aH04J0HKGDMJFkYObThTw==}
- '@isaacs/cliui@8.0.2':
- resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
- engines: {node: '>=12'}
+ '@fast-csv/parse@4.3.6':
+ resolution: {integrity: sha512-uRsLYksqpbDmWaSmzvJcuApSEe38+6NQZBUsuAyMZKqHxH0g1wcJgsKUvN3WC8tewaqFjBMMGrkHmC+T7k8LvA==}
- '@istanbuljs/load-nyc-config@1.1.0':
- resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==}
- engines: {node: '>=8'}
+ '@fast-csv/parse@5.0.5':
+ resolution: {integrity: sha512-M0IbaXZDbxfOnpVE5Kps/a6FGlILLhtLsvWd9qNH3d2TxNnpbNkFf3KD26OmJX6MHq7PdQAl5htStDwnuwHx6w==}
- '@istanbuljs/schema@0.1.3':
- resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==}
- engines: {node: '>=8'}
+ '@fastify/accept-negotiator@2.0.1':
+ resolution: {integrity: sha512-/c/TW2bO/v9JeEgoD/g1G5GxGeCF1Hafdf79WPmUlgYiBXummY0oX3VVq4yFkKKVBKDNlaDUYoab7g38RpPqCQ==}
- '@jest/console@30.2.0':
- resolution: {integrity: sha512-+O1ifRjkvYIkBqASKWgLxrpEhQAAE7hY77ALLUufSk5717KfOShg6IbqLmdsLMPdUiFvA2kTs0R7YZy+l0IzZQ==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@fastify/ajv-compiler@4.0.5':
+ resolution: {integrity: sha512-KoWKW+MhvfTRWL4qrhUwAAZoaChluo0m0vbiJlGMt2GXvL4LVPQEjt8kSpHI3IBq5Rez8fg+XeH3cneztq+C7A==}
- '@jest/core@30.2.0':
- resolution: {integrity: sha512-03W6IhuhjqTlpzh/ojut/pDB2LPRygyWX8ExpgHtQA8H/3K7+1vKmcINx5UzeOX1se6YEsBsOHQ1CRzf3fOwTQ==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- peerDependencies:
- node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
- peerDependenciesMeta:
- node-notifier:
- optional: true
+ '@fastify/busboy@3.2.0':
+ resolution: {integrity: sha512-m9FVDXU3GT2ITSe0UaMA5rU3QkfC/UXtCU8y0gSN/GugTqtVldOBWIB5V6V3sbmenVZUIpU6f+mPEO2+m5iTaA==}
- '@jest/create-cache-key-function@30.2.0':
- resolution: {integrity: sha512-44F4l4Enf+MirJN8X/NhdGkl71k5rBYiwdVlo4HxOwbu0sHV8QKrGEedb1VUU4K3W7fBKE0HGfbn7eZm0Ti3zg==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@fastify/cors@11.1.0':
+ resolution: {integrity: sha512-sUw8ed8wP2SouWZTIbA7V2OQtMNpLj2W6qJOYhNdcmINTu6gsxVYXjQiM9mdi8UUDlcoDDJ/W2syPo1WB2QjYA==}
- '@jest/diff-sequences@30.0.1':
- resolution: {integrity: sha512-n5H8QLDJ47QqbCNn5SuFjCRDrOLEZ0h8vAHCK5RL9Ls7Xa8AQLa/YxAc9UjFqoEDM48muwtBGjtMY5cr0PLDCw==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@fastify/deepmerge@3.1.0':
+ resolution: {integrity: sha512-lCVONBQINyNhM6LLezB6+2afusgEYR4G8xenMsfe+AT+iZ7Ca6upM5Ha8UkZuYSnuMw3GWl/BiPXnLMi/gSxuQ==}
- '@jest/environment-jsdom-abstract@30.2.0':
- resolution: {integrity: sha512-kazxw2L9IPuZpQ0mEt9lu9Z98SqR74xcagANmMBU16X0lS23yPc0+S6hGLUz8kVRlomZEs/5S/Zlpqwf5yu6OQ==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- peerDependencies:
- canvas: ^3.0.0
- jsdom: '*'
- peerDependenciesMeta:
- canvas:
- optional: true
+ '@fastify/error@4.2.0':
+ resolution: {integrity: sha512-RSo3sVDXfHskiBZKBPRgnQTtIqpi/7zhJOEmAxCiBcM7d0uwdGdxLlsCaLzGs8v8NnxIRlfG0N51p5yFaOentQ==}
- '@jest/environment@30.2.0':
- resolution: {integrity: sha512-/QPTL7OBJQ5ac09UDRa3EQes4gt1FTEG/8jZ/4v5IVzx+Cv7dLxlVIvfvSVRiiX2drWyXeBjkMSR8hvOWSog5g==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@fastify/fast-json-stringify-compiler@5.0.3':
+ resolution: {integrity: sha512-uik7yYHkLr6fxd8hJSZ8c+xF4WafPK+XzneQDPU+D10r5X19GW8lJcom2YijX2+qtFF1ENJlHXKFM9ouXNJYgQ==}
- '@jest/expect-utils@30.2.0':
- resolution: {integrity: sha512-1JnRfhqpD8HGpOmQp180Fo9Zt69zNtC+9lR+kT7NVL05tNXIi+QC8Csz7lfidMoVLPD3FnOtcmp0CEFnxExGEA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@fastify/formbody@8.0.2':
+ resolution: {integrity: sha512-84v5J2KrkXzjgBpYnaNRPqwgMsmY7ZDjuj0YVuMR3NXCJRCgKEZy/taSP1wUYGn0onfxJpLyRGDLa+NMaDJtnA==}
- '@jest/expect@30.2.0':
- resolution: {integrity: sha512-V9yxQK5erfzx99Sf+7LbhBwNWEZ9eZay8qQ9+JSC0TrMR1pMDHLMY+BnVPacWU6Jamrh252/IKo4F1Xn/zfiqA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@fastify/forwarded@3.0.1':
+ resolution: {integrity: sha512-JqDochHFqXs3C3Ml3gOY58zM7OqO9ENqPo0UqAjAjH8L01fRZqwX9iLeX34//kiJubF7r2ZQHtBRU36vONbLlw==}
- '@jest/fake-timers@30.2.0':
- resolution: {integrity: sha512-HI3tRLjRxAbBy0VO8dqqm7Hb2mIa8d5bg/NJkyQcOk7V118ObQML8RC5luTF/Zsg4474a+gDvhce7eTnP4GhYw==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@fastify/merge-json-schemas@0.2.1':
+ resolution: {integrity: sha512-OA3KGBCy6KtIvLf8DINC5880o5iBlDX4SxzLQS8HorJAbqluzLRn80UXU0bxZn7UOFhFgpRJDasfwn9nG4FG4A==}
- '@jest/get-type@30.1.0':
- resolution: {integrity: sha512-eMbZE2hUnx1WV0pmURZY9XoXPkUYjpc55mb0CrhtdWLtzMQPFvu/rZkTLZFTsdaVQa+Tr4eWAteqcUzoawq/uA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@fastify/middie@9.0.3':
+ resolution: {integrity: sha512-7OYovKXp9UKYeVMcjcFLMcSpoMkmcZmfnG+eAvtdiatN35W7c+r9y1dRfpA+pfFVNuHGGqI3W+vDTmjvcfLcMA==}
- '@jest/globals@30.2.0':
- resolution: {integrity: sha512-b63wmnKPaK+6ZZfpYhz9K61oybvbI1aMcIs80++JI1O1rR1vaxHUCNqo3ITu6NU0d4V34yZFoHMn/uoKr/Rwfw==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@fastify/multipart@9.3.0':
+ resolution: {integrity: sha512-NpeKipTOjjL1dA7SSlRMrOWWtrE8/0yKOmeudkdQoEaz4sVDJw5MVdZIahsWhvpc3YTN7f04f9ep/Y65RKoOWA==}
- '@jest/pattern@30.0.1':
- resolution: {integrity: sha512-gWp7NfQW27LaBQz3TITS8L7ZCQ0TLvtmI//4OwlQRx4rnWxcPNIYjxZpDcN4+UlGxgm3jS5QPz8IPTCkb59wZA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@fastify/proxy-addr@5.1.0':
+ resolution: {integrity: sha512-INS+6gh91cLUjB+PVHfu1UqcB76Sqtpyp7bnL+FYojhjygvOPA9ctiD/JDKsyD9Xgu4hUhCSJBPig/w7duNajw==}
- '@jest/reporters@30.2.0':
- resolution: {integrity: sha512-DRyW6baWPqKMa9CzeiBjHwjd8XeAyco2Vt8XbcLFjiwCOEKOvy82GJ8QQnJE9ofsxCMPjH4MfH8fCWIHHDKpAQ==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- peerDependencies:
- node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
- peerDependenciesMeta:
- node-notifier:
- optional: true
+ '@fastify/send@4.1.0':
+ resolution: {integrity: sha512-TMYeQLCBSy2TOFmV95hQWkiTYgC/SEx7vMdV+wnZVX4tt8VBLKzmH8vV9OzJehV0+XBfg+WxPMt5wp+JBUKsVw==}
- '@jest/schemas@30.0.5':
- resolution: {integrity: sha512-DmdYgtezMkh3cpU8/1uyXakv3tJRcmcXxBOcO0tbaozPwpmh4YMsnWrQm9ZmZMfa5ocbxzbFk6O4bDPEc/iAnA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@fastify/static@8.3.0':
+ resolution: {integrity: sha512-yKxviR5PH1OKNnisIzZKmgZSus0r2OZb8qCSbqmw34aolT4g3UlzYfeBRym+HJ1J471CR8e2ldNub4PubD1coA==}
- '@jest/snapshot-utils@30.2.0':
- resolution: {integrity: sha512-0aVxM3RH6DaiLcjj/b0KrIBZhSX1373Xci4l3cW5xiUWPctZ59zQ7jj4rqcJQ/Z8JuN/4wX3FpJSa3RssVvCug==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@floating-ui/core@1.7.3':
+ resolution: {integrity: sha512-sGnvb5dmrJaKEZ+LDIpguvdX3bDlEllmv4/ClQ9awcmCZrlx5jQyyMWFM5kBI+EyNOCDDiKk8il0zeuX3Zlg/w==}
- '@jest/source-map@30.0.1':
- resolution: {integrity: sha512-MIRWMUUR3sdbP36oyNyhbThLHyJ2eEDClPCiHVbrYAe5g3CHRArIVpBw7cdSB5fr+ofSfIb2Tnsw8iEHL0PYQg==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@floating-ui/dom@1.7.4':
+ resolution: {integrity: sha512-OOchDgh4F2CchOX94cRVqhvy7b3AFb+/rQXyswmzmGakRfkMgoWVjfnLWkRirfLEfuD4ysVW16eXzwt3jHIzKA==}
- '@jest/test-result@30.2.0':
- resolution: {integrity: sha512-RF+Z+0CCHkARz5HT9mcQCBulb1wgCP3FBvl9VFokMX27acKphwyQsNuWH3c+ojd1LeWBLoTYoxF0zm6S/66mjg==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@floating-ui/react-dom@2.1.6':
+ resolution: {integrity: sha512-4JX6rEatQEvlmgU80wZyq9RT96HZJa88q8hp0pBd+LrczeDI4o6uA2M+uvxngVHo4Ihr8uibXxH6+70zhAFrVw==}
+ peerDependencies:
+ react: '>=16.8.0'
+ react-dom: '>=16.8.0'
- '@jest/test-sequencer@30.2.0':
- resolution: {integrity: sha512-wXKgU/lk8fKXMu/l5Hog1R61bL4q5GCdT6OJvdAFz1P+QrpoFuLU68eoKuVc4RbrTtNnTL5FByhWdLgOPSph+Q==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@floating-ui/utils@0.2.10':
+ resolution: {integrity: sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==}
- '@jest/transform@30.2.0':
- resolution: {integrity: sha512-XsauDV82o5qXbhalKxD7p4TZYYdwcaEXC77PPD2HixEFF+6YGppjrAAQurTl2ECWcEomHBMMNS9AH3kcCFx8jA==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@hapi/address@5.1.1':
+ resolution: {integrity: sha512-A+po2d/dVoY7cYajycYI43ZbYMXukuopIsqCjh5QzsBCipDtdofHntljDlpccMjIfTy6UOkg+5KPriwYch2bXA==}
+ engines: {node: '>=14.0.0'}
- '@jest/types@30.2.0':
- resolution: {integrity: sha512-H9xg1/sfVvyfU7o3zMfBEjQ1gcsdeTMgqHoYdN79tuLqfTtuu7WckRA1R5whDwOzxaZAeMKTYWqP+WCAi0CHsg==}
- engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ '@hapi/formula@3.0.2':
+ resolution: {integrity: sha512-hY5YPNXzw1He7s0iqkRQi+uMGh383CGdyyIGYtB+W5N3KHPXoqychklvHhKCC9M3Xtv0OCs/IHw+r4dcHtBYWw==}
- '@jridgewell/gen-mapping@0.3.13':
- resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==}
+ '@hapi/hoek@11.0.7':
+ resolution: {integrity: sha512-HV5undWkKzcB4RZUusqOpcgxOaq6VOAH7zhhIr2g3G8NF/MlFO75SjOr2NfuSx0Mh40+1FqCkagKLJRykUWoFQ==}
- '@jridgewell/remapping@2.3.5':
- resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==}
+ '@hapi/hoek@9.3.0':
+ resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==}
- '@jridgewell/resolve-uri@3.1.2':
- resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
- engines: {node: '>=6.0.0'}
+ '@hapi/pinpoint@2.0.1':
+ resolution: {integrity: sha512-EKQmr16tM8s16vTT3cA5L0kZZcTMU5DUOZTuvpnY738m+jyP3JIUj+Mm1xc1rsLkGBQ/gVnfKYPwOmPg1tUR4Q==}
- '@jridgewell/source-map@0.3.11':
- resolution: {integrity: sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==}
+ '@hapi/tlds@1.1.4':
+ resolution: {integrity: sha512-Fq+20dxsxLaUn5jSSWrdtSRcIUba2JquuorF9UW1wIJS5cSUwxIsO2GIhaWynPRflvxSzFN+gxKte2HEW1OuoA==}
+ engines: {node: '>=14.0.0'}
- '@jridgewell/sourcemap-codec@1.5.5':
- resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==}
+ '@hapi/topo@5.1.0':
+ resolution: {integrity: sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==}
- '@jridgewell/trace-mapping@0.3.31':
- resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==}
+ '@hapi/topo@6.0.2':
+ resolution: {integrity: sha512-KR3rD5inZbGMrHmgPxsJ9dbi6zEK+C3ZwUwTa+eMwWLz7oijWUTWD2pMSNNYJAU6Qq+65NkxXjqHr/7LM2Xkqg==}
- '@jridgewell/trace-mapping@0.3.9':
- resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==}
+ '@hookform/resolvers@5.2.2':
+ resolution: {integrity: sha512-A/IxlMLShx3KjV/HeTcTfaMxdwy690+L/ZADoeaTltLx+CVuzkeVIPuybK3jrRfw7YZnmdKsVVHAlEPIAEUNlA==}
+ peerDependencies:
+ react-hook-form: ^7.55.0
- '@lukeed/csprng@1.1.0':
- resolution: {integrity: sha512-Z7C/xXCiGWsg0KuKsHTKJxbWhpI3Vs5GwLfOean7MGyVFGqdRgBbAjOCh6u4bbjPc/8MJ2pZmK/0DLdCbivLDA==}
- engines: {node: '>=8'}
+ '@humanfs/core@0.19.1':
+ resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==}
+ engines: {node: '>=18.18.0'}
- '@lukeed/ms@2.0.2':
- resolution: {integrity: sha512-9I2Zn6+NJLfaGoz9jN3lpwDgAYvfGeNYdbAIjJOqzs4Tpc+VU3Jqq4IofSUBKajiDS8k9fZIg18/z13mpk1bsA==}
- engines: {node: '>=8'}
+ '@humanfs/node@0.16.7':
+ resolution: {integrity: sha512-/zUx+yOsIrG4Y43Eh2peDeKCxlRt/gET6aHfaKpuq267qXdYDFViVHfMaLyygZOnl0kGWxFIgsBy8QFuTLUXEQ==}
+ engines: {node: '>=18.18.0'}
- '@microsoft/tsdoc@0.15.1':
- resolution: {integrity: sha512-4aErSrCR/On/e5G2hDP0wjooqDdauzEbIq8hIkIe5pXV0rtWJZvdCEKL0ykZxex+IxIwBp0eGeV48hQN07dXtw==}
+ '@humanwhocodes/module-importer@1.0.1':
+ resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
+ engines: {node: '>=12.22'}
- '@napi-rs/nice-android-arm-eabi@1.1.1':
- resolution: {integrity: sha512-kjirL3N6TnRPv5iuHw36wnucNqXAO46dzK9oPb0wj076R5Xm8PfUVA9nAFB5ZNMmfJQJVKACAPd/Z2KYMppthw==}
- engines: {node: '>= 10'}
- cpu: [arm]
- os: [android]
+ '@humanwhocodes/retry@0.4.3':
+ resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==}
+ engines: {node: '>=18.18'}
- '@napi-rs/nice-android-arm64@1.1.1':
- resolution: {integrity: sha512-blG0i7dXgbInN5urONoUCNf+DUEAavRffrO7fZSeoRMJc5qD+BJeNcpr54msPF6qfDD6kzs9AQJogZvT2KD5nw==}
- engines: {node: '>= 10'}
- cpu: [arm64]
- os: [android]
+ '@ianvs/prettier-plugin-sort-imports@4.7.0':
+ resolution: {integrity: sha512-soa2bPUJAFruLL4z/CnMfSEKGznm5ebz29fIa9PxYtu8HHyLKNE1NXAs6dylfw1jn/ilEIfO2oLLN6uAafb7DA==}
+ peerDependencies:
+ '@prettier/plugin-oxc': ^0.0.4
+ '@vue/compiler-sfc': 2.7.x || 3.x
+ content-tag: ^4.0.0
+ prettier: 2 || 3 || ^4.0.0-0
+ prettier-plugin-ember-template-tag: ^2.1.0
+ peerDependenciesMeta:
+ '@prettier/plugin-oxc':
+ optional: true
+ '@vue/compiler-sfc':
+ optional: true
+ content-tag:
+ optional: true
+ prettier-plugin-ember-template-tag:
+ optional: true
- '@napi-rs/nice-darwin-arm64@1.1.1':
- resolution: {integrity: sha512-s/E7w45NaLqTGuOjC2p96pct4jRfo61xb9bU1unM/MJ/RFkKlJyJDx7OJI/O0ll/hrfpqKopuAFDV8yo0hfT7A==}
- engines: {node: '>= 10'}
+ '@img/colour@1.0.0':
+ resolution: {integrity: sha512-A5P/LfWGFSl6nsckYtjw9da+19jB8hkJ6ACTGcDfEJ0aE+l2n2El7dsVM7UVHZQ9s2lmYMWlrS21YLy2IR1LUw==}
+ engines: {node: '>=18'}
+
+ '@img/sharp-darwin-arm64@0.34.5':
+ resolution: {integrity: sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [arm64]
os: [darwin]
- '@napi-rs/nice-darwin-x64@1.1.1':
- resolution: {integrity: sha512-dGoEBnVpsdcC+oHHmW1LRK5eiyzLwdgNQq3BmZIav+9/5WTZwBYX7r5ZkQC07Nxd3KHOCkgbHSh4wPkH1N1LiQ==}
- engines: {node: '>= 10'}
+ '@img/sharp-darwin-x64@0.34.5':
+ resolution: {integrity: sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [x64]
os: [darwin]
- '@napi-rs/nice-freebsd-x64@1.1.1':
- resolution: {integrity: sha512-kHv4kEHAylMYmlNwcQcDtXjklYp4FCf0b05E+0h6nDHsZ+F0bDe04U/tXNOqrx5CmIAth4vwfkjjUmp4c4JktQ==}
- engines: {node: '>= 10'}
- cpu: [x64]
- os: [freebsd]
+ '@img/sharp-libvips-darwin-arm64@1.2.4':
+ resolution: {integrity: sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g==}
+ cpu: [arm64]
+ os: [darwin]
- '@napi-rs/nice-linux-arm-gnueabihf@1.1.1':
- resolution: {integrity: sha512-E1t7K0efyKXZDoZg1LzCOLxgolxV58HCkaEkEvIYQx12ht2pa8hoBo+4OB3qh7e+QiBlp1SRf+voWUZFxyhyqg==}
- engines: {node: '>= 10'}
- cpu: [arm]
- os: [linux]
+ '@img/sharp-libvips-darwin-x64@1.2.4':
+ resolution: {integrity: sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg==}
+ cpu: [x64]
+ os: [darwin]
- '@napi-rs/nice-linux-arm64-gnu@1.1.1':
- resolution: {integrity: sha512-CIKLA12DTIZlmTaaKhQP88R3Xao+gyJxNWEn04wZwC2wmRapNnxCUZkVwggInMJvtVElA+D4ZzOU5sX4jV+SmQ==}
- engines: {node: '>= 10'}
+ '@img/sharp-libvips-linux-arm64@1.2.4':
+ resolution: {integrity: sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==}
cpu: [arm64]
os: [linux]
- '@napi-rs/nice-linux-arm64-musl@1.1.1':
- resolution: {integrity: sha512-+2Rzdb3nTIYZ0YJF43qf2twhqOCkiSrHx2Pg6DJaCPYhhaxbLcdlV8hCRMHghQ+EtZQWGNcS2xF4KxBhSGeutg==}
- engines: {node: '>= 10'}
- cpu: [arm64]
+ '@img/sharp-libvips-linux-arm@1.2.4':
+ resolution: {integrity: sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==}
+ cpu: [arm]
os: [linux]
- '@napi-rs/nice-linux-ppc64-gnu@1.1.1':
- resolution: {integrity: sha512-4FS8oc0GeHpwvv4tKciKkw3Y4jKsL7FRhaOeiPei0X9T4Jd619wHNe4xCLmN2EMgZoeGg+Q7GY7BsvwKpL22Tg==}
- engines: {node: '>= 10'}
+ '@img/sharp-libvips-linux-ppc64@1.2.4':
+ resolution: {integrity: sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==}
cpu: [ppc64]
os: [linux]
- '@napi-rs/nice-linux-riscv64-gnu@1.1.1':
- resolution: {integrity: sha512-HU0nw9uD4FO/oGCCk409tCi5IzIZpH2agE6nN4fqpwVlCn5BOq0MS1dXGjXaG17JaAvrlpV5ZeyZwSon10XOXw==}
- engines: {node: '>= 10'}
+ '@img/sharp-libvips-linux-riscv64@1.2.4':
+ resolution: {integrity: sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==}
cpu: [riscv64]
os: [linux]
- '@napi-rs/nice-linux-s390x-gnu@1.1.1':
- resolution: {integrity: sha512-2YqKJWWl24EwrX0DzCQgPLKQBxYDdBxOHot1KWEq7aY2uYeX+Uvtv4I8xFVVygJDgf6/92h9N3Y43WPx8+PAgQ==}
- engines: {node: '>= 10'}
+ '@img/sharp-libvips-linux-s390x@1.2.4':
+ resolution: {integrity: sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==}
cpu: [s390x]
os: [linux]
- '@napi-rs/nice-linux-x64-gnu@1.1.1':
- resolution: {integrity: sha512-/gaNz3R92t+dcrfCw/96pDopcmec7oCcAQ3l/M+Zxr82KT4DljD37CpgrnXV+pJC263JkW572pdbP3hP+KjcIg==}
- engines: {node: '>= 10'}
+ '@img/sharp-libvips-linux-x64@1.2.4':
+ resolution: {integrity: sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==}
cpu: [x64]
os: [linux]
- '@napi-rs/nice-linux-x64-musl@1.1.1':
- resolution: {integrity: sha512-xScCGnyj/oppsNPMnevsBe3pvNaoK7FGvMjT35riz9YdhB2WtTG47ZlbxtOLpjeO9SqqQ2J2igCmz6IJOD5JYw==}
- engines: {node: '>= 10'}
+ '@img/sharp-libvips-linuxmusl-arm64@1.2.4':
+ resolution: {integrity: sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==}
+ cpu: [arm64]
+ os: [linux]
+
+ '@img/sharp-libvips-linuxmusl-x64@1.2.4':
+ resolution: {integrity: sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==}
cpu: [x64]
os: [linux]
- '@napi-rs/nice-openharmony-arm64@1.1.1':
- resolution: {integrity: sha512-6uJPRVwVCLDeoOaNyeiW0gp2kFIM4r7PL2MczdZQHkFi9gVlgm+Vn+V6nTWRcu856mJ2WjYJiumEajfSm7arPQ==}
- engines: {node: '>= 10'}
+ '@img/sharp-linux-arm64@0.34.5':
+ resolution: {integrity: sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [arm64]
- os: [openharmony]
+ os: [linux]
- '@napi-rs/nice-win32-arm64-msvc@1.1.1':
- resolution: {integrity: sha512-uoTb4eAvM5B2aj/z8j+Nv8OttPf2m+HVx3UjA5jcFxASvNhQriyCQF1OB1lHL43ZhW+VwZlgvjmP5qF3+59atA==}
- engines: {node: '>= 10'}
- cpu: [arm64]
- os: [win32]
+ '@img/sharp-linux-arm@0.34.5':
+ resolution: {integrity: sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [arm]
+ os: [linux]
- '@napi-rs/nice-win32-ia32-msvc@1.1.1':
- resolution: {integrity: sha512-CNQqlQT9MwuCsg1Vd/oKXiuH+TcsSPJmlAFc5frFyX/KkOh0UpBLEj7aoY656d5UKZQMQFP7vJNa1DNUNORvug==}
- engines: {node: '>= 10'}
- cpu: [ia32]
- os: [win32]
+ '@img/sharp-linux-ppc64@0.34.5':
+ resolution: {integrity: sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [ppc64]
+ os: [linux]
- '@napi-rs/nice-win32-x64-msvc@1.1.1':
- resolution: {integrity: sha512-vB+4G/jBQCAh0jelMTY3+kgFy00Hlx2f2/1zjMoH821IbplbWZOkLiTYXQkygNTzQJTq5cvwBDgn2ppHD+bglQ==}
- engines: {node: '>= 10'}
- cpu: [x64]
- os: [win32]
+ '@img/sharp-linux-riscv64@0.34.5':
+ resolution: {integrity: sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [riscv64]
+ os: [linux]
- '@napi-rs/nice@1.1.1':
- resolution: {integrity: sha512-xJIPs+bYuc9ASBl+cvGsKbGrJmS6fAKaSZCnT0lhahT5rhA2VVy9/EcIgd2JhtEuFOJNx7UHNn/qiTPTY4nrQw==}
- engines: {node: '>= 10'}
+ '@img/sharp-linux-s390x@0.34.5':
+ resolution: {integrity: sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [s390x]
+ os: [linux]
- '@napi-rs/wasm-runtime@0.2.12':
- resolution: {integrity: sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==}
+ '@img/sharp-linux-x64@0.34.5':
+ resolution: {integrity: sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [x64]
+ os: [linux]
- '@napi-rs/wasm-runtime@1.0.7':
- resolution: {integrity: sha512-SeDnOO0Tk7Okiq6DbXmmBODgOAb9dp9gjlphokTUxmt8U3liIP1ZsozBahH69j/RJv+Rfs6IwUKHTgQYJ/HBAw==}
+ '@img/sharp-linuxmusl-arm64@0.34.5':
+ resolution: {integrity: sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [arm64]
+ os: [linux]
- '@nestjs-modules/mailer@2.0.2':
- resolution: {integrity: sha512-+z4mADQasg0H1ZaGu4zZTuKv2pu+XdErqx99PLFPzCDNTN/q9U59WPgkxVaHnsvKHNopLj5Xap7G4ZpptduoYw==}
- peerDependencies:
- '@nestjs/common': '>=7.0.9'
- '@nestjs/core': '>=7.0.9'
- nodemailer: '>=6.4.6'
+ '@img/sharp-linuxmusl-x64@0.34.5':
+ resolution: {integrity: sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [x64]
+ os: [linux]
- '@nestjs/axios@4.0.1':
- resolution: {integrity: sha512-68pFJgu+/AZbWkGu65Z3r55bTsCPlgyKaV4BSG8yUAD72q1PPuyVRgUwFv6BxdnibTUHlyxm06FmYWNC+bjN7A==}
- peerDependencies:
- '@nestjs/common': ^10.0.0 || ^11.0.0
- axios: ^1.3.1
- rxjs: ^7.0.0
+ '@img/sharp-wasm32@0.34.5':
+ resolution: {integrity: sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [wasm32]
- '@nestjs/cli@11.0.10':
- resolution: {integrity: sha512-4waDT0yGWANg0pKz4E47+nUrqIJv/UqrZ5wLPkCqc7oMGRMWKAaw1NDZ9rKsaqhqvxb2LfI5+uXOWr4yi94DOQ==}
- engines: {node: '>= 20.11'}
- hasBin: true
+ '@img/sharp-win32-arm64@0.34.5':
+ resolution: {integrity: sha512-WQ3AgWCWYSb2yt+IG8mnC6Jdk9Whs7O0gxphblsLvdhSpSTtmu69ZG1Gkb6NuvxsNACwiPV6cNSZNzt0KPsw7g==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [arm64]
+ os: [win32]
+
+ '@img/sharp-win32-ia32@0.34.5':
+ resolution: {integrity: sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [ia32]
+ os: [win32]
+
+ '@img/sharp-win32-x64@0.34.5':
+ resolution: {integrity: sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [x64]
+ os: [win32]
+
+ '@inquirer/ansi@1.0.1':
+ resolution: {integrity: sha512-yqq0aJW/5XPhi5xOAL1xRCpe1eh8UFVgYFpFsjEqmIR8rKLyP+HINvFXwUaxYICflJrVlxnp7lLN6As735kVpw==}
+ engines: {node: '>=18'}
+
+ '@inquirer/checkbox@4.3.0':
+ resolution: {integrity: sha512-5+Q3PKH35YsnoPTh75LucALdAxom6xh5D1oeY561x4cqBuH24ZFVyFREPe14xgnrtmGu3EEt1dIi60wRVSnGCw==}
+ engines: {node: '>=18'}
peerDependencies:
- '@swc/cli': ^0.1.62 || ^0.3.0 || ^0.4.0 || ^0.5.0 || ^0.6.0 || ^0.7.0
- '@swc/core': ^1.3.62
+ '@types/node': '>=18'
peerDependenciesMeta:
- '@swc/cli':
- optional: true
- '@swc/core':
+ '@types/node':
optional: true
- '@nestjs/common@11.1.8':
- resolution: {integrity: sha512-bbsOqwld/GdBfiRNc4nnjyWWENDEicq4SH+R5AuYatvf++vf1x5JIsHB1i1KtfZMD3eRte0D4K9WXuAYil6XAg==}
+ '@inquirer/confirm@5.1.19':
+ resolution: {integrity: sha512-wQNz9cfcxrtEnUyG5PndC8g3gZ7lGDBzmWiXZkX8ot3vfZ+/BLjR8EvyGX4YzQLeVqtAlY/YScZpW7CW8qMoDQ==}
+ engines: {node: '>=18'}
peerDependencies:
- class-transformer: '>=0.4.1'
- class-validator: '>=0.13.2'
- reflect-metadata: ^0.1.12 || ^0.2.0
- rxjs: ^7.1.0
+ '@types/node': '>=18'
peerDependenciesMeta:
- class-transformer:
- optional: true
- class-validator:
+ '@types/node':
optional: true
- '@nestjs/config@4.0.2':
- resolution: {integrity: sha512-McMW6EXtpc8+CwTUwFdg6h7dYcBUpH5iUILCclAsa+MbCEvC9ZKu4dCHRlJqALuhjLw97pbQu62l4+wRwGeZqA==}
+ '@inquirer/core@10.3.0':
+ resolution: {integrity: sha512-Uv2aPPPSK5jeCplQmQ9xadnFx2Zhj9b5Dj7bU6ZeCdDNNY11nhYy4btcSdtDguHqCT2h5oNeQTcUNSGGLA7NTA==}
+ engines: {node: '>=18'}
peerDependencies:
- '@nestjs/common': ^10.0.0 || ^11.0.0
- rxjs: ^7.1.0
+ '@types/node': '>=18'
+ peerDependenciesMeta:
+ '@types/node':
+ optional: true
- '@nestjs/core@11.1.8':
- resolution: {integrity: sha512-7riWfmTmMhCJHZ5ZiaG+crj4t85IPCq/wLRuOUSigBYyFT2JZj0lVHtAdf4Davp9ouNI8GINBDt9h9b5Gz9nTw==}
- engines: {node: '>= 20'}
+ '@inquirer/editor@4.2.21':
+ resolution: {integrity: sha512-MjtjOGjr0Kh4BciaFShYpZ1s9400idOdvQ5D7u7lE6VztPFoyLcVNE5dXBmEEIQq5zi4B9h2kU+q7AVBxJMAkQ==}
+ engines: {node: '>=18'}
peerDependencies:
- '@nestjs/common': ^11.0.0
- '@nestjs/microservices': ^11.0.0
- '@nestjs/platform-express': ^11.0.0
- '@nestjs/websockets': ^11.0.0
- reflect-metadata: ^0.1.12 || ^0.2.0
- rxjs: ^7.1.0
+ '@types/node': '>=18'
peerDependenciesMeta:
- '@nestjs/microservices':
- optional: true
- '@nestjs/platform-express':
- optional: true
- '@nestjs/websockets':
+ '@types/node':
optional: true
- '@nestjs/event-emitter@3.0.1':
- resolution: {integrity: sha512-0Ln/x+7xkU6AJFOcQI9tIhUMXVF7D5itiaQGOyJbXtlAfAIt8gzDdJm+Im7cFzKoWkiW5nCXCPh6GSvdQd/3Dw==}
+ '@inquirer/expand@4.0.21':
+ resolution: {integrity: sha512-+mScLhIcbPFmuvU3tAGBed78XvYHSvCl6dBiYMlzCLhpr0bzGzd8tfivMMeqND6XZiaZ1tgusbUHJEfc6YzOdA==}
+ engines: {node: '>=18'}
peerDependencies:
- '@nestjs/common': ^10.0.0 || ^11.0.0
- '@nestjs/core': ^10.0.0 || ^11.0.0
+ '@types/node': '>=18'
+ peerDependenciesMeta:
+ '@types/node':
+ optional: true
- '@nestjs/jwt@11.0.1':
- resolution: {integrity: sha512-HXSsc7SAnCnjA98TsZqrE7trGtHDnYXWp4Ffy6LwSmck1QvbGYdMzBquXofX5l6tIRpeY4Qidl2Ti2CVG77Pdw==}
+ '@inquirer/external-editor@1.0.2':
+ resolution: {integrity: sha512-yy9cOoBnx58TlsPrIxauKIFQTiyH+0MK4e97y4sV9ERbI+zDxw7i2hxHLCIEGIE/8PPvDxGhgzIOTSOWcs6/MQ==}
+ engines: {node: '>=18'}
peerDependencies:
- '@nestjs/common': ^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0
+ '@types/node': '>=18'
+ peerDependenciesMeta:
+ '@types/node':
+ optional: true
- '@nestjs/mapped-types@2.1.0':
- resolution: {integrity: sha512-W+n+rM69XsFdwORF11UqJahn4J3xi4g/ZEOlJNL6KoW5ygWSmBB2p0S2BZ4FQeS/NDH72e6xIcu35SfJnE8bXw==}
+ '@inquirer/figures@1.0.14':
+ resolution: {integrity: sha512-DbFgdt+9/OZYFM+19dbpXOSeAstPy884FPy1KjDu4anWwymZeOYhMY1mdFri172htv6mvc/uvIAAi7b7tvjJBQ==}
+ engines: {node: '>=18'}
+
+ '@inquirer/input@4.2.5':
+ resolution: {integrity: sha512-7GoWev7P6s7t0oJbenH0eQ0ThNdDJbEAEtVt9vsrYZ9FulIokvd823yLyhQlWHJPGce1wzP53ttfdCZmonMHyA==}
+ engines: {node: '>=18'}
peerDependencies:
- '@nestjs/common': ^10.0.0 || ^11.0.0
- class-transformer: ^0.4.0 || ^0.5.0
- class-validator: ^0.13.0 || ^0.14.0
- reflect-metadata: ^0.1.12 || ^0.2.0
+ '@types/node': '>=18'
peerDependenciesMeta:
- class-transformer:
- optional: true
- class-validator:
+ '@types/node':
optional: true
- '@nestjs/passport@11.0.5':
- resolution: {integrity: sha512-ulQX6mbjlws92PIM15Naes4F4p2JoxGnIJuUsdXQPT+Oo2sqQmENEZXM7eYuimocfHnKlcfZOuyzbA33LwUlOQ==}
+ '@inquirer/number@3.0.21':
+ resolution: {integrity: sha512-5QWs0KGaNMlhbdhOSCFfKsW+/dcAVC2g4wT/z2MCiZM47uLgatC5N20kpkDQf7dHx+XFct/MJvvNGy6aYJn4Pw==}
+ engines: {node: '>=18'}
peerDependencies:
- '@nestjs/common': ^10.0.0 || ^11.0.0
- passport: ^0.5.0 || ^0.6.0 || ^0.7.0
+ '@types/node': '>=18'
+ peerDependenciesMeta:
+ '@types/node':
+ optional: true
- '@nestjs/platform-express@11.1.8':
- resolution: {integrity: sha512-rL6pZH9BW7BnL5X2eWbJMtt86uloAKjFgyY5+L2UkizgfEp7rgAs0+Z1z0BcW2Pgu5+q8O7RKPNyHJ/9ZNz/ZQ==}
+ '@inquirer/password@4.0.21':
+ resolution: {integrity: sha512-xxeW1V5SbNFNig2pLfetsDb0svWlKuhmr7MPJZMYuDnCTkpVBI+X/doudg4pznc1/U+yYmWFFOi4hNvGgUo7EA==}
+ engines: {node: '>=18'}
peerDependencies:
- '@nestjs/common': ^11.0.0
- '@nestjs/core': ^11.0.0
+ '@types/node': '>=18'
+ peerDependenciesMeta:
+ '@types/node':
+ optional: true
- '@nestjs/platform-fastify@11.1.8':
- resolution: {integrity: sha512-4XiiTiTkF9UbVDAuHDyVIzgr43L2sI3vLs9A52ov2lrOJcqyKwTYL/NiCQd4dtUQm1L6M0jOrJhzpYXobX5uMw==}
+ '@inquirer/prompts@7.3.2':
+ resolution: {integrity: sha512-G1ytyOoHh5BphmEBxSwALin3n1KGNYB6yImbICcRQdzXfOGbuJ9Jske/Of5Sebk339NSGGNfUshnzK8YWkTPsQ==}
+ engines: {node: '>=18'}
peerDependencies:
- '@fastify/static': ^8.0.0
- '@fastify/view': ^10.0.0 || ^11.0.0
- '@nestjs/common': ^11.0.0
- '@nestjs/core': ^11.0.0
+ '@types/node': '>=18'
peerDependenciesMeta:
- '@fastify/static':
- optional: true
- '@fastify/view':
+ '@types/node':
optional: true
- '@nestjs/schedule@6.0.1':
- resolution: {integrity: sha512-v3yO6cSPAoBSSyH67HWnXHzuhPhSNZhRmLY38JvCt2sqY8sPMOODpcU1D79iUMFf7k16DaMEbL4Mgx61ZhiC8Q==}
+ '@inquirer/prompts@7.8.0':
+ resolution: {integrity: sha512-JHwGbQ6wjf1dxxnalDYpZwZxUEosT+6CPGD9Zh4sm9WXdtUp9XODCQD3NjSTmu+0OAyxWXNOqf0spjIymJa2Tw==}
+ engines: {node: '>=18'}
peerDependencies:
- '@nestjs/common': ^10.0.0 || ^11.0.0
- '@nestjs/core': ^10.0.0 || ^11.0.0
+ '@types/node': '>=18'
+ peerDependenciesMeta:
+ '@types/node':
+ optional: true
- '@nestjs/schematics@11.0.9':
- resolution: {integrity: sha512-0NfPbPlEaGwIT8/TCThxLzrlz3yzDNkfRNpbL7FiplKq3w4qXpJg0JYwqgMEJnLQZm3L/L/5XjoyfJHUO3qX9g==}
+ '@inquirer/rawlist@4.1.9':
+ resolution: {integrity: sha512-AWpxB7MuJrRiSfTKGJ7Y68imYt8P9N3Gaa7ySdkFj1iWjr6WfbGAhdZvw/UnhFXTHITJzxGUI9k8IX7akAEBCg==}
+ engines: {node: '>=18'}
peerDependencies:
- typescript: '>=4.8.2'
+ '@types/node': '>=18'
+ peerDependenciesMeta:
+ '@types/node':
+ optional: true
- '@nestjs/swagger@11.2.1':
- resolution: {integrity: sha512-1MS7xf0pzc1mofG53xrrtrurnziafPUHkqzRm4YUVPA/egeiMaSerQBD/feiAeQ2BnX0WiLsTX4HQFO0icvOjQ==}
+ '@inquirer/search@3.2.0':
+ resolution: {integrity: sha512-a5SzB/qrXafDX1Z4AZW3CsVoiNxcIYCzYP7r9RzrfMpaLpB+yWi5U8BWagZyLmwR0pKbbL5umnGRd0RzGVI8bQ==}
+ engines: {node: '>=18'}
peerDependencies:
- '@fastify/static': ^8.0.0
- '@nestjs/common': ^11.0.1
- '@nestjs/core': ^11.0.1
- class-transformer: '*'
- class-validator: '*'
- reflect-metadata: ^0.1.12 || ^0.2.0
+ '@types/node': '>=18'
peerDependenciesMeta:
- '@fastify/static':
- optional: true
- class-transformer:
- optional: true
- class-validator:
+ '@types/node':
optional: true
- '@nestjs/terminus@11.0.0':
- resolution: {integrity: sha512-c55LOo9YGovmQHtFUMa/vDaxGZ2cglMTZejqgHREaApt/GArTfgYYGwhRXPLq8ZwiQQlLuYB+79e9iA8mlDSLA==}
+ '@inquirer/select@4.4.0':
+ resolution: {integrity: sha512-kaC3FHsJZvVyIjYBs5Ih8y8Bj4P/QItQWrZW22WJax7zTN+ZPXVGuOM55vzbdCP9zKUiBd9iEJVdesujfF+cAA==}
+ engines: {node: '>=18'}
peerDependencies:
- '@grpc/grpc-js': '*'
- '@grpc/proto-loader': '*'
- '@mikro-orm/core': '*'
- '@mikro-orm/nestjs': '*'
- '@nestjs/axios': ^2.0.0 || ^3.0.0 || ^4.0.0
- '@nestjs/common': ^10.0.0 || ^11.0.0
- '@nestjs/core': ^10.0.0 || ^11.0.0
- '@nestjs/microservices': ^10.0.0 || ^11.0.0
- '@nestjs/mongoose': ^11.0.0
- '@nestjs/sequelize': ^10.0.0 || ^11.0.0
- '@nestjs/typeorm': ^10.0.0 || ^11.0.0
- '@prisma/client': '*'
- mongoose: '*'
- reflect-metadata: 0.1.x || 0.2.x
- rxjs: 7.x
- sequelize: '*'
- typeorm: '*'
+ '@types/node': '>=18'
peerDependenciesMeta:
- '@grpc/grpc-js':
- optional: true
- '@grpc/proto-loader':
- optional: true
- '@mikro-orm/core':
+ '@types/node':
optional: true
- '@mikro-orm/nestjs':
- optional: true
- '@nestjs/axios':
- optional: true
- '@nestjs/microservices':
- optional: true
- '@nestjs/mongoose':
- optional: true
- '@nestjs/sequelize':
- optional: true
- '@nestjs/typeorm':
- optional: true
- '@prisma/client':
- optional: true
- mongoose:
- optional: true
- sequelize:
+
+ '@inquirer/type@3.0.9':
+ resolution: {integrity: sha512-QPaNt/nmE2bLGQa9b7wwyRJoLZ7pN6rcyXvzU0YCmivmJyq1BVo94G98tStRWkoD1RgDX5C+dPlhhHzNdu/W/w==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@types/node': '>=18'
+ peerDependenciesMeta:
+ '@types/node':
optional: true
- typeorm:
+
+ '@isaacs/balanced-match@4.0.1':
+ resolution: {integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==}
+ engines: {node: 20 || >=22}
+
+ '@isaacs/brace-expansion@5.0.0':
+ resolution: {integrity: sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==}
+ engines: {node: 20 || >=22}
+
+ '@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@30.2.0':
+ resolution: {integrity: sha512-+O1ifRjkvYIkBqASKWgLxrpEhQAAE7hY77ALLUufSk5717KfOShg6IbqLmdsLMPdUiFvA2kTs0R7YZy+l0IzZQ==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/core@30.2.0':
+ resolution: {integrity: sha512-03W6IhuhjqTlpzh/ojut/pDB2LPRygyWX8ExpgHtQA8H/3K7+1vKmcINx5UzeOX1se6YEsBsOHQ1CRzf3fOwTQ==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ peerDependencies:
+ node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
+ peerDependenciesMeta:
+ node-notifier:
optional: true
- '@nestjs/testing@11.1.8':
- resolution: {integrity: sha512-E6K+0UTKztcPxJzLnQa7S34lFjZbrj3Z1r7c5y5WDrL1m5HD1H4AeyBhicHgdaFmxjLAva2bq0sYKy/S7cdeYA==}
+ '@jest/create-cache-key-function@30.2.0':
+ resolution: {integrity: sha512-44F4l4Enf+MirJN8X/NhdGkl71k5rBYiwdVlo4HxOwbu0sHV8QKrGEedb1VUU4K3W7fBKE0HGfbn7eZm0Ti3zg==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/diff-sequences@30.0.1':
+ resolution: {integrity: sha512-n5H8QLDJ47QqbCNn5SuFjCRDrOLEZ0h8vAHCK5RL9Ls7Xa8AQLa/YxAc9UjFqoEDM48muwtBGjtMY5cr0PLDCw==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/environment-jsdom-abstract@30.2.0':
+ resolution: {integrity: sha512-kazxw2L9IPuZpQ0mEt9lu9Z98SqR74xcagANmMBU16X0lS23yPc0+S6hGLUz8kVRlomZEs/5S/Zlpqwf5yu6OQ==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
peerDependencies:
- '@nestjs/common': ^11.0.0
- '@nestjs/core': ^11.0.0
- '@nestjs/microservices': ^11.0.0
- '@nestjs/platform-express': ^11.0.0
+ canvas: ^3.0.0
+ jsdom: '*'
peerDependenciesMeta:
- '@nestjs/microservices':
+ canvas:
optional: true
- '@nestjs/platform-express':
+
+ '@jest/environment@30.2.0':
+ resolution: {integrity: sha512-/QPTL7OBJQ5ac09UDRa3EQes4gt1FTEG/8jZ/4v5IVzx+Cv7dLxlVIvfvSVRiiX2drWyXeBjkMSR8hvOWSog5g==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/expect-utils@30.2.0':
+ resolution: {integrity: sha512-1JnRfhqpD8HGpOmQp180Fo9Zt69zNtC+9lR+kT7NVL05tNXIi+QC8Csz7lfidMoVLPD3FnOtcmp0CEFnxExGEA==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/expect@30.2.0':
+ resolution: {integrity: sha512-V9yxQK5erfzx99Sf+7LbhBwNWEZ9eZay8qQ9+JSC0TrMR1pMDHLMY+BnVPacWU6Jamrh252/IKo4F1Xn/zfiqA==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/fake-timers@30.2.0':
+ resolution: {integrity: sha512-HI3tRLjRxAbBy0VO8dqqm7Hb2mIa8d5bg/NJkyQcOk7V118ObQML8RC5luTF/Zsg4474a+gDvhce7eTnP4GhYw==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/get-type@30.1.0':
+ resolution: {integrity: sha512-eMbZE2hUnx1WV0pmURZY9XoXPkUYjpc55mb0CrhtdWLtzMQPFvu/rZkTLZFTsdaVQa+Tr4eWAteqcUzoawq/uA==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/globals@30.2.0':
+ resolution: {integrity: sha512-b63wmnKPaK+6ZZfpYhz9K61oybvbI1aMcIs80++JI1O1rR1vaxHUCNqo3ITu6NU0d4V34yZFoHMn/uoKr/Rwfw==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/pattern@30.0.1':
+ resolution: {integrity: sha512-gWp7NfQW27LaBQz3TITS8L7ZCQ0TLvtmI//4OwlQRx4rnWxcPNIYjxZpDcN4+UlGxgm3jS5QPz8IPTCkb59wZA==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/reporters@30.2.0':
+ resolution: {integrity: sha512-DRyW6baWPqKMa9CzeiBjHwjd8XeAyco2Vt8XbcLFjiwCOEKOvy82GJ8QQnJE9ofsxCMPjH4MfH8fCWIHHDKpAQ==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ peerDependencies:
+ node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
+ peerDependenciesMeta:
+ node-notifier:
optional: true
- '@nestjs/typeorm@11.0.0':
- resolution: {integrity: sha512-SOeUQl70Lb2OfhGkvnh4KXWlsd+zA08RuuQgT7kKbzivngxzSo1Oc7Usu5VxCxACQC9wc2l9esOHILSJeK7rJA==}
+ '@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/schemas@30.0.5':
+ resolution: {integrity: sha512-DmdYgtezMkh3cpU8/1uyXakv3tJRcmcXxBOcO0tbaozPwpmh4YMsnWrQm9ZmZMfa5ocbxzbFk6O4bDPEc/iAnA==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/snapshot-utils@30.2.0':
+ resolution: {integrity: sha512-0aVxM3RH6DaiLcjj/b0KrIBZhSX1373Xci4l3cW5xiUWPctZ59zQ7jj4rqcJQ/Z8JuN/4wX3FpJSa3RssVvCug==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/source-map@30.0.1':
+ resolution: {integrity: sha512-MIRWMUUR3sdbP36oyNyhbThLHyJ2eEDClPCiHVbrYAe5g3CHRArIVpBw7cdSB5fr+ofSfIb2Tnsw8iEHL0PYQg==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/test-result@30.2.0':
+ resolution: {integrity: sha512-RF+Z+0CCHkARz5HT9mcQCBulb1wgCP3FBvl9VFokMX27acKphwyQsNuWH3c+ojd1LeWBLoTYoxF0zm6S/66mjg==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/test-sequencer@30.2.0':
+ resolution: {integrity: sha512-wXKgU/lk8fKXMu/l5Hog1R61bL4q5GCdT6OJvdAFz1P+QrpoFuLU68eoKuVc4RbrTtNnTL5FByhWdLgOPSph+Q==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jest/transform@30.2.0':
+ resolution: {integrity: sha512-XsauDV82o5qXbhalKxD7p4TZYYdwcaEXC77PPD2HixEFF+6YGppjrAAQurTl2ECWcEomHBMMNS9AH3kcCFx8jA==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.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}
+
+ '@jest/types@30.2.0':
+ resolution: {integrity: sha512-H9xg1/sfVvyfU7o3zMfBEjQ1gcsdeTMgqHoYdN79tuLqfTtuu7WckRA1R5whDwOzxaZAeMKTYWqP+WCAi0CHsg==}
+ engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+
+ '@jridgewell/gen-mapping@0.3.13':
+ resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==}
+
+ '@jridgewell/remapping@2.3.5':
+ resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==}
+
+ '@jridgewell/resolve-uri@3.1.2':
+ resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
+ engines: {node: '>=6.0.0'}
+
+ '@jridgewell/source-map@0.3.11':
+ resolution: {integrity: sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==}
+
+ '@jridgewell/sourcemap-codec@1.5.5':
+ resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==}
+
+ '@jridgewell/trace-mapping@0.3.31':
+ resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==}
+
+ '@jridgewell/trace-mapping@0.3.9':
+ resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==}
+
+ '@leichtgewicht/ip-codec@2.0.5':
+ resolution: {integrity: sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==}
+
+ '@lukeed/csprng@1.1.0':
+ resolution: {integrity: sha512-Z7C/xXCiGWsg0KuKsHTKJxbWhpI3Vs5GwLfOean7MGyVFGqdRgBbAjOCh6u4bbjPc/8MJ2pZmK/0DLdCbivLDA==}
+ engines: {node: '>=8'}
+
+ '@lukeed/ms@2.0.2':
+ resolution: {integrity: sha512-9I2Zn6+NJLfaGoz9jN3lpwDgAYvfGeNYdbAIjJOqzs4Tpc+VU3Jqq4IofSUBKajiDS8k9fZIg18/z13mpk1bsA==}
+ engines: {node: '>=8'}
+
+ '@mdx-js/mdx@3.1.1':
+ resolution: {integrity: sha512-f6ZO2ifpwAQIpzGWaBQT2TXxPv6z3RBzQKpVftEWN78Vl/YweF1uwussDx8ECAXVtr3Rs89fKyG9YlzUs9DyGQ==}
+
+ '@mdx-js/react@3.1.1':
+ resolution: {integrity: sha512-f++rKLQgUVYDAtECQ6fn/is15GkEH9+nZPM3MS0RcxVqoTfawHvDlSCH7JbMhAM6uJ32v3eXLvLmLvjGu7PTQw==}
peerDependencies:
- '@nestjs/common': ^10.0.0 || ^11.0.0
- '@nestjs/core': ^10.0.0 || ^11.0.0
- reflect-metadata: ^0.1.13 || ^0.2.0
- rxjs: ^7.2.0
- typeorm: ^0.3.0
+ '@types/react': '>=16'
+ react: '>=16'
- '@next/env@15.5.6':
- resolution: {integrity: sha512-3qBGRW+sCGzgbpc5TS1a0p7eNxnOarGVQhZxfvTdnV0gFI61lX7QNtQ4V1TSREctXzYn5NetbUsLvyqwLFJM6Q==}
+ '@microsoft/tsdoc@0.15.1':
+ resolution: {integrity: sha512-4aErSrCR/On/e5G2hDP0wjooqDdauzEbIq8hIkIe5pXV0rtWJZvdCEKL0ykZxex+IxIwBp0eGeV48hQN07dXtw==}
- '@next/eslint-plugin-next@16.0.1':
- resolution: {integrity: sha512-g4Cqmv/gyFEXNeVB2HkqDlYKfy+YrlM2k8AVIO/YQVEPfhVruH1VA99uT1zELLnPLIeOnx8IZ6Ddso0asfTIdw==}
+ '@napi-rs/nice-android-arm-eabi@1.1.1':
+ resolution: {integrity: sha512-kjirL3N6TnRPv5iuHw36wnucNqXAO46dzK9oPb0wj076R5Xm8PfUVA9nAFB5ZNMmfJQJVKACAPd/Z2KYMppthw==}
+ engines: {node: '>= 10'}
+ cpu: [arm]
+ os: [android]
- '@next/swc-darwin-arm64@15.5.6':
- resolution: {integrity: sha512-ES3nRz7N+L5Umz4KoGfZ4XX6gwHplwPhioVRc25+QNsDa7RtUF/z8wJcbuQ2Tffm5RZwuN2A063eapoJ1u4nPg==}
+ '@napi-rs/nice-android-arm64@1.1.1':
+ resolution: {integrity: sha512-blG0i7dXgbInN5urONoUCNf+DUEAavRffrO7fZSeoRMJc5qD+BJeNcpr54msPF6qfDD6kzs9AQJogZvT2KD5nw==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [android]
+
+ '@napi-rs/nice-darwin-arm64@1.1.1':
+ resolution: {integrity: sha512-s/E7w45NaLqTGuOjC2p96pct4jRfo61xb9bU1unM/MJ/RFkKlJyJDx7OJI/O0ll/hrfpqKopuAFDV8yo0hfT7A==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [darwin]
- '@next/swc-darwin-x64@15.5.6':
- resolution: {integrity: sha512-JIGcytAyk9LQp2/nuVZPAtj8uaJ/zZhsKOASTjxDug0SPU9LAM3wy6nPU735M1OqacR4U20LHVF5v5Wnl9ptTA==}
+ '@napi-rs/nice-darwin-x64@1.1.1':
+ resolution: {integrity: sha512-dGoEBnVpsdcC+oHHmW1LRK5eiyzLwdgNQq3BmZIav+9/5WTZwBYX7r5ZkQC07Nxd3KHOCkgbHSh4wPkH1N1LiQ==}
engines: {node: '>= 10'}
cpu: [x64]
os: [darwin]
- '@next/swc-linux-arm64-gnu@15.5.6':
- resolution: {integrity: sha512-qvz4SVKQ0P3/Im9zcS2RmfFL/UCQnsJKJwQSkissbngnB/12c6bZTCB0gHTexz1s6d/mD0+egPKXAIRFVS7hQg==}
+ '@napi-rs/nice-freebsd-x64@1.1.1':
+ resolution: {integrity: sha512-kHv4kEHAylMYmlNwcQcDtXjklYp4FCf0b05E+0h6nDHsZ+F0bDe04U/tXNOqrx5CmIAth4vwfkjjUmp4c4JktQ==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@napi-rs/nice-linux-arm-gnueabihf@1.1.1':
+ resolution: {integrity: sha512-E1t7K0efyKXZDoZg1LzCOLxgolxV58HCkaEkEvIYQx12ht2pa8hoBo+4OB3qh7e+QiBlp1SRf+voWUZFxyhyqg==}
+ engines: {node: '>= 10'}
+ cpu: [arm]
+ os: [linux]
+
+ '@napi-rs/nice-linux-arm64-gnu@1.1.1':
+ resolution: {integrity: sha512-CIKLA12DTIZlmTaaKhQP88R3Xao+gyJxNWEn04wZwC2wmRapNnxCUZkVwggInMJvtVElA+D4ZzOU5sX4jV+SmQ==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
- '@next/swc-linux-arm64-musl@15.5.6':
- resolution: {integrity: sha512-FsbGVw3SJz1hZlvnWD+T6GFgV9/NYDeLTNQB2MXoPN5u9VA9OEDy6fJEfePfsUKAhJufFbZLgp0cPxMuV6SV0w==}
+ '@napi-rs/nice-linux-arm64-musl@1.1.1':
+ resolution: {integrity: sha512-+2Rzdb3nTIYZ0YJF43qf2twhqOCkiSrHx2Pg6DJaCPYhhaxbLcdlV8hCRMHghQ+EtZQWGNcS2xF4KxBhSGeutg==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
- '@next/swc-linux-x64-gnu@15.5.6':
- resolution: {integrity: sha512-3QnHGFWlnvAgyxFxt2Ny8PTpXtQD7kVEeaFat5oPAHHI192WKYB+VIKZijtHLGdBBvc16tiAkPTDmQNOQ0dyrA==}
+ '@napi-rs/nice-linux-ppc64-gnu@1.1.1':
+ resolution: {integrity: sha512-4FS8oc0GeHpwvv4tKciKkw3Y4jKsL7FRhaOeiPei0X9T4Jd619wHNe4xCLmN2EMgZoeGg+Q7GY7BsvwKpL22Tg==}
engines: {node: '>= 10'}
- cpu: [x64]
+ cpu: [ppc64]
os: [linux]
- '@next/swc-linux-x64-musl@15.5.6':
- resolution: {integrity: sha512-OsGX148sL+TqMK9YFaPFPoIaJKbFJJxFzkXZljIgA9hjMjdruKht6xDCEv1HLtlLNfkx3c5w2GLKhj7veBQizQ==}
+ '@napi-rs/nice-linux-riscv64-gnu@1.1.1':
+ resolution: {integrity: sha512-HU0nw9uD4FO/oGCCk409tCi5IzIZpH2agE6nN4fqpwVlCn5BOq0MS1dXGjXaG17JaAvrlpV5ZeyZwSon10XOXw==}
engines: {node: '>= 10'}
- cpu: [x64]
+ cpu: [riscv64]
os: [linux]
- '@next/swc-win32-arm64-msvc@15.5.6':
- resolution: {integrity: sha512-ONOMrqWxdzXDJNh2n60H6gGyKed42Ieu6UTVPZteXpuKbLZTH4G4eBMsr5qWgOBA+s7F+uB4OJbZnrkEDnZ5Fg==}
+ '@napi-rs/nice-linux-s390x-gnu@1.1.1':
+ resolution: {integrity: sha512-2YqKJWWl24EwrX0DzCQgPLKQBxYDdBxOHot1KWEq7aY2uYeX+Uvtv4I8xFVVygJDgf6/92h9N3Y43WPx8+PAgQ==}
engines: {node: '>= 10'}
- cpu: [arm64]
- os: [win32]
+ cpu: [s390x]
+ os: [linux]
- '@next/swc-win32-x64-msvc@15.5.6':
- resolution: {integrity: sha512-pxK4VIjFRx1MY92UycLOOw7dTdvccWsNETQ0kDHkBlcFH1GrTLUjSiHU1ohrznnux6TqRHgv5oflhfIWZwVROQ==}
+ '@napi-rs/nice-linux-x64-gnu@1.1.1':
+ resolution: {integrity: sha512-/gaNz3R92t+dcrfCw/96pDopcmec7oCcAQ3l/M+Zxr82KT4DljD37CpgrnXV+pJC263JkW572pdbP3hP+KjcIg==}
engines: {node: '>= 10'}
cpu: [x64]
- os: [win32]
+ os: [linux]
- '@noble/hashes@1.8.0':
- resolution: {integrity: sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==}
- engines: {node: ^14.21.3 || >=16}
-
- '@node-rs/xxhash-android-arm-eabi@1.7.6':
- resolution: {integrity: sha512-ptmfpFZ8SgTef58Us+0HsZ9BKhyX/gZYbhLkuzPt7qUoMqMSJK85NC7LEgzDgjUiG+S5GahEEQ9/tfh9BVvKhw==}
- engines: {node: '>= 12'}
- cpu: [arm]
- os: [android]
-
- '@node-rs/xxhash-android-arm64@1.7.6':
- resolution: {integrity: sha512-n4MyZvqifuoARfBvrZ2IBqmsGzwlVI3kb2mB0gVvoHtMsPbl/q94zoDBZ7WgeP3t4Wtli+QS3zgeTCOWUbqqUQ==}
- engines: {node: '>= 12'}
- cpu: [arm64]
- os: [android]
-
- '@node-rs/xxhash-darwin-arm64@1.7.6':
- resolution: {integrity: sha512-6xGuE07CiCIry/KT3IiwQd/kykTOmjKzO/ZnHlE5ibGMx64NFE0qDuwJbxQ4rGyUzgJ0KuN9ZdOhUDJmepnpcw==}
- engines: {node: '>= 12'}
- cpu: [arm64]
- os: [darwin]
-
- '@node-rs/xxhash-darwin-x64@1.7.6':
- resolution: {integrity: sha512-Z4oNnhyznDvHhxv+s0ka+5KG8mdfLVucZMZMejj9BL+CPmamClygPiHIRiifRcPAoX9uPZykaCsULngIfLeF3Q==}
- engines: {node: '>= 12'}
- cpu: [x64]
- os: [darwin]
-
- '@node-rs/xxhash-freebsd-x64@1.7.6':
- resolution: {integrity: sha512-arCDOf3xZ5NfBL5fk5J52sNPjXL2cVWN6nXNB3nrtRFFdPBLsr6YXtshAc6wMVxnIW4VGaEv/5K6IpTA8AFyWw==}
- engines: {node: '>= 12'}
+ '@napi-rs/nice-linux-x64-musl@1.1.1':
+ resolution: {integrity: sha512-xScCGnyj/oppsNPMnevsBe3pvNaoK7FGvMjT35riz9YdhB2WtTG47ZlbxtOLpjeO9SqqQ2J2igCmz6IJOD5JYw==}
+ engines: {node: '>= 10'}
cpu: [x64]
- os: [freebsd]
-
- '@node-rs/xxhash-linux-arm-gnueabihf@1.7.6':
- resolution: {integrity: sha512-ndLLEW+MwLH3lFS0ahlHCcmkf2ykOv/pbP8OBBeAOlz/Xc3jKztg5IJ9HpkjKOkHk470yYxgHVaw1QMoMzU00A==}
- engines: {node: '>= 12'}
- cpu: [arm]
os: [linux]
- '@node-rs/xxhash-linux-arm64-gnu@1.7.6':
- resolution: {integrity: sha512-VX7VkTG87mAdrF2vw4aroiRpFIIN8Lj6NgtGHF+IUVbzQxPudl4kG+FPEjsNH8y04yQxRbPE7naQNgHcTKMrNw==}
- engines: {node: '>= 12'}
- cpu: [arm64]
- os: [linux]
-
- '@node-rs/xxhash-linux-arm64-musl@1.7.6':
- resolution: {integrity: sha512-AB5m6crGYSllM9F/xZNOQSPImotR5lOa9e4arW99Bv82S+gcpphI8fGMDOVTTCXY/RLRhvvhwzLDxmLB2O8VDg==}
- engines: {node: '>= 12'}
+ '@napi-rs/nice-openharmony-arm64@1.1.1':
+ resolution: {integrity: sha512-6uJPRVwVCLDeoOaNyeiW0gp2kFIM4r7PL2MczdZQHkFi9gVlgm+Vn+V6nTWRcu856mJ2WjYJiumEajfSm7arPQ==}
+ engines: {node: '>= 10'}
cpu: [arm64]
- os: [linux]
-
- '@node-rs/xxhash-linux-x64-gnu@1.7.6':
- resolution: {integrity: sha512-a2A6M+5tc0PVlJlE/nl0XsLEzMpKkwg7Y1lR5urFUbW9uVQnKjJYQDrUojhlXk0Uv3VnYQPa6ThmwlacZA5mvQ==}
- engines: {node: '>= 12'}
- cpu: [x64]
- os: [linux]
-
- '@node-rs/xxhash-linux-x64-musl@1.7.6':
- resolution: {integrity: sha512-WioGJSC1GoxQpmdQrG5l/uddSBAS4XCWczHNwXe895J5xadGQzyvmr0r17BNfihvbBUDH1H9jwouNYzDDeA6+A==}
- engines: {node: '>= 12'}
- cpu: [x64]
- os: [linux]
-
- '@node-rs/xxhash-wasm32-wasi@1.7.6':
- resolution: {integrity: sha512-WDXXKMMFMrez+esm2DzMPHFNPFYf+wQUtaXrXwtxXeQMFEzleOLwEaqV0+bbXGJTwhPouL3zY1Qo2xmIH4kkTg==}
- engines: {node: '>=14.0.0'}
- cpu: [wasm32]
+ os: [openharmony]
- '@node-rs/xxhash-win32-arm64-msvc@1.7.6':
- resolution: {integrity: sha512-qjDFUZJT/Zq0yFS+0TApkD86p0NBdPXlOoHur9yNeO9YX2/9/b1sC2P7N27PgOu13h61TUOvTUC00e/82jAZRQ==}
- engines: {node: '>= 12'}
+ '@napi-rs/nice-win32-arm64-msvc@1.1.1':
+ resolution: {integrity: sha512-uoTb4eAvM5B2aj/z8j+Nv8OttPf2m+HVx3UjA5jcFxASvNhQriyCQF1OB1lHL43ZhW+VwZlgvjmP5qF3+59atA==}
+ engines: {node: '>= 10'}
cpu: [arm64]
os: [win32]
- '@node-rs/xxhash-win32-ia32-msvc@1.7.6':
- resolution: {integrity: sha512-s7a+mQWOTnU4NiiypRq/vbNGot/il0HheXuy9oxJ0SW2q/e4BJ8j0pnP6UBlAjsk+005A76vOwsEj01qbQw8+A==}
- engines: {node: '>= 12'}
+ '@napi-rs/nice-win32-ia32-msvc@1.1.1':
+ resolution: {integrity: sha512-CNQqlQT9MwuCsg1Vd/oKXiuH+TcsSPJmlAFc5frFyX/KkOh0UpBLEj7aoY656d5UKZQMQFP7vJNa1DNUNORvug==}
+ engines: {node: '>= 10'}
cpu: [ia32]
os: [win32]
- '@node-rs/xxhash-win32-x64-msvc@1.7.6':
- resolution: {integrity: sha512-zHOHm2UaIahRhgRPJll+4Xy4Z18aAT/7KNeQW+QJupGvFz+GzOFXMGs3R/3B1Ktob/F5ui3i1MrW9GEob3CWTg==}
- engines: {node: '>= 12'}
+ '@napi-rs/nice-win32-x64-msvc@1.1.1':
+ resolution: {integrity: sha512-vB+4G/jBQCAh0jelMTY3+kgFy00Hlx2f2/1zjMoH821IbplbWZOkLiTYXQkygNTzQJTq5cvwBDgn2ppHD+bglQ==}
+ engines: {node: '>= 10'}
cpu: [x64]
os: [win32]
- '@node-rs/xxhash@1.7.6':
- resolution: {integrity: sha512-XMisO+aQHsVpxRp/85EszTtOQTOlhPbd149P/Xa9F55wafA6UM3h2UhOgOs7aAzItnHU/Aw1WQ1FVTEg7WB43Q==}
- engines: {node: '>= 12'}
+ '@napi-rs/nice@1.1.1':
+ resolution: {integrity: sha512-xJIPs+bYuc9ASBl+cvGsKbGrJmS6fAKaSZCnT0lhahT5rhA2VVy9/EcIgd2JhtEuFOJNx7UHNn/qiTPTY4nrQw==}
+ engines: {node: '>= 10'}
- '@nodelib/fs.scandir@2.1.5':
- resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
- engines: {node: '>= 8'}
+ '@napi-rs/wasm-runtime@0.2.12':
+ resolution: {integrity: sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==}
- '@nodelib/fs.stat@2.0.5':
- resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
- engines: {node: '>= 8'}
+ '@napi-rs/wasm-runtime@1.0.7':
+ resolution: {integrity: sha512-SeDnOO0Tk7Okiq6DbXmmBODgOAb9dp9gjlphokTUxmt8U3liIP1ZsozBahH69j/RJv+Rfs6IwUKHTgQYJ/HBAw==}
- '@nodelib/fs.walk@1.2.8':
- resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
- engines: {node: '>= 8'}
+ '@nestjs-modules/mailer@2.0.2':
+ resolution: {integrity: sha512-+z4mADQasg0H1ZaGu4zZTuKv2pu+XdErqx99PLFPzCDNTN/q9U59WPgkxVaHnsvKHNopLj5Xap7G4ZpptduoYw==}
+ peerDependencies:
+ '@nestjs/common': '>=7.0.9'
+ '@nestjs/core': '>=7.0.9'
+ nodemailer: '>=6.4.6'
- '@number-flow/react@0.5.10':
- resolution: {integrity: sha512-a8Wh5eNITn7Km4xbddAH7QH8eNmnduR6k34ER1hkHSGO4H2yU1DDnuAWLQM99vciGInFODemSc0tdxrXkJEpbA==}
+ '@nestjs/axios@4.0.1':
+ resolution: {integrity: sha512-68pFJgu+/AZbWkGu65Z3r55bTsCPlgyKaV4BSG8yUAD72q1PPuyVRgUwFv6BxdnibTUHlyxm06FmYWNC+bjN7A==}
peerDependencies:
- react: ^18 || ^19
- react-dom: ^18 || ^19
+ '@nestjs/common': ^10.0.0 || ^11.0.0
+ axios: ^1.3.1
+ rxjs: ^7.0.0
- '@nuxt/opencollective@0.4.1':
- resolution: {integrity: sha512-GXD3wy50qYbxCJ652bDrDzgMr3NFEkIS374+IgFQKkCvk9yiYcLvX2XDYr7UyQxf4wK0e+yqDYRubZ0DtOxnmQ==}
- engines: {node: ^14.18.0 || >=16.10.0, npm: '>=5.10.0'}
+ '@nestjs/cli@11.0.10':
+ resolution: {integrity: sha512-4waDT0yGWANg0pKz4E47+nUrqIJv/UqrZ5wLPkCqc7oMGRMWKAaw1NDZ9rKsaqhqvxb2LfI5+uXOWr4yi94DOQ==}
+ engines: {node: '>= 20.11'}
hasBin: true
+ peerDependencies:
+ '@swc/cli': ^0.1.62 || ^0.3.0 || ^0.4.0 || ^0.5.0 || ^0.6.0 || ^0.7.0
+ '@swc/core': ^1.3.62
+ peerDependenciesMeta:
+ '@swc/cli':
+ optional: true
+ '@swc/core':
+ optional: true
- '@one-ini/wasm@0.1.1':
- resolution: {integrity: sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==}
+ '@nestjs/common@11.1.8':
+ resolution: {integrity: sha512-bbsOqwld/GdBfiRNc4nnjyWWENDEicq4SH+R5AuYatvf++vf1x5JIsHB1i1KtfZMD3eRte0D4K9WXuAYil6XAg==}
+ peerDependencies:
+ class-transformer: '>=0.4.1'
+ class-validator: '>=0.13.2'
+ reflect-metadata: ^0.1.12 || ^0.2.0
+ rxjs: ^7.1.0
+ peerDependenciesMeta:
+ class-transformer:
+ optional: true
+ class-validator:
+ optional: true
- '@opensearch-project/opensearch@3.5.1':
- resolution: {integrity: sha512-6bf+HcuERzAtHZxrm6phjref54ABse39BpkDie/YO3AUFMCBrb3SK5okKSdT5n3+nDRuEEQLhQCl0RQV3s1qpA==}
- engines: {node: '>=14', yarn: ^1.22.10}
+ '@nestjs/config@4.0.2':
+ resolution: {integrity: sha512-McMW6EXtpc8+CwTUwFdg6h7dYcBUpH5iUILCclAsa+MbCEvC9ZKu4dCHRlJqALuhjLw97pbQu62l4+wRwGeZqA==}
+ peerDependencies:
+ '@nestjs/common': ^10.0.0 || ^11.0.0
+ rxjs: ^7.1.0
- '@opentelemetry/api@1.9.0':
- resolution: {integrity: sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==}
- engines: {node: '>=8.0.0'}
+ '@nestjs/core@11.1.8':
+ resolution: {integrity: sha512-7riWfmTmMhCJHZ5ZiaG+crj4t85IPCq/wLRuOUSigBYyFT2JZj0lVHtAdf4Davp9ouNI8GINBDt9h9b5Gz9nTw==}
+ engines: {node: '>= 20'}
+ peerDependencies:
+ '@nestjs/common': ^11.0.0
+ '@nestjs/microservices': ^11.0.0
+ '@nestjs/platform-express': ^11.0.0
+ '@nestjs/websockets': ^11.0.0
+ reflect-metadata: ^0.1.12 || ^0.2.0
+ rxjs: ^7.1.0
+ peerDependenciesMeta:
+ '@nestjs/microservices':
+ optional: true
+ '@nestjs/platform-express':
+ optional: true
+ '@nestjs/websockets':
+ optional: true
- '@oxc-resolver/binding-android-arm-eabi@11.13.1':
- resolution: {integrity: sha512-YijiebZnGbKtwhLJXmUkOTS2iFF5Mh7TZb3SpVGrbgH6t2flJn7K+k78FJN7tc2lfixdlI1amkcCbTCgV+2WwQ==}
- cpu: [arm]
- os: [android]
+ '@nestjs/event-emitter@3.0.1':
+ resolution: {integrity: sha512-0Ln/x+7xkU6AJFOcQI9tIhUMXVF7D5itiaQGOyJbXtlAfAIt8gzDdJm+Im7cFzKoWkiW5nCXCPh6GSvdQd/3Dw==}
+ peerDependencies:
+ '@nestjs/common': ^10.0.0 || ^11.0.0
+ '@nestjs/core': ^10.0.0 || ^11.0.0
- '@oxc-resolver/binding-android-arm64@11.13.1':
- resolution: {integrity: sha512-cURsasEvObw/KCi8eRuZhHiT4agR4cui6uWX8ss2z/Ok23f8W+P8fvEZD0iUMIAmHwyAxA93RxNTIKh48zK39A==}
- cpu: [arm64]
- os: [android]
+ '@nestjs/jwt@11.0.1':
+ resolution: {integrity: sha512-HXSsc7SAnCnjA98TsZqrE7trGtHDnYXWp4Ffy6LwSmck1QvbGYdMzBquXofX5l6tIRpeY4Qidl2Ti2CVG77Pdw==}
+ peerDependencies:
+ '@nestjs/common': ^8.0.0 || ^9.0.0 || ^10.0.0 || ^11.0.0
- '@oxc-resolver/binding-darwin-arm64@11.13.1':
- resolution: {integrity: sha512-IKsn9oeVrbWpbE+PanGr5C4tRPVhVuBh/ZY8I7bbqaxBjemlgKKNGNSq73VDzQjRApJgjjzsVDgkTwTrKivLGg==}
- cpu: [arm64]
- os: [darwin]
+ '@nestjs/mapped-types@2.1.0':
+ resolution: {integrity: sha512-W+n+rM69XsFdwORF11UqJahn4J3xi4g/ZEOlJNL6KoW5ygWSmBB2p0S2BZ4FQeS/NDH72e6xIcu35SfJnE8bXw==}
+ peerDependencies:
+ '@nestjs/common': ^10.0.0 || ^11.0.0
+ class-transformer: ^0.4.0 || ^0.5.0
+ class-validator: ^0.13.0 || ^0.14.0
+ reflect-metadata: ^0.1.12 || ^0.2.0
+ peerDependenciesMeta:
+ class-transformer:
+ optional: true
+ class-validator:
+ optional: true
- '@oxc-resolver/binding-darwin-x64@11.13.1':
- resolution: {integrity: sha512-FW9toaDOXSLmP3lYXsXPalQKLs8eXwZCNUOPeng84MExl+ALe0Ik+sif/U6P/nqJgVdVm4MEiZcnnNtQ+Bn29Q==}
- cpu: [x64]
- os: [darwin]
+ '@nestjs/passport@11.0.5':
+ resolution: {integrity: sha512-ulQX6mbjlws92PIM15Naes4F4p2JoxGnIJuUsdXQPT+Oo2sqQmENEZXM7eYuimocfHnKlcfZOuyzbA33LwUlOQ==}
+ peerDependencies:
+ '@nestjs/common': ^10.0.0 || ^11.0.0
+ passport: ^0.5.0 || ^0.6.0 || ^0.7.0
- '@oxc-resolver/binding-freebsd-x64@11.13.1':
- resolution: {integrity: sha512-9EODydJ8P/DhEmVIdcjLnlDXAw9hot2NLuwY1/6gp3fKNXsqz3s9ch/vlDpq0CMtvjQ3Z4a2P+4IsH5A73Eh/A==}
- cpu: [x64]
- os: [freebsd]
+ '@nestjs/platform-express@11.1.8':
+ resolution: {integrity: sha512-rL6pZH9BW7BnL5X2eWbJMtt86uloAKjFgyY5+L2UkizgfEp7rgAs0+Z1z0BcW2Pgu5+q8O7RKPNyHJ/9ZNz/ZQ==}
+ peerDependencies:
+ '@nestjs/common': ^11.0.0
+ '@nestjs/core': ^11.0.0
- '@oxc-resolver/binding-linux-arm-gnueabihf@11.13.1':
- resolution: {integrity: sha512-Ud/q31NNEFXVy9mwO1jbXXsuqYd8ftoweL4z9MZ5wahlncnzPYKcEGSdBfSi7TKct4KU8EdvAxi+F9wdO1dCGw==}
- cpu: [arm]
- os: [linux]
+ '@nestjs/platform-fastify@11.1.8':
+ resolution: {integrity: sha512-4XiiTiTkF9UbVDAuHDyVIzgr43L2sI3vLs9A52ov2lrOJcqyKwTYL/NiCQd4dtUQm1L6M0jOrJhzpYXobX5uMw==}
+ peerDependencies:
+ '@fastify/static': ^8.0.0
+ '@fastify/view': ^10.0.0 || ^11.0.0
+ '@nestjs/common': ^11.0.0
+ '@nestjs/core': ^11.0.0
+ peerDependenciesMeta:
+ '@fastify/static':
+ optional: true
+ '@fastify/view':
+ optional: true
- '@oxc-resolver/binding-linux-arm-musleabihf@11.13.1':
- resolution: {integrity: sha512-4x/eNAoQ7Ec2n81S2akaBeDbM4ceuy8R4sd41p1ETnM5PBhvBzWSuf75vQp4K1dLyKKPe+fw+uG4eIpgzqvj8A==}
- cpu: [arm]
- os: [linux]
+ '@nestjs/schedule@6.0.1':
+ resolution: {integrity: sha512-v3yO6cSPAoBSSyH67HWnXHzuhPhSNZhRmLY38JvCt2sqY8sPMOODpcU1D79iUMFf7k16DaMEbL4Mgx61ZhiC8Q==}
+ peerDependencies:
+ '@nestjs/common': ^10.0.0 || ^11.0.0
+ '@nestjs/core': ^10.0.0 || ^11.0.0
- '@oxc-resolver/binding-linux-arm64-gnu@11.13.1':
- resolution: {integrity: sha512-435Sf0a1KKjU7jgB5gcisTq6WMxQQVfsmKWAcQ3VhbXU/NpaUUZaezKmZJXNiAO1sUY6/zRJnTaPtsBq9msYlQ==}
+ '@nestjs/schematics@11.0.9':
+ resolution: {integrity: sha512-0NfPbPlEaGwIT8/TCThxLzrlz3yzDNkfRNpbL7FiplKq3w4qXpJg0JYwqgMEJnLQZm3L/L/5XjoyfJHUO3qX9g==}
+ peerDependencies:
+ typescript: '>=4.8.2'
+
+ '@nestjs/swagger@11.2.1':
+ resolution: {integrity: sha512-1MS7xf0pzc1mofG53xrrtrurnziafPUHkqzRm4YUVPA/egeiMaSerQBD/feiAeQ2BnX0WiLsTX4HQFO0icvOjQ==}
+ peerDependencies:
+ '@fastify/static': ^8.0.0
+ '@nestjs/common': ^11.0.1
+ '@nestjs/core': ^11.0.1
+ class-transformer: '*'
+ class-validator: '*'
+ reflect-metadata: ^0.1.12 || ^0.2.0
+ peerDependenciesMeta:
+ '@fastify/static':
+ optional: true
+ class-transformer:
+ optional: true
+ class-validator:
+ optional: true
+
+ '@nestjs/terminus@11.0.0':
+ resolution: {integrity: sha512-c55LOo9YGovmQHtFUMa/vDaxGZ2cglMTZejqgHREaApt/GArTfgYYGwhRXPLq8ZwiQQlLuYB+79e9iA8mlDSLA==}
+ peerDependencies:
+ '@grpc/grpc-js': '*'
+ '@grpc/proto-loader': '*'
+ '@mikro-orm/core': '*'
+ '@mikro-orm/nestjs': '*'
+ '@nestjs/axios': ^2.0.0 || ^3.0.0 || ^4.0.0
+ '@nestjs/common': ^10.0.0 || ^11.0.0
+ '@nestjs/core': ^10.0.0 || ^11.0.0
+ '@nestjs/microservices': ^10.0.0 || ^11.0.0
+ '@nestjs/mongoose': ^11.0.0
+ '@nestjs/sequelize': ^10.0.0 || ^11.0.0
+ '@nestjs/typeorm': ^10.0.0 || ^11.0.0
+ '@prisma/client': '*'
+ mongoose: '*'
+ reflect-metadata: 0.1.x || 0.2.x
+ rxjs: 7.x
+ sequelize: '*'
+ typeorm: '*'
+ peerDependenciesMeta:
+ '@grpc/grpc-js':
+ optional: true
+ '@grpc/proto-loader':
+ optional: true
+ '@mikro-orm/core':
+ optional: true
+ '@mikro-orm/nestjs':
+ optional: true
+ '@nestjs/axios':
+ optional: true
+ '@nestjs/microservices':
+ optional: true
+ '@nestjs/mongoose':
+ optional: true
+ '@nestjs/sequelize':
+ optional: true
+ '@nestjs/typeorm':
+ optional: true
+ '@prisma/client':
+ optional: true
+ mongoose:
+ optional: true
+ sequelize:
+ optional: true
+ typeorm:
+ optional: true
+
+ '@nestjs/testing@11.1.8':
+ resolution: {integrity: sha512-E6K+0UTKztcPxJzLnQa7S34lFjZbrj3Z1r7c5y5WDrL1m5HD1H4AeyBhicHgdaFmxjLAva2bq0sYKy/S7cdeYA==}
+ peerDependencies:
+ '@nestjs/common': ^11.0.0
+ '@nestjs/core': ^11.0.0
+ '@nestjs/microservices': ^11.0.0
+ '@nestjs/platform-express': ^11.0.0
+ peerDependenciesMeta:
+ '@nestjs/microservices':
+ optional: true
+ '@nestjs/platform-express':
+ optional: true
+
+ '@nestjs/typeorm@11.0.0':
+ resolution: {integrity: sha512-SOeUQl70Lb2OfhGkvnh4KXWlsd+zA08RuuQgT7kKbzivngxzSo1Oc7Usu5VxCxACQC9wc2l9esOHILSJeK7rJA==}
+ peerDependencies:
+ '@nestjs/common': ^10.0.0 || ^11.0.0
+ '@nestjs/core': ^10.0.0 || ^11.0.0
+ reflect-metadata: ^0.1.13 || ^0.2.0
+ rxjs: ^7.2.0
+ typeorm: ^0.3.0
+
+ '@next/env@15.5.6':
+ resolution: {integrity: sha512-3qBGRW+sCGzgbpc5TS1a0p7eNxnOarGVQhZxfvTdnV0gFI61lX7QNtQ4V1TSREctXzYn5NetbUsLvyqwLFJM6Q==}
+
+ '@next/eslint-plugin-next@16.0.1':
+ resolution: {integrity: sha512-g4Cqmv/gyFEXNeVB2HkqDlYKfy+YrlM2k8AVIO/YQVEPfhVruH1VA99uT1zELLnPLIeOnx8IZ6Ddso0asfTIdw==}
+
+ '@next/swc-darwin-arm64@15.5.6':
+ resolution: {integrity: sha512-ES3nRz7N+L5Umz4KoGfZ4XX6gwHplwPhioVRc25+QNsDa7RtUF/z8wJcbuQ2Tffm5RZwuN2A063eapoJ1u4nPg==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@next/swc-darwin-x64@15.5.6':
+ resolution: {integrity: sha512-JIGcytAyk9LQp2/nuVZPAtj8uaJ/zZhsKOASTjxDug0SPU9LAM3wy6nPU735M1OqacR4U20LHVF5v5Wnl9ptTA==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [darwin]
+
+ '@next/swc-linux-arm64-gnu@15.5.6':
+ resolution: {integrity: sha512-qvz4SVKQ0P3/Im9zcS2RmfFL/UCQnsJKJwQSkissbngnB/12c6bZTCB0gHTexz1s6d/mD0+egPKXAIRFVS7hQg==}
+ engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
- '@oxc-resolver/binding-linux-arm64-musl@11.13.1':
- resolution: {integrity: sha512-Okb7KgPJvA/Db0QwdVziuYs5MZQEq9PC5MEDrBK7jmcqQL2RO+mk7oztqSegcNJ7kMyNM7Zi2cN9G69g4Cs3zg==}
+ '@next/swc-linux-arm64-musl@15.5.6':
+ resolution: {integrity: sha512-FsbGVw3SJz1hZlvnWD+T6GFgV9/NYDeLTNQB2MXoPN5u9VA9OEDy6fJEfePfsUKAhJufFbZLgp0cPxMuV6SV0w==}
+ engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
- '@oxc-resolver/binding-linux-ppc64-gnu@11.13.1':
- resolution: {integrity: sha512-HyM9+MlH7bWQtjtGzhxVMVhIuy2C1+MqavBfSMyY2d9SSdxcKvboMhl/0vTTMH/R94z8n/gP5XSJ1M6/BC30Pw==}
- cpu: [ppc64]
+ '@next/swc-linux-x64-gnu@15.5.6':
+ resolution: {integrity: sha512-3QnHGFWlnvAgyxFxt2Ny8PTpXtQD7kVEeaFat5oPAHHI192WKYB+VIKZijtHLGdBBvc16tiAkPTDmQNOQ0dyrA==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
os: [linux]
- '@oxc-resolver/binding-linux-riscv64-gnu@11.13.1':
- resolution: {integrity: sha512-ukJFu+798IzODSIupFAbouehJOLqQwhz56VlzRXi+42xtsmtZ+NLla2CXlaw1V9nMB7HLEQU1+XklkeFsIxz4g==}
- cpu: [riscv64]
+ '@next/swc-linux-x64-musl@15.5.6':
+ resolution: {integrity: sha512-OsGX148sL+TqMK9YFaPFPoIaJKbFJJxFzkXZljIgA9hjMjdruKht6xDCEv1HLtlLNfkx3c5w2GLKhj7veBQizQ==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
os: [linux]
- '@oxc-resolver/binding-linux-riscv64-musl@11.13.1':
- resolution: {integrity: sha512-gCr05/1CbuKQ/E39pzVjBLE/amtdvFpHeEd6lUOshnoInZ48g33b+1/CNyeO+B1CoiIydYGrkbyIoIeSMWzSsw==}
- cpu: [riscv64]
+ '@next/swc-win32-arm64-msvc@15.5.6':
+ resolution: {integrity: sha512-ONOMrqWxdzXDJNh2n60H6gGyKed42Ieu6UTVPZteXpuKbLZTH4G4eBMsr5qWgOBA+s7F+uB4OJbZnrkEDnZ5Fg==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [win32]
+
+ '@next/swc-win32-x64-msvc@15.5.6':
+ resolution: {integrity: sha512-pxK4VIjFRx1MY92UycLOOw7dTdvccWsNETQ0kDHkBlcFH1GrTLUjSiHU1ohrznnux6TqRHgv5oflhfIWZwVROQ==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [win32]
+
+ '@noble/hashes@1.8.0':
+ resolution: {integrity: sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==}
+ engines: {node: ^14.21.3 || >=16}
+
+ '@node-rs/xxhash-android-arm-eabi@1.7.6':
+ resolution: {integrity: sha512-ptmfpFZ8SgTef58Us+0HsZ9BKhyX/gZYbhLkuzPt7qUoMqMSJK85NC7LEgzDgjUiG+S5GahEEQ9/tfh9BVvKhw==}
+ engines: {node: '>= 12'}
+ cpu: [arm]
+ os: [android]
+
+ '@node-rs/xxhash-android-arm64@1.7.6':
+ resolution: {integrity: sha512-n4MyZvqifuoARfBvrZ2IBqmsGzwlVI3kb2mB0gVvoHtMsPbl/q94zoDBZ7WgeP3t4Wtli+QS3zgeTCOWUbqqUQ==}
+ engines: {node: '>= 12'}
+ cpu: [arm64]
+ os: [android]
+
+ '@node-rs/xxhash-darwin-arm64@1.7.6':
+ resolution: {integrity: sha512-6xGuE07CiCIry/KT3IiwQd/kykTOmjKzO/ZnHlE5ibGMx64NFE0qDuwJbxQ4rGyUzgJ0KuN9ZdOhUDJmepnpcw==}
+ engines: {node: '>= 12'}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@node-rs/xxhash-darwin-x64@1.7.6':
+ resolution: {integrity: sha512-Z4oNnhyznDvHhxv+s0ka+5KG8mdfLVucZMZMejj9BL+CPmamClygPiHIRiifRcPAoX9uPZykaCsULngIfLeF3Q==}
+ engines: {node: '>= 12'}
+ cpu: [x64]
+ os: [darwin]
+
+ '@node-rs/xxhash-freebsd-x64@1.7.6':
+ resolution: {integrity: sha512-arCDOf3xZ5NfBL5fk5J52sNPjXL2cVWN6nXNB3nrtRFFdPBLsr6YXtshAc6wMVxnIW4VGaEv/5K6IpTA8AFyWw==}
+ engines: {node: '>= 12'}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@node-rs/xxhash-linux-arm-gnueabihf@1.7.6':
+ resolution: {integrity: sha512-ndLLEW+MwLH3lFS0ahlHCcmkf2ykOv/pbP8OBBeAOlz/Xc3jKztg5IJ9HpkjKOkHk470yYxgHVaw1QMoMzU00A==}
+ engines: {node: '>= 12'}
+ cpu: [arm]
os: [linux]
- '@oxc-resolver/binding-linux-s390x-gnu@11.13.1':
- resolution: {integrity: sha512-ojQVasxjsZGCxt+ygyipCSp74P22WdUToBLM8D9qVm/yehOtxIT8nv0FyQrc4DOpqzGPxQS2OcgvLag+9AhsFg==}
- cpu: [s390x]
+ '@node-rs/xxhash-linux-arm64-gnu@1.7.6':
+ resolution: {integrity: sha512-VX7VkTG87mAdrF2vw4aroiRpFIIN8Lj6NgtGHF+IUVbzQxPudl4kG+FPEjsNH8y04yQxRbPE7naQNgHcTKMrNw==}
+ engines: {node: '>= 12'}
+ cpu: [arm64]
os: [linux]
- '@oxc-resolver/binding-linux-x64-gnu@11.13.1':
- resolution: {integrity: sha512-Vr28gTydAegrq+qmQu4IvR+LEq3A8amuHdOPSOwMM44cwpIvEDd4MmhimfEqoWjcfVZy9vpd5mPZZY6C/lHq9g==}
+ '@node-rs/xxhash-linux-arm64-musl@1.7.6':
+ resolution: {integrity: sha512-AB5m6crGYSllM9F/xZNOQSPImotR5lOa9e4arW99Bv82S+gcpphI8fGMDOVTTCXY/RLRhvvhwzLDxmLB2O8VDg==}
+ engines: {node: '>= 12'}
+ cpu: [arm64]
+ os: [linux]
+
+ '@node-rs/xxhash-linux-x64-gnu@1.7.6':
+ resolution: {integrity: sha512-a2A6M+5tc0PVlJlE/nl0XsLEzMpKkwg7Y1lR5urFUbW9uVQnKjJYQDrUojhlXk0Uv3VnYQPa6ThmwlacZA5mvQ==}
+ engines: {node: '>= 12'}
cpu: [x64]
os: [linux]
- '@oxc-resolver/binding-linux-x64-musl@11.13.1':
- resolution: {integrity: sha512-a2g2nv3IulLb9lHd8ZDGEnWIpNXcZviLiEKt+PHP3k3d86U1adlL5rNmImjF+eNGReTyttlX/hYNT4UIPo7IjA==}
+ '@node-rs/xxhash-linux-x64-musl@1.7.6':
+ resolution: {integrity: sha512-WioGJSC1GoxQpmdQrG5l/uddSBAS4XCWczHNwXe895J5xadGQzyvmr0r17BNfihvbBUDH1H9jwouNYzDDeA6+A==}
+ engines: {node: '>= 12'}
cpu: [x64]
os: [linux]
- '@oxc-resolver/binding-wasm32-wasi@11.13.1':
- resolution: {integrity: sha512-PhvfJQG6IyI9uN1c5NAZqfl1N9lLF1XdenX+H3aHYHlADPiOgwtpQgBETSD2L3ySeR7jLzJRVFUrWEu4uDz7Lg==}
+ '@node-rs/xxhash-wasm32-wasi@1.7.6':
+ resolution: {integrity: sha512-WDXXKMMFMrez+esm2DzMPHFNPFYf+wQUtaXrXwtxXeQMFEzleOLwEaqV0+bbXGJTwhPouL3zY1Qo2xmIH4kkTg==}
engines: {node: '>=14.0.0'}
cpu: [wasm32]
- '@oxc-resolver/binding-win32-arm64-msvc@11.13.1':
- resolution: {integrity: sha512-hyKUC0JQbTKoaPw3r9XHWHtj+B/win36VjTyKDd0OjG71UeyAhZiJBjoNJwfmnTIPcQS4YNesjNkqqDe4qN44w==}
+ '@node-rs/xxhash-win32-arm64-msvc@1.7.6':
+ resolution: {integrity: sha512-qjDFUZJT/Zq0yFS+0TApkD86p0NBdPXlOoHur9yNeO9YX2/9/b1sC2P7N27PgOu13h61TUOvTUC00e/82jAZRQ==}
+ engines: {node: '>= 12'}
cpu: [arm64]
os: [win32]
- '@oxc-resolver/binding-win32-ia32-msvc@11.13.1':
- resolution: {integrity: sha512-0/y+YMQJEd8kltqPTAUi1PHsYTUi/7UL8Jkhh6BODn3VBQIMMfHhyS8MH4geYJLEJUxuRxGKtya57GOTAN2WSw==}
+ '@node-rs/xxhash-win32-ia32-msvc@1.7.6':
+ resolution: {integrity: sha512-s7a+mQWOTnU4NiiypRq/vbNGot/il0HheXuy9oxJ0SW2q/e4BJ8j0pnP6UBlAjsk+005A76vOwsEj01qbQw8+A==}
+ engines: {node: '>= 12'}
cpu: [ia32]
os: [win32]
- '@oxc-resolver/binding-win32-x64-msvc@11.13.1':
- resolution: {integrity: sha512-0r1P/PDUD936rZShGdfnqNFdozRVgFYrcdajm1ZZ8wMoN594YkjKmlM3z3DB6arS+Bz7RhA9uLXcP74GqZ/lAw==}
+ '@node-rs/xxhash-win32-x64-msvc@1.7.6':
+ resolution: {integrity: sha512-zHOHm2UaIahRhgRPJll+4Xy4Z18aAT/7KNeQW+QJupGvFz+GzOFXMGs3R/3B1Ktob/F5ui3i1MrW9GEob3CWTg==}
+ engines: {node: '>= 12'}
cpu: [x64]
os: [win32]
- '@paralleldrive/cuid2@2.3.1':
- resolution: {integrity: sha512-XO7cAxhnTZl0Yggq6jOgjiOHhbgcO4NqFqwSmQpjK3b6TEE6Uj/jfSk6wzYyemh3+I0sHirKSetjQwn5cZktFw==}
-
- '@pinojs/redact@0.4.0':
- resolution: {integrity: sha512-k2ENnmBugE/rzQfEcdWHcCY+/FM3VLzH9cYEsbdsoqrvzAKRhUZeRNhAZvB8OitQJ1TBed3yqWtdjzS6wJKBwg==}
+ '@node-rs/xxhash@1.7.6':
+ resolution: {integrity: sha512-XMisO+aQHsVpxRp/85EszTtOQTOlhPbd149P/Xa9F55wafA6UM3h2UhOgOs7aAzItnHU/Aw1WQ1FVTEg7WB43Q==}
+ engines: {node: '>= 12'}
- '@pkgjs/parseargs@0.11.0':
- resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
- engines: {node: '>=14'}
+ '@nodelib/fs.scandir@2.1.5':
+ resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
+ engines: {node: '>= 8'}
- '@pkgr/core@0.2.9':
- resolution: {integrity: sha512-QNqXyfVS2wm9hweSYD2O7F0G06uurj9kZ96TRQE5Y9hU7+tgdZwIkbAKc5Ocy1HxEY2kuDQa6cQ1WRs/O5LFKA==}
- engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
+ '@nodelib/fs.stat@2.0.5':
+ resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
+ engines: {node: '>= 8'}
- '@playwright/test@1.56.1':
- resolution: {integrity: sha512-vSMYtL/zOcFpvJCW71Q/OEGQb7KYBPAdKh35WNSkaZA75JlAO8ED8UN6GUNTm3drWomcbcqRPFqQbLae8yBTdg==}
- engines: {node: '>=18'}
- hasBin: true
+ '@nodelib/fs.walk@1.2.8':
+ resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
+ engines: {node: '>= 8'}
- '@radix-ui/number@1.1.1':
+ '@number-flow/react@0.5.10':
+ resolution: {integrity: sha512-a8Wh5eNITn7Km4xbddAH7QH8eNmnduR6k34ER1hkHSGO4H2yU1DDnuAWLQM99vciGInFODemSc0tdxrXkJEpbA==}
+ peerDependencies:
+ react: ^18 || ^19
+ react-dom: ^18 || ^19
+
+ '@nuxt/opencollective@0.4.1':
+ resolution: {integrity: sha512-GXD3wy50qYbxCJ652bDrDzgMr3NFEkIS374+IgFQKkCvk9yiYcLvX2XDYr7UyQxf4wK0e+yqDYRubZ0DtOxnmQ==}
+ engines: {node: ^14.18.0 || >=16.10.0, npm: '>=5.10.0'}
+ hasBin: true
+
+ '@one-ini/wasm@0.1.1':
+ resolution: {integrity: sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==}
+
+ '@opensearch-project/opensearch@3.5.1':
+ resolution: {integrity: sha512-6bf+HcuERzAtHZxrm6phjref54ABse39BpkDie/YO3AUFMCBrb3SK5okKSdT5n3+nDRuEEQLhQCl0RQV3s1qpA==}
+ engines: {node: '>=14', yarn: ^1.22.10}
+
+ '@opentelemetry/api@1.9.0':
+ resolution: {integrity: sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==}
+ engines: {node: '>=8.0.0'}
+
+ '@oxc-resolver/binding-android-arm-eabi@11.13.1':
+ resolution: {integrity: sha512-YijiebZnGbKtwhLJXmUkOTS2iFF5Mh7TZb3SpVGrbgH6t2flJn7K+k78FJN7tc2lfixdlI1amkcCbTCgV+2WwQ==}
+ cpu: [arm]
+ os: [android]
+
+ '@oxc-resolver/binding-android-arm64@11.13.1':
+ resolution: {integrity: sha512-cURsasEvObw/KCi8eRuZhHiT4agR4cui6uWX8ss2z/Ok23f8W+P8fvEZD0iUMIAmHwyAxA93RxNTIKh48zK39A==}
+ cpu: [arm64]
+ os: [android]
+
+ '@oxc-resolver/binding-darwin-arm64@11.13.1':
+ resolution: {integrity: sha512-IKsn9oeVrbWpbE+PanGr5C4tRPVhVuBh/ZY8I7bbqaxBjemlgKKNGNSq73VDzQjRApJgjjzsVDgkTwTrKivLGg==}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@oxc-resolver/binding-darwin-x64@11.13.1':
+ resolution: {integrity: sha512-FW9toaDOXSLmP3lYXsXPalQKLs8eXwZCNUOPeng84MExl+ALe0Ik+sif/U6P/nqJgVdVm4MEiZcnnNtQ+Bn29Q==}
+ cpu: [x64]
+ os: [darwin]
+
+ '@oxc-resolver/binding-freebsd-x64@11.13.1':
+ resolution: {integrity: sha512-9EODydJ8P/DhEmVIdcjLnlDXAw9hot2NLuwY1/6gp3fKNXsqz3s9ch/vlDpq0CMtvjQ3Z4a2P+4IsH5A73Eh/A==}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@oxc-resolver/binding-linux-arm-gnueabihf@11.13.1':
+ resolution: {integrity: sha512-Ud/q31NNEFXVy9mwO1jbXXsuqYd8ftoweL4z9MZ5wahlncnzPYKcEGSdBfSi7TKct4KU8EdvAxi+F9wdO1dCGw==}
+ cpu: [arm]
+ os: [linux]
+
+ '@oxc-resolver/binding-linux-arm-musleabihf@11.13.1':
+ resolution: {integrity: sha512-4x/eNAoQ7Ec2n81S2akaBeDbM4ceuy8R4sd41p1ETnM5PBhvBzWSuf75vQp4K1dLyKKPe+fw+uG4eIpgzqvj8A==}
+ cpu: [arm]
+ os: [linux]
+
+ '@oxc-resolver/binding-linux-arm64-gnu@11.13.1':
+ resolution: {integrity: sha512-435Sf0a1KKjU7jgB5gcisTq6WMxQQVfsmKWAcQ3VhbXU/NpaUUZaezKmZJXNiAO1sUY6/zRJnTaPtsBq9msYlQ==}
+ cpu: [arm64]
+ os: [linux]
+
+ '@oxc-resolver/binding-linux-arm64-musl@11.13.1':
+ resolution: {integrity: sha512-Okb7KgPJvA/Db0QwdVziuYs5MZQEq9PC5MEDrBK7jmcqQL2RO+mk7oztqSegcNJ7kMyNM7Zi2cN9G69g4Cs3zg==}
+ cpu: [arm64]
+ os: [linux]
+
+ '@oxc-resolver/binding-linux-ppc64-gnu@11.13.1':
+ resolution: {integrity: sha512-HyM9+MlH7bWQtjtGzhxVMVhIuy2C1+MqavBfSMyY2d9SSdxcKvboMhl/0vTTMH/R94z8n/gP5XSJ1M6/BC30Pw==}
+ cpu: [ppc64]
+ os: [linux]
+
+ '@oxc-resolver/binding-linux-riscv64-gnu@11.13.1':
+ resolution: {integrity: sha512-ukJFu+798IzODSIupFAbouehJOLqQwhz56VlzRXi+42xtsmtZ+NLla2CXlaw1V9nMB7HLEQU1+XklkeFsIxz4g==}
+ cpu: [riscv64]
+ os: [linux]
+
+ '@oxc-resolver/binding-linux-riscv64-musl@11.13.1':
+ resolution: {integrity: sha512-gCr05/1CbuKQ/E39pzVjBLE/amtdvFpHeEd6lUOshnoInZ48g33b+1/CNyeO+B1CoiIydYGrkbyIoIeSMWzSsw==}
+ cpu: [riscv64]
+ os: [linux]
+
+ '@oxc-resolver/binding-linux-s390x-gnu@11.13.1':
+ resolution: {integrity: sha512-ojQVasxjsZGCxt+ygyipCSp74P22WdUToBLM8D9qVm/yehOtxIT8nv0FyQrc4DOpqzGPxQS2OcgvLag+9AhsFg==}
+ cpu: [s390x]
+ os: [linux]
+
+ '@oxc-resolver/binding-linux-x64-gnu@11.13.1':
+ resolution: {integrity: sha512-Vr28gTydAegrq+qmQu4IvR+LEq3A8amuHdOPSOwMM44cwpIvEDd4MmhimfEqoWjcfVZy9vpd5mPZZY6C/lHq9g==}
+ cpu: [x64]
+ os: [linux]
+
+ '@oxc-resolver/binding-linux-x64-musl@11.13.1':
+ resolution: {integrity: sha512-a2g2nv3IulLb9lHd8ZDGEnWIpNXcZviLiEKt+PHP3k3d86U1adlL5rNmImjF+eNGReTyttlX/hYNT4UIPo7IjA==}
+ cpu: [x64]
+ os: [linux]
+
+ '@oxc-resolver/binding-wasm32-wasi@11.13.1':
+ resolution: {integrity: sha512-PhvfJQG6IyI9uN1c5NAZqfl1N9lLF1XdenX+H3aHYHlADPiOgwtpQgBETSD2L3ySeR7jLzJRVFUrWEu4uDz7Lg==}
+ engines: {node: '>=14.0.0'}
+ cpu: [wasm32]
+
+ '@oxc-resolver/binding-win32-arm64-msvc@11.13.1':
+ resolution: {integrity: sha512-hyKUC0JQbTKoaPw3r9XHWHtj+B/win36VjTyKDd0OjG71UeyAhZiJBjoNJwfmnTIPcQS4YNesjNkqqDe4qN44w==}
+ cpu: [arm64]
+ os: [win32]
+
+ '@oxc-resolver/binding-win32-ia32-msvc@11.13.1':
+ resolution: {integrity: sha512-0/y+YMQJEd8kltqPTAUi1PHsYTUi/7UL8Jkhh6BODn3VBQIMMfHhyS8MH4geYJLEJUxuRxGKtya57GOTAN2WSw==}
+ cpu: [ia32]
+ os: [win32]
+
+ '@oxc-resolver/binding-win32-x64-msvc@11.13.1':
+ resolution: {integrity: sha512-0r1P/PDUD936rZShGdfnqNFdozRVgFYrcdajm1ZZ8wMoN594YkjKmlM3z3DB6arS+Bz7RhA9uLXcP74GqZ/lAw==}
+ cpu: [x64]
+ os: [win32]
+
+ '@paralleldrive/cuid2@2.3.1':
+ resolution: {integrity: sha512-XO7cAxhnTZl0Yggq6jOgjiOHhbgcO4NqFqwSmQpjK3b6TEE6Uj/jfSk6wzYyemh3+I0sHirKSetjQwn5cZktFw==}
+
+ '@pinojs/redact@0.4.0':
+ resolution: {integrity: sha512-k2ENnmBugE/rzQfEcdWHcCY+/FM3VLzH9cYEsbdsoqrvzAKRhUZeRNhAZvB8OitQJ1TBed3yqWtdjzS6wJKBwg==}
+
+ '@pkgjs/parseargs@0.11.0':
+ resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
+ engines: {node: '>=14'}
+
+ '@pkgr/core@0.2.9':
+ resolution: {integrity: sha512-QNqXyfVS2wm9hweSYD2O7F0G06uurj9kZ96TRQE5Y9hU7+tgdZwIkbAKc5Ocy1HxEY2kuDQa6cQ1WRs/O5LFKA==}
+ engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
+
+ '@playwright/test@1.56.1':
+ resolution: {integrity: sha512-vSMYtL/zOcFpvJCW71Q/OEGQb7KYBPAdKh35WNSkaZA75JlAO8ED8UN6GUNTm3drWomcbcqRPFqQbLae8yBTdg==}
+ engines: {node: '>=18'}
+ hasBin: true
+
+ '@pnpm/config.env-replace@1.1.0':
+ resolution: {integrity: sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==}
+ engines: {node: '>=12.22.0'}
+
+ '@pnpm/network.ca-file@1.0.2':
+ resolution: {integrity: sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA==}
+ engines: {node: '>=12.22.0'}
+
+ '@pnpm/npm-conf@2.3.1':
+ resolution: {integrity: sha512-c83qWb22rNRuB0UaVCI0uRPNRr8Z0FWnEIvT47jiHAmOIUHbBOg5XvV7pM5x+rKn9HRpjxquDbXYSXr3fAKFcw==}
+ engines: {node: '>=12'}
+
+ '@polka/url@1.0.0-next.29':
+ resolution: {integrity: sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==}
+
+ '@radix-ui/number@1.1.1':
resolution: {integrity: sha512-MkKCwxlXTgz6CFoJx3pCwn07GKp36+aZyu/u2Ln2VrA5DcdyCZkASEDBTd8x5whTQQL5CiYf4prXKLcgQdv29g==}
'@radix-ui/primitive@1.1.3':
@@ -4049,9 +4673,25 @@ packages:
'@selderee/plugin-htmlparser2@0.11.0':
resolution: {integrity: sha512-P33hHGdldxGabLFjPPpaTxVolMrzrcegejx+0GxjrIb9Zv48D8yAIA/QTDR2dFl7Uz7urX8aX6+5bCZslr+gWQ==}
+ '@sideway/address@4.1.5':
+ resolution: {integrity: sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==}
+
+ '@sideway/formula@3.0.1':
+ resolution: {integrity: sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==}
+
+ '@sideway/pinpoint@2.0.0':
+ resolution: {integrity: sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==}
+
+ '@sinclair/typebox@0.27.8':
+ resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==}
+
'@sinclair/typebox@0.34.41':
resolution: {integrity: sha512-6gS8pZzSXdyRHTIqoqSVknxolr1kzfy4/CeDnrzsVz8TTIWUbOBr6gnzOmTYJ3eXQNh4IYHIGi5aIL7sOZ2G/g==}
+ '@sindresorhus/is@4.6.0':
+ resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==}
+ engines: {node: '>=10'}
+
'@sindresorhus/is@5.6.0':
resolution: {integrity: sha512-TV7t8GKYaJWsn00tFDqBw8+Uqmr8A0fRU1tvTQhyZzGv0sJCGRQL3JGMI3ucuKo3XIZdUP+Lx7/gh2t3lewy7g==}
engines: {node: '>=14.16'}
@@ -4062,6 +4702,15 @@ packages:
'@sinonjs/fake-timers@13.0.5':
resolution: {integrity: sha512-36/hTbH2uaWuGVERyC6da9YwGWnzUZXuPro/F2LfsdOsLnCojz/iSH8MxUt/FD2S5XBSVPhmArFUXcpCQ2Hkiw==}
+ '@slorber/react-helmet-async@1.3.0':
+ resolution: {integrity: sha512-e9/OK8VhwUSc67diWI8Rb3I0YgI9/SBQtnhe9aEuK6MhZm7ntZZimXgwXnd8W96YTmSOb9M4d8LwhRZyhWr/1A==}
+ peerDependencies:
+ react: ^16.6.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+ react-dom: ^16.6.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+
+ '@slorber/remark-comment@1.0.0':
+ resolution: {integrity: sha512-RCE24n7jsOj1M0UPvIQCHTe7fI0sFL4S2nwKVWwHyVr/wI/H8GosgsJGyhnsZoGFnD/P2hLf1mSbrrgSLN93NA==}
+
'@smithy/abort-controller@4.2.4':
resolution: {integrity: sha512-Z4DUr/AkgyFf1bOThW2HwzREagee0sB5ycl+hDiSZOfRLW8ZgrOjDi6g8mHH19yyU5E2A/64W3z6SMIf5XiUSQ==}
engines: {node: '>=18.0.0'}
@@ -4634,9 +5283,15 @@ packages:
'@types/body-parser@1.19.6':
resolution: {integrity: sha512-HLFeCYgz89uk22N5Qg3dvGvsv46B8GLvKKo1zKG4NybA8U2DiEO3w9lqGg29t/tfLRJpJ6iQxnVw4OnB7MoM9g==}
+ '@types/bonjour@3.5.13':
+ resolution: {integrity: sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==}
+
'@types/cls-hooked@4.3.9':
resolution: {integrity: sha512-CMtHMz6Q/dkfcHarq9nioXH8BDPP+v5xvd+N90lBQ2bdmu06UvnLDqxTKoOJzz4SzIwb/x9i4UXGAAcnUDuIvg==}
+ '@types/connect-history-api-fallback@1.5.4':
+ resolution: {integrity: sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==}
+
'@types/connect@3.4.38':
resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==}
@@ -4670,6 +5325,9 @@ packages:
'@types/d3-timer@3.0.2':
resolution: {integrity: sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw==}
+ '@types/debug@4.1.12':
+ resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==}
+
'@types/ejs@3.1.5':
resolution: {integrity: sha512-nv+GSx77ZtXiJzwKdsASqi+YQ5Z7vwHsTP0JY2SiQgjGckkBRKZnk8nIM+7oUZ1VCtuTz0+By4qVR7fqzp/Dfg==}
@@ -4679,26 +5337,50 @@ packages:
'@types/eslint@9.6.1':
resolution: {integrity: sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==}
+ '@types/estree-jsx@1.0.5':
+ resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==}
+
'@types/estree@1.0.8':
resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==}
+ '@types/express-serve-static-core@4.19.7':
+ resolution: {integrity: sha512-FvPtiIf1LfhzsaIXhv/PHan/2FeQBbtBDtfX2QfvPxdUelMDEckK08SM6nqo1MIZY3RUlfA+HV8+hFUSio78qg==}
+
'@types/express-serve-static-core@5.1.0':
resolution: {integrity: sha512-jnHMsrd0Mwa9Cf4IdOzbz543y4XJepXrbia2T4b6+spXC2We3t1y6K44D3mR8XMFSXMCf3/l7rCgddfx7UNVBA==}
+ '@types/express@4.17.25':
+ resolution: {integrity: sha512-dVd04UKsfpINUnK0yBoYHDF3xu7xVH4BuDotC/xGuycx4CgbP48X/KF/586bcObxT0HENHXEU8Nqtu6NR+eKhw==}
+
'@types/express@5.0.5':
resolution: {integrity: sha512-LuIQOcb6UmnF7C1PCFmEU1u2hmiHL43fgFQX67sN3H4Z+0Yk0Neo++mFsBjhOAuLzvlQeqAAkeDOZrJs9rzumQ==}
+ '@types/gtag.js@0.0.12':
+ resolution: {integrity: sha512-YQV9bUsemkzG81Ea295/nF/5GijnD2Af7QhEofh7xu+kvCN6RdodgNwwGWXB5GMI3NoyvQo0odNctoH/qLMIpg==}
+
+ '@types/hast@3.0.4':
+ resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==}
+
+ '@types/history@4.7.11':
+ resolution: {integrity: sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==}
+
'@types/hoist-non-react-statics@3.3.7':
resolution: {integrity: sha512-PQTyIulDkIDro8P+IHbKCsw7U2xxBYflVzW/FgWdCAePD9xGSidgA76/GeJ6lBKoblyhf9pBY763gbrN+1dI8g==}
peerDependencies:
'@types/react': '*'
+ '@types/html-minifier-terser@6.1.0':
+ resolution: {integrity: sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==}
+
'@types/http-cache-semantics@4.0.4':
resolution: {integrity: sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==}
'@types/http-errors@2.0.5':
resolution: {integrity: sha512-r8Tayk8HJnX0FztbZN7oVqGccWgw98T/0neJphO91KkmOzug1KkofZURD4UaD5uH8AqcFLfdPErnBod0u71/qg==}
+ '@types/http-proxy@1.17.17':
+ resolution: {integrity: sha512-ED6LB+Z1AVylNTu7hdzuBqOgMnvG/ld6wGCG8wFnAzKX5uyW2K3WD52v0gnLCTK/VLpXtKckgWuyScYK6cSPaw==}
+
'@types/istanbul-lib-coverage@2.0.6':
resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==}
@@ -4729,6 +5411,12 @@ packages:
'@types/luxon@3.7.1':
resolution: {integrity: sha512-H3iskjFIAn5SlJU7OuxUmTEpebK6TKB8rxZShDslBMZJ5u9S//KM1sbdAisiSrqwLQncVjnpi2OK2J51h+4lsg==}
+ '@types/mdast@4.0.4':
+ resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==}
+
+ '@types/mdx@2.0.13':
+ resolution: {integrity: sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==}
+
'@types/methods@1.1.4':
resolution: {integrity: sha512-ymXWVrDiCxTBE3+RIrrP533E70eA+9qu7zdWoHuOmGujkYtzf4HQF96b8nwHLqhuf4ykX61IGRIB38CC6/sImQ==}
@@ -4744,9 +5432,15 @@ packages:
'@types/ms@2.1.0':
resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==}
+ '@types/node-forge@1.3.14':
+ resolution: {integrity: sha512-mhVF2BnD4BO+jtOp7z1CdzaK4mbuK0LLQYAvdOLqHTavxFNq4zA1EmYkpnFjP8HOUzedfQkRnp0E2ulSAYSzAw==}
+
'@types/node@14.18.63':
resolution: {integrity: sha512-fAtCfv4jJg+ExtXhvCkCqUKZ+4ok/JQk01qDKhL5BDDoS3AxKXhV5/MAVUZyQnSEd2GT92fkgZl0pz0Q0AzcIQ==}
+ '@types/node@17.0.45':
+ resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==}
+
'@types/node@22.18.13':
resolution: {integrity: sha512-Bo45YKIjnmFtv6I1TuC8AaHBbqXtIo+Om5fE4QiU1Tj8QR/qt+8O3BAtOimG5IFmwaWiPmB3Mv3jtYzBA4Us2A==}
@@ -4768,6 +5462,9 @@ packages:
'@types/passport@1.0.17':
resolution: {integrity: sha512-aciLyx+wDwT2t2/kJGJR2AEeBz0nJU4WuRX04Wu9Dqc5lSUtwu0WERPHYsLhF9PtseiAMPBGNUOtFjxZ56prsg==}
+ '@types/prismjs@1.26.5':
+ resolution: {integrity: sha512-AUZTa7hQ2KY5L7AmtSiqxlhWxb4ina0yd8hNbl4TWuqnv/pFP0nDMb3YrfSBf4hJVGLh2YEIBfKaBW/9UEl6IQ==}
+
'@types/prompts@2.4.9':
resolution: {integrity: sha512-qTxFi6Buiu8+50/+3DGIWLHM6QuWsEKugJnnP6iv2Mc4ncxE4A/OJkjuVOA+5X0X1S/nq5VJRa8Lu+nwcvbrKA==}
@@ -4785,6 +5482,15 @@ packages:
peerDependencies:
'@types/react': ^19.2.0
+ '@types/react-router-config@5.0.11':
+ resolution: {integrity: sha512-WmSAg7WgqW7m4x8Mt4N6ZyKz0BubSj/2tVUMsAHp+Yd2AMwcSbeFq9WympT19p5heCFmF97R9eD5uUR/t4HEqw==}
+
+ '@types/react-router-dom@5.3.3':
+ resolution: {integrity: sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==}
+
+ '@types/react-router@5.1.20':
+ resolution: {integrity: sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==}
+
'@types/react-transition-group@4.4.12':
resolution: {integrity: sha512-8TV6R3h2j7a91c+1DXdJi3Syo69zzIZbz7Lg5tORM5LEJG7X/E6a1V3drRyBRZq7/utz7A+c4OgYLiLcYGHG6w==}
peerDependencies:
@@ -4793,15 +5499,27 @@ packages:
'@types/react@19.2.2':
resolution: {integrity: sha512-6mDvHUFSjyT2B2yeNx2nUgMxh9LtOWvkhIU3uePn2I2oyNymUAX1NIsdgviM4CH+JSrp2D2hsMvJOkxY+0wNRA==}
+ '@types/retry@0.12.0':
+ resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==}
+
+ '@types/sax@1.2.7':
+ resolution: {integrity: sha512-rO73L89PJxeYM3s3pPPjiPgVVcymqU490g0YO5n5By0k2Erzj6tay/4lr1CHAAU4JyOWd1rpQ8bCf6cZfHU96A==}
+
'@types/send@0.17.6':
resolution: {integrity: sha512-Uqt8rPBE8SY0RK8JB1EzVOIZ32uqy8HwdxCnoCOsYrvnswqmFZ/k+9Ikidlk/ImhsdvBsloHbAlewb2IEBV/Og==}
'@types/send@1.2.1':
resolution: {integrity: sha512-arsCikDvlU99zl1g69TcAB3mzZPpxgw0UQnaHeC1Nwb015xp8bknZv5rIfri9xTOcMuaVgvabfIRA7PSZVuZIQ==}
+ '@types/serve-index@1.9.4':
+ resolution: {integrity: sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==}
+
'@types/serve-static@1.15.10':
resolution: {integrity: sha512-tRs1dB+g8Itk72rlSI2ZrW6vZg0YrLI81iQSTkMmOqnqCaNr/8Ek4VwWcN5vZgCYWbg/JJSGBlUaYGAOP73qBw==}
+ '@types/sockjs@0.3.36':
+ resolution: {integrity: sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==}
+
'@types/stack-utils@2.0.3':
resolution: {integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==}
@@ -4814,12 +5532,21 @@ packages:
'@types/tough-cookie@4.0.5':
resolution: {integrity: sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==}
+ '@types/unist@2.0.11':
+ resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==}
+
+ '@types/unist@3.0.3':
+ resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==}
+
'@types/use-sync-external-store@0.0.6':
resolution: {integrity: sha512-zFDAD+tlpf2r4asuHEj0XH6pY6i0g5NeAHPn+15wk3BV6JA69eERFXC1gyGThDkVa1zCyKr5jox1+2LbV/AMLg==}
'@types/validator@13.15.4':
resolution: {integrity: sha512-LSFfpSnJJY9wbC0LQxgvfb+ynbHftFo0tMsFOl/J4wexLnYMmDSPaj2ZyDv3TkfL1UePxPrxOWJfbiRS8mQv7A==}
+ '@types/ws@8.18.1':
+ resolution: {integrity: sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==}
+
'@types/yargs-parser@21.0.3':
resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==}
@@ -5093,6 +5820,10 @@ packages:
abstract-logging@2.0.1:
resolution: {integrity: sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==}
+ accepts@1.3.8:
+ resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==}
+ engines: {node: '>= 0.6'}
+
accepts@2.0.0:
resolution: {integrity: sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng==}
engines: {node: '>= 0.6'}
@@ -5122,10 +5853,18 @@ packages:
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@7.1.4:
resolution: {integrity: sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==}
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:
@@ -5162,6 +5901,15 @@ packages:
resolution: {integrity: sha512-XppPf2S42nO2WhvKzlwzlfcApcXHzjlod30pKmcWjRgLOtqoe5DMuqdiYoM6AgyXksc6A6pV4v1L/WW217e57w==}
engines: {node: '>=0.8.0'}
+ algoliasearch-helper@3.26.1:
+ resolution: {integrity: sha512-CAlCxm4fYBXtvc5MamDzP6Svu8rW4z9me4DCBY1rQ2UDJ0u0flWmusQ8M3nOExZsLLRcUwUPoRAPMrhzOG3erw==}
+ peerDependencies:
+ algoliasearch: '>= 3.1 < 6'
+
+ algoliasearch@5.43.0:
+ resolution: {integrity: sha512-hbkK41JsuGYhk+atBDxlcKxskjDCh3OOEDpdKZPtw+3zucBqhlojRG5e5KtCmByGyYvwZswVeaSWglgLn2fibg==}
+ engines: {node: '>= 14.0.0'}
+
ansi-align@3.0.1:
resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==}
@@ -5173,6 +5921,11 @@ packages:
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@5.0.1:
resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
engines: {node: '>=8'}
@@ -5257,6 +6010,9 @@ packages:
resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==}
engines: {node: '>= 0.4'}
+ array-flatten@1.1.1:
+ resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==}
+
array-includes@3.1.9:
resolution: {integrity: sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==}
engines: {node: '>= 0.4'}
@@ -5264,6 +6020,10 @@ packages:
array-timsort@1.0.3:
resolution: {integrity: sha512-/+3GRL7dDAGEfM6TseQk/U+mi18TU2Ms9I3UlLdUMhz2hbvGNTKdj9xniwXfUqgYhHxRx0+8UnKkvlNwVU+cWQ==}
+ array-union@2.1.0:
+ resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
+ engines: {node: '>=8'}
+
array.prototype.findlast@1.2.5:
resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==}
engines: {node: '>= 0.4'}
@@ -5297,6 +6057,10 @@ packages:
ast-types-flow@0.0.8:
resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==}
+ astring@1.9.0:
+ resolution: {integrity: sha512-LElXdjswlqjWrPpJFg1Fx4wpkOCxj1TDHlSV4PlaRxHGWko024xICaa97ZkMfs6DRKlCguiAI+rbXv5GWwXIkg==}
+ hasBin: true
+
async-function@1.0.0:
resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==}
engines: {node: '>= 0.4'}
@@ -5311,6 +6075,10 @@ packages:
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'}
+
atomic-sleep@1.0.0:
resolution: {integrity: sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==}
engines: {node: '>=8.0.0'}
@@ -5366,6 +6134,16 @@ packages:
peerDependencies:
'@babel/core': ^7.11.0 || ^8.0.0-0
+ babel-loader@9.2.1:
+ resolution: {integrity: sha512-fqe8naHt46e0yIdkjUZYqddSXfej3AHajX+CSO5X7oy0EmPc6o5Xh+RClNoHjnieWz9AW4kZxW9yyFMhVB1QLA==}
+ engines: {node: '>= 14.15.0'}
+ peerDependencies:
+ '@babel/core': ^7.12.0
+ webpack: '>=5'
+
+ babel-plugin-dynamic-import-node@2.3.3:
+ resolution: {integrity: sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==}
+
babel-plugin-istanbul@7.0.1:
resolution: {integrity: sha512-D8Z6Qm8jCvVXtIRkBnqNHX0zJ37rQcFJ9u8WOS6tkYOsRdHBzypCstaxWiu5ZIlqQtviRYbgnRLSoCEvjqcqbA==}
engines: {node: '>=12'}
@@ -5408,6 +6186,9 @@ packages:
resolution: {integrity: sha512-GAwkz0AihzY5bkwIY5QDR+LvsRQgB/B+1foMPvi0FZPMl5fjD7ICiznUiBdLYMH1QYe6vqu4gWYytZOccLouFw==}
engines: {node: '>= 10.0.0'}
+ bail@2.0.2:
+ resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==}
+
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
@@ -5426,6 +6207,9 @@ packages:
resolution: {integrity: sha512-2NovHVesVF5TXefsGX1yzx1xgr7+m9JQenvz6FQY3qd+YXkKkYiv+vTCc7OriP9mcDZpTC5mAOYN4ocd29+erA==}
hasBin: true
+ batch@0.6.1:
+ resolution: {integrity: sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==}
+
bcrypt@6.0.0:
resolution: {integrity: sha512-cU8v/EGSrnH+HnxV2z0J7/blxH8gq7Xh2JFT6Aroax7UohdmiJJlxApMxtKfuI7z68NvvVcmR78k2LbT6efhRg==}
engines: {node: '>= 18'}
@@ -5434,6 +6218,9 @@ packages:
resolution: {integrity: sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==}
engines: {node: '>=0.6'}
+ big.js@5.2.2:
+ resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==}
+
bin-version-check@5.1.0:
resolution: {integrity: sha512-bYsvMqJ8yNGILLz1KP9zKLzQ6YpljV3ln1gqhuLkUtyfGi3qXKGuK2p+U4NAvjVFzDFiBBtOpCOSFNuYYEGZ5g==}
engines: {node: '>=12'}
@@ -5458,10 +6245,17 @@ packages:
bluebird@3.4.7:
resolution: {integrity: sha512-iD3898SR7sWVRHbiQv+sHUtHnMvC1o3nW5rAcqnq3uOn07DSAppZYUkIGslDz6gXC7HfunPe7YVBgoEJASPcHA==}
+ body-parser@1.20.3:
+ resolution: {integrity: sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==}
+ engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
+
body-parser@2.2.0:
resolution: {integrity: sha512-02qvAaxv8tp7fBa/mw1ga98OGm+eCbqzJOKoRt70sLmfEEi+jyBYVTDGfCL/k06/4EMk/z01gCe7HoCH/f2LTg==}
engines: {node: '>=18'}
+ bonjour-service@1.3.0:
+ resolution: {integrity: sha512-3YuAUiSkWykd+2Azjgyxei8OWf8thdn8AITIog2M4UICzoqfjlqr64WIjEXZllf/W6vK1goqleSR6brGomxQqA==}
+
boolbase@1.0.0:
resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
@@ -5472,6 +6266,14 @@ packages:
resolution: {integrity: sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==}
engines: {node: '>=10'}
+ boxen@6.2.1:
+ resolution: {integrity: sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ boxen@7.1.1:
+ resolution: {integrity: sha512-2hCgjEmP8YLWQ130n2FerGv7rYpfBmnmp9Uy2Le1vge6X3gZIfSmEzP5QTDElFxcvVcXlEn8Aq6MU/PZygIOog==}
+ engines: {node: '>=14.16'}
+
brace-expansion@1.1.12:
resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==}
@@ -5527,6 +6329,10 @@ packages:
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'}
@@ -5562,6 +6368,9 @@ packages:
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'}
@@ -5574,12 +6383,19 @@ packages:
resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==}
engines: {node: '>=10'}
- caniuse-lite@1.0.30001753:
- resolution: {integrity: sha512-Bj5H35MD/ebaOV4iDLqPEtiliTN29qkGtEHCwawWn4cYm+bPJM2NsaP30vtZcnERClMzp52J4+aw2UNbK4o+zw==}
+ camelcase@7.0.1:
+ resolution: {integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==}
+ engines: {node: '>=14.16'}
+
+ caniuse-api@3.0.0:
+ resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==}
caniuse-lite@1.0.30001754:
resolution: {integrity: sha512-x6OeBXueoAceOmotzx3PO4Zpt4rzpeIFsSr6AAePTZxSkXiYDUmpypEl7e2+8NCd9bD7bXjqyef8CJYPC1jfxg==}
+ ccount@2.0.1:
+ resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==}
+
chainsaw@0.1.0:
resolution: {integrity: sha512-75kWfWt6MEKNC8xYXIdRpDehRYY/tNSgwKaJq+dbbDcxORuVrrQ+SEHoWsniVn9XPYfP4gmdWIeDk/4YNp1rNQ==}
@@ -5591,6 +6407,10 @@ packages:
resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
engines: {node: '>=10'}
+ chalk@5.6.2:
+ resolution: {integrity: sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==}
+ engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
+
change-case@5.4.4:
resolution: {integrity: sha512-HRQyTk2/YPEkt9TnUPbOpr64Uw3KOicFWPVBb+xiHvd6eBx/qPr9xqfBFDT8P2vWsvvz4jbEkfDe71W3VyNu2w==}
@@ -5598,9 +6418,21 @@ packages:
resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==}
engines: {node: '>=10'}
+ character-entities-html4@2.1.0:
+ resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==}
+
+ character-entities-legacy@3.0.0:
+ resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==}
+
+ character-entities@2.0.2:
+ resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==}
+
character-parser@2.2.0:
resolution: {integrity: sha512-+UqJQjFEFaTAs3bNsF2j2kEN1baG/zghZbdqoYEDxGZtJo9LBzl1A+m0D4n3qKx8N2FNv8/Xp6yV9mQmBuptaw==}
+ character-reference-invalid@2.0.1:
+ resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==}
+
chardet@2.1.1:
resolution: {integrity: sha512-PsezH1rqdV9VvyNhxxOW32/d75r01NY7TQCmOqomRo15ZSOKbpTFVsfjghxo6JloQUCGnH4k1LGu0R4yCLlWQQ==}
@@ -5660,10 +6492,22 @@ packages:
resolution: {integrity: sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==}
engines: {node: '>= 4.0'}
+ 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-boxes@2.2.1:
resolution: {integrity: sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==}
engines: {node: '>=6'}
+ cli-boxes@3.0.0:
+ resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==}
+ engines: {node: '>=10'}
+
cli-cursor@3.1.0:
resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==}
engines: {node: '>=8'}
@@ -5687,6 +6531,10 @@ packages:
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'}
@@ -5709,6 +6557,9 @@ packages:
resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==}
engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'}
+ collapse-white-space@2.1.0:
+ resolution: {integrity: sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw==}
+
collect-v8-coverage@1.0.3:
resolution: {integrity: sha512-1L5aqIkwPfiodaMgQunkF1zRhNqifHBmtbbbxcr6yVxxBnliw4TDOW6NxpO8DJLgJ16OT+Y4ztZqP6p/FtXnAw==}
@@ -5719,16 +6570,26 @@ packages:
color-name@1.1.4:
resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
+ colord@2.9.3:
+ resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==}
+
colorette@1.4.0:
resolution: {integrity: sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==}
colorette@2.0.20:
resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==}
+ combine-promises@1.2.0:
+ resolution: {integrity: sha512-VcQB1ziGD0NXrhKxiwyNbCDmRzs/OShMs2GqW2DlU2A/Sd0nQxE1oWDAE5O0ygSx5mgQOn9eIFh7yKPgFRVkPQ==}
+ engines: {node: '>=10'}
+
combined-stream@1.0.8:
resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}
engines: {node: '>= 0.8'}
+ comma-separated-tokens@2.0.3:
+ resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==}
+
commander@10.0.1:
resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==}
engines: {node: '>=14'}
@@ -5744,6 +6605,10 @@ packages:
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'}
@@ -5760,6 +6625,9 @@ packages:
resolution: {integrity: sha512-r1To31BQD5060QdkC+Iheai7gHwoSZobzunqkf2/kQ6xIAfJyrKNAFUwdKvkK7Qgu7pVTKQEa7ok7Ed3ycAJgg==}
engines: {node: '>= 6'}
+ 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==}
@@ -5770,6 +6638,14 @@ packages:
resolution: {integrity: sha512-D3uMHtGc/fcO1Gt1/L7i1e33VOvD4A9hfQLP+6ewd+BvG/gQ84Yh4oftEhAdjSMgBgwGL+jsppT7JYNpo6MHHg==}
engines: {node: '>= 10'}
+ compressible@2.0.18:
+ resolution: {integrity: sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==}
+ engines: {node: '>= 0.6'}
+
+ compression@1.8.1:
+ resolution: {integrity: sha512-9mAqGPHLakhCLeNyxPkK4xVo746zQ/czLH1Ky+vkitMnWfWZps8r0qXuwhwizagCRttsL4lfG4pIOvaWLpAP0w==}
+ engines: {node: '>= 0.8.0'}
+
concat-map@0.0.1:
resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
@@ -5783,6 +6659,14 @@ packages:
config-chain@1.1.13:
resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==}
+ configstore@6.0.0:
+ resolution: {integrity: sha512-cD31W1v3GqUlQvbBCGcXmd2Nj9SvLDOP1oQ0YFuLETufzSPaKp11rYBsSOm7rCsW3OnIRAFM3OxRhceaXNYHkA==}
+ engines: {node: '>=12'}
+
+ connect-history-api-fallback@2.0.0:
+ resolution: {integrity: sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==}
+ engines: {node: '>=0.8'}
+
consola@3.4.2:
resolution: {integrity: sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==}
engines: {node: ^14.18.0 || >=16.10.0}
@@ -5790,6 +6674,10 @@ packages:
constantinople@4.0.1:
resolution: {integrity: sha512-vCrqcSIq4//Gx74TXXCGnHpulY1dskqLTFGDmhrGxzeXL8lF8kvXv6mpNWlJj1uD4DW23D4ljAqbY4RRaaUZIw==}
+ content-disposition@0.5.2:
+ resolution: {integrity: sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==}
+ engines: {node: '>= 0.6'}
+
content-disposition@0.5.4:
resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==}
engines: {node: '>= 0.6'}
@@ -5808,10 +6696,17 @@ packages:
convert-source-map@2.0.0:
resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
+ cookie-signature@1.0.6:
+ resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==}
+
cookie-signature@1.2.2:
resolution: {integrity: sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg==}
engines: {node: '>=6.6.0'}
+ cookie@0.7.1:
+ resolution: {integrity: sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==}
+ engines: {node: '>= 0.6'}
+
cookie@0.7.2:
resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==}
engines: {node: '>= 0.6'}
@@ -5829,9 +6724,19 @@ packages:
next: '>=15.0.0'
react: '>= 16.8.0'
+ copy-text-to-clipboard@3.2.2:
+ resolution: {integrity: sha512-T6SqyLd1iLuqPA90J5N4cTalrtovCySh58iiZDGJ6FGznbclKh4UI+FGacQSgFzwKG77W7XT5gwbVEbd9cIH1A==}
+ engines: {node: '>=12'}
+
copy-to-clipboard@3.3.3:
resolution: {integrity: sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==}
+ copy-webpack-plugin@11.0.0:
+ resolution: {integrity: sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==}
+ engines: {node: '>= 14.15.0'}
+ peerDependencies:
+ webpack: ^5.1.0
+
core-js-compat@3.46.0:
resolution: {integrity: sha512-p9hObIIEENxSV8xIu+V68JjSeARg6UVMG5mR+JEUguG3sI6MsiS1njz2jHmyJDvA+8jX/sytkBHup6kxhM9law==}
@@ -5848,6 +6753,10 @@ packages:
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'}
@@ -5889,8 +6798,76 @@ packages:
resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
engines: {node: '>= 8'}
- css-in-js-utils@3.1.0:
- resolution: {integrity: sha512-fJAcud6B3rRu+KHYk+Bwf+WFL2MDCJJ1XG9x137tJQ0xYxor7XziQtuGFbWNdqrvF4Tk26O3H73nfVqXt/fW1A==}
+ crypto-random-string@4.0.0:
+ resolution: {integrity: sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==}
+ engines: {node: '>=12'}
+
+ css-blank-pseudo@7.0.1:
+ resolution: {integrity: sha512-jf+twWGDf6LDoXDUode+nc7ZlrqfaNphrBIBrcmeP3D8yw1uPaix1gCC8LUQUGQ6CycuK2opkbFFWFuq/a94ag==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ css-declaration-sorter@7.3.0:
+ resolution: {integrity: sha512-LQF6N/3vkAMYF4xoHLJfG718HRJh34Z8BnNhd6bosOMIVjMlhuZK5++oZa3uYAgrI5+7x2o27gUqTR2U/KjUOQ==}
+ engines: {node: ^14 || ^16 || >=18}
+ peerDependencies:
+ postcss: ^8.0.9
+
+ css-has-pseudo@7.0.3:
+ resolution: {integrity: sha512-oG+vKuGyqe/xvEMoxAQrhi7uY16deJR3i7wwhBerVrGQKSqUC5GiOVxTpM9F9B9hw0J+eKeOWLH7E9gZ1Dr5rA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ css-in-js-utils@3.1.0:
+ resolution: {integrity: sha512-fJAcud6B3rRu+KHYk+Bwf+WFL2MDCJJ1XG9x137tJQ0xYxor7XziQtuGFbWNdqrvF4Tk26O3H73nfVqXt/fW1A==}
+
+ css-loader@6.11.0:
+ resolution: {integrity: sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==}
+ 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-minimizer-webpack-plugin@5.0.1:
+ resolution: {integrity: sha512-3caImjKFQkS+ws1TGcFn0V1HyDJFq1Euy589JlD6/3rV2kj+w7r5G9WDMgSHvpvXHNZ2calVypZWuEDQd9wfLg==}
+ engines: {node: '>= 14.15.0'}
+ peerDependencies:
+ '@parcel/css': '*'
+ '@swc/css': '*'
+ clean-css: '*'
+ csso: '*'
+ esbuild: '*'
+ lightningcss: '*'
+ webpack: ^5.0.0
+ peerDependenciesMeta:
+ '@parcel/css':
+ optional: true
+ '@swc/css':
+ optional: true
+ clean-css:
+ optional: true
+ csso:
+ optional: true
+ esbuild:
+ optional: true
+ lightningcss:
+ optional: true
+
+ css-prefers-color-scheme@10.0.0:
+ resolution: {integrity: sha512-VCtXZAWivRglTZditUfB4StnsWr6YVZ2PRtuxQLKTNRdtAf8tpzaVPE9zXIF3VaSc7O70iK/j1+NXxyQCqdPjQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ css-select@4.3.0:
+ resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==}
css-select@5.2.2:
resolution: {integrity: sha512-TizTzUddG/xYLA3NXodFM0fSbNizXjOKhqiQQwvhlspadZokn1KDy0NZFS0wuEubIYAV5/c1/lAr0TaaFXEXzw==}
@@ -5914,11 +6891,38 @@ packages:
css.escape@1.5.1:
resolution: {integrity: sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==}
+ cssdb@8.4.2:
+ resolution: {integrity: sha512-PzjkRkRUS+IHDJohtxkIczlxPPZqRo0nXplsYXOMBRPjcVRjj1W4DfvRgshUYTVuUigU7ptVYkFJQ7abUB0nyg==}
+
cssesc@3.0.0:
resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
engines: {node: '>=4'}
hasBin: true
+ cssnano-preset-advanced@6.1.2:
+ resolution: {integrity: sha512-Nhao7eD8ph2DoHolEzQs5CfRpiEP0xa1HBdnFZ82kvqdmbwVBUr2r1QuQ4t1pi+D1ZpqpcO4T+wy/7RxzJ/WPQ==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ cssnano-preset-default@6.1.2:
+ resolution: {integrity: sha512-1C0C+eNaeN8OcHQa193aRgYexyJtU8XwbdieEjClw+J9d94E41LwT6ivKH0WT+fYwYWB0Zp3I3IZ7tI/BbUbrg==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ cssnano-utils@4.0.2:
+ resolution: {integrity: sha512-ZR1jHg+wZ8o4c3zqf1SIUSTIvm/9mU343FMR6Obe/unskbvpGhZOo1J6d/r8D1pzkRQYuwbcH3hToOuoA2G7oQ==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ cssnano@6.1.2:
+ resolution: {integrity: sha512-rYk5UeX7VAM/u0lNqewCdasdtPK81CgX8wJFLEIXHbV2oldWRgJAsZrdhRXkV1NJzA2g850KiFm9mMU2HxNxMA==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
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'}
@@ -6002,6 +7006,17 @@ packages:
dayjs@1.11.19:
resolution: {integrity: sha512-t5EcLVS6QPBNqM2z8fakk/NKel+Xzshgt8FFKAn+qwlD1pzZWxh0nVCrvFK7ZDb6XucZeF9z8C7CBWTRIVApAw==}
+ debounce@1.2.1:
+ resolution: {integrity: sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==}
+
+ 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:
@@ -6025,6 +7040,9 @@ packages:
decimal.js@10.6.0:
resolution: {integrity: sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==}
+ decode-named-character-reference@1.2.0:
+ resolution: {integrity: sha512-c6fcElNV6ShtZXmsgNgFFV5tVX2PaV4g+MOAkb8eXHvn6sryJBrZa9r0zV6+dtTyoCKxtDy5tyQ5ZwQuidtd+Q==}
+
decompress-response@6.0.0:
resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==}
engines: {node: '>=10'}
@@ -6048,6 +7066,10 @@ packages:
resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==}
engines: {node: '>=0.10.0'}
+ default-gateway@6.0.3:
+ resolution: {integrity: sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==}
+ engines: {node: '>= 10'}
+
defaults@1.0.4:
resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==}
@@ -6063,10 +7085,18 @@ packages:
resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==}
engines: {node: '>= 0.4'}
+ define-lazy-prop@2.0.0:
+ resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==}
+ engines: {node: '>=8'}
+
define-properties@1.2.1:
resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==}
engines: {node: '>= 0.4'}
+ 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'}
@@ -6075,6 +7105,10 @@ packages:
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'}
@@ -6083,6 +7117,10 @@ packages:
resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
engines: {node: '>=6'}
+ 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'}
@@ -6101,6 +7139,19 @@ packages:
detect-node@2.1.0:
resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==}
+ detect-port-alt@1.1.6:
+ resolution: {integrity: sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==}
+ engines: {node: '>= 4.2.1'}
+ hasBin: true
+
+ detect-port@1.6.1:
+ resolution: {integrity: sha512-CmnVc+Hek2egPx1PeTFVta2W78xy2K/9Rkf6cC4T59S50tVnzKj+tnx5mmx5lwvCkujZ4uRrpRSuV+IVs3f90Q==}
+ engines: {node: '>= 4.0.0'}
+ hasBin: true
+
+ devlop@1.1.0:
+ resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==}
+
dezalgo@1.0.4:
resolution: {integrity: sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==}
@@ -6111,6 +7162,10 @@ packages:
resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==}
engines: {node: '>=0.3.1'}
+ dir-glob@3.0.1:
+ resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
+ engines: {node: '>=8'}
+
display-notification@2.0.0:
resolution: {integrity: sha512-TdmtlAcdqy1NU+j7zlkDdMnCL878zriLaBmoD9quOoq1ySSSGv03l0hXK5CvIFZlIfFI/hizqdQuW+Num7xuhw==}
engines: {node: '>=4'}
@@ -6118,6 +7173,10 @@ packages:
dlv@1.1.3:
resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==}
+ dns-packet@5.6.1:
+ resolution: {integrity: sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==}
+ engines: {node: '>=6'}
+
doctrine@2.1.0:
resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==}
engines: {node: '>=0.10.0'}
@@ -6131,6 +7190,9 @@ packages:
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==}
@@ -6164,6 +7226,10 @@ packages:
dot-case@3.0.4:
resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==}
+ dot-prop@6.0.1:
+ resolution: {integrity: sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==}
+ engines: {node: '>=10'}
+
dotenv-expand@12.0.1:
resolution: {integrity: sha512-LaKRbou8gt0RNID/9RoI+J2rvXsBRPMV7p+ElHlPhcSARbCPDYcYG2s1TIzAfWv4YSgyY5taidWzzs31lNV3yQ==}
engines: {node: '>=12'}
@@ -6191,6 +7257,9 @@ packages:
duplexer2@0.1.4:
resolution: {integrity: sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==}
+ duplexer@0.1.2:
+ resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==}
+
eastasianwidth@0.2.0:
resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
@@ -6226,6 +7295,20 @@ packages:
emoji-regex@9.2.2:
resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
+ emojilib@2.4.0:
+ resolution: {integrity: sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==}
+
+ emojis-list@3.0.0:
+ resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==}
+ engines: {node: '>= 4'}
+
+ emoticon@4.1.0:
+ resolution: {integrity: sha512-VWZfnxqwNcc51hIy/sbOdEem6D+cVtpPzEEtVAFdaas30+1dgkyaOQ4sQ6Bp0tOMqWO1v+HQfYaoodOkdhK6SQ==}
+
+ encodeurl@1.0.2:
+ resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==}
+ engines: {node: '>= 0.8'}
+
encodeurl@2.0.0:
resolution: {integrity: sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==}
engines: {node: '>= 0.8'}
@@ -6296,6 +7379,12 @@ packages:
es-toolkit@1.41.0:
resolution: {integrity: sha512-bDd3oRmbVgqZCJS6WmeQieOrzpl3URcWBUVDXxOELlUW2FuW+0glPOz1n0KnRie+PdyvUZcXz2sOn00c6pPRIA==}
+ esast-util-from-estree@2.0.0:
+ resolution: {integrity: sha512-4CyanoAudUSBAn5K13H4JhsMH6L9ZP7XbLVe/dKybkxMO7eDyLsT8UHl9TRNrU2Gr9nz+FovfSIjuXWJ81uVwQ==}
+
+ esast-util-from-js@2.0.1:
+ resolution: {integrity: sha512-8Ja+rNJ0Lt56Pcf3TAmpBZjmx8ZcK5Ts4cAzIOjsjevg9oSXJnl6SUQ2EevU8tv3h6ZLWmoKL5H4fgWvdvfETw==}
+
esbuild@0.25.12:
resolution: {integrity: sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==}
engines: {node: '>=18'}
@@ -6309,6 +7398,10 @@ packages:
resolution: {integrity: sha512-w3PwNZJwRxlp47QGzhuEBldEqVHHhh8/tIPcl6ecf2Bou99cdAt0knihBV0Ecc7CGxYduXVBDheH1K2oADRlvw==}
engines: {node: '>=10'}
+ escape-goat@4.0.0:
+ resolution: {integrity: sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg==}
+ engines: {node: '>=12'}
+
escape-html@1.0.3:
resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==}
@@ -6316,6 +7409,10 @@ packages:
resolution: {integrity: sha512-4/hFwoYaC6TkpDn9A3pTC52zQPArFeXuIfhUtCGYdauTzXVP9H3BDr3oO/QzQehMpLDC7srvYgfwvImPFGfvBA==}
engines: {node: '>=0.10.0'}
+ 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'}
@@ -6324,6 +7421,10 @@ packages:
resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
engines: {node: '>=10'}
+ escape-string-regexp@5.0.0:
+ resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
+ engines: {node: '>=12'}
+
eslint-import-resolver-node@0.3.9:
resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==}
@@ -6451,20 +7552,55 @@ packages:
resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
engines: {node: '>=4.0'}
+ estree-util-attach-comments@3.0.0:
+ resolution: {integrity: sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==}
+
+ estree-util-build-jsx@3.0.1:
+ resolution: {integrity: sha512-8U5eiL6BTrPxp/CHbs2yMgP8ftMhR5ww1eIKoWRMlqvltHF8fZn5LRDvTKuxD3DUn+shRbLGqXemcP51oFCsGQ==}
+
+ estree-util-is-identifier-name@3.0.0:
+ resolution: {integrity: sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==}
+
+ estree-util-scope@1.0.0:
+ resolution: {integrity: sha512-2CAASclonf+JFWBNJPndcOpA8EMJwa0Q8LUFJEKqXLW6+qBvbFZuF5gItbQOs/umBUkjviCSDCbBwU2cXbmrhQ==}
+
+ estree-util-to-js@2.0.0:
+ resolution: {integrity: sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg==}
+
+ estree-util-value-to-estree@3.5.0:
+ resolution: {integrity: sha512-aMV56R27Gv3QmfmF1MY12GWkGzzeAezAX+UplqHVASfjc9wNzI/X6hC0S9oxq61WT4aQesLGslWP9tKk6ghRZQ==}
+
+ estree-util-visit@2.0.0:
+ resolution: {integrity: sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww==}
+
estree-walker@2.0.2:
resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
+ estree-walker@3.0.3:
+ resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==}
+
esutils@2.0.3:
resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
engines: {node: '>=0.10.0'}
+ eta@2.2.0:
+ resolution: {integrity: sha512-UVQ72Rqjy/ZKQalzV5dCCJP80GrmPrMxh6NlNf+erV6ObL0ZFkhCstWRawS85z3smdr3d2wXPsZEY7rDPfGd2g==}
+ engines: {node: '>=6.0.0'}
+
etag@1.8.1:
resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==}
engines: {node: '>= 0.6'}
+ eval@0.1.8:
+ resolution: {integrity: sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==}
+ engines: {node: '>= 0.8'}
+
eventemitter2@6.4.9:
resolution: {integrity: sha512-JEPTiaOt9f04oa6NOkc4aH+nVp5I3wEjpHbIPqfgCdD5v5bUzy7xQqwcVO2aDQgOWhI28da57HksMrzK9HlRxg==}
+ eventemitter3@4.0.7:
+ resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==}
+
eventemitter3@5.0.1:
resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==}
@@ -6495,6 +7631,10 @@ packages:
resolution: {integrity: sha512-u/feCi0GPsI+988gU2FLcsHyAHTU0MX1Wg68NhAnN7z/+C5wqG+CY8J53N9ioe8RXgaoz0nBR/TYMf3AycUuPw==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ express@4.21.2:
+ resolution: {integrity: sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==}
+ engines: {node: '>= 0.10.0'}
+
express@5.1.0:
resolution: {integrity: sha512-DT9ck5YIRU+8GYzzU5kT3eHGA5iL+1Zd0EutOmTE9Dtk+Tvuzd23VBU+ec7HPNSTxXYO55gPV/hq4pSBJDjFpA==}
engines: {node: '>= 18'}
@@ -6510,6 +7650,13 @@ packages:
extend-object@1.0.0:
resolution: {integrity: sha512-0dHDIXC7y7LDmCh/lp1oYkmv73K25AMugQI07r8eFopkW6f7Ufn1q+ETMsJjnV9Am14SlElkqy3O92r6xEaxPw==}
+ extend-shallow@2.0.1:
+ resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==}
+ engines: {node: '>=0.10.0'}
+
+ extend@3.0.2:
+ resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==}
+
fast-copy@3.0.2:
resolution: {integrity: sha512-dl0O9Vhju8IrcLndv2eU4ldt1ftXMqqfgN4H1cpmGV7P6jeB9FwpN9a2c8DPGE1Ys88rNUJVYDHq73CGAGOPfQ==}
@@ -6578,6 +7725,13 @@ packages:
fastq@1.19.1:
resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==}
+ fault@2.0.1:
+ resolution: {integrity: sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==}
+
+ faye-websocket@0.11.4:
+ resolution: {integrity: sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==}
+ engines: {node: '>=0.8.0'}
+
fb-watchman@2.0.2:
resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==}
@@ -6590,13 +7744,27 @@ packages:
picomatch:
optional: true
+ feed@4.2.2:
+ resolution: {integrity: sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ==}
+ engines: {node: '>=0.4.0'}
+
fflate@0.8.2:
resolution: {integrity: sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==}
+ figures@3.2.0:
+ resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==}
+ engines: {node: '>=8'}
+
file-entry-cache@8.0.0:
resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==}
engines: {node: '>=16.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-type@20.5.0:
resolution: {integrity: sha512-BfHZtG/l9iMm4Ecianu7P8HRD2tBHLtjXinm4X62XBOYzi7CYA7jyqfJzOvXHqzVrVPYqBo2/GvbARMaaJkKVg==}
engines: {node: '>=18'}
@@ -6616,14 +7784,26 @@ packages:
resolution: {integrity: sha512-vqIlNogKeyD3yzrm0yhRMQg8hOVwYcYRfjEoODd49iCprMn4HL85gK3HcykQE53EPIpX3HcAbGA5ELQv216dAQ==}
engines: {node: '>=16'}
+ filesize@8.0.7:
+ resolution: {integrity: sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==}
+ engines: {node: '>= 0.4.0'}
+
fill-range@7.1.1:
resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
engines: {node: '>=8'}
+ finalhandler@1.3.1:
+ resolution: {integrity: sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==}
+ engines: {node: '>= 0.8'}
+
finalhandler@2.1.0:
resolution: {integrity: sha512-/t88Ty3d5JWQbWYgaOGCCYfXRwV1+be02WqYYlL6h0lEiUAMPM8o8qKGO01YIkOHzka2up08wvgYD0mDiI+q3Q==}
engines: {node: '>= 0.8'}
+ find-cache-dir@4.0.0:
+ resolution: {integrity: sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==}
+ engines: {node: '>=14.16'}
+
find-my-way@9.3.0:
resolution: {integrity: sha512-eRoFWQw+Yv2tuYlK2pjFS2jGXSxSppAs3hSQjfxVKxM5amECzIgYYc1FEI8ZmhSh/Ig+FrKEz43NLRKJjYCZVg==}
engines: {node: '>=20'}
@@ -6631,6 +7811,10 @@ packages:
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'}
@@ -6639,6 +7823,10 @@ packages:
resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
engines: {node: '>=10'}
+ find-up@6.3.0:
+ resolution: {integrity: sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
find-versions@5.1.0:
resolution: {integrity: sha512-+iwzCJ7C5v5KgcBuueqVoNiHVoQpwiUK5XFLjf0affFTep+Wcw93tPvmb8tqujDNmzhBDPddnWV/qgWSXgq+Hg==}
engines: {node: '>=12'}
@@ -6654,6 +7842,10 @@ packages:
resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==}
engines: {node: '>=16'}
+ flat@5.0.2:
+ resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==}
+ hasBin: true
+
flatted@3.3.3:
resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==}
@@ -6674,6 +7866,20 @@ packages:
resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==}
engines: {node: '>=14'}
+ fork-ts-checker-webpack-plugin@6.5.3:
+ resolution: {integrity: sha512-SbH/l9ikmMWycd5puHJKTkZJKddF4iRLyW3DeZ08HTI7NGyLS38MXd/KGgeWumQO7YNQbW2u/NtPT2YowbPaGQ==}
+ 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
+
fork-ts-checker-webpack-plugin@9.1.0:
resolution: {integrity: sha512-mpafl89VFPJmhnJ1ssH+8wmM2b50n+Rew5x42NeI2U78aRWgtkEtGmctp7iT16UjquJTjorEmIfESj3DxdW84Q==}
engines: {node: '>=14.21.3'}
@@ -6689,6 +7895,10 @@ packages:
resolution: {integrity: sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==}
engines: {node: '>= 6'}
+ format@0.2.2:
+ resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==}
+ engines: {node: '>=0.4.x'}
+
formidable@3.5.4:
resolution: {integrity: sha512-YikH+7CUTOtP44ZTnUhR7Ic2UASBPOqmaRkRKxRbywPTe5VxF7RRCck4af9wutiZ/QKM5nME9Bie2fFaPz5Gug==}
engines: {node: '>=14.0.0'}
@@ -6714,6 +7924,10 @@ packages:
react-dom:
optional: true
+ fresh@0.5.2:
+ resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==}
+ engines: {node: '>= 0.6'}
+
fresh@2.0.0:
resolution: {integrity: sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==}
engines: {node: '>= 0.8'}
@@ -6725,6 +7939,14 @@ packages:
resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==}
engines: {node: '>=12'}
+ fs-extra@11.3.2:
+ resolution: {integrity: sha512-Xr9F6z6up6Ws+NjzMCZc6WXg2YFRlrLP9NQDO3VQrWrfiojdhS56TzueT88ze0uBdCTwEIhQ3ptnmKeWGFAe0A==}
+ engines: {node: '>=14.14'}
+
+ fs-extra@9.1.0:
+ resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==}
+ engines: {node: '>=10'}
+
fs-monkey@1.1.0:
resolution: {integrity: sha512-QMUezzXWII9EV5aTFXW1UBVUO77wYPpjqIF8/AviUCThNeSYZykpoTixUeaNNBwmCev0AMDWMAni+f8Hxb1IFw==}
@@ -6779,6 +8001,9 @@ packages:
resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==}
engines: {node: '>=6'}
+ get-own-enumerable-property-symbols@3.0.2:
+ resolution: {integrity: sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==}
+
get-package-type@0.1.0:
resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==}
engines: {node: '>=8.0.0'}
@@ -6803,6 +8028,9 @@ packages:
resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==}
engines: {node: '>= 0.4'}
+ 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'}
@@ -6832,6 +8060,18 @@ packages:
resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
deprecated: Glob versions prior to v9 are no longer supported
+ global-dirs@3.0.1:
+ resolution: {integrity: sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==}
+ engines: {node: '>=10'}
+
+ global-modules@2.0.0:
+ resolution: {integrity: sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==}
+ engines: {node: '>=6'}
+
+ global-prefix@3.0.0:
+ resolution: {integrity: sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==}
+ engines: {node: '>=6'}
+
globals@14.0.0:
resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==}
engines: {node: '>=18'}
@@ -6840,20 +8080,46 @@ packages:
resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==}
engines: {node: '>= 0.4'}
+ globby@11.1.0:
+ resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
+ engines: {node: '>=10'}
+
+ globby@13.2.2:
+ resolution: {integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
gopd@1.2.0:
resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==}
engines: {node: '>= 0.4'}
+ got@12.6.1:
+ resolution: {integrity: sha512-mThBblvlAF1d4O5oqyvN+ZxLAYwIJK7bpMxgYqPD9okW0C3qm5FFn7k811QrcuEBwaogR3ngOFoCfs6mRv7teQ==}
+ engines: {node: '>=14.16'}
+
got@13.0.0:
resolution: {integrity: sha512-XfBk1CxOOScDcMr9O1yKkNaQyy865NbYs+F7dr4H0LZMVgCj2Le59k6PqbNHoL5ToeaEQUYh6c6yMfVcc6SJxA==}
engines: {node: '>=16'}
+ graceful-fs@4.2.10:
+ resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==}
+
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==}
+ gray-matter@4.0.3:
+ resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==}
+ engines: {node: '>=6.0'}
+
+ gzip-size@6.0.0:
+ resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==}
+ engines: {node: '>=10'}
+
+ handle-thing@2.0.1:
+ resolution: {integrity: sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==}
+
handlebars@4.7.8:
resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==}
engines: {node: '>=0.4.7'}
@@ -6882,10 +8148,38 @@ packages:
resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==}
engines: {node: '>= 0.4'}
+ has-yarn@3.0.0:
+ resolution: {integrity: sha512-IrsVwUHhEULx3R8f/aA8AHuEzAorplsab/v8HBzEiIukwq5i/EC+xmOW+HfP1OaDP+2JkgT1yILHN2O3UFIbcA==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
hasown@2.0.2:
resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
engines: {node: '>= 0.4'}
+ hast-util-from-parse5@8.0.3:
+ resolution: {integrity: sha512-3kxEVkEKt0zvcZ3hCRYI8rqrgwtlIOFMWkbclACvjlDw8Li9S2hk/d51OI0nr/gIpdMHNepwgOKqZ/sy0Clpyg==}
+
+ hast-util-parse-selector@4.0.0:
+ resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==}
+
+ hast-util-raw@9.1.0:
+ resolution: {integrity: sha512-Y8/SBAHkZGoNkpzqqfCldijcuUKh7/su31kEBp67cFY09Wy0mTRgtsLYsiIxMJxlu0f6AA5SUTbDR8K0rxnbUw==}
+
+ hast-util-to-estree@3.1.3:
+ resolution: {integrity: sha512-48+B/rJWAp0jamNbAAf9M7Uf//UVqAoMmgXhBdxTDJLGKY+LRnZ99qcG+Qjl5HfMpYNzS5v4EAwVEF34LeAj7w==}
+
+ hast-util-to-jsx-runtime@2.3.6:
+ resolution: {integrity: sha512-zl6s8LwNyo1P9uw+XJGvZtdFF1GdAkOg8ujOw+4Pyb76874fLps4ueHXDhXWdk6YHQ6OgUtinliG7RsYvCbbBg==}
+
+ hast-util-to-parse5@8.0.0:
+ resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==}
+
+ hast-util-whitespace@3.0.0:
+ resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==}
+
+ hastscript@9.0.1:
+ resolution: {integrity: sha512-g7df9rMFX/SPi34tyGCyUBREQoKkapwdY/T04Qn9TDWfHhAYt4/I0gMVirzK5wEzeUqIjEB+LXC/ypb7Aqno5w==}
+
he@1.2.0:
resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
hasBin: true
@@ -6899,9 +8193,15 @@ packages:
hermes-parser@0.25.1:
resolution: {integrity: sha512-6pEjquH3rqaI6cYAXYPcz9MS4rY6R4ngRgrgfDshRptUZIc3lw0MCIJIGDj9++mfySOuPTHB4nrSW99BCvOPIA==}
+ history@4.10.1:
+ resolution: {integrity: sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==}
+
hoist-non-react-statics@3.3.2:
resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==}
+ hpack.js@2.1.6:
+ resolution: {integrity: sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==}
+
hpagent@1.2.0:
resolution: {integrity: sha512-A91dYTeIB6NoXG+PxTQpCCDDnfHsW9kc06Lvpu1TEe9gnd6ZFeiBoRO9JvzEv6xK7EX97/dUE8g/vBMTqTS3CA==}
engines: {node: '>=14'}
@@ -6910,9 +8210,22 @@ packages:
resolution: {integrity: sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==}
engines: {node: '>=18'}
+ html-entities@2.6.0:
+ resolution: {integrity: sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==}
+
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-minifier-terser@7.2.0:
+ resolution: {integrity: sha512-tXgn3QfqPIpGl9o+K5tpcj3/MN4SfLtsx2GWwBC3SSd0tXQGyF3gsSqad8loJgKZGM3ZxbYDd5yhiBIdWpmvLA==}
+ engines: {node: ^14.13.1 || >=16.0.0}
+ hasBin: true
+
html-minifier@4.0.0:
resolution: {integrity: sha512-aoGxanpFPLg7MkIl/DDFYtb0iWz7jMFGqFhvEDZga6/4QTjneiD8I/NXL1x5aaoCp7FSIT6h/OhykDdPsbtMig==}
engines: {node: '>=6'}
@@ -6921,13 +8234,35 @@ packages:
html-parse-stringify@3.0.1:
resolution: {integrity: sha512-KknJ50kTInJ7qIScF3jeaFRpMpE8/lfiTdzf/twXyPBLAGrLRTmkz3AdTnKeh40X8k9L2fdYwEp/42WGXIRGcg==}
+ 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-void-elements@3.0.0:
+ resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==}
+
+ html-webpack-plugin@5.6.4:
+ resolution: {integrity: sha512-V/PZeWsqhfpE27nKeX9EO2sbR+D17A+tLf6qU+ht66jdUsN0QLKJN27Z+1+gHrVMKgndBahes0PU6rRihDgHTw==}
+ 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@5.0.1:
resolution: {integrity: sha512-vKZZra6CSe9qsJzh0BjBGXo8dvzNsq/oGvsjfRdOrrryfeD9UOBEEQdeoqCRmKZchF5h2zOBMQ6YuQ0uRUmdbQ==}
+ htmlparser2@6.1.0:
+ resolution: {integrity: sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==}
+
htmlparser2@8.0.2:
resolution: {integrity: sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==}
@@ -6937,14 +8272,37 @@ packages:
http-cache-semantics@4.2.0:
resolution: {integrity: sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==}
+ http-deceiver@1.2.7:
+ resolution: {integrity: sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==}
+
+ http-errors@1.6.3:
+ resolution: {integrity: sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==}
+ engines: {node: '>= 0.6'}
+
http-errors@2.0.0:
resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==}
engines: {node: '>= 0.8'}
+ http-parser-js@0.5.10:
+ resolution: {integrity: sha512-Pysuw9XpUq5dVc/2SMHpuTY01RFl8fttgcyunjL7eEMhGM3cI4eOmiCycJDVCo/7O7ClfQD3SaI6ftDzqOXYMA==}
+
http-proxy-agent@7.0.2:
resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==}
engines: {node: '>= 14'}
+ http-proxy-middleware@2.0.9:
+ resolution: {integrity: sha512-c1IyJYLYppU574+YI7R4QyX2ystMtVXZwIdzazUIPIJsHuWNd+mho2j+bKoHftndicGj9yh+xjd+l0yj7VeT1Q==}
+ engines: {node: '>=12.0.0'}
+ peerDependencies:
+ '@types/express': ^4.17.13
+ peerDependenciesMeta:
+ '@types/express':
+ optional: true
+
+ http-proxy@1.18.1:
+ resolution: {integrity: sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==}
+ engines: {node: '>=8.0.0'}
+
http2-wrapper@2.2.1:
resolution: {integrity: sha512-V5nVw1PAOgfI3Lmeaj2Exmeg7fenjhRUgz1lPSezy1CuhPYbgQtbQj4jZfEAEMlaL+vupsvhjqCyjzob0yxsmQ==}
engines: {node: '>=10.19.0'}
@@ -6971,6 +8329,10 @@ packages:
typescript:
optional: true
+ iconv-lite@0.4.24:
+ resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==}
+ engines: {node: '>=0.10.0'}
+
iconv-lite@0.6.3:
resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==}
engines: {node: '>=0.10.0'}
@@ -6979,6 +8341,12 @@ packages:
resolution: {integrity: sha512-cf6L2Ds3h57VVmkZe+Pn+5APsT7FpqJtEhhieDCvrE2MK5Qk9MyffgQyuxQTm6BChfeZNtcOLHp9IcWRVcIcBQ==}
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==}
@@ -6990,16 +8358,28 @@ packages:
resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==}
engines: {node: '>= 4'}
+ image-size@1.2.1:
+ resolution: {integrity: sha512-rH+46sQJ2dlwfjfhCyNx5thzrv+dtmBIhPHk0zgRUukHzZ/kRueTJXoYYsclBaKcSMBWuGbOFXtioLpzTb5euw==}
+ engines: {node: '>=16.x'}
+ hasBin: true
+
immediate@3.0.6:
resolution: {integrity: sha512-XXOFtyqDjNDAQxVfYxuF7g9Il/IbWmmlQg2MYKOH8ExIT1qg6xc4zyS3HaEEATgs1btfzxq15ciUiY7gjSXRGQ==}
immer@10.2.0:
resolution: {integrity: sha512-d/+XTN3zfODyjr89gM3mPq1WNX2B8pYsu7eORitdwyA2sBubnTl3laYlBk4sXY5FUa5qTZGBDPJICVbvqzjlbw==}
+ immer@9.0.21:
+ resolution: {integrity: sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==}
+
import-fresh@3.3.1:
resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==}
engines: {node: '>=6'}
+ import-lazy@4.0.0:
+ resolution: {integrity: sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==}
+ engines: {node: '>=8'}
+
import-local@3.2.0:
resolution: {integrity: sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==}
engines: {node: '>=8'}
@@ -7017,16 +8397,30 @@ packages:
resolution: {integrity: sha512-Yg7+ztRkqslMAS2iFaU+Oa4KTSidr63OsFGlOrJoW981kIYO3CGCS3wA95P1mUi/IVSJkn0D479KTJpVpvFNuw==}
engines: {node: '>=18'}
+ infima@0.2.0-alpha.45:
+ resolution: {integrity: sha512-uyH0zfr1erU1OohLk0fT4Rrb94AOhguWNOcD9uGrSpRvNB+6gZXUoJX5J0NtvzBO10YZ9PgvA4NFgt+fYg8ojw==}
+ engines: {node: '>=12'}
+
inflight@1.0.6:
resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
+ 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==}
+ ini@2.0.0:
+ resolution: {integrity: sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==}
+ engines: {node: '>=10'}
+
+ inline-style-parser@0.2.6:
+ resolution: {integrity: sha512-gtGXVaBdl5mAes3rPcMedEBm12ibjt1kDMFfheul1wUAOVEJW60voNdMVzVkfLN06O7ZaD/rxhfKgtlgtTbMjg==}
+
inline-style-prefixer@7.0.1:
resolution: {integrity: sha512-lhYo5qNTQp3EvSSp3sRvXMbVQTLrvGV6DycRMJ5dm2BLMiJ30wpXKdDdgX+GmJZ5uQMucwRKHamXSst3Sj/Giw==}
@@ -7041,6 +8435,13 @@ packages:
resolution: {integrity: sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==}
engines: {node: '>=12'}
+ interpret@1.4.0:
+ resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==}
+ engines: {node: '>= 0.10'}
+
+ invariant@2.2.4:
+ resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==}
+
ipaddr.js@1.9.1:
resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==}
engines: {node: '>= 0.10'}
@@ -7049,6 +8450,12 @@ packages:
resolution: {integrity: sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==}
engines: {node: '>= 10'}
+ is-alphabetical@2.0.1:
+ resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==}
+
+ is-alphanumerical@2.0.1:
+ resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==}
+
is-array-buffer@3.0.5:
resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==}
engines: {node: '>= 0.4'}
@@ -7076,6 +8483,10 @@ packages:
resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==}
engines: {node: '>= 0.4'}
+ is-ci@3.0.1:
+ resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==}
+ hasBin: true
+
is-core-module@2.16.1:
resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==}
engines: {node: '>= 0.4'}
@@ -7088,6 +8499,9 @@ packages:
resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==}
engines: {node: '>= 0.4'}
+ is-decimal@2.0.1:
+ resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==}
+
is-docker@2.2.1:
resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==}
engines: {node: '>=8'}
@@ -7096,6 +8510,10 @@ packages:
is-expression@4.0.0:
resolution: {integrity: sha512-zMIXX63sxzG3XrkHkrAPvm/OVZVSCPNkwMHU8oTX7/U3AL78I0QXCEICXUM13BIa8TYGZ68PiTKfQz3yaTNr4A==}
+ is-extendable@0.1.1:
+ resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==}
+ engines: {node: '>=0.10.0'}
+
is-extglob@2.1.1:
resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
engines: {node: '>=0.10.0'}
@@ -7120,6 +8538,13 @@ packages:
resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
engines: {node: '>=0.10.0'}
+ is-hexadecimal@2.0.1:
+ resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==}
+
+ is-installed-globally@0.4.0:
+ resolution: {integrity: sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==}
+ engines: {node: '>=10'}
+
is-interactive@1.0.0:
resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==}
engines: {node: '>=8'}
@@ -7132,6 +8557,10 @@ packages:
resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==}
engines: {node: '>= 0.4'}
+ is-npm@6.1.0:
+ resolution: {integrity: sha512-O2z4/kNgyjhQwVR1Wpkbfc19JIhggF97NZNCpWTnjH7kVcZMUrnut9XSN7txI7VdyIYk5ZatOq3zvSuWpU8hoA==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
is-number-object@1.1.1:
resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==}
engines: {node: '>= 0.4'}
@@ -7140,10 +8569,38 @@ packages:
resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
engines: {node: '>=0.12.0'}
+ is-obj@1.0.1:
+ resolution: {integrity: sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==}
+ engines: {node: '>=0.10.0'}
+
+ is-obj@2.0.0:
+ resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==}
+ engines: {node: '>=8'}
+
+ 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-obj@3.0.0:
+ resolution: {integrity: sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==}
+ engines: {node: '>=10'}
+
+ is-plain-obj@4.1.0:
+ resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==}
+ engines: {node: '>=12'}
+
+ is-plain-object@2.0.4:
+ resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==}
+ engines: {node: '>=0.10.0'}
+
is-potential-custom-element-name@1.0.1:
resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==}
@@ -7163,6 +8620,14 @@ packages:
resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==}
engines: {node: '>= 0.4'}
+ is-regexp@1.0.0:
+ resolution: {integrity: sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==}
+ engines: {node: '>=0.10.0'}
+
+ is-root@2.1.0:
+ resolution: {integrity: sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==}
+ engines: {node: '>=6'}
+
is-set@2.0.3:
resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==}
engines: {node: '>= 0.4'}
@@ -7191,6 +8656,9 @@ packages:
resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==}
engines: {node: '>= 0.4'}
+ is-typedarray@1.0.0:
+ resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==}
+
is-unicode-supported@0.1.0:
resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==}
engines: {node: '>=10'}
@@ -7211,7 +8679,14 @@ packages:
resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==}
engines: {node: '>=8'}
- isarray@1.0.0:
+ is-yarn-global@0.4.1:
+ resolution: {integrity: sha512-/kppl+R+LO5VmhYSEWARUFjodS25D68gvj8W7z0I7OWhUla5xWu8KL6CtB2V0R6yqhnRgbcaREMr4EEM6htLPQ==}
+ engines: {node: '>=12'}
+
+ 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:
@@ -7220,6 +8695,10 @@ packages:
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.2:
resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==}
engines: {node: '>=8'}
@@ -7381,6 +8860,10 @@ packages:
resolution: {integrity: sha512-5WEtTy2jXPFypadKNpbNkZ72puZCa6UjSr/7djeecHWOu7iYhSXSnHScT8wBz3Rn8Ena5d5RYRcsyKIeqG1IyA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.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-util@30.2.0:
resolution: {integrity: sha512-QKNsM0o3Xe6ISQU869e+DhG+4CK/48aHYdJZGlFQVTjnbvgpcKyxpzk29fGiO7i/J8VENZ+d2iGnSsvmuHywlA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
@@ -7397,6 +8880,10 @@ packages:
resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==}
engines: {node: '>= 10.13.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-worker@30.2.0:
resolution: {integrity: sha512-0Q4Uk8WF7BUwqXHuAjc23vmopWJw5WH7w2tqBoUOZpOjW/ZnR44GXXd1r82RvnmI2GZge3ivrYXk/BE2+VtW2g==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
@@ -7415,6 +8902,9 @@ packages:
resolution: {integrity: sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==}
hasBin: true
+ joi@17.13.3:
+ resolution: {integrity: sha512-otDA4ldcIx+ZXsKHWmp0YizCweVRZG96J10b0FevjfuncLO1oX59THoAmHkNubYJ+9gWsYsp5k8v4ib6oDv1fA==}
+
joi@18.0.1:
resolution: {integrity: sha512-IiQpRyypSnLisQf3PwuN2eIHAsAIGZIrLZkd4zdvIar2bDyhM91ubRjy8a3eYablXsh9BeI/c7dmPYHca5qtoA==}
engines: {node: '>= 20'}
@@ -7554,6 +9044,13 @@ packages:
resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==}
engines: {node: '>=0.10'}
+ latest-version@7.0.0:
+ resolution: {integrity: sha512-KvNT4XqAMzdcL6ka6Tl3i2lYeFDgXNCuIX+xNx6ZMVR1dFq+idXd9FLKNMOIx0t9mJ9/HudyX4oZWXZQ0UJHeg==}
+ engines: {node: '>=14.16'}
+
+ launch-editor@2.12.0:
+ resolution: {integrity: sha512-giOHXoOtifjdHqUamwKq6c49GzBdLjvxrd2D+Q4V6uOHopJv7p9VJxikDsQ/CBXZbEITgUqSVHXLTG3VhPP1Dg==}
+
lazystream@1.0.1:
resolution: {integrity: sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==}
engines: {node: '>= 0.6.3'}
@@ -7629,6 +9126,18 @@ packages:
resolution: {integrity: sha512-IWqP2SCPhyVFTBtRcgMHdzlf9ul25NwaFx4wCEH/KjAXuuHY4yNjvPXsBokp8jCB936PyWRaPKUNh8NvylLp2Q==}
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.3.1:
+ resolution: {integrity: sha512-FMJTLMXfCLMLfJxcX9PFqX5qD88Z5MRGaZCVzfuqeZSPsyiBzs+pahDQjbIWz2QIzPZz0NX9Zy4FX3lmK6YHIg==}
+ 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'}
@@ -7637,6 +9146,10 @@ packages:
resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
engines: {node: '>=10'}
+ locate-path@7.2.0:
+ resolution: {integrity: sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
lodash-es@4.17.21:
resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
@@ -7717,6 +9230,9 @@ packages:
long@5.3.2:
resolution: {integrity: sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==}
+ longest-streak@3.1.0:
+ resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==}
+
loose-envify@1.4.0:
resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==}
hasBin: true
@@ -7784,10 +9300,74 @@ packages:
makeerror@1.0.12:
resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==}
+ markdown-extensions@2.0.0:
+ resolution: {integrity: sha512-o5vL7aDWatOTX8LzaS1WMoaoxIiLRQJuIKKe2wAw6IeULDHaqbiqiggmx+pKvZDb1Sj+pE46Sn1T7lCqfFtg1Q==}
+ engines: {node: '>=16'}
+
+ markdown-table@2.0.0:
+ resolution: {integrity: sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==}
+
+ markdown-table@3.0.4:
+ resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==}
+
math-intrinsics@1.1.0:
resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==}
engines: {node: '>= 0.4'}
+ mdast-util-directive@3.1.0:
+ resolution: {integrity: sha512-I3fNFt+DHmpWCYAT7quoM6lHf9wuqtI+oCOfvILnoicNIqjh5E3dEJWiXuYME2gNe8vl1iMQwyUHa7bgFmak6Q==}
+
+ mdast-util-find-and-replace@3.0.2:
+ resolution: {integrity: sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==}
+
+ mdast-util-from-markdown@2.0.2:
+ resolution: {integrity: sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==}
+
+ mdast-util-frontmatter@2.0.1:
+ resolution: {integrity: sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==}
+
+ mdast-util-gfm-autolink-literal@2.0.1:
+ resolution: {integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==}
+
+ mdast-util-gfm-footnote@2.1.0:
+ resolution: {integrity: sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==}
+
+ mdast-util-gfm-strikethrough@2.0.0:
+ resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==}
+
+ mdast-util-gfm-table@2.0.0:
+ resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==}
+
+ mdast-util-gfm-task-list-item@2.0.0:
+ resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==}
+
+ mdast-util-gfm@3.1.0:
+ resolution: {integrity: sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==}
+
+ mdast-util-mdx-expression@2.0.1:
+ resolution: {integrity: sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==}
+
+ mdast-util-mdx-jsx@3.2.0:
+ resolution: {integrity: sha512-lj/z8v0r6ZtsN/cGNNtemmmfoLAFZnjMbNyLzBafjzikOM+glrjNHPlf6lQDOTccj9n5b0PPihEBbhneMyGs1Q==}
+
+ mdast-util-mdx@3.0.0:
+ resolution: {integrity: sha512-JfbYLAW7XnYTTbUsmpu0kdBUVe+yKVJZBItEjwyYJiDJuZ9w4eeaqks4HQO+R7objWgS2ymV60GYpI14Ug554w==}
+
+ mdast-util-mdxjs-esm@2.0.1:
+ resolution: {integrity: sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==}
+
+ mdast-util-phrasing@4.1.0:
+ resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==}
+
+ mdast-util-to-hast@13.2.0:
+ resolution: {integrity: sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==}
+
+ mdast-util-to-markdown@2.1.2:
+ resolution: {integrity: sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==}
+
+ mdast-util-to-string@4.0.0:
+ resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==}
+
mdn-data@2.0.14:
resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==}
@@ -7815,6 +9395,9 @@ packages:
mensch@0.3.4:
resolution: {integrity: sha512-IAeFvcOnV9V0Yk+bFhYR07O3yNina9ANIN5MoXBKYJ/RLYPurd2d0yw14MDhpr9/momp0WofT1bPUh3hkzdi/g==}
+ merge-descriptors@1.0.3:
+ resolution: {integrity: sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==}
+
merge-descriptors@2.0.0:
resolution: {integrity: sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==}
engines: {node: '>=18'}
@@ -7830,10 +9413,137 @@ packages:
resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==}
engines: {node: '>= 0.6'}
+ micromark-core-commonmark@2.0.3:
+ resolution: {integrity: sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==}
+
+ micromark-extension-directive@3.0.2:
+ resolution: {integrity: sha512-wjcXHgk+PPdmvR58Le9d7zQYWy+vKEU9Se44p2CrCDPiLr2FMyiT4Fyb5UFKFC66wGB3kPlgD7q3TnoqPS7SZA==}
+
+ micromark-extension-frontmatter@2.0.0:
+ resolution: {integrity: sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==}
+
+ micromark-extension-gfm-autolink-literal@2.1.0:
+ resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==}
+
+ micromark-extension-gfm-footnote@2.1.0:
+ resolution: {integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==}
+
+ micromark-extension-gfm-strikethrough@2.1.0:
+ resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==}
+
+ micromark-extension-gfm-table@2.1.1:
+ resolution: {integrity: sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==}
+
+ micromark-extension-gfm-tagfilter@2.0.0:
+ resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==}
+
+ micromark-extension-gfm-task-list-item@2.1.0:
+ resolution: {integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==}
+
+ micromark-extension-gfm@3.0.0:
+ resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==}
+
+ micromark-extension-mdx-expression@3.0.1:
+ resolution: {integrity: sha512-dD/ADLJ1AeMvSAKBwO22zG22N4ybhe7kFIZ3LsDI0GlsNr2A3KYxb0LdC1u5rj4Nw+CHKY0RVdnHX8vj8ejm4Q==}
+
+ micromark-extension-mdx-jsx@3.0.2:
+ resolution: {integrity: sha512-e5+q1DjMh62LZAJOnDraSSbDMvGJ8x3cbjygy2qFEi7HCeUT4BDKCvMozPozcD6WmOt6sVvYDNBKhFSz3kjOVQ==}
+
+ micromark-extension-mdx-md@2.0.0:
+ resolution: {integrity: sha512-EpAiszsB3blw4Rpba7xTOUptcFeBFi+6PY8VnJ2hhimH+vCQDirWgsMpz7w1XcZE7LVrSAUGb9VJpG9ghlYvYQ==}
+
+ micromark-extension-mdxjs-esm@3.0.0:
+ resolution: {integrity: sha512-DJFl4ZqkErRpq/dAPyeWp15tGrcrrJho1hKK5uBS70BCtfrIFg81sqcTVu3Ta+KD1Tk5vAtBNElWxtAa+m8K9A==}
+
+ micromark-extension-mdxjs@3.0.0:
+ resolution: {integrity: sha512-A873fJfhnJ2siZyUrJ31l34Uqwy4xIFmvPY1oj+Ean5PHcPBYzEsvqvWGaWcfEIr11O5Dlw3p2y0tZWpKHDejQ==}
+
+ micromark-factory-destination@2.0.1:
+ resolution: {integrity: sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==}
+
+ micromark-factory-label@2.0.1:
+ resolution: {integrity: sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==}
+
+ micromark-factory-mdx-expression@2.0.3:
+ resolution: {integrity: sha512-kQnEtA3vzucU2BkrIa8/VaSAsP+EJ3CKOvhMuJgOEGg9KDC6OAY6nSnNDVRiVNRqj7Y4SlSzcStaH/5jge8JdQ==}
+
+ micromark-factory-space@1.1.0:
+ resolution: {integrity: sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==}
+
+ micromark-factory-space@2.0.1:
+ resolution: {integrity: sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==}
+
+ micromark-factory-title@2.0.1:
+ resolution: {integrity: sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==}
+
+ micromark-factory-whitespace@2.0.1:
+ resolution: {integrity: sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==}
+
+ micromark-util-character@1.2.0:
+ resolution: {integrity: sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==}
+
+ micromark-util-character@2.1.1:
+ resolution: {integrity: sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==}
+
+ micromark-util-chunked@2.0.1:
+ resolution: {integrity: sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==}
+
+ micromark-util-classify-character@2.0.1:
+ resolution: {integrity: sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==}
+
+ micromark-util-combine-extensions@2.0.1:
+ resolution: {integrity: sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==}
+
+ micromark-util-decode-numeric-character-reference@2.0.2:
+ resolution: {integrity: sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==}
+
+ micromark-util-decode-string@2.0.1:
+ resolution: {integrity: sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==}
+
+ micromark-util-encode@2.0.1:
+ resolution: {integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==}
+
+ micromark-util-events-to-acorn@2.0.3:
+ resolution: {integrity: sha512-jmsiEIiZ1n7X1Rr5k8wVExBQCg5jy4UXVADItHmNk1zkwEVhBuIUKRu3fqv+hs4nxLISi2DQGlqIOGiFxgbfHg==}
+
+ micromark-util-html-tag-name@2.0.1:
+ resolution: {integrity: sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==}
+
+ micromark-util-normalize-identifier@2.0.1:
+ resolution: {integrity: sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==}
+
+ micromark-util-resolve-all@2.0.1:
+ resolution: {integrity: sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==}
+
+ micromark-util-sanitize-uri@2.0.1:
+ resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==}
+
+ micromark-util-subtokenize@2.1.0:
+ resolution: {integrity: sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==}
+
+ micromark-util-symbol@1.1.0:
+ resolution: {integrity: sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==}
+
+ micromark-util-symbol@2.0.1:
+ resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==}
+
+ micromark-util-types@1.1.0:
+ resolution: {integrity: sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==}
+
+ micromark-util-types@2.0.2:
+ resolution: {integrity: sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==}
+
+ micromark@4.0.2:
+ resolution: {integrity: sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==}
+
micromatch@4.0.8:
resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
engines: {node: '>=8.6'}
+ mime-db@1.33.0:
+ resolution: {integrity: sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==}
+ engines: {node: '>= 0.6'}
+
mime-db@1.52.0:
resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
engines: {node: '>= 0.6'}
@@ -7842,6 +9552,10 @@ packages:
resolution: {integrity: sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==}
engines: {node: '>= 0.6'}
+ mime-types@2.1.18:
+ resolution: {integrity: sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==}
+ engines: {node: '>= 0.6'}
+
mime-types@2.1.35:
resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
engines: {node: '>= 0.6'}
@@ -7850,6 +9564,11 @@ packages:
resolution: {integrity: sha512-xRc4oEhT6eaBpU1XF7AjpOFD+xQmXNB5OVKwp4tqCuBpHLS/ZbBDrc07mYTDqVMg6PfxUjjNp85O6Cd2Z/5HWA==}
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'}
@@ -7876,6 +9595,15 @@ packages:
resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==}
engines: {node: '>=4'}
+ mini-css-extract-plugin@2.9.4:
+ resolution: {integrity: sha512-ZWYT7ln73Hptxqxk2DxPU9MmapXRhxkJD6tkSR04dnQxm8BGu2hzgKLugK5yySD97u/8yy7Ma7E76k9ZdvtjkQ==}
+ engines: {node: '>= 12.13.0'}
+ peerDependencies:
+ webpack: ^5.0.0
+
+ minimalistic-assert@1.0.1:
+ resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==}
+
minimatch@10.1.1:
resolution: {integrity: sha512-enIvLvRAFZYXJzkCYG5RKmPfrFArdLv+R+lbQ53BmIMLIry74bjKzX6iHAm8WYamJkhSSEabrWN5D97XnKObjQ==}
engines: {node: 20 || >=22}
@@ -8020,6 +9748,13 @@ packages:
motion-utils@12.23.6:
resolution: {integrity: sha512-eAWoPgr4eFEOFfg2WjIsMoqJTW6Z8MTUCgn/GZ3VRpClWBdnbjryiA3ZSNLyxCTmCQx4RmYX6jX1iWHbenUPNQ==}
+ mrmime@2.0.1:
+ resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==}
+ engines: {node: '>=10'}
+
+ ms@2.0.0:
+ resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==}
+
ms@2.1.3:
resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
@@ -8027,6 +9762,10 @@ packages:
resolution: {integrity: sha512-u7f2xaZ/UG8oLXHvtF/oWTRvT44p9ecwBBqTwgJVq0+4BW1g8OW01TyMEGWBHbyMOYVHXslaut7qEQ1meATXgw==}
engines: {node: '>= 10.16.0'}
+ multicast-dns@7.2.5:
+ resolution: {integrity: sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==}
+ hasBin: true
+
mute-stream@2.0.0:
resolution: {integrity: sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==}
engines: {node: ^18.17.0 || >=20.5.0}
@@ -8061,6 +9800,14 @@ packages:
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'}
+
+ negotiator@0.6.4:
+ resolution: {integrity: sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==}
+ engines: {node: '>= 0.6'}
+
negotiator@1.0.0:
resolution: {integrity: sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg==}
engines: {node: '>= 0.6'}
@@ -8153,6 +9900,10 @@ packages:
node-emoji@1.11.0:
resolution: {integrity: sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==}
+ node-emoji@2.2.0:
+ resolution: {integrity: sha512-Z3lTE9pLaJF47NyMhd4ww1yFTAP8YhYI8SleJiHzM46Fgpm5cnNzSl9XfzFNqbaz+VlJrIj3fXQ4DeN1Rjm6cw==}
+ engines: {node: '>=18'}
+
node-fetch@2.7.0:
resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==}
engines: {node: 4.x || >=6.0.0}
@@ -8162,6 +9913,10 @@ packages:
encoding:
optional: true
+ node-forge@1.3.1:
+ resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==}
+ engines: {node: '>= 6.13.0'}
+
node-gyp-build@4.8.4:
resolution: {integrity: sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==}
hasBin: true
@@ -8205,9 +9960,18 @@ packages:
resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
engines: {node: '>=8'}
+ nprogress@0.2.0:
+ resolution: {integrity: sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==}
+
nth-check@2.1.1:
resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==}
+ null-loader@4.0.1:
+ resolution: {integrity: sha512-pxqVbi4U6N26lq+LmgIbB5XATP0VdZKOG25DhHi8btMmJJefGArFyDg1yc4U3hWCJbMqSrw0qyrz1UQX+qYXqg==}
+ engines: {node: '>= 10.13.0'}
+ peerDependencies:
+ webpack: ^4.0.0 || ^5.0.0
+
number-flow@0.5.8:
resolution: {integrity: sha512-FPr1DumWyGi5Nucoug14bC6xEz70A1TnhgSHhKyfqjgji2SOTz+iLJxKtv37N5JyJbteGYCm6NQ9p1O4KZ7iiA==}
@@ -8268,6 +10032,9 @@ packages:
resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==}
engines: {node: '>= 0.4'}
+ obuf@1.1.2:
+ resolution: {integrity: sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==}
+
on-exit-leak-free@2.1.2:
resolution: {integrity: sha512-0eJJY6hXLGf1udHwfNftBqH+g73EU4B504nZeKpz1sYRKafAghwxEJunB2O7rDZkL4PGfsMVnTXZ2EjibbqcsA==}
engines: {node: '>=14.0.0'}
@@ -8276,6 +10043,10 @@ packages:
resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==}
engines: {node: '>= 0.8'}
+ on-headers@1.1.0:
+ resolution: {integrity: sha512-737ZY3yNnXy37FHkQxPzt4UZ2UWPWiCZWLvFZ4fu5cueciegX0zGPnrlY6bwRg4FdQOe9YU8MkmJwGhoMybl8A==}
+ engines: {node: '>= 0.8'}
+
once@1.4.0:
resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
@@ -8287,12 +10058,20 @@ packages:
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'}
+
openapi-typescript@7.10.1:
resolution: {integrity: sha512-rBcU8bjKGGZQT4K2ekSTY2Q5veOQbVG/lTKZ49DeCyT9z62hM2Vj/LLHjDHC9W7LJG8YMHcdXpRZDqC1ojB/lw==}
hasBin: true
peerDependencies:
typescript: ^5.x
+ opener@1.5.2:
+ resolution: {integrity: sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==}
+ hasBin: true
+
optionator@0.9.4:
resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
engines: {node: '>= 0.8.0'}
@@ -8328,6 +10107,14 @@ packages:
resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
engines: {node: '>=10'}
+ p-limit@4.0.0:
+ resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ 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'}
@@ -8336,6 +10123,18 @@ packages:
resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
engines: {node: '>=10'}
+ p-locate@6.0.0:
+ resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ p-map@4.0.0:
+ resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==}
+ engines: {node: '>=10'}
+
+ p-retry@4.6.2:
+ resolution: {integrity: sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==}
+ engines: {node: '>=8'}
+
p-timeout@3.2.0:
resolution: {integrity: sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==}
engines: {node: '>=8'}
@@ -8351,16 +10150,26 @@ packages:
package-json-from-dist@1.0.1:
resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==}
+ package-json@8.1.1:
+ resolution: {integrity: sha512-cbH9IAIJHNj9uXi196JVsRlt7cHKak6u/e6AkL/bkRelZ7rlL3X1YKxsZwa36xipOEKAsdtmaG6aAJoM1fx2zA==}
+ engines: {node: '>=14.16'}
+
pako@1.0.11:
resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==}
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-entities@4.0.2:
+ resolution: {integrity: sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==}
+
parse-json@5.2.0:
resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
engines: {node: '>=8'}
@@ -8369,6 +10178,9 @@ packages:
resolution: {integrity: sha512-ybiGyvspI+fAoRQbIPRddCcSTV9/LsJbf0e/S85VLowVGzRmokfneg2kwVW/KU5rOXrPSbF1qAKPMgNTqqROQQ==}
engines: {node: '>=18'}
+ parse-numeric-range@1.3.0:
+ resolution: {integrity: sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==}
+
parse5-htmlparser2-tree-adapter@7.1.0:
resolution: {integrity: sha512-ruw5xyKs6lrpo9x9rCZqZZnIUntICjQAd0Wsmp396Ul9lN/h+ifgVV1x1gZHi8euej6wTfpqX8j+BFQxF0NS/g==}
@@ -8382,6 +10194,9 @@ packages:
resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==}
engines: {node: '>= 0.8'}
+ pascal-case@3.1.2:
+ resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==}
+
passport-custom@1.1.1:
resolution: {integrity: sha512-/2m7jUGxmCYvoqenLB9UrmkCgPt64h8ZtV+UtuQklZ/Tn1NpKBeOorCYkB/8lMRoiZ5hUrCoMmDtxCS/d38mlg==}
engines: {node: '>= 0.10.0'}
@@ -8401,14 +10216,25 @@ packages:
resolution: {integrity: sha512-cPLl+qZpSc+ireUvt+IzqbED1cHHkDoVYMo30jbJIdOOjQ1MQYZBPiNvmi8UM6lJuOpTPXJGZQk0DtC4y61MYQ==}
engines: {node: '>= 0.4.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-exists@5.0.0:
+ resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
path-is-absolute@1.0.1:
resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
engines: {node: '>=0.10.0'}
+ path-is-inside@1.0.2:
+ resolution: {integrity: sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==}
+
path-key@2.0.1:
resolution: {integrity: sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==}
engines: {node: '>=4'}
@@ -8428,6 +10254,15 @@ packages:
resolution: {integrity: sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==}
engines: {node: 20 || >=22}
+ path-to-regexp@0.1.12:
+ resolution: {integrity: sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==}
+
+ path-to-regexp@1.9.0:
+ resolution: {integrity: sha512-xIp7/apCFJuUHdDLWe8O1HIkb0kQrOMb/0u6FXQjemHn/ii5LrIzU6bdECnsiTF/GjZkMEKg1xdiZwNqDYlZ6g==}
+
+ path-to-regexp@3.3.0:
+ resolution: {integrity: sha512-qyCH421YQPS2WFDxDjftfc1ZR5WKQzVzqsp4n9M2kQhVOo/ByahFoUNJfl58kOcEGfQ//7weFTDhm+ss8Ecxgw==}
+
path-to-regexp@8.3.0:
resolution: {integrity: sha512-7jdwVIRtsP8MYpdXSwOS0YdD0Du+qOoF/AEPIt88PcCFrZCzx41oxku1jD88hZBwbNUIEfpqvuhjFaMAqMTWnA==}
@@ -8498,9 +10333,17 @@ packages:
resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==}
engines: {node: '>=8'}
+ pkg-dir@7.0.0:
+ resolution: {integrity: sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==}
+ engines: {node: '>=14.16'}
+
pkg-types@1.3.1:
resolution: {integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==}
+ pkg-up@3.1.0:
+ resolution: {integrity: sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==}
+ engines: {node: '>=8'}
+
playwright-core@1.56.1:
resolution: {integrity: sha512-hutraynyn31F+Bifme+Ps9Vq59hKuUCz7H1kDOcBs+2oGguKkWTU50bBWrtz34OUWmIwpBTWDxaRPXrIXkgvmQ==}
engines: {node: '>=18'}
@@ -8519,6 +10362,143 @@ packages:
resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==}
engines: {node: '>= 0.4'}
+ postcss-attribute-case-insensitive@7.0.1:
+ resolution: {integrity: sha512-Uai+SupNSqzlschRyNx3kbCTWgY/2hcwtHEI/ej2LJWc9JJ77qKgGptd8DHwY1mXtZ7Aoh4z4yxfwMBue9eNgw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-calc@9.0.1:
+ resolution: {integrity: sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.2.2
+
+ postcss-clamp@4.1.0:
+ resolution: {integrity: sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==}
+ engines: {node: '>=7.6.0'}
+ peerDependencies:
+ postcss: ^8.4.6
+
+ postcss-color-functional-notation@7.0.12:
+ resolution: {integrity: sha512-TLCW9fN5kvO/u38/uesdpbx3e8AkTYhMvDZYa9JpmImWuTE99bDQ7GU7hdOADIZsiI9/zuxfAJxny/khknp1Zw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-color-hex-alpha@10.0.0:
+ resolution: {integrity: sha512-1kervM2cnlgPs2a8Vt/Qbe5cQ++N7rkYo/2rz2BkqJZIHQwaVuJgQH38REHrAi4uM0b1fqxMkWYmese94iMp3w==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-color-rebeccapurple@10.0.0:
+ resolution: {integrity: sha512-JFta737jSP+hdAIEhk1Vs0q0YF5P8fFcj+09pweS8ktuGuZ8pPlykHsk6mPxZ8awDl4TrcxUqJo9l1IhVr/OjQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-colormin@6.1.0:
+ resolution: {integrity: sha512-x9yX7DOxeMAR+BgGVnNSAxmAj98NX/YxEMNFP+SDCEeNLb2r3i6Hh1ksMsnW8Ub5SLCpbescQqn9YEbE9554Sw==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-convert-values@6.1.0:
+ resolution: {integrity: sha512-zx8IwP/ts9WvUM6NkVSkiU902QZL1bwPhaVaLynPtCsOTqp+ZKbNi+s6XJg3rfqpKGA/oc7Oxk5t8pOQJcwl/w==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-custom-media@11.0.6:
+ resolution: {integrity: sha512-C4lD4b7mUIw+RZhtY7qUbf4eADmb7Ey8BFA2px9jUbwg7pjTZDl4KY4bvlUV+/vXQvzQRfiGEVJyAbtOsCMInw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-custom-properties@14.0.6:
+ resolution: {integrity: sha512-fTYSp3xuk4BUeVhxCSJdIPhDLpJfNakZKoiTDx7yRGCdlZrSJR7mWKVOBS4sBF+5poPQFMj2YdXx1VHItBGihQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-custom-selectors@8.0.5:
+ resolution: {integrity: sha512-9PGmckHQswiB2usSO6XMSswO2yFWVoCAuih1yl9FVcwkscLjRKjwsjM3t+NIWpSU2Jx3eOiK2+t4vVTQaoCHHg==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-dir-pseudo-class@9.0.1:
+ resolution: {integrity: sha512-tRBEK0MHYvcMUrAuYMEOa0zg9APqirBcgzi6P21OhxtJyJADo/SWBwY1CAwEohQ/6HDaa9jCjLRG7K3PVQYHEA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-discard-comments@6.0.2:
+ resolution: {integrity: sha512-65w/uIqhSBBfQmYnG92FO1mWZjJ4GL5b8atm5Yw2UgrwD7HiNiSSNwJor1eCFGzUgYnN/iIknhNRVqjrrpuglw==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-discard-duplicates@6.0.3:
+ resolution: {integrity: sha512-+JA0DCvc5XvFAxwx6f/e68gQu/7Z9ud584VLmcgto28eB8FqSFZwtrLwB5Kcp70eIoWP/HXqz4wpo8rD8gpsTw==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-discard-empty@6.0.3:
+ resolution: {integrity: sha512-znyno9cHKQsK6PtxL5D19Fj9uwSzC2mB74cpT66fhgOadEUPyXFkbgwm5tvc3bt3NAy8ltE5MrghxovZRVnOjQ==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-discard-overridden@6.0.2:
+ resolution: {integrity: sha512-j87xzI4LUggC5zND7KdjsI25APtyMuynXZSujByMaav2roV6OZX+8AaCUcZSWqckZpjAjRyFDdpqybgjFO0HJQ==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-discard-unused@6.0.5:
+ resolution: {integrity: sha512-wHalBlRHkaNnNwfC8z+ppX57VhvS+HWgjW508esjdaEYr3Mx7Gnn2xA4R/CKf5+Z9S5qsqC+Uzh4ueENWwCVUA==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-double-position-gradients@6.0.4:
+ resolution: {integrity: sha512-m6IKmxo7FxSP5nF2l63QbCC3r+bWpFUWmZXZf096WxG0m7Vl1Q1+ruFOhpdDRmKrRS+S3Jtk+TVk/7z0+BVK6g==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-focus-visible@10.0.1:
+ resolution: {integrity: sha512-U58wyjS/I1GZgjRok33aE8juW9qQgQUNwTSdxQGuShHzwuYdcklnvK/+qOWX1Q9kr7ysbraQ6ht6r+udansalA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-focus-within@9.0.1:
+ resolution: {integrity: sha512-fzNUyS1yOYa7mOjpci/bR+u+ESvdar6hk8XNK/TRR0fiGTp2QT5N+ducP0n3rfH/m9I7H/EQU6lsa2BrgxkEjw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-font-variant@5.0.0:
+ resolution: {integrity: sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==}
+ peerDependencies:
+ postcss: ^8.1.0
+
+ postcss-gap-properties@6.0.0:
+ resolution: {integrity: sha512-Om0WPjEwiM9Ru+VhfEDPZJAKWUd0mV1HmNXqp2C29z80aQ2uP9UVhLc7e3aYMIor/S5cVhoPgYQ7RtfeZpYTRw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-image-set-function@7.0.0:
+ resolution: {integrity: sha512-QL7W7QNlZuzOwBTeXEmbVckNt1FSmhQtbMRvGGqqU4Nf4xk6KUEQhAoWuMzwbSv5jxiRiSZ5Tv7eiDB9U87znA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
postcss-import@15.1.0:
resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==}
engines: {node: '>=14.0.0'}
@@ -8543,6 +10523,12 @@ packages:
peerDependencies:
postcss: ^8.4.21
+ postcss-lab-function@7.0.12:
+ resolution: {integrity: sha512-tUcyRk1ZTPec3OuKFsqtRzW2Go5lehW29XA21lZ65XmzQkz43VY2tyWEC202F7W3mILOjw0voOiuxRGTsN+J9w==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
postcss-load-config@6.0.1:
resolution: {integrity: sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==}
engines: {node: '>= 18'}
@@ -8561,43 +10547,270 @@ packages:
yaml:
optional: true
- postcss-nested@6.2.0:
- resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==}
- engines: {node: '>=12.0'}
+ postcss-loader@7.3.4:
+ resolution: {integrity: sha512-iW5WTTBSC5BfsBJ9daFMPVrLT36MrNiC6fqOZTTaHjBNX6Pfd5p+hSBqe/fEeNd7pc13QiAyGt7VdGMw4eRC4A==}
+ engines: {node: '>= 14.15.0'}
peerDependencies:
- postcss: ^8.2.14
+ postcss: ^7.0.0 || ^8.0.1
+ webpack: ^5.0.0
- postcss-nesting@13.0.2:
- resolution: {integrity: sha512-1YCI290TX+VP0U/K/aFxzHzQWHWURL+CtHMSbex1lCdpXD1SoR2sYuxDu5aNI9lPoXpKTCggFZiDJbwylU0LEQ==}
+ postcss-logical@8.1.0:
+ resolution: {integrity: sha512-pL1hXFQ2fEXNKiNiAgtfA005T9FBxky5zkX6s4GZM2D8RkVgRqz3f4g1JUoq925zXv495qk8UNldDwh8uGEDoA==}
engines: {node: '>=18'}
peerDependencies:
postcss: ^8.4
- postcss-selector-parser@6.1.2:
- resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==}
- engines: {node: '>=4'}
+ postcss-merge-idents@6.0.3:
+ resolution: {integrity: sha512-1oIoAsODUs6IHQZkLQGO15uGEbK3EAl5wi9SS8hs45VgsxQfMnxvt+L+zIr7ifZFIH14cfAeVe2uCTa+SPRa3g==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
- postcss-selector-parser@7.1.0:
- resolution: {integrity: sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==}
- engines: {node: '>=4'}
+ postcss-merge-longhand@6.0.5:
+ resolution: {integrity: sha512-5LOiordeTfi64QhICp07nzzuTDjNSO8g5Ksdibt44d+uvIIAE1oZdRn8y/W5ZtYgRH/lnLDlvi9F8btZcVzu3w==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
- postcss-value-parser@4.2.0:
- resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
+ postcss-merge-rules@6.1.1:
+ resolution: {integrity: sha512-KOdWF0gju31AQPZiD+2Ar9Qjowz1LTChSjFFbS+e2sFgc4uHOp3ZvVX4sNeTlk0w2O31ecFGgrFzhO0RSWbWwQ==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
- postcss@8.4.31:
- resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==}
- engines: {node: ^10 || ^12 || >=14}
+ postcss-minify-font-values@6.1.0:
+ resolution: {integrity: sha512-gklfI/n+9rTh8nYaSJXlCo3nOKqMNkxuGpTn/Qm0gstL3ywTr9/WRKznE+oy6fvfolH6dF+QM4nCo8yPLdvGJg==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
- postcss@8.5.6:
- resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==}
- engines: {node: ^10 || ^12 || >=14}
+ postcss-minify-gradients@6.0.3:
+ resolution: {integrity: sha512-4KXAHrYlzF0Rr7uc4VrfwDJ2ajrtNEpNEuLxFgwkhFZ56/7gaE4Nr49nLsQDZyUe+ds+kEhf+YAUolJiYXF8+Q==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
- prelude-ls@1.2.1:
- resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
- engines: {node: '>= 0.8.0'}
+ postcss-minify-params@6.1.0:
+ resolution: {integrity: sha512-bmSKnDtyyE8ujHQK0RQJDIKhQ20Jq1LYiez54WiaOoBtcSuflfK3Nm596LvbtlFcpipMjgClQGyGr7GAs+H1uA==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
- prettier-plugin-tailwindcss@0.7.1:
- resolution: {integrity: sha512-Bzv1LZcuiR1Sk02iJTS1QzlFNp/o5l2p3xkopwOrbPmtMeh3fK9rVW5M3neBQzHq+kGKj/4LGQMTNcTH4NGPtQ==}
+ postcss-minify-selectors@6.0.4:
+ resolution: {integrity: sha512-L8dZSwNLgK7pjTto9PzWRoMbnLq5vsZSTu8+j1P/2GB8qdtGQfn+K1uSvFgYvgh83cbyxT5m43ZZhUMTJDSClQ==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-modules-extract-imports@3.1.0:
+ resolution: {integrity: sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==}
+ engines: {node: ^10 || ^12 || >= 14}
+ peerDependencies:
+ postcss: ^8.1.0
+
+ postcss-modules-local-by-default@4.2.0:
+ resolution: {integrity: sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw==}
+ engines: {node: ^10 || ^12 || >= 14}
+ peerDependencies:
+ postcss: ^8.1.0
+
+ postcss-modules-scope@3.2.1:
+ resolution: {integrity: sha512-m9jZstCVaqGjTAuny8MdgE88scJnCiQSlSrOWcTQgM2t32UBe+MUmFSO5t7VMSfAf/FJKImAxBav8ooCHJXCJA==}
+ 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.2.0:
+ resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==}
+ engines: {node: '>=12.0'}
+ peerDependencies:
+ postcss: ^8.2.14
+
+ postcss-nesting@13.0.2:
+ resolution: {integrity: sha512-1YCI290TX+VP0U/K/aFxzHzQWHWURL+CtHMSbex1lCdpXD1SoR2sYuxDu5aNI9lPoXpKTCggFZiDJbwylU0LEQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-normalize-charset@6.0.2:
+ resolution: {integrity: sha512-a8N9czmdnrjPHa3DeFlwqst5eaL5W8jYu3EBbTTkI5FHkfMhFZh1EGbku6jhHhIzTA6tquI2P42NtZ59M/H/kQ==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-normalize-display-values@6.0.2:
+ resolution: {integrity: sha512-8H04Mxsb82ON/aAkPeq8kcBbAtI5Q2a64X/mnRRfPXBq7XeogoQvReqxEfc0B4WPq1KimjezNC8flUtC3Qz6jg==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-normalize-positions@6.0.2:
+ resolution: {integrity: sha512-/JFzI441OAB9O7VnLA+RtSNZvQ0NCFZDOtp6QPFo1iIyawyXg0YI3CYM9HBy1WvwCRHnPep/BvI1+dGPKoXx/Q==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-normalize-repeat-style@6.0.2:
+ resolution: {integrity: sha512-YdCgsfHkJ2jEXwR4RR3Tm/iOxSfdRt7jplS6XRh9Js9PyCR/aka/FCb6TuHT2U8gQubbm/mPmF6L7FY9d79VwQ==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-normalize-string@6.0.2:
+ resolution: {integrity: sha512-vQZIivlxlfqqMp4L9PZsFE4YUkWniziKjQWUtsxUiVsSSPelQydwS8Wwcuw0+83ZjPWNTl02oxlIvXsmmG+CiQ==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-normalize-timing-functions@6.0.2:
+ resolution: {integrity: sha512-a+YrtMox4TBtId/AEwbA03VcJgtyW4dGBizPl7e88cTFULYsprgHWTbfyjSLyHeBcK/Q9JhXkt2ZXiwaVHoMzA==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-normalize-unicode@6.1.0:
+ resolution: {integrity: sha512-QVC5TQHsVj33otj8/JD869Ndr5Xcc/+fwRh4HAsFsAeygQQXm+0PySrKbr/8tkDKzW+EVT3QkqZMfFrGiossDg==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-normalize-url@6.0.2:
+ resolution: {integrity: sha512-kVNcWhCeKAzZ8B4pv/DnrU1wNh458zBNp8dh4y5hhxih5RZQ12QWMuQrDgPRw3LRl8mN9vOVfHl7uhvHYMoXsQ==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-normalize-whitespace@6.0.2:
+ resolution: {integrity: sha512-sXZ2Nj1icbJOKmdjXVT9pnyHQKiSAyuNQHSgRCUgThn2388Y9cGVDR+E9J9iAYbSbLHI+UUwLVl1Wzco/zgv0Q==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-opacity-percentage@3.0.0:
+ resolution: {integrity: sha512-K6HGVzyxUxd/VgZdX04DCtdwWJ4NGLG212US4/LA1TLAbHgmAsTWVR86o+gGIbFtnTkfOpb9sCRBx8K7HO66qQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-ordered-values@6.0.2:
+ resolution: {integrity: sha512-VRZSOB+JU32RsEAQrO94QPkClGPKJEL/Z9PCBImXMhIeK5KAYo6slP/hBYlLgrCjFxyqvn5VC81tycFEDBLG1Q==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-overflow-shorthand@6.0.0:
+ resolution: {integrity: sha512-BdDl/AbVkDjoTofzDQnwDdm/Ym6oS9KgmO7Gr+LHYjNWJ6ExORe4+3pcLQsLA9gIROMkiGVjjwZNoL/mpXHd5Q==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-page-break@3.0.4:
+ resolution: {integrity: sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==}
+ peerDependencies:
+ postcss: ^8
+
+ postcss-place@10.0.0:
+ resolution: {integrity: sha512-5EBrMzat2pPAxQNWYavwAfoKfYcTADJ8AXGVPcUZ2UkNloUTWzJQExgrzrDkh3EKzmAx1evfTAzF9I8NGcc+qw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-preset-env@10.4.0:
+ resolution: {integrity: sha512-2kqpOthQ6JhxqQq1FSAAZGe9COQv75Aw8WbsOvQVNJ2nSevc9Yx/IKZGuZ7XJ+iOTtVon7LfO7ELRzg8AZ+sdw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-pseudo-class-any-link@10.0.1:
+ resolution: {integrity: sha512-3el9rXlBOqTFaMFkWDOkHUTQekFIYnaQY55Rsp8As8QQkpiSgIYEcF/6Ond93oHiDsGb4kad8zjt+NPlOC1H0Q==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-reduce-idents@6.0.3:
+ resolution: {integrity: sha512-G3yCqZDpsNPoQgbDUy3T0E6hqOQ5xigUtBQyrmq3tn2GxlyiL0yyl7H+T8ulQR6kOcHJ9t7/9H4/R2tv8tJbMA==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-reduce-initial@6.1.0:
+ resolution: {integrity: sha512-RarLgBK/CrL1qZags04oKbVbrrVK2wcxhvta3GCxrZO4zveibqbRPmm2VI8sSgCXwoUHEliRSbOfpR0b/VIoiw==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-reduce-transforms@6.0.2:
+ resolution: {integrity: sha512-sB+Ya++3Xj1WaT9+5LOOdirAxP7dJZms3GRcYheSPi1PiTMigsxHAdkrbItHxwYHr4kt1zL7mmcHstgMYT+aiA==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-replace-overflow-wrap@4.0.0:
+ resolution: {integrity: sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==}
+ peerDependencies:
+ postcss: ^8.0.3
+
+ postcss-selector-not@8.0.1:
+ resolution: {integrity: sha512-kmVy/5PYVb2UOhy0+LqUYAhKj7DUGDpSWa5LZqlkWJaaAV+dxxsOG3+St0yNLu6vsKD7Dmqx+nWQt0iil89+WA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-selector-parser@6.1.2:
+ resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==}
+ engines: {node: '>=4'}
+
+ postcss-selector-parser@7.1.0:
+ resolution: {integrity: sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==}
+ engines: {node: '>=4'}
+
+ postcss-sort-media-queries@5.2.0:
+ resolution: {integrity: sha512-AZ5fDMLD8SldlAYlvi8NIqo0+Z8xnXU2ia0jxmuhxAU+Lqt9K+AlmLNJ/zWEnE9x+Zx3qL3+1K20ATgNOr3fAA==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ postcss: ^8.4.23
+
+ postcss-svgo@6.0.3:
+ resolution: {integrity: sha512-dlrahRmxP22bX6iKEjOM+c8/1p+81asjKT+V5lrgOH944ryx/OHpclnIbGsKVd3uWOXFLYJwCVf0eEkJGvO96g==}
+ engines: {node: ^14 || ^16 || >= 18}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-unique-selectors@6.0.4:
+ resolution: {integrity: sha512-K38OCaIrO8+PzpArzkLKB42dSARtC2tmG6PvD4b1o1Q2E9Os8jzfWFfSy/rixsHwohtsDdFtAWGjFVFUdwYaMg==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss-value-parser@4.2.0:
+ resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
+
+ postcss-zindex@6.0.2:
+ resolution: {integrity: sha512-5BxW9l1evPB/4ZIc+2GobEBoKC+h8gPGCMi+jxsYvd2x0mjq7wazk6DrP71pStqxE9Foxh5TVnonbWpFZzXaYg==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
+ postcss@8.4.31:
+ resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==}
+ engines: {node: ^10 || ^12 || >=14}
+
+ postcss@8.5.6:
+ resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==}
+ engines: {node: ^10 || ^12 || >=14}
+
+ prelude-ls@1.2.1:
+ resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
+ engines: {node: '>= 0.8.0'}
+
+ prettier-plugin-tailwindcss@0.7.1:
+ resolution: {integrity: sha512-Bzv1LZcuiR1Sk02iJTS1QzlFNp/o5l2p3xkopwOrbPmtMeh3fK9rVW5M3neBQzHq+kGKj/4LGQMTNcTH4NGPtQ==}
engines: {node: '>=20.19'}
peerDependencies:
'@ianvs/prettier-plugin-sort-imports': '*'
@@ -8656,6 +10869,9 @@ packages:
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}
@@ -8664,10 +10880,23 @@ packages:
resolution: {integrity: sha512-9uBdv/B4EefsuAL+pWqueZyZS2Ba+LxfFeQ9DN14HU4bN8bhaxKdkpjpB6fs9+pSjIBu+FXQHImEg8j/Lw0+vA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
+ pretty-time@1.1.0:
+ resolution: {integrity: sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==}
+ engines: {node: '>=4'}
+
preview-email@3.1.0:
resolution: {integrity: sha512-ZtV1YrwscEjlrUzYrTSs6Nwo49JM3pXLM4fFOBSC3wSni+bxaWlw9/Qgk75PZO8M7cX2EybmL2iwvaV3vkAttw==}
engines: {node: '>=14'}
+ prism-react-renderer@2.4.1:
+ resolution: {integrity: sha512-ey8Ls/+Di31eqzUxC46h8MksNuGx/n0AAC8uKpwFau4RPDYLuE3EXTp8N8G2vX2N7UC/+IXeNUnlWBGGcAG+Ig==}
+ peerDependencies:
+ react: '>=16.0.0'
+
+ prismjs@1.30.0:
+ resolution: {integrity: sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw==}
+ engines: {node: '>=6'}
+
process-nextick-args@2.0.1:
resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
@@ -8684,9 +10913,19 @@ packages:
promise@7.3.1:
resolution: {integrity: sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==}
+ 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@6.5.0:
+ resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==}
+
+ property-information@7.1.0:
+ resolution: {integrity: sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==}
+
proto-list@1.2.4:
resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==}
@@ -8744,9 +10983,17 @@ packages:
resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
engines: {node: '>=6'}
+ pupa@3.3.0:
+ resolution: {integrity: sha512-LjgDO2zPtoXP2wJpDjZrGdojii1uqO0cnwKoIoUzkfS98HDmbeiGmYiXo3lXeFlq2xvne1QFQhwYXSUCLKtEuA==}
+ engines: {node: '>=12.20'}
+
pure-rand@7.0.1:
resolution: {integrity: sha512-oTUZM/NAZS8p7ANR3SHh30kXB+zK2r2BPcEn/awJIbOvq82WoMN4p62AWWp3Hhw50G0xMsw1mhIBLqHw64EcNQ==}
+ qs@6.13.0:
+ resolution: {integrity: sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==}
+ engines: {node: '>=0.6'}
+
qs@6.14.0:
resolution: {integrity: sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==}
engines: {node: '>=0.6'}
@@ -8754,6 +11001,9 @@ packages:
queue-microtask@1.2.3:
resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
+ queue@6.0.2:
+ resolution: {integrity: sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==}
+
quick-format-unescaped@4.0.4:
resolution: {integrity: sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==}
@@ -8764,10 +11014,18 @@ packages:
randombytes@2.1.0:
resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
+ range-parser@1.2.0:
+ resolution: {integrity: sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==}
+ engines: {node: '>= 0.6'}
+
range-parser@1.2.1:
resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==}
engines: {node: '>= 0.6'}
+ raw-body@2.5.2:
+ resolution: {integrity: sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==}
+ engines: {node: '>= 0.8'}
+
raw-body@3.0.1:
resolution: {integrity: sha512-9G8cA+tuMS75+6G/TzW8OtLzmBDMo8p1JRxN5AZ+LAp8uxGA8V8GZm4GQ4/N5QNQEnLmg6SS7wyuSmbKepiKqA==}
engines: {node: '>= 0.10'}
@@ -8788,11 +11046,27 @@ packages:
date-fns: ^2.28.0 || ^3.0.0
react: ^16.8.0 || ^17.0.0 || ^18.0.0
+ react-dev-utils@12.0.1:
+ resolution: {integrity: sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ typescript: '>=2.7'
+ webpack: '>=4'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
react-dom@19.2.0:
resolution: {integrity: sha512-UlbRu4cAiGaIewkPyiRGJk0imDN2T3JjieT6spoL2UeSf5od4n5LB/mQ4ejmxhCFT1tYe8IvaFulzynWovsEFQ==}
peerDependencies:
react: ^19.2.0
+ react-error-overlay@6.1.0:
+ resolution: {integrity: sha512-SN/U6Ytxf1QGkw/9ve5Y+NxBbZM6Ht95tuXNMKs8EJyFa/Vy/+Co3stop3KBHARfn/giv+Lj1uUnTfOJ3moFEQ==}
+
+ react-fast-compare@3.2.2:
+ resolution: {integrity: sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==}
+
react-hook-form@7.66.0:
resolution: {integrity: sha512-xXBqsWGKrY46ZqaHDo+ZUYiMUgi8suYu5kdrS20EG8KiL7VRQitEbNjm+UcrDYrNi1YLyfpmAeGjCZYXLT9YBw==}
engines: {node: '>=18.0.0'}
@@ -8824,6 +11098,19 @@ packages:
react-is@18.3.1:
resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==}
+ react-json-view-lite@1.5.0:
+ resolution: {integrity: sha512-nWqA1E4jKPklL2jvHWs6s+7Na0qNgw9HCP6xehdQJeg6nPBTFZgGwyko9Q0oj+jQWKTTVRS30u0toM5wiuL3iw==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ react: ^16.13.1 || ^17.0.0 || ^18.0.0
+
+ react-loadable-ssr-addon-v5-slorber@1.0.1:
+ resolution: {integrity: sha512-lq3Lyw1lGku8zUEJPDxsNm1AfYHBrO9Y1+olAYwpUJ2IGFBskM0DMKok97A6LWUpHm+o7IvQBOWu9MLenp9Z+A==}
+ engines: {node: '>=10.13.0'}
+ peerDependencies:
+ react-loadable: '*'
+ webpack: '>=4.41.1 || 5.x'
+
react-redux@9.2.0:
resolution: {integrity: sha512-ROY9fvHhwOD9ySfrF0wmvu//bKCQ6AeZZq1nJNtbDC+kk5DuSuNX/n6YWYF/SYy7bSba4D4FSz8DJeKY/S/r+g==}
peerDependencies:
@@ -8856,6 +11143,22 @@ packages:
'@types/react':
optional: true
+ react-router-config@5.1.1:
+ resolution: {integrity: sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==}
+ peerDependencies:
+ react: '>=15'
+ react-router: '>=5'
+
+ react-router-dom@5.3.4:
+ resolution: {integrity: sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==}
+ peerDependencies:
+ react: '>=15'
+
+ react-router@5.3.4:
+ resolution: {integrity: sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==}
+ peerDependencies:
+ react: '>=15'
+
react-select@5.10.2:
resolution: {integrity: sha512-Z33nHdEFWq9tfnfVXaiM12rbJmk+QjFEztWLtmXqQhz6Al4UZZ9xc0wiatmGtUOCCnHN0WizL3tCMYRENX4rVQ==}
peerDependencies:
@@ -8915,6 +11218,9 @@ packages:
resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==}
engines: {node: '>= 14.18.0'}
+ reading-time@1.5.0:
+ resolution: {integrity: sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==}
+
real-require@0.2.0:
resolution: {integrity: sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg==}
engines: {node: '>= 12.13.0'}
@@ -8927,6 +11233,28 @@ packages:
react-dom: ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
react-is: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+ rechoir@0.6.2:
+ resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==}
+ engines: {node: '>= 0.10'}
+
+ recma-build-jsx@1.0.0:
+ resolution: {integrity: sha512-8GtdyqaBcDfva+GUKDr3nev3VpKAhup1+RvkMvUxURHpW7QyIvk9F5wz7Vzo06CEMSilw6uArgRqhpiUcWp8ew==}
+
+ recma-jsx@1.0.1:
+ resolution: {integrity: sha512-huSIy7VU2Z5OLv6oFLosQGGDqPqdO1iq6bWNAdhzMxSJP7RAso4fCZ1cKu8j9YHCZf3TPrq4dw3okhrylgcd7w==}
+ peerDependencies:
+ acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
+
+ recma-parse@1.0.0:
+ resolution: {integrity: sha512-OYLsIGBB5Y5wjnSnQW6t3Xg7q3fQ7FWbw/vcXtORTnyaSFscOtABg+7Pnz6YZ6c27fG1/aN8CjfwoUEUIdwqWQ==}
+
+ recma-stringify@1.0.0:
+ resolution: {integrity: sha512-cjwII1MdIIVloKvC9ErQ+OgAtwHBmcZ0Bg4ciz78FtbT8In39aAYbaA7zvxQ61xVMSPE8WxhLwLbhif4Js2C+g==}
+
+ recursive-readdir@2.2.3:
+ resolution: {integrity: sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==}
+ engines: {node: '>=6.0.0'}
+
redent@3.0.0:
resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==}
engines: {node: '>=8'}
@@ -8961,6 +11289,14 @@ packages:
resolution: {integrity: sha512-0ghuzq67LI9bLXpOX/ISfve/Mq33a4aFRzoQYhnnok1JOFpmE/A2TBGkNVenOGEeSBCjIiWcc6MVOG5HEQv0sA==}
engines: {node: '>=4'}
+ registry-auth-token@5.1.0:
+ resolution: {integrity: sha512-GdekYuwLXLxMuFTwAPg5UKGLW/UXzQrZvH/Zj791BQif5T05T0RsaLfHc9q3ZOKi7n+BoprPD9mJ0O0k4xzUlw==}
+ engines: {node: '>=14'}
+
+ registry-url@6.0.1:
+ resolution: {integrity: sha512-+crtS5QjFRqFCoQmvGduwYWEBng99ZvmFvF+cUJkGYF1L1BfU8C6Zp9T7f5vPAwyLkUExpvK+ANVZmGU49qi4Q==}
+ engines: {node: '>=12'}
+
regjsgen@0.8.0:
resolution: {integrity: sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==}
@@ -8968,10 +11304,48 @@ packages:
resolution: {integrity: sha512-NZQZdC5wOE/H3UT28fVGL+ikOZcEzfMGk/c3iN9UGxzWHMa1op7274oyiUVrAG4B2EuFhus8SvkaYnhvW92p9Q==}
hasBin: true
+ rehype-raw@7.0.0:
+ resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==}
+
+ rehype-recma@1.0.0:
+ resolution: {integrity: sha512-lqA4rGUf1JmacCNWWZx0Wv1dHqMwxzsDWYMTowuplHF3xH0N/MmrZ/G3BDZnzAkRmxDadujCjaKM2hqYdCBOGw==}
+
relateurl@0.2.7:
resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==}
engines: {node: '>= 0.10'}
+ remark-directive@3.0.1:
+ resolution: {integrity: sha512-gwglrEQEZcZYgVyG1tQuA+h58EZfq5CSULw7J90AFuCTyib1thgHPoqQ+h9iFvU6R+vnZ5oNFQR5QKgGpk741A==}
+
+ remark-emoji@4.0.1:
+ resolution: {integrity: sha512-fHdvsTR1dHkWKev9eNyhTo4EFwbUvJ8ka9SgeWkMPYFX4WoI7ViVBms3PjlQYgw5TLvNQso3GUB/b/8t3yo+dg==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+
+ remark-frontmatter@5.0.0:
+ resolution: {integrity: sha512-XTFYvNASMe5iPN0719nPrdItC9aU0ssC4v14mH1BCi1u0n1gAocqcujWUrByftZTbLhRtiKRyjYTSIOcr69UVQ==}
+
+ remark-gfm@4.0.1:
+ resolution: {integrity: sha512-1quofZ2RQ9EWdeN34S79+KExV1764+wCUGop5CPL1WGdD0ocPpu91lzPGbwWMECpEpd42kJGQwzRfyov9j4yNg==}
+
+ remark-mdx@3.1.1:
+ resolution: {integrity: sha512-Pjj2IYlUY3+D8x00UJsIOg5BEvfMyeI+2uLPn9VO9Wg4MEtN/VTIq2NEJQfde9PnX15KgtHyl9S0BcTnWrIuWg==}
+
+ remark-parse@11.0.0:
+ resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==}
+
+ remark-rehype@11.1.2:
+ resolution: {integrity: sha512-Dh7l57ianaEoIpzbp0PC9UKAdCSVklD8E5Rpw7ETfbTl3FqcOOgq5q2LVDhgGCkaBv7p24JXikPdvhhmHvKMsw==}
+
+ remark-stringify@11.0.0:
+ resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==}
+
+ renderkid@3.0.0:
+ resolution: {integrity: sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==}
+
+ repeat-string@1.6.1:
+ resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==}
+ engines: {node: '>=0.10'}
+
require-directory@2.1.1:
resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
engines: {node: '>=0.10.0'}
@@ -8980,6 +11354,12 @@ packages:
resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==}
engines: {node: '>=0.10.0'}
+ require-like@0.1.2:
+ resolution: {integrity: sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==}
+
+ requires-port@1.0.0:
+ resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==}
+
reselect@5.1.1:
resolution: {integrity: sha512-K/BG6eIky/SBpzfHZv/dd+9JBFiS4SWV7FIujVyJRux6e45+73RaUHXLmIR1f7WOMaQ0U1km6qwklRQxpJJY0w==}
@@ -9001,6 +11381,9 @@ packages:
resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==}
engines: {node: '>=8'}
+ resolve-pathname@3.0.0:
+ resolution: {integrity: sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==}
+
resolve@1.22.11:
resolution: {integrity: sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==}
engines: {node: '>= 0.4'}
@@ -9022,6 +11405,10 @@ packages:
resolution: {integrity: sha512-I1XxrZSQ+oErkRR4jYbAyEEu2I0avBvvMM5JN+6EBprOGRCs63ENqZ3vjavq8fBw2+62G5LF5XelKwuJpcvcxw==}
engines: {node: '>=10'}
+ retry@0.13.1:
+ resolution: {integrity: sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==}
+ engines: {node: '>= 4'}
+
reusify@1.1.0:
resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==}
engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
@@ -9034,6 +11421,11 @@ packages:
deprecated: Rimraf versions prior to v4 are no longer supported
hasBin: true
+ rimraf@3.0.2:
+ resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
+ deprecated: Rimraf versions prior to v4 are no longer supported
+ hasBin: true
+
rollup@4.52.5:
resolution: {integrity: sha512-3GuObel8h7Kqdjt0gxkEzaifHTqLVW56Y/bjN7PSQtkKr0w3V/QYSdt6QWYtd7A1xUtYQigtdUfgj1RvWVtorw==}
engines: {node: '>=18.0.0', npm: '>=8.0.0'}
@@ -9049,6 +11441,11 @@ packages:
rtl-css-js@1.16.1:
resolution: {integrity: sha512-lRQgou1mu19e+Ya0LsTvKrVJ5TYUbqCVPAiImX3UfLTenarvPUl1QFdvu5Z3PYmHT9RCcwIfbjRQBntExyj3Zg==}
+ rtlcss@4.3.0:
+ resolution: {integrity: sha512-FI+pHEn7Wc4NqKXMXFM+VAYKEj/mRIcW4h24YVwVtyjI+EqGrLc2Hx/Ny0lrZ21cBWU2goLy36eqMcNj3AQJig==}
+ engines: {node: '>=12.0.0'}
+ hasBin: true
+
run-applescript@3.2.0:
resolution: {integrity: sha512-Ep0RsvAjnRcBX1p5vogbaBdAGu/8j/ewpvGqnQYunnLd9SM0vWcPJewPKNnWFggf0hF0pwIgwV5XK7qQ7UZ8Qg==}
engines: {node: '>=4'}
@@ -9090,6 +11487,9 @@ packages:
safer-buffer@2.1.2:
resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
+ sax@1.4.3:
+ resolution: {integrity: sha512-yqYn1JhPczigF94DMS+shiDMjDowYO6y9+wB/4WgO0Y19jWYk0lQ4tuG5KI7kj4FTp1wxPj5IFfcrz/s1c3jjQ==}
+
saxes@5.0.1:
resolution: {integrity: sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==}
engines: {node: '>=10'}
@@ -9101,6 +11501,10 @@ packages:
scheduler@0.27.0:
resolution: {integrity: sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==}
+ schema-utils@2.7.0:
+ resolution: {integrity: sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==}
+ engines: {node: '>= 8.9.0'}
+
schema-utils@3.3.0:
resolution: {integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==}
engines: {node: '>= 10.13.0'}
@@ -9113,6 +11517,13 @@ packages:
resolution: {integrity: sha512-9BakfsO2aUQN2K9Fdbj87RJIEZ82Q9IGim7FqM5OsebfoFC6ZHXgDq/KvniuLTPdeM8wY2o6Dj3WQ7KeQCj3cA==}
engines: {node: '>=0.10.0'}
+ search-insights@2.17.3:
+ resolution: {integrity: sha512-RQPdCYTa8A68uM2jwxoY842xDhvx3E5LFL1LxvxCNMev4o5mLuokczhzjAgGwUZBAmOKZknArSxLKmXtIi2AxQ==}
+
+ section-matter@1.0.0:
+ resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==}
+ engines: {node: '>=4'}
+
secure-json-parse@2.7.0:
resolution: {integrity: sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==}
@@ -9126,6 +11537,17 @@ packages:
selderee@0.11.0:
resolution: {integrity: sha512-5TF+l7p4+OsnP8BCCvSyZiSPc4x4//p5uPwK8TCnVPJYRmU2aYKMpOXvw8zM5a5JvuuCGN1jmsMwuU2W02ukfA==}
+ select-hose@2.0.0:
+ resolution: {integrity: sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==}
+
+ selfsigned@2.4.1:
+ resolution: {integrity: sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==}
+ engines: {node: '>=10'}
+
+ semver-diff@4.0.0:
+ resolution: {integrity: sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA==}
+ engines: {node: '>=12'}
+
semver-regex@4.0.5:
resolution: {integrity: sha512-hunMQrEy1T6Jr2uEVjrAIqjwWcQTgOAcIM52C8MY1EZSD3DDNft04XzvYKPqjED65bNVVko0YI38nYeEHCX3yw==}
engines: {node: '>=12'}
@@ -9147,6 +11569,10 @@ packages:
engines: {node: '>=10'}
hasBin: true
+ send@0.19.0:
+ resolution: {integrity: sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==}
+ engines: {node: '>= 0.8.0'}
+
send@1.2.0:
resolution: {integrity: sha512-uaW0WwXKpL9blXE2o0bRhoL2EGXIrZxQ2ZQ4mgcfoBxdFmQold+qWsD2jLrfZ0trjKL6vOw0j//eAwcALFjKSw==}
engines: {node: '>= 18'}
@@ -9157,6 +11583,17 @@ packages:
serialize-javascript@6.0.2:
resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==}
+ serve-handler@6.1.6:
+ resolution: {integrity: sha512-x5RL9Y2p5+Sh3D38Fh9i/iQ5ZK+e4xuXRd/pGbM4D13tgo/MGwbttUk8emytcr1YYzBYs+apnUngBDFYfpjPuQ==}
+
+ serve-index@1.9.1:
+ resolution: {integrity: sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==}
+ engines: {node: '>= 0.8.0'}
+
+ serve-static@1.16.2:
+ resolution: {integrity: sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==}
+ engines: {node: '>= 0.8.0'}
+
serve-static@2.2.0:
resolution: {integrity: sha512-61g9pCh0Vnh7IutZjtLGGpTA355+OPn2TyDv/6ivP2h/AdAVX9azsoxmg2/M6nZeQZNYBEwIcsne1mJd9oQItQ==}
engines: {node: '>= 18'}
@@ -9183,6 +11620,9 @@ packages:
setimmediate@1.0.5:
resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==}
+ setprototypeof@1.1.0:
+ resolution: {integrity: sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==}
+
setprototypeof@1.2.0:
resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==}
@@ -9191,6 +11631,13 @@ packages:
engines: {node: '>= 0.10'}
hasBin: true
+ shallow-clone@3.0.1:
+ resolution: {integrity: sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==}
+ engines: {node: '>=8'}
+
+ shallowequal@1.1.0:
+ resolution: {integrity: sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==}
+
sharp@0.34.5:
resolution: {integrity: sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
@@ -9211,6 +11658,15 @@ packages:
resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
engines: {node: '>=8'}
+ shell-quote@1.8.3:
+ resolution: {integrity: sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==}
+ engines: {node: '>= 0.4'}
+
+ shelljs@0.8.5:
+ resolution: {integrity: sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==}
+ engines: {node: '>=4'}
+ hasBin: true
+
shimmer@1.2.1:
resolution: {integrity: sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw==}
@@ -9237,16 +11693,39 @@ packages:
resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
engines: {node: '>=14'}
+ sirv@2.0.4:
+ resolution: {integrity: sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==}
+ engines: {node: '>= 10'}
+
+ sisteransi@1.0.5:
+ resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==}
+
+ sitemap@7.1.2:
+ resolution: {integrity: sha512-ARCqzHJ0p4gWt+j7NlU5eDlIO9+Rkr/JhPFZKKQ1l5GCus7rJH4UdrlVAh0xC/gDS/Qir2UMxqYNHtsKr2rpCw==}
+ engines: {node: '>=12.0.0', npm: '>=5.6.0'}
+ hasBin: true
+
+ skin-tone@2.0.0:
+ resolution: {integrity: sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==}
+ engines: {node: '>=8'}
+
slash@3.0.0:
resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
engines: {node: '>=8'}
+ slash@4.0.0:
+ resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==}
+ engines: {node: '>=12'}
+
slick@1.12.2:
resolution: {integrity: sha512-4qdtOGcBjral6YIBCWJ0ljFSKNLz9KkhbWtuGvUyRowl1kxfuE1x/Z/aJcaiilpb3do9bl5K7/1h9XC5wWpY/A==}
snake-case@3.0.4:
resolution: {integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==}
+ sockjs@0.3.24:
+ resolution: {integrity: sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==}
+
sonic-boom@4.2.0:
resolution: {integrity: sha512-INb7TM37/mAcsGmc9hyyI6+QR3rR1zVRu36B0NeGXKnOOLiZOfER5SA+N7X7k3yUYRzLWafduTDvJAfDswwEww==}
@@ -9256,6 +11735,10 @@ packages:
react: ^18.0.0 || ^19.0.0 || ^19.0.0-rc
react-dom: ^18.0.0 || ^19.0.0 || ^19.0.0-rc
+ sort-css-media-queries@2.2.0:
+ resolution: {integrity: sha512-0xtkGhWCC9MGt/EzgnvbbbKhqWjl1+/rncmhTh5qCpbYguXh6S/qwePfv/JQ8jePXXmqingylxoC49pCkSPIbA==}
+ engines: {node: '>= 6.3.0'}
+
sort-keys-length@1.0.1:
resolution: {integrity: sha512-GRbEOUqCxemTAk/b32F2xa8wDTs+Z1QHOkbhJDQTvv/6G3ZkbJ+frYWsTcc7cBB3Fu4wy4XlLCuNtJuMn7Gsvw==}
engines: {node: '>=0.10.0'}
@@ -9299,6 +11782,16 @@ packages:
engines: {node: '>= 8'}
deprecated: The work that was done in this beta branch won't be included in future versions
+ space-separated-tokens@2.0.2:
+ resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==}
+
+ spdy-transport@3.0.0:
+ resolution: {integrity: sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==}
+
+ spdy@4.0.2:
+ resolution: {integrity: sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==}
+ engines: {node: '>=6.0.0'}
+
split2@4.2.0:
resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==}
engines: {node: '>= 10.x'}
@@ -9314,6 +11807,10 @@ packages:
resolution: {integrity: sha512-qC9iz2FlN7DQl3+wjwn3802RTyjCx7sDvfQEXchwa6CWOx07/WVfh91gBmQ9fahw8snwGEWU3xGzOt4tFyHLxg==}
engines: {node: '>= 0.6'}
+ srcset@4.0.0:
+ resolution: {integrity: sha512-wvLeHgcVHKO8Sc/H/5lkGreJQVeYMm9rlmt8PuR1xE31rIuXhuzznUUqAt8MqLhB3MqJdFzlNAfpcWnxiFUcPw==}
+ engines: {node: '>=12'}
+
stack-chain@1.3.7:
resolution: {integrity: sha512-D8cWtWVdIe/jBA7v5p5Hwl5yOSOrmZPWDPe2KxQ5UAGD+nxbxU0lKXA4h85Ta6+qgdKVL3vUxsbIZjc1kBG7ug==}
@@ -9333,6 +11830,10 @@ packages:
stacktrace-js@2.0.2:
resolution: {integrity: sha512-Je5vBeY4S1r/RnLydLl0TBTi3F2qdfWmYsGvtfZgEI+SCprPppaIhQf5nGcal4gI4cGpCV/duLcAzT1np6sQqg==}
+ 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'}
@@ -9341,6 +11842,9 @@ packages:
resolution: {integrity: sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==}
engines: {node: '>= 0.8'}
+ std-env@3.10.0:
+ resolution: {integrity: sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==}
+
stop-iteration-iterator@1.1.0:
resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==}
engines: {node: '>= 0.4'}
@@ -9393,6 +11897,13 @@ packages:
string_decoder@1.3.0:
resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==}
+ stringify-entities@4.0.4:
+ resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==}
+
+ stringify-object@3.3.0:
+ resolution: {integrity: sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==}
+ engines: {node: '>=4'}
+
strip-ansi@6.0.1:
resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
engines: {node: '>=8'}
@@ -9401,6 +11912,10 @@ packages:
resolution: {integrity: sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==}
engines: {node: '>=12'}
+ strip-bom-string@1.0.0:
+ resolution: {integrity: sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==}
+ engines: {node: '>=0.10.0'}
+
strip-bom@3.0.0:
resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==}
engines: {node: '>=4'}
@@ -9443,6 +11958,12 @@ packages:
resolution: {integrity: sha512-KIy5nylvC5le1OdaaoCJ07L+8iQzJHGH6pWDuzS+d07Cu7n1MZ2x26P8ZKIWfbK02+XIL8Mp4RkWeqdUCrDMfg==}
engines: {node: '>=18'}
+ style-to-js@1.1.19:
+ resolution: {integrity: sha512-Ev+SgeqiNGT1ufsXyVC5RrJRXdrkRJ1Gol9Qw7Pb72YCKJXrBvP0ckZhBeVSrw2m06DJpei2528uIpjMb4TsoQ==}
+
+ style-to-object@1.0.12:
+ resolution: {integrity: sha512-ddJqYnoT4t97QvN2C95bCgt+m7AAgXjVnkk/jxAfmp7EAB8nnqqZYEbMd3em7/vEomDb2LAQKAy1RFfv41mdNw==}
+
styled-jsx@5.1.6:
resolution: {integrity: sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==}
engines: {node: '>= 12.0.0'}
@@ -9456,6 +11977,12 @@ packages:
babel-plugin-macros:
optional: true
+ stylehacks@6.1.1:
+ resolution: {integrity: sha512-gSTTEQ670cJNoaeIp9KX6lZmm8LJ3jPB5yJmX8Zq/wQxOsAFXV3qjWzHas3YYk1qesuVIyYWWUpZ0vSE/dTSGg==}
+ engines: {node: ^14 || ^16 || >=18.0}
+ peerDependencies:
+ postcss: ^8.4.31
+
stylis@4.2.0:
resolution: {integrity: sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw==}
@@ -9530,6 +12057,10 @@ packages:
engines: {node: '>=14.0.0'}
hasBin: true
+ tapable@1.1.3:
+ resolution: {integrity: sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==}
+ engines: {node: '>=6'}
+
tapable@2.3.0:
resolution: {integrity: sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==}
engines: {node: '>=6'}
@@ -9572,6 +12103,9 @@ packages:
text-decoder@1.2.3:
resolution: {integrity: sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA==}
+ 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'}
@@ -9589,9 +12123,15 @@ packages:
through@2.3.8:
resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==}
+ thunky@1.1.0:
+ resolution: {integrity: sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==}
+
tiny-invariant@1.3.3:
resolution: {integrity: sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==}
+ tiny-warning@1.0.3:
+ resolution: {integrity: sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==}
+
tinyexec@0.3.2:
resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==}
@@ -9643,6 +12183,13 @@ packages:
resolution: {integrity: sha512-kh9LVIWH5CnL63Ipf0jhlBIy0UsrMj/NJDfpsy1SqOXlLKEVyXXYrnFxFT1yOOYVGBSApeVnjPw/sBz5BfEjAQ==}
engines: {node: '>=14.16'}
+ toml@3.0.0:
+ resolution: {integrity: sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w==}
+
+ totalist@3.0.1:
+ resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==}
+ engines: {node: '>=6'}
+
tough-cookie@5.1.2:
resolution: {integrity: sha512-FVDYdxtnj0G6Qm/DhNPSb8Ju59ULcup3tuJxkFb5K8Bv2pUXILbf0xZWU8PX8Ov19OXljbUyveOFwRMwkXzO+A==}
engines: {node: '>=16'}
@@ -9664,6 +12211,12 @@ packages:
resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==}
hasBin: true
+ trim-lines@3.0.1:
+ resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==}
+
+ trough@2.2.0:
+ resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==}
+
ts-api-utils@2.1.0:
resolution: {integrity: sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==}
engines: {node: '>=18.12'}
@@ -9810,6 +12363,14 @@ packages:
resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==}
engines: {node: '>=10'}
+ type-fest@1.4.0:
+ resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==}
+ engines: {node: '>=10'}
+
+ type-fest@2.19.0:
+ resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==}
+ engines: {node: '>=12.20'}
+
type-fest@4.41.0:
resolution: {integrity: sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==}
engines: {node: '>=16'}
@@ -9838,6 +12399,9 @@ packages:
resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==}
engines: {node: '>= 0.4'}
+ 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==}
@@ -9959,6 +12523,10 @@ packages:
resolution: {integrity: sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==}
engines: {node: '>=4'}
+ unicode-emoji-modifier-base@1.0.0:
+ resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==}
+ engines: {node: '>=4'}
+
unicode-match-property-ecmascript@2.0.0:
resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==}
engines: {node: '>=4'}
@@ -9971,6 +12539,31 @@ packages:
resolution: {integrity: sha512-hpbDzxUY9BFwX+UeBnxv3Sh1q7HFxj48DTmXchNgRa46lO8uj3/1iEn3MiNUYTg1g9ctIqXCCERn8gYZhHC5lQ==}
engines: {node: '>=4'}
+ unified@11.0.5:
+ resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==}
+
+ unique-string@3.0.0:
+ resolution: {integrity: sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==}
+ engines: {node: '>=12'}
+
+ unist-util-is@6.0.1:
+ resolution: {integrity: sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g==}
+
+ unist-util-position-from-estree@2.0.0:
+ resolution: {integrity: sha512-KaFVRjoqLyF6YXCbVLNad/eS4+OfPQQn2yOd7zF/h5T/CSL2v8NpN6a5TPvtbXthAGw5nG+PuTtq+DdIZr+cRQ==}
+
+ unist-util-position@5.0.0:
+ resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==}
+
+ unist-util-stringify-position@4.0.0:
+ resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==}
+
+ unist-util-visit-parents@6.0.2:
+ resolution: {integrity: sha512-goh1s1TBrqSqukSc8wrjwWhL0hiJxgA8m4kFxGlQ+8FYQ3C/m11FcTs4YYem7V664AhHVvgoQLk890Ssdsr2IQ==}
+
+ unist-util-visit@5.0.0:
+ resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==}
+
universalify@2.0.1:
resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
engines: {node: '>= 10.0.0'}
@@ -9991,6 +12584,10 @@ packages:
peerDependencies:
browserslist: '>= 4.21.0'
+ update-notifier@6.0.2:
+ resolution: {integrity: sha512-EDxhTEVPZZRLWYcJ4ZXjGFN0oP7qYvbXWzEgRm/Yql4dHX5wDbvh89YHP6PK1lzZJYrMtXUuZZz8XGK+U6U1og==}
+ engines: {node: '>=14.16'}
+
upper-case@1.1.3:
resolution: {integrity: sha512-WRbjgmYzgXkCV7zNVpy5YgrHgbBv126rMALQQMrmzOVC4GM2waQ9x7xtm8VU+1yF2kWyPzI9zbZ48n4vSxwfSA==}
@@ -10000,6 +12597,16 @@ packages:
uri-js@4.4.1:
resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
+ 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
+
use-callback-ref@1.3.3:
resolution: {integrity: sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==}
engines: {node: '>=10'}
@@ -10037,6 +12644,13 @@ packages:
util-deprecate@1.0.2:
resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
+ utila@0.4.0:
+ resolution: {integrity: sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==}
+
+ utility-types@3.11.0:
+ resolution: {integrity: sha512-6Z7Ma2aVEWisaL6TvBCy7P8rm2LQoPv6dJ7ecIaIixHcwfbJ0x7mWdbcwlIM5IGQxPZSFYeqRCqlOOeKoJYMkw==}
+ engines: {node: '>= 4'}
+
utils-merge@1.0.1:
resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==}
engines: {node: '>= 0.4.0'}
@@ -10072,10 +12686,22 @@ packages:
resolution: {integrity: sha512-KxPOq3V2LmfQPP4eqf3Mq/zrT0Dqp2Vmx2Bn285LwVahLc+CsxOM0crBHczm8ijlcjZ0Q5Xd6LW3z3odTPnlrw==}
engines: {node: '>= 0.10'}
+ value-equal@1.0.1:
+ resolution: {integrity: sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==}
+
vary@1.1.2:
resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==}
engines: {node: '>= 0.8'}
+ vfile-location@5.0.3:
+ resolution: {integrity: sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==}
+
+ vfile-message@4.0.3:
+ resolution: {integrity: sha512-QTHzsGd1EhbZs4AsQ20JX1rC3cOlt/IWJruk893DfLRr57lcnOeMaWG4K0JrRta4mIJZKth2Au3mM3u03/JWKw==}
+
+ vfile@6.0.3:
+ resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==}
+
victory-vendor@37.3.6:
resolution: {integrity: sha512-SbPDPdDBYp+5MJHhBCAyI7wKM3d5ivekigc2Dk2s7pgbZ9wIgIBYGVw4zGHBml/qTFbexrofXW6Gu4noGxrOwQ==}
@@ -10094,9 +12720,15 @@ packages:
resolution: {integrity: sha512-c5EGNOiyxxV5qmTtAB7rbiXxi1ooX1pQKMLX/MIabJjRA0SJBQOjKF+KSVfHkr9U1cADPon0mRiVe/riyaiDUA==}
engines: {node: '>=10.13.0'}
+ wbuf@1.7.3:
+ resolution: {integrity: sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==}
+
wcwidth@1.0.1:
resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==}
+ web-namespaces@2.0.1:
+ resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==}
+
web-resource-inliner@6.0.1:
resolution: {integrity: sha512-kfqDxt5dTB1JhqsCUQVFDj0rmY+4HLwGQIsLPbyrsN9y9WV/1oFDSx3BQ4GfCv9X+jVeQ7rouTqwK53rA/7t8A==}
engines: {node: '>=10.0.0'}
@@ -10111,6 +12743,38 @@ packages:
resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==}
engines: {node: '>=12'}
+ webpack-bundle-analyzer@4.10.2:
+ resolution: {integrity: sha512-vJptkMm9pk5si4Bv922ZbKLV8UTT4zib4FPgXMhgzUny0bfDDkLXAVQs3ly3fS4/TN9ROFtb0NFrm04UXFE/Vw==}
+ engines: {node: '>= 10.13.0'}
+ hasBin: true
+
+ webpack-dev-middleware@5.3.4:
+ resolution: {integrity: sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==}
+ engines: {node: '>= 12.13.0'}
+ peerDependencies:
+ webpack: ^4.0.0 || ^5.0.0
+
+ webpack-dev-server@4.15.2:
+ resolution: {integrity: sha512-0XavAZbNJ5sDrCbkpWL8mia0o5WPOd2YGtxrEiZkBK9FjLppIUK2TgxK6qGD2P3hUXTJNNPVibrerKcx5WkR1g==}
+ engines: {node: '>= 12.13.0'}
+ hasBin: true
+ peerDependencies:
+ webpack: ^4.37.0 || ^5.0.0
+ webpack-cli: '*'
+ peerDependenciesMeta:
+ webpack:
+ optional: true
+ webpack-cli:
+ optional: true
+
+ webpack-merge@5.10.0:
+ resolution: {integrity: sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==}
+ engines: {node: '>=10.0.0'}
+
+ webpack-merge@6.0.1:
+ resolution: {integrity: sha512-hXXvrjtx2PLYx4qruKl+kyRSLc52V+cCvMxRjmKwoA+CBbbF5GfIBtR6kCvl0fYGqTUPKB+1ktVmTHqMOzgCBg==}
+ engines: {node: '>=18.0.0'}
+
webpack-node-externals@3.0.0:
resolution: {integrity: sha512-LnL6Z3GGDPht/AigwRh2dvL9PQPFQ8skEpVrWZXLWBYmqcaojHNN0onvHzie6rq7EWKrrBfPYqNEzTJgiwEQDQ==}
engines: {node: '>=6'}
@@ -10129,6 +12793,20 @@ packages:
webpack-cli:
optional: true
+ webpackbar@6.0.1:
+ resolution: {integrity: sha512-TnErZpmuKdwWBdMoexjio3KKX6ZtoKHRVvLIU0A47R0VVBDtx3ZyOJDktgYixhoJokZTYTt1Z37OkO9pnGJa9Q==}
+ engines: {node: '>=14.21.3'}
+ peerDependencies:
+ webpack: 3 || 4 || 5
+
+ websocket-driver@0.7.4:
+ resolution: {integrity: sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==}
+ engines: {node: '>=0.8.0'}
+
+ websocket-extensions@0.1.4:
+ resolution: {integrity: sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==}
+ engines: {node: '>=0.8.0'}
+
whatwg-encoding@3.1.1:
resolution: {integrity: sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==}
engines: {node: '>=18'}
@@ -10176,6 +12854,13 @@ packages:
resolution: {integrity: sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==}
engines: {node: '>=8'}
+ widest-line@4.0.1:
+ resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==}
+ engines: {node: '>=12'}
+
+ wildcard@2.0.1:
+ resolution: {integrity: sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==}
+
with@7.0.2:
resolution: {integrity: sha512-RNGKj82nUPg3g5ygxkQl0R937xLyho1J24ItRCBTr/m1YnZkzJy1hUiHUJrc/VlsDQzsCnInEGSg3bci0Lmd4w==}
engines: {node: '>= 10.0.0'}
@@ -10202,10 +12887,25 @@ packages:
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@5.0.1:
resolution: {integrity: sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
+ ws@7.5.10:
+ resolution: {integrity: sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==}
+ 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.18.3:
resolution: {integrity: sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==}
engines: {node: '>=10.0.0'}
@@ -10218,6 +12918,14 @@ packages:
utf-8-validate:
optional: true
+ xdg-basedir@5.1.0:
+ resolution: {integrity: sha512-GCPAHLvrIH13+c0SuacwvRYj2SxJXQ4kaVTT5xgL3kPrz56XxkF21IGhjSE1+W0aw7gpBWRGXLCPnPby6lSpmQ==}
+ engines: {node: '>=12'}
+
+ xml-js@1.6.11:
+ resolution: {integrity: sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g==}
+ hasBin: true
+
xml-name-validator@5.0.0:
resolution: {integrity: sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==}
engines: {node: '>=18'}
@@ -10246,6 +12954,11 @@ packages:
resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==}
engines: {node: '>= 6'}
+ yaml@2.8.1:
+ resolution: {integrity: sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==}
+ engines: {node: '>= 14.6'}
+ hasBin: true
+
yargs-parser@21.1.1:
resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
engines: {node: '>=12'}
@@ -10266,6 +12979,10 @@ packages:
resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
engines: {node: '>=10'}
+ yocto-queue@1.2.1:
+ resolution: {integrity: sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg==}
+ engines: {node: '>=12.20'}
+
yoctocolors-cjs@2.1.3:
resolution: {integrity: sha512-U/PBtDf35ff0D8X8D0jfdzHYEPFxAI7jJlxZXwCSez5M3190m+QobIfh+sWDWSHMCWWJN2AWamkegn6vr6YBTw==}
engines: {node: '>=18'}
@@ -10310,10 +13027,127 @@ packages:
use-sync-external-store:
optional: true
+ zwitch@2.0.4:
+ resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==}
+
snapshots:
'@adobe/css-tools@4.4.4': {}
+ '@algolia/abtesting@1.9.0':
+ dependencies:
+ '@algolia/client-common': 5.43.0
+ '@algolia/requester-browser-xhr': 5.43.0
+ '@algolia/requester-fetch': 5.43.0
+ '@algolia/requester-node-http': 5.43.0
+
+ '@algolia/autocomplete-core@1.17.9(@algolia/client-search@5.43.0)(algoliasearch@5.43.0)(search-insights@2.17.3)':
+ dependencies:
+ '@algolia/autocomplete-plugin-algolia-insights': 1.17.9(@algolia/client-search@5.43.0)(algoliasearch@5.43.0)(search-insights@2.17.3)
+ '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.43.0)(algoliasearch@5.43.0)
+ transitivePeerDependencies:
+ - '@algolia/client-search'
+ - algoliasearch
+ - search-insights
+
+ '@algolia/autocomplete-plugin-algolia-insights@1.17.9(@algolia/client-search@5.43.0)(algoliasearch@5.43.0)(search-insights@2.17.3)':
+ dependencies:
+ '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.43.0)(algoliasearch@5.43.0)
+ search-insights: 2.17.3
+ transitivePeerDependencies:
+ - '@algolia/client-search'
+ - algoliasearch
+
+ '@algolia/autocomplete-preset-algolia@1.17.9(@algolia/client-search@5.43.0)(algoliasearch@5.43.0)':
+ dependencies:
+ '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.43.0)(algoliasearch@5.43.0)
+ '@algolia/client-search': 5.43.0
+ algoliasearch: 5.43.0
+
+ '@algolia/autocomplete-shared@1.17.9(@algolia/client-search@5.43.0)(algoliasearch@5.43.0)':
+ dependencies:
+ '@algolia/client-search': 5.43.0
+ algoliasearch: 5.43.0
+
+ '@algolia/client-abtesting@5.43.0':
+ dependencies:
+ '@algolia/client-common': 5.43.0
+ '@algolia/requester-browser-xhr': 5.43.0
+ '@algolia/requester-fetch': 5.43.0
+ '@algolia/requester-node-http': 5.43.0
+
+ '@algolia/client-analytics@5.43.0':
+ dependencies:
+ '@algolia/client-common': 5.43.0
+ '@algolia/requester-browser-xhr': 5.43.0
+ '@algolia/requester-fetch': 5.43.0
+ '@algolia/requester-node-http': 5.43.0
+
+ '@algolia/client-common@5.43.0': {}
+
+ '@algolia/client-insights@5.43.0':
+ dependencies:
+ '@algolia/client-common': 5.43.0
+ '@algolia/requester-browser-xhr': 5.43.0
+ '@algolia/requester-fetch': 5.43.0
+ '@algolia/requester-node-http': 5.43.0
+
+ '@algolia/client-personalization@5.43.0':
+ dependencies:
+ '@algolia/client-common': 5.43.0
+ '@algolia/requester-browser-xhr': 5.43.0
+ '@algolia/requester-fetch': 5.43.0
+ '@algolia/requester-node-http': 5.43.0
+
+ '@algolia/client-query-suggestions@5.43.0':
+ dependencies:
+ '@algolia/client-common': 5.43.0
+ '@algolia/requester-browser-xhr': 5.43.0
+ '@algolia/requester-fetch': 5.43.0
+ '@algolia/requester-node-http': 5.43.0
+
+ '@algolia/client-search@5.43.0':
+ dependencies:
+ '@algolia/client-common': 5.43.0
+ '@algolia/requester-browser-xhr': 5.43.0
+ '@algolia/requester-fetch': 5.43.0
+ '@algolia/requester-node-http': 5.43.0
+
+ '@algolia/events@4.0.1': {}
+
+ '@algolia/ingestion@1.43.0':
+ dependencies:
+ '@algolia/client-common': 5.43.0
+ '@algolia/requester-browser-xhr': 5.43.0
+ '@algolia/requester-fetch': 5.43.0
+ '@algolia/requester-node-http': 5.43.0
+
+ '@algolia/monitoring@1.43.0':
+ dependencies:
+ '@algolia/client-common': 5.43.0
+ '@algolia/requester-browser-xhr': 5.43.0
+ '@algolia/requester-fetch': 5.43.0
+ '@algolia/requester-node-http': 5.43.0
+
+ '@algolia/recommend@5.43.0':
+ dependencies:
+ '@algolia/client-common': 5.43.0
+ '@algolia/requester-browser-xhr': 5.43.0
+ '@algolia/requester-fetch': 5.43.0
+ '@algolia/requester-node-http': 5.43.0
+
+ '@algolia/requester-browser-xhr@5.43.0':
+ dependencies:
+ '@algolia/client-common': 5.43.0
+
+ '@algolia/requester-fetch@5.43.0':
+ dependencies:
+ '@algolia/client-common': 5.43.0
+
+ '@algolia/requester-node-http@5.43.0':
+ dependencies:
+ '@algolia/client-common': 5.43.0
+
'@alloc/quick-lru@5.2.0': {}
'@angular-devkit/core@19.2.15(chokidar@4.0.3)':
@@ -10358,181 +13192,599 @@ snapshots:
ora: 5.4.1
rxjs: 7.8.1
transitivePeerDependencies:
- - chokidar
+ - chokidar
+
+ '@angular-devkit/schematics@19.2.17(chokidar@4.0.3)':
+ dependencies:
+ '@angular-devkit/core': 19.2.17(chokidar@4.0.3)
+ jsonc-parser: 3.3.1
+ magic-string: 0.30.17
+ ora: 5.4.1
+ rxjs: 7.8.1
+ transitivePeerDependencies:
+ - chokidar
+
+ '@asamuzakjp/css-color@3.2.0':
+ dependencies:
+ '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ lru-cache: 10.4.3
+
+ '@aws-crypto/crc32@5.2.0':
+ dependencies:
+ '@aws-crypto/util': 5.2.0
+ '@aws-sdk/types': 3.922.0
+ tslib: 2.8.1
+
+ '@aws-crypto/crc32c@5.2.0':
+ dependencies:
+ '@aws-crypto/util': 5.2.0
+ '@aws-sdk/types': 3.922.0
+ tslib: 2.8.1
+
+ '@aws-crypto/sha1-browser@5.2.0':
+ dependencies:
+ '@aws-crypto/supports-web-crypto': 5.2.0
+ '@aws-crypto/util': 5.2.0
+ '@aws-sdk/types': 3.922.0
+ '@aws-sdk/util-locate-window': 3.893.0
+ '@smithy/util-utf8': 2.3.0
+ tslib: 2.8.1
+
+ '@aws-crypto/sha256-browser@5.2.0':
+ dependencies:
+ '@aws-crypto/sha256-js': 5.2.0
+ '@aws-crypto/supports-web-crypto': 5.2.0
+ '@aws-crypto/util': 5.2.0
+ '@aws-sdk/types': 3.922.0
+ '@aws-sdk/util-locate-window': 3.893.0
+ '@smithy/util-utf8': 2.3.0
+ tslib: 2.8.1
+
+ '@aws-crypto/sha256-js@5.2.0':
+ dependencies:
+ '@aws-crypto/util': 5.2.0
+ '@aws-sdk/types': 3.922.0
+ tslib: 2.8.1
+
+ '@aws-crypto/supports-web-crypto@5.2.0':
+ dependencies:
+ tslib: 2.8.1
+
+ '@aws-crypto/util@5.2.0':
+ dependencies:
+ '@aws-sdk/types': 3.922.0
+ '@smithy/util-utf8': 2.3.0
+ tslib: 2.8.1
+
+ '@aws-sdk/client-s3@3.927.0':
+ dependencies:
+ '@aws-crypto/sha1-browser': 5.2.0
+ '@aws-crypto/sha256-browser': 5.2.0
+ '@aws-crypto/sha256-js': 5.2.0
+ '@aws-sdk/core': 3.927.0
+ '@aws-sdk/credential-provider-node': 3.927.0
+ '@aws-sdk/middleware-bucket-endpoint': 3.922.0
+ '@aws-sdk/middleware-expect-continue': 3.922.0
+ '@aws-sdk/middleware-flexible-checksums': 3.927.0
+ '@aws-sdk/middleware-host-header': 3.922.0
+ '@aws-sdk/middleware-location-constraint': 3.922.0
+ '@aws-sdk/middleware-logger': 3.922.0
+ '@aws-sdk/middleware-recursion-detection': 3.922.0
+ '@aws-sdk/middleware-sdk-s3': 3.927.0
+ '@aws-sdk/middleware-ssec': 3.922.0
+ '@aws-sdk/middleware-user-agent': 3.927.0
+ '@aws-sdk/region-config-resolver': 3.925.0
+ '@aws-sdk/signature-v4-multi-region': 3.927.0
+ '@aws-sdk/types': 3.922.0
+ '@aws-sdk/util-endpoints': 3.922.0
+ '@aws-sdk/util-user-agent-browser': 3.922.0
+ '@aws-sdk/util-user-agent-node': 3.927.0
+ '@aws-sdk/xml-builder': 3.921.0
+ '@smithy/config-resolver': 4.4.2
+ '@smithy/core': 3.17.2
+ '@smithy/eventstream-serde-browser': 4.2.4
+ '@smithy/eventstream-serde-config-resolver': 4.3.4
+ '@smithy/eventstream-serde-node': 4.2.4
+ '@smithy/fetch-http-handler': 5.3.5
+ '@smithy/hash-blob-browser': 4.2.5
+ '@smithy/hash-node': 4.2.4
+ '@smithy/hash-stream-node': 4.2.4
+ '@smithy/invalid-dependency': 4.2.4
+ '@smithy/md5-js': 4.2.4
+ '@smithy/middleware-content-length': 4.2.4
+ '@smithy/middleware-endpoint': 4.3.6
+ '@smithy/middleware-retry': 4.4.6
+ '@smithy/middleware-serde': 4.2.4
+ '@smithy/middleware-stack': 4.2.4
+ '@smithy/node-config-provider': 4.3.4
+ '@smithy/node-http-handler': 4.4.4
+ '@smithy/protocol-http': 5.3.4
+ '@smithy/smithy-client': 4.9.2
+ '@smithy/types': 4.8.1
+ '@smithy/url-parser': 4.2.4
+ '@smithy/util-base64': 4.3.0
+ '@smithy/util-body-length-browser': 4.2.0
+ '@smithy/util-body-length-node': 4.2.1
+ '@smithy/util-defaults-mode-browser': 4.3.5
+ '@smithy/util-defaults-mode-node': 4.2.8
+ '@smithy/util-endpoints': 3.2.4
+ '@smithy/util-middleware': 4.2.4
+ '@smithy/util-retry': 4.2.4
+ '@smithy/util-stream': 4.5.5
+ '@smithy/util-utf8': 4.2.0
+ '@smithy/util-waiter': 4.2.4
+ '@smithy/uuid': 1.1.0
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - aws-crt
+
+ '@aws-sdk/client-sesv2@3.925.0':
+ dependencies:
+ '@aws-crypto/sha256-browser': 5.2.0
+ '@aws-crypto/sha256-js': 5.2.0
+ '@aws-sdk/core': 3.922.0
+ '@aws-sdk/credential-provider-node': 3.925.0
+ '@aws-sdk/middleware-host-header': 3.922.0
+ '@aws-sdk/middleware-logger': 3.922.0
+ '@aws-sdk/middleware-recursion-detection': 3.922.0
+ '@aws-sdk/middleware-user-agent': 3.922.0
+ '@aws-sdk/region-config-resolver': 3.925.0
+ '@aws-sdk/signature-v4-multi-region': 3.922.0
+ '@aws-sdk/types': 3.922.0
+ '@aws-sdk/util-endpoints': 3.922.0
+ '@aws-sdk/util-user-agent-browser': 3.922.0
+ '@aws-sdk/util-user-agent-node': 3.922.0
+ '@smithy/config-resolver': 4.4.2
+ '@smithy/core': 3.17.2
+ '@smithy/fetch-http-handler': 5.3.5
+ '@smithy/hash-node': 4.2.4
+ '@smithy/invalid-dependency': 4.2.4
+ '@smithy/middleware-content-length': 4.2.4
+ '@smithy/middleware-endpoint': 4.3.6
+ '@smithy/middleware-retry': 4.4.6
+ '@smithy/middleware-serde': 4.2.4
+ '@smithy/middleware-stack': 4.2.4
+ '@smithy/node-config-provider': 4.3.4
+ '@smithy/node-http-handler': 4.4.4
+ '@smithy/protocol-http': 5.3.4
+ '@smithy/smithy-client': 4.9.2
+ '@smithy/types': 4.8.1
+ '@smithy/url-parser': 4.2.4
+ '@smithy/util-base64': 4.3.0
+ '@smithy/util-body-length-browser': 4.2.0
+ '@smithy/util-body-length-node': 4.2.1
+ '@smithy/util-defaults-mode-browser': 4.3.5
+ '@smithy/util-defaults-mode-node': 4.2.8
+ '@smithy/util-endpoints': 3.2.4
+ '@smithy/util-middleware': 4.2.4
+ '@smithy/util-retry': 4.2.4
+ '@smithy/util-utf8': 4.2.0
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - aws-crt
+
+ '@aws-sdk/client-sso@3.925.0':
+ dependencies:
+ '@aws-crypto/sha256-browser': 5.2.0
+ '@aws-crypto/sha256-js': 5.2.0
+ '@aws-sdk/core': 3.922.0
+ '@aws-sdk/middleware-host-header': 3.922.0
+ '@aws-sdk/middleware-logger': 3.922.0
+ '@aws-sdk/middleware-recursion-detection': 3.922.0
+ '@aws-sdk/middleware-user-agent': 3.922.0
+ '@aws-sdk/region-config-resolver': 3.925.0
+ '@aws-sdk/types': 3.922.0
+ '@aws-sdk/util-endpoints': 3.922.0
+ '@aws-sdk/util-user-agent-browser': 3.922.0
+ '@aws-sdk/util-user-agent-node': 3.922.0
+ '@smithy/config-resolver': 4.4.2
+ '@smithy/core': 3.17.2
+ '@smithy/fetch-http-handler': 5.3.5
+ '@smithy/hash-node': 4.2.4
+ '@smithy/invalid-dependency': 4.2.4
+ '@smithy/middleware-content-length': 4.2.4
+ '@smithy/middleware-endpoint': 4.3.6
+ '@smithy/middleware-retry': 4.4.6
+ '@smithy/middleware-serde': 4.2.4
+ '@smithy/middleware-stack': 4.2.4
+ '@smithy/node-config-provider': 4.3.4
+ '@smithy/node-http-handler': 4.4.4
+ '@smithy/protocol-http': 5.3.4
+ '@smithy/smithy-client': 4.9.2
+ '@smithy/types': 4.8.1
+ '@smithy/url-parser': 4.2.4
+ '@smithy/util-base64': 4.3.0
+ '@smithy/util-body-length-browser': 4.2.0
+ '@smithy/util-body-length-node': 4.2.1
+ '@smithy/util-defaults-mode-browser': 4.3.5
+ '@smithy/util-defaults-mode-node': 4.2.8
+ '@smithy/util-endpoints': 3.2.4
+ '@smithy/util-middleware': 4.2.4
+ '@smithy/util-retry': 4.2.4
+ '@smithy/util-utf8': 4.2.0
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - aws-crt
+
+ '@aws-sdk/client-sso@3.927.0':
+ dependencies:
+ '@aws-crypto/sha256-browser': 5.2.0
+ '@aws-crypto/sha256-js': 5.2.0
+ '@aws-sdk/core': 3.927.0
+ '@aws-sdk/middleware-host-header': 3.922.0
+ '@aws-sdk/middleware-logger': 3.922.0
+ '@aws-sdk/middleware-recursion-detection': 3.922.0
+ '@aws-sdk/middleware-user-agent': 3.927.0
+ '@aws-sdk/region-config-resolver': 3.925.0
+ '@aws-sdk/types': 3.922.0
+ '@aws-sdk/util-endpoints': 3.922.0
+ '@aws-sdk/util-user-agent-browser': 3.922.0
+ '@aws-sdk/util-user-agent-node': 3.927.0
+ '@smithy/config-resolver': 4.4.2
+ '@smithy/core': 3.17.2
+ '@smithy/fetch-http-handler': 5.3.5
+ '@smithy/hash-node': 4.2.4
+ '@smithy/invalid-dependency': 4.2.4
+ '@smithy/middleware-content-length': 4.2.4
+ '@smithy/middleware-endpoint': 4.3.6
+ '@smithy/middleware-retry': 4.4.6
+ '@smithy/middleware-serde': 4.2.4
+ '@smithy/middleware-stack': 4.2.4
+ '@smithy/node-config-provider': 4.3.4
+ '@smithy/node-http-handler': 4.4.4
+ '@smithy/protocol-http': 5.3.4
+ '@smithy/smithy-client': 4.9.2
+ '@smithy/types': 4.8.1
+ '@smithy/url-parser': 4.2.4
+ '@smithy/util-base64': 4.3.0
+ '@smithy/util-body-length-browser': 4.2.0
+ '@smithy/util-body-length-node': 4.2.1
+ '@smithy/util-defaults-mode-browser': 4.3.5
+ '@smithy/util-defaults-mode-node': 4.2.8
+ '@smithy/util-endpoints': 3.2.4
+ '@smithy/util-middleware': 4.2.4
+ '@smithy/util-retry': 4.2.4
+ '@smithy/util-utf8': 4.2.0
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - aws-crt
+
+ '@aws-sdk/core@3.922.0':
+ dependencies:
+ '@aws-sdk/types': 3.922.0
+ '@aws-sdk/xml-builder': 3.921.0
+ '@smithy/core': 3.17.2
+ '@smithy/node-config-provider': 4.3.4
+ '@smithy/property-provider': 4.2.4
+ '@smithy/protocol-http': 5.3.4
+ '@smithy/signature-v4': 5.3.4
+ '@smithy/smithy-client': 4.9.2
+ '@smithy/types': 4.8.1
+ '@smithy/util-base64': 4.3.0
+ '@smithy/util-middleware': 4.2.4
+ '@smithy/util-utf8': 4.2.0
+ tslib: 2.8.1
+
+ '@aws-sdk/core@3.927.0':
+ dependencies:
+ '@aws-sdk/types': 3.922.0
+ '@aws-sdk/xml-builder': 3.921.0
+ '@smithy/core': 3.17.2
+ '@smithy/node-config-provider': 4.3.4
+ '@smithy/property-provider': 4.2.4
+ '@smithy/protocol-http': 5.3.4
+ '@smithy/signature-v4': 5.3.4
+ '@smithy/smithy-client': 4.9.2
+ '@smithy/types': 4.8.1
+ '@smithy/util-base64': 4.3.0
+ '@smithy/util-middleware': 4.2.4
+ '@smithy/util-utf8': 4.2.0
+ tslib: 2.8.1
+
+ '@aws-sdk/credential-provider-env@3.922.0':
+ dependencies:
+ '@aws-sdk/core': 3.922.0
+ '@aws-sdk/types': 3.922.0
+ '@smithy/property-provider': 4.2.4
+ '@smithy/types': 4.8.1
+ tslib: 2.8.1
+
+ '@aws-sdk/credential-provider-env@3.927.0':
+ dependencies:
+ '@aws-sdk/core': 3.927.0
+ '@aws-sdk/types': 3.922.0
+ '@smithy/property-provider': 4.2.4
+ '@smithy/types': 4.8.1
+ tslib: 2.8.1
+
+ '@aws-sdk/credential-provider-http@3.922.0':
+ dependencies:
+ '@aws-sdk/core': 3.922.0
+ '@aws-sdk/types': 3.922.0
+ '@smithy/fetch-http-handler': 5.3.5
+ '@smithy/node-http-handler': 4.4.4
+ '@smithy/property-provider': 4.2.4
+ '@smithy/protocol-http': 5.3.4
+ '@smithy/smithy-client': 4.9.2
+ '@smithy/types': 4.8.1
+ '@smithy/util-stream': 4.5.5
+ tslib: 2.8.1
+
+ '@aws-sdk/credential-provider-http@3.927.0':
+ dependencies:
+ '@aws-sdk/core': 3.927.0
+ '@aws-sdk/types': 3.922.0
+ '@smithy/fetch-http-handler': 5.3.5
+ '@smithy/node-http-handler': 4.4.4
+ '@smithy/property-provider': 4.2.4
+ '@smithy/protocol-http': 5.3.4
+ '@smithy/smithy-client': 4.9.2
+ '@smithy/types': 4.8.1
+ '@smithy/util-stream': 4.5.5
+ tslib: 2.8.1
+
+ '@aws-sdk/credential-provider-ini@3.925.0':
+ dependencies:
+ '@aws-sdk/core': 3.922.0
+ '@aws-sdk/credential-provider-env': 3.922.0
+ '@aws-sdk/credential-provider-http': 3.922.0
+ '@aws-sdk/credential-provider-process': 3.922.0
+ '@aws-sdk/credential-provider-sso': 3.925.0
+ '@aws-sdk/credential-provider-web-identity': 3.925.0
+ '@aws-sdk/nested-clients': 3.925.0
+ '@aws-sdk/types': 3.922.0
+ '@smithy/credential-provider-imds': 4.2.4
+ '@smithy/property-provider': 4.2.4
+ '@smithy/shared-ini-file-loader': 4.3.4
+ '@smithy/types': 4.8.1
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - aws-crt
+
+ '@aws-sdk/credential-provider-ini@3.927.0':
+ dependencies:
+ '@aws-sdk/core': 3.927.0
+ '@aws-sdk/credential-provider-env': 3.927.0
+ '@aws-sdk/credential-provider-http': 3.927.0
+ '@aws-sdk/credential-provider-process': 3.927.0
+ '@aws-sdk/credential-provider-sso': 3.927.0
+ '@aws-sdk/credential-provider-web-identity': 3.927.0
+ '@aws-sdk/nested-clients': 3.927.0
+ '@aws-sdk/types': 3.922.0
+ '@smithy/credential-provider-imds': 4.2.4
+ '@smithy/property-provider': 4.2.4
+ '@smithy/shared-ini-file-loader': 4.3.4
+ '@smithy/types': 4.8.1
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - aws-crt
+
+ '@aws-sdk/credential-provider-node@3.925.0':
+ dependencies:
+ '@aws-sdk/credential-provider-env': 3.922.0
+ '@aws-sdk/credential-provider-http': 3.922.0
+ '@aws-sdk/credential-provider-ini': 3.925.0
+ '@aws-sdk/credential-provider-process': 3.922.0
+ '@aws-sdk/credential-provider-sso': 3.925.0
+ '@aws-sdk/credential-provider-web-identity': 3.925.0
+ '@aws-sdk/types': 3.922.0
+ '@smithy/credential-provider-imds': 4.2.4
+ '@smithy/property-provider': 4.2.4
+ '@smithy/shared-ini-file-loader': 4.3.4
+ '@smithy/types': 4.8.1
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - aws-crt
+
+ '@aws-sdk/credential-provider-node@3.927.0':
+ dependencies:
+ '@aws-sdk/credential-provider-env': 3.927.0
+ '@aws-sdk/credential-provider-http': 3.927.0
+ '@aws-sdk/credential-provider-ini': 3.927.0
+ '@aws-sdk/credential-provider-process': 3.927.0
+ '@aws-sdk/credential-provider-sso': 3.927.0
+ '@aws-sdk/credential-provider-web-identity': 3.927.0
+ '@aws-sdk/types': 3.922.0
+ '@smithy/credential-provider-imds': 4.2.4
+ '@smithy/property-provider': 4.2.4
+ '@smithy/shared-ini-file-loader': 4.3.4
+ '@smithy/types': 4.8.1
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - aws-crt
+
+ '@aws-sdk/credential-provider-process@3.922.0':
+ dependencies:
+ '@aws-sdk/core': 3.922.0
+ '@aws-sdk/types': 3.922.0
+ '@smithy/property-provider': 4.2.4
+ '@smithy/shared-ini-file-loader': 4.3.4
+ '@smithy/types': 4.8.1
+ tslib: 2.8.1
+
+ '@aws-sdk/credential-provider-process@3.927.0':
+ dependencies:
+ '@aws-sdk/core': 3.927.0
+ '@aws-sdk/types': 3.922.0
+ '@smithy/property-provider': 4.2.4
+ '@smithy/shared-ini-file-loader': 4.3.4
+ '@smithy/types': 4.8.1
+ tslib: 2.8.1
+
+ '@aws-sdk/credential-provider-sso@3.925.0':
+ dependencies:
+ '@aws-sdk/client-sso': 3.925.0
+ '@aws-sdk/core': 3.922.0
+ '@aws-sdk/token-providers': 3.925.0
+ '@aws-sdk/types': 3.922.0
+ '@smithy/property-provider': 4.2.4
+ '@smithy/shared-ini-file-loader': 4.3.4
+ '@smithy/types': 4.8.1
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - aws-crt
+
+ '@aws-sdk/credential-provider-sso@3.927.0':
+ dependencies:
+ '@aws-sdk/client-sso': 3.927.0
+ '@aws-sdk/core': 3.927.0
+ '@aws-sdk/token-providers': 3.927.0
+ '@aws-sdk/types': 3.922.0
+ '@smithy/property-provider': 4.2.4
+ '@smithy/shared-ini-file-loader': 4.3.4
+ '@smithy/types': 4.8.1
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - aws-crt
+
+ '@aws-sdk/credential-provider-web-identity@3.925.0':
+ dependencies:
+ '@aws-sdk/core': 3.922.0
+ '@aws-sdk/nested-clients': 3.925.0
+ '@aws-sdk/types': 3.922.0
+ '@smithy/property-provider': 4.2.4
+ '@smithy/shared-ini-file-loader': 4.3.4
+ '@smithy/types': 4.8.1
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - aws-crt
- '@angular-devkit/schematics@19.2.17(chokidar@4.0.3)':
+ '@aws-sdk/credential-provider-web-identity@3.927.0':
dependencies:
- '@angular-devkit/core': 19.2.17(chokidar@4.0.3)
- jsonc-parser: 3.3.1
- magic-string: 0.30.17
- ora: 5.4.1
- rxjs: 7.8.1
+ '@aws-sdk/core': 3.927.0
+ '@aws-sdk/nested-clients': 3.927.0
+ '@aws-sdk/types': 3.922.0
+ '@smithy/property-provider': 4.2.4
+ '@smithy/shared-ini-file-loader': 4.3.4
+ '@smithy/types': 4.8.1
+ tslib: 2.8.1
transitivePeerDependencies:
- - chokidar
+ - aws-crt
- '@asamuzakjp/css-color@3.2.0':
+ '@aws-sdk/middleware-bucket-endpoint@3.922.0':
dependencies:
- '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
- '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
- '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
- '@csstools/css-tokenizer': 3.0.4
- lru-cache: 10.4.3
+ '@aws-sdk/types': 3.922.0
+ '@aws-sdk/util-arn-parser': 3.893.0
+ '@smithy/node-config-provider': 4.3.4
+ '@smithy/protocol-http': 5.3.4
+ '@smithy/types': 4.8.1
+ '@smithy/util-config-provider': 4.2.0
+ tslib: 2.8.1
- '@aws-crypto/crc32@5.2.0':
+ '@aws-sdk/middleware-expect-continue@3.922.0':
dependencies:
- '@aws-crypto/util': 5.2.0
'@aws-sdk/types': 3.922.0
+ '@smithy/protocol-http': 5.3.4
+ '@smithy/types': 4.8.1
tslib: 2.8.1
- '@aws-crypto/crc32c@5.2.0':
+ '@aws-sdk/middleware-flexible-checksums@3.927.0':
dependencies:
+ '@aws-crypto/crc32': 5.2.0
+ '@aws-crypto/crc32c': 5.2.0
'@aws-crypto/util': 5.2.0
+ '@aws-sdk/core': 3.927.0
'@aws-sdk/types': 3.922.0
+ '@smithy/is-array-buffer': 4.2.0
+ '@smithy/node-config-provider': 4.3.4
+ '@smithy/protocol-http': 5.3.4
+ '@smithy/types': 4.8.1
+ '@smithy/util-middleware': 4.2.4
+ '@smithy/util-stream': 4.5.5
+ '@smithy/util-utf8': 4.2.0
tslib: 2.8.1
- '@aws-crypto/sha1-browser@5.2.0':
+ '@aws-sdk/middleware-host-header@3.922.0':
dependencies:
- '@aws-crypto/supports-web-crypto': 5.2.0
- '@aws-crypto/util': 5.2.0
'@aws-sdk/types': 3.922.0
- '@aws-sdk/util-locate-window': 3.893.0
- '@smithy/util-utf8': 2.3.0
+ '@smithy/protocol-http': 5.3.4
+ '@smithy/types': 4.8.1
tslib: 2.8.1
- '@aws-crypto/sha256-browser@5.2.0':
+ '@aws-sdk/middleware-location-constraint@3.922.0':
dependencies:
- '@aws-crypto/sha256-js': 5.2.0
- '@aws-crypto/supports-web-crypto': 5.2.0
- '@aws-crypto/util': 5.2.0
'@aws-sdk/types': 3.922.0
- '@aws-sdk/util-locate-window': 3.893.0
- '@smithy/util-utf8': 2.3.0
+ '@smithy/types': 4.8.1
tslib: 2.8.1
- '@aws-crypto/sha256-js@5.2.0':
+ '@aws-sdk/middleware-logger@3.922.0':
dependencies:
- '@aws-crypto/util': 5.2.0
'@aws-sdk/types': 3.922.0
+ '@smithy/types': 4.8.1
tslib: 2.8.1
- '@aws-crypto/supports-web-crypto@5.2.0':
+ '@aws-sdk/middleware-recursion-detection@3.922.0':
dependencies:
+ '@aws-sdk/types': 3.922.0
+ '@aws/lambda-invoke-store': 0.1.1
+ '@smithy/protocol-http': 5.3.4
+ '@smithy/types': 4.8.1
tslib: 2.8.1
- '@aws-crypto/util@5.2.0':
+ '@aws-sdk/middleware-sdk-s3@3.922.0':
dependencies:
+ '@aws-sdk/core': 3.922.0
'@aws-sdk/types': 3.922.0
- '@smithy/util-utf8': 2.3.0
+ '@aws-sdk/util-arn-parser': 3.893.0
+ '@smithy/core': 3.17.2
+ '@smithy/node-config-provider': 4.3.4
+ '@smithy/protocol-http': 5.3.4
+ '@smithy/signature-v4': 5.3.4
+ '@smithy/smithy-client': 4.9.2
+ '@smithy/types': 4.8.1
+ '@smithy/util-config-provider': 4.2.0
+ '@smithy/util-middleware': 4.2.4
+ '@smithy/util-stream': 4.5.5
+ '@smithy/util-utf8': 4.2.0
tslib: 2.8.1
- '@aws-sdk/client-s3@3.927.0':
+ '@aws-sdk/middleware-sdk-s3@3.927.0':
dependencies:
- '@aws-crypto/sha1-browser': 5.2.0
- '@aws-crypto/sha256-browser': 5.2.0
- '@aws-crypto/sha256-js': 5.2.0
'@aws-sdk/core': 3.927.0
- '@aws-sdk/credential-provider-node': 3.927.0
- '@aws-sdk/middleware-bucket-endpoint': 3.922.0
- '@aws-sdk/middleware-expect-continue': 3.922.0
- '@aws-sdk/middleware-flexible-checksums': 3.927.0
- '@aws-sdk/middleware-host-header': 3.922.0
- '@aws-sdk/middleware-location-constraint': 3.922.0
- '@aws-sdk/middleware-logger': 3.922.0
- '@aws-sdk/middleware-recursion-detection': 3.922.0
- '@aws-sdk/middleware-sdk-s3': 3.927.0
- '@aws-sdk/middleware-ssec': 3.922.0
- '@aws-sdk/middleware-user-agent': 3.927.0
- '@aws-sdk/region-config-resolver': 3.925.0
- '@aws-sdk/signature-v4-multi-region': 3.927.0
'@aws-sdk/types': 3.922.0
- '@aws-sdk/util-endpoints': 3.922.0
- '@aws-sdk/util-user-agent-browser': 3.922.0
- '@aws-sdk/util-user-agent-node': 3.927.0
- '@aws-sdk/xml-builder': 3.921.0
- '@smithy/config-resolver': 4.4.2
+ '@aws-sdk/util-arn-parser': 3.893.0
'@smithy/core': 3.17.2
- '@smithy/eventstream-serde-browser': 4.2.4
- '@smithy/eventstream-serde-config-resolver': 4.3.4
- '@smithy/eventstream-serde-node': 4.2.4
- '@smithy/fetch-http-handler': 5.3.5
- '@smithy/hash-blob-browser': 4.2.5
- '@smithy/hash-node': 4.2.4
- '@smithy/hash-stream-node': 4.2.4
- '@smithy/invalid-dependency': 4.2.4
- '@smithy/md5-js': 4.2.4
- '@smithy/middleware-content-length': 4.2.4
- '@smithy/middleware-endpoint': 4.3.6
- '@smithy/middleware-retry': 4.4.6
- '@smithy/middleware-serde': 4.2.4
- '@smithy/middleware-stack': 4.2.4
'@smithy/node-config-provider': 4.3.4
- '@smithy/node-http-handler': 4.4.4
'@smithy/protocol-http': 5.3.4
+ '@smithy/signature-v4': 5.3.4
'@smithy/smithy-client': 4.9.2
'@smithy/types': 4.8.1
- '@smithy/url-parser': 4.2.4
- '@smithy/util-base64': 4.3.0
- '@smithy/util-body-length-browser': 4.2.0
- '@smithy/util-body-length-node': 4.2.1
- '@smithy/util-defaults-mode-browser': 4.3.5
- '@smithy/util-defaults-mode-node': 4.2.8
- '@smithy/util-endpoints': 3.2.4
+ '@smithy/util-config-provider': 4.2.0
'@smithy/util-middleware': 4.2.4
- '@smithy/util-retry': 4.2.4
'@smithy/util-stream': 4.5.5
'@smithy/util-utf8': 4.2.0
- '@smithy/util-waiter': 4.2.4
- '@smithy/uuid': 1.1.0
tslib: 2.8.1
- transitivePeerDependencies:
- - aws-crt
- '@aws-sdk/client-sesv2@3.925.0':
+ '@aws-sdk/middleware-ssec@3.922.0':
+ dependencies:
+ '@aws-sdk/types': 3.922.0
+ '@smithy/types': 4.8.1
+ tslib: 2.8.1
+
+ '@aws-sdk/middleware-user-agent@3.922.0':
dependencies:
- '@aws-crypto/sha256-browser': 5.2.0
- '@aws-crypto/sha256-js': 5.2.0
'@aws-sdk/core': 3.922.0
- '@aws-sdk/credential-provider-node': 3.925.0
- '@aws-sdk/middleware-host-header': 3.922.0
- '@aws-sdk/middleware-logger': 3.922.0
- '@aws-sdk/middleware-recursion-detection': 3.922.0
- '@aws-sdk/middleware-user-agent': 3.922.0
- '@aws-sdk/region-config-resolver': 3.925.0
- '@aws-sdk/signature-v4-multi-region': 3.922.0
'@aws-sdk/types': 3.922.0
'@aws-sdk/util-endpoints': 3.922.0
- '@aws-sdk/util-user-agent-browser': 3.922.0
- '@aws-sdk/util-user-agent-node': 3.922.0
- '@smithy/config-resolver': 4.4.2
'@smithy/core': 3.17.2
- '@smithy/fetch-http-handler': 5.3.5
- '@smithy/hash-node': 4.2.4
- '@smithy/invalid-dependency': 4.2.4
- '@smithy/middleware-content-length': 4.2.4
- '@smithy/middleware-endpoint': 4.3.6
- '@smithy/middleware-retry': 4.4.6
- '@smithy/middleware-serde': 4.2.4
- '@smithy/middleware-stack': 4.2.4
- '@smithy/node-config-provider': 4.3.4
- '@smithy/node-http-handler': 4.4.4
'@smithy/protocol-http': 5.3.4
- '@smithy/smithy-client': 4.9.2
'@smithy/types': 4.8.1
- '@smithy/url-parser': 4.2.4
- '@smithy/util-base64': 4.3.0
- '@smithy/util-body-length-browser': 4.2.0
- '@smithy/util-body-length-node': 4.2.1
- '@smithy/util-defaults-mode-browser': 4.3.5
- '@smithy/util-defaults-mode-node': 4.2.8
- '@smithy/util-endpoints': 3.2.4
- '@smithy/util-middleware': 4.2.4
- '@smithy/util-retry': 4.2.4
- '@smithy/util-utf8': 4.2.0
tslib: 2.8.1
- transitivePeerDependencies:
- - aws-crt
- '@aws-sdk/client-sso@3.925.0':
+ '@aws-sdk/middleware-user-agent@3.927.0':
+ dependencies:
+ '@aws-sdk/core': 3.927.0
+ '@aws-sdk/types': 3.922.0
+ '@aws-sdk/util-endpoints': 3.922.0
+ '@smithy/core': 3.17.2
+ '@smithy/protocol-http': 5.3.4
+ '@smithy/types': 4.8.1
+ tslib: 2.8.1
+
+ '@aws-sdk/nested-clients@3.925.0':
dependencies:
'@aws-crypto/sha256-browser': 5.2.0
'@aws-crypto/sha256-js': 5.2.0
@@ -10575,7 +13827,7 @@ snapshots:
transitivePeerDependencies:
- aws-crt
- '@aws-sdk/client-sso@3.927.0':
+ '@aws-sdk/nested-clients@3.927.0':
dependencies:
'@aws-crypto/sha256-browser': 5.2.0
'@aws-crypto/sha256-js': 5.2.0
@@ -10618,91 +13870,48 @@ snapshots:
transitivePeerDependencies:
- aws-crt
- '@aws-sdk/core@3.922.0':
+ '@aws-sdk/region-config-resolver@3.925.0':
dependencies:
'@aws-sdk/types': 3.922.0
- '@aws-sdk/xml-builder': 3.921.0
- '@smithy/core': 3.17.2
+ '@smithy/config-resolver': 4.4.2
'@smithy/node-config-provider': 4.3.4
- '@smithy/property-provider': 4.2.4
- '@smithy/protocol-http': 5.3.4
- '@smithy/signature-v4': 5.3.4
- '@smithy/smithy-client': 4.9.2
'@smithy/types': 4.8.1
- '@smithy/util-base64': 4.3.0
- '@smithy/util-middleware': 4.2.4
- '@smithy/util-utf8': 4.2.0
tslib: 2.8.1
- '@aws-sdk/core@3.927.0':
+ '@aws-sdk/s3-request-presigner@3.927.0':
dependencies:
+ '@aws-sdk/signature-v4-multi-region': 3.927.0
'@aws-sdk/types': 3.922.0
- '@aws-sdk/xml-builder': 3.921.0
- '@smithy/core': 3.17.2
- '@smithy/node-config-provider': 4.3.4
- '@smithy/property-provider': 4.2.4
+ '@aws-sdk/util-format-url': 3.922.0
+ '@smithy/middleware-endpoint': 4.3.6
'@smithy/protocol-http': 5.3.4
- '@smithy/signature-v4': 5.3.4
'@smithy/smithy-client': 4.9.2
'@smithy/types': 4.8.1
- '@smithy/util-base64': 4.3.0
- '@smithy/util-middleware': 4.2.4
- '@smithy/util-utf8': 4.2.0
- tslib: 2.8.1
-
- '@aws-sdk/credential-provider-env@3.922.0':
- dependencies:
- '@aws-sdk/core': 3.922.0
- '@aws-sdk/types': 3.922.0
- '@smithy/property-provider': 4.2.4
- '@smithy/types': 4.8.1
- tslib: 2.8.1
-
- '@aws-sdk/credential-provider-env@3.927.0':
- dependencies:
- '@aws-sdk/core': 3.927.0
- '@aws-sdk/types': 3.922.0
- '@smithy/property-provider': 4.2.4
- '@smithy/types': 4.8.1
tslib: 2.8.1
- '@aws-sdk/credential-provider-http@3.922.0':
+ '@aws-sdk/signature-v4-multi-region@3.922.0':
dependencies:
- '@aws-sdk/core': 3.922.0
+ '@aws-sdk/middleware-sdk-s3': 3.922.0
'@aws-sdk/types': 3.922.0
- '@smithy/fetch-http-handler': 5.3.5
- '@smithy/node-http-handler': 4.4.4
- '@smithy/property-provider': 4.2.4
'@smithy/protocol-http': 5.3.4
- '@smithy/smithy-client': 4.9.2
+ '@smithy/signature-v4': 5.3.4
'@smithy/types': 4.8.1
- '@smithy/util-stream': 4.5.5
tslib: 2.8.1
- '@aws-sdk/credential-provider-http@3.927.0':
+ '@aws-sdk/signature-v4-multi-region@3.927.0':
dependencies:
- '@aws-sdk/core': 3.927.0
+ '@aws-sdk/middleware-sdk-s3': 3.927.0
'@aws-sdk/types': 3.922.0
- '@smithy/fetch-http-handler': 5.3.5
- '@smithy/node-http-handler': 4.4.4
- '@smithy/property-provider': 4.2.4
'@smithy/protocol-http': 5.3.4
- '@smithy/smithy-client': 4.9.2
+ '@smithy/signature-v4': 5.3.4
'@smithy/types': 4.8.1
- '@smithy/util-stream': 4.5.5
tslib: 2.8.1
- '@aws-sdk/credential-provider-ini@3.925.0':
+ '@aws-sdk/token-providers@3.925.0':
dependencies:
'@aws-sdk/core': 3.922.0
- '@aws-sdk/credential-provider-env': 3.922.0
- '@aws-sdk/credential-provider-http': 3.922.0
- '@aws-sdk/credential-provider-process': 3.922.0
- '@aws-sdk/credential-provider-sso': 3.925.0
- '@aws-sdk/credential-provider-web-identity': 3.925.0
'@aws-sdk/nested-clients': 3.925.0
'@aws-sdk/types': 3.922.0
- '@smithy/credential-provider-imds': 4.2.4
'@smithy/property-provider': 4.2.4
'@smithy/shared-ini-file-loader': 4.3.4
'@smithy/types': 4.8.1
@@ -10710,17 +13919,11 @@ snapshots:
transitivePeerDependencies:
- aws-crt
- '@aws-sdk/credential-provider-ini@3.927.0':
+ '@aws-sdk/token-providers@3.927.0':
dependencies:
'@aws-sdk/core': 3.927.0
- '@aws-sdk/credential-provider-env': 3.927.0
- '@aws-sdk/credential-provider-http': 3.927.0
- '@aws-sdk/credential-provider-process': 3.927.0
- '@aws-sdk/credential-provider-sso': 3.927.0
- '@aws-sdk/credential-provider-web-identity': 3.927.0
'@aws-sdk/nested-clients': 3.927.0
'@aws-sdk/types': 3.922.0
- '@smithy/credential-provider-imds': 4.2.4
'@smithy/property-provider': 4.2.4
'@smithy/shared-ini-file-loader': 4.3.4
'@smithy/types': 4.8.1
@@ -10728,628 +13931,616 @@ snapshots:
transitivePeerDependencies:
- aws-crt
- '@aws-sdk/credential-provider-node@3.925.0':
+ '@aws-sdk/types@3.922.0':
dependencies:
- '@aws-sdk/credential-provider-env': 3.922.0
- '@aws-sdk/credential-provider-http': 3.922.0
- '@aws-sdk/credential-provider-ini': 3.925.0
- '@aws-sdk/credential-provider-process': 3.922.0
- '@aws-sdk/credential-provider-sso': 3.925.0
- '@aws-sdk/credential-provider-web-identity': 3.925.0
- '@aws-sdk/types': 3.922.0
- '@smithy/credential-provider-imds': 4.2.4
- '@smithy/property-provider': 4.2.4
- '@smithy/shared-ini-file-loader': 4.3.4
'@smithy/types': 4.8.1
tslib: 2.8.1
- transitivePeerDependencies:
- - aws-crt
- '@aws-sdk/credential-provider-node@3.927.0':
+ '@aws-sdk/util-arn-parser@3.893.0':
dependencies:
- '@aws-sdk/credential-provider-env': 3.927.0
- '@aws-sdk/credential-provider-http': 3.927.0
- '@aws-sdk/credential-provider-ini': 3.927.0
- '@aws-sdk/credential-provider-process': 3.927.0
- '@aws-sdk/credential-provider-sso': 3.927.0
- '@aws-sdk/credential-provider-web-identity': 3.927.0
- '@aws-sdk/types': 3.922.0
- '@smithy/credential-provider-imds': 4.2.4
- '@smithy/property-provider': 4.2.4
- '@smithy/shared-ini-file-loader': 4.3.4
- '@smithy/types': 4.8.1
tslib: 2.8.1
- transitivePeerDependencies:
- - aws-crt
- '@aws-sdk/credential-provider-process@3.922.0':
+ '@aws-sdk/util-endpoints@3.922.0':
dependencies:
- '@aws-sdk/core': 3.922.0
'@aws-sdk/types': 3.922.0
- '@smithy/property-provider': 4.2.4
- '@smithy/shared-ini-file-loader': 4.3.4
'@smithy/types': 4.8.1
+ '@smithy/url-parser': 4.2.4
+ '@smithy/util-endpoints': 3.2.4
tslib: 2.8.1
- '@aws-sdk/credential-provider-process@3.927.0':
+ '@aws-sdk/util-format-url@3.922.0':
dependencies:
- '@aws-sdk/core': 3.927.0
'@aws-sdk/types': 3.922.0
- '@smithy/property-provider': 4.2.4
- '@smithy/shared-ini-file-loader': 4.3.4
+ '@smithy/querystring-builder': 4.2.4
'@smithy/types': 4.8.1
tslib: 2.8.1
- '@aws-sdk/credential-provider-sso@3.925.0':
+ '@aws-sdk/util-locate-window@3.893.0':
dependencies:
- '@aws-sdk/client-sso': 3.925.0
- '@aws-sdk/core': 3.922.0
- '@aws-sdk/token-providers': 3.925.0
- '@aws-sdk/types': 3.922.0
- '@smithy/property-provider': 4.2.4
- '@smithy/shared-ini-file-loader': 4.3.4
- '@smithy/types': 4.8.1
tslib: 2.8.1
- transitivePeerDependencies:
- - aws-crt
- '@aws-sdk/credential-provider-sso@3.927.0':
+ '@aws-sdk/util-user-agent-browser@3.922.0':
dependencies:
- '@aws-sdk/client-sso': 3.927.0
- '@aws-sdk/core': 3.927.0
- '@aws-sdk/token-providers': 3.927.0
'@aws-sdk/types': 3.922.0
- '@smithy/property-provider': 4.2.4
- '@smithy/shared-ini-file-loader': 4.3.4
'@smithy/types': 4.8.1
+ bowser: 2.12.1
tslib: 2.8.1
- transitivePeerDependencies:
- - aws-crt
- '@aws-sdk/credential-provider-web-identity@3.925.0':
+ '@aws-sdk/util-user-agent-node@3.922.0':
dependencies:
- '@aws-sdk/core': 3.922.0
- '@aws-sdk/nested-clients': 3.925.0
+ '@aws-sdk/middleware-user-agent': 3.922.0
'@aws-sdk/types': 3.922.0
- '@smithy/property-provider': 4.2.4
- '@smithy/shared-ini-file-loader': 4.3.4
+ '@smithy/node-config-provider': 4.3.4
'@smithy/types': 4.8.1
tslib: 2.8.1
- transitivePeerDependencies:
- - aws-crt
- '@aws-sdk/credential-provider-web-identity@3.927.0':
+ '@aws-sdk/util-user-agent-node@3.927.0':
dependencies:
- '@aws-sdk/core': 3.927.0
- '@aws-sdk/nested-clients': 3.927.0
+ '@aws-sdk/middleware-user-agent': 3.927.0
'@aws-sdk/types': 3.922.0
- '@smithy/property-provider': 4.2.4
- '@smithy/shared-ini-file-loader': 4.3.4
+ '@smithy/node-config-provider': 4.3.4
'@smithy/types': 4.8.1
tslib: 2.8.1
- transitivePeerDependencies:
- - aws-crt
- '@aws-sdk/middleware-bucket-endpoint@3.922.0':
+ '@aws-sdk/xml-builder@3.921.0':
dependencies:
- '@aws-sdk/types': 3.922.0
- '@aws-sdk/util-arn-parser': 3.893.0
- '@smithy/node-config-provider': 4.3.4
- '@smithy/protocol-http': 5.3.4
'@smithy/types': 4.8.1
- '@smithy/util-config-provider': 4.2.0
+ fast-xml-parser: 5.2.5
tslib: 2.8.1
- '@aws-sdk/middleware-expect-continue@3.922.0':
+ '@aws/lambda-invoke-store@0.1.1': {}
+
+ '@babel/code-frame@7.27.1':
+ dependencies:
+ '@babel/helper-validator-identifier': 7.28.5
+ js-tokens: 4.0.0
+ picocolors: 1.1.1
+
+ '@babel/compat-data@7.28.5': {}
+
+ '@babel/core@7.28.5':
+ dependencies:
+ '@babel/code-frame': 7.27.1
+ '@babel/generator': 7.28.5
+ '@babel/helper-compilation-targets': 7.27.2
+ '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5)
+ '@babel/helpers': 7.28.4
+ '@babel/parser': 7.28.5
+ '@babel/template': 7.27.2
+ '@babel/traverse': 7.28.5
+ '@babel/types': 7.28.5
+ '@jridgewell/remapping': 2.3.5
+ convert-source-map: 2.0.0
+ debug: 4.4.3(supports-color@10.2.2)
+ gensync: 1.0.0-beta.2
+ json5: 2.2.3
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/generator@7.28.5':
+ dependencies:
+ '@babel/parser': 7.28.5
+ '@babel/types': 7.28.5
+ '@jridgewell/gen-mapping': 0.3.13
+ '@jridgewell/trace-mapping': 0.3.31
+ jsesc: 3.1.0
+
+ '@babel/helper-annotate-as-pure@7.27.3':
+ dependencies:
+ '@babel/types': 7.28.5
+
+ '@babel/helper-compilation-targets@7.27.2':
+ dependencies:
+ '@babel/compat-data': 7.28.5
+ '@babel/helper-validator-option': 7.27.1
+ browserslist: 4.27.0
+ lru-cache: 5.1.1
+ semver: 6.3.1
+
+ '@babel/helper-create-class-features-plugin@7.28.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-member-expression-to-functions': 7.28.5
+ '@babel/helper-optimise-call-expression': 7.27.1
+ '@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.5)
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ '@babel/traverse': 7.28.5
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-create-regexp-features-plugin@7.28.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-annotate-as-pure': 7.27.3
+ regexpu-core: 6.4.0
+ semver: 6.3.1
+
+ '@babel/helper-define-polyfill-provider@0.6.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-compilation-targets': 7.27.2
+ '@babel/helper-plugin-utils': 7.27.1
+ debug: 4.4.3(supports-color@10.2.2)
+ lodash.debounce: 4.0.8
+ resolve: 1.22.11
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-globals@7.28.0': {}
+
+ '@babel/helper-member-expression-to-functions@7.28.5':
+ dependencies:
+ '@babel/traverse': 7.28.5
+ '@babel/types': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-module-imports@7.27.1':
+ dependencies:
+ '@babel/traverse': 7.28.5
+ '@babel/types': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-module-transforms@7.28.3(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-module-imports': 7.27.1
+ '@babel/helper-validator-identifier': 7.28.5
+ '@babel/traverse': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-optimise-call-expression@7.27.1':
+ dependencies:
+ '@babel/types': 7.28.5
+
+ '@babel/helper-plugin-utils@7.27.1': {}
+
+ '@babel/helper-remap-async-to-generator@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-wrap-function': 7.28.3
+ '@babel/traverse': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-replace-supers@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-member-expression-to-functions': 7.28.5
+ '@babel/helper-optimise-call-expression': 7.27.1
+ '@babel/traverse': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-skip-transparent-expression-wrappers@7.27.1':
+ dependencies:
+ '@babel/traverse': 7.28.5
+ '@babel/types': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-string-parser@7.27.1': {}
+
+ '@babel/helper-validator-identifier@7.28.5': {}
+
+ '@babel/helper-validator-option@7.27.1': {}
+
+ '@babel/helper-wrap-function@7.28.3':
dependencies:
- '@aws-sdk/types': 3.922.0
- '@smithy/protocol-http': 5.3.4
- '@smithy/types': 4.8.1
- tslib: 2.8.1
+ '@babel/template': 7.27.2
+ '@babel/traverse': 7.28.5
+ '@babel/types': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
- '@aws-sdk/middleware-flexible-checksums@3.927.0':
+ '@babel/helpers@7.28.4':
dependencies:
- '@aws-crypto/crc32': 5.2.0
- '@aws-crypto/crc32c': 5.2.0
- '@aws-crypto/util': 5.2.0
- '@aws-sdk/core': 3.927.0
- '@aws-sdk/types': 3.922.0
- '@smithy/is-array-buffer': 4.2.0
- '@smithy/node-config-provider': 4.3.4
- '@smithy/protocol-http': 5.3.4
- '@smithy/types': 4.8.1
- '@smithy/util-middleware': 4.2.4
- '@smithy/util-stream': 4.5.5
- '@smithy/util-utf8': 4.2.0
- tslib: 2.8.1
+ '@babel/template': 7.27.2
+ '@babel/types': 7.28.5
- '@aws-sdk/middleware-host-header@3.922.0':
+ '@babel/parser@7.28.5':
dependencies:
- '@aws-sdk/types': 3.922.0
- '@smithy/protocol-http': 5.3.4
- '@smithy/types': 4.8.1
- tslib: 2.8.1
+ '@babel/types': 7.28.5
- '@aws-sdk/middleware-location-constraint@3.922.0':
+ '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.28.5(@babel/core@7.28.5)':
dependencies:
- '@aws-sdk/types': 3.922.0
- '@smithy/types': 4.8.1
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/traverse': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
- '@aws-sdk/middleware-logger@3.922.0':
+ '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.27.1(@babel/core@7.28.5)':
dependencies:
- '@aws-sdk/types': 3.922.0
- '@smithy/types': 4.8.1
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws-sdk/middleware-recursion-detection@3.922.0':
+ '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.27.1(@babel/core@7.28.5)':
dependencies:
- '@aws-sdk/types': 3.922.0
- '@aws/lambda-invoke-store': 0.1.1
- '@smithy/protocol-http': 5.3.4
- '@smithy/types': 4.8.1
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws-sdk/middleware-sdk-s3@3.922.0':
+ '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.27.1(@babel/core@7.28.5)':
dependencies:
- '@aws-sdk/core': 3.922.0
- '@aws-sdk/types': 3.922.0
- '@aws-sdk/util-arn-parser': 3.893.0
- '@smithy/core': 3.17.2
- '@smithy/node-config-provider': 4.3.4
- '@smithy/protocol-http': 5.3.4
- '@smithy/signature-v4': 5.3.4
- '@smithy/smithy-client': 4.9.2
- '@smithy/types': 4.8.1
- '@smithy/util-config-provider': 4.2.0
- '@smithy/util-middleware': 4.2.4
- '@smithy/util-stream': 4.5.5
- '@smithy/util-utf8': 4.2.0
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ '@babel/plugin-transform-optional-chaining': 7.28.5(@babel/core@7.28.5)
+ transitivePeerDependencies:
+ - supports-color
- '@aws-sdk/middleware-sdk-s3@3.927.0':
+ '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.28.3(@babel/core@7.28.5)':
dependencies:
- '@aws-sdk/core': 3.927.0
- '@aws-sdk/types': 3.922.0
- '@aws-sdk/util-arn-parser': 3.893.0
- '@smithy/core': 3.17.2
- '@smithy/node-config-provider': 4.3.4
- '@smithy/protocol-http': 5.3.4
- '@smithy/signature-v4': 5.3.4
- '@smithy/smithy-client': 4.9.2
- '@smithy/types': 4.8.1
- '@smithy/util-config-provider': 4.2.0
- '@smithy/util-middleware': 4.2.4
- '@smithy/util-stream': 4.5.5
- '@smithy/util-utf8': 4.2.0
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/traverse': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
- '@aws-sdk/middleware-ssec@3.922.0':
+ '@babel/plugin-proposal-private-methods@7.18.6(@babel/core@7.28.5)':
dependencies:
- '@aws-sdk/types': 3.922.0
- '@smithy/types': 4.8.1
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
- '@aws-sdk/middleware-user-agent@3.922.0':
+ '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.28.5)':
dependencies:
- '@aws-sdk/core': 3.922.0
- '@aws-sdk/types': 3.922.0
- '@aws-sdk/util-endpoints': 3.922.0
- '@smithy/core': 3.17.2
- '@smithy/protocol-http': 5.3.4
- '@smithy/types': 4.8.1
- tslib: 2.8.1
+ '@babel/core': 7.28.5
- '@aws-sdk/middleware-user-agent@3.927.0':
+ '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.28.5)':
dependencies:
- '@aws-sdk/core': 3.927.0
- '@aws-sdk/types': 3.922.0
- '@aws-sdk/util-endpoints': 3.922.0
- '@smithy/core': 3.17.2
- '@smithy/protocol-http': 5.3.4
- '@smithy/types': 4.8.1
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws-sdk/nested-clients@3.925.0':
+ '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.28.5)':
dependencies:
- '@aws-crypto/sha256-browser': 5.2.0
- '@aws-crypto/sha256-js': 5.2.0
- '@aws-sdk/core': 3.922.0
- '@aws-sdk/middleware-host-header': 3.922.0
- '@aws-sdk/middleware-logger': 3.922.0
- '@aws-sdk/middleware-recursion-detection': 3.922.0
- '@aws-sdk/middleware-user-agent': 3.922.0
- '@aws-sdk/region-config-resolver': 3.925.0
- '@aws-sdk/types': 3.922.0
- '@aws-sdk/util-endpoints': 3.922.0
- '@aws-sdk/util-user-agent-browser': 3.922.0
- '@aws-sdk/util-user-agent-node': 3.922.0
- '@smithy/config-resolver': 4.4.2
- '@smithy/core': 3.17.2
- '@smithy/fetch-http-handler': 5.3.5
- '@smithy/hash-node': 4.2.4
- '@smithy/invalid-dependency': 4.2.4
- '@smithy/middleware-content-length': 4.2.4
- '@smithy/middleware-endpoint': 4.3.6
- '@smithy/middleware-retry': 4.4.6
- '@smithy/middleware-serde': 4.2.4
- '@smithy/middleware-stack': 4.2.4
- '@smithy/node-config-provider': 4.3.4
- '@smithy/node-http-handler': 4.4.4
- '@smithy/protocol-http': 5.3.4
- '@smithy/smithy-client': 4.9.2
- '@smithy/types': 4.8.1
- '@smithy/url-parser': 4.2.4
- '@smithy/util-base64': 4.3.0
- '@smithy/util-body-length-browser': 4.2.0
- '@smithy/util-body-length-node': 4.2.1
- '@smithy/util-defaults-mode-browser': 4.3.5
- '@smithy/util-defaults-mode-node': 4.2.8
- '@smithy/util-endpoints': 3.2.4
- '@smithy/util-middleware': 4.2.4
- '@smithy/util-retry': 4.2.4
- '@smithy/util-utf8': 4.2.0
- tslib: 2.8.1
- transitivePeerDependencies:
- - aws-crt
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws-sdk/nested-clients@3.927.0':
+ '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.28.5)':
dependencies:
- '@aws-crypto/sha256-browser': 5.2.0
- '@aws-crypto/sha256-js': 5.2.0
- '@aws-sdk/core': 3.927.0
- '@aws-sdk/middleware-host-header': 3.922.0
- '@aws-sdk/middleware-logger': 3.922.0
- '@aws-sdk/middleware-recursion-detection': 3.922.0
- '@aws-sdk/middleware-user-agent': 3.927.0
- '@aws-sdk/region-config-resolver': 3.925.0
- '@aws-sdk/types': 3.922.0
- '@aws-sdk/util-endpoints': 3.922.0
- '@aws-sdk/util-user-agent-browser': 3.922.0
- '@aws-sdk/util-user-agent-node': 3.927.0
- '@smithy/config-resolver': 4.4.2
- '@smithy/core': 3.17.2
- '@smithy/fetch-http-handler': 5.3.5
- '@smithy/hash-node': 4.2.4
- '@smithy/invalid-dependency': 4.2.4
- '@smithy/middleware-content-length': 4.2.4
- '@smithy/middleware-endpoint': 4.3.6
- '@smithy/middleware-retry': 4.4.6
- '@smithy/middleware-serde': 4.2.4
- '@smithy/middleware-stack': 4.2.4
- '@smithy/node-config-provider': 4.3.4
- '@smithy/node-http-handler': 4.4.4
- '@smithy/protocol-http': 5.3.4
- '@smithy/smithy-client': 4.9.2
- '@smithy/types': 4.8.1
- '@smithy/url-parser': 4.2.4
- '@smithy/util-base64': 4.3.0
- '@smithy/util-body-length-browser': 4.2.0
- '@smithy/util-body-length-node': 4.2.1
- '@smithy/util-defaults-mode-browser': 4.3.5
- '@smithy/util-defaults-mode-node': 4.2.8
- '@smithy/util-endpoints': 3.2.4
- '@smithy/util-middleware': 4.2.4
- '@smithy/util-retry': 4.2.4
- '@smithy/util-utf8': 4.2.0
- tslib: 2.8.1
- transitivePeerDependencies:
- - aws-crt
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws-sdk/region-config-resolver@3.925.0':
+ '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.28.5)':
dependencies:
- '@aws-sdk/types': 3.922.0
- '@smithy/config-resolver': 4.4.2
- '@smithy/node-config-provider': 4.3.4
- '@smithy/types': 4.8.1
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws-sdk/s3-request-presigner@3.927.0':
+ '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.28.5)':
dependencies:
- '@aws-sdk/signature-v4-multi-region': 3.927.0
- '@aws-sdk/types': 3.922.0
- '@aws-sdk/util-format-url': 3.922.0
- '@smithy/middleware-endpoint': 4.3.6
- '@smithy/protocol-http': 5.3.4
- '@smithy/smithy-client': 4.9.2
- '@smithy/types': 4.8.1
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws-sdk/signature-v4-multi-region@3.922.0':
+ '@babel/plugin-syntax-import-assertions@7.27.1(@babel/core@7.28.5)':
dependencies:
- '@aws-sdk/middleware-sdk-s3': 3.922.0
- '@aws-sdk/types': 3.922.0
- '@smithy/protocol-http': 5.3.4
- '@smithy/signature-v4': 5.3.4
- '@smithy/types': 4.8.1
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws-sdk/signature-v4-multi-region@3.927.0':
+ '@babel/plugin-syntax-import-attributes@7.27.1(@babel/core@7.28.5)':
dependencies:
- '@aws-sdk/middleware-sdk-s3': 3.927.0
- '@aws-sdk/types': 3.922.0
- '@smithy/protocol-http': 5.3.4
- '@smithy/signature-v4': 5.3.4
- '@smithy/types': 4.8.1
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws-sdk/token-providers@3.925.0':
+ '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.28.5)':
dependencies:
- '@aws-sdk/core': 3.922.0
- '@aws-sdk/nested-clients': 3.925.0
- '@aws-sdk/types': 3.922.0
- '@smithy/property-provider': 4.2.4
- '@smithy/shared-ini-file-loader': 4.3.4
- '@smithy/types': 4.8.1
- tslib: 2.8.1
- transitivePeerDependencies:
- - aws-crt
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws-sdk/token-providers@3.927.0':
+ '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.28.5)':
dependencies:
- '@aws-sdk/core': 3.927.0
- '@aws-sdk/nested-clients': 3.927.0
- '@aws-sdk/types': 3.922.0
- '@smithy/property-provider': 4.2.4
- '@smithy/shared-ini-file-loader': 4.3.4
- '@smithy/types': 4.8.1
- tslib: 2.8.1
- transitivePeerDependencies:
- - aws-crt
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws-sdk/types@3.922.0':
+ '@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.28.5)':
dependencies:
- '@smithy/types': 4.8.1
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws-sdk/util-arn-parser@3.893.0':
+ '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.28.5)':
dependencies:
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws-sdk/util-endpoints@3.922.0':
+ '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.28.5)':
dependencies:
- '@aws-sdk/types': 3.922.0
- '@smithy/types': 4.8.1
- '@smithy/url-parser': 4.2.4
- '@smithy/util-endpoints': 3.2.4
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws-sdk/util-format-url@3.922.0':
+ '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.28.5)':
dependencies:
- '@aws-sdk/types': 3.922.0
- '@smithy/querystring-builder': 4.2.4
- '@smithy/types': 4.8.1
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws-sdk/util-locate-window@3.893.0':
+ '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.28.5)':
dependencies:
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws-sdk/util-user-agent-browser@3.922.0':
+ '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.28.5)':
dependencies:
- '@aws-sdk/types': 3.922.0
- '@smithy/types': 4.8.1
- bowser: 2.12.1
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws-sdk/util-user-agent-node@3.922.0':
+ '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.28.5)':
dependencies:
- '@aws-sdk/middleware-user-agent': 3.922.0
- '@aws-sdk/types': 3.922.0
- '@smithy/node-config-provider': 4.3.4
- '@smithy/types': 4.8.1
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws-sdk/util-user-agent-node@3.927.0':
+ '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.28.5)':
dependencies:
- '@aws-sdk/middleware-user-agent': 3.927.0
- '@aws-sdk/types': 3.922.0
- '@smithy/node-config-provider': 4.3.4
- '@smithy/types': 4.8.1
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws-sdk/xml-builder@3.921.0':
+ '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.28.5)':
dependencies:
- '@smithy/types': 4.8.1
- fast-xml-parser: 5.2.5
- tslib: 2.8.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@aws/lambda-invoke-store@0.1.1': {}
+ '@babel/plugin-syntax-typescript@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@babel/code-frame@7.27.1':
+ '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.28.5)':
dependencies:
- '@babel/helper-validator-identifier': 7.28.5
- js-tokens: 4.0.0
- picocolors: 1.1.1
+ '@babel/core': 7.28.5
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
- '@babel/compat-data@7.28.5': {}
+ '@babel/plugin-transform-arrow-functions@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@babel/core@7.28.5':
+ '@babel/plugin-transform-async-generator-functions@7.28.0(@babel/core@7.28.5)':
dependencies:
- '@babel/code-frame': 7.27.1
- '@babel/generator': 7.28.5
- '@babel/helper-compilation-targets': 7.27.2
- '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5)
- '@babel/helpers': 7.28.4
- '@babel/parser': 7.28.5
- '@babel/template': 7.27.2
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.28.5)
'@babel/traverse': 7.28.5
- '@babel/types': 7.28.5
- '@jridgewell/remapping': 2.3.5
- convert-source-map: 2.0.0
- debug: 4.4.3(supports-color@10.2.2)
- gensync: 1.0.0-beta.2
- json5: 2.2.3
- semver: 6.3.1
transitivePeerDependencies:
- supports-color
- '@babel/generator@7.28.5':
+ '@babel/plugin-transform-async-to-generator@7.27.1(@babel/core@7.28.5)':
dependencies:
- '@babel/parser': 7.28.5
- '@babel/types': 7.28.5
- '@jridgewell/gen-mapping': 0.3.13
- '@jridgewell/trace-mapping': 0.3.31
- jsesc: 3.1.0
+ '@babel/core': 7.28.5
+ '@babel/helper-module-imports': 7.27.1
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.28.5)
+ transitivePeerDependencies:
+ - supports-color
- '@babel/helper-annotate-as-pure@7.27.3':
+ '@babel/plugin-transform-block-scoped-functions@7.27.1(@babel/core@7.28.5)':
dependencies:
- '@babel/types': 7.28.5
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@babel/helper-compilation-targets@7.27.2':
+ '@babel/plugin-transform-block-scoping@7.28.5(@babel/core@7.28.5)':
dependencies:
- '@babel/compat-data': 7.28.5
- '@babel/helper-validator-option': 7.27.1
- browserslist: 4.27.0
- lru-cache: 5.1.1
- semver: 6.3.1
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@babel/helper-create-class-features-plugin@7.28.5(@babel/core@7.28.5)':
+ '@babel/plugin-transform-class-properties@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-class-static-block@7.28.3(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-classes@7.28.4(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
'@babel/helper-annotate-as-pure': 7.27.3
- '@babel/helper-member-expression-to-functions': 7.28.5
- '@babel/helper-optimise-call-expression': 7.27.1
+ '@babel/helper-compilation-targets': 7.27.2
+ '@babel/helper-globals': 7.28.0
+ '@babel/helper-plugin-utils': 7.27.1
'@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.5)
- '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
'@babel/traverse': 7.28.5
- semver: 6.3.1
transitivePeerDependencies:
- supports-color
- '@babel/helper-create-regexp-features-plugin@7.28.5(@babel/core@7.28.5)':
+ '@babel/plugin-transform-computed-properties@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
- '@babel/helper-annotate-as-pure': 7.27.3
- regexpu-core: 6.4.0
- semver: 6.3.1
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/template': 7.27.2
- '@babel/helper-define-polyfill-provider@0.6.5(@babel/core@7.28.5)':
+ '@babel/plugin-transform-destructuring@7.28.5(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
- '@babel/helper-compilation-targets': 7.27.2
'@babel/helper-plugin-utils': 7.27.1
- debug: 4.4.3(supports-color@10.2.2)
- lodash.debounce: 4.0.8
- resolve: 1.22.11
+ '@babel/traverse': 7.28.5
transitivePeerDependencies:
- supports-color
- '@babel/helper-globals@7.28.0': {}
+ '@babel/plugin-transform-dotall-regex@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
- '@babel/helper-member-expression-to-functions@7.28.5':
+ '@babel/plugin-transform-duplicate-keys@7.27.1(@babel/core@7.28.5)':
dependencies:
- '@babel/traverse': 7.28.5
- '@babel/types': 7.28.5
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-dynamic-import@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-explicit-resource-management@7.28.0(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/plugin-transform-destructuring': 7.28.5(@babel/core@7.28.5)
transitivePeerDependencies:
- supports-color
- '@babel/helper-module-imports@7.27.1':
+ '@babel/plugin-transform-exponentiation-operator@7.28.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-export-namespace-from@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-for-of@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-function-name@7.27.1(@babel/core@7.28.5)':
dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-compilation-targets': 7.27.2
+ '@babel/helper-plugin-utils': 7.27.1
'@babel/traverse': 7.28.5
- '@babel/types': 7.28.5
transitivePeerDependencies:
- supports-color
- '@babel/helper-module-transforms@7.28.3(@babel/core@7.28.5)':
+ '@babel/plugin-transform-json-strings@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
- '@babel/helper-module-imports': 7.27.1
- '@babel/helper-validator-identifier': 7.28.5
- '@babel/traverse': 7.28.5
- transitivePeerDependencies:
- - supports-color
+ '@babel/helper-plugin-utils': 7.27.1
- '@babel/helper-optimise-call-expression@7.27.1':
+ '@babel/plugin-transform-literals@7.27.1(@babel/core@7.28.5)':
dependencies:
- '@babel/types': 7.28.5
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@babel/helper-plugin-utils@7.27.1': {}
+ '@babel/plugin-transform-logical-assignment-operators@7.28.5(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@babel/helper-remap-async-to-generator@7.27.1(@babel/core@7.28.5)':
+ '@babel/plugin-transform-member-expression-literals@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
- '@babel/helper-annotate-as-pure': 7.27.3
- '@babel/helper-wrap-function': 7.28.3
- '@babel/traverse': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-modules-amd@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
transitivePeerDependencies:
- supports-color
- '@babel/helper-replace-supers@7.27.1(@babel/core@7.28.5)':
+ '@babel/plugin-transform-modules-commonjs@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
- '@babel/helper-member-expression-to-functions': 7.28.5
- '@babel/helper-optimise-call-expression': 7.27.1
- '@babel/traverse': 7.28.5
+ '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
transitivePeerDependencies:
- supports-color
- '@babel/helper-skip-transparent-expression-wrappers@7.27.1':
+ '@babel/plugin-transform-modules-systemjs@7.28.5(@babel/core@7.28.5)':
dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-validator-identifier': 7.28.5
'@babel/traverse': 7.28.5
- '@babel/types': 7.28.5
transitivePeerDependencies:
- supports-color
- '@babel/helper-string-parser@7.27.1': {}
-
- '@babel/helper-validator-identifier@7.28.5': {}
-
- '@babel/helper-validator-option@7.27.1': {}
-
- '@babel/helper-wrap-function@7.28.3':
+ '@babel/plugin-transform-modules-umd@7.27.1(@babel/core@7.28.5)':
dependencies:
- '@babel/template': 7.27.2
- '@babel/traverse': 7.28.5
- '@babel/types': 7.28.5
+ '@babel/core': 7.28.5
+ '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
transitivePeerDependencies:
- supports-color
- '@babel/helpers@7.28.4':
+ '@babel/plugin-transform-named-capturing-groups-regex@7.27.1(@babel/core@7.28.5)':
dependencies:
- '@babel/template': 7.27.2
- '@babel/types': 7.28.5
+ '@babel/core': 7.28.5
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
+ '@babel/helper-plugin-utils': 7.27.1
- '@babel/parser@7.28.5':
+ '@babel/plugin-transform-new-target@7.27.1(@babel/core@7.28.5)':
dependencies:
- '@babel/types': 7.28.5
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
- '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.28.5(@babel/core@7.28.5)':
+ '@babel/plugin-transform-nullish-coalescing-operator@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-numeric-separator@7.27.1(@babel/core@7.28.5)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/helper-plugin-utils': 7.27.1
+
+ '@babel/plugin-transform-object-rest-spread@7.28.4(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
+ '@babel/helper-compilation-targets': 7.27.2
'@babel/helper-plugin-utils': 7.27.1
+ '@babel/plugin-transform-destructuring': 7.28.5(@babel/core@7.28.5)
+ '@babel/plugin-transform-parameters': 7.27.7(@babel/core@7.28.5)
'@babel/traverse': 7.28.5
transitivePeerDependencies:
- supports-color
- '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.27.1(@babel/core@7.28.5)':
+ '@babel/plugin-transform-object-super@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
'@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.5)
+ transitivePeerDependencies:
+ - supports-color
- '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.27.1(@babel/core@7.28.5)':
+ '@babel/plugin-transform-optional-catch-binding@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
'@babel/helper-plugin-utils': 7.27.1
- '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.27.1(@babel/core@7.28.5)':
+ '@babel/plugin-transform-optional-chaining@7.28.5(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
'@babel/helper-plugin-utils': 7.27.1
'@babel/helper-skip-transparent-expression-wrappers': 7.27.1
- '@babel/plugin-transform-optional-chaining': 7.28.5(@babel/core@7.28.5)
transitivePeerDependencies:
- supports-color
- '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.28.3(@babel/core@7.28.5)':
+ '@babel/plugin-transform-parameters@7.27.7(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
'@babel/helper-plugin-utils': 7.27.1
- '@babel/traverse': 7.28.5
- transitivePeerDependencies:
- - supports-color
- '@babel/plugin-proposal-private-methods@7.18.6(@babel/core@7.28.5)':
+ '@babel/plugin-transform-private-methods@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
'@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5)
@@ -11357,749 +14548,1437 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
-
- '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.28.5)':
+ '@babel/plugin-transform-private-property-in-object@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5)
'@babel/helper-plugin-utils': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
- '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.28.5)':
+ '@babel/plugin-transform-property-literals@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
'@babel/helper-plugin-utils': 7.27.1
- '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.28.5)':
+ '@babel/plugin-transform-react-constant-elements@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
'@babel/helper-plugin-utils': 7.27.1
- '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.28.5)':
+ '@babel/plugin-transform-react-display-name@7.28.0(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
'@babel/helper-plugin-utils': 7.27.1
- '@babel/plugin-syntax-import-assertions@7.27.1(@babel/core@7.28.5)':
+ '@babel/plugin-transform-react-jsx-development@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@babel/plugin-transform-react-jsx': 7.27.1(@babel/core@7.28.5)
+ transitivePeerDependencies:
+ - supports-color
- '@babel/plugin-syntax-import-attributes@7.27.1(@babel/core@7.28.5)':
+ '@babel/plugin-transform-react-jsx@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-module-imports': 7.27.1
'@babel/helper-plugin-utils': 7.27.1
+ '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.28.5)
+ '@babel/types': 7.28.5
+ transitivePeerDependencies:
+ - supports-color
- '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.28.5)':
+ '@babel/plugin-transform-react-pure-annotations@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
+ '@babel/helper-annotate-as-pure': 7.27.3
'@babel/helper-plugin-utils': 7.27.1
- '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.28.5)':
+ '@babel/plugin-transform-regenerator@7.28.4(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
'@babel/helper-plugin-utils': 7.27.1
- '@babel/plugin-syntax-jsx@7.27.1(@babel/core@7.28.5)':
+ '@babel/plugin-transform-regexp-modifiers@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
'@babel/helper-plugin-utils': 7.27.1
- '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.28.5)':
+ '@babel/plugin-transform-reserved-words@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
'@babel/helper-plugin-utils': 7.27.1
- '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.28.5)':
+ '@babel/plugin-transform-runtime@7.28.5(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
+ '@babel/helper-module-imports': 7.27.1
'@babel/helper-plugin-utils': 7.27.1
+ babel-plugin-polyfill-corejs2: 0.4.14(@babel/core@7.28.5)
+ babel-plugin-polyfill-corejs3: 0.13.0(@babel/core@7.28.5)
+ babel-plugin-polyfill-regenerator: 0.6.5(@babel/core@7.28.5)
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
- '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.28.5)':
+ '@babel/plugin-transform-shorthand-properties@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
'@babel/helper-plugin-utils': 7.27.1
- '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.28.5)':
+ '@babel/plugin-transform-spread@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
'@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
- '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.28.5)':
+ '@babel/plugin-transform-sticky-regex@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
'@babel/helper-plugin-utils': 7.27.1
- '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.28.5)':
+ '@babel/plugin-transform-template-literals@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
'@babel/helper-plugin-utils': 7.27.1
- '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.28.5)':
+ '@babel/plugin-transform-typeof-symbol@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
'@babel/helper-plugin-utils': 7.27.1
- '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.28.5)':
+ '@babel/plugin-transform-typescript@7.28.5(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5)
'@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ '@babel/plugin-syntax-typescript': 7.27.1(@babel/core@7.28.5)
+ transitivePeerDependencies:
+ - supports-color
- '@babel/plugin-syntax-typescript@7.27.1(@babel/core@7.28.5)':
+ '@babel/plugin-transform-unicode-escapes@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
'@babel/helper-plugin-utils': 7.27.1
- '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.28.5)':
+ '@babel/plugin-transform-unicode-property-regex@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
'@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
'@babel/helper-plugin-utils': 7.27.1
- '@babel/plugin-transform-arrow-functions@7.27.1(@babel/core@7.28.5)':
+ '@babel/plugin-transform-unicode-regex@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
'@babel/helper-plugin-utils': 7.27.1
- '@babel/plugin-transform-async-generator-functions@7.28.0(@babel/core@7.28.5)':
+ '@babel/plugin-transform-unicode-sets-regex@7.27.1(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
'@babel/helper-plugin-utils': 7.27.1
- '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.28.5)
- '@babel/traverse': 7.28.5
- transitivePeerDependencies:
- - supports-color
- '@babel/plugin-transform-async-to-generator@7.27.1(@babel/core@7.28.5)':
+ '@babel/preset-env@7.28.5(@babel/core@7.28.5)':
dependencies:
+ '@babel/compat-data': 7.28.5
'@babel/core': 7.28.5
- '@babel/helper-module-imports': 7.27.1
+ '@babel/helper-compilation-targets': 7.27.2
'@babel/helper-plugin-utils': 7.27.1
- '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.28.5)
+ '@babel/helper-validator-option': 7.27.1
+ '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.28.5(@babel/core@7.28.5)
+ '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.28.3(@babel/core@7.28.5)
+ '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.28.5)
+ '@babel/plugin-syntax-import-assertions': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-syntax-import-attributes': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.28.5)
+ '@babel/plugin-transform-arrow-functions': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-async-generator-functions': 7.28.0(@babel/core@7.28.5)
+ '@babel/plugin-transform-async-to-generator': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-block-scoped-functions': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-block-scoping': 7.28.5(@babel/core@7.28.5)
+ '@babel/plugin-transform-class-properties': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-class-static-block': 7.28.3(@babel/core@7.28.5)
+ '@babel/plugin-transform-classes': 7.28.4(@babel/core@7.28.5)
+ '@babel/plugin-transform-computed-properties': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-destructuring': 7.28.5(@babel/core@7.28.5)
+ '@babel/plugin-transform-dotall-regex': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-duplicate-keys': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-dynamic-import': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-explicit-resource-management': 7.28.0(@babel/core@7.28.5)
+ '@babel/plugin-transform-exponentiation-operator': 7.28.5(@babel/core@7.28.5)
+ '@babel/plugin-transform-export-namespace-from': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-for-of': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-function-name': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-json-strings': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-literals': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-logical-assignment-operators': 7.28.5(@babel/core@7.28.5)
+ '@babel/plugin-transform-member-expression-literals': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-modules-amd': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-modules-commonjs': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-modules-systemjs': 7.28.5(@babel/core@7.28.5)
+ '@babel/plugin-transform-modules-umd': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-named-capturing-groups-regex': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-new-target': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-nullish-coalescing-operator': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-numeric-separator': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-object-rest-spread': 7.28.4(@babel/core@7.28.5)
+ '@babel/plugin-transform-object-super': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-optional-catch-binding': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-optional-chaining': 7.28.5(@babel/core@7.28.5)
+ '@babel/plugin-transform-parameters': 7.27.7(@babel/core@7.28.5)
+ '@babel/plugin-transform-private-methods': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-private-property-in-object': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-property-literals': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-regenerator': 7.28.4(@babel/core@7.28.5)
+ '@babel/plugin-transform-regexp-modifiers': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-reserved-words': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-shorthand-properties': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-spread': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-sticky-regex': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-template-literals': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-typeof-symbol': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-unicode-escapes': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-unicode-property-regex': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-unicode-regex': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-unicode-sets-regex': 7.27.1(@babel/core@7.28.5)
+ '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.28.5)
+ babel-plugin-polyfill-corejs2: 0.4.14(@babel/core@7.28.5)
+ babel-plugin-polyfill-corejs3: 0.13.0(@babel/core@7.28.5)
+ babel-plugin-polyfill-regenerator: 0.6.5(@babel/core@7.28.5)
+ core-js-compat: 3.46.0
+ semver: 6.3.1
transitivePeerDependencies:
- supports-color
- '@babel/plugin-transform-block-scoped-functions@7.27.1(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
-
- '@babel/plugin-transform-block-scoping@7.28.5(@babel/core@7.28.5)':
+ '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
'@babel/helper-plugin-utils': 7.27.1
+ '@babel/types': 7.28.5
+ esutils: 2.0.3
- '@babel/plugin-transform-class-properties@7.27.1(@babel/core@7.28.5)':
+ '@babel/preset-react@7.28.5(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
- '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5)
'@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-validator-option': 7.27.1
+ '@babel/plugin-transform-react-display-name': 7.28.0(@babel/core@7.28.5)
+ '@babel/plugin-transform-react-jsx': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-react-jsx-development': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-react-pure-annotations': 7.27.1(@babel/core@7.28.5)
transitivePeerDependencies:
- supports-color
- '@babel/plugin-transform-class-static-block@7.28.3(@babel/core@7.28.5)':
+ '@babel/preset-typescript@7.28.5(@babel/core@7.28.5)':
dependencies:
'@babel/core': 7.28.5
- '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5)
'@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-validator-option': 7.27.1
+ '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-modules-commonjs': 7.27.1(@babel/core@7.28.5)
+ '@babel/plugin-transform-typescript': 7.28.5(@babel/core@7.28.5)
transitivePeerDependencies:
- supports-color
- '@babel/plugin-transform-classes@7.28.4(@babel/core@7.28.5)':
+ '@babel/runtime-corejs3@7.28.4':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-annotate-as-pure': 7.27.3
- '@babel/helper-compilation-targets': 7.27.2
- '@babel/helper-globals': 7.28.0
- '@babel/helper-plugin-utils': 7.27.1
- '@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.5)
- '@babel/traverse': 7.28.5
- transitivePeerDependencies:
- - supports-color
+ core-js-pure: 3.46.0
- '@babel/plugin-transform-computed-properties@7.27.1(@babel/core@7.28.5)':
+ '@babel/runtime@7.28.4': {}
+
+ '@babel/template@7.27.2':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- '@babel/template': 7.27.2
+ '@babel/code-frame': 7.27.1
+ '@babel/parser': 7.28.5
+ '@babel/types': 7.28.5
- '@babel/plugin-transform-destructuring@7.28.5(@babel/core@7.28.5)':
+ '@babel/traverse@7.28.5':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- '@babel/traverse': 7.28.5
+ '@babel/code-frame': 7.27.1
+ '@babel/generator': 7.28.5
+ '@babel/helper-globals': 7.28.0
+ '@babel/parser': 7.28.5
+ '@babel/template': 7.27.2
+ '@babel/types': 7.28.5
+ debug: 4.4.3(supports-color@10.2.2)
transitivePeerDependencies:
- supports-color
- '@babel/plugin-transform-dotall-regex@7.27.1(@babel/core@7.28.5)':
+ '@babel/types@7.28.5':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
- '@babel/helper-plugin-utils': 7.27.1
+ '@babel/helper-string-parser': 7.27.1
+ '@babel/helper-validator-identifier': 7.28.5
- '@babel/plugin-transform-duplicate-keys@7.27.1(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@bcoe/v8-coverage@0.2.3': {}
- '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.27.1(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
- '@babel/helper-plugin-utils': 7.27.1
+ '@borewit/text-codec@0.1.1': {}
- '@babel/plugin-transform-dynamic-import@7.27.1(@babel/core@7.28.5)':
+ '@chevrotain/cst-dts-gen@11.0.3':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@chevrotain/gast': 11.0.3
+ '@chevrotain/types': 11.0.3
+ lodash-es: 4.17.21
- '@babel/plugin-transform-explicit-resource-management@7.28.0(@babel/core@7.28.5)':
+ '@chevrotain/gast@11.0.3':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- '@babel/plugin-transform-destructuring': 7.28.5(@babel/core@7.28.5)
- transitivePeerDependencies:
- - supports-color
+ '@chevrotain/types': 11.0.3
+ lodash-es: 4.17.21
- '@babel/plugin-transform-exponentiation-operator@7.28.5(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@chevrotain/regexp-to-ast@11.0.3': {}
- '@babel/plugin-transform-export-namespace-from@7.27.1(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@chevrotain/types@11.0.3': {}
- '@babel/plugin-transform-for-of@7.27.1(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
- transitivePeerDependencies:
- - supports-color
+ '@chevrotain/utils@11.0.3': {}
- '@babel/plugin-transform-function-name@7.27.1(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-compilation-targets': 7.27.2
- '@babel/helper-plugin-utils': 7.27.1
- '@babel/traverse': 7.28.5
- transitivePeerDependencies:
- - supports-color
+ '@colors/colors@1.5.0':
+ optional: true
- '@babel/plugin-transform-json-strings@7.27.1(@babel/core@7.28.5)':
+ '@cspotcode/source-map-support@0.8.1':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@jridgewell/trace-mapping': 0.3.9
- '@babel/plugin-transform-literals@7.27.1(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@css-inline/css-inline-android-arm-eabi@0.14.1':
+ optional: true
- '@babel/plugin-transform-logical-assignment-operators@7.28.5(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@css-inline/css-inline-android-arm64@0.14.1':
+ optional: true
- '@babel/plugin-transform-member-expression-literals@7.27.1(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@css-inline/css-inline-darwin-arm64@0.14.1':
+ optional: true
- '@babel/plugin-transform-modules-amd@7.27.1(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5)
- '@babel/helper-plugin-utils': 7.27.1
- transitivePeerDependencies:
- - supports-color
+ '@css-inline/css-inline-darwin-x64@0.14.1':
+ optional: true
- '@babel/plugin-transform-modules-commonjs@7.27.1(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5)
- '@babel/helper-plugin-utils': 7.27.1
- transitivePeerDependencies:
- - supports-color
+ '@css-inline/css-inline-linux-arm-gnueabihf@0.14.1':
+ optional: true
- '@babel/plugin-transform-modules-systemjs@7.28.5(@babel/core@7.28.5)':
- dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5)
- '@babel/helper-plugin-utils': 7.27.1
- '@babel/helper-validator-identifier': 7.28.5
- '@babel/traverse': 7.28.5
- transitivePeerDependencies:
- - supports-color
+ '@css-inline/css-inline-linux-arm64-gnu@0.14.1':
+ optional: true
- '@babel/plugin-transform-modules-umd@7.27.1(@babel/core@7.28.5)':
+ '@css-inline/css-inline-linux-arm64-musl@0.14.1':
+ optional: true
+
+ '@css-inline/css-inline-linux-x64-gnu@0.14.1':
+ optional: true
+
+ '@css-inline/css-inline-linux-x64-musl@0.14.1':
+ optional: true
+
+ '@css-inline/css-inline-win32-x64-msvc@0.14.1':
+ optional: true
+
+ '@css-inline/css-inline@0.14.1':
+ optionalDependencies:
+ '@css-inline/css-inline-android-arm-eabi': 0.14.1
+ '@css-inline/css-inline-android-arm64': 0.14.1
+ '@css-inline/css-inline-darwin-arm64': 0.14.1
+ '@css-inline/css-inline-darwin-x64': 0.14.1
+ '@css-inline/css-inline-linux-arm-gnueabihf': 0.14.1
+ '@css-inline/css-inline-linux-arm64-gnu': 0.14.1
+ '@css-inline/css-inline-linux-arm64-musl': 0.14.1
+ '@css-inline/css-inline-linux-x64-gnu': 0.14.1
+ '@css-inline/css-inline-linux-x64-musl': 0.14.1
+ '@css-inline/css-inline-win32-x64-msvc': 0.14.1
+
+ '@csstools/cascade-layer-name-parser@2.0.5(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-module-transforms': 7.28.3(@babel/core@7.28.5)
- '@babel/helper-plugin-utils': 7.27.1
- transitivePeerDependencies:
- - supports-color
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
- '@babel/plugin-transform-named-capturing-groups-regex@7.27.1(@babel/core@7.28.5)':
+ '@csstools/color-helpers@5.1.0': {}
+
+ '@csstools/css-calc@2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
- '@babel/helper-plugin-utils': 7.27.1
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
- '@babel/plugin-transform-new-target@7.27.1(@babel/core@7.28.5)':
+ '@csstools/css-color-parser@3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@csstools/color-helpers': 5.1.0
+ '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
- '@babel/plugin-transform-nullish-coalescing-operator@7.27.1(@babel/core@7.28.5)':
+ '@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@csstools/css-tokenizer': 3.0.4
- '@babel/plugin-transform-numeric-separator@7.27.1(@babel/core@7.28.5)':
+ '@csstools/css-tokenizer@3.0.4': {}
+
+ '@csstools/media-query-list-parser@4.0.3(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
- '@babel/plugin-transform-object-rest-spread@7.28.4(@babel/core@7.28.5)':
+ '@csstools/postcss-alpha-function@1.0.1(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-compilation-targets': 7.27.2
- '@babel/helper-plugin-utils': 7.27.1
- '@babel/plugin-transform-destructuring': 7.28.5(@babel/core@7.28.5)
- '@babel/plugin-transform-parameters': 7.27.7(@babel/core@7.28.5)
- '@babel/traverse': 7.28.5
- transitivePeerDependencies:
- - supports-color
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.6)
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
- '@babel/plugin-transform-object-super@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-cascade-layers@5.0.2(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- '@babel/helper-replace-supers': 7.27.1(@babel/core@7.28.5)
- transitivePeerDependencies:
- - supports-color
+ '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.1.0)
+ postcss: 8.5.6
+ postcss-selector-parser: 7.1.0
- '@babel/plugin-transform-optional-catch-binding@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-color-function-display-p3-linear@1.0.1(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.6)
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
- '@babel/plugin-transform-optional-chaining@7.28.5(@babel/core@7.28.5)':
+ '@csstools/postcss-color-function@4.0.12(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
- transitivePeerDependencies:
- - supports-color
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.6)
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
- '@babel/plugin-transform-parameters@7.27.7(@babel/core@7.28.5)':
+ '@csstools/postcss-color-mix-function@3.0.12(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.6)
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
- '@babel/plugin-transform-private-methods@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-color-mix-variadic-function-arguments@1.0.2(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5)
- '@babel/helper-plugin-utils': 7.27.1
- transitivePeerDependencies:
- - supports-color
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.6)
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
- '@babel/plugin-transform-private-property-in-object@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-content-alt-text@2.0.8(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-annotate-as-pure': 7.27.3
- '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5)
- '@babel/helper-plugin-utils': 7.27.1
- transitivePeerDependencies:
- - supports-color
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.6)
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
- '@babel/plugin-transform-property-literals@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-contrast-color-function@2.0.12(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.6)
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
- '@babel/plugin-transform-react-constant-elements@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-exponential-functions@2.0.9(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ postcss: 8.5.6
- '@babel/plugin-transform-react-display-name@7.28.0(@babel/core@7.28.5)':
+ '@csstools/postcss-font-format-keywords@4.0.0(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- '@babel/plugin-transform-react-jsx-development@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-gamut-mapping@2.0.11(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/plugin-transform-react-jsx': 7.27.1(@babel/core@7.28.5)
- transitivePeerDependencies:
- - supports-color
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ postcss: 8.5.6
- '@babel/plugin-transform-react-jsx@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-gradients-interpolation-method@5.0.12(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-annotate-as-pure': 7.27.3
- '@babel/helper-module-imports': 7.27.1
- '@babel/helper-plugin-utils': 7.27.1
- '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.28.5)
- '@babel/types': 7.28.5
- transitivePeerDependencies:
- - supports-color
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.6)
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
- '@babel/plugin-transform-react-pure-annotations@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-hwb-function@4.0.12(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-annotate-as-pure': 7.27.3
- '@babel/helper-plugin-utils': 7.27.1
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.6)
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
- '@babel/plugin-transform-regenerator@7.28.4(@babel/core@7.28.5)':
+ '@csstools/postcss-ic-unit@4.0.4(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.6)
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- '@babel/plugin-transform-regexp-modifiers@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-initial@2.0.1(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
- '@babel/helper-plugin-utils': 7.27.1
+ postcss: 8.5.6
- '@babel/plugin-transform-reserved-words@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-is-pseudo-class@5.0.3(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.1.0)
+ postcss: 8.5.6
+ postcss-selector-parser: 7.1.0
- '@babel/plugin-transform-shorthand-properties@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-light-dark-function@2.0.11(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.6)
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
- '@babel/plugin-transform-spread@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-logical-float-and-clear@3.0.0(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
- transitivePeerDependencies:
- - supports-color
+ postcss: 8.5.6
- '@babel/plugin-transform-sticky-regex@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-logical-overflow@2.0.0(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ postcss: 8.5.6
- '@babel/plugin-transform-template-literals@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-logical-overscroll-behavior@2.0.0(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ postcss: 8.5.6
- '@babel/plugin-transform-typeof-symbol@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-logical-resize@3.0.0(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- '@babel/plugin-transform-typescript@7.28.5(@babel/core@7.28.5)':
+ '@csstools/postcss-logical-viewport-units@3.0.4(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-annotate-as-pure': 7.27.3
- '@babel/helper-create-class-features-plugin': 7.28.5(@babel/core@7.28.5)
- '@babel/helper-plugin-utils': 7.27.1
- '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
- '@babel/plugin-syntax-typescript': 7.27.1(@babel/core@7.28.5)
- transitivePeerDependencies:
- - supports-color
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
- '@babel/plugin-transform-unicode-escapes@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-media-minmax@2.0.9(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
+ '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/media-query-list-parser': 4.0.3(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ postcss: 8.5.6
- '@babel/plugin-transform-unicode-property-regex@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-media-queries-aspect-ratio-number-values@3.0.5(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
- '@babel/helper-plugin-utils': 7.27.1
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/media-query-list-parser': 4.0.3(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ postcss: 8.5.6
- '@babel/plugin-transform-unicode-regex@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-nested-calc@4.0.0(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
- '@babel/helper-plugin-utils': 7.27.1
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- '@babel/plugin-transform-unicode-sets-regex@7.27.1(@babel/core@7.28.5)':
+ '@csstools/postcss-normalize-display-values@4.0.0(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.28.5)
- '@babel/helper-plugin-utils': 7.27.1
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- '@babel/preset-env@7.28.5(@babel/core@7.28.5)':
+ '@csstools/postcss-oklab-function@4.0.12(postcss@8.5.6)':
dependencies:
- '@babel/compat-data': 7.28.5
- '@babel/core': 7.28.5
- '@babel/helper-compilation-targets': 7.27.2
- '@babel/helper-plugin-utils': 7.27.1
- '@babel/helper-validator-option': 7.27.1
- '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.28.5(@babel/core@7.28.5)
- '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.28.3(@babel/core@7.28.5)
- '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.28.5)
- '@babel/plugin-syntax-import-assertions': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-syntax-import-attributes': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.28.5)
- '@babel/plugin-transform-arrow-functions': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-async-generator-functions': 7.28.0(@babel/core@7.28.5)
- '@babel/plugin-transform-async-to-generator': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-block-scoped-functions': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-block-scoping': 7.28.5(@babel/core@7.28.5)
- '@babel/plugin-transform-class-properties': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-class-static-block': 7.28.3(@babel/core@7.28.5)
- '@babel/plugin-transform-classes': 7.28.4(@babel/core@7.28.5)
- '@babel/plugin-transform-computed-properties': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-destructuring': 7.28.5(@babel/core@7.28.5)
- '@babel/plugin-transform-dotall-regex': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-duplicate-keys': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-dynamic-import': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-explicit-resource-management': 7.28.0(@babel/core@7.28.5)
- '@babel/plugin-transform-exponentiation-operator': 7.28.5(@babel/core@7.28.5)
- '@babel/plugin-transform-export-namespace-from': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-for-of': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-function-name': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-json-strings': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-literals': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-logical-assignment-operators': 7.28.5(@babel/core@7.28.5)
- '@babel/plugin-transform-member-expression-literals': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-modules-amd': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-modules-commonjs': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-modules-systemjs': 7.28.5(@babel/core@7.28.5)
- '@babel/plugin-transform-modules-umd': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-named-capturing-groups-regex': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-new-target': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-nullish-coalescing-operator': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-numeric-separator': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-object-rest-spread': 7.28.4(@babel/core@7.28.5)
- '@babel/plugin-transform-object-super': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-optional-catch-binding': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-optional-chaining': 7.28.5(@babel/core@7.28.5)
- '@babel/plugin-transform-parameters': 7.27.7(@babel/core@7.28.5)
- '@babel/plugin-transform-private-methods': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-private-property-in-object': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-property-literals': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-regenerator': 7.28.4(@babel/core@7.28.5)
- '@babel/plugin-transform-regexp-modifiers': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-reserved-words': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-shorthand-properties': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-spread': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-sticky-regex': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-template-literals': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-typeof-symbol': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-unicode-escapes': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-unicode-property-regex': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-unicode-regex': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-unicode-sets-regex': 7.27.1(@babel/core@7.28.5)
- '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.28.5)
- babel-plugin-polyfill-corejs2: 0.4.14(@babel/core@7.28.5)
- babel-plugin-polyfill-corejs3: 0.13.0(@babel/core@7.28.5)
- babel-plugin-polyfill-regenerator: 0.6.5(@babel/core@7.28.5)
- core-js-compat: 3.46.0
- semver: 6.3.1
- transitivePeerDependencies:
- - supports-color
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.6)
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
+
+ '@csstools/postcss-progressive-custom-properties@4.2.1(postcss@8.5.6)':
+ dependencies:
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.28.5)':
+ '@csstools/postcss-random-function@2.0.1(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- '@babel/types': 7.28.5
- esutils: 2.0.3
+ '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ postcss: 8.5.6
- '@babel/preset-react@7.28.5(@babel/core@7.28.5)':
+ '@csstools/postcss-relative-color-syntax@3.0.12(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- '@babel/helper-validator-option': 7.27.1
- '@babel/plugin-transform-react-display-name': 7.28.0(@babel/core@7.28.5)
- '@babel/plugin-transform-react-jsx': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-react-jsx-development': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-react-pure-annotations': 7.27.1(@babel/core@7.28.5)
- transitivePeerDependencies:
- - supports-color
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.6)
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
- '@babel/preset-typescript@7.28.5(@babel/core@7.28.5)':
+ '@csstools/postcss-scope-pseudo-class@4.0.1(postcss@8.5.6)':
dependencies:
- '@babel/core': 7.28.5
- '@babel/helper-plugin-utils': 7.27.1
- '@babel/helper-validator-option': 7.27.1
- '@babel/plugin-syntax-jsx': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-modules-commonjs': 7.27.1(@babel/core@7.28.5)
- '@babel/plugin-transform-typescript': 7.28.5(@babel/core@7.28.5)
- transitivePeerDependencies:
- - supports-color
+ postcss: 8.5.6
+ postcss-selector-parser: 7.1.0
- '@babel/runtime-corejs3@7.28.4':
+ '@csstools/postcss-sign-functions@1.1.4(postcss@8.5.6)':
dependencies:
- core-js-pure: 3.46.0
-
- '@babel/runtime@7.28.4': {}
+ '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ postcss: 8.5.6
- '@babel/template@7.27.2':
+ '@csstools/postcss-stepped-value-functions@4.0.9(postcss@8.5.6)':
dependencies:
- '@babel/code-frame': 7.27.1
- '@babel/parser': 7.28.5
- '@babel/types': 7.28.5
+ '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ postcss: 8.5.6
- '@babel/traverse@7.28.5':
+ '@csstools/postcss-text-decoration-shorthand@4.0.3(postcss@8.5.6)':
dependencies:
- '@babel/code-frame': 7.27.1
- '@babel/generator': 7.28.5
- '@babel/helper-globals': 7.28.0
- '@babel/parser': 7.28.5
- '@babel/template': 7.27.2
- '@babel/types': 7.28.5
- debug: 4.4.3(supports-color@10.2.2)
- transitivePeerDependencies:
- - supports-color
+ '@csstools/color-helpers': 5.1.0
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- '@babel/types@7.28.5':
+ '@csstools/postcss-trigonometric-functions@4.0.9(postcss@8.5.6)':
dependencies:
- '@babel/helper-string-parser': 7.27.1
- '@babel/helper-validator-identifier': 7.28.5
+ '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ postcss: 8.5.6
- '@bcoe/v8-coverage@0.2.3': {}
+ '@csstools/postcss-unset-value@4.0.0(postcss@8.5.6)':
+ dependencies:
+ postcss: 8.5.6
- '@borewit/text-codec@0.1.1': {}
+ '@csstools/selector-resolve-nested@3.1.0(postcss-selector-parser@7.1.0)':
+ dependencies:
+ postcss-selector-parser: 7.1.0
- '@chevrotain/cst-dts-gen@11.0.3':
+ '@csstools/selector-specificity@5.0.0(postcss-selector-parser@7.1.0)':
dependencies:
- '@chevrotain/gast': 11.0.3
- '@chevrotain/types': 11.0.3
- lodash-es: 4.17.21
+ postcss-selector-parser: 7.1.0
- '@chevrotain/gast@11.0.3':
+ '@csstools/utilities@2.0.0(postcss@8.5.6)':
dependencies:
- '@chevrotain/types': 11.0.3
- lodash-es: 4.17.21
+ postcss: 8.5.6
- '@chevrotain/regexp-to-ast@11.0.3': {}
+ '@discoveryjs/json-ext@0.5.7': {}
- '@chevrotain/types@11.0.3': {}
+ '@dnd-kit/accessibility@3.1.1(react@19.2.0)':
+ dependencies:
+ react: 19.2.0
+ tslib: 2.8.1
- '@chevrotain/utils@11.0.3': {}
+ '@dnd-kit/core@6.3.1(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
+ dependencies:
+ '@dnd-kit/accessibility': 3.1.1(react@19.2.0)
+ '@dnd-kit/utilities': 3.2.2(react@19.2.0)
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
+ tslib: 2.8.1
- '@colors/colors@1.5.0':
- optional: true
+ '@dnd-kit/modifiers@9.0.0(@dnd-kit/core@6.3.1(react-dom@19.2.0(react@19.2.0))(react@19.2.0))(react@19.2.0)':
+ dependencies:
+ '@dnd-kit/core': 6.3.1(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@dnd-kit/utilities': 3.2.2(react@19.2.0)
+ react: 19.2.0
+ tslib: 2.8.1
- '@cspotcode/source-map-support@0.8.1':
+ '@dnd-kit/sortable@10.0.0(@dnd-kit/core@6.3.1(react-dom@19.2.0(react@19.2.0))(react@19.2.0))(react@19.2.0)':
dependencies:
- '@jridgewell/trace-mapping': 0.3.9
+ '@dnd-kit/core': 6.3.1(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@dnd-kit/utilities': 3.2.2(react@19.2.0)
+ react: 19.2.0
+ tslib: 2.8.1
- '@css-inline/css-inline-android-arm-eabi@0.14.1':
- optional: true
+ '@dnd-kit/utilities@3.2.2(react@19.2.0)':
+ dependencies:
+ react: 19.2.0
+ tslib: 2.8.1
- '@css-inline/css-inline-android-arm64@0.14.1':
- optional: true
+ '@docsearch/css@3.9.0': {}
- '@css-inline/css-inline-darwin-arm64@0.14.1':
- optional: true
+ '@docsearch/react@3.9.0(@algolia/client-search@5.43.0)(@types/react@19.2.2)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(search-insights@2.17.3)':
+ dependencies:
+ '@algolia/autocomplete-core': 1.17.9(@algolia/client-search@5.43.0)(algoliasearch@5.43.0)(search-insights@2.17.3)
+ '@algolia/autocomplete-preset-algolia': 1.17.9(@algolia/client-search@5.43.0)(algoliasearch@5.43.0)
+ '@docsearch/css': 3.9.0
+ algoliasearch: 5.43.0
+ optionalDependencies:
+ '@types/react': 19.2.2
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
+ search-insights: 2.17.3
+ transitivePeerDependencies:
+ - '@algolia/client-search'
- '@css-inline/css-inline-darwin-x64@0.14.1':
- optional: true
+ '@docusaurus/babel@3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@babel/generator': 7.28.5
+ '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.28.5)
+ '@babel/plugin-transform-runtime': 7.28.5(@babel/core@7.28.5)
+ '@babel/preset-env': 7.28.5(@babel/core@7.28.5)
+ '@babel/preset-react': 7.28.5(@babel/core@7.28.5)
+ '@babel/preset-typescript': 7.28.5(@babel/core@7.28.5)
+ '@babel/runtime': 7.28.4
+ '@babel/runtime-corejs3': 7.28.4
+ '@babel/traverse': 7.28.5
+ '@docusaurus/logger': 3.7.0
+ '@docusaurus/utils': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ babel-plugin-dynamic-import-node: 2.3.3
+ fs-extra: 11.3.2
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - '@swc/core'
+ - esbuild
+ - react
+ - react-dom
+ - supports-color
+ - uglify-js
+ - webpack-cli
- '@css-inline/css-inline-linux-arm-gnueabihf@0.14.1':
- optional: true
+ '@docusaurus/bundler@3.7.0(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@docusaurus/babel': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/cssnano-preset': 3.7.0
+ '@docusaurus/logger': 3.7.0
+ '@docusaurus/types': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ babel-loader: 9.2.1(@babel/core@7.28.5)(webpack@5.100.2)
+ clean-css: 5.3.3
+ copy-webpack-plugin: 11.0.0(webpack@5.100.2)
+ css-loader: 6.11.0(webpack@5.100.2)
+ css-minimizer-webpack-plugin: 5.0.1(clean-css@5.3.3)(webpack@5.100.2)
+ cssnano: 6.1.2(postcss@8.5.6)
+ file-loader: 6.2.0(webpack@5.100.2)
+ html-minifier-terser: 7.2.0
+ mini-css-extract-plugin: 2.9.4(webpack@5.100.2)
+ null-loader: 4.0.1(webpack@5.100.2)
+ postcss: 8.5.6
+ postcss-loader: 7.3.4(postcss@8.5.6)(typescript@5.9.3)(webpack@5.100.2)
+ postcss-preset-env: 10.4.0(postcss@8.5.6)
+ react-dev-utils: 12.0.1(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3)(webpack@5.100.2)
+ terser-webpack-plugin: 5.3.14(webpack@5.100.2)
+ tslib: 2.8.1
+ url-loader: 4.1.1(file-loader@6.2.0(webpack@5.100.2))(webpack@5.100.2)
+ webpack: 5.100.2
+ webpackbar: 6.0.1(webpack@5.100.2)
+ transitivePeerDependencies:
+ - '@parcel/css'
+ - '@rspack/core'
+ - '@swc/core'
+ - '@swc/css'
+ - csso
+ - esbuild
+ - eslint
+ - lightningcss
+ - react
+ - react-dom
+ - supports-color
+ - typescript
+ - uglify-js
+ - vue-template-compiler
+ - webpack-cli
- '@css-inline/css-inline-linux-arm64-gnu@0.14.1':
- optional: true
+ '@docusaurus/core@3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)':
+ dependencies:
+ '@docusaurus/babel': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/bundler': 3.7.0(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/logger': 3.7.0
+ '@docusaurus/mdx-loader': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-common': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-validation': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@mdx-js/react': 3.1.1(@types/react@19.2.2)(react@19.2.0)
+ boxen: 6.2.1
+ chalk: 4.1.2
+ chokidar: 3.6.0
+ cli-table3: 0.6.5
+ combine-promises: 1.2.0
+ commander: 5.1.0
+ core-js: 3.46.0
+ del: 6.1.1
+ detect-port: 1.6.1
+ escape-html: 1.0.3
+ eta: 2.2.0
+ eval: 0.1.8
+ fs-extra: 11.3.2
+ html-tags: 3.3.1
+ html-webpack-plugin: 5.6.4(webpack@5.100.2)
+ leven: 3.1.0
+ lodash: 4.17.21
+ p-map: 4.0.0
+ prompts: 2.4.2
+ react: 19.2.0
+ react-dev-utils: 12.0.1(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3)(webpack@5.100.2)
+ react-dom: 19.2.0(react@19.2.0)
+ react-helmet-async: '@slorber/react-helmet-async@1.3.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)'
+ react-loadable: '@docusaurus/react-loadable@6.0.0(react@19.2.0)'
+ react-loadable-ssr-addon-v5-slorber: 1.0.1(@docusaurus/react-loadable@6.0.0(react@19.2.0))(webpack@5.100.2)
+ react-router: 5.3.4(react@19.2.0)
+ react-router-config: 5.1.1(react-router@5.3.4(react@19.2.0))(react@19.2.0)
+ react-router-dom: 5.3.4(react@19.2.0)
+ semver: 7.7.3
+ serve-handler: 6.1.6
+ shelljs: 0.8.5
+ tslib: 2.8.1
+ update-notifier: 6.0.2
+ webpack: 5.100.2
+ webpack-bundle-analyzer: 4.10.2
+ webpack-dev-server: 4.15.2(webpack@5.100.2)
+ webpack-merge: 6.0.1
+ transitivePeerDependencies:
+ - '@docusaurus/faster'
+ - '@parcel/css'
+ - '@rspack/core'
+ - '@swc/core'
+ - '@swc/css'
+ - bufferutil
+ - csso
+ - debug
+ - esbuild
+ - eslint
+ - lightningcss
+ - supports-color
+ - typescript
+ - uglify-js
+ - utf-8-validate
+ - vue-template-compiler
+ - webpack-cli
- '@css-inline/css-inline-linux-arm64-musl@0.14.1':
- optional: true
+ '@docusaurus/cssnano-preset@3.7.0':
+ dependencies:
+ cssnano-preset-advanced: 6.1.2(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-sort-media-queries: 5.2.0(postcss@8.5.6)
+ tslib: 2.8.1
- '@css-inline/css-inline-linux-x64-gnu@0.14.1':
- optional: true
+ '@docusaurus/logger@3.7.0':
+ dependencies:
+ chalk: 4.1.2
+ tslib: 2.8.1
- '@css-inline/css-inline-linux-x64-musl@0.14.1':
- optional: true
+ '@docusaurus/mdx-loader@3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
+ dependencies:
+ '@docusaurus/logger': 3.7.0
+ '@docusaurus/utils': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-validation': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@mdx-js/mdx': 3.1.1
+ '@slorber/remark-comment': 1.0.0
+ escape-html: 1.0.3
+ estree-util-value-to-estree: 3.5.0
+ file-loader: 6.2.0(webpack@5.100.2)
+ fs-extra: 11.3.2
+ image-size: 1.2.1
+ mdast-util-mdx: 3.0.0
+ mdast-util-to-string: 4.0.0
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
+ rehype-raw: 7.0.0
+ remark-directive: 3.0.1
+ remark-emoji: 4.0.1
+ remark-frontmatter: 5.0.0
+ remark-gfm: 4.0.1
+ stringify-object: 3.3.0
+ tslib: 2.8.1
+ unified: 11.0.5
+ unist-util-visit: 5.0.0
+ url-loader: 4.1.1(file-loader@6.2.0(webpack@5.100.2))(webpack@5.100.2)
+ vfile: 6.0.3
+ webpack: 5.100.2
+ transitivePeerDependencies:
+ - '@swc/core'
+ - esbuild
+ - supports-color
+ - uglify-js
+ - webpack-cli
- '@css-inline/css-inline-win32-x64-msvc@0.14.1':
- optional: true
+ '@docusaurus/module-type-aliases@3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
+ dependencies:
+ '@docusaurus/types': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@types/history': 4.7.11
+ '@types/react': 19.2.2
+ '@types/react-router-config': 5.0.11
+ '@types/react-router-dom': 5.3.3
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
+ react-helmet-async: '@slorber/react-helmet-async@1.3.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)'
+ react-loadable: '@docusaurus/react-loadable@6.0.0(react@19.2.0)'
+ transitivePeerDependencies:
+ - '@swc/core'
+ - esbuild
+ - supports-color
+ - uglify-js
+ - webpack-cli
- '@css-inline/css-inline@0.14.1':
- optionalDependencies:
- '@css-inline/css-inline-android-arm-eabi': 0.14.1
- '@css-inline/css-inline-android-arm64': 0.14.1
- '@css-inline/css-inline-darwin-arm64': 0.14.1
- '@css-inline/css-inline-darwin-x64': 0.14.1
- '@css-inline/css-inline-linux-arm-gnueabihf': 0.14.1
- '@css-inline/css-inline-linux-arm64-gnu': 0.14.1
- '@css-inline/css-inline-linux-arm64-musl': 0.14.1
- '@css-inline/css-inline-linux-x64-gnu': 0.14.1
- '@css-inline/css-inline-linux-x64-musl': 0.14.1
- '@css-inline/css-inline-win32-x64-msvc': 0.14.1
+ '@docusaurus/plugin-content-blog@3.7.0(@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3))(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)':
+ dependencies:
+ '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/logger': 3.7.0
+ '@docusaurus/mdx-loader': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/plugin-content-docs': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/types': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-common': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-validation': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ cheerio: 1.0.0-rc.12
+ feed: 4.2.2
+ fs-extra: 11.3.2
+ lodash: 4.17.21
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
+ reading-time: 1.5.0
+ srcset: 4.0.0
+ tslib: 2.8.1
+ unist-util-visit: 5.0.0
+ utility-types: 3.11.0
+ webpack: 5.100.2
+ transitivePeerDependencies:
+ - '@docusaurus/faster'
+ - '@mdx-js/react'
+ - '@parcel/css'
+ - '@rspack/core'
+ - '@swc/core'
+ - '@swc/css'
+ - bufferutil
+ - csso
+ - debug
+ - esbuild
+ - eslint
+ - lightningcss
+ - supports-color
+ - typescript
+ - uglify-js
+ - utf-8-validate
+ - vue-template-compiler
+ - webpack-cli
- '@csstools/color-helpers@5.1.0': {}
+ '@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)':
+ dependencies:
+ '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/logger': 3.7.0
+ '@docusaurus/mdx-loader': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/module-type-aliases': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/types': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-common': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-validation': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@types/react-router-config': 5.0.11
+ combine-promises: 1.2.0
+ fs-extra: 11.3.2
+ js-yaml: 4.1.0
+ lodash: 4.17.21
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
+ tslib: 2.8.1
+ utility-types: 3.11.0
+ webpack: 5.100.2
+ transitivePeerDependencies:
+ - '@docusaurus/faster'
+ - '@mdx-js/react'
+ - '@parcel/css'
+ - '@rspack/core'
+ - '@swc/core'
+ - '@swc/css'
+ - bufferutil
+ - csso
+ - debug
+ - esbuild
+ - eslint
+ - lightningcss
+ - supports-color
+ - typescript
+ - uglify-js
+ - utf-8-validate
+ - vue-template-compiler
+ - webpack-cli
- '@csstools/css-calc@2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)':
+ '@docusaurus/plugin-content-pages@3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)':
dependencies:
- '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
- '@csstools/css-tokenizer': 3.0.4
+ '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/mdx-loader': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/types': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-validation': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ fs-extra: 11.3.2
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
+ tslib: 2.8.1
+ webpack: 5.100.2
+ transitivePeerDependencies:
+ - '@docusaurus/faster'
+ - '@mdx-js/react'
+ - '@parcel/css'
+ - '@rspack/core'
+ - '@swc/core'
+ - '@swc/css'
+ - bufferutil
+ - csso
+ - debug
+ - esbuild
+ - eslint
+ - lightningcss
+ - supports-color
+ - typescript
+ - uglify-js
+ - utf-8-validate
+ - vue-template-compiler
+ - webpack-cli
- '@csstools/css-color-parser@3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)':
+ '@docusaurus/plugin-debug@3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)':
dependencies:
- '@csstools/color-helpers': 5.1.0
- '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
- '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
- '@csstools/css-tokenizer': 3.0.4
+ '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/types': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ fs-extra: 11.3.2
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
+ react-json-view-lite: 1.5.0(react@19.2.0)
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - '@docusaurus/faster'
+ - '@mdx-js/react'
+ - '@parcel/css'
+ - '@rspack/core'
+ - '@swc/core'
+ - '@swc/css'
+ - bufferutil
+ - csso
+ - debug
+ - esbuild
+ - eslint
+ - lightningcss
+ - supports-color
+ - typescript
+ - uglify-js
+ - utf-8-validate
+ - vue-template-compiler
+ - webpack-cli
- '@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4)':
+ '@docusaurus/plugin-google-analytics@3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)':
dependencies:
- '@csstools/css-tokenizer': 3.0.4
-
- '@csstools/css-tokenizer@3.0.4': {}
+ '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/types': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-validation': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - '@docusaurus/faster'
+ - '@mdx-js/react'
+ - '@parcel/css'
+ - '@rspack/core'
+ - '@swc/core'
+ - '@swc/css'
+ - bufferutil
+ - csso
+ - debug
+ - esbuild
+ - eslint
+ - lightningcss
+ - supports-color
+ - typescript
+ - uglify-js
+ - utf-8-validate
+ - vue-template-compiler
+ - webpack-cli
- '@csstools/selector-resolve-nested@3.1.0(postcss-selector-parser@7.1.0)':
+ '@docusaurus/plugin-google-gtag@3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)':
dependencies:
- postcss-selector-parser: 7.1.0
+ '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/types': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-validation': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@types/gtag.js': 0.0.12
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - '@docusaurus/faster'
+ - '@mdx-js/react'
+ - '@parcel/css'
+ - '@rspack/core'
+ - '@swc/core'
+ - '@swc/css'
+ - bufferutil
+ - csso
+ - debug
+ - esbuild
+ - eslint
+ - lightningcss
+ - supports-color
+ - typescript
+ - uglify-js
+ - utf-8-validate
+ - vue-template-compiler
+ - webpack-cli
- '@csstools/selector-specificity@5.0.0(postcss-selector-parser@7.1.0)':
+ '@docusaurus/plugin-google-tag-manager@3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)':
dependencies:
- postcss-selector-parser: 7.1.0
+ '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/types': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-validation': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - '@docusaurus/faster'
+ - '@mdx-js/react'
+ - '@parcel/css'
+ - '@rspack/core'
+ - '@swc/core'
+ - '@swc/css'
+ - bufferutil
+ - csso
+ - debug
+ - esbuild
+ - eslint
+ - lightningcss
+ - supports-color
+ - typescript
+ - uglify-js
+ - utf-8-validate
+ - vue-template-compiler
+ - webpack-cli
- '@dnd-kit/accessibility@3.1.1(react@19.2.0)':
+ '@docusaurus/plugin-sitemap@3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)':
dependencies:
+ '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/logger': 3.7.0
+ '@docusaurus/types': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-common': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-validation': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ fs-extra: 11.3.2
react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
+ sitemap: 7.1.2
tslib: 2.8.1
+ transitivePeerDependencies:
+ - '@docusaurus/faster'
+ - '@mdx-js/react'
+ - '@parcel/css'
+ - '@rspack/core'
+ - '@swc/core'
+ - '@swc/css'
+ - bufferutil
+ - csso
+ - debug
+ - esbuild
+ - eslint
+ - lightningcss
+ - supports-color
+ - typescript
+ - uglify-js
+ - utf-8-validate
+ - vue-template-compiler
+ - webpack-cli
- '@dnd-kit/core@6.3.1(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
+ '@docusaurus/plugin-svgr@3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)':
dependencies:
- '@dnd-kit/accessibility': 3.1.1(react@19.2.0)
- '@dnd-kit/utilities': 3.2.2(react@19.2.0)
+ '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/types': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-validation': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@svgr/core': 8.1.0(typescript@5.9.3)
+ '@svgr/webpack': 8.1.0(typescript@5.9.3)
react: 19.2.0
react-dom: 19.2.0(react@19.2.0)
tslib: 2.8.1
+ webpack: 5.100.2
+ transitivePeerDependencies:
+ - '@docusaurus/faster'
+ - '@mdx-js/react'
+ - '@parcel/css'
+ - '@rspack/core'
+ - '@swc/core'
+ - '@swc/css'
+ - bufferutil
+ - csso
+ - debug
+ - esbuild
+ - eslint
+ - lightningcss
+ - supports-color
+ - typescript
+ - uglify-js
+ - utf-8-validate
+ - vue-template-compiler
+ - webpack-cli
- '@dnd-kit/modifiers@9.0.0(@dnd-kit/core@6.3.1(react-dom@19.2.0(react@19.2.0))(react@19.2.0))(react@19.2.0)':
+ '@docusaurus/preset-classic@3.7.0(@algolia/client-search@5.43.0)(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(@types/react@19.2.2)(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(search-insights@2.17.3)(typescript@5.9.3)':
+ dependencies:
+ '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/plugin-content-blog': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3))(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/plugin-content-docs': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/plugin-content-pages': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/plugin-debug': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/plugin-google-analytics': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/plugin-google-gtag': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/plugin-google-tag-manager': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/plugin-sitemap': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/plugin-svgr': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/theme-classic': 3.7.0(@types/react@19.2.2)(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/theme-search-algolia': 3.7.0(@algolia/client-search@5.43.0)(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(@types/react@19.2.2)(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(search-insights@2.17.3)(typescript@5.9.3)
+ '@docusaurus/types': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
+ transitivePeerDependencies:
+ - '@algolia/client-search'
+ - '@docusaurus/faster'
+ - '@mdx-js/react'
+ - '@parcel/css'
+ - '@rspack/core'
+ - '@swc/core'
+ - '@swc/css'
+ - '@types/react'
+ - bufferutil
+ - csso
+ - debug
+ - esbuild
+ - eslint
+ - lightningcss
+ - search-insights
+ - supports-color
+ - typescript
+ - uglify-js
+ - utf-8-validate
+ - vue-template-compiler
+ - webpack-cli
+
+ '@docusaurus/react-loadable@6.0.0(react@19.2.0)':
dependencies:
- '@dnd-kit/core': 6.3.1(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
- '@dnd-kit/utilities': 3.2.2(react@19.2.0)
+ '@types/react': 19.2.2
+ react: 19.2.0
+
+ '@docusaurus/theme-classic@3.7.0(@types/react@19.2.2)(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)':
+ dependencies:
+ '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/logger': 3.7.0
+ '@docusaurus/mdx-loader': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/module-type-aliases': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/plugin-content-blog': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3))(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/plugin-content-docs': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/plugin-content-pages': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/theme-translations': 3.7.0
+ '@docusaurus/types': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-common': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-validation': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@mdx-js/react': 3.1.1(@types/react@19.2.2)(react@19.2.0)
+ clsx: 2.1.1
+ copy-text-to-clipboard: 3.2.2
+ infima: 0.2.0-alpha.45
+ lodash: 4.17.21
+ nprogress: 0.2.0
+ postcss: 8.5.6
+ prism-react-renderer: 2.4.1(react@19.2.0)
+ prismjs: 1.30.0
react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
+ react-router-dom: 5.3.4(react@19.2.0)
+ rtlcss: 4.3.0
tslib: 2.8.1
+ utility-types: 3.11.0
+ transitivePeerDependencies:
+ - '@docusaurus/faster'
+ - '@parcel/css'
+ - '@rspack/core'
+ - '@swc/core'
+ - '@swc/css'
+ - '@types/react'
+ - bufferutil
+ - csso
+ - debug
+ - esbuild
+ - eslint
+ - lightningcss
+ - supports-color
+ - typescript
+ - uglify-js
+ - utf-8-validate
+ - vue-template-compiler
+ - webpack-cli
- '@dnd-kit/sortable@10.0.0(@dnd-kit/core@6.3.1(react-dom@19.2.0(react@19.2.0))(react@19.2.0))(react@19.2.0)':
+ '@docusaurus/theme-common@3.7.0(@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
dependencies:
- '@dnd-kit/core': 6.3.1(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
- '@dnd-kit/utilities': 3.2.2(react@19.2.0)
+ '@docusaurus/mdx-loader': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/module-type-aliases': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/plugin-content-docs': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/utils': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-common': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@types/history': 4.7.11
+ '@types/react': 19.2.2
+ '@types/react-router-config': 5.0.11
+ clsx: 2.1.1
+ parse-numeric-range: 1.3.0
+ prism-react-renderer: 2.4.1(react@19.2.0)
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
+ tslib: 2.8.1
+ utility-types: 3.11.0
+ transitivePeerDependencies:
+ - '@swc/core'
+ - esbuild
+ - supports-color
+ - uglify-js
+ - webpack-cli
+
+ '@docusaurus/theme-search-algolia@3.7.0(@algolia/client-search@5.43.0)(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(@types/react@19.2.2)(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(search-insights@2.17.3)(typescript@5.9.3)':
+ dependencies:
+ '@docsearch/react': 3.9.0(@algolia/client-search@5.43.0)(@types/react@19.2.2)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(search-insights@2.17.3)
+ '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/logger': 3.7.0
+ '@docusaurus/plugin-content-docs': 3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3)
+ '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0))(eslint@9.39.1(jiti@1.21.7))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)(typescript@5.9.3))(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/theme-translations': 3.7.0
+ '@docusaurus/utils': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-validation': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ algoliasearch: 5.43.0
+ algoliasearch-helper: 3.26.1(algoliasearch@5.43.0)
+ clsx: 2.1.1
+ eta: 2.2.0
+ fs-extra: 11.3.2
+ lodash: 4.17.21
react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
+ tslib: 2.8.1
+ utility-types: 3.11.0
+ transitivePeerDependencies:
+ - '@algolia/client-search'
+ - '@docusaurus/faster'
+ - '@mdx-js/react'
+ - '@parcel/css'
+ - '@rspack/core'
+ - '@swc/core'
+ - '@swc/css'
+ - '@types/react'
+ - bufferutil
+ - csso
+ - debug
+ - esbuild
+ - eslint
+ - lightningcss
+ - search-insights
+ - supports-color
+ - typescript
+ - uglify-js
+ - utf-8-validate
+ - vue-template-compiler
+ - webpack-cli
+
+ '@docusaurus/theme-translations@3.7.0':
+ dependencies:
+ fs-extra: 11.3.2
tslib: 2.8.1
- '@dnd-kit/utilities@3.2.2(react@19.2.0)':
+ '@docusaurus/tsconfig@3.7.0': {}
+
+ '@docusaurus/types@3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
dependencies:
+ '@mdx-js/mdx': 3.1.1
+ '@types/history': 4.7.11
+ '@types/react': 19.2.2
+ commander: 5.1.0
+ joi: 17.13.3
react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
+ react-helmet-async: '@slorber/react-helmet-async@1.3.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)'
+ utility-types: 3.11.0
+ webpack: 5.100.2
+ webpack-merge: 5.10.0
+ transitivePeerDependencies:
+ - '@swc/core'
+ - esbuild
+ - supports-color
+ - uglify-js
+ - webpack-cli
+
+ '@docusaurus/utils-common@3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
+ dependencies:
+ '@docusaurus/types': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - '@swc/core'
+ - esbuild
+ - react
+ - react-dom
+ - supports-color
+ - uglify-js
+ - webpack-cli
+
+ '@docusaurus/utils-validation@3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
+ dependencies:
+ '@docusaurus/logger': 3.7.0
+ '@docusaurus/utils': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-common': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ fs-extra: 11.3.2
+ joi: 17.13.3
+ js-yaml: 4.1.0
+ lodash: 4.17.21
+ tslib: 2.8.1
+ transitivePeerDependencies:
+ - '@swc/core'
+ - esbuild
+ - react
+ - react-dom
+ - supports-color
+ - uglify-js
+ - webpack-cli
+
+ '@docusaurus/utils@3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
+ dependencies:
+ '@docusaurus/logger': 3.7.0
+ '@docusaurus/types': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ '@docusaurus/utils-common': 3.7.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
+ escape-string-regexp: 4.0.0
+ file-loader: 6.2.0(webpack@5.100.2)
+ fs-extra: 11.3.2
+ github-slugger: 1.5.0
+ globby: 11.1.0
+ gray-matter: 4.0.3
+ jiti: 1.21.7
+ js-yaml: 4.1.0
+ lodash: 4.17.21
+ micromatch: 4.0.8
+ prompts: 2.4.2
+ resolve-pathname: 3.0.0
+ shelljs: 0.8.5
tslib: 2.8.1
+ url-loader: 4.1.1(file-loader@6.2.0(webpack@5.100.2))(webpack@5.100.2)
+ utility-types: 3.11.0
+ webpack: 5.100.2
+ transitivePeerDependencies:
+ - '@swc/core'
+ - esbuild
+ - react
+ - react-dom
+ - supports-color
+ - uglify-js
+ - webpack-cli
'@emnapi/core@1.7.0':
dependencies:
@@ -12444,10 +16323,16 @@ snapshots:
'@hapi/hoek@11.0.7': {}
+ '@hapi/hoek@9.3.0': {}
+
'@hapi/pinpoint@2.0.1': {}
'@hapi/tlds@1.1.4': {}
+ '@hapi/topo@5.1.0':
+ dependencies:
+ '@hapi/hoek': 9.3.0
+
'@hapi/topo@6.0.2':
dependencies:
'@hapi/hoek': 11.0.7
@@ -12873,6 +16758,10 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ '@jest/schemas@29.6.3':
+ dependencies:
+ '@sinclair/typebox': 0.27.8
+
'@jest/schemas@30.0.5':
dependencies:
'@sinclair/typebox': 0.34.41
@@ -12924,6 +16813,15 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ '@jest/types@29.6.3':
+ dependencies:
+ '@jest/schemas': 29.6.3
+ '@types/istanbul-lib-coverage': 2.0.6
+ '@types/istanbul-reports': 3.0.4
+ '@types/node': 22.18.13
+ '@types/yargs': 17.0.34
+ chalk: 4.1.2
+
'@jest/types@30.2.0':
dependencies:
'@jest/pattern': 30.0.1
@@ -12963,10 +16861,48 @@ snapshots:
'@jridgewell/resolve-uri': 3.1.2
'@jridgewell/sourcemap-codec': 1.5.5
+ '@leichtgewicht/ip-codec@2.0.5': {}
+
'@lukeed/csprng@1.1.0': {}
'@lukeed/ms@2.0.2': {}
+ '@mdx-js/mdx@3.1.1':
+ dependencies:
+ '@types/estree': 1.0.8
+ '@types/estree-jsx': 1.0.5
+ '@types/hast': 3.0.4
+ '@types/mdx': 2.0.13
+ acorn: 8.15.0
+ collapse-white-space: 2.1.0
+ devlop: 1.1.0
+ estree-util-is-identifier-name: 3.0.0
+ estree-util-scope: 1.0.0
+ estree-walker: 3.0.3
+ hast-util-to-jsx-runtime: 2.3.6
+ markdown-extensions: 2.0.0
+ recma-build-jsx: 1.0.0
+ recma-jsx: 1.0.1(acorn@8.15.0)
+ recma-stringify: 1.0.0
+ rehype-recma: 1.0.0
+ remark-mdx: 3.1.1
+ remark-parse: 11.0.0
+ remark-rehype: 11.1.2
+ source-map: 0.7.6
+ unified: 11.0.5
+ unist-util-position-from-estree: 2.0.0
+ unist-util-stringify-position: 4.0.0
+ unist-util-visit: 5.0.0
+ vfile: 6.0.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@mdx-js/react@3.1.1(@types/react@19.2.2)(react@19.2.0)':
+ dependencies:
+ '@types/mdx': 2.0.13
+ '@types/react': 19.2.2
+ react: 19.2.0
+
'@microsoft/tsdoc@0.15.1': {}
'@napi-rs/nice-android-arm-eabi@1.1.1':
@@ -13479,6 +17415,20 @@ snapshots:
dependencies:
playwright: 1.56.1
+ '@pnpm/config.env-replace@1.1.0': {}
+
+ '@pnpm/network.ca-file@1.0.2':
+ dependencies:
+ graceful-fs: 4.2.10
+
+ '@pnpm/npm-conf@2.3.1':
+ dependencies:
+ '@pnpm/config.env-replace': 1.1.0
+ '@pnpm/network.ca-file': 1.0.2
+ config-chain: 1.1.13
+
+ '@polka/url@1.0.0-next.29': {}
+
'@radix-ui/number@1.1.1': {}
'@radix-ui/primitive@1.1.3': {}
@@ -14197,8 +18147,20 @@ snapshots:
selderee: 0.11.0
optional: true
+ '@sideway/address@4.1.5':
+ dependencies:
+ '@hapi/hoek': 9.3.0
+
+ '@sideway/formula@3.0.1': {}
+
+ '@sideway/pinpoint@2.0.0': {}
+
+ '@sinclair/typebox@0.27.8': {}
+
'@sinclair/typebox@0.34.41': {}
+ '@sindresorhus/is@4.6.0': {}
+
'@sindresorhus/is@5.6.0': {}
'@sinonjs/commons@3.0.1':
@@ -14209,6 +18171,22 @@ snapshots:
dependencies:
'@sinonjs/commons': 3.0.1
+ '@slorber/react-helmet-async@1.3.0(react-dom@19.2.0(react@19.2.0))(react@19.2.0)':
+ dependencies:
+ '@babel/runtime': 7.28.4
+ invariant: 2.2.4
+ prop-types: 15.8.1
+ react: 19.2.0
+ react-dom: 19.2.0(react@19.2.0)
+ react-fast-compare: 3.2.2
+ shallowequal: 1.1.0
+
+ '@slorber/remark-comment@1.0.0':
+ dependencies:
+ micromark-factory-space: 1.1.0
+ micromark-util-character: 1.2.0
+ micromark-util-symbol: 1.1.0
+
'@smithy/abort-controller@4.2.4':
dependencies:
'@smithy/types': 4.8.1
@@ -14903,10 +18881,19 @@ snapshots:
'@types/connect': 3.4.38
'@types/node': 22.18.13
+ '@types/bonjour@3.5.13':
+ dependencies:
+ '@types/node': 22.18.13
+
'@types/cls-hooked@4.3.9':
dependencies:
'@types/node': 22.18.13
+ '@types/connect-history-api-fallback@1.5.4':
+ dependencies:
+ '@types/express-serve-static-core': 5.1.0
+ '@types/node': 22.18.13
+
'@types/connect@3.4.38':
dependencies:
'@types/node': 22.18.13
@@ -14937,6 +18924,10 @@ snapshots:
'@types/d3-timer@3.0.2': {}
+ '@types/debug@4.1.12':
+ dependencies:
+ '@types/ms': 2.1.0
+
'@types/ejs@3.1.5':
optional: true
@@ -14950,8 +18941,19 @@ snapshots:
'@types/estree': 1.0.8
'@types/json-schema': 7.0.15
+ '@types/estree-jsx@1.0.5':
+ dependencies:
+ '@types/estree': 1.0.8
+
'@types/estree@1.0.8': {}
+ '@types/express-serve-static-core@4.19.7':
+ dependencies:
+ '@types/node': 22.18.13
+ '@types/qs': 6.14.0
+ '@types/range-parser': 1.2.7
+ '@types/send': 1.2.1
+
'@types/express-serve-static-core@5.1.0':
dependencies:
'@types/node': 22.18.13
@@ -14959,21 +18961,42 @@ snapshots:
'@types/range-parser': 1.2.7
'@types/send': 1.2.1
+ '@types/express@4.17.25':
+ dependencies:
+ '@types/body-parser': 1.19.6
+ '@types/express-serve-static-core': 4.19.7
+ '@types/qs': 6.14.0
+ '@types/serve-static': 1.15.10
+
'@types/express@5.0.5':
dependencies:
'@types/body-parser': 1.19.6
'@types/express-serve-static-core': 5.1.0
'@types/serve-static': 1.15.10
+ '@types/gtag.js@0.0.12': {}
+
+ '@types/hast@3.0.4':
+ dependencies:
+ '@types/unist': 3.0.3
+
+ '@types/history@4.7.11': {}
+
'@types/hoist-non-react-statics@3.3.7(@types/react@19.2.2)':
dependencies:
'@types/react': 19.2.2
hoist-non-react-statics: 3.3.2
+ '@types/html-minifier-terser@6.1.0': {}
+
'@types/http-cache-semantics@4.0.4': {}
'@types/http-errors@2.0.5': {}
+ '@types/http-proxy@1.17.17':
+ dependencies:
+ '@types/node': 22.18.13
+
'@types/istanbul-lib-coverage@2.0.6': {}
'@types/istanbul-lib-report@3.0.3':
@@ -15008,6 +19031,12 @@ snapshots:
'@types/luxon@3.7.1': {}
+ '@types/mdast@4.0.4':
+ dependencies:
+ '@types/unist': 3.0.3
+
+ '@types/mdx@2.0.13': {}
+
'@types/methods@1.1.4': {}
'@types/mime@1.3.5': {}
@@ -15022,8 +19051,14 @@ snapshots:
'@types/ms@2.1.0': {}
+ '@types/node-forge@1.3.14':
+ dependencies:
+ '@types/node': 22.18.13
+
'@types/node@14.18.63': {}
+ '@types/node@17.0.45': {}
+
'@types/node@22.18.13':
dependencies:
undici-types: 6.21.0
@@ -15057,6 +19092,8 @@ snapshots:
dependencies:
'@types/express': 5.0.5
+ '@types/prismjs@1.26.5': {}
+
'@types/prompts@2.4.9':
dependencies:
'@types/node': 22.18.13
@@ -15073,6 +19110,23 @@ snapshots:
dependencies:
'@types/react': 19.2.2
+ '@types/react-router-config@5.0.11':
+ dependencies:
+ '@types/history': 4.7.11
+ '@types/react': 19.2.2
+ '@types/react-router': 5.1.20
+
+ '@types/react-router-dom@5.3.3':
+ dependencies:
+ '@types/history': 4.7.11
+ '@types/react': 19.2.2
+ '@types/react-router': 5.1.20
+
+ '@types/react-router@5.1.20':
+ dependencies:
+ '@types/history': 4.7.11
+ '@types/react': 19.2.2
+
'@types/react-transition-group@4.4.12(@types/react@19.2.2)':
dependencies:
'@types/react': 19.2.2
@@ -15081,6 +19135,12 @@ snapshots:
dependencies:
csstype: 3.1.3
+ '@types/retry@0.12.0': {}
+
+ '@types/sax@1.2.7':
+ dependencies:
+ '@types/node': 22.18.13
+
'@types/send@0.17.6':
dependencies:
'@types/mime': 1.3.5
@@ -15090,12 +19150,20 @@ snapshots:
dependencies:
'@types/node': 22.18.13
+ '@types/serve-index@1.9.4':
+ dependencies:
+ '@types/express': 5.0.5
+
'@types/serve-static@1.15.10':
dependencies:
'@types/http-errors': 2.0.5
'@types/node': 22.18.13
'@types/send': 0.17.6
+ '@types/sockjs@0.3.36':
+ dependencies:
+ '@types/node': 22.18.13
+
'@types/stack-utils@2.0.3': {}
'@types/superagent@8.1.9':
@@ -15112,10 +19180,18 @@ snapshots:
'@types/tough-cookie@4.0.5': {}
+ '@types/unist@2.0.11': {}
+
+ '@types/unist@3.0.3': {}
+
'@types/use-sync-external-store@0.0.6': {}
'@types/validator@13.15.4': {}
+ '@types/ws@8.18.1':
+ dependencies:
+ '@types/node': 22.18.13
+
'@types/yargs-parser@21.0.3': {}
'@types/yargs@17.0.34':
@@ -15470,6 +19546,11 @@ snapshots:
abstract-logging@2.0.1: {}
+ accepts@1.3.8:
+ dependencies:
+ mime-types: 2.1.35
+ negotiator: 0.6.3
+
accepts@2.0.0:
dependencies:
mime-types: 3.0.1
@@ -15492,8 +19573,15 @@ snapshots:
acorn@8.15.0: {}
+ address@1.2.2: {}
+
agent-base@7.1.4: {}
+ aggregate-error@3.1.0:
+ dependencies:
+ clean-stack: 2.2.0
+ indent-string: 4.0.0
+
ajv-formats@2.1.1(ajv@8.17.1):
optionalDependencies:
ajv: 8.17.1
@@ -15531,6 +19619,28 @@ snapshots:
estraverse: 1.9.3
optional: true
+ algoliasearch-helper@3.26.1(algoliasearch@5.43.0):
+ dependencies:
+ '@algolia/events': 4.0.1
+ algoliasearch: 5.43.0
+
+ algoliasearch@5.43.0:
+ dependencies:
+ '@algolia/abtesting': 1.9.0
+ '@algolia/client-abtesting': 5.43.0
+ '@algolia/client-analytics': 5.43.0
+ '@algolia/client-common': 5.43.0
+ '@algolia/client-insights': 5.43.0
+ '@algolia/client-personalization': 5.43.0
+ '@algolia/client-query-suggestions': 5.43.0
+ '@algolia/client-search': 5.43.0
+ '@algolia/ingestion': 1.43.0
+ '@algolia/monitoring': 1.43.0
+ '@algolia/recommend': 5.43.0
+ '@algolia/requester-browser-xhr': 5.43.0
+ '@algolia/requester-fetch': 5.43.0
+ '@algolia/requester-node-http': 5.43.0
+
ansi-align@3.0.1:
dependencies:
string-width: 4.2.3
@@ -15541,6 +19651,8 @@ snapshots:
dependencies:
type-fest: 0.21.3
+ ansi-html-community@0.0.8: {}
+
ansi-regex@5.0.1: {}
ansi-regex@6.2.2: {}
@@ -15631,6 +19743,8 @@ snapshots:
call-bound: 1.0.4
is-array-buffer: 3.0.5
+ array-flatten@1.1.1: {}
+
array-includes@3.1.9:
dependencies:
call-bind: 1.0.8
@@ -15644,6 +19758,8 @@ snapshots:
array-timsort@1.0.3: {}
+ array-union@2.1.0: {}
+
array.prototype.findlast@1.2.5:
dependencies:
call-bind: 1.0.8
@@ -15702,6 +19818,8 @@ snapshots:
ast-types-flow@0.0.8: {}
+ astring@1.9.0: {}
+
async-function@1.0.0: {}
async-hook-jl@1.7.6:
@@ -15712,6 +19830,8 @@ snapshots:
asynckit@0.4.0: {}
+ at-least-node@1.0.0: {}
+
atomic-sleep@1.0.0: {}
autoprefixer@10.4.22(postcss@8.5.6):
@@ -15768,6 +19888,17 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ babel-loader@9.2.1(@babel/core@7.28.5)(webpack@5.100.2):
+ dependencies:
+ '@babel/core': 7.28.5
+ find-cache-dir: 4.0.0
+ schema-utils: 4.3.3
+ webpack: 5.100.2
+
+ babel-plugin-dynamic-import-node@2.3.3:
+ dependencies:
+ object.assign: 4.1.7
+
babel-plugin-istanbul@7.0.1:
dependencies:
'@babel/helper-plugin-utils': 7.27.1
@@ -15842,6 +19973,8 @@ snapshots:
'@babel/types': 7.28.5
optional: true
+ bail@2.0.2: {}
+
balanced-match@1.0.2: {}
bare-events@2.8.1: {}
@@ -15850,6 +19983,8 @@ snapshots:
baseline-browser-mapping@2.8.25: {}
+ batch@0.6.1: {}
+
bcrypt@6.0.0:
dependencies:
node-addon-api: 8.5.0
@@ -15857,6 +19992,8 @@ snapshots:
big-integer@1.6.52: {}
+ big.js@5.2.2: {}
+
bin-version-check@5.1.0:
dependencies:
bin-version: 6.0.0
@@ -15885,6 +20022,23 @@ snapshots:
bluebird@3.4.7: {}
+ body-parser@1.20.3:
+ 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.13.0
+ raw-body: 2.5.2
+ type-is: 1.6.18
+ unpipe: 1.0.0
+ transitivePeerDependencies:
+ - supports-color
+
body-parser@2.2.0:
dependencies:
bytes: 3.1.2
@@ -15899,6 +20053,11 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ bonjour-service@1.3.0:
+ dependencies:
+ fast-deep-equal: 3.1.3
+ multicast-dns: 7.2.5
+
boolbase@1.0.0: {}
bowser@2.12.1: {}
@@ -15914,6 +20073,28 @@ snapshots:
widest-line: 3.1.0
wrap-ansi: 7.0.0
+ boxen@6.2.1:
+ dependencies:
+ ansi-align: 3.0.1
+ camelcase: 6.3.0
+ chalk: 4.1.2
+ cli-boxes: 3.0.0
+ string-width: 5.1.2
+ type-fest: 2.19.0
+ widest-line: 4.0.1
+ wrap-ansi: 8.1.0
+
+ boxen@7.1.1:
+ dependencies:
+ ansi-align: 3.0.1
+ camelcase: 7.0.1
+ chalk: 5.6.2
+ cli-boxes: 3.0.0
+ string-width: 5.1.2
+ type-fest: 2.19.0
+ widest-line: 4.0.1
+ wrap-ansi: 8.1.0
+
brace-expansion@1.1.12:
dependencies:
balanced-match: 1.0.2
@@ -15972,6 +20153,8 @@ snapshots:
dependencies:
streamsearch: 1.1.0
+ bytes@3.0.0: {}
+
bytes@3.1.2: {}
cac@6.7.14: {}
@@ -16013,16 +20196,30 @@ snapshots:
upper-case: 1.1.3
optional: true
+ camel-case@4.1.2:
+ dependencies:
+ pascal-case: 3.1.2
+ tslib: 2.8.1
+
camelcase-css@2.0.1: {}
camelcase@5.3.1: {}
camelcase@6.3.0: {}
- caniuse-lite@1.0.30001753: {}
+ camelcase@7.0.1: {}
+
+ caniuse-api@3.0.0:
+ dependencies:
+ browserslist: 4.27.0
+ caniuse-lite: 1.0.30001754
+ lodash.memoize: 4.1.2
+ lodash.uniq: 4.5.0
caniuse-lite@1.0.30001754: {}
+ ccount@2.0.1: {}
+
chainsaw@0.1.0:
dependencies:
traverse: 0.3.9
@@ -16038,15 +20235,25 @@ snapshots:
ansi-styles: 4.3.0
supports-color: 7.2.0
+ chalk@5.6.2: {}
+
change-case@5.4.4: {}
char-regex@1.0.2: {}
+ character-entities-html4@2.1.0: {}
+
+ character-entities-legacy@3.0.0: {}
+
+ character-entities@2.0.2: {}
+
character-parser@2.2.0:
dependencies:
is-regex: 1.2.1
optional: true
+ character-reference-invalid@2.0.1: {}
+
chardet@2.1.1: {}
check-disk-space@3.4.0: {}
@@ -16059,7 +20266,6 @@ snapshots:
domelementtype: 2.3.0
domhandler: 5.0.3
domutils: 3.2.2
- optional: true
cheerio@1.0.0-rc.12:
dependencies:
@@ -16070,7 +20276,6 @@ snapshots:
htmlparser2: 8.0.2
parse5: 7.3.0
parse5-htmlparser2-tree-adapter: 7.1.0
- optional: true
chevrotain@11.0.3:
dependencies:
@@ -16101,8 +20306,7 @@ snapshots:
chrome-trace-event@1.0.4: {}
- ci-info@3.9.0:
- optional: true
+ ci-info@3.9.0: {}
ci-info@4.3.1: {}
@@ -16127,8 +20331,16 @@ snapshots:
source-map: 0.6.1
optional: true
+ clean-css@5.3.3:
+ dependencies:
+ source-map: 0.6.1
+
+ clean-stack@2.2.0: {}
+
cli-boxes@2.2.1: {}
+ cli-boxes@3.0.0: {}
+
cli-cursor@3.1.0:
dependencies:
restore-cursor: 3.1.0
@@ -16151,6 +20363,12 @@ snapshots:
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: {}
cls-hooked@4.2.2:
@@ -16175,6 +20393,8 @@ snapshots:
co@4.6.0: {}
+ collapse-white-space@2.1.0: {}
+
collect-v8-coverage@1.0.3: {}
color-convert@2.0.1:
@@ -16183,16 +20403,21 @@ snapshots:
color-name@1.1.4: {}
+ colord@2.9.3: {}
+
colorette@1.4.0: {}
colorette@2.0.20: {}
+ combine-promises@1.2.0: {}
+
combined-stream@1.0.8:
dependencies:
delayed-stream: 1.0.0
- commander@10.0.1:
- optional: true
+ comma-separated-tokens@2.0.3: {}
+
+ commander@10.0.1: {}
commander@14.0.2: {}
@@ -16200,6 +20425,8 @@ snapshots:
commander@4.1.1: {}
+ commander@5.1.0: {}
+
commander@6.2.1: {}
commander@7.2.0: {}
@@ -16212,6 +20439,8 @@ snapshots:
core-util-is: 1.0.3
esprima: 4.0.1
+ common-path-prefix@3.0.0: {}
+
commondir@1.0.1: {}
component-emitter@1.3.1: {}
@@ -16223,6 +20452,22 @@ snapshots:
normalize-path: 3.0.0
readable-stream: 3.6.2
+ compressible@2.0.18:
+ dependencies:
+ mime-db: 1.54.0
+
+ compression@1.8.1:
+ dependencies:
+ bytes: 3.1.2
+ compressible: 2.0.18
+ debug: 2.6.9
+ negotiator: 0.6.4
+ on-headers: 1.1.0
+ safe-buffer: 5.2.1
+ vary: 1.1.2
+ transitivePeerDependencies:
+ - supports-color
+
concat-map@0.0.1: {}
concat-stream@2.0.0:
@@ -16238,7 +20483,16 @@ snapshots:
dependencies:
ini: 1.3.8
proto-list: 1.2.4
- optional: true
+
+ configstore@6.0.0:
+ dependencies:
+ dot-prop: 6.0.1
+ graceful-fs: 4.2.11
+ unique-string: 3.0.0
+ write-file-atomic: 3.0.3
+ xdg-basedir: 5.1.0
+
+ connect-history-api-fallback@2.0.0: {}
consola@3.4.2: {}
@@ -16248,6 +20502,8 @@ snapshots:
'@babel/types': 7.28.5
optional: true
+ content-disposition@0.5.2: {}
+
content-disposition@0.5.4:
dependencies:
safe-buffer: 5.2.1
@@ -16262,8 +20518,12 @@ snapshots:
convert-source-map@2.0.0: {}
+ cookie-signature@1.0.6: {}
+
cookie-signature@1.2.2: {}
+ cookie@0.7.1: {}
+
cookie@0.7.2: {}
cookie@1.0.2: {}
@@ -16276,10 +20536,22 @@ snapshots:
next: 15.5.6(@babel/core@7.28.5)(@opentelemetry/api@1.9.0)(@playwright/test@1.56.1)(babel-plugin-macros@3.1.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
react: 19.2.0
+ copy-text-to-clipboard@3.2.2: {}
+
copy-to-clipboard@3.3.3:
dependencies:
toggle-selection: 1.0.6
+ copy-webpack-plugin@11.0.0(webpack@5.100.2):
+ dependencies:
+ fast-glob: 3.3.3
+ glob-parent: 6.0.2
+ globby: 13.2.2
+ normalize-path: 3.0.0
+ schema-utils: 4.3.3
+ serialize-javascript: 6.0.2
+ webpack: 5.100.2
+
core-js-compat@3.46.0:
dependencies:
browserslist: 4.27.0
@@ -16295,6 +20567,14 @@ snapshots:
object-assign: 4.1.1
vary: 1.1.2
+ cosmiconfig@6.0.0:
+ dependencies:
+ '@types/parse-json': 4.0.2
+ import-fresh: 3.3.1
+ parse-json: 5.2.0
+ path-type: 4.0.0
+ yaml: 1.10.2
+
cosmiconfig@7.1.0:
dependencies:
'@types/parse-json': 4.0.2
@@ -16352,10 +20632,67 @@ snapshots:
shebang-command: 2.0.0
which: 2.0.2
+ crypto-random-string@4.0.0:
+ dependencies:
+ type-fest: 1.4.0
+
+ css-blank-pseudo@7.0.1(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+ postcss-selector-parser: 7.1.0
+
+ css-declaration-sorter@7.3.0(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+
+ css-has-pseudo@7.0.3(postcss@8.5.6):
+ dependencies:
+ '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.1.0)
+ postcss: 8.5.6
+ postcss-selector-parser: 7.1.0
+ postcss-value-parser: 4.2.0
+
css-in-js-utils@3.1.0:
dependencies:
hyphenate-style-name: 1.1.0
+ css-loader@6.11.0(webpack@5.100.2):
+ dependencies:
+ icss-utils: 5.1.0(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-modules-extract-imports: 3.1.0(postcss@8.5.6)
+ postcss-modules-local-by-default: 4.2.0(postcss@8.5.6)
+ postcss-modules-scope: 3.2.1(postcss@8.5.6)
+ postcss-modules-values: 4.0.0(postcss@8.5.6)
+ postcss-value-parser: 4.2.0
+ semver: 7.7.3
+ optionalDependencies:
+ webpack: 5.100.2
+
+ css-minimizer-webpack-plugin@5.0.1(clean-css@5.3.3)(webpack@5.100.2):
+ dependencies:
+ '@jridgewell/trace-mapping': 0.3.31
+ cssnano: 6.1.2(postcss@8.5.6)
+ jest-worker: 29.7.0
+ postcss: 8.5.6
+ schema-utils: 4.3.3
+ serialize-javascript: 6.0.2
+ webpack: 5.100.2
+ optionalDependencies:
+ clean-css: 5.3.3
+
+ css-prefers-color-scheme@10.0.0(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+
+ css-select@4.3.0:
+ dependencies:
+ boolbase: 1.0.0
+ css-what: 6.2.2
+ domhandler: 4.3.1
+ domutils: 2.8.0
+ nth-check: 2.1.1
+
css-select@5.2.2:
dependencies:
boolbase: 1.0.0
@@ -16383,8 +20720,65 @@ snapshots:
css.escape@1.5.1: {}
+ cssdb@8.4.2: {}
+
cssesc@3.0.0: {}
+ cssnano-preset-advanced@6.1.2(postcss@8.5.6):
+ dependencies:
+ autoprefixer: 10.4.22(postcss@8.5.6)
+ browserslist: 4.27.0
+ cssnano-preset-default: 6.1.2(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-discard-unused: 6.0.5(postcss@8.5.6)
+ postcss-merge-idents: 6.0.3(postcss@8.5.6)
+ postcss-reduce-idents: 6.0.3(postcss@8.5.6)
+ postcss-zindex: 6.0.2(postcss@8.5.6)
+
+ cssnano-preset-default@6.1.2(postcss@8.5.6):
+ dependencies:
+ browserslist: 4.27.0
+ css-declaration-sorter: 7.3.0(postcss@8.5.6)
+ cssnano-utils: 4.0.2(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-calc: 9.0.1(postcss@8.5.6)
+ postcss-colormin: 6.1.0(postcss@8.5.6)
+ postcss-convert-values: 6.1.0(postcss@8.5.6)
+ postcss-discard-comments: 6.0.2(postcss@8.5.6)
+ postcss-discard-duplicates: 6.0.3(postcss@8.5.6)
+ postcss-discard-empty: 6.0.3(postcss@8.5.6)
+ postcss-discard-overridden: 6.0.2(postcss@8.5.6)
+ postcss-merge-longhand: 6.0.5(postcss@8.5.6)
+ postcss-merge-rules: 6.1.1(postcss@8.5.6)
+ postcss-minify-font-values: 6.1.0(postcss@8.5.6)
+ postcss-minify-gradients: 6.0.3(postcss@8.5.6)
+ postcss-minify-params: 6.1.0(postcss@8.5.6)
+ postcss-minify-selectors: 6.0.4(postcss@8.5.6)
+ postcss-normalize-charset: 6.0.2(postcss@8.5.6)
+ postcss-normalize-display-values: 6.0.2(postcss@8.5.6)
+ postcss-normalize-positions: 6.0.2(postcss@8.5.6)
+ postcss-normalize-repeat-style: 6.0.2(postcss@8.5.6)
+ postcss-normalize-string: 6.0.2(postcss@8.5.6)
+ postcss-normalize-timing-functions: 6.0.2(postcss@8.5.6)
+ postcss-normalize-unicode: 6.1.0(postcss@8.5.6)
+ postcss-normalize-url: 6.0.2(postcss@8.5.6)
+ postcss-normalize-whitespace: 6.0.2(postcss@8.5.6)
+ postcss-ordered-values: 6.0.2(postcss@8.5.6)
+ postcss-reduce-initial: 6.1.0(postcss@8.5.6)
+ postcss-reduce-transforms: 6.0.2(postcss@8.5.6)
+ postcss-svgo: 6.0.3(postcss@8.5.6)
+ postcss-unique-selectors: 6.0.4(postcss@8.5.6)
+
+ cssnano-utils@4.0.2(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+
+ cssnano@6.1.2(postcss@8.5.6):
+ dependencies:
+ cssnano-preset-default: 6.1.2(postcss@8.5.6)
+ lilconfig: 3.1.3
+ postcss: 8.5.6
+
csso@5.0.5:
dependencies:
css-tree: 2.2.1
@@ -16465,6 +20859,12 @@ snapshots:
dayjs@1.11.19: {}
+ debounce@1.2.1: {}
+
+ debug@2.6.9:
+ dependencies:
+ ms: 2.0.0
+
debug@3.2.7:
dependencies:
ms: 2.1.3
@@ -16479,6 +20879,10 @@ snapshots:
decimal.js@10.6.0: {}
+ decode-named-character-reference@1.2.0:
+ dependencies:
+ character-entities: 2.0.2
+
decompress-response@6.0.0:
dependencies:
mimic-response: 3.1.0
@@ -16487,13 +20891,16 @@ snapshots:
optionalDependencies:
babel-plugin-macros: 3.1.0
- deep-extend@0.6.0:
- optional: true
+ deep-extend@0.6.0: {}
deep-is@0.1.4: {}
deepmerge@4.3.1: {}
+ default-gateway@6.0.3:
+ dependencies:
+ execa: 5.1.1
+
defaults@1.0.4:
dependencies:
clone: 1.0.4
@@ -16508,20 +20915,37 @@ snapshots:
es-errors: 1.3.0
gopd: 1.2.0
+ define-lazy-prop@2.0.0: {}
+
define-properties@1.2.1:
dependencies:
define-data-property: 1.1.4
has-property-descriptors: 1.0.2
object-keys: 1.1.1
+ 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: {}
denque@2.1.0: {}
+ depd@1.1.2: {}
+
depd@2.0.0: {}
dequal@2.0.3: {}
+ destroy@1.2.0: {}
+
detect-indent@6.1.0:
optional: true
@@ -16531,8 +20955,25 @@ snapshots:
detect-node-es@1.1.0: {}
- detect-node@2.1.0:
- optional: true
+ detect-node@2.1.0: {}
+
+ detect-port-alt@1.1.6:
+ dependencies:
+ address: 1.2.2
+ debug: 2.6.9
+ transitivePeerDependencies:
+ - supports-color
+
+ detect-port@1.6.1:
+ dependencies:
+ address: 1.2.2
+ debug: 4.4.3(supports-color@10.2.2)
+ transitivePeerDependencies:
+ - supports-color
+
+ devlop@1.1.0:
+ dependencies:
+ dequal: 2.0.3
dezalgo@1.0.4:
dependencies:
@@ -16543,6 +20984,10 @@ snapshots:
diff@4.0.2: {}
+ dir-glob@3.0.1:
+ dependencies:
+ path-type: 4.0.0
+
display-notification@2.0.0:
dependencies:
escape-string-applescript: 1.0.0
@@ -16551,6 +20996,10 @@ snapshots:
dlv@1.1.3: {}
+ dns-packet@5.6.1:
+ dependencies:
+ '@leichtgewicht/ip-codec': 2.0.5
+
doctrine@2.1.0:
dependencies:
esutils: 2.0.3
@@ -16562,6 +21011,10 @@ snapshots:
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.28.4
@@ -16572,7 +21025,6 @@ snapshots:
domelementtype: 2.3.0
domhandler: 4.3.1
entities: 2.2.0
- optional: true
dom-serializer@2.0.0:
dependencies:
@@ -16590,7 +21042,6 @@ snapshots:
domhandler@4.3.1:
dependencies:
domelementtype: 2.3.0
- optional: true
domhandler@5.0.3:
dependencies:
@@ -16601,7 +21052,6 @@ snapshots:
dom-serializer: 1.4.1
domelementtype: 2.3.0
domhandler: 4.3.1
- optional: true
domutils@3.2.2:
dependencies:
@@ -16614,6 +21064,10 @@ snapshots:
no-case: 3.0.4
tslib: 2.8.1
+ dot-prop@6.0.1:
+ dependencies:
+ is-obj: 2.0.0
+
dotenv-expand@12.0.1:
dependencies:
dotenv: 16.4.7
@@ -16636,6 +21090,8 @@ snapshots:
dependencies:
readable-stream: 2.3.8
+ duplexer@0.1.2: {}
+
eastasianwidth@0.2.0: {}
ecdsa-sig-formatter@1.0.11:
@@ -16669,6 +21125,14 @@ snapshots:
emoji-regex@9.2.2: {}
+ emojilib@2.4.0: {}
+
+ emojis-list@3.0.0: {}
+
+ emoticon@4.1.0: {}
+
+ encodeurl@1.0.2: {}
+
encodeurl@2.0.0: {}
encoding-japanese@2.2.0:
@@ -16683,8 +21147,7 @@ snapshots:
graceful-fs: 4.2.11
tapable: 2.3.0
- entities@2.2.0:
- optional: true
+ entities@2.2.0: {}
entities@4.5.0: {}
@@ -16803,6 +21266,20 @@ snapshots:
es-toolkit@1.41.0: {}
+ esast-util-from-estree@2.0.0:
+ dependencies:
+ '@types/estree-jsx': 1.0.5
+ devlop: 1.1.0
+ estree-util-visit: 2.0.0
+ unist-util-position-from-estree: 2.0.0
+
+ esast-util-from-js@2.0.1:
+ dependencies:
+ '@types/estree-jsx': 1.0.5
+ acorn: 8.15.0
+ esast-util-from-estree: 2.0.0
+ vfile-message: 4.0.3
+
esbuild@0.25.12:
optionalDependencies:
'@esbuild/aix-ppc64': 0.25.12
@@ -16837,15 +21314,21 @@ snapshots:
escape-goat@3.0.0:
optional: true
+ escape-goat@4.0.0: {}
+
escape-html@1.0.3: {}
escape-string-applescript@1.0.0:
optional: true
+ escape-string-regexp@1.0.5: {}
+
escape-string-regexp@2.0.0: {}
escape-string-regexp@4.0.0: {}
+ escape-string-regexp@5.0.0: {}
+
eslint-import-resolver-node@0.3.9:
dependencies:
debug: 3.2.7
@@ -17045,14 +21528,60 @@ snapshots:
estraverse@5.3.0: {}
+ estree-util-attach-comments@3.0.0:
+ dependencies:
+ '@types/estree': 1.0.8
+
+ estree-util-build-jsx@3.0.1:
+ dependencies:
+ '@types/estree-jsx': 1.0.5
+ devlop: 1.1.0
+ estree-util-is-identifier-name: 3.0.0
+ estree-walker: 3.0.3
+
+ estree-util-is-identifier-name@3.0.0: {}
+
+ estree-util-scope@1.0.0:
+ dependencies:
+ '@types/estree': 1.0.8
+ devlop: 1.1.0
+
+ estree-util-to-js@2.0.0:
+ dependencies:
+ '@types/estree-jsx': 1.0.5
+ astring: 1.9.0
+ source-map: 0.7.6
+
+ estree-util-value-to-estree@3.5.0:
+ dependencies:
+ '@types/estree': 1.0.8
+
+ estree-util-visit@2.0.0:
+ dependencies:
+ '@types/estree-jsx': 1.0.5
+ '@types/unist': 3.0.3
+
estree-walker@2.0.2: {}
+ estree-walker@3.0.3:
+ dependencies:
+ '@types/estree': 1.0.8
+
esutils@2.0.3: {}
+ eta@2.2.0: {}
+
etag@1.8.1: {}
+ eval@0.1.8:
+ dependencies:
+ '@types/node': 22.18.13
+ require-like: 0.1.2
+
eventemitter2@6.4.9: {}
+ eventemitter3@4.0.7: {}
+
eventemitter3@5.0.1: {}
events-universal@1.0.1:
@@ -17109,6 +21638,42 @@ snapshots:
jest-mock: 30.2.0
jest-util: 30.2.0
+ express@4.21.2:
+ dependencies:
+ accepts: 1.3.8
+ array-flatten: 1.1.1
+ body-parser: 1.20.3
+ content-disposition: 0.5.4
+ content-type: 1.0.5
+ cookie: 0.7.1
+ cookie-signature: 1.0.6
+ debug: 2.6.9
+ depd: 2.0.0
+ encodeurl: 2.0.0
+ escape-html: 1.0.3
+ etag: 1.8.1
+ finalhandler: 1.3.1
+ fresh: 0.5.2
+ http-errors: 2.0.0
+ merge-descriptors: 1.0.3
+ methods: 1.1.2
+ on-finished: 2.4.1
+ parseurl: 1.3.3
+ path-to-regexp: 0.1.12
+ proxy-addr: 2.0.7
+ qs: 6.13.0
+ range-parser: 1.2.1
+ safe-buffer: 5.2.1
+ send: 0.19.0
+ serve-static: 1.16.2
+ 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
+
express@5.1.0:
dependencies:
accepts: 2.0.0
@@ -17153,6 +21718,12 @@ snapshots:
extend-object@1.0.0:
optional: true
+ extend-shallow@2.0.1:
+ dependencies:
+ is-extendable: 0.1.1
+
+ extend@3.0.2: {}
+
fast-copy@3.0.2: {}
fast-csv@4.3.6:
@@ -17258,6 +21829,14 @@ snapshots:
dependencies:
reusify: 1.1.0
+ fault@2.0.1:
+ dependencies:
+ format: 0.2.2
+
+ faye-websocket@0.11.4:
+ dependencies:
+ websocket-driver: 0.7.4
+
fb-watchman@2.0.2:
dependencies:
bser: 2.1.1
@@ -17266,12 +21845,26 @@ snapshots:
optionalDependencies:
picomatch: 4.0.3
+ feed@4.2.2:
+ dependencies:
+ xml-js: 1.6.11
+
fflate@0.8.2: {}
+ figures@3.2.0:
+ dependencies:
+ escape-string-regexp: 1.0.5
+
file-entry-cache@8.0.0:
dependencies:
flat-cache: 4.0.1
+ file-loader@6.2.0(webpack@5.100.2):
+ dependencies:
+ loader-utils: 2.0.4
+ schema-utils: 3.3.0
+ webpack: 5.100.2
+
file-type@20.5.0:
dependencies:
'@tokenizer/inflate': 0.2.7
@@ -17301,10 +21894,24 @@ snapshots:
dependencies:
filename-reserved-regex: 3.0.0
+ filesize@8.0.7: {}
+
fill-range@7.1.1:
dependencies:
to-regex-range: 5.0.1
+ finalhandler@1.3.1:
+ dependencies:
+ debug: 2.6.9
+ encodeurl: 2.0.0
+ 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
+
finalhandler@2.1.0:
dependencies:
debug: 4.4.3(supports-color@10.2.2)
@@ -17316,6 +21923,11 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ find-cache-dir@4.0.0:
+ dependencies:
+ common-path-prefix: 3.0.0
+ pkg-dir: 7.0.0
+
find-my-way@9.3.0:
dependencies:
fast-deep-equal: 3.1.3
@@ -17324,6 +21936,10 @@ snapshots:
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
@@ -17334,6 +21950,11 @@ snapshots:
locate-path: 6.0.0
path-exists: 4.0.0
+ find-up@6.3.0:
+ dependencies:
+ locate-path: 7.2.0
+ path-exists: 5.0.0
+
find-versions@5.1.0:
dependencies:
semver-regex: 4.0.5
@@ -17359,6 +21980,8 @@ snapshots:
flatted: 3.3.3
keyv: 4.5.4
+ flat@5.0.2: {}
+
flatted@3.3.3: {}
follow-redirects@1.15.11: {}
@@ -17372,6 +21995,26 @@ snapshots:
cross-spawn: 7.0.6
signal-exit: 4.1.0
+ fork-ts-checker-webpack-plugin@6.5.3(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3)(webpack@5.100.2):
+ dependencies:
+ '@babel/code-frame': 7.27.1
+ '@types/json-schema': 7.0.15
+ chalk: 4.1.2
+ chokidar: 3.6.0
+ cosmiconfig: 6.0.0
+ deepmerge: 4.3.1
+ fs-extra: 9.1.0
+ glob: 7.2.3
+ memfs: 3.5.3
+ minimatch: 3.1.2
+ schema-utils: 2.7.0
+ semver: 7.7.3
+ tapable: 1.1.3
+ typescript: 5.9.3
+ webpack: 5.100.2
+ optionalDependencies:
+ eslint: 9.39.1(jiti@1.21.7)
+
fork-ts-checker-webpack-plugin@9.1.0(typescript@5.8.3)(webpack@5.100.2(@swc/core@1.13.5(@swc/helpers@0.5.17))):
dependencies:
'@babel/code-frame': 7.27.1
@@ -17399,6 +22042,8 @@ snapshots:
hasown: 2.0.2
mime-types: 2.1.35
+ format@0.2.2: {}
+
formidable@3.5.4:
dependencies:
'@paralleldrive/cuid2': 2.3.1
@@ -17418,6 +22063,8 @@ snapshots:
react: 19.2.0
react-dom: 19.2.0(react@19.2.0)
+ fresh@0.5.2: {}
+
fresh@2.0.0: {}
fs-constants@1.0.0: {}
@@ -17428,6 +22075,19 @@ snapshots:
jsonfile: 6.2.0
universalify: 2.0.1
+ fs-extra@11.3.2:
+ dependencies:
+ graceful-fs: 4.2.11
+ jsonfile: 6.2.0
+ universalify: 2.0.1
+
+ fs-extra@9.1.0:
+ dependencies:
+ at-least-node: 1.0.0
+ graceful-fs: 4.2.11
+ jsonfile: 6.2.0
+ universalify: 2.0.1
+
fs-monkey@1.1.0: {}
fs.realpath@1.0.0: {}
@@ -17483,6 +22143,8 @@ snapshots:
get-nonce@1.0.1: {}
+ get-own-enumerable-property-symbols@3.0.2: {}
+
get-package-type@0.1.0: {}
get-port@5.1.1:
@@ -17504,6 +22166,8 @@ snapshots:
es-errors: 1.3.0
get-intrinsic: 1.3.0
+ github-slugger@1.5.0: {}
+
glob-parent@5.1.2:
dependencies:
is-glob: 4.0.3
@@ -17549,6 +22213,20 @@ snapshots:
once: 1.4.0
path-is-absolute: 1.0.1
+ global-dirs@3.0.1:
+ dependencies:
+ ini: 2.0.0
+
+ global-modules@2.0.0:
+ dependencies:
+ global-prefix: 3.0.0
+
+ global-prefix@3.0.0:
+ dependencies:
+ ini: 1.3.8
+ kind-of: 6.0.3
+ which: 1.3.1
+
globals@14.0.0: {}
globalthis@1.0.4:
@@ -17556,8 +22234,39 @@ snapshots:
define-properties: 1.2.1
gopd: 1.2.0
+ globby@11.1.0:
+ dependencies:
+ array-union: 2.1.0
+ dir-glob: 3.0.1
+ fast-glob: 3.3.3
+ ignore: 5.3.2
+ merge2: 1.4.1
+ slash: 3.0.0
+
+ globby@13.2.2:
+ dependencies:
+ dir-glob: 3.0.1
+ fast-glob: 3.3.3
+ ignore: 5.3.2
+ merge2: 1.4.1
+ slash: 4.0.0
+
gopd@1.2.0: {}
+ got@12.6.1:
+ dependencies:
+ '@sindresorhus/is': 5.6.0
+ '@szmarczak/http-timer': 5.0.1
+ cacheable-lookup: 7.0.0
+ cacheable-request: 10.2.14
+ decompress-response: 6.0.0
+ form-data-encoder: 2.1.4
+ get-stream: 6.0.1
+ http2-wrapper: 2.2.1
+ lowercase-keys: 3.0.0
+ p-cancelable: 3.0.0
+ responselike: 3.0.0
+
got@13.0.0:
dependencies:
'@sindresorhus/is': 5.6.0
@@ -17572,10 +22281,25 @@ snapshots:
p-cancelable: 3.0.0
responselike: 3.0.0
+ graceful-fs@4.2.10: {}
+
graceful-fs@4.2.11: {}
graphemer@1.4.0: {}
+ gray-matter@4.0.3:
+ dependencies:
+ js-yaml: 3.14.1
+ kind-of: 6.0.3
+ section-matter: 1.0.0
+ strip-bom-string: 1.0.0
+
+ gzip-size@6.0.0:
+ dependencies:
+ duplexer: 0.1.2
+
+ handle-thing@2.0.1: {}
+
handlebars@4.7.8:
dependencies:
minimist: 1.2.8
@@ -17603,12 +22327,107 @@ snapshots:
dependencies:
has-symbols: 1.1.0
+ has-yarn@3.0.0: {}
+
hasown@2.0.2:
dependencies:
function-bind: 1.1.2
- he@1.2.0:
- optional: true
+ hast-util-from-parse5@8.0.3:
+ dependencies:
+ '@types/hast': 3.0.4
+ '@types/unist': 3.0.3
+ devlop: 1.1.0
+ hastscript: 9.0.1
+ property-information: 7.1.0
+ vfile: 6.0.3
+ vfile-location: 5.0.3
+ web-namespaces: 2.0.1
+
+ hast-util-parse-selector@4.0.0:
+ dependencies:
+ '@types/hast': 3.0.4
+
+ hast-util-raw@9.1.0:
+ dependencies:
+ '@types/hast': 3.0.4
+ '@types/unist': 3.0.3
+ '@ungap/structured-clone': 1.3.0
+ hast-util-from-parse5: 8.0.3
+ hast-util-to-parse5: 8.0.0
+ html-void-elements: 3.0.0
+ mdast-util-to-hast: 13.2.0
+ parse5: 7.3.0
+ unist-util-position: 5.0.0
+ unist-util-visit: 5.0.0
+ vfile: 6.0.3
+ web-namespaces: 2.0.1
+ zwitch: 2.0.4
+
+ hast-util-to-estree@3.1.3:
+ dependencies:
+ '@types/estree': 1.0.8
+ '@types/estree-jsx': 1.0.5
+ '@types/hast': 3.0.4
+ comma-separated-tokens: 2.0.3
+ devlop: 1.1.0
+ estree-util-attach-comments: 3.0.0
+ estree-util-is-identifier-name: 3.0.0
+ hast-util-whitespace: 3.0.0
+ mdast-util-mdx-expression: 2.0.1
+ mdast-util-mdx-jsx: 3.2.0
+ mdast-util-mdxjs-esm: 2.0.1
+ property-information: 7.1.0
+ space-separated-tokens: 2.0.2
+ style-to-js: 1.1.19
+ unist-util-position: 5.0.0
+ zwitch: 2.0.4
+ transitivePeerDependencies:
+ - supports-color
+
+ hast-util-to-jsx-runtime@2.3.6:
+ dependencies:
+ '@types/estree': 1.0.8
+ '@types/hast': 3.0.4
+ '@types/unist': 3.0.3
+ comma-separated-tokens: 2.0.3
+ devlop: 1.1.0
+ estree-util-is-identifier-name: 3.0.0
+ hast-util-whitespace: 3.0.0
+ mdast-util-mdx-expression: 2.0.1
+ mdast-util-mdx-jsx: 3.2.0
+ mdast-util-mdxjs-esm: 2.0.1
+ property-information: 7.1.0
+ space-separated-tokens: 2.0.2
+ style-to-js: 1.1.19
+ unist-util-position: 5.0.0
+ vfile-message: 4.0.3
+ transitivePeerDependencies:
+ - supports-color
+
+ hast-util-to-parse5@8.0.0:
+ dependencies:
+ '@types/hast': 3.0.4
+ comma-separated-tokens: 2.0.3
+ devlop: 1.1.0
+ property-information: 6.5.0
+ space-separated-tokens: 2.0.2
+ web-namespaces: 2.0.1
+ zwitch: 2.0.4
+
+ hast-util-whitespace@3.0.0:
+ dependencies:
+ '@types/hast': 3.0.4
+
+ hastscript@9.0.1:
+ dependencies:
+ '@types/hast': 3.0.4
+ comma-separated-tokens: 2.0.3
+ hast-util-parse-selector: 4.0.0
+ property-information: 7.1.0
+ space-separated-tokens: 2.0.2
+
+ he@1.2.0: {}
help-me@5.0.0: {}
@@ -17618,18 +22437,56 @@ snapshots:
dependencies:
hermes-estree: 0.25.1
+ history@4.10.1:
+ dependencies:
+ '@babel/runtime': 7.28.4
+ loose-envify: 1.4.0
+ resolve-pathname: 3.0.0
+ tiny-invariant: 1.3.3
+ tiny-warning: 1.0.3
+ value-equal: 1.0.1
+
hoist-non-react-statics@3.3.2:
dependencies:
react-is: 16.13.1
+ hpack.js@2.1.6:
+ dependencies:
+ inherits: 2.0.4
+ obuf: 1.1.2
+ readable-stream: 2.3.8
+ wbuf: 1.7.3
+
hpagent@1.2.0: {}
html-encoding-sniffer@4.0.0:
dependencies:
whatwg-encoding: 3.1.1
+ html-entities@2.6.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.44.1
+
+ html-minifier-terser@7.2.0:
+ dependencies:
+ camel-case: 4.1.2
+ clean-css: 5.3.3
+ commander: 10.0.1
+ entities: 4.5.0
+ param-case: 3.0.4
+ relateurl: 0.2.7
+ terser: 5.44.1
+
html-minifier@4.0.0:
dependencies:
camel-case: 3.0.0
@@ -17645,6 +22502,8 @@ snapshots:
dependencies:
void-elements: 3.1.0
+ html-tags@3.3.1: {}
+
html-to-text@9.0.5:
dependencies:
'@selderee/plugin-htmlparser2': 0.11.0
@@ -17654,6 +22513,18 @@ snapshots:
selderee: 0.11.0
optional: true
+ html-void-elements@3.0.0: {}
+
+ html-webpack-plugin@5.6.4(webpack@5.100.2):
+ 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.3.0
+ optionalDependencies:
+ webpack: 5.100.2
+
htmlparser2@5.0.1:
dependencies:
domelementtype: 2.3.0
@@ -17662,13 +22533,19 @@ snapshots:
entities: 2.2.0
optional: true
+ htmlparser2@6.1.0:
+ dependencies:
+ domelementtype: 2.3.0
+ domhandler: 4.3.1
+ domutils: 2.8.0
+ entities: 2.2.0
+
htmlparser2@8.0.2:
dependencies:
domelementtype: 2.3.0
domhandler: 5.0.3
domutils: 3.2.2
entities: 4.5.0
- optional: true
htmlparser2@9.1.0:
dependencies:
@@ -17680,6 +22557,15 @@ snapshots:
http-cache-semantics@4.2.0: {}
+ http-deceiver@1.2.7: {}
+
+ http-errors@1.6.3:
+ dependencies:
+ depd: 1.1.2
+ inherits: 2.0.3
+ setprototypeof: 1.1.0
+ statuses: 1.5.0
+
http-errors@2.0.0:
dependencies:
depd: 2.0.0
@@ -17688,6 +22574,8 @@ snapshots:
statuses: 2.0.1
toidentifier: 1.0.1
+ http-parser-js@0.5.10: {}
+
http-proxy-agent@7.0.2:
dependencies:
agent-base: 7.1.4
@@ -17695,6 +22583,26 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ http-proxy-middleware@2.0.9(@types/express@4.17.25):
+ dependencies:
+ '@types/http-proxy': 1.17.17
+ http-proxy: 1.18.1
+ is-glob: 4.0.3
+ is-plain-obj: 3.0.0
+ micromatch: 4.0.8
+ optionalDependencies:
+ '@types/express': 4.17.25
+ transitivePeerDependencies:
+ - debug
+
+ http-proxy@1.18.1:
+ dependencies:
+ eventemitter3: 4.0.7
+ follow-redirects: 1.15.11
+ requires-port: 1.0.0
+ transitivePeerDependencies:
+ - debug
+
http2-wrapper@2.2.1:
dependencies:
quick-lru: 5.1.1
@@ -17719,6 +22627,10 @@ snapshots:
optionalDependencies:
typescript: 5.9.3
+ iconv-lite@0.4.24:
+ dependencies:
+ safer-buffer: 2.1.2
+
iconv-lite@0.6.3:
dependencies:
safer-buffer: 2.1.2
@@ -17727,21 +22639,33 @@ snapshots:
dependencies:
safer-buffer: 2.1.2
+ icss-utils@5.1.0(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+
ieee754@1.2.1: {}
ignore@5.3.2: {}
ignore@7.0.5: {}
+ image-size@1.2.1:
+ dependencies:
+ queue: 6.0.2
+
immediate@3.0.6: {}
immer@10.2.0: {}
+ immer@9.0.21: {}
+
import-fresh@3.3.1:
dependencies:
parent-module: 1.0.1
resolve-from: 4.0.0
+ import-lazy@4.0.0: {}
+
import-local@3.2.0:
dependencies:
pkg-dir: 4.2.0
@@ -17753,15 +22677,22 @@ snapshots:
index-to-position@1.2.0: {}
+ infima@0.2.0-alpha.45: {}
+
inflight@1.0.6:
dependencies:
once: 1.4.0
wrappy: 1.0.2
+ inherits@2.0.3: {}
+
inherits@2.0.4: {}
- ini@1.3.8:
- optional: true
+ ini@1.3.8: {}
+
+ ini@2.0.0: {}
+
+ inline-style-parser@0.2.6: {}
inline-style-prefixer@7.0.1:
dependencies:
@@ -17779,10 +22710,23 @@ snapshots:
internmap@2.0.3: {}
+ interpret@1.4.0: {}
+
+ invariant@2.2.4:
+ dependencies:
+ loose-envify: 1.4.0
+
ipaddr.js@1.9.1: {}
ipaddr.js@2.2.0: {}
+ is-alphabetical@2.0.1: {}
+
+ is-alphanumerical@2.0.1:
+ dependencies:
+ is-alphabetical: 2.0.1
+ is-decimal: 2.0.1
+
is-array-buffer@3.0.5:
dependencies:
call-bind: 1.0.8
@@ -17814,6 +22758,10 @@ snapshots:
is-callable@1.2.7: {}
+ is-ci@3.0.1:
+ dependencies:
+ ci-info: 3.9.0
+
is-core-module@2.16.1:
dependencies:
hasown: 2.0.2
@@ -17829,8 +22777,9 @@ snapshots:
call-bound: 1.0.4
has-tostringtag: 1.0.2
- is-docker@2.2.1:
- optional: true
+ is-decimal@2.0.1: {}
+
+ is-docker@2.2.1: {}
is-expression@4.0.0:
dependencies:
@@ -17838,6 +22787,8 @@ snapshots:
object-assign: 4.1.1
optional: true
+ is-extendable@0.1.1: {}
+
is-extglob@2.1.1: {}
is-finalizationregistry@1.1.1:
@@ -17860,12 +22811,21 @@ snapshots:
dependencies:
is-extglob: 2.1.1
+ is-hexadecimal@2.0.1: {}
+
+ is-installed-globally@0.4.0:
+ dependencies:
+ global-dirs: 3.0.1
+ is-path-inside: 3.0.3
+
is-interactive@1.0.0: {}
is-map@2.0.3: {}
is-negative-zero@2.0.3: {}
+ is-npm@6.1.0: {}
+
is-number-object@1.1.1:
dependencies:
call-bound: 1.0.4
@@ -17873,8 +22833,24 @@ snapshots:
is-number@7.0.0: {}
+ is-obj@1.0.1: {}
+
+ is-obj@2.0.0: {}
+
+ is-path-cwd@2.2.0: {}
+
+ is-path-inside@3.0.3: {}
+
is-plain-obj@1.1.0: {}
+ is-plain-obj@3.0.0: {}
+
+ is-plain-obj@4.1.0: {}
+
+ is-plain-object@2.0.4:
+ dependencies:
+ isobject: 3.0.1
+
is-potential-custom-element-name@1.0.1: {}
is-promise@2.2.2:
@@ -17895,6 +22871,10 @@ snapshots:
has-tostringtag: 1.0.2
hasown: 2.0.2
+ is-regexp@1.0.0: {}
+
+ is-root@2.1.0: {}
+
is-set@2.0.3: {}
is-shared-array-buffer@1.0.4:
@@ -17921,6 +22901,8 @@ snapshots:
dependencies:
which-typed-array: 1.1.19
+ is-typedarray@1.0.0: {}
+
is-unicode-supported@0.1.0: {}
is-weakmap@2.0.2: {}
@@ -17937,7 +22919,10 @@ snapshots:
is-wsl@2.2.0:
dependencies:
is-docker: 2.2.1
- optional: true
+
+ is-yarn-global@0.4.1: {}
+
+ isarray@0.0.1: {}
isarray@1.0.0: {}
@@ -17945,6 +22930,8 @@ snapshots:
isexe@2.0.0: {}
+ isobject@3.0.1: {}
+
istanbul-lib-coverage@3.2.2: {}
istanbul-lib-instrument@6.0.3:
@@ -18288,6 +23275,15 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ jest-util@29.7.0:
+ dependencies:
+ '@jest/types': 29.6.3
+ '@types/node': 22.18.13
+ chalk: 4.1.2
+ ci-info: 3.9.0
+ graceful-fs: 4.2.11
+ picomatch: 2.3.1
+
jest-util@30.2.0:
dependencies:
'@jest/types': 30.2.0
@@ -18323,6 +23319,13 @@ snapshots:
merge-stream: 2.0.0
supports-color: 8.1.1
+ jest-worker@29.7.0:
+ dependencies:
+ '@types/node': 22.18.13
+ jest-util: 29.7.0
+ merge-stream: 2.0.0
+ supports-color: 8.1.1
+
jest-worker@30.2.0:
dependencies:
'@types/node': 22.18.13
@@ -18346,6 +23349,14 @@ snapshots:
jiti@1.21.7: {}
+ joi@17.13.3:
+ dependencies:
+ '@hapi/hoek': 9.3.0
+ '@hapi/topo': 5.1.0
+ '@sideway/address': 4.1.5
+ '@sideway/formula': 3.0.1
+ '@sideway/pinpoint': 2.0.0
+
joi@18.0.1:
dependencies:
'@hapi/address': 5.1.1
@@ -18523,6 +23534,15 @@ snapshots:
dependencies:
language-subtag-registry: 0.3.23
+ latest-version@7.0.0:
+ dependencies:
+ package-json: 8.1.1
+
+ launch-editor@2.12.0:
+ dependencies:
+ picocolors: 1.1.1
+ shell-quote: 1.8.3
+
lazystream@1.0.1:
dependencies:
readable-stream: 2.3.8
@@ -18594,6 +23614,19 @@ snapshots:
loader-runner@4.3.1: {}
+ loader-utils@2.0.4:
+ dependencies:
+ big.js: 5.2.2
+ emojis-list: 3.0.0
+ json5: 2.2.3
+
+ loader-utils@3.3.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
@@ -18602,6 +23635,10 @@ snapshots:
dependencies:
p-locate: 5.0.0
+ locate-path@7.2.0:
+ dependencies:
+ p-locate: 6.0.0
+
lodash-es@4.17.21: {}
lodash.debounce@4.0.8: {}
@@ -18657,6 +23694,8 @@ snapshots:
long@5.3.2: {}
+ longest-streak@3.1.0: {}
+
loose-envify@1.4.0:
dependencies:
js-tokens: 4.0.0
@@ -18724,8 +23763,204 @@ snapshots:
dependencies:
tmpl: 1.0.5
+ markdown-extensions@2.0.0: {}
+
+ markdown-table@2.0.0:
+ dependencies:
+ repeat-string: 1.6.1
+
+ markdown-table@3.0.4: {}
+
math-intrinsics@1.1.0: {}
+ mdast-util-directive@3.1.0:
+ dependencies:
+ '@types/mdast': 4.0.4
+ '@types/unist': 3.0.3
+ ccount: 2.0.1
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-to-markdown: 2.1.2
+ parse-entities: 4.0.2
+ stringify-entities: 4.0.4
+ unist-util-visit-parents: 6.0.2
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-find-and-replace@3.0.2:
+ dependencies:
+ '@types/mdast': 4.0.4
+ escape-string-regexp: 5.0.0
+ unist-util-is: 6.0.1
+ unist-util-visit-parents: 6.0.2
+
+ mdast-util-from-markdown@2.0.2:
+ dependencies:
+ '@types/mdast': 4.0.4
+ '@types/unist': 3.0.3
+ decode-named-character-reference: 1.2.0
+ devlop: 1.1.0
+ mdast-util-to-string: 4.0.0
+ micromark: 4.0.2
+ micromark-util-decode-numeric-character-reference: 2.0.2
+ micromark-util-decode-string: 2.0.1
+ micromark-util-normalize-identifier: 2.0.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ unist-util-stringify-position: 4.0.0
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-frontmatter@2.0.1:
+ dependencies:
+ '@types/mdast': 4.0.4
+ devlop: 1.1.0
+ escape-string-regexp: 5.0.0
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-to-markdown: 2.1.2
+ micromark-extension-frontmatter: 2.0.0
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-gfm-autolink-literal@2.0.1:
+ dependencies:
+ '@types/mdast': 4.0.4
+ ccount: 2.0.1
+ devlop: 1.1.0
+ mdast-util-find-and-replace: 3.0.2
+ micromark-util-character: 2.1.1
+
+ mdast-util-gfm-footnote@2.1.0:
+ dependencies:
+ '@types/mdast': 4.0.4
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-to-markdown: 2.1.2
+ micromark-util-normalize-identifier: 2.0.1
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-gfm-strikethrough@2.0.0:
+ dependencies:
+ '@types/mdast': 4.0.4
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-to-markdown: 2.1.2
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-gfm-table@2.0.0:
+ dependencies:
+ '@types/mdast': 4.0.4
+ devlop: 1.1.0
+ markdown-table: 3.0.4
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-to-markdown: 2.1.2
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-gfm-task-list-item@2.0.0:
+ dependencies:
+ '@types/mdast': 4.0.4
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-to-markdown: 2.1.2
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-gfm@3.1.0:
+ dependencies:
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-gfm-autolink-literal: 2.0.1
+ mdast-util-gfm-footnote: 2.1.0
+ mdast-util-gfm-strikethrough: 2.0.0
+ mdast-util-gfm-table: 2.0.0
+ mdast-util-gfm-task-list-item: 2.0.0
+ mdast-util-to-markdown: 2.1.2
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-mdx-expression@2.0.1:
+ dependencies:
+ '@types/estree-jsx': 1.0.5
+ '@types/hast': 3.0.4
+ '@types/mdast': 4.0.4
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-to-markdown: 2.1.2
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-mdx-jsx@3.2.0:
+ dependencies:
+ '@types/estree-jsx': 1.0.5
+ '@types/hast': 3.0.4
+ '@types/mdast': 4.0.4
+ '@types/unist': 3.0.3
+ ccount: 2.0.1
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-to-markdown: 2.1.2
+ parse-entities: 4.0.2
+ stringify-entities: 4.0.4
+ unist-util-stringify-position: 4.0.0
+ vfile-message: 4.0.3
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-mdx@3.0.0:
+ dependencies:
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-mdx-expression: 2.0.1
+ mdast-util-mdx-jsx: 3.2.0
+ mdast-util-mdxjs-esm: 2.0.1
+ mdast-util-to-markdown: 2.1.2
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-mdxjs-esm@2.0.1:
+ dependencies:
+ '@types/estree-jsx': 1.0.5
+ '@types/hast': 3.0.4
+ '@types/mdast': 4.0.4
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.2
+ mdast-util-to-markdown: 2.1.2
+ transitivePeerDependencies:
+ - supports-color
+
+ mdast-util-phrasing@4.1.0:
+ dependencies:
+ '@types/mdast': 4.0.4
+ unist-util-is: 6.0.1
+
+ mdast-util-to-hast@13.2.0:
+ dependencies:
+ '@types/hast': 3.0.4
+ '@types/mdast': 4.0.4
+ '@ungap/structured-clone': 1.3.0
+ devlop: 1.1.0
+ micromark-util-sanitize-uri: 2.0.1
+ trim-lines: 3.0.1
+ unist-util-position: 5.0.0
+ unist-util-visit: 5.0.0
+ vfile: 6.0.3
+
+ mdast-util-to-markdown@2.1.2:
+ dependencies:
+ '@types/mdast': 4.0.4
+ '@types/unist': 3.0.3
+ longest-streak: 3.1.0
+ mdast-util-phrasing: 4.1.0
+ mdast-util-to-string: 4.0.0
+ micromark-util-classify-character: 2.0.1
+ micromark-util-decode-string: 2.0.1
+ unist-util-visit: 5.0.0
+ zwitch: 2.0.4
+
+ mdast-util-to-string@4.0.0:
+ dependencies:
+ '@types/mdast': 4.0.4
+
mdn-data@2.0.14: {}
mdn-data@2.0.28: {}
@@ -18745,6 +23980,8 @@ snapshots:
mensch@0.3.4:
optional: true
+ merge-descriptors@1.0.3: {}
+
merge-descriptors@2.0.0: {}
merge-stream@2.0.0: {}
@@ -18753,15 +23990,316 @@ snapshots:
methods@1.1.2: {}
+ micromark-core-commonmark@2.0.3:
+ dependencies:
+ decode-named-character-reference: 1.2.0
+ devlop: 1.1.0
+ micromark-factory-destination: 2.0.1
+ micromark-factory-label: 2.0.1
+ micromark-factory-space: 2.0.1
+ micromark-factory-title: 2.0.1
+ micromark-factory-whitespace: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-chunked: 2.0.1
+ micromark-util-classify-character: 2.0.1
+ micromark-util-html-tag-name: 2.0.1
+ micromark-util-normalize-identifier: 2.0.1
+ micromark-util-resolve-all: 2.0.1
+ micromark-util-subtokenize: 2.1.0
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-extension-directive@3.0.2:
+ dependencies:
+ devlop: 1.1.0
+ micromark-factory-space: 2.0.1
+ micromark-factory-whitespace: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ parse-entities: 4.0.2
+
+ micromark-extension-frontmatter@2.0.0:
+ dependencies:
+ fault: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-extension-gfm-autolink-literal@2.1.0:
+ dependencies:
+ micromark-util-character: 2.1.1
+ micromark-util-sanitize-uri: 2.0.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-extension-gfm-footnote@2.1.0:
+ dependencies:
+ devlop: 1.1.0
+ micromark-core-commonmark: 2.0.3
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-normalize-identifier: 2.0.1
+ micromark-util-sanitize-uri: 2.0.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-extension-gfm-strikethrough@2.1.0:
+ dependencies:
+ devlop: 1.1.0
+ micromark-util-chunked: 2.0.1
+ micromark-util-classify-character: 2.0.1
+ micromark-util-resolve-all: 2.0.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-extension-gfm-table@2.1.1:
+ dependencies:
+ devlop: 1.1.0
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-extension-gfm-tagfilter@2.0.0:
+ dependencies:
+ micromark-util-types: 2.0.2
+
+ micromark-extension-gfm-task-list-item@2.1.0:
+ dependencies:
+ devlop: 1.1.0
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-extension-gfm@3.0.0:
+ dependencies:
+ micromark-extension-gfm-autolink-literal: 2.1.0
+ micromark-extension-gfm-footnote: 2.1.0
+ micromark-extension-gfm-strikethrough: 2.1.0
+ micromark-extension-gfm-table: 2.1.1
+ micromark-extension-gfm-tagfilter: 2.0.0
+ micromark-extension-gfm-task-list-item: 2.1.0
+ micromark-util-combine-extensions: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-extension-mdx-expression@3.0.1:
+ dependencies:
+ '@types/estree': 1.0.8
+ devlop: 1.1.0
+ micromark-factory-mdx-expression: 2.0.3
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-events-to-acorn: 2.0.3
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-extension-mdx-jsx@3.0.2:
+ dependencies:
+ '@types/estree': 1.0.8
+ devlop: 1.1.0
+ estree-util-is-identifier-name: 3.0.0
+ micromark-factory-mdx-expression: 2.0.3
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-events-to-acorn: 2.0.3
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ vfile-message: 4.0.3
+
+ micromark-extension-mdx-md@2.0.0:
+ dependencies:
+ micromark-util-types: 2.0.2
+
+ micromark-extension-mdxjs-esm@3.0.0:
+ dependencies:
+ '@types/estree': 1.0.8
+ devlop: 1.1.0
+ micromark-core-commonmark: 2.0.3
+ micromark-util-character: 2.1.1
+ micromark-util-events-to-acorn: 2.0.3
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ unist-util-position-from-estree: 2.0.0
+ vfile-message: 4.0.3
+
+ micromark-extension-mdxjs@3.0.0:
+ dependencies:
+ acorn: 8.15.0
+ acorn-jsx: 5.3.2(acorn@8.15.0)
+ micromark-extension-mdx-expression: 3.0.1
+ micromark-extension-mdx-jsx: 3.0.2
+ micromark-extension-mdx-md: 2.0.0
+ micromark-extension-mdxjs-esm: 3.0.0
+ micromark-util-combine-extensions: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-factory-destination@2.0.1:
+ dependencies:
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-factory-label@2.0.1:
+ dependencies:
+ devlop: 1.1.0
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-factory-mdx-expression@2.0.3:
+ dependencies:
+ '@types/estree': 1.0.8
+ devlop: 1.1.0
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-events-to-acorn: 2.0.3
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ unist-util-position-from-estree: 2.0.0
+ vfile-message: 4.0.3
+
+ micromark-factory-space@1.1.0:
+ dependencies:
+ micromark-util-character: 1.2.0
+ micromark-util-types: 1.1.0
+
+ micromark-factory-space@2.0.1:
+ dependencies:
+ micromark-util-character: 2.1.1
+ micromark-util-types: 2.0.2
+
+ micromark-factory-title@2.0.1:
+ dependencies:
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-factory-whitespace@2.0.1:
+ dependencies:
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-util-character@1.2.0:
+ dependencies:
+ micromark-util-symbol: 1.1.0
+ micromark-util-types: 1.1.0
+
+ micromark-util-character@2.1.1:
+ dependencies:
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-util-chunked@2.0.1:
+ dependencies:
+ micromark-util-symbol: 2.0.1
+
+ micromark-util-classify-character@2.0.1:
+ dependencies:
+ micromark-util-character: 2.1.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-util-combine-extensions@2.0.1:
+ dependencies:
+ micromark-util-chunked: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-util-decode-numeric-character-reference@2.0.2:
+ dependencies:
+ micromark-util-symbol: 2.0.1
+
+ micromark-util-decode-string@2.0.1:
+ dependencies:
+ decode-named-character-reference: 1.2.0
+ micromark-util-character: 2.1.1
+ micromark-util-decode-numeric-character-reference: 2.0.2
+ micromark-util-symbol: 2.0.1
+
+ micromark-util-encode@2.0.1: {}
+
+ micromark-util-events-to-acorn@2.0.3:
+ dependencies:
+ '@types/estree': 1.0.8
+ '@types/unist': 3.0.3
+ devlop: 1.1.0
+ estree-util-visit: 2.0.0
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ vfile-message: 4.0.3
+
+ micromark-util-html-tag-name@2.0.1: {}
+
+ micromark-util-normalize-identifier@2.0.1:
+ dependencies:
+ micromark-util-symbol: 2.0.1
+
+ micromark-util-resolve-all@2.0.1:
+ dependencies:
+ micromark-util-types: 2.0.2
+
+ micromark-util-sanitize-uri@2.0.1:
+ dependencies:
+ micromark-util-character: 2.1.1
+ micromark-util-encode: 2.0.1
+ micromark-util-symbol: 2.0.1
+
+ micromark-util-subtokenize@2.1.0:
+ dependencies:
+ devlop: 1.1.0
+ micromark-util-chunked: 2.0.1
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+
+ micromark-util-symbol@1.1.0: {}
+
+ micromark-util-symbol@2.0.1: {}
+
+ micromark-util-types@1.1.0: {}
+
+ micromark-util-types@2.0.2: {}
+
+ micromark@4.0.2:
+ dependencies:
+ '@types/debug': 4.1.12
+ debug: 4.4.3(supports-color@10.2.2)
+ decode-named-character-reference: 1.2.0
+ devlop: 1.1.0
+ micromark-core-commonmark: 2.0.3
+ micromark-factory-space: 2.0.1
+ micromark-util-character: 2.1.1
+ micromark-util-chunked: 2.0.1
+ micromark-util-combine-extensions: 2.0.1
+ micromark-util-decode-numeric-character-reference: 2.0.2
+ micromark-util-encode: 2.0.1
+ micromark-util-normalize-identifier: 2.0.1
+ micromark-util-resolve-all: 2.0.1
+ micromark-util-sanitize-uri: 2.0.1
+ micromark-util-subtokenize: 2.1.0
+ micromark-util-symbol: 2.0.1
+ micromark-util-types: 2.0.2
+ transitivePeerDependencies:
+ - supports-color
+
micromatch@4.0.8:
dependencies:
braces: 3.0.3
picomatch: 2.3.1
+ mime-db@1.33.0: {}
+
mime-db@1.52.0: {}
mime-db@1.54.0: {}
+ mime-types@2.1.18:
+ dependencies:
+ mime-db: 1.33.0
+
mime-types@2.1.35:
dependencies:
mime-db: 1.52.0
@@ -18770,6 +24308,8 @@ snapshots:
dependencies:
mime-db: 1.54.0
+ mime@1.6.0: {}
+
mime@2.6.0: {}
mime@3.0.0: {}
@@ -18782,6 +24322,14 @@ snapshots:
min-indent@1.0.1: {}
+ mini-css-extract-plugin@2.9.4(webpack@5.100.2):
+ dependencies:
+ schema-utils: 4.3.3
+ tapable: 2.3.0
+ webpack: 5.100.2
+
+ minimalistic-assert@1.0.1: {}
+
minimatch@10.1.1:
dependencies:
'@isaacs/brace-expansion': 5.0.0
@@ -19157,6 +24705,10 @@ snapshots:
motion-utils@12.23.6: {}
+ mrmime@2.0.1: {}
+
+ ms@2.0.0: {}
+
ms@2.1.3: {}
multer@2.0.2:
@@ -19169,6 +24721,11 @@ snapshots:
type-is: 1.6.18
xtend: 4.0.2
+ multicast-dns@7.2.5:
+ dependencies:
+ dns-packet: 5.6.1
+ thunky: 1.1.0
+
mute-stream@2.0.0: {}
mysql2@3.15.3:
@@ -19212,6 +24769,10 @@ snapshots:
natural-compare@1.4.0: {}
+ negotiator@0.6.3: {}
+
+ negotiator@0.6.4: {}
+
negotiator@1.0.0: {}
neo-async@2.6.2: {}
@@ -19263,7 +24824,7 @@ snapshots:
dependencies:
'@next/env': 15.5.6
'@swc/helpers': 0.5.15
- caniuse-lite: 1.0.30001753
+ caniuse-lite: 1.0.30001754
postcss: 8.4.31
react: 19.2.0
react-dom: 19.2.0(react@19.2.0)
@@ -19305,11 +24866,20 @@ snapshots:
dependencies:
lodash: 4.17.21
+ node-emoji@2.2.0:
+ dependencies:
+ '@sindresorhus/is': 4.6.0
+ char-regex: 1.0.2
+ emojilib: 2.4.0
+ skin-tone: 2.0.0
+
node-fetch@2.7.0:
dependencies:
whatwg-url: 5.0.0
optional: true
+ node-forge@1.3.1: {}
+
node-gyp-build@4.8.4: {}
node-int64@0.4.0: {}
@@ -19341,10 +24911,18 @@ snapshots:
dependencies:
path-key: 3.1.1
+ nprogress@0.2.0: {}
+
nth-check@2.1.1:
dependencies:
boolbase: 1.0.0
+ null-loader@4.0.1(webpack@5.100.2):
+ dependencies:
+ loader-utils: 2.0.4
+ schema-utils: 3.3.0
+ webpack: 5.100.2
+
number-flow@0.5.8:
dependencies:
esm-env: 1.2.2
@@ -19402,12 +24980,16 @@ snapshots:
define-properties: 1.2.1
es-object-atoms: 1.1.1
+ obuf@1.1.2: {}
+
on-exit-leak-free@2.1.2: {}
on-finished@2.4.1:
dependencies:
ee-first: 1.1.1
+ on-headers@1.1.0: {}
+
once@1.4.0:
dependencies:
wrappy: 1.0.2
@@ -19422,6 +25004,12 @@ snapshots:
is-wsl: 2.2.0
optional: true
+ open@8.4.2:
+ dependencies:
+ define-lazy-prop: 2.0.0
+ is-docker: 2.2.1
+ is-wsl: 2.2.0
+
openapi-typescript@7.10.1(typescript@5.9.3):
dependencies:
'@redocly/openapi-core': 1.34.5(supports-color@10.2.2)
@@ -19432,6 +25020,8 @@ snapshots:
typescript: 5.9.3
yargs-parser: 21.1.1
+ opener@1.5.2: {}
+
optionator@0.9.4:
dependencies:
deep-is: 0.1.4
@@ -19481,278 +25071,742 @@ snapshots:
'@oxc-resolver/binding-win32-ia32-msvc': 11.13.1
'@oxc-resolver/binding-win32-x64-msvc': 11.13.1
- p-cancelable@3.0.0: {}
+ p-cancelable@3.0.0: {}
+
+ p-event@4.2.0:
+ dependencies:
+ p-timeout: 3.2.0
+ optional: true
+
+ p-finally@1.0.0:
+ optional: true
+
+ p-limit@2.3.0:
+ dependencies:
+ p-try: 2.2.0
+
+ p-limit@3.1.0:
+ dependencies:
+ yocto-queue: 0.1.0
+
+ p-limit@4.0.0:
+ dependencies:
+ yocto-queue: 1.2.1
+
+ 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-locate@6.0.0:
+ dependencies:
+ p-limit: 4.0.0
+
+ p-map@4.0.0:
+ dependencies:
+ aggregate-error: 3.1.0
+
+ p-retry@4.6.2:
+ dependencies:
+ '@types/retry': 0.12.0
+ retry: 0.13.1
+
+ p-timeout@3.2.0:
+ dependencies:
+ p-finally: 1.0.0
+ optional: true
+
+ p-try@2.2.0: {}
+
+ p-wait-for@3.2.0:
+ dependencies:
+ p-timeout: 3.2.0
+ optional: true
+
+ package-json-from-dist@1.0.1: {}
+
+ package-json@8.1.1:
+ dependencies:
+ got: 12.6.1
+ registry-auth-token: 5.1.0
+ registry-url: 6.0.1
+ semver: 7.7.3
+
+ pako@1.0.11: {}
+
+ param-case@2.1.1:
+ dependencies:
+ no-case: 2.3.2
+ optional: true
+
+ param-case@3.0.4:
+ dependencies:
+ dot-case: 3.0.4
+ tslib: 2.8.1
+
+ parent-module@1.0.1:
+ dependencies:
+ callsites: 3.1.0
+
+ parse-entities@4.0.2:
+ dependencies:
+ '@types/unist': 2.0.11
+ character-entities-legacy: 3.0.0
+ character-reference-invalid: 2.0.1
+ decode-named-character-reference: 1.2.0
+ is-alphanumerical: 2.0.1
+ is-decimal: 2.0.1
+ is-hexadecimal: 2.0.1
+
+ parse-json@5.2.0:
+ dependencies:
+ '@babel/code-frame': 7.27.1
+ error-ex: 1.3.4
+ json-parse-even-better-errors: 2.3.1
+ lines-and-columns: 1.2.4
+
+ parse-json@8.3.0:
+ dependencies:
+ '@babel/code-frame': 7.27.1
+ index-to-position: 1.2.0
+ type-fest: 4.41.0
+
+ parse-numeric-range@1.3.0: {}
+
+ parse5-htmlparser2-tree-adapter@7.1.0:
+ dependencies:
+ domhandler: 5.0.3
+ parse5: 7.3.0
+
+ parse5@7.3.0:
+ dependencies:
+ entities: 6.0.1
+
+ parseley@0.12.1:
+ dependencies:
+ leac: 0.6.0
+ peberminta: 0.9.0
+ optional: true
+
+ parseurl@1.3.3: {}
+
+ pascal-case@3.1.2:
+ dependencies:
+ no-case: 3.0.4
+ tslib: 2.8.1
+
+ passport-custom@1.1.1:
+ dependencies:
+ passport-strategy: 1.0.0
+
+ passport-jwt@4.0.1:
+ dependencies:
+ jsonwebtoken: 9.0.2
+ passport-strategy: 1.0.0
+
+ passport-local@1.0.0:
+ dependencies:
+ passport-strategy: 1.0.0
+
+ passport-strategy@1.0.0: {}
+
+ passport@0.7.0:
+ dependencies:
+ passport-strategy: 1.0.0
+ pause: 0.0.1
+ utils-merge: 1.0.1
+
+ path-exists@3.0.0: {}
+
+ path-exists@4.0.0: {}
+
+ path-exists@5.0.0: {}
+
+ path-is-absolute@1.0.1: {}
+
+ path-is-inside@1.0.2: {}
+
+ path-key@2.0.1:
+ optional: true
+
+ path-key@3.1.1: {}
+
+ path-parse@1.0.7: {}
+
+ path-scurry@1.11.1:
+ dependencies:
+ lru-cache: 10.4.3
+ minipass: 7.1.2
+
+ path-scurry@2.0.0:
+ dependencies:
+ lru-cache: 11.2.2
+ minipass: 7.1.2
+
+ path-to-regexp@0.1.12: {}
+
+ path-to-regexp@1.9.0:
+ dependencies:
+ isarray: 0.0.1
+
+ path-to-regexp@3.3.0: {}
+
+ path-to-regexp@8.3.0: {}
+
+ path-type@4.0.0: {}
+
+ pathe@2.0.3: {}
+
+ pause@0.0.1: {}
+
+ peberminta@0.9.0:
+ optional: true
+
+ pend@1.2.0: {}
+
+ picocolors@1.1.1: {}
+
+ picomatch@2.3.1: {}
+
+ picomatch@4.0.2: {}
+
+ picomatch@4.0.3: {}
+
+ pify@2.3.0: {}
+
+ pino-abstract-transport@2.0.0:
+ dependencies:
+ split2: 4.2.0
+
+ pino-http@11.0.0:
+ dependencies:
+ get-caller-file: 2.0.5
+ pino: 10.1.0
+ pino-std-serializers: 7.0.0
+ process-warning: 5.0.0
+
+ pino-pretty@13.1.2:
+ dependencies:
+ colorette: 2.0.20
+ dateformat: 4.6.3
+ fast-copy: 3.0.2
+ fast-safe-stringify: 2.1.1
+ help-me: 5.0.0
+ joycon: 3.1.1
+ minimist: 1.2.8
+ on-exit-leak-free: 2.1.2
+ pino-abstract-transport: 2.0.0
+ pump: 3.0.3
+ secure-json-parse: 4.1.0
+ sonic-boom: 4.2.0
+ strip-json-comments: 5.0.3
+
+ pino-std-serializers@7.0.0: {}
+
+ pino@10.1.0:
+ dependencies:
+ '@pinojs/redact': 0.4.0
+ atomic-sleep: 1.0.0
+ on-exit-leak-free: 2.1.2
+ pino-abstract-transport: 2.0.0
+ pino-std-serializers: 7.0.0
+ process-warning: 5.0.0
+ quick-format-unescaped: 4.0.4
+ real-require: 0.2.0
+ safe-stable-stringify: 2.5.0
+ sonic-boom: 4.2.0
+ thread-stream: 3.1.0
+
+ pino@9.14.0:
+ dependencies:
+ '@pinojs/redact': 0.4.0
+ atomic-sleep: 1.0.0
+ on-exit-leak-free: 2.1.2
+ pino-abstract-transport: 2.0.0
+ pino-std-serializers: 7.0.0
+ process-warning: 5.0.0
+ quick-format-unescaped: 4.0.4
+ real-require: 0.2.0
+ safe-stable-stringify: 2.5.0
+ sonic-boom: 4.2.0
+ thread-stream: 3.1.0
+
+ pirates@4.0.7: {}
+
+ piscina@4.9.2:
+ optionalDependencies:
+ '@napi-rs/nice': 1.1.1
+
+ pkg-dir@4.2.0:
+ dependencies:
+ find-up: 4.1.0
+
+ pkg-dir@7.0.0:
+ dependencies:
+ find-up: 6.3.0
+
+ pkg-types@1.3.1:
+ dependencies:
+ confbox: 0.1.8
+ mlly: 1.8.0
+ pathe: 2.0.3
+
+ pkg-up@3.1.0:
+ dependencies:
+ find-up: 3.0.0
- p-event@4.2.0:
+ playwright-core@1.56.1: {}
+
+ playwright@1.56.1:
dependencies:
- p-timeout: 3.2.0
- optional: true
+ playwright-core: 1.56.1
+ optionalDependencies:
+ fsevents: 2.3.2
- p-finally@1.0.0:
- optional: true
+ pluralize@8.0.0: {}
- p-limit@2.3.0:
+ possible-typed-array-names@1.1.0: {}
+
+ postcss-attribute-case-insensitive@7.0.1(postcss@8.5.6):
dependencies:
- p-try: 2.2.0
+ postcss: 8.5.6
+ postcss-selector-parser: 7.1.0
- p-limit@3.1.0:
+ postcss-calc@9.0.1(postcss@8.5.6):
dependencies:
- yocto-queue: 0.1.0
+ postcss: 8.5.6
+ postcss-selector-parser: 6.1.2
+ postcss-value-parser: 4.2.0
- p-locate@4.1.0:
+ postcss-clamp@4.1.0(postcss@8.5.6):
dependencies:
- p-limit: 2.3.0
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- p-locate@5.0.0:
+ postcss-color-functional-notation@7.0.12(postcss@8.5.6):
dependencies:
- p-limit: 3.1.0
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.6)
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
- p-timeout@3.2.0:
+ postcss-color-hex-alpha@10.0.0(postcss@8.5.6):
dependencies:
- p-finally: 1.0.0
- optional: true
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- p-try@2.2.0: {}
+ postcss-color-rebeccapurple@10.0.0(postcss@8.5.6):
+ dependencies:
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- p-wait-for@3.2.0:
+ postcss-colormin@6.1.0(postcss@8.5.6):
dependencies:
- p-timeout: 3.2.0
- optional: true
+ browserslist: 4.27.0
+ caniuse-api: 3.0.0
+ colord: 2.9.3
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- package-json-from-dist@1.0.1: {}
+ postcss-convert-values@6.1.0(postcss@8.5.6):
+ dependencies:
+ browserslist: 4.27.0
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- pako@1.0.11: {}
+ postcss-custom-media@11.0.6(postcss@8.5.6):
+ dependencies:
+ '@csstools/cascade-layer-name-parser': 2.0.5(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/media-query-list-parser': 4.0.3(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ postcss: 8.5.6
- param-case@2.1.1:
+ postcss-custom-properties@14.0.6(postcss@8.5.6):
dependencies:
- no-case: 2.3.2
- optional: true
+ '@csstools/cascade-layer-name-parser': 2.0.5(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- parent-module@1.0.1:
+ postcss-custom-selectors@8.0.5(postcss@8.5.6):
dependencies:
- callsites: 3.1.0
+ '@csstools/cascade-layer-name-parser': 2.0.5(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ postcss: 8.5.6
+ postcss-selector-parser: 7.1.0
- parse-json@5.2.0:
+ postcss-dir-pseudo-class@9.0.1(postcss@8.5.6):
dependencies:
- '@babel/code-frame': 7.27.1
- error-ex: 1.3.4
- json-parse-even-better-errors: 2.3.1
- lines-and-columns: 1.2.4
+ postcss: 8.5.6
+ postcss-selector-parser: 7.1.0
- parse-json@8.3.0:
+ postcss-discard-comments@6.0.2(postcss@8.5.6):
dependencies:
- '@babel/code-frame': 7.27.1
- index-to-position: 1.2.0
- type-fest: 4.41.0
+ postcss: 8.5.6
- parse5-htmlparser2-tree-adapter@7.1.0:
+ postcss-discard-duplicates@6.0.3(postcss@8.5.6):
dependencies:
- domhandler: 5.0.3
- parse5: 7.3.0
- optional: true
+ postcss: 8.5.6
- parse5@7.3.0:
+ postcss-discard-empty@6.0.3(postcss@8.5.6):
dependencies:
- entities: 6.0.1
+ postcss: 8.5.6
- parseley@0.12.1:
+ postcss-discard-overridden@6.0.2(postcss@8.5.6):
dependencies:
- leac: 0.6.0
- peberminta: 0.9.0
- optional: true
+ postcss: 8.5.6
- parseurl@1.3.3: {}
+ postcss-discard-unused@6.0.5(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+ postcss-selector-parser: 6.1.2
- passport-custom@1.1.1:
+ postcss-double-position-gradients@6.0.4(postcss@8.5.6):
dependencies:
- passport-strategy: 1.0.0
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.6)
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- passport-jwt@4.0.1:
+ postcss-focus-visible@10.0.1(postcss@8.5.6):
dependencies:
- jsonwebtoken: 9.0.2
- passport-strategy: 1.0.0
+ postcss: 8.5.6
+ postcss-selector-parser: 7.1.0
- passport-local@1.0.0:
+ postcss-focus-within@9.0.1(postcss@8.5.6):
dependencies:
- passport-strategy: 1.0.0
+ postcss: 8.5.6
+ postcss-selector-parser: 7.1.0
- passport-strategy@1.0.0: {}
+ postcss-font-variant@5.0.0(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
- passport@0.7.0:
+ postcss-gap-properties@6.0.0(postcss@8.5.6):
dependencies:
- passport-strategy: 1.0.0
- pause: 0.0.1
- utils-merge: 1.0.1
+ postcss: 8.5.6
- path-exists@4.0.0: {}
+ postcss-image-set-function@7.0.0(postcss@8.5.6):
+ dependencies:
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- path-is-absolute@1.0.1: {}
+ postcss-import@15.1.0(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
+ read-cache: 1.0.0
+ resolve: 1.22.11
- path-key@2.0.1:
- optional: true
+ postcss-import@16.1.1(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
+ read-cache: 1.0.0
+ resolve: 1.22.11
- path-key@3.1.1: {}
+ postcss-js@4.1.0(postcss@8.5.6):
+ dependencies:
+ camelcase-css: 2.0.1
+ postcss: 8.5.6
- path-parse@1.0.7: {}
+ postcss-js@5.0.1(postcss@8.5.6):
+ dependencies:
+ camelcase-css: 2.0.1
+ postcss: 8.5.6
- path-scurry@1.11.1:
+ postcss-lab-function@7.0.12(postcss@8.5.6):
dependencies:
- lru-cache: 10.4.3
- minipass: 7.1.2
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.6)
+ '@csstools/utilities': 2.0.0(postcss@8.5.6)
+ postcss: 8.5.6
- path-scurry@2.0.0:
+ postcss-load-config@6.0.1(jiti@1.21.7)(postcss@8.5.6)(yaml@2.8.1):
dependencies:
- lru-cache: 11.2.2
- minipass: 7.1.2
+ lilconfig: 3.1.3
+ optionalDependencies:
+ jiti: 1.21.7
+ postcss: 8.5.6
+ yaml: 2.8.1
- path-to-regexp@8.3.0: {}
+ postcss-loader@7.3.4(postcss@8.5.6)(typescript@5.9.3)(webpack@5.100.2):
+ dependencies:
+ cosmiconfig: 8.3.6(typescript@5.9.3)
+ jiti: 1.21.7
+ postcss: 8.5.6
+ semver: 7.7.3
+ webpack: 5.100.2
+ transitivePeerDependencies:
+ - typescript
- path-type@4.0.0: {}
+ postcss-logical@8.1.0(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- pathe@2.0.3: {}
+ postcss-merge-idents@6.0.3(postcss@8.5.6):
+ dependencies:
+ cssnano-utils: 4.0.2(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- pause@0.0.1: {}
+ postcss-merge-longhand@6.0.5(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
+ stylehacks: 6.1.1(postcss@8.5.6)
- peberminta@0.9.0:
- optional: true
+ postcss-merge-rules@6.1.1(postcss@8.5.6):
+ dependencies:
+ browserslist: 4.27.0
+ caniuse-api: 3.0.0
+ cssnano-utils: 4.0.2(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-selector-parser: 6.1.2
- pend@1.2.0: {}
+ postcss-minify-font-values@6.1.0(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- picocolors@1.1.1: {}
+ postcss-minify-gradients@6.0.3(postcss@8.5.6):
+ dependencies:
+ colord: 2.9.3
+ cssnano-utils: 4.0.2(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- picomatch@2.3.1: {}
+ postcss-minify-params@6.1.0(postcss@8.5.6):
+ dependencies:
+ browserslist: 4.27.0
+ cssnano-utils: 4.0.2(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- picomatch@4.0.2: {}
+ postcss-minify-selectors@6.0.4(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+ postcss-selector-parser: 6.1.2
- picomatch@4.0.3: {}
+ postcss-modules-extract-imports@3.1.0(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
- pify@2.3.0: {}
+ postcss-modules-local-by-default@4.2.0(postcss@8.5.6):
+ dependencies:
+ icss-utils: 5.1.0(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-selector-parser: 7.1.0
+ postcss-value-parser: 4.2.0
- pino-abstract-transport@2.0.0:
+ postcss-modules-scope@3.2.1(postcss@8.5.6):
dependencies:
- split2: 4.2.0
+ postcss: 8.5.6
+ postcss-selector-parser: 7.1.0
- pino-http@11.0.0:
+ postcss-modules-values@4.0.0(postcss@8.5.6):
dependencies:
- get-caller-file: 2.0.5
- pino: 10.1.0
- pino-std-serializers: 7.0.0
- process-warning: 5.0.0
+ icss-utils: 5.1.0(postcss@8.5.6)
+ postcss: 8.5.6
- pino-pretty@13.1.2:
+ postcss-nested@6.2.0(postcss@8.5.6):
dependencies:
- colorette: 2.0.20
- dateformat: 4.6.3
- fast-copy: 3.0.2
- fast-safe-stringify: 2.1.1
- help-me: 5.0.0
- joycon: 3.1.1
- minimist: 1.2.8
- on-exit-leak-free: 2.1.2
- pino-abstract-transport: 2.0.0
- pump: 3.0.3
- secure-json-parse: 4.1.0
- sonic-boom: 4.2.0
- strip-json-comments: 5.0.3
+ postcss: 8.5.6
+ postcss-selector-parser: 6.1.2
- pino-std-serializers@7.0.0: {}
+ postcss-nesting@13.0.2(postcss@8.5.6):
+ dependencies:
+ '@csstools/selector-resolve-nested': 3.1.0(postcss-selector-parser@7.1.0)
+ '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.1.0)
+ postcss: 8.5.6
+ postcss-selector-parser: 7.1.0
+
+ postcss-normalize-charset@6.0.2(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
- pino@10.1.0:
+ postcss-normalize-display-values@6.0.2(postcss@8.5.6):
dependencies:
- '@pinojs/redact': 0.4.0
- atomic-sleep: 1.0.0
- on-exit-leak-free: 2.1.2
- pino-abstract-transport: 2.0.0
- pino-std-serializers: 7.0.0
- process-warning: 5.0.0
- quick-format-unescaped: 4.0.4
- real-require: 0.2.0
- safe-stable-stringify: 2.5.0
- sonic-boom: 4.2.0
- thread-stream: 3.1.0
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- pino@9.14.0:
+ postcss-normalize-positions@6.0.2(postcss@8.5.6):
dependencies:
- '@pinojs/redact': 0.4.0
- atomic-sleep: 1.0.0
- on-exit-leak-free: 2.1.2
- pino-abstract-transport: 2.0.0
- pino-std-serializers: 7.0.0
- process-warning: 5.0.0
- quick-format-unescaped: 4.0.4
- real-require: 0.2.0
- safe-stable-stringify: 2.5.0
- sonic-boom: 4.2.0
- thread-stream: 3.1.0
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- pirates@4.0.7: {}
+ postcss-normalize-repeat-style@6.0.2(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- piscina@4.9.2:
- optionalDependencies:
- '@napi-rs/nice': 1.1.1
+ postcss-normalize-string@6.0.2(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- pkg-dir@4.2.0:
+ postcss-normalize-timing-functions@6.0.2(postcss@8.5.6):
dependencies:
- find-up: 4.1.0
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- pkg-types@1.3.1:
+ postcss-normalize-unicode@6.1.0(postcss@8.5.6):
dependencies:
- confbox: 0.1.8
- mlly: 1.8.0
- pathe: 2.0.3
+ browserslist: 4.27.0
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- playwright-core@1.56.1: {}
+ postcss-normalize-url@6.0.2(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- playwright@1.56.1:
+ postcss-normalize-whitespace@6.0.2(postcss@8.5.6):
dependencies:
- playwright-core: 1.56.1
- optionalDependencies:
- fsevents: 2.3.2
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- pluralize@8.0.0: {}
+ postcss-opacity-percentage@3.0.0(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
- possible-typed-array-names@1.1.0: {}
+ postcss-ordered-values@6.0.2(postcss@8.5.6):
+ dependencies:
+ cssnano-utils: 4.0.2(postcss@8.5.6)
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- postcss-import@15.1.0(postcss@8.5.6):
+ postcss-overflow-shorthand@6.0.0(postcss@8.5.6):
dependencies:
postcss: 8.5.6
postcss-value-parser: 4.2.0
- read-cache: 1.0.0
- resolve: 1.22.11
- postcss-import@16.1.1(postcss@8.5.6):
+ postcss-page-break@3.0.4(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+
+ postcss-place@10.0.0(postcss@8.5.6):
dependencies:
postcss: 8.5.6
postcss-value-parser: 4.2.0
- read-cache: 1.0.0
- resolve: 1.22.11
- postcss-js@4.1.0(postcss@8.5.6):
+ postcss-preset-env@10.4.0(postcss@8.5.6):
+ dependencies:
+ '@csstools/postcss-alpha-function': 1.0.1(postcss@8.5.6)
+ '@csstools/postcss-cascade-layers': 5.0.2(postcss@8.5.6)
+ '@csstools/postcss-color-function': 4.0.12(postcss@8.5.6)
+ '@csstools/postcss-color-function-display-p3-linear': 1.0.1(postcss@8.5.6)
+ '@csstools/postcss-color-mix-function': 3.0.12(postcss@8.5.6)
+ '@csstools/postcss-color-mix-variadic-function-arguments': 1.0.2(postcss@8.5.6)
+ '@csstools/postcss-content-alt-text': 2.0.8(postcss@8.5.6)
+ '@csstools/postcss-contrast-color-function': 2.0.12(postcss@8.5.6)
+ '@csstools/postcss-exponential-functions': 2.0.9(postcss@8.5.6)
+ '@csstools/postcss-font-format-keywords': 4.0.0(postcss@8.5.6)
+ '@csstools/postcss-gamut-mapping': 2.0.11(postcss@8.5.6)
+ '@csstools/postcss-gradients-interpolation-method': 5.0.12(postcss@8.5.6)
+ '@csstools/postcss-hwb-function': 4.0.12(postcss@8.5.6)
+ '@csstools/postcss-ic-unit': 4.0.4(postcss@8.5.6)
+ '@csstools/postcss-initial': 2.0.1(postcss@8.5.6)
+ '@csstools/postcss-is-pseudo-class': 5.0.3(postcss@8.5.6)
+ '@csstools/postcss-light-dark-function': 2.0.11(postcss@8.5.6)
+ '@csstools/postcss-logical-float-and-clear': 3.0.0(postcss@8.5.6)
+ '@csstools/postcss-logical-overflow': 2.0.0(postcss@8.5.6)
+ '@csstools/postcss-logical-overscroll-behavior': 2.0.0(postcss@8.5.6)
+ '@csstools/postcss-logical-resize': 3.0.0(postcss@8.5.6)
+ '@csstools/postcss-logical-viewport-units': 3.0.4(postcss@8.5.6)
+ '@csstools/postcss-media-minmax': 2.0.9(postcss@8.5.6)
+ '@csstools/postcss-media-queries-aspect-ratio-number-values': 3.0.5(postcss@8.5.6)
+ '@csstools/postcss-nested-calc': 4.0.0(postcss@8.5.6)
+ '@csstools/postcss-normalize-display-values': 4.0.0(postcss@8.5.6)
+ '@csstools/postcss-oklab-function': 4.0.12(postcss@8.5.6)
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.6)
+ '@csstools/postcss-random-function': 2.0.1(postcss@8.5.6)
+ '@csstools/postcss-relative-color-syntax': 3.0.12(postcss@8.5.6)
+ '@csstools/postcss-scope-pseudo-class': 4.0.1(postcss@8.5.6)
+ '@csstools/postcss-sign-functions': 1.1.4(postcss@8.5.6)
+ '@csstools/postcss-stepped-value-functions': 4.0.9(postcss@8.5.6)
+ '@csstools/postcss-text-decoration-shorthand': 4.0.3(postcss@8.5.6)
+ '@csstools/postcss-trigonometric-functions': 4.0.9(postcss@8.5.6)
+ '@csstools/postcss-unset-value': 4.0.0(postcss@8.5.6)
+ autoprefixer: 10.4.22(postcss@8.5.6)
+ browserslist: 4.27.0
+ css-blank-pseudo: 7.0.1(postcss@8.5.6)
+ css-has-pseudo: 7.0.3(postcss@8.5.6)
+ css-prefers-color-scheme: 10.0.0(postcss@8.5.6)
+ cssdb: 8.4.2
+ postcss: 8.5.6
+ postcss-attribute-case-insensitive: 7.0.1(postcss@8.5.6)
+ postcss-clamp: 4.1.0(postcss@8.5.6)
+ postcss-color-functional-notation: 7.0.12(postcss@8.5.6)
+ postcss-color-hex-alpha: 10.0.0(postcss@8.5.6)
+ postcss-color-rebeccapurple: 10.0.0(postcss@8.5.6)
+ postcss-custom-media: 11.0.6(postcss@8.5.6)
+ postcss-custom-properties: 14.0.6(postcss@8.5.6)
+ postcss-custom-selectors: 8.0.5(postcss@8.5.6)
+ postcss-dir-pseudo-class: 9.0.1(postcss@8.5.6)
+ postcss-double-position-gradients: 6.0.4(postcss@8.5.6)
+ postcss-focus-visible: 10.0.1(postcss@8.5.6)
+ postcss-focus-within: 9.0.1(postcss@8.5.6)
+ postcss-font-variant: 5.0.0(postcss@8.5.6)
+ postcss-gap-properties: 6.0.0(postcss@8.5.6)
+ postcss-image-set-function: 7.0.0(postcss@8.5.6)
+ postcss-lab-function: 7.0.12(postcss@8.5.6)
+ postcss-logical: 8.1.0(postcss@8.5.6)
+ postcss-nesting: 13.0.2(postcss@8.5.6)
+ postcss-opacity-percentage: 3.0.0(postcss@8.5.6)
+ postcss-overflow-shorthand: 6.0.0(postcss@8.5.6)
+ postcss-page-break: 3.0.4(postcss@8.5.6)
+ postcss-place: 10.0.0(postcss@8.5.6)
+ postcss-pseudo-class-any-link: 10.0.1(postcss@8.5.6)
+ postcss-replace-overflow-wrap: 4.0.0(postcss@8.5.6)
+ postcss-selector-not: 8.0.1(postcss@8.5.6)
+
+ postcss-pseudo-class-any-link@10.0.1(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+ postcss-selector-parser: 7.1.0
+
+ postcss-reduce-idents@6.0.3(postcss@8.5.6):
dependencies:
- camelcase-css: 2.0.1
postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- postcss-js@5.0.1(postcss@8.5.6):
+ postcss-reduce-initial@6.1.0(postcss@8.5.6):
dependencies:
- camelcase-css: 2.0.1
+ browserslist: 4.27.0
+ caniuse-api: 3.0.0
postcss: 8.5.6
- postcss-load-config@6.0.1(jiti@1.21.7)(postcss@8.5.6):
+ postcss-reduce-transforms@6.0.2(postcss@8.5.6):
dependencies:
- lilconfig: 3.1.3
- optionalDependencies:
- jiti: 1.21.7
postcss: 8.5.6
+ postcss-value-parser: 4.2.0
- postcss-nested@6.2.0(postcss@8.5.6):
+ postcss-replace-overflow-wrap@4.0.0(postcss@8.5.6):
dependencies:
postcss: 8.5.6
- postcss-selector-parser: 6.1.2
- postcss-nesting@13.0.2(postcss@8.5.6):
+ postcss-selector-not@8.0.1(postcss@8.5.6):
dependencies:
- '@csstools/selector-resolve-nested': 3.1.0(postcss-selector-parser@7.1.0)
- '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.1.0)
postcss: 8.5.6
postcss-selector-parser: 7.1.0
@@ -19766,8 +25820,28 @@ snapshots:
cssesc: 3.0.0
util-deprecate: 1.0.2
+ postcss-sort-media-queries@5.2.0(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+ sort-css-media-queries: 2.2.0
+
+ postcss-svgo@6.0.3(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+ postcss-value-parser: 4.2.0
+ svgo: 3.3.2
+
+ postcss-unique-selectors@6.0.4(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+ postcss-selector-parser: 6.1.2
+
postcss-value-parser@4.2.0: {}
+ postcss-zindex@6.0.2(postcss@8.5.6):
+ dependencies:
+ postcss: 8.5.6
+
postcss@8.4.31:
dependencies:
nanoid: 3.3.11
@@ -19790,6 +25864,11 @@ snapshots:
prettier@3.6.2: {}
+ 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
@@ -19802,6 +25881,8 @@ snapshots:
ansi-styles: 5.2.0
react-is: 18.3.1
+ pretty-time@1.1.0: {}
+
preview-email@3.1.0:
dependencies:
ci-info: 3.9.0
@@ -19817,6 +25898,14 @@ snapshots:
uuid: 9.0.1
optional: true
+ prism-react-renderer@2.4.1(react@19.2.0):
+ dependencies:
+ '@types/prismjs': 1.26.5
+ clsx: 2.1.1
+ react: 19.2.0
+
+ prismjs@1.30.0: {}
+
process-nextick-args@2.0.1: {}
process-warning@4.0.1: {}
@@ -19833,14 +25922,22 @@ snapshots:
asap: 2.0.6
optional: true
+ 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:
- optional: true
+ property-information@6.5.0: {}
+
+ property-information@7.1.0: {}
+
+ proto-list@1.2.4: {}
proxy-addr@2.0.7:
dependencies:
@@ -19938,14 +26035,26 @@ snapshots:
punycode@2.3.1: {}
+ pupa@3.3.0:
+ dependencies:
+ escape-goat: 4.0.0
+
pure-rand@7.0.1: {}
+ qs@6.13.0:
+ dependencies:
+ side-channel: 1.1.0
+
qs@6.14.0:
dependencies:
side-channel: 1.1.0
queue-microtask@1.2.3: {}
+ queue@6.0.2:
+ dependencies:
+ inherits: 2.0.4
+
quick-format-unescaped@4.0.4: {}
quick-lru@5.1.1: {}
@@ -19954,8 +26063,17 @@ snapshots:
dependencies:
safe-buffer: 5.2.1
+ range-parser@1.2.0: {}
+
range-parser@1.2.1: {}
+ raw-body@2.5.2:
+ dependencies:
+ bytes: 3.1.2
+ http-errors: 2.0.0
+ iconv-lite: 0.4.24
+ unpipe: 1.0.0
+
raw-body@3.0.1:
dependencies:
bytes: 3.1.2
@@ -19969,7 +26087,6 @@ snapshots:
ini: 1.3.8
minimist: 1.2.8
strip-json-comments: 2.0.1
- optional: true
react-content-loader@7.1.1(react@19.2.0):
dependencies:
@@ -19980,11 +26097,49 @@ snapshots:
date-fns: 4.1.0
react: 19.2.0
+ react-dev-utils@12.0.1(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3)(webpack@5.100.2):
+ dependencies:
+ '@babel/code-frame': 7.27.1
+ address: 1.2.2
+ browserslist: 4.27.0
+ chalk: 4.1.2
+ cross-spawn: 7.0.6
+ detect-port-alt: 1.1.6
+ escape-string-regexp: 4.0.0
+ filesize: 8.0.7
+ find-up: 5.0.0
+ fork-ts-checker-webpack-plugin: 6.5.3(eslint@9.39.1(jiti@1.21.7))(typescript@5.9.3)(webpack@5.100.2)
+ global-modules: 2.0.0
+ globby: 11.1.0
+ gzip-size: 6.0.0
+ immer: 9.0.21
+ is-root: 2.1.0
+ loader-utils: 3.3.1
+ open: 8.4.2
+ pkg-up: 3.1.0
+ prompts: 2.4.2
+ react-error-overlay: 6.1.0
+ recursive-readdir: 2.2.3
+ shell-quote: 1.8.3
+ strip-ansi: 6.0.1
+ text-table: 0.2.0
+ webpack: 5.100.2
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - eslint
+ - supports-color
+ - vue-template-compiler
+
react-dom@19.2.0(react@19.2.0):
dependencies:
react: 19.2.0
scheduler: 0.27.0
+ react-error-overlay@6.1.0: {}
+
+ react-fast-compare@3.2.2: {}
+
react-hook-form@7.66.0(react@19.2.0):
dependencies:
react: 19.2.0
@@ -20006,6 +26161,16 @@ snapshots:
react-is@18.3.1: {}
+ react-json-view-lite@1.5.0(react@19.2.0):
+ dependencies:
+ react: 19.2.0
+
+ react-loadable-ssr-addon-v5-slorber@1.0.1(@docusaurus/react-loadable@6.0.0(react@19.2.0))(webpack@5.100.2):
+ dependencies:
+ '@babel/runtime': 7.28.4
+ react-loadable: '@docusaurus/react-loadable@6.0.0(react@19.2.0)'
+ webpack: 5.100.2
+
react-redux@9.2.0(@types/react@19.2.2)(react@19.2.0)(redux@5.0.1):
dependencies:
'@types/use-sync-external-store': 0.0.6
@@ -20034,6 +26199,36 @@ snapshots:
optionalDependencies:
'@types/react': 19.2.2
+ react-router-config@5.1.1(react-router@5.3.4(react@19.2.0))(react@19.2.0):
+ dependencies:
+ '@babel/runtime': 7.28.4
+ react: 19.2.0
+ react-router: 5.3.4(react@19.2.0)
+
+ react-router-dom@5.3.4(react@19.2.0):
+ dependencies:
+ '@babel/runtime': 7.28.4
+ history: 4.10.1
+ loose-envify: 1.4.0
+ prop-types: 15.8.1
+ react: 19.2.0
+ react-router: 5.3.4(react@19.2.0)
+ tiny-invariant: 1.3.3
+ tiny-warning: 1.0.3
+
+ react-router@5.3.4(react@19.2.0):
+ dependencies:
+ '@babel/runtime': 7.28.4
+ history: 4.10.1
+ hoist-non-react-statics: 3.3.2
+ loose-envify: 1.4.0
+ path-to-regexp: 1.9.0
+ prop-types: 15.8.1
+ react: 19.2.0
+ react-is: 16.13.1
+ tiny-invariant: 1.3.3
+ tiny-warning: 1.0.3
+
react-select@5.10.2(@types/react@19.2.2)(react-dom@19.2.0(react@19.2.0))(react@19.2.0):
dependencies:
'@babel/runtime': 7.28.4
@@ -20124,6 +26319,8 @@ snapshots:
readdirp@4.1.2: {}
+ reading-time@1.5.0: {}
+
real-require@0.2.0: {}
recharts@3.3.0(@types/react@19.2.2)(react-dom@19.2.0(react@19.2.0))(react-is@18.3.1)(react@19.2.0)(redux@5.0.1):
@@ -20146,6 +26343,43 @@ snapshots:
- '@types/react'
- redux
+ rechoir@0.6.2:
+ dependencies:
+ resolve: 1.22.11
+
+ recma-build-jsx@1.0.0:
+ dependencies:
+ '@types/estree': 1.0.8
+ estree-util-build-jsx: 3.0.1
+ vfile: 6.0.3
+
+ recma-jsx@1.0.1(acorn@8.15.0):
+ dependencies:
+ acorn: 8.15.0
+ acorn-jsx: 5.3.2(acorn@8.15.0)
+ estree-util-to-js: 2.0.0
+ recma-parse: 1.0.0
+ recma-stringify: 1.0.0
+ unified: 11.0.5
+
+ recma-parse@1.0.0:
+ dependencies:
+ '@types/estree': 1.0.8
+ esast-util-from-js: 2.0.1
+ unified: 11.0.5
+ vfile: 6.0.3
+
+ recma-stringify@1.0.0:
+ dependencies:
+ '@types/estree': 1.0.8
+ estree-util-to-js: 2.0.0
+ unified: 11.0.5
+ vfile: 6.0.3
+
+ recursive-readdir@2.2.3:
+ dependencies:
+ minimatch: 3.1.2
+
redent@3.0.0:
dependencies:
indent-string: 4.0.0
@@ -20194,19 +26428,121 @@ snapshots:
unicode-match-property-ecmascript: 2.0.0
unicode-match-property-value-ecmascript: 2.2.1
+ registry-auth-token@5.1.0:
+ dependencies:
+ '@pnpm/npm-conf': 2.3.1
+
+ registry-url@6.0.1:
+ dependencies:
+ rc: 1.2.8
+
regjsgen@0.8.0: {}
regjsparser@0.13.0:
dependencies:
jsesc: 3.1.0
- relateurl@0.2.7:
- optional: true
+ rehype-raw@7.0.0:
+ dependencies:
+ '@types/hast': 3.0.4
+ hast-util-raw: 9.1.0
+ vfile: 6.0.3
+
+ rehype-recma@1.0.0:
+ dependencies:
+ '@types/estree': 1.0.8
+ '@types/hast': 3.0.4
+ hast-util-to-estree: 3.1.3
+ transitivePeerDependencies:
+ - supports-color
+
+ relateurl@0.2.7: {}
+
+ remark-directive@3.0.1:
+ dependencies:
+ '@types/mdast': 4.0.4
+ mdast-util-directive: 3.1.0
+ micromark-extension-directive: 3.0.2
+ unified: 11.0.5
+ transitivePeerDependencies:
+ - supports-color
+
+ remark-emoji@4.0.1:
+ dependencies:
+ '@types/mdast': 4.0.4
+ emoticon: 4.1.0
+ mdast-util-find-and-replace: 3.0.2
+ node-emoji: 2.2.0
+ unified: 11.0.5
+
+ remark-frontmatter@5.0.0:
+ dependencies:
+ '@types/mdast': 4.0.4
+ mdast-util-frontmatter: 2.0.1
+ micromark-extension-frontmatter: 2.0.0
+ unified: 11.0.5
+ transitivePeerDependencies:
+ - supports-color
+
+ remark-gfm@4.0.1:
+ dependencies:
+ '@types/mdast': 4.0.4
+ mdast-util-gfm: 3.1.0
+ micromark-extension-gfm: 3.0.0
+ remark-parse: 11.0.0
+ remark-stringify: 11.0.0
+ unified: 11.0.5
+ transitivePeerDependencies:
+ - supports-color
+
+ remark-mdx@3.1.1:
+ dependencies:
+ mdast-util-mdx: 3.0.0
+ micromark-extension-mdxjs: 3.0.0
+ transitivePeerDependencies:
+ - supports-color
+
+ remark-parse@11.0.0:
+ dependencies:
+ '@types/mdast': 4.0.4
+ mdast-util-from-markdown: 2.0.2
+ micromark-util-types: 2.0.2
+ unified: 11.0.5
+ transitivePeerDependencies:
+ - supports-color
+
+ remark-rehype@11.1.2:
+ dependencies:
+ '@types/hast': 3.0.4
+ '@types/mdast': 4.0.4
+ mdast-util-to-hast: 13.2.0
+ unified: 11.0.5
+ vfile: 6.0.3
+
+ remark-stringify@11.0.0:
+ dependencies:
+ '@types/mdast': 4.0.4
+ mdast-util-to-markdown: 2.1.2
+ unified: 11.0.5
+
+ 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-string@1.6.1: {}
require-directory@2.1.1: {}
require-from-string@2.0.2: {}
+ require-like@0.1.2: {}
+
+ requires-port@1.0.0: {}
+
reselect@5.1.1: {}
resize-observer-polyfill@1.5.1: {}
@@ -20221,6 +26557,8 @@ snapshots:
resolve-from@5.0.0: {}
+ resolve-pathname@3.0.0: {}
+
resolve@1.22.11:
dependencies:
is-core-module: 2.16.1
@@ -20244,11 +26582,17 @@ snapshots:
ret@0.5.0: {}
+ retry@0.13.1: {}
+
reusify@1.1.0: {}
rfdc@1.4.1: {}
- rimraf@2.7.1:
+ rimraf@2.7.1:
+ dependencies:
+ glob: 7.2.3
+
+ rimraf@3.0.2:
dependencies:
glob: 7.2.3
@@ -20296,6 +26640,13 @@ snapshots:
dependencies:
'@babel/runtime': 7.28.4
+ rtlcss@4.3.0:
+ dependencies:
+ escalade: 3.2.0
+ picocolors: 1.1.1
+ postcss: 8.5.6
+ strip-json-comments: 3.1.1
+
run-applescript@3.2.0:
dependencies:
execa: 0.10.0
@@ -20344,6 +26695,8 @@ snapshots:
safer-buffer@2.1.2: {}
+ sax@1.4.3: {}
+
saxes@5.0.1:
dependencies:
xmlchars: 2.2.0
@@ -20354,6 +26707,12 @@ snapshots:
scheduler@0.27.0: {}
+ schema-utils@2.7.0:
+ dependencies:
+ '@types/json-schema': 7.0.15
+ ajv: 6.12.6
+ ajv-keywords: 3.5.2(ajv@6.12.6)
+
schema-utils@3.3.0:
dependencies:
'@types/json-schema': 7.0.15
@@ -20369,6 +26728,13 @@ snapshots:
screenfull@5.2.0: {}
+ search-insights@2.17.3: {}
+
+ section-matter@1.0.0:
+ dependencies:
+ extend-shallow: 2.0.1
+ kind-of: 6.0.3
+
secure-json-parse@2.7.0: {}
secure-json-parse@4.1.0: {}
@@ -20382,6 +26748,17 @@ snapshots:
parseley: 0.12.1
optional: true
+ select-hose@2.0.0: {}
+
+ selfsigned@2.4.1:
+ dependencies:
+ '@types/node-forge': 1.3.14
+ node-forge: 1.3.1
+
+ semver-diff@4.0.0:
+ dependencies:
+ semver: 7.7.3
+
semver-regex@4.0.5: {}
semver-truncate@3.0.0:
@@ -20394,6 +26771,24 @@ snapshots:
semver@7.7.3: {}
+ send@0.19.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
+
send@1.2.0:
dependencies:
debug: 4.4.3(supports-color@10.2.2)
@@ -20416,6 +26811,37 @@ snapshots:
dependencies:
randombytes: 2.1.0
+ serve-handler@6.1.6:
+ dependencies:
+ bytes: 3.0.0
+ content-disposition: 0.5.2
+ mime-types: 2.1.18
+ minimatch: 3.1.2
+ path-is-inside: 1.0.2
+ path-to-regexp: 3.3.0
+ range-parser: 1.2.0
+
+ serve-index@1.9.1:
+ dependencies:
+ accepts: 1.3.8
+ batch: 0.6.1
+ debug: 2.6.9
+ escape-html: 1.0.3
+ http-errors: 1.6.3
+ mime-types: 2.1.35
+ parseurl: 1.3.3
+ transitivePeerDependencies:
+ - supports-color
+
+ serve-static@1.16.2:
+ dependencies:
+ encodeurl: 2.0.0
+ escape-html: 1.0.3
+ parseurl: 1.3.3
+ send: 0.19.0
+ transitivePeerDependencies:
+ - supports-color
+
serve-static@2.2.0:
dependencies:
encodeurl: 2.0.0
@@ -20453,6 +26879,8 @@ snapshots:
setimmediate@1.0.5: {}
+ setprototypeof@1.1.0: {}
+
setprototypeof@1.2.0: {}
sha.js@2.4.12:
@@ -20461,6 +26889,12 @@ snapshots:
safe-buffer: 5.2.1
to-buffer: 1.2.2
+ shallow-clone@3.0.1:
+ dependencies:
+ kind-of: 6.0.3
+
+ shallowequal@1.1.0: {}
+
sharp@0.34.5:
dependencies:
'@img/colour': 1.0.0
@@ -20506,6 +26940,14 @@ snapshots:
shebang-regex@3.0.0: {}
+ shell-quote@1.8.3: {}
+
+ shelljs@0.8.5:
+ dependencies:
+ glob: 7.2.3
+ interpret: 1.4.0
+ rechoir: 0.6.2
+
shimmer@1.2.1: {}
side-channel-list@1.0.0:
@@ -20540,8 +26982,29 @@ snapshots:
signal-exit@4.1.0: {}
+ sirv@2.0.4:
+ dependencies:
+ '@polka/url': 1.0.0-next.29
+ mrmime: 2.0.1
+ totalist: 3.0.1
+
+ sisteransi@1.0.5: {}
+
+ sitemap@7.1.2:
+ dependencies:
+ '@types/node': 17.0.45
+ '@types/sax': 1.2.7
+ arg: 5.0.2
+ sax: 1.4.3
+
+ skin-tone@2.0.0:
+ dependencies:
+ unicode-emoji-modifier-base: 1.0.0
+
slash@3.0.0: {}
+ slash@4.0.0: {}
+
slick@1.12.2:
optional: true
@@ -20550,6 +27013,12 @@ snapshots:
dot-case: 3.0.4
tslib: 2.8.1
+ sockjs@0.3.24:
+ dependencies:
+ faye-websocket: 0.11.4
+ uuid: 8.3.2
+ websocket-driver: 0.7.4
+
sonic-boom@4.2.0:
dependencies:
atomic-sleep: 1.0.0
@@ -20559,6 +27028,8 @@ snapshots:
react: 19.2.0
react-dom: 19.2.0(react@19.2.0)
+ sort-css-media-queries@2.2.0: {}
+
sort-keys-length@1.0.1:
dependencies:
sort-keys: 1.1.2
@@ -20593,6 +27064,29 @@ snapshots:
dependencies:
whatwg-url: 7.1.0
+ space-separated-tokens@2.0.2: {}
+
+ spdy-transport@3.0.0:
+ dependencies:
+ debug: 4.4.3(supports-color@10.2.2)
+ detect-node: 2.1.0
+ hpack.js: 2.1.6
+ obuf: 1.1.2
+ readable-stream: 3.6.2
+ wbuf: 1.7.3
+ transitivePeerDependencies:
+ - supports-color
+
+ spdy@4.0.2:
+ dependencies:
+ debug: 4.4.3(supports-color@10.2.2)
+ handle-thing: 2.0.1
+ http-deceiver: 1.2.7
+ select-hose: 2.0.0
+ spdy-transport: 3.0.0
+ transitivePeerDependencies:
+ - supports-color
+
split2@4.2.0: {}
sprintf-js@1.0.3: {}
@@ -20601,6 +27095,8 @@ snapshots:
sqlstring@2.3.3: {}
+ srcset@4.0.0: {}
+
stack-chain@1.3.7: {}
stack-generator@2.0.10:
@@ -20624,10 +27120,14 @@ snapshots:
stack-generator: 2.0.10
stacktrace-gps: 3.1.2
+ statuses@1.5.0: {}
+
statuses@2.0.1: {}
statuses@2.0.2: {}
+ std-env@3.10.0: {}
+
stop-iteration-iterator@1.1.0:
dependencies:
es-errors: 1.3.0
@@ -20719,6 +27219,17 @@ snapshots:
dependencies:
safe-buffer: 5.2.1
+ stringify-entities@4.0.4:
+ dependencies:
+ character-entities-html4: 2.1.0
+ character-entities-legacy: 3.0.0
+
+ stringify-object@3.3.0:
+ dependencies:
+ get-own-enumerable-property-symbols: 3.0.2
+ is-obj: 1.0.1
+ is-regexp: 1.0.0
+
strip-ansi@6.0.1:
dependencies:
ansi-regex: 5.0.1
@@ -20727,6 +27238,8 @@ snapshots:
dependencies:
ansi-regex: 6.2.2
+ strip-bom-string@1.0.0: {}
+
strip-bom@3.0.0: {}
strip-bom@4.0.0: {}
@@ -20745,8 +27258,7 @@ snapshots:
dependencies:
min-indent: 1.0.1
- strip-json-comments@2.0.1:
- optional: true
+ strip-json-comments@2.0.1: {}
strip-json-comments@3.1.1: {}
@@ -20758,6 +27270,14 @@ snapshots:
dependencies:
'@tokenizer/token': 0.3.0
+ style-to-js@1.1.19:
+ dependencies:
+ style-to-object: 1.0.12
+
+ style-to-object@1.0.12:
+ dependencies:
+ inline-style-parser: 0.2.6
+
styled-jsx@5.1.6(@babel/core@7.28.5)(babel-plugin-macros@3.1.0)(react@19.2.0):
dependencies:
client-only: 0.0.1
@@ -20766,6 +27286,12 @@ snapshots:
'@babel/core': 7.28.5
babel-plugin-macros: 3.1.0
+ stylehacks@6.1.1(postcss@8.5.6):
+ dependencies:
+ browserslist: 4.27.0
+ postcss: 8.5.6
+ postcss-selector-parser: 6.1.2
+
stylis@4.2.0: {}
stylis@4.3.6: {}
@@ -20841,11 +27367,11 @@ snapshots:
tailwind-merge@3.4.0: {}
- tailwind-scrollbar-hide@4.0.0(tailwindcss@3.4.18):
+ tailwind-scrollbar-hide@4.0.0(tailwindcss@3.4.18(yaml@2.8.1)):
dependencies:
- tailwindcss: 3.4.18
+ tailwindcss: 3.4.18(yaml@2.8.1)
- tailwindcss@3.4.18:
+ tailwindcss@3.4.18(yaml@2.8.1):
dependencies:
'@alloc/quick-lru': 5.2.0
arg: 5.0.2
@@ -20864,7 +27390,7 @@ snapshots:
postcss: 8.5.6
postcss-import: 15.1.0(postcss@8.5.6)
postcss-js: 4.1.0(postcss@8.5.6)
- postcss-load-config: 6.0.1(jiti@1.21.7)(postcss@8.5.6)
+ postcss-load-config: 6.0.1(jiti@1.21.7)(postcss@8.5.6)(yaml@2.8.1)
postcss-nested: 6.2.0(postcss@8.5.6)
postcss-selector-parser: 6.1.2
resolve: 1.22.11
@@ -20873,6 +27399,8 @@ snapshots:
- tsx
- yaml
+ tapable@1.1.3: {}
+
tapable@2.3.0: {}
tar-stream@2.2.0:
@@ -20907,6 +27435,15 @@ snapshots:
optionalDependencies:
'@swc/core': 1.13.5(@swc/helpers@0.5.17)
+ terser-webpack-plugin@5.3.14(webpack@5.100.2):
+ dependencies:
+ '@jridgewell/trace-mapping': 0.3.31
+ jest-worker: 27.5.1
+ schema-utils: 4.3.3
+ serialize-javascript: 6.0.2
+ terser: 5.44.1
+ webpack: 5.100.2
+
terser@5.44.1:
dependencies:
'@jridgewell/source-map': 0.3.11
@@ -20926,6 +27463,8 @@ snapshots:
transitivePeerDependencies:
- react-native-b4a
+ text-table@0.2.0: {}
+
thenify-all@1.6.0:
dependencies:
thenify: 3.3.1
@@ -20942,8 +27481,12 @@ snapshots:
through@2.3.8: {}
+ thunky@1.1.0: {}
+
tiny-invariant@1.3.3: {}
+ tiny-warning@1.0.3: {}
+
tinyexec@0.3.2: {}
tinyglobby@0.2.15:
@@ -20989,6 +27532,10 @@ snapshots:
'@tokenizer/token': 0.3.0
ieee754: 1.2.1
+ toml@3.0.0: {}
+
+ totalist@3.0.1: {}
+
tough-cookie@5.1.2:
dependencies:
tldts: 6.1.86
@@ -21008,6 +27555,10 @@ snapshots:
tree-kill@1.2.2: {}
+ trim-lines@3.0.1: {}
+
+ trough@2.2.0: {}
+
ts-api-utils@2.1.0(typescript@5.9.3):
dependencies:
typescript: 5.9.3
@@ -21090,7 +27641,7 @@ snapshots:
tslib@2.8.1: {}
- tsup@8.5.0(@swc/core@1.13.5(@swc/helpers@0.5.17))(jiti@1.21.7)(postcss@8.5.6)(typescript@5.9.3):
+ tsup@8.5.0(@swc/core@1.13.5(@swc/helpers@0.5.17))(jiti@1.21.7)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.1):
dependencies:
bundle-require: 5.1.0(esbuild@0.25.12)
cac: 6.7.14
@@ -21101,7 +27652,7 @@ snapshots:
fix-dts-default-cjs-exports: 1.0.1
joycon: 3.1.1
picocolors: 1.1.1
- postcss-load-config: 6.0.1(jiti@1.21.7)(postcss@8.5.6)
+ postcss-load-config: 6.0.1(jiti@1.21.7)(postcss@8.5.6)(yaml@2.8.1)
resolve-from: 5.0.0
rollup: 4.52.5
source-map: 0.8.0-beta.0
@@ -21156,6 +27707,10 @@ snapshots:
type-fest@0.21.3: {}
+ type-fest@1.4.0: {}
+
+ type-fest@2.19.0: {}
+
type-fest@4.41.0: {}
type-is@1.6.18:
@@ -21202,6 +27757,10 @@ snapshots:
possible-typed-array-names: 1.1.0
reflect.getprototypeof: 1.0.10
+ typedarray-to-buffer@3.1.5:
+ dependencies:
+ is-typedarray: 1.0.0
+
typedarray@0.0.6: {}
typeorm-naming-strategies@4.1.0(typeorm@0.3.27(babel-plugin-macros@3.1.0)(mysql2@3.15.3)(reflect-metadata@0.2.2)(ts-node@10.9.2(@swc/core@1.13.5(@swc/helpers@0.5.17))(@types/node@22.18.13)(typescript@5.9.3))):
@@ -21285,6 +27844,8 @@ snapshots:
unicode-canonical-property-names-ecmascript@2.0.1: {}
+ unicode-emoji-modifier-base@1.0.0: {}
+
unicode-match-property-ecmascript@2.0.0:
dependencies:
unicode-canonical-property-names-ecmascript: 2.0.1
@@ -21294,6 +27855,47 @@ snapshots:
unicode-property-aliases-ecmascript@2.2.0: {}
+ unified@11.0.5:
+ dependencies:
+ '@types/unist': 3.0.3
+ bail: 2.0.2
+ devlop: 1.1.0
+ extend: 3.0.2
+ is-plain-obj: 4.1.0
+ trough: 2.2.0
+ vfile: 6.0.3
+
+ unique-string@3.0.0:
+ dependencies:
+ crypto-random-string: 4.0.0
+
+ unist-util-is@6.0.1:
+ dependencies:
+ '@types/unist': 3.0.3
+
+ unist-util-position-from-estree@2.0.0:
+ dependencies:
+ '@types/unist': 3.0.3
+
+ unist-util-position@5.0.0:
+ dependencies:
+ '@types/unist': 3.0.3
+
+ unist-util-stringify-position@4.0.0:
+ dependencies:
+ '@types/unist': 3.0.3
+
+ unist-util-visit-parents@6.0.2:
+ dependencies:
+ '@types/unist': 3.0.3
+ unist-util-is: 6.0.1
+
+ unist-util-visit@5.0.0:
+ dependencies:
+ '@types/unist': 3.0.3
+ unist-util-is: 6.0.1
+ unist-util-visit-parents: 6.0.2
+
universalify@2.0.1: {}
unpipe@1.0.0: {}
@@ -21341,6 +27943,23 @@ snapshots:
escalade: 3.2.0
picocolors: 1.1.1
+ update-notifier@6.0.2:
+ dependencies:
+ boxen: 7.1.1
+ chalk: 5.6.2
+ configstore: 6.0.0
+ has-yarn: 3.0.0
+ import-lazy: 4.0.0
+ is-ci: 3.0.1
+ is-installed-globally: 0.4.0
+ is-npm: 6.1.0
+ is-yarn-global: 0.4.1
+ latest-version: 7.0.0
+ pupa: 3.3.0
+ semver: 7.7.3
+ semver-diff: 4.0.0
+ xdg-basedir: 5.1.0
+
upper-case@1.1.3:
optional: true
@@ -21350,6 +27969,15 @@ snapshots:
dependencies:
punycode: 2.3.1
+ url-loader@4.1.1(file-loader@6.2.0(webpack@5.100.2))(webpack@5.100.2):
+ dependencies:
+ loader-utils: 2.0.4
+ mime-types: 2.1.35
+ schema-utils: 3.3.0
+ webpack: 5.100.2
+ optionalDependencies:
+ file-loader: 6.2.0(webpack@5.100.2)
+
use-callback-ref@1.3.3(@types/react@19.2.2)(react@19.2.0):
dependencies:
react: 19.2.0
@@ -21377,6 +28005,10 @@ snapshots:
util-deprecate@1.0.2: {}
+ utila@0.4.0: {}
+
+ utility-types@3.11.0: {}
+
utils-merge@1.0.1: {}
uuid@11.1.0: {}
@@ -21401,8 +28033,25 @@ snapshots:
validator@13.15.20: {}
+ value-equal@1.0.1: {}
+
vary@1.1.2: {}
+ vfile-location@5.0.3:
+ dependencies:
+ '@types/unist': 3.0.3
+ vfile: 6.0.3
+
+ vfile-message@4.0.3:
+ dependencies:
+ '@types/unist': 3.0.3
+ unist-util-stringify-position: 4.0.0
+
+ vfile@6.0.3:
+ dependencies:
+ '@types/unist': 3.0.3
+ vfile-message: 4.0.3
+
victory-vendor@37.3.6:
dependencies:
'@types/d3-array': 3.2.2
@@ -21435,10 +28084,16 @@ snapshots:
glob-to-regexp: 0.4.1
graceful-fs: 4.2.11
+ wbuf@1.7.3:
+ dependencies:
+ minimalistic-assert: 1.0.1
+
wcwidth@1.0.1:
dependencies:
defaults: 1.0.4
+ web-namespaces@2.0.1: {}
+
web-resource-inliner@6.0.1:
dependencies:
ansi-colors: 4.1.3
@@ -21458,10 +28113,121 @@ snapshots:
webidl-conversions@7.0.0: {}
+ webpack-bundle-analyzer@4.10.2:
+ dependencies:
+ '@discoveryjs/json-ext': 0.5.7
+ acorn: 8.15.0
+ acorn-walk: 8.3.4
+ commander: 7.2.0
+ debounce: 1.2.1
+ escape-string-regexp: 4.0.0
+ gzip-size: 6.0.0
+ html-escaper: 2.0.2
+ opener: 1.5.2
+ picocolors: 1.1.1
+ sirv: 2.0.4
+ ws: 7.5.10
+ transitivePeerDependencies:
+ - bufferutil
+ - utf-8-validate
+
+ webpack-dev-middleware@5.3.4(webpack@5.100.2):
+ dependencies:
+ colorette: 2.0.20
+ memfs: 3.5.3
+ mime-types: 2.1.35
+ range-parser: 1.2.1
+ schema-utils: 4.3.3
+ webpack: 5.100.2
+
+ webpack-dev-server@4.15.2(webpack@5.100.2):
+ dependencies:
+ '@types/bonjour': 3.5.13
+ '@types/connect-history-api-fallback': 1.5.4
+ '@types/express': 4.17.25
+ '@types/serve-index': 1.9.4
+ '@types/serve-static': 1.15.10
+ '@types/sockjs': 0.3.36
+ '@types/ws': 8.18.1
+ ansi-html-community: 0.0.8
+ bonjour-service: 1.3.0
+ chokidar: 3.6.0
+ colorette: 2.0.20
+ compression: 1.8.1
+ connect-history-api-fallback: 2.0.0
+ default-gateway: 6.0.3
+ express: 4.21.2
+ graceful-fs: 4.2.11
+ html-entities: 2.6.0
+ http-proxy-middleware: 2.0.9(@types/express@4.17.25)
+ ipaddr.js: 2.2.0
+ launch-editor: 2.12.0
+ open: 8.4.2
+ p-retry: 4.6.2
+ rimraf: 3.0.2
+ schema-utils: 4.3.3
+ selfsigned: 2.4.1
+ serve-index: 1.9.1
+ sockjs: 0.3.24
+ spdy: 4.0.2
+ webpack-dev-middleware: 5.3.4(webpack@5.100.2)
+ ws: 8.18.3
+ optionalDependencies:
+ webpack: 5.100.2
+ transitivePeerDependencies:
+ - bufferutil
+ - debug
+ - supports-color
+ - utf-8-validate
+
+ webpack-merge@5.10.0:
+ dependencies:
+ clone-deep: 4.0.1
+ flat: 5.0.2
+ wildcard: 2.0.1
+
+ webpack-merge@6.0.1:
+ dependencies:
+ clone-deep: 4.0.1
+ flat: 5.0.2
+ wildcard: 2.0.1
+
webpack-node-externals@3.0.0: {}
webpack-sources@3.3.3: {}
+ webpack@5.100.2:
+ dependencies:
+ '@types/eslint-scope': 3.7.7
+ '@types/estree': 1.0.8
+ '@types/json-schema': 7.0.15
+ '@webassemblyjs/ast': 1.14.1
+ '@webassemblyjs/wasm-edit': 1.14.1
+ '@webassemblyjs/wasm-parser': 1.14.1
+ acorn: 8.15.0
+ acorn-import-phases: 1.0.4(acorn@8.15.0)
+ browserslist: 4.27.0
+ chrome-trace-event: 1.0.4
+ enhanced-resolve: 5.18.3
+ es-module-lexer: 1.7.0
+ 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.1
+ mime-types: 2.1.35
+ neo-async: 2.6.2
+ schema-utils: 4.3.3
+ tapable: 2.3.0
+ terser-webpack-plugin: 5.3.14(webpack@5.100.2)
+ watchpack: 2.4.4
+ webpack-sources: 3.3.3
+ transitivePeerDependencies:
+ - '@swc/core'
+ - esbuild
+ - uglify-js
+
webpack@5.100.2(@swc/core@1.13.5(@swc/helpers@0.5.17)):
dependencies:
'@types/eslint-scope': 3.7.7
@@ -21494,6 +28260,26 @@ snapshots:
- esbuild
- uglify-js
+ webpackbar@6.0.1(webpack@5.100.2):
+ dependencies:
+ ansi-escapes: 4.3.2
+ chalk: 4.1.2
+ consola: 3.4.2
+ figures: 3.2.0
+ markdown-table: 2.0.0
+ pretty-time: 1.1.0
+ std-env: 3.10.0
+ webpack: 5.100.2
+ wrap-ansi: 7.0.0
+
+ websocket-driver@0.7.4:
+ dependencies:
+ http-parser-js: 0.5.10
+ safe-buffer: 5.2.1
+ websocket-extensions: 0.1.4
+
+ websocket-extensions@0.1.4: {}
+
whatwg-encoding@3.1.1:
dependencies:
iconv-lite: 0.6.3
@@ -21561,7 +28347,6 @@ snapshots:
which@1.3.1:
dependencies:
isexe: 2.0.0
- optional: true
which@2.0.2:
dependencies:
@@ -21571,6 +28356,12 @@ snapshots:
dependencies:
string-width: 4.2.3
+ widest-line@4.0.1:
+ dependencies:
+ string-width: 5.1.2
+
+ wildcard@2.0.1: {}
+
with@7.0.2:
dependencies:
'@babel/parser': 7.28.5
@@ -21603,13 +28394,28 @@ snapshots:
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@5.0.1:
dependencies:
imurmurhash: 0.1.4
signal-exit: 4.1.0
+ ws@7.5.10: {}
+
ws@8.18.3: {}
+ xdg-basedir@5.1.0: {}
+
+ xml-js@1.6.11:
+ dependencies:
+ sax: 1.4.3
+
xml-name-validator@5.0.0: {}
xmlchars@2.2.0: {}
@@ -21628,6 +28434,8 @@ snapshots:
yaml@1.10.2: {}
+ yaml@2.8.1: {}
+
yargs-parser@21.1.1: {}
yargs@17.7.2:
@@ -21649,6 +28457,8 @@ snapshots:
yocto-queue@0.1.0: {}
+ yocto-queue@1.2.1: {}
+
yoctocolors-cjs@2.1.3: {}
zip-stream@4.1.1:
@@ -21675,3 +28485,5 @@ snapshots:
immer: 10.2.0
react: 19.2.0
use-sync-external-store: 1.6.0(react@19.2.0)
+
+ zwitch@2.0.4: {}
diff --git a/turbo.json b/turbo.json
index 89fb2a2a7..771ce3c47 100644
--- a/turbo.json
+++ b/turbo.json
@@ -60,16 +60,14 @@
"SMTP_USERNAME",
"SMTP_PASSWORD",
"SMTP_SENDER",
- "SMTP_BASE_URL",
"SMTP_TLS",
"SMTP_CIPHER_SPEC",
"SMTP_OPPORTUNISTIC_TLS",
"AUTO_MIGRATION",
"MASTER_API_KEY",
- "BASE_URL",
"SKIP_ENV_VALIDATION",
"PORT",
- "ENABLE_AUTO_FEEDBACK_DELETION",
+ "AUTO_FEEDBACK_DELETION_ENABLED",
"AUTO_FEEDBACK_DELETION_PERIOD_DAYS"
],
"globalPassThroughEnv": ["NODE_ENV", "CI", "npm_lifecycle_event"]