├── .github └── workflows │ └── test-and-build.yml ├── .gitignore ├── .vscode └── settings.json ├── README.md ├── apps └── nextjs │ ├── .env.default │ ├── README.md │ ├── app │ ├── layout.tsx │ └── page.tsx │ ├── core │ └── bootstrap.ts │ ├── data │ └── index.ts │ ├── eslint.config.js │ ├── next-env.d.ts │ ├── next.config.js │ ├── package.json │ └── tsconfig.json ├── configs ├── config-eslint │ ├── base.js │ ├── next.js │ ├── package.json │ └── react-internal.js └── config-typescript │ ├── base.json │ ├── nextjs.json │ └── package.json ├── docker-compose.yml ├── migrations └── drizzle │ ├── 0000_broad_magneto.sql │ └── meta │ ├── 0000_snapshot.json │ └── _journal.json ├── package.json ├── packages ├── application │ └── .gitkeep ├── database-drizzle │ ├── drizzle.config.ts │ ├── eslint.config.mjs │ ├── package.json │ ├── src │ │ ├── database.ts │ │ ├── index.ts │ │ ├── migrate.ts │ │ ├── schema.ts │ │ └── seed.ts │ └── tsconfig.json ├── domain │ └── .gitkeep ├── infrastructure │ └── .gitkeep └── shared │ └── .gitkeep ├── pnpm-lock.yaml ├── pnpm-workspace.yaml ├── tools └── db │ ├── .env.default │ ├── eslint.config.js │ ├── package.json │ ├── src │ ├── migrate.ts │ ├── seed.ts │ └── utils.ts │ └── tsconfig.json └── turbo.json /.github/workflows/test-and-build.yml: -------------------------------------------------------------------------------- 1 | name: Test and Build 2 | 3 | on: 4 | push: 5 | branches: 6 | - main 7 | pull_request: 8 | branches: 9 | - main 10 | 11 | env: 12 | NODE_VERSION: 20.18.x 13 | # PNPM_VERSION: 10.5.x 14 | 15 | jobs: 16 | test-and-build: 17 | runs-on: ubuntu-latest 18 | 19 | steps: 20 | - name: Checkout repository 21 | uses: actions/checkout@v4 22 | 23 | - name: Install pnpm 24 | uses: pnpm/action-setup@v4 25 | # with: 26 | # version: ${{ env.PNPM_VERSION }} 27 | 28 | - name: Use Node.js ${{ env.NODE_VERSION }} 29 | uses: actions/setup-node@v4 30 | with: 31 | node-version: ${{ env.NODE_VERSION }} 32 | cache: 'pnpm' 33 | 34 | - name: Install dependencies 35 | run: pnpm install --frozen-lockfile 36 | 37 | - name: Lint 38 | run: pnpm lint 39 | 40 | # - name: Run tests 41 | # run: pnpm test 42 | 43 | - name: Prepare .env file 44 | run: cp apps/nextjs/.env.default apps/nextjs/.env 45 | 46 | # Ignore build until fix server action build in Next.js 47 | # - name: Build project 48 | # run: pnpm build 49 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | node_modules 5 | .pnp 6 | .pnp.js 7 | 8 | # testing 9 | coverage 10 | 11 | # next.js 12 | .next/ 13 | out/ 14 | build 15 | 16 | # misc 17 | .DS_Store 18 | *.pem 19 | 20 | # debug 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | 25 | # local env files 26 | .env.local 27 | .env.development.local 28 | .env.test.local 29 | .env.production.local 30 | !packages/database/.env 31 | 32 | # turbo 33 | .turbo 34 | 35 | 36 | dist 37 | generated 38 | 39 | .env -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "eslint.workingDirectories": [ 3 | { 4 | "mode": "auto" 5 | } 6 | ] 7 | } 8 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # TypeScript Clean Architecture 2 | 3 | [![Test and Build](https://github.com/thaitype/typescript-clean-architecture/actions/workflows/test-and-build.yml/badge.svg)](https://github.com/thaitype/typescript-clean-architecture/actions/workflows/test-and-build.yml) 4 | 5 | > In progess! 6 | 7 | This is turborepo starter with Drizzle ORM and PostgreSQL pre-configured. 8 | 9 | > [!NOTE] 10 | > This example uses `pnpm` as package manager. 11 | 12 | ## Using this example 13 | 14 | Clone the repository: 15 | 16 | ```sh 17 | git clone https://github.com/htsh-tsyk/turbo-drizzle.git 18 | ``` 19 | 20 | ## What's inside? 21 | 22 | This Turborepo includes the following packages/apps: 23 | 24 | ### Apps and Packages 25 | 26 | - `web`: another [Next.js](https://nextjs.org/) app 27 | - `@repo/database`: Drizzle ORM wrapper to manage & access your database 28 | - `@repo/ui`: a stub React component library shared by a `web` application 29 | - `@repo/eslint-config`: `eslint` configurations (includes `eslint-config-next` and `eslint-config-prettier`) 30 | - `@repo/typescript-config`: `tsconfig.json`s used throughout the monorepo 31 | 32 | Each package/app is 100% [TypeScript](https://www.typescriptlang.org/). 33 | 34 | ### Utilities 35 | 36 | This Turborepo has some additional tools already setup for you: 37 | 38 | - [TypeScript](https://www.typescriptlang.org/) for static type checking 39 | - [ESLint](https://eslint.org/) for code linting 40 | - [Prettier](https://prettier.io) for code formatting 41 | - [Drizzle for database ORM](https://orm.drizzle.team/) for database ORM 42 | 43 | ### Build 44 | 45 | To build all apps and packages, run the following command: 46 | 47 | ``` 48 | cd turbo-drizzle 49 | cp apps/web/.env.default apps/web/.env 50 | pnpm install 51 | pnpm build 52 | ``` 53 | 54 | ### Database 55 | 56 | We use [Drizzle ORM](https://orm.drizzle.team/) to manage & access our database. As such you will need a database for this project, either locally or hosted in the cloud. 57 | 58 | To make this process easier, we offer a [`docker-compose.yml`](https://docs.docker.com/compose/) file to deploy a PostgreSQL server locally with a new database named `repo_development` (To change this update the `POSTGRES_DB` environment variable in the `docker-compose.yml` file): 59 | 60 | ```bash 61 | cd turbo-drizzle 62 | docker-compose up -d 63 | ``` 64 | 65 | Once deployed you will need to copy the `.env.default` file to `.env` in order for Drizzle to have a `DATABASE_URL` environment variable to access. 66 | 67 | ```bash 68 | cp apps/web/.env.default apps/web/.env 69 | ``` 70 | 71 | If you added a custom database name, or use a cloud based database, you will need to update the `DATABASE_URL` in your `.env` accordingly. 72 | 73 | Once deployed & up & running, you will need to create & deploy migrations to your database to add the necessary tables. This can be done using [Drizzle Migrate](https://orm.drizzle.team/docs/migrations): 74 | 75 | in `database` package: (command `drizzle-kit generate`) 76 | 77 | ``` 78 | pnpm generate 79 | ``` 80 | 81 | ```bash 82 | pnpm turbo db:migrate 83 | ``` 84 | 85 | An optional additional step is to seed some initial or fake data to your database. 86 | 87 | To do this update check the seed script located in `packages/database/scripts/seed.ts` & add or update any users you wish to seed to the database. 88 | 89 | Once edited run the following command to run tell Drizzle to run the seed script defined in the Drizzle configuration: 90 | 91 | ```bash 92 | pnpm turbo db:seed 93 | ``` 94 | 95 | ### Develop 96 | 97 | To develop all apps and packages, run the following command: 98 | 99 | ```shell 100 | pnpm dev 101 | ``` 102 | 103 | ## Useful Links 104 | 105 | Learn more about the power of Turborepo: 106 | 107 | - [Tasks](https://turbo.build/repo/docs/core-concepts/monorepos/running-tasks) 108 | - [Caching](https://turbo.build/repo/docs/core-concepts/caching) 109 | - [Remote Caching](https://turbo.build/repo/docs/core-concepts/remote-caching) 110 | - [Filtering](https://turbo.build/repo/docs/core-concepts/monorepos/filtering) 111 | - [Configuration Options](https://turbo.build/repo/docs/reference/configuration) 112 | - [CLI Usage](https://turbo.build/repo/docs/reference/command-line-reference) 113 | 114 | ## References 115 | - Drizzle Turbo Repo Template: https://github.com/htsh-tsyk/turbo-drizzle/tree/main 116 | - Next.js Clean Architecture: https://github.com/nikolovlazar/nextjs-clean-architecture/tree/main 117 | - Next.js 15 on turborepo template: https://github.com/vercel/turborepo/tree/c59da312df134cc1aaf7c269bc3cd0b78c073b07/examples/basic -------------------------------------------------------------------------------- /apps/nextjs/.env.default: -------------------------------------------------------------------------------- 1 | DATABASE_URL="postgresql://postgres:postgres@localhost:5432/repo_development" 2 | -------------------------------------------------------------------------------- /apps/nextjs/README.md: -------------------------------------------------------------------------------- 1 | ## Getting Started 2 | 3 | First, run the development server: 4 | 5 | ```bash 6 | yarn dev 7 | ``` 8 | 9 | Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. 10 | 11 | You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file. 12 | 13 | To create [API routes](https://nextjs.org/docs/app/building-your-application/routing/router-handlers) add an `api/` directory to the `app/` directory with a `route.ts` file. For individual endpoints, create a subfolder in the `api` directory, like `api/hello/route.ts` would map to [http://localhost:3000/api/hello](http://localhost:3000/api/hello). 14 | 15 | ## Learn More 16 | 17 | To learn more about Next.js, take a look at the following resources: 18 | 19 | - [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. 20 | - [Learn Next.js](https://nextjs.org/learn/foundations/about-nextjs) - an interactive Next.js tutorial. 21 | 22 | You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js/) - your feedback and contributions are welcome! 23 | 24 | ## Deploy on Vercel 25 | 26 | The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_source=github.com&utm_medium=referral&utm_campaign=turborepo-readme) from the creators of Next.js. 27 | 28 | Check out our [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details. 29 | -------------------------------------------------------------------------------- /apps/nextjs/app/layout.tsx: -------------------------------------------------------------------------------- 1 | export default function RootLayout({ 2 | children, 3 | }: { 4 | children: React.ReactNode; 5 | }) { 6 | return ( 7 | 8 | {children} 9 | 10 | ); 11 | } 12 | -------------------------------------------------------------------------------- /apps/nextjs/app/page.tsx: -------------------------------------------------------------------------------- 1 | import { fetchUsers } from "../data"; 2 | 3 | export default async function IndexPage() { 4 | const users = await fetchUsers(); 5 | 6 | return ( 7 |
8 |

User List:

9 | {/*
{JSON.stringify(users, null, 2)}
*/} 10 |
{JSON.stringify(users, null, 2)}
11 |
12 | ); 13 | } 14 | -------------------------------------------------------------------------------- /apps/nextjs/core/bootstrap.ts: -------------------------------------------------------------------------------- 1 | import 'dotenv/config'; 2 | 3 | import { getDbContext, DbContextWithSchema } from "@acme/database-drizzle"; 4 | import { getEnvVariable } from '../scripts/utils'; 5 | 6 | export const dbContext: DbContextWithSchema = getDbContext(getEnvVariable("DATABASE_URL")); 7 | 8 | -------------------------------------------------------------------------------- /apps/nextjs/data/index.ts: -------------------------------------------------------------------------------- 1 | "use server"; 2 | 3 | import { dbContext } from '../core/bootstrap'; 4 | 5 | export const fetchUsers = async () => { 6 | return dbContext.db.query.users.findMany(); 7 | }; 8 | -------------------------------------------------------------------------------- /apps/nextjs/eslint.config.js: -------------------------------------------------------------------------------- 1 | import { nextJsConfig } from "@acme/eslint-config/next-js"; 2 | 3 | /** @type {import("eslint").Linter.Config} */ 4 | export default nextJsConfig; 5 | -------------------------------------------------------------------------------- /apps/nextjs/next-env.d.ts: -------------------------------------------------------------------------------- 1 | /// 2 | /// 3 | 4 | // NOTE: This file should not be edited 5 | // see https://nextjs.org/docs/app/api-reference/config/typescript for more information. 6 | -------------------------------------------------------------------------------- /apps/nextjs/next.config.js: -------------------------------------------------------------------------------- 1 | /** @type {import('next').NextConfig} */ 2 | const nextConfig = {}; 3 | 4 | export default nextConfig; 5 | -------------------------------------------------------------------------------- /apps/nextjs/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "private": true, 3 | "name": "web", 4 | "type": "module", 5 | "version": "1.0.0", 6 | "scripts": { 7 | "dev": "next dev --turbopack --port 3000", 8 | "build": "next build", 9 | "start": "next start", 10 | "lint": "next lint --max-warnings 0", 11 | "db:seed": "tsx scripts/seed.ts", 12 | "db:migrate": "tsx scripts/migrate.ts" 13 | }, 14 | "dependencies": { 15 | "dotenv": "^16.4.7", 16 | "next": "^15.2.1", 17 | "react": "^19.0.0", 18 | "react-dom": "^19.0.0" 19 | }, 20 | "devDependencies": { 21 | "@acme/database-drizzle": "workspace:*", 22 | "@acme/eslint-config": "workspace:*", 23 | "@acme/typescript-config": "workspace:*", 24 | "@next/eslint-plugin-next": "^14.1.1", 25 | "@types/node": "^20.11.24", 26 | "@types/react": "19.0.10", 27 | "@types/react-dom": "19.0.4", 28 | "eslint": "^9.21.0", 29 | "tsx": "4.19.1", 30 | "typescript": "5.8.2" 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /apps/nextjs/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@acme/typescript-config/nextjs.json", 3 | "compilerOptions": { "plugins": [{ "name": "next" }] }, 4 | "include": [ 5 | "next-env.d.ts", 6 | "next.config.js", 7 | "**/*.ts", 8 | "**/*.tsx", 9 | ".next/types/**/*.ts" 10 | ], 11 | "exclude": ["node_modules"] 12 | } 13 | -------------------------------------------------------------------------------- /configs/config-eslint/base.js: -------------------------------------------------------------------------------- 1 | import js from "@eslint/js"; 2 | import eslintConfigPrettier from "eslint-config-prettier"; 3 | import turboPlugin from "eslint-plugin-turbo"; 4 | import tseslint from "typescript-eslint"; 5 | import onlyWarn from "eslint-plugin-only-warn"; 6 | 7 | /** 8 | * A shared ESLint configuration for the repository. 9 | * 10 | * @type {import("eslint").Linter.Config[]} 11 | * */ 12 | export const config = [ 13 | js.configs.recommended, 14 | eslintConfigPrettier, 15 | ...tseslint.configs.recommended, 16 | { 17 | plugins: { 18 | turbo: turboPlugin, 19 | }, 20 | rules: { 21 | "turbo/no-undeclared-env-vars": "warn", 22 | }, 23 | }, 24 | { 25 | plugins: { 26 | onlyWarn, 27 | }, 28 | }, 29 | { 30 | ignores: ["dist/**"], 31 | }, 32 | ]; 33 | -------------------------------------------------------------------------------- /configs/config-eslint/next.js: -------------------------------------------------------------------------------- 1 | import js from "@eslint/js"; 2 | import eslintConfigPrettier from "eslint-config-prettier"; 3 | import tseslint from "typescript-eslint"; 4 | import pluginReactHooks from "eslint-plugin-react-hooks"; 5 | import pluginReact from "eslint-plugin-react"; 6 | import globals from "globals"; 7 | import pluginNext from "@next/eslint-plugin-next"; 8 | import { config as baseConfig } from "./base.js"; 9 | 10 | /** 11 | * A custom ESLint configuration for libraries that use Next.js. 12 | * 13 | * @type {import("eslint").Linter.Config[]} 14 | * */ 15 | export const nextJsConfig = [ 16 | ...baseConfig, 17 | js.configs.recommended, 18 | eslintConfigPrettier, 19 | ...tseslint.configs.recommended, 20 | { 21 | ...pluginReact.configs.flat.recommended, 22 | languageOptions: { 23 | ...pluginReact.configs.flat.recommended.languageOptions, 24 | globals: { 25 | ...globals.serviceworker, 26 | }, 27 | }, 28 | }, 29 | { 30 | plugins: { 31 | "@next/next": pluginNext, 32 | }, 33 | rules: { 34 | ...pluginNext.configs.recommended.rules, 35 | ...pluginNext.configs["core-web-vitals"].rules, 36 | }, 37 | }, 38 | { 39 | plugins: { 40 | "react-hooks": pluginReactHooks, 41 | }, 42 | settings: { react: { version: "detect" } }, 43 | rules: { 44 | ...pluginReactHooks.configs.recommended.rules, 45 | // React scope no longer necessary with new JSX transform. 46 | "react/react-in-jsx-scope": "off", 47 | }, 48 | }, 49 | ]; 50 | -------------------------------------------------------------------------------- /configs/config-eslint/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@acme/eslint-config", 3 | "version": "0.0.0", 4 | "type": "module", 5 | "private": true, 6 | "exports": { 7 | "./base": "./base.js", 8 | "./next-js": "./next.js", 9 | "./react-internal": "./react-internal.js" 10 | }, 11 | "devDependencies": { 12 | "@eslint/js": "^9.21.0", 13 | "@next/eslint-plugin-next": "^15.2.1", 14 | "eslint": "^9.21.0", 15 | "eslint-config-prettier": "^10.0.2", 16 | "eslint-plugin-only-warn": "^1.1.0", 17 | "eslint-plugin-react": "^7.37.4", 18 | "eslint-plugin-react-hooks": "^5.2.0", 19 | "eslint-plugin-turbo": "^2.4.4", 20 | "globals": "^16.0.0", 21 | "typescript": "^5.8.2", 22 | "typescript-eslint": "^8.26.0" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /configs/config-eslint/react-internal.js: -------------------------------------------------------------------------------- 1 | import js from "@eslint/js"; 2 | import eslintConfigPrettier from "eslint-config-prettier"; 3 | import tseslint from "typescript-eslint"; 4 | import pluginReactHooks from "eslint-plugin-react-hooks"; 5 | import pluginReact from "eslint-plugin-react"; 6 | import globals from "globals"; 7 | import { config as baseConfig } from "./base.js"; 8 | 9 | /** 10 | * A custom ESLint configuration for libraries that use React. 11 | * 12 | * @type {import("eslint").Linter.Config[]} */ 13 | export const config = [ 14 | ...baseConfig, 15 | js.configs.recommended, 16 | eslintConfigPrettier, 17 | ...tseslint.configs.recommended, 18 | pluginReact.configs.flat.recommended, 19 | { 20 | languageOptions: { 21 | ...pluginReact.configs.flat.recommended.languageOptions, 22 | globals: { 23 | ...globals.serviceworker, 24 | ...globals.browser, 25 | }, 26 | }, 27 | }, 28 | { 29 | plugins: { 30 | "react-hooks": pluginReactHooks, 31 | }, 32 | settings: { react: { version: "detect" } }, 33 | rules: { 34 | ...pluginReactHooks.configs.recommended.rules, 35 | // React scope no longer necessary with new JSX transform. 36 | "react/react-in-jsx-scope": "off", 37 | }, 38 | }, 39 | ]; 40 | -------------------------------------------------------------------------------- /configs/config-typescript/base.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://json.schemastore.org/tsconfig", 3 | "compilerOptions": { 4 | "composite": false, 5 | "declaration": true, 6 | "declarationMap": true, 7 | "esModuleInterop": true, 8 | "forceConsistentCasingInFileNames": true, 9 | "inlineSources": false, 10 | "isolatedModules": true, 11 | "module": "ESNext", 12 | "moduleResolution": "Bundler", 13 | "noUnusedLocals": false, 14 | "noUnusedParameters": false, 15 | "preserveWatchOutput": true, 16 | "skipLibCheck": true, 17 | "strict": true 18 | }, 19 | "exclude": ["node_modules"] 20 | } 21 | -------------------------------------------------------------------------------- /configs/config-typescript/nextjs.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://json.schemastore.org/tsconfig", 3 | "extends": "./base.json", 4 | "compilerOptions": { 5 | "plugins": [{ "name": "next" }], 6 | "target": "es5", 7 | "lib": ["dom", "dom.iterable", "esnext"], 8 | "allowJs": true, 9 | "skipLibCheck": true, 10 | "strict": true, 11 | "forceConsistentCasingInFileNames": true, 12 | "noEmit": true, 13 | "incremental": true, 14 | "esModuleInterop": true, 15 | "module": "esnext", 16 | "resolveJsonModule": true, 17 | "isolatedModules": true, 18 | "jsx": "preserve" 19 | }, 20 | "include": ["src", "next-env.d.ts"], 21 | "exclude": ["node_modules"] 22 | } 23 | -------------------------------------------------------------------------------- /configs/config-typescript/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@acme/typescript-config", 3 | "version": "0.0.0", 4 | "private": true, 5 | "publishConfig": { 6 | "access": "public" 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '3.9' 2 | services: 3 | db: 4 | image: postgres:17-alpine 5 | environment: 6 | POSTGRES_PASSWORD: postgres 7 | POSTGRES_DB: repo_development 8 | volumes: 9 | - data:/var/lib/postgresql/data 10 | ports: 11 | - '5432:5432' 12 | 13 | volumes: 14 | data: 15 | -------------------------------------------------------------------------------- /migrations/drizzle/0000_broad_magneto.sql: -------------------------------------------------------------------------------- 1 | CREATE TABLE "comments" ( 2 | "id" serial PRIMARY KEY NOT NULL, 3 | "text" text, 4 | "author_id" integer NOT NULL, 5 | "post_id" integer NOT NULL 6 | ); 7 | --> statement-breakpoint 8 | CREATE TABLE "posts" ( 9 | "id" serial PRIMARY KEY NOT NULL, 10 | "title" varchar NOT NULL, 11 | "content" text NOT NULL, 12 | "author_id" integer NOT NULL 13 | ); 14 | --> statement-breakpoint 15 | CREATE TABLE "users" ( 16 | "id" serial PRIMARY KEY NOT NULL, 17 | "name" varchar NOT NULL 18 | ); 19 | --> statement-breakpoint 20 | ALTER TABLE "comments" ADD CONSTRAINT "comments_author_id_users_id_fk" FOREIGN KEY ("author_id") REFERENCES "public"."users"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint 21 | ALTER TABLE "comments" ADD CONSTRAINT "comments_post_id_posts_id_fk" FOREIGN KEY ("post_id") REFERENCES "public"."posts"("id") ON DELETE cascade ON UPDATE no action;--> statement-breakpoint 22 | ALTER TABLE "posts" ADD CONSTRAINT "posts_author_id_users_id_fk" FOREIGN KEY ("author_id") REFERENCES "public"."users"("id") ON DELETE cascade ON UPDATE no action; -------------------------------------------------------------------------------- /migrations/drizzle/meta/0000_snapshot.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "0a9b00ad-50af-4536-a655-24ec7bdd9c0a", 3 | "prevId": "00000000-0000-0000-0000-000000000000", 4 | "version": "7", 5 | "dialect": "postgresql", 6 | "tables": { 7 | "public.comments": { 8 | "name": "comments", 9 | "schema": "", 10 | "columns": { 11 | "id": { 12 | "name": "id", 13 | "type": "serial", 14 | "primaryKey": true, 15 | "notNull": true 16 | }, 17 | "text": { 18 | "name": "text", 19 | "type": "text", 20 | "primaryKey": false, 21 | "notNull": false 22 | }, 23 | "author_id": { 24 | "name": "author_id", 25 | "type": "integer", 26 | "primaryKey": false, 27 | "notNull": true 28 | }, 29 | "post_id": { 30 | "name": "post_id", 31 | "type": "integer", 32 | "primaryKey": false, 33 | "notNull": true 34 | } 35 | }, 36 | "indexes": {}, 37 | "foreignKeys": { 38 | "comments_author_id_users_id_fk": { 39 | "name": "comments_author_id_users_id_fk", 40 | "tableFrom": "comments", 41 | "tableTo": "users", 42 | "columnsFrom": [ 43 | "author_id" 44 | ], 45 | "columnsTo": [ 46 | "id" 47 | ], 48 | "onDelete": "cascade", 49 | "onUpdate": "no action" 50 | }, 51 | "comments_post_id_posts_id_fk": { 52 | "name": "comments_post_id_posts_id_fk", 53 | "tableFrom": "comments", 54 | "tableTo": "posts", 55 | "columnsFrom": [ 56 | "post_id" 57 | ], 58 | "columnsTo": [ 59 | "id" 60 | ], 61 | "onDelete": "cascade", 62 | "onUpdate": "no action" 63 | } 64 | }, 65 | "compositePrimaryKeys": {}, 66 | "uniqueConstraints": {}, 67 | "policies": {}, 68 | "checkConstraints": {}, 69 | "isRLSEnabled": false 70 | }, 71 | "public.posts": { 72 | "name": "posts", 73 | "schema": "", 74 | "columns": { 75 | "id": { 76 | "name": "id", 77 | "type": "serial", 78 | "primaryKey": true, 79 | "notNull": true 80 | }, 81 | "title": { 82 | "name": "title", 83 | "type": "varchar", 84 | "primaryKey": false, 85 | "notNull": true 86 | }, 87 | "content": { 88 | "name": "content", 89 | "type": "text", 90 | "primaryKey": false, 91 | "notNull": true 92 | }, 93 | "author_id": { 94 | "name": "author_id", 95 | "type": "integer", 96 | "primaryKey": false, 97 | "notNull": true 98 | } 99 | }, 100 | "indexes": {}, 101 | "foreignKeys": { 102 | "posts_author_id_users_id_fk": { 103 | "name": "posts_author_id_users_id_fk", 104 | "tableFrom": "posts", 105 | "tableTo": "users", 106 | "columnsFrom": [ 107 | "author_id" 108 | ], 109 | "columnsTo": [ 110 | "id" 111 | ], 112 | "onDelete": "cascade", 113 | "onUpdate": "no action" 114 | } 115 | }, 116 | "compositePrimaryKeys": {}, 117 | "uniqueConstraints": {}, 118 | "policies": {}, 119 | "checkConstraints": {}, 120 | "isRLSEnabled": false 121 | }, 122 | "public.users": { 123 | "name": "users", 124 | "schema": "", 125 | "columns": { 126 | "id": { 127 | "name": "id", 128 | "type": "serial", 129 | "primaryKey": true, 130 | "notNull": true 131 | }, 132 | "name": { 133 | "name": "name", 134 | "type": "varchar", 135 | "primaryKey": false, 136 | "notNull": true 137 | } 138 | }, 139 | "indexes": {}, 140 | "foreignKeys": {}, 141 | "compositePrimaryKeys": {}, 142 | "uniqueConstraints": {}, 143 | "policies": {}, 144 | "checkConstraints": {}, 145 | "isRLSEnabled": false 146 | } 147 | }, 148 | "enums": {}, 149 | "schemas": {}, 150 | "sequences": {}, 151 | "roles": {}, 152 | "policies": {}, 153 | "views": {}, 154 | "_meta": { 155 | "columns": {}, 156 | "schemas": {}, 157 | "tables": {} 158 | } 159 | } -------------------------------------------------------------------------------- /migrations/drizzle/meta/_journal.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "7", 3 | "dialect": "postgresql", 4 | "entries": [ 5 | { 6 | "idx": 0, 7 | "version": "7", 8 | "when": 1741518020193, 9 | "tag": "0000_broad_magneto", 10 | "breakpoints": true 11 | } 12 | ] 13 | } -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "private": true, 3 | "scripts": { 4 | "build": "turbo run build", 5 | "db:migrate:deploy": "turbo run db:migrate:deploy", 6 | "db:migrate:dev": "turbo run db:migrate:dev", 7 | "db:push": "turbo run db:push", 8 | "db:seed": "turbo run db:seed", 9 | "dev": "turbo run dev", 10 | "format": "prettier --write \"**/*.{ts,tsx,md}\"", 11 | "generate": "turbo run generate", 12 | "lint": "turbo run lint" 13 | }, 14 | "devDependencies": { 15 | "prettier": "^3.2.5", 16 | "tsx": "4.19.1", 17 | "turbo": "^2.4.4" 18 | }, 19 | "engines": { 20 | "node": ">=18" 21 | }, 22 | "name": "typescript-clean-architecture", 23 | "packageManager": "pnpm@10.5.2" 24 | } 25 | -------------------------------------------------------------------------------- /packages/application/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thaitype/typescript-clean-architecture/70fc0da0f3edaea618cc4b3fd855b9c3e0b85d0f/packages/application/.gitkeep -------------------------------------------------------------------------------- /packages/database-drizzle/drizzle.config.ts: -------------------------------------------------------------------------------- 1 | import "dotenv/config"; 2 | 3 | import type { Config } from "drizzle-kit"; 4 | 5 | const getEnvVariable = (name: string) => { 6 | const value = process.env[name]; 7 | if (value == null) throw new Error(`environment variable ${name} not found`); 8 | return value; 9 | }; 10 | 11 | export default { 12 | schema: "./src/schema.ts", 13 | out: "./drizzle", 14 | dialect: "postgresql", 15 | dbCredentials: { 16 | url: getEnvVariable("DATABASE_URL"), 17 | }, 18 | } satisfies Config; 19 | -------------------------------------------------------------------------------- /packages/database-drizzle/eslint.config.mjs: -------------------------------------------------------------------------------- 1 | import { config } from "@acme/eslint-config/base"; 2 | 3 | /** @type {import("eslint").Linter.Config} */ 4 | export default config; 5 | -------------------------------------------------------------------------------- /packages/database-drizzle/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@acme/database-drizzle", 3 | "version": "1.0.0", 4 | "type": "module", 5 | "exports": { 6 | ".": "./src/index.ts" 7 | }, 8 | "scripts": { 9 | "lint": "eslint . --max-warnings 0", 10 | "db:studio": "drizzle-kit studio", 11 | "generate": "drizzle-kit generate" 12 | }, 13 | "dependencies": { 14 | "dotenv": "^16.4.7", 15 | "@libsql/client": "^0.14.0", 16 | "drizzle-orm": "^0.40.0", 17 | "postgres": "^3.4.5" 18 | }, 19 | "devDependencies": { 20 | "@acme/eslint-config": "workspace:*", 21 | "@acme/typescript-config": "workspace:*", 22 | "@types/node": "^20.11.24", 23 | "drizzle-kit": "^0.30.5", 24 | "eslint": "^9.21.0", 25 | "rimraf": "^5.0.5", 26 | "tsup": "^8.0.2", 27 | "tsx": "4.19.1", 28 | "typescript": "5.8.2" 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /packages/database-drizzle/src/database.ts: -------------------------------------------------------------------------------- 1 | import "dotenv/config"; 2 | 3 | import { drizzle, PostgresJsDatabase } from "drizzle-orm/postgres-js"; 4 | import postgres from "postgres"; 5 | 6 | import * as schema from "./schema"; 7 | 8 | export interface DbContext = Record> { 9 | client: postgres.Sql; 10 | db: PostgresJsDatabase; 11 | } 12 | 13 | export type DbContextWithSchema = DbContext; 14 | 15 | export function getDbContext(databaseUrl: string): DbContextWithSchema { 16 | const client = postgres(databaseUrl); 17 | const db = drizzle(client, { schema }); 18 | return { client, db }; 19 | } 20 | 21 | -------------------------------------------------------------------------------- /packages/database-drizzle/src/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./schema"; 2 | export * from "./database"; 3 | export * from "./migrate"; 4 | export * from "./seed"; -------------------------------------------------------------------------------- /packages/database-drizzle/src/migrate.ts: -------------------------------------------------------------------------------- 1 | import { drizzle } from "drizzle-orm/postgres-js"; 2 | import { migrate as migrateSchema } from "drizzle-orm/postgres-js/migrator"; 3 | import { DbContext } from './database'; 4 | 5 | export interface MigrationOptions extends DbContext { 6 | migrationsFolder: string; 7 | } 8 | 9 | export async function migrate(options: MigrationOptions) { 10 | const { client, migrationsFolder } = options; 11 | await migrateSchema(drizzle(client), { 12 | // migrationsFolder: `${__dirname}/drizzle`, 13 | migrationsFolder 14 | }); 15 | await client.end(); 16 | process.exit(0); 17 | }; 18 | -------------------------------------------------------------------------------- /packages/database-drizzle/src/schema.ts: -------------------------------------------------------------------------------- 1 | import { relations } from "drizzle-orm"; 2 | import { integer, pgTable, serial, text, varchar } from "drizzle-orm/pg-core"; 3 | 4 | export const users = pgTable("users", { 5 | id: serial("id").primaryKey(), 6 | name: varchar("name").notNull(), 7 | }); 8 | 9 | export const posts = pgTable("posts", { 10 | id: serial("id").primaryKey(), 11 | title: varchar("title").notNull(), 12 | content: text("content").notNull(), 13 | authorId: integer("author_id") 14 | .references(() => users.id, { onDelete: "cascade" }) 15 | .notNull(), 16 | }); 17 | 18 | export const comments = pgTable("comments", { 19 | id: serial("id").primaryKey(), 20 | text: text("text"), 21 | authorId: integer("author_id") 22 | .references(() => users.id, { onDelete: "cascade" }) 23 | .notNull(), 24 | postId: integer("post_id") 25 | .references(() => posts.id, { onDelete: "cascade" }) 26 | .notNull(), 27 | }); 28 | 29 | export const usersRelations = relations(users, ({ many }) => ({ 30 | posts: many(posts), 31 | })); 32 | 33 | export const postsRelations = relations(posts, ({ one, many }) => ({ 34 | author: one(users, { 35 | fields: [posts.authorId], 36 | references: [users.id], 37 | }), 38 | comments: many(comments), 39 | })); 40 | 41 | export const commentsRelations = relations(comments, ({ one }) => ({ 42 | post: one(posts, { 43 | fields: [comments.postId], 44 | references: [posts.id], 45 | }), 46 | })); 47 | -------------------------------------------------------------------------------- /packages/database-drizzle/src/seed.ts: -------------------------------------------------------------------------------- 1 | import { users } from "./schema"; 2 | import { DbContext } from "./database"; 3 | 4 | /** 5 | * Execute seed the database 6 | */ 7 | export async function seed(dbContext: DbContext) { 8 | const { client, db } = dbContext; 9 | for (let i = 0; i < 10; i++) { 10 | await db.insert(users).values({ name: `Author ${i}` }); 11 | } 12 | await client.end(); 13 | } 14 | 15 | -------------------------------------------------------------------------------- /packages/database-drizzle/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@acme/typescript-config/base.json", 3 | "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", "tsup.config.ts"], 4 | "exclude": ["node_modules"] 5 | } 6 | -------------------------------------------------------------------------------- /packages/domain/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thaitype/typescript-clean-architecture/70fc0da0f3edaea618cc4b3fd855b9c3e0b85d0f/packages/domain/.gitkeep -------------------------------------------------------------------------------- /packages/infrastructure/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thaitype/typescript-clean-architecture/70fc0da0f3edaea618cc4b3fd855b9c3e0b85d0f/packages/infrastructure/.gitkeep -------------------------------------------------------------------------------- /packages/shared/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/thaitype/typescript-clean-architecture/70fc0da0f3edaea618cc4b3fd855b9c3e0b85d0f/packages/shared/.gitkeep -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '9.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | importers: 8 | 9 | .: 10 | devDependencies: 11 | prettier: 12 | specifier: ^3.2.5 13 | version: 3.5.3 14 | tsx: 15 | specifier: 4.19.1 16 | version: 4.19.1 17 | turbo: 18 | specifier: ^2.4.4 19 | version: 2.4.4 20 | 21 | apps/nextjs: 22 | dependencies: 23 | dotenv: 24 | specifier: ^16.4.7 25 | version: 16.4.7 26 | next: 27 | specifier: ^15.2.1 28 | version: 15.2.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 29 | react: 30 | specifier: ^19.0.0 31 | version: 19.0.0 32 | react-dom: 33 | specifier: ^19.0.0 34 | version: 19.0.0(react@19.0.0) 35 | devDependencies: 36 | '@acme/database-drizzle': 37 | specifier: workspace:* 38 | version: link:../../packages/database-drizzle 39 | '@acme/eslint-config': 40 | specifier: workspace:* 41 | version: link:../../configs/config-eslint 42 | '@acme/typescript-config': 43 | specifier: workspace:* 44 | version: link:../../configs/config-typescript 45 | '@next/eslint-plugin-next': 46 | specifier: ^14.1.1 47 | version: 14.2.24 48 | '@types/node': 49 | specifier: ^20.11.24 50 | version: 20.17.24 51 | '@types/react': 52 | specifier: 19.0.10 53 | version: 19.0.10 54 | '@types/react-dom': 55 | specifier: 19.0.4 56 | version: 19.0.4(@types/react@19.0.10) 57 | eslint: 58 | specifier: ^9.21.0 59 | version: 9.22.0 60 | tsx: 61 | specifier: 4.19.1 62 | version: 4.19.1 63 | typescript: 64 | specifier: 5.8.2 65 | version: 5.8.2 66 | 67 | configs/config-eslint: 68 | devDependencies: 69 | '@eslint/js': 70 | specifier: ^9.21.0 71 | version: 9.22.0 72 | '@next/eslint-plugin-next': 73 | specifier: ^15.2.1 74 | version: 15.2.1 75 | eslint: 76 | specifier: ^9.21.0 77 | version: 9.22.0 78 | eslint-config-prettier: 79 | specifier: ^10.0.2 80 | version: 10.1.1(eslint@9.22.0) 81 | eslint-plugin-only-warn: 82 | specifier: ^1.1.0 83 | version: 1.1.0 84 | eslint-plugin-react: 85 | specifier: ^7.37.4 86 | version: 7.37.4(eslint@9.22.0) 87 | eslint-plugin-react-hooks: 88 | specifier: ^5.2.0 89 | version: 5.2.0(eslint@9.22.0) 90 | eslint-plugin-turbo: 91 | specifier: ^2.4.4 92 | version: 2.4.4(eslint@9.22.0)(turbo@2.4.4) 93 | globals: 94 | specifier: ^16.0.0 95 | version: 16.0.0 96 | typescript: 97 | specifier: ^5.8.2 98 | version: 5.8.2 99 | typescript-eslint: 100 | specifier: ^8.26.0 101 | version: 8.26.0(eslint@9.22.0)(typescript@5.8.2) 102 | 103 | configs/config-typescript: {} 104 | 105 | packages/database-drizzle: 106 | dependencies: 107 | '@libsql/client': 108 | specifier: ^0.14.0 109 | version: 0.14.0 110 | dotenv: 111 | specifier: ^16.4.7 112 | version: 16.4.7 113 | drizzle-orm: 114 | specifier: ^0.40.0 115 | version: 0.40.0(@libsql/client@0.14.0)(@prisma/client@6.4.1(prisma@6.4.1(typescript@5.8.2))(typescript@5.8.2))(gel@2.0.1)(postgres@3.4.5)(prisma@6.4.1(typescript@5.8.2)) 116 | postgres: 117 | specifier: ^3.4.5 118 | version: 3.4.5 119 | devDependencies: 120 | '@acme/eslint-config': 121 | specifier: workspace:* 122 | version: link:../../configs/config-eslint 123 | '@acme/typescript-config': 124 | specifier: workspace:* 125 | version: link:../../configs/config-typescript 126 | '@types/node': 127 | specifier: ^20.11.24 128 | version: 20.17.24 129 | drizzle-kit: 130 | specifier: ^0.30.5 131 | version: 0.30.5 132 | eslint: 133 | specifier: ^9.21.0 134 | version: 9.22.0 135 | rimraf: 136 | specifier: ^5.0.5 137 | version: 5.0.10 138 | tsup: 139 | specifier: ^8.0.2 140 | version: 8.4.0(postcss@8.4.31)(tsx@4.19.1)(typescript@5.8.2) 141 | tsx: 142 | specifier: 4.19.1 143 | version: 4.19.1 144 | typescript: 145 | specifier: 5.8.2 146 | version: 5.8.2 147 | 148 | tools/db: 149 | dependencies: 150 | dotenv: 151 | specifier: ^16.4.7 152 | version: 16.4.7 153 | devDependencies: 154 | '@acme/database-drizzle': 155 | specifier: workspace:* 156 | version: link:../../packages/database-drizzle 157 | '@acme/eslint-config': 158 | specifier: workspace:* 159 | version: link:../../configs/config-eslint 160 | '@acme/typescript-config': 161 | specifier: workspace:* 162 | version: link:../../configs/config-typescript 163 | 164 | packages: 165 | 166 | '@drizzle-team/brocli@0.10.2': 167 | resolution: {integrity: sha512-z33Il7l5dKjUgGULTqBsQBQwckHh5AbIuxhdsIxDDiZAzBOrZO6q9ogcWC65kU382AfynTfgNumVcNIjuIua6w==} 168 | 169 | '@emnapi/runtime@1.3.1': 170 | resolution: {integrity: sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==} 171 | 172 | '@esbuild-kit/core-utils@3.3.2': 173 | resolution: {integrity: sha512-sPRAnw9CdSsRmEtnsl2WXWdyquogVpB3yZ3dgwJfe8zrOzTsV7cJvmwrKVa+0ma5BoiGJ+BoqkMvawbayKUsqQ==} 174 | deprecated: 'Merged into tsx: https://tsx.is' 175 | 176 | '@esbuild-kit/esm-loader@2.6.5': 177 | resolution: {integrity: sha512-FxEMIkJKnodyA1OaCUoEvbYRkoZlLZ4d/eXFu9Fh8CbBBgP5EmZxrfTRyN0qpXZ4vOvqnE5YdRdcrmUUXuU+dA==} 178 | deprecated: 'Merged into tsx: https://tsx.is' 179 | 180 | '@esbuild/aix-ppc64@0.19.12': 181 | resolution: {integrity: sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==} 182 | engines: {node: '>=12'} 183 | cpu: [ppc64] 184 | os: [aix] 185 | 186 | '@esbuild/aix-ppc64@0.23.1': 187 | resolution: {integrity: sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==} 188 | engines: {node: '>=18'} 189 | cpu: [ppc64] 190 | os: [aix] 191 | 192 | '@esbuild/aix-ppc64@0.25.0': 193 | resolution: {integrity: sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ==} 194 | engines: {node: '>=18'} 195 | cpu: [ppc64] 196 | os: [aix] 197 | 198 | '@esbuild/android-arm64@0.18.20': 199 | resolution: {integrity: sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==} 200 | engines: {node: '>=12'} 201 | cpu: [arm64] 202 | os: [android] 203 | 204 | '@esbuild/android-arm64@0.19.12': 205 | resolution: {integrity: sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==} 206 | engines: {node: '>=12'} 207 | cpu: [arm64] 208 | os: [android] 209 | 210 | '@esbuild/android-arm64@0.23.1': 211 | resolution: {integrity: sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==} 212 | engines: {node: '>=18'} 213 | cpu: [arm64] 214 | os: [android] 215 | 216 | '@esbuild/android-arm64@0.25.0': 217 | resolution: {integrity: sha512-grvv8WncGjDSyUBjN9yHXNt+cq0snxXbDxy5pJtzMKGmmpPxeAmAhWxXI+01lU5rwZomDgD3kJwulEnhTRUd6g==} 218 | engines: {node: '>=18'} 219 | cpu: [arm64] 220 | os: [android] 221 | 222 | '@esbuild/android-arm@0.18.20': 223 | resolution: {integrity: sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==} 224 | engines: {node: '>=12'} 225 | cpu: [arm] 226 | os: [android] 227 | 228 | '@esbuild/android-arm@0.19.12': 229 | resolution: {integrity: sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==} 230 | engines: {node: '>=12'} 231 | cpu: [arm] 232 | os: [android] 233 | 234 | '@esbuild/android-arm@0.23.1': 235 | resolution: {integrity: sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==} 236 | engines: {node: '>=18'} 237 | cpu: [arm] 238 | os: [android] 239 | 240 | '@esbuild/android-arm@0.25.0': 241 | resolution: {integrity: sha512-PTyWCYYiU0+1eJKmw21lWtC+d08JDZPQ5g+kFyxP0V+es6VPPSUhM6zk8iImp2jbV6GwjX4pap0JFbUQN65X1g==} 242 | engines: {node: '>=18'} 243 | cpu: [arm] 244 | os: [android] 245 | 246 | '@esbuild/android-x64@0.18.20': 247 | resolution: {integrity: sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==} 248 | engines: {node: '>=12'} 249 | cpu: [x64] 250 | os: [android] 251 | 252 | '@esbuild/android-x64@0.19.12': 253 | resolution: {integrity: sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==} 254 | engines: {node: '>=12'} 255 | cpu: [x64] 256 | os: [android] 257 | 258 | '@esbuild/android-x64@0.23.1': 259 | resolution: {integrity: sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==} 260 | engines: {node: '>=18'} 261 | cpu: [x64] 262 | os: [android] 263 | 264 | '@esbuild/android-x64@0.25.0': 265 | resolution: {integrity: sha512-m/ix7SfKG5buCnxasr52+LI78SQ+wgdENi9CqyCXwjVR2X4Jkz+BpC3le3AoBPYTC9NHklwngVXvbJ9/Akhrfg==} 266 | engines: {node: '>=18'} 267 | cpu: [x64] 268 | os: [android] 269 | 270 | '@esbuild/darwin-arm64@0.18.20': 271 | resolution: {integrity: sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==} 272 | engines: {node: '>=12'} 273 | cpu: [arm64] 274 | os: [darwin] 275 | 276 | '@esbuild/darwin-arm64@0.19.12': 277 | resolution: {integrity: sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==} 278 | engines: {node: '>=12'} 279 | cpu: [arm64] 280 | os: [darwin] 281 | 282 | '@esbuild/darwin-arm64@0.23.1': 283 | resolution: {integrity: sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==} 284 | engines: {node: '>=18'} 285 | cpu: [arm64] 286 | os: [darwin] 287 | 288 | '@esbuild/darwin-arm64@0.25.0': 289 | resolution: {integrity: sha512-mVwdUb5SRkPayVadIOI78K7aAnPamoeFR2bT5nszFUZ9P8UpK4ratOdYbZZXYSqPKMHfS1wdHCJk1P1EZpRdvw==} 290 | engines: {node: '>=18'} 291 | cpu: [arm64] 292 | os: [darwin] 293 | 294 | '@esbuild/darwin-x64@0.18.20': 295 | resolution: {integrity: sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==} 296 | engines: {node: '>=12'} 297 | cpu: [x64] 298 | os: [darwin] 299 | 300 | '@esbuild/darwin-x64@0.19.12': 301 | resolution: {integrity: sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==} 302 | engines: {node: '>=12'} 303 | cpu: [x64] 304 | os: [darwin] 305 | 306 | '@esbuild/darwin-x64@0.23.1': 307 | resolution: {integrity: sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==} 308 | engines: {node: '>=18'} 309 | cpu: [x64] 310 | os: [darwin] 311 | 312 | '@esbuild/darwin-x64@0.25.0': 313 | resolution: {integrity: sha512-DgDaYsPWFTS4S3nWpFcMn/33ZZwAAeAFKNHNa1QN0rI4pUjgqf0f7ONmXf6d22tqTY+H9FNdgeaAa+YIFUn2Rg==} 314 | engines: {node: '>=18'} 315 | cpu: [x64] 316 | os: [darwin] 317 | 318 | '@esbuild/freebsd-arm64@0.18.20': 319 | resolution: {integrity: sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==} 320 | engines: {node: '>=12'} 321 | cpu: [arm64] 322 | os: [freebsd] 323 | 324 | '@esbuild/freebsd-arm64@0.19.12': 325 | resolution: {integrity: sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==} 326 | engines: {node: '>=12'} 327 | cpu: [arm64] 328 | os: [freebsd] 329 | 330 | '@esbuild/freebsd-arm64@0.23.1': 331 | resolution: {integrity: sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==} 332 | engines: {node: '>=18'} 333 | cpu: [arm64] 334 | os: [freebsd] 335 | 336 | '@esbuild/freebsd-arm64@0.25.0': 337 | resolution: {integrity: sha512-VN4ocxy6dxefN1MepBx/iD1dH5K8qNtNe227I0mnTRjry8tj5MRk4zprLEdG8WPyAPb93/e4pSgi1SoHdgOa4w==} 338 | engines: {node: '>=18'} 339 | cpu: [arm64] 340 | os: [freebsd] 341 | 342 | '@esbuild/freebsd-x64@0.18.20': 343 | resolution: {integrity: sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==} 344 | engines: {node: '>=12'} 345 | cpu: [x64] 346 | os: [freebsd] 347 | 348 | '@esbuild/freebsd-x64@0.19.12': 349 | resolution: {integrity: sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==} 350 | engines: {node: '>=12'} 351 | cpu: [x64] 352 | os: [freebsd] 353 | 354 | '@esbuild/freebsd-x64@0.23.1': 355 | resolution: {integrity: sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==} 356 | engines: {node: '>=18'} 357 | cpu: [x64] 358 | os: [freebsd] 359 | 360 | '@esbuild/freebsd-x64@0.25.0': 361 | resolution: {integrity: sha512-mrSgt7lCh07FY+hDD1TxiTyIHyttn6vnjesnPoVDNmDfOmggTLXRv8Id5fNZey1gl/V2dyVK1VXXqVsQIiAk+A==} 362 | engines: {node: '>=18'} 363 | cpu: [x64] 364 | os: [freebsd] 365 | 366 | '@esbuild/linux-arm64@0.18.20': 367 | resolution: {integrity: sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==} 368 | engines: {node: '>=12'} 369 | cpu: [arm64] 370 | os: [linux] 371 | 372 | '@esbuild/linux-arm64@0.19.12': 373 | resolution: {integrity: sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==} 374 | engines: {node: '>=12'} 375 | cpu: [arm64] 376 | os: [linux] 377 | 378 | '@esbuild/linux-arm64@0.23.1': 379 | resolution: {integrity: sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==} 380 | engines: {node: '>=18'} 381 | cpu: [arm64] 382 | os: [linux] 383 | 384 | '@esbuild/linux-arm64@0.25.0': 385 | resolution: {integrity: sha512-9QAQjTWNDM/Vk2bgBl17yWuZxZNQIF0OUUuPZRKoDtqF2k4EtYbpyiG5/Dk7nqeK6kIJWPYldkOcBqjXjrUlmg==} 386 | engines: {node: '>=18'} 387 | cpu: [arm64] 388 | os: [linux] 389 | 390 | '@esbuild/linux-arm@0.18.20': 391 | resolution: {integrity: sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==} 392 | engines: {node: '>=12'} 393 | cpu: [arm] 394 | os: [linux] 395 | 396 | '@esbuild/linux-arm@0.19.12': 397 | resolution: {integrity: sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==} 398 | engines: {node: '>=12'} 399 | cpu: [arm] 400 | os: [linux] 401 | 402 | '@esbuild/linux-arm@0.23.1': 403 | resolution: {integrity: sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==} 404 | engines: {node: '>=18'} 405 | cpu: [arm] 406 | os: [linux] 407 | 408 | '@esbuild/linux-arm@0.25.0': 409 | resolution: {integrity: sha512-vkB3IYj2IDo3g9xX7HqhPYxVkNQe8qTK55fraQyTzTX/fxaDtXiEnavv9geOsonh2Fd2RMB+i5cbhu2zMNWJwg==} 410 | engines: {node: '>=18'} 411 | cpu: [arm] 412 | os: [linux] 413 | 414 | '@esbuild/linux-ia32@0.18.20': 415 | resolution: {integrity: sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==} 416 | engines: {node: '>=12'} 417 | cpu: [ia32] 418 | os: [linux] 419 | 420 | '@esbuild/linux-ia32@0.19.12': 421 | resolution: {integrity: sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==} 422 | engines: {node: '>=12'} 423 | cpu: [ia32] 424 | os: [linux] 425 | 426 | '@esbuild/linux-ia32@0.23.1': 427 | resolution: {integrity: sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==} 428 | engines: {node: '>=18'} 429 | cpu: [ia32] 430 | os: [linux] 431 | 432 | '@esbuild/linux-ia32@0.25.0': 433 | resolution: {integrity: sha512-43ET5bHbphBegyeqLb7I1eYn2P/JYGNmzzdidq/w0T8E2SsYL1U6un2NFROFRg1JZLTzdCoRomg8Rvf9M6W6Gg==} 434 | engines: {node: '>=18'} 435 | cpu: [ia32] 436 | os: [linux] 437 | 438 | '@esbuild/linux-loong64@0.18.20': 439 | resolution: {integrity: sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==} 440 | engines: {node: '>=12'} 441 | cpu: [loong64] 442 | os: [linux] 443 | 444 | '@esbuild/linux-loong64@0.19.12': 445 | resolution: {integrity: sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==} 446 | engines: {node: '>=12'} 447 | cpu: [loong64] 448 | os: [linux] 449 | 450 | '@esbuild/linux-loong64@0.23.1': 451 | resolution: {integrity: sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==} 452 | engines: {node: '>=18'} 453 | cpu: [loong64] 454 | os: [linux] 455 | 456 | '@esbuild/linux-loong64@0.25.0': 457 | resolution: {integrity: sha512-fC95c/xyNFueMhClxJmeRIj2yrSMdDfmqJnyOY4ZqsALkDrrKJfIg5NTMSzVBr5YW1jf+l7/cndBfP3MSDpoHw==} 458 | engines: {node: '>=18'} 459 | cpu: [loong64] 460 | os: [linux] 461 | 462 | '@esbuild/linux-mips64el@0.18.20': 463 | resolution: {integrity: sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==} 464 | engines: {node: '>=12'} 465 | cpu: [mips64el] 466 | os: [linux] 467 | 468 | '@esbuild/linux-mips64el@0.19.12': 469 | resolution: {integrity: sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==} 470 | engines: {node: '>=12'} 471 | cpu: [mips64el] 472 | os: [linux] 473 | 474 | '@esbuild/linux-mips64el@0.23.1': 475 | resolution: {integrity: sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==} 476 | engines: {node: '>=18'} 477 | cpu: [mips64el] 478 | os: [linux] 479 | 480 | '@esbuild/linux-mips64el@0.25.0': 481 | resolution: {integrity: sha512-nkAMFju7KDW73T1DdH7glcyIptm95a7Le8irTQNO/qtkoyypZAnjchQgooFUDQhNAy4iu08N79W4T4pMBwhPwQ==} 482 | engines: {node: '>=18'} 483 | cpu: [mips64el] 484 | os: [linux] 485 | 486 | '@esbuild/linux-ppc64@0.18.20': 487 | resolution: {integrity: sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==} 488 | engines: {node: '>=12'} 489 | cpu: [ppc64] 490 | os: [linux] 491 | 492 | '@esbuild/linux-ppc64@0.19.12': 493 | resolution: {integrity: sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==} 494 | engines: {node: '>=12'} 495 | cpu: [ppc64] 496 | os: [linux] 497 | 498 | '@esbuild/linux-ppc64@0.23.1': 499 | resolution: {integrity: sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==} 500 | engines: {node: '>=18'} 501 | cpu: [ppc64] 502 | os: [linux] 503 | 504 | '@esbuild/linux-ppc64@0.25.0': 505 | resolution: {integrity: sha512-NhyOejdhRGS8Iwv+KKR2zTq2PpysF9XqY+Zk77vQHqNbo/PwZCzB5/h7VGuREZm1fixhs4Q/qWRSi5zmAiO4Fw==} 506 | engines: {node: '>=18'} 507 | cpu: [ppc64] 508 | os: [linux] 509 | 510 | '@esbuild/linux-riscv64@0.18.20': 511 | resolution: {integrity: sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==} 512 | engines: {node: '>=12'} 513 | cpu: [riscv64] 514 | os: [linux] 515 | 516 | '@esbuild/linux-riscv64@0.19.12': 517 | resolution: {integrity: sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==} 518 | engines: {node: '>=12'} 519 | cpu: [riscv64] 520 | os: [linux] 521 | 522 | '@esbuild/linux-riscv64@0.23.1': 523 | resolution: {integrity: sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==} 524 | engines: {node: '>=18'} 525 | cpu: [riscv64] 526 | os: [linux] 527 | 528 | '@esbuild/linux-riscv64@0.25.0': 529 | resolution: {integrity: sha512-5S/rbP5OY+GHLC5qXp1y/Mx//e92L1YDqkiBbO9TQOvuFXM+iDqUNG5XopAnXoRH3FjIUDkeGcY1cgNvnXp/kA==} 530 | engines: {node: '>=18'} 531 | cpu: [riscv64] 532 | os: [linux] 533 | 534 | '@esbuild/linux-s390x@0.18.20': 535 | resolution: {integrity: sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==} 536 | engines: {node: '>=12'} 537 | cpu: [s390x] 538 | os: [linux] 539 | 540 | '@esbuild/linux-s390x@0.19.12': 541 | resolution: {integrity: sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==} 542 | engines: {node: '>=12'} 543 | cpu: [s390x] 544 | os: [linux] 545 | 546 | '@esbuild/linux-s390x@0.23.1': 547 | resolution: {integrity: sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==} 548 | engines: {node: '>=18'} 549 | cpu: [s390x] 550 | os: [linux] 551 | 552 | '@esbuild/linux-s390x@0.25.0': 553 | resolution: {integrity: sha512-XM2BFsEBz0Fw37V0zU4CXfcfuACMrppsMFKdYY2WuTS3yi8O1nFOhil/xhKTmE1nPmVyvQJjJivgDT+xh8pXJA==} 554 | engines: {node: '>=18'} 555 | cpu: [s390x] 556 | os: [linux] 557 | 558 | '@esbuild/linux-x64@0.18.20': 559 | resolution: {integrity: sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==} 560 | engines: {node: '>=12'} 561 | cpu: [x64] 562 | os: [linux] 563 | 564 | '@esbuild/linux-x64@0.19.12': 565 | resolution: {integrity: sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==} 566 | engines: {node: '>=12'} 567 | cpu: [x64] 568 | os: [linux] 569 | 570 | '@esbuild/linux-x64@0.23.1': 571 | resolution: {integrity: sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==} 572 | engines: {node: '>=18'} 573 | cpu: [x64] 574 | os: [linux] 575 | 576 | '@esbuild/linux-x64@0.25.0': 577 | resolution: {integrity: sha512-9yl91rHw/cpwMCNytUDxwj2XjFpxML0y9HAOH9pNVQDpQrBxHy01Dx+vaMu0N1CKa/RzBD2hB4u//nfc+Sd3Cw==} 578 | engines: {node: '>=18'} 579 | cpu: [x64] 580 | os: [linux] 581 | 582 | '@esbuild/netbsd-arm64@0.25.0': 583 | resolution: {integrity: sha512-RuG4PSMPFfrkH6UwCAqBzauBWTygTvb1nxWasEJooGSJ/NwRw7b2HOwyRTQIU97Hq37l3npXoZGYMy3b3xYvPw==} 584 | engines: {node: '>=18'} 585 | cpu: [arm64] 586 | os: [netbsd] 587 | 588 | '@esbuild/netbsd-x64@0.18.20': 589 | resolution: {integrity: sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==} 590 | engines: {node: '>=12'} 591 | cpu: [x64] 592 | os: [netbsd] 593 | 594 | '@esbuild/netbsd-x64@0.19.12': 595 | resolution: {integrity: sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==} 596 | engines: {node: '>=12'} 597 | cpu: [x64] 598 | os: [netbsd] 599 | 600 | '@esbuild/netbsd-x64@0.23.1': 601 | resolution: {integrity: sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==} 602 | engines: {node: '>=18'} 603 | cpu: [x64] 604 | os: [netbsd] 605 | 606 | '@esbuild/netbsd-x64@0.25.0': 607 | resolution: {integrity: sha512-jl+qisSB5jk01N5f7sPCsBENCOlPiS/xptD5yxOx2oqQfyourJwIKLRA2yqWdifj3owQZCL2sn6o08dBzZGQzA==} 608 | engines: {node: '>=18'} 609 | cpu: [x64] 610 | os: [netbsd] 611 | 612 | '@esbuild/openbsd-arm64@0.23.1': 613 | resolution: {integrity: sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==} 614 | engines: {node: '>=18'} 615 | cpu: [arm64] 616 | os: [openbsd] 617 | 618 | '@esbuild/openbsd-arm64@0.25.0': 619 | resolution: {integrity: sha512-21sUNbq2r84YE+SJDfaQRvdgznTD8Xc0oc3p3iW/a1EVWeNj/SdUCbm5U0itZPQYRuRTW20fPMWMpcrciH2EJw==} 620 | engines: {node: '>=18'} 621 | cpu: [arm64] 622 | os: [openbsd] 623 | 624 | '@esbuild/openbsd-x64@0.18.20': 625 | resolution: {integrity: sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==} 626 | engines: {node: '>=12'} 627 | cpu: [x64] 628 | os: [openbsd] 629 | 630 | '@esbuild/openbsd-x64@0.19.12': 631 | resolution: {integrity: sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==} 632 | engines: {node: '>=12'} 633 | cpu: [x64] 634 | os: [openbsd] 635 | 636 | '@esbuild/openbsd-x64@0.23.1': 637 | resolution: {integrity: sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==} 638 | engines: {node: '>=18'} 639 | cpu: [x64] 640 | os: [openbsd] 641 | 642 | '@esbuild/openbsd-x64@0.25.0': 643 | resolution: {integrity: sha512-2gwwriSMPcCFRlPlKx3zLQhfN/2WjJ2NSlg5TKLQOJdV0mSxIcYNTMhk3H3ulL/cak+Xj0lY1Ym9ysDV1igceg==} 644 | engines: {node: '>=18'} 645 | cpu: [x64] 646 | os: [openbsd] 647 | 648 | '@esbuild/sunos-x64@0.18.20': 649 | resolution: {integrity: sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==} 650 | engines: {node: '>=12'} 651 | cpu: [x64] 652 | os: [sunos] 653 | 654 | '@esbuild/sunos-x64@0.19.12': 655 | resolution: {integrity: sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==} 656 | engines: {node: '>=12'} 657 | cpu: [x64] 658 | os: [sunos] 659 | 660 | '@esbuild/sunos-x64@0.23.1': 661 | resolution: {integrity: sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==} 662 | engines: {node: '>=18'} 663 | cpu: [x64] 664 | os: [sunos] 665 | 666 | '@esbuild/sunos-x64@0.25.0': 667 | resolution: {integrity: sha512-bxI7ThgLzPrPz484/S9jLlvUAHYMzy6I0XiU1ZMeAEOBcS0VePBFxh1JjTQt3Xiat5b6Oh4x7UC7IwKQKIJRIg==} 668 | engines: {node: '>=18'} 669 | cpu: [x64] 670 | os: [sunos] 671 | 672 | '@esbuild/win32-arm64@0.18.20': 673 | resolution: {integrity: sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==} 674 | engines: {node: '>=12'} 675 | cpu: [arm64] 676 | os: [win32] 677 | 678 | '@esbuild/win32-arm64@0.19.12': 679 | resolution: {integrity: sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==} 680 | engines: {node: '>=12'} 681 | cpu: [arm64] 682 | os: [win32] 683 | 684 | '@esbuild/win32-arm64@0.23.1': 685 | resolution: {integrity: sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==} 686 | engines: {node: '>=18'} 687 | cpu: [arm64] 688 | os: [win32] 689 | 690 | '@esbuild/win32-arm64@0.25.0': 691 | resolution: {integrity: sha512-ZUAc2YK6JW89xTbXvftxdnYy3m4iHIkDtK3CLce8wg8M2L+YZhIvO1DKpxrd0Yr59AeNNkTiic9YLf6FTtXWMw==} 692 | engines: {node: '>=18'} 693 | cpu: [arm64] 694 | os: [win32] 695 | 696 | '@esbuild/win32-ia32@0.18.20': 697 | resolution: {integrity: sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==} 698 | engines: {node: '>=12'} 699 | cpu: [ia32] 700 | os: [win32] 701 | 702 | '@esbuild/win32-ia32@0.19.12': 703 | resolution: {integrity: sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==} 704 | engines: {node: '>=12'} 705 | cpu: [ia32] 706 | os: [win32] 707 | 708 | '@esbuild/win32-ia32@0.23.1': 709 | resolution: {integrity: sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==} 710 | engines: {node: '>=18'} 711 | cpu: [ia32] 712 | os: [win32] 713 | 714 | '@esbuild/win32-ia32@0.25.0': 715 | resolution: {integrity: sha512-eSNxISBu8XweVEWG31/JzjkIGbGIJN/TrRoiSVZwZ6pkC6VX4Im/WV2cz559/TXLcYbcrDN8JtKgd9DJVIo8GA==} 716 | engines: {node: '>=18'} 717 | cpu: [ia32] 718 | os: [win32] 719 | 720 | '@esbuild/win32-x64@0.18.20': 721 | resolution: {integrity: sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==} 722 | engines: {node: '>=12'} 723 | cpu: [x64] 724 | os: [win32] 725 | 726 | '@esbuild/win32-x64@0.19.12': 727 | resolution: {integrity: sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==} 728 | engines: {node: '>=12'} 729 | cpu: [x64] 730 | os: [win32] 731 | 732 | '@esbuild/win32-x64@0.23.1': 733 | resolution: {integrity: sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==} 734 | engines: {node: '>=18'} 735 | cpu: [x64] 736 | os: [win32] 737 | 738 | '@esbuild/win32-x64@0.25.0': 739 | resolution: {integrity: sha512-ZENoHJBxA20C2zFzh6AI4fT6RraMzjYw4xKWemRTRmRVtN9c5DcH9r/f2ihEkMjOW5eGgrwCslG/+Y/3bL+DHQ==} 740 | engines: {node: '>=18'} 741 | cpu: [x64] 742 | os: [win32] 743 | 744 | '@eslint-community/eslint-utils@4.4.1': 745 | resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==} 746 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 747 | peerDependencies: 748 | eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 749 | 750 | '@eslint-community/regexpp@4.12.1': 751 | resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} 752 | engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} 753 | 754 | '@eslint/config-array@0.19.2': 755 | resolution: {integrity: sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==} 756 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 757 | 758 | '@eslint/config-helpers@0.1.0': 759 | resolution: {integrity: sha512-kLrdPDJE1ckPo94kmPPf9Hfd0DU0Jw6oKYrhe+pwSC0iTUInmTa+w6fw8sGgcfkFJGNdWOUeOaDM4quW4a7OkA==} 760 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 761 | 762 | '@eslint/core@0.12.0': 763 | resolution: {integrity: sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==} 764 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 765 | 766 | '@eslint/eslintrc@3.3.0': 767 | resolution: {integrity: sha512-yaVPAiNAalnCZedKLdR21GOGILMLKPyqSLWaAjQFvYA2i/ciDi8ArYVr69Anohb6cH2Ukhqti4aFnYyPm8wdwQ==} 768 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 769 | 770 | '@eslint/js@9.22.0': 771 | resolution: {integrity: sha512-vLFajx9o8d1/oL2ZkpMYbkLv8nDB6yaIwFNt7nI4+I80U/z03SxmfOMsLbvWr3p7C+Wnoh//aOu2pQW8cS0HCQ==} 772 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 773 | 774 | '@eslint/object-schema@2.1.6': 775 | resolution: {integrity: sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==} 776 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 777 | 778 | '@eslint/plugin-kit@0.2.7': 779 | resolution: {integrity: sha512-JubJ5B2pJ4k4yGxaNLdbjrnk9d/iDz6/q8wOilpIowd6PJPgaxCuHBnBszq7Ce2TyMrywm5r4PnKm6V3iiZF+g==} 780 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 781 | 782 | '@humanfs/core@0.19.1': 783 | resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} 784 | engines: {node: '>=18.18.0'} 785 | 786 | '@humanfs/node@0.16.6': 787 | resolution: {integrity: sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==} 788 | engines: {node: '>=18.18.0'} 789 | 790 | '@humanwhocodes/module-importer@1.0.1': 791 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} 792 | engines: {node: '>=12.22'} 793 | 794 | '@humanwhocodes/retry@0.3.1': 795 | resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} 796 | engines: {node: '>=18.18'} 797 | 798 | '@humanwhocodes/retry@0.4.2': 799 | resolution: {integrity: sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==} 800 | engines: {node: '>=18.18'} 801 | 802 | '@img/sharp-darwin-arm64@0.33.5': 803 | resolution: {integrity: sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==} 804 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 805 | cpu: [arm64] 806 | os: [darwin] 807 | 808 | '@img/sharp-darwin-x64@0.33.5': 809 | resolution: {integrity: sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==} 810 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 811 | cpu: [x64] 812 | os: [darwin] 813 | 814 | '@img/sharp-libvips-darwin-arm64@1.0.4': 815 | resolution: {integrity: sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==} 816 | cpu: [arm64] 817 | os: [darwin] 818 | 819 | '@img/sharp-libvips-darwin-x64@1.0.4': 820 | resolution: {integrity: sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==} 821 | cpu: [x64] 822 | os: [darwin] 823 | 824 | '@img/sharp-libvips-linux-arm64@1.0.4': 825 | resolution: {integrity: sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==} 826 | cpu: [arm64] 827 | os: [linux] 828 | 829 | '@img/sharp-libvips-linux-arm@1.0.5': 830 | resolution: {integrity: sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g==} 831 | cpu: [arm] 832 | os: [linux] 833 | 834 | '@img/sharp-libvips-linux-s390x@1.0.4': 835 | resolution: {integrity: sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA==} 836 | cpu: [s390x] 837 | os: [linux] 838 | 839 | '@img/sharp-libvips-linux-x64@1.0.4': 840 | resolution: {integrity: sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw==} 841 | cpu: [x64] 842 | os: [linux] 843 | 844 | '@img/sharp-libvips-linuxmusl-arm64@1.0.4': 845 | resolution: {integrity: sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==} 846 | cpu: [arm64] 847 | os: [linux] 848 | 849 | '@img/sharp-libvips-linuxmusl-x64@1.0.4': 850 | resolution: {integrity: sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw==} 851 | cpu: [x64] 852 | os: [linux] 853 | 854 | '@img/sharp-linux-arm64@0.33.5': 855 | resolution: {integrity: sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==} 856 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 857 | cpu: [arm64] 858 | os: [linux] 859 | 860 | '@img/sharp-linux-arm@0.33.5': 861 | resolution: {integrity: sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ==} 862 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 863 | cpu: [arm] 864 | os: [linux] 865 | 866 | '@img/sharp-linux-s390x@0.33.5': 867 | resolution: {integrity: sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q==} 868 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 869 | cpu: [s390x] 870 | os: [linux] 871 | 872 | '@img/sharp-linux-x64@0.33.5': 873 | resolution: {integrity: sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA==} 874 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 875 | cpu: [x64] 876 | os: [linux] 877 | 878 | '@img/sharp-linuxmusl-arm64@0.33.5': 879 | resolution: {integrity: sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g==} 880 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 881 | cpu: [arm64] 882 | os: [linux] 883 | 884 | '@img/sharp-linuxmusl-x64@0.33.5': 885 | resolution: {integrity: sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw==} 886 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 887 | cpu: [x64] 888 | os: [linux] 889 | 890 | '@img/sharp-wasm32@0.33.5': 891 | resolution: {integrity: sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg==} 892 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 893 | cpu: [wasm32] 894 | 895 | '@img/sharp-win32-ia32@0.33.5': 896 | resolution: {integrity: sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ==} 897 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 898 | cpu: [ia32] 899 | os: [win32] 900 | 901 | '@img/sharp-win32-x64@0.33.5': 902 | resolution: {integrity: sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==} 903 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 904 | cpu: [x64] 905 | os: [win32] 906 | 907 | '@isaacs/cliui@8.0.2': 908 | resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} 909 | engines: {node: '>=12'} 910 | 911 | '@jridgewell/gen-mapping@0.3.8': 912 | resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} 913 | engines: {node: '>=6.0.0'} 914 | 915 | '@jridgewell/resolve-uri@3.1.2': 916 | resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} 917 | engines: {node: '>=6.0.0'} 918 | 919 | '@jridgewell/set-array@1.2.1': 920 | resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} 921 | engines: {node: '>=6.0.0'} 922 | 923 | '@jridgewell/sourcemap-codec@1.5.0': 924 | resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} 925 | 926 | '@jridgewell/trace-mapping@0.3.25': 927 | resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} 928 | 929 | '@libsql/client@0.14.0': 930 | resolution: {integrity: sha512-/9HEKfn6fwXB5aTEEoMeFh4CtG0ZzbncBb1e++OCdVpgKZ/xyMsIVYXm0w7Pv4RUel803vE6LwniB3PqD72R0Q==} 931 | 932 | '@libsql/core@0.14.0': 933 | resolution: {integrity: sha512-nhbuXf7GP3PSZgdCY2Ecj8vz187ptHlZQ0VRc751oB2C1W8jQUXKKklvt7t1LJiUTQBVJuadF628eUk+3cRi4Q==} 934 | 935 | '@libsql/darwin-arm64@0.4.7': 936 | resolution: {integrity: sha512-yOL742IfWUlUevnI5PdnIT4fryY3LYTdLm56bnY0wXBw7dhFcnjuA7jrH3oSVz2mjZTHujxoITgAE7V6Z+eAbg==} 937 | cpu: [arm64] 938 | os: [darwin] 939 | 940 | '@libsql/darwin-x64@0.4.7': 941 | resolution: {integrity: sha512-ezc7V75+eoyyH07BO9tIyJdqXXcRfZMbKcLCeF8+qWK5nP8wWuMcfOVywecsXGRbT99zc5eNra4NEx6z5PkSsA==} 942 | cpu: [x64] 943 | os: [darwin] 944 | 945 | '@libsql/hrana-client@0.7.0': 946 | resolution: {integrity: sha512-OF8fFQSkbL7vJY9rfuegK1R7sPgQ6kFMkDamiEccNUvieQ+3urzfDFI616oPl8V7T9zRmnTkSjMOImYCAVRVuw==} 947 | 948 | '@libsql/isomorphic-fetch@0.3.1': 949 | resolution: {integrity: sha512-6kK3SUK5Uu56zPq/Las620n5aS9xJq+jMBcNSOmjhNf/MUvdyji4vrMTqD7ptY7/4/CAVEAYDeotUz60LNQHtw==} 950 | engines: {node: '>=18.0.0'} 951 | 952 | '@libsql/isomorphic-ws@0.1.5': 953 | resolution: {integrity: sha512-DtLWIH29onUYR00i0GlQ3UdcTRC6EP4u9w/h9LxpUZJWRMARk6dQwZ6Jkd+QdwVpuAOrdxt18v0K2uIYR3fwFg==} 954 | 955 | '@libsql/linux-arm64-gnu@0.4.7': 956 | resolution: {integrity: sha512-WlX2VYB5diM4kFfNaYcyhw5y+UJAI3xcMkEUJZPtRDEIu85SsSFrQ+gvoKfcVh76B//ztSeEX2wl9yrjF7BBCA==} 957 | cpu: [arm64] 958 | os: [linux] 959 | 960 | '@libsql/linux-arm64-musl@0.4.7': 961 | resolution: {integrity: sha512-6kK9xAArVRlTCpWeqnNMCoXW1pe7WITI378n4NpvU5EJ0Ok3aNTIC2nRPRjhro90QcnmLL1jPcrVwO4WD1U0xw==} 962 | cpu: [arm64] 963 | os: [linux] 964 | 965 | '@libsql/linux-x64-gnu@0.4.7': 966 | resolution: {integrity: sha512-CMnNRCmlWQqqzlTw6NeaZXzLWI8bydaXDke63JTUCvu8R+fj/ENsLrVBtPDlxQ0wGsYdXGlrUCH8Qi9gJep0yQ==} 967 | cpu: [x64] 968 | os: [linux] 969 | 970 | '@libsql/linux-x64-musl@0.4.7': 971 | resolution: {integrity: sha512-nI6tpS1t6WzGAt1Kx1n1HsvtBbZ+jHn0m7ogNNT6pQHZQj7AFFTIMeDQw/i/Nt5H38np1GVRNsFe99eSIMs9XA==} 972 | cpu: [x64] 973 | os: [linux] 974 | 975 | '@libsql/win32-x64-msvc@0.4.7': 976 | resolution: {integrity: sha512-7pJzOWzPm6oJUxml+PCDRzYQ4A1hTMHAciTAHfFK4fkbDZX33nWPVG7Y3vqdKtslcwAzwmrNDc6sXy2nwWnbiw==} 977 | cpu: [x64] 978 | os: [win32] 979 | 980 | '@neon-rs/load@0.0.4': 981 | resolution: {integrity: sha512-kTPhdZyTQxB+2wpiRcFWrDcejc4JI6tkPuS7UZCG4l6Zvc5kU/gGQ/ozvHTh1XR5tS+UlfAfGuPajjzQjCiHCw==} 982 | 983 | '@next/env@15.2.1': 984 | resolution: {integrity: sha512-JmY0qvnPuS2NCWOz2bbby3Pe0VzdAQ7XpEB6uLIHmtXNfAsAO0KLQLkuAoc42Bxbo3/jMC3dcn9cdf+piCcG2Q==} 985 | 986 | '@next/eslint-plugin-next@14.2.24': 987 | resolution: {integrity: sha512-FDL3qs+5DML0AJz56DCVr+KnFYivxeAX73En8QbPw9GjJZ6zbfvqDy+HrarHFzbsIASn7y8y5ySJ/lllSruNVQ==} 988 | 989 | '@next/eslint-plugin-next@15.2.1': 990 | resolution: {integrity: sha512-6ppeToFd02z38SllzWxayLxjjNfzvc7Wm07gQOKSLjyASvKcXjNStZrLXMHuaWkhjqxe+cnhb2uzfWXm1VEj/Q==} 991 | 992 | '@next/swc-darwin-arm64@15.2.1': 993 | resolution: {integrity: sha512-aWXT+5KEREoy3K5AKtiKwioeblmOvFFjd+F3dVleLvvLiQ/mD//jOOuUcx5hzcO9ISSw4lrqtUPntTpK32uXXQ==} 994 | engines: {node: '>= 10'} 995 | cpu: [arm64] 996 | os: [darwin] 997 | 998 | '@next/swc-darwin-x64@15.2.1': 999 | resolution: {integrity: sha512-E/w8ervu4fcG5SkLhvn1NE/2POuDCDEy5gFbfhmnYXkyONZR68qbUlJlZwuN82o7BrBVAw+tkR8nTIjGiMW1jQ==} 1000 | engines: {node: '>= 10'} 1001 | cpu: [x64] 1002 | os: [darwin] 1003 | 1004 | '@next/swc-linux-arm64-gnu@15.2.1': 1005 | resolution: {integrity: sha512-gXDX5lIboebbjhiMT6kFgu4svQyjoSed6dHyjx5uZsjlvTwOAnZpn13w9XDaIMFFHw7K8CpBK7HfDKw0VZvUXQ==} 1006 | engines: {node: '>= 10'} 1007 | cpu: [arm64] 1008 | os: [linux] 1009 | 1010 | '@next/swc-linux-arm64-musl@15.2.1': 1011 | resolution: {integrity: sha512-3v0pF/adKZkBWfUffmB/ROa+QcNTrnmYG4/SS+r52HPwAK479XcWoES2I+7F7lcbqc7mTeVXrIvb4h6rR/iDKg==} 1012 | engines: {node: '>= 10'} 1013 | cpu: [arm64] 1014 | os: [linux] 1015 | 1016 | '@next/swc-linux-x64-gnu@15.2.1': 1017 | resolution: {integrity: sha512-RbsVq2iB6KFJRZ2cHrU67jLVLKeuOIhnQB05ygu5fCNgg8oTewxweJE8XlLV+Ii6Y6u4EHwETdUiRNXIAfpBww==} 1018 | engines: {node: '>= 10'} 1019 | cpu: [x64] 1020 | os: [linux] 1021 | 1022 | '@next/swc-linux-x64-musl@15.2.1': 1023 | resolution: {integrity: sha512-QHsMLAyAIu6/fWjHmkN/F78EFPKmhQlyX5C8pRIS2RwVA7z+t9cTb0IaYWC3EHLOTjsU7MNQW+n2xGXr11QPpg==} 1024 | engines: {node: '>= 10'} 1025 | cpu: [x64] 1026 | os: [linux] 1027 | 1028 | '@next/swc-win32-arm64-msvc@15.2.1': 1029 | resolution: {integrity: sha512-Gk42XZXo1cE89i3hPLa/9KZ8OuupTjkDmhLaMKFohjf9brOeZVEa3BQy1J9s9TWUqPhgAEbwv6B2+ciGfe54Vw==} 1030 | engines: {node: '>= 10'} 1031 | cpu: [arm64] 1032 | os: [win32] 1033 | 1034 | '@next/swc-win32-x64-msvc@15.2.1': 1035 | resolution: {integrity: sha512-YjqXCl8QGhVlMR8uBftWk0iTmvtntr41PhG1kvzGp0sUP/5ehTM+cwx25hKE54J0CRnHYjSGjSH3gkHEaHIN9g==} 1036 | engines: {node: '>= 10'} 1037 | cpu: [x64] 1038 | os: [win32] 1039 | 1040 | '@nodelib/fs.scandir@2.1.5': 1041 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 1042 | engines: {node: '>= 8'} 1043 | 1044 | '@nodelib/fs.stat@2.0.5': 1045 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 1046 | engines: {node: '>= 8'} 1047 | 1048 | '@nodelib/fs.walk@1.2.8': 1049 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 1050 | engines: {node: '>= 8'} 1051 | 1052 | '@petamoriken/float16@3.9.1': 1053 | resolution: {integrity: sha512-j+ejhYwY6PeB+v1kn7lZFACUIG97u90WxMuGosILFsl9d4Ovi0sjk0GlPfoEcx+FzvXZDAfioD+NGnnPamXgMA==} 1054 | 1055 | '@pkgjs/parseargs@0.11.0': 1056 | resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} 1057 | engines: {node: '>=14'} 1058 | 1059 | '@prisma/client@6.4.1': 1060 | resolution: {integrity: sha512-A7Mwx44+GVZVexT5e2GF/WcKkEkNNKbgr059xpr5mn+oUm2ZW1svhe+0TRNBwCdzhfIZ+q23jEgsNPvKD9u+6g==} 1061 | engines: {node: '>=18.18'} 1062 | peerDependencies: 1063 | prisma: '*' 1064 | typescript: '>=5.1.0' 1065 | peerDependenciesMeta: 1066 | prisma: 1067 | optional: true 1068 | typescript: 1069 | optional: true 1070 | 1071 | '@prisma/debug@6.4.1': 1072 | resolution: {integrity: sha512-Q9xk6yjEGIThjSD8zZegxd5tBRNHYd13GOIG0nLsanbTXATiPXCLyvlYEfvbR2ft6dlRsziQXfQGxAgv7zcMUA==} 1073 | 1074 | '@prisma/engines-version@6.4.0-29.a9055b89e58b4b5bfb59600785423b1db3d0e75d': 1075 | resolution: {integrity: sha512-Xq54qw55vaCGrGgIJqyDwOq0TtjZPJEWsbQAHugk99hpDf2jcEeQhUcF+yzEsSqegBaDNLA4IC8Nn34sXmkiTQ==} 1076 | 1077 | '@prisma/engines@6.4.1': 1078 | resolution: {integrity: sha512-KldENzMHtKYwsOSLThghOIdXOBEsfDuGSrxAZjMnimBiDKd3AE4JQ+Kv+gBD/x77WoV9xIPf25GXMWffXZ17BA==} 1079 | 1080 | '@prisma/fetch-engine@6.4.1': 1081 | resolution: {integrity: sha512-uZ5hVeTmDspx7KcaRCNoXmcReOD+84nwlO2oFvQPRQh9xiFYnnUKDz7l9bLxp8t4+25CsaNlgrgilXKSQwrIGQ==} 1082 | 1083 | '@prisma/get-platform@6.4.1': 1084 | resolution: {integrity: sha512-gXqZaDI5scDkBF8oza7fOD3Q3QMD0e0rBynlzDDZdTWbWmzjuW58PRZtj+jkvKje2+ZigCWkH8SsWZAsH6q1Yw==} 1085 | 1086 | '@rollup/rollup-android-arm-eabi@4.35.0': 1087 | resolution: {integrity: sha512-uYQ2WfPaqz5QtVgMxfN6NpLD+no0MYHDBywl7itPYd3K5TjjSghNKmX8ic9S8NU8w81NVhJv/XojcHptRly7qQ==} 1088 | cpu: [arm] 1089 | os: [android] 1090 | 1091 | '@rollup/rollup-android-arm64@4.35.0': 1092 | resolution: {integrity: sha512-FtKddj9XZudurLhdJnBl9fl6BwCJ3ky8riCXjEw3/UIbjmIY58ppWwPEvU3fNu+W7FUsAsB1CdH+7EQE6CXAPA==} 1093 | cpu: [arm64] 1094 | os: [android] 1095 | 1096 | '@rollup/rollup-darwin-arm64@4.35.0': 1097 | resolution: {integrity: sha512-Uk+GjOJR6CY844/q6r5DR/6lkPFOw0hjfOIzVx22THJXMxktXG6CbejseJFznU8vHcEBLpiXKY3/6xc+cBm65Q==} 1098 | cpu: [arm64] 1099 | os: [darwin] 1100 | 1101 | '@rollup/rollup-darwin-x64@4.35.0': 1102 | resolution: {integrity: sha512-3IrHjfAS6Vkp+5bISNQnPogRAW5GAV1n+bNCrDwXmfMHbPl5EhTmWtfmwlJxFRUCBZ+tZ/OxDyU08aF6NI/N5Q==} 1103 | cpu: [x64] 1104 | os: [darwin] 1105 | 1106 | '@rollup/rollup-freebsd-arm64@4.35.0': 1107 | resolution: {integrity: sha512-sxjoD/6F9cDLSELuLNnY0fOrM9WA0KrM0vWm57XhrIMf5FGiN8D0l7fn+bpUeBSU7dCgPV2oX4zHAsAXyHFGcQ==} 1108 | cpu: [arm64] 1109 | os: [freebsd] 1110 | 1111 | '@rollup/rollup-freebsd-x64@4.35.0': 1112 | resolution: {integrity: sha512-2mpHCeRuD1u/2kruUiHSsnjWtHjqVbzhBkNVQ1aVD63CcexKVcQGwJ2g5VphOd84GvxfSvnnlEyBtQCE5hxVVw==} 1113 | cpu: [x64] 1114 | os: [freebsd] 1115 | 1116 | '@rollup/rollup-linux-arm-gnueabihf@4.35.0': 1117 | resolution: {integrity: sha512-mrA0v3QMy6ZSvEuLs0dMxcO2LnaCONs1Z73GUDBHWbY8tFFocM6yl7YyMu7rz4zS81NDSqhrUuolyZXGi8TEqg==} 1118 | cpu: [arm] 1119 | os: [linux] 1120 | 1121 | '@rollup/rollup-linux-arm-musleabihf@4.35.0': 1122 | resolution: {integrity: sha512-DnYhhzcvTAKNexIql8pFajr0PiDGrIsBYPRvCKlA5ixSS3uwo/CWNZxB09jhIapEIg945KOzcYEAGGSmTSpk7A==} 1123 | cpu: [arm] 1124 | os: [linux] 1125 | 1126 | '@rollup/rollup-linux-arm64-gnu@4.35.0': 1127 | resolution: {integrity: sha512-uagpnH2M2g2b5iLsCTZ35CL1FgyuzzJQ8L9VtlJ+FckBXroTwNOaD0z0/UF+k5K3aNQjbm8LIVpxykUOQt1m/A==} 1128 | cpu: [arm64] 1129 | os: [linux] 1130 | 1131 | '@rollup/rollup-linux-arm64-musl@4.35.0': 1132 | resolution: {integrity: sha512-XQxVOCd6VJeHQA/7YcqyV0/88N6ysSVzRjJ9I9UA/xXpEsjvAgDTgH3wQYz5bmr7SPtVK2TsP2fQ2N9L4ukoUg==} 1133 | cpu: [arm64] 1134 | os: [linux] 1135 | 1136 | '@rollup/rollup-linux-loongarch64-gnu@4.35.0': 1137 | resolution: {integrity: sha512-5pMT5PzfgwcXEwOaSrqVsz/LvjDZt+vQ8RT/70yhPU06PTuq8WaHhfT1LW+cdD7mW6i/J5/XIkX/1tCAkh1W6g==} 1138 | cpu: [loong64] 1139 | os: [linux] 1140 | 1141 | '@rollup/rollup-linux-powerpc64le-gnu@4.35.0': 1142 | resolution: {integrity: sha512-c+zkcvbhbXF98f4CtEIP1EBA/lCic5xB0lToneZYvMeKu5Kamq3O8gqrxiYYLzlZH6E3Aq+TSW86E4ay8iD8EA==} 1143 | cpu: [ppc64] 1144 | os: [linux] 1145 | 1146 | '@rollup/rollup-linux-riscv64-gnu@4.35.0': 1147 | resolution: {integrity: sha512-s91fuAHdOwH/Tad2tzTtPX7UZyytHIRR6V4+2IGlV0Cej5rkG0R61SX4l4y9sh0JBibMiploZx3oHKPnQBKe4g==} 1148 | cpu: [riscv64] 1149 | os: [linux] 1150 | 1151 | '@rollup/rollup-linux-s390x-gnu@4.35.0': 1152 | resolution: {integrity: sha512-hQRkPQPLYJZYGP+Hj4fR9dDBMIM7zrzJDWFEMPdTnTy95Ljnv0/4w/ixFw3pTBMEuuEuoqtBINYND4M7ujcuQw==} 1153 | cpu: [s390x] 1154 | os: [linux] 1155 | 1156 | '@rollup/rollup-linux-x64-gnu@4.35.0': 1157 | resolution: {integrity: sha512-Pim1T8rXOri+0HmV4CdKSGrqcBWX0d1HoPnQ0uw0bdp1aP5SdQVNBy8LjYncvnLgu3fnnCt17xjWGd4cqh8/hA==} 1158 | cpu: [x64] 1159 | os: [linux] 1160 | 1161 | '@rollup/rollup-linux-x64-musl@4.35.0': 1162 | resolution: {integrity: sha512-QysqXzYiDvQWfUiTm8XmJNO2zm9yC9P/2Gkrwg2dH9cxotQzunBHYr6jk4SujCTqnfGxduOmQcI7c2ryuW8XVg==} 1163 | cpu: [x64] 1164 | os: [linux] 1165 | 1166 | '@rollup/rollup-win32-arm64-msvc@4.35.0': 1167 | resolution: {integrity: sha512-OUOlGqPkVJCdJETKOCEf1mw848ZyJ5w50/rZ/3IBQVdLfR5jk/6Sr5m3iO2tdPgwo0x7VcncYuOvMhBWZq8ayg==} 1168 | cpu: [arm64] 1169 | os: [win32] 1170 | 1171 | '@rollup/rollup-win32-ia32-msvc@4.35.0': 1172 | resolution: {integrity: sha512-2/lsgejMrtwQe44glq7AFFHLfJBPafpsTa6JvP2NGef/ifOa4KBoglVf7AKN7EV9o32evBPRqfg96fEHzWo5kw==} 1173 | cpu: [ia32] 1174 | os: [win32] 1175 | 1176 | '@rollup/rollup-win32-x64-msvc@4.35.0': 1177 | resolution: {integrity: sha512-PIQeY5XDkrOysbQblSW7v3l1MDZzkTEzAfTPkj5VAu3FW8fS4ynyLg2sINp0fp3SjZ8xkRYpLqoKcYqAkhU1dw==} 1178 | cpu: [x64] 1179 | os: [win32] 1180 | 1181 | '@swc/counter@0.1.3': 1182 | resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==} 1183 | 1184 | '@swc/helpers@0.5.15': 1185 | resolution: {integrity: sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==} 1186 | 1187 | '@types/estree@1.0.6': 1188 | resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} 1189 | 1190 | '@types/json-schema@7.0.15': 1191 | resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} 1192 | 1193 | '@types/node@20.17.24': 1194 | resolution: {integrity: sha512-d7fGCyB96w9BnWQrOsJtpyiSaBcAYYr75bnK6ZRjDbql2cGLj/3GsL5OYmLPNq76l7Gf2q4Rv9J2o6h5CrD9sA==} 1195 | 1196 | '@types/react-dom@19.0.4': 1197 | resolution: {integrity: sha512-4fSQ8vWFkg+TGhePfUzVmat3eC14TXYSsiiDSLI0dVLsrm9gZFABjPy/Qu6TKgl1tq1Bu1yDsuQgY3A3DOjCcg==} 1198 | peerDependencies: 1199 | '@types/react': ^19.0.0 1200 | 1201 | '@types/react@19.0.10': 1202 | resolution: {integrity: sha512-JuRQ9KXLEjaUNjTWpzuR231Z2WpIwczOkBEIvbHNCzQefFIT0L8IqE6NV6ULLyC1SI/i234JnDoMkfg+RjQj2g==} 1203 | 1204 | '@types/ws@8.18.0': 1205 | resolution: {integrity: sha512-8svvI3hMyvN0kKCJMvTJP/x6Y/EoQbepff882wL+Sn5QsXb3etnamgrJq4isrBxSJj5L2AuXcI0+bgkoAXGUJw==} 1206 | 1207 | '@typescript-eslint/eslint-plugin@8.26.0': 1208 | resolution: {integrity: sha512-cLr1J6pe56zjKYajK6SSSre6nl1Gj6xDp1TY0trpgPzjVbgDwd09v2Ws37LABxzkicmUjhEeg/fAUjPJJB1v5Q==} 1209 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 1210 | peerDependencies: 1211 | '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 1212 | eslint: ^8.57.0 || ^9.0.0 1213 | typescript: '>=4.8.4 <5.9.0' 1214 | 1215 | '@typescript-eslint/parser@8.26.0': 1216 | resolution: {integrity: sha512-mNtXP9LTVBy14ZF3o7JG69gRPBK/2QWtQd0j0oH26HcY/foyJJau6pNUez7QrM5UHnSvwlQcJXKsk0I99B9pOA==} 1217 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 1218 | peerDependencies: 1219 | eslint: ^8.57.0 || ^9.0.0 1220 | typescript: '>=4.8.4 <5.9.0' 1221 | 1222 | '@typescript-eslint/scope-manager@8.26.0': 1223 | resolution: {integrity: sha512-E0ntLvsfPqnPwng8b8y4OGuzh/iIOm2z8U3S9zic2TeMLW61u5IH2Q1wu0oSTkfrSzwbDJIB/Lm8O3//8BWMPA==} 1224 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 1225 | 1226 | '@typescript-eslint/type-utils@8.26.0': 1227 | resolution: {integrity: sha512-ruk0RNChLKz3zKGn2LwXuVoeBcUMh+jaqzN461uMMdxy5H9epZqIBtYj7UiPXRuOpaALXGbmRuZQhmwHhaS04Q==} 1228 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 1229 | peerDependencies: 1230 | eslint: ^8.57.0 || ^9.0.0 1231 | typescript: '>=4.8.4 <5.9.0' 1232 | 1233 | '@typescript-eslint/types@8.26.0': 1234 | resolution: {integrity: sha512-89B1eP3tnpr9A8L6PZlSjBvnJhWXtYfZhECqlBl1D9Lme9mHO6iWlsprBtVenQvY1HMhax1mWOjhtL3fh/u+pA==} 1235 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 1236 | 1237 | '@typescript-eslint/typescript-estree@8.26.0': 1238 | resolution: {integrity: sha512-tiJ1Hvy/V/oMVRTbEOIeemA2XoylimlDQ03CgPPNaHYZbpsc78Hmngnt+WXZfJX1pjQ711V7g0H7cSJThGYfPQ==} 1239 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 1240 | peerDependencies: 1241 | typescript: '>=4.8.4 <5.9.0' 1242 | 1243 | '@typescript-eslint/utils@8.26.0': 1244 | resolution: {integrity: sha512-2L2tU3FVwhvU14LndnQCA2frYC8JnPDVKyQtWFPf8IYFMt/ykEN1bPolNhNbCVgOmdzTlWdusCTKA/9nKrf8Ig==} 1245 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 1246 | peerDependencies: 1247 | eslint: ^8.57.0 || ^9.0.0 1248 | typescript: '>=4.8.4 <5.9.0' 1249 | 1250 | '@typescript-eslint/visitor-keys@8.26.0': 1251 | resolution: {integrity: sha512-2z8JQJWAzPdDd51dRQ/oqIJxe99/hoLIqmf8RMCAJQtYDc535W/Jt2+RTP4bP0aKeBG1F65yjIZuczOXCmbWwg==} 1252 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 1253 | 1254 | acorn-jsx@5.3.2: 1255 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} 1256 | peerDependencies: 1257 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 1258 | 1259 | acorn@8.14.1: 1260 | resolution: {integrity: sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==} 1261 | engines: {node: '>=0.4.0'} 1262 | hasBin: true 1263 | 1264 | ajv@6.12.6: 1265 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 1266 | 1267 | ansi-regex@5.0.1: 1268 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 1269 | engines: {node: '>=8'} 1270 | 1271 | ansi-regex@6.1.0: 1272 | resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==} 1273 | engines: {node: '>=12'} 1274 | 1275 | ansi-styles@4.3.0: 1276 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 1277 | engines: {node: '>=8'} 1278 | 1279 | ansi-styles@6.2.1: 1280 | resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} 1281 | engines: {node: '>=12'} 1282 | 1283 | any-promise@1.3.0: 1284 | resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} 1285 | 1286 | argparse@2.0.1: 1287 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} 1288 | 1289 | array-buffer-byte-length@1.0.2: 1290 | resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==} 1291 | engines: {node: '>= 0.4'} 1292 | 1293 | array-includes@3.1.8: 1294 | resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==} 1295 | engines: {node: '>= 0.4'} 1296 | 1297 | array.prototype.findlast@1.2.5: 1298 | resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} 1299 | engines: {node: '>= 0.4'} 1300 | 1301 | array.prototype.flat@1.3.3: 1302 | resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==} 1303 | engines: {node: '>= 0.4'} 1304 | 1305 | array.prototype.flatmap@1.3.3: 1306 | resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==} 1307 | engines: {node: '>= 0.4'} 1308 | 1309 | array.prototype.tosorted@1.1.4: 1310 | resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} 1311 | engines: {node: '>= 0.4'} 1312 | 1313 | arraybuffer.prototype.slice@1.0.4: 1314 | resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} 1315 | engines: {node: '>= 0.4'} 1316 | 1317 | async-function@1.0.0: 1318 | resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==} 1319 | engines: {node: '>= 0.4'} 1320 | 1321 | available-typed-arrays@1.0.7: 1322 | resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} 1323 | engines: {node: '>= 0.4'} 1324 | 1325 | balanced-match@1.0.2: 1326 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 1327 | 1328 | brace-expansion@1.1.11: 1329 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 1330 | 1331 | brace-expansion@2.0.1: 1332 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} 1333 | 1334 | braces@3.0.3: 1335 | resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} 1336 | engines: {node: '>=8'} 1337 | 1338 | buffer-from@1.1.2: 1339 | resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} 1340 | 1341 | bundle-require@5.1.0: 1342 | resolution: {integrity: sha512-3WrrOuZiyaaZPWiEt4G3+IffISVC9HYlWueJEBWED4ZH4aIAC2PnkdnuRrR94M+w6yGWn4AglWtJtBI8YqvgoA==} 1343 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 1344 | peerDependencies: 1345 | esbuild: '>=0.18' 1346 | 1347 | busboy@1.6.0: 1348 | resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} 1349 | engines: {node: '>=10.16.0'} 1350 | 1351 | cac@6.7.14: 1352 | resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} 1353 | engines: {node: '>=8'} 1354 | 1355 | call-bind-apply-helpers@1.0.2: 1356 | resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} 1357 | engines: {node: '>= 0.4'} 1358 | 1359 | call-bind@1.0.8: 1360 | resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} 1361 | engines: {node: '>= 0.4'} 1362 | 1363 | call-bound@1.0.4: 1364 | resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} 1365 | engines: {node: '>= 0.4'} 1366 | 1367 | callsites@3.1.0: 1368 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 1369 | engines: {node: '>=6'} 1370 | 1371 | caniuse-lite@1.0.30001702: 1372 | resolution: {integrity: sha512-LoPe/D7zioC0REI5W73PeR1e1MLCipRGq/VkovJnd6Df+QVqT+vT33OXCp8QUd7kA7RZrHWxb1B36OQKI/0gOA==} 1373 | 1374 | chalk@4.1.2: 1375 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 1376 | engines: {node: '>=10'} 1377 | 1378 | chokidar@4.0.3: 1379 | resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} 1380 | engines: {node: '>= 14.16.0'} 1381 | 1382 | client-only@0.0.1: 1383 | resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} 1384 | 1385 | color-convert@2.0.1: 1386 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 1387 | engines: {node: '>=7.0.0'} 1388 | 1389 | color-name@1.1.4: 1390 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 1391 | 1392 | color-string@1.9.1: 1393 | resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} 1394 | 1395 | color@4.2.3: 1396 | resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} 1397 | engines: {node: '>=12.5.0'} 1398 | 1399 | commander@4.1.1: 1400 | resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} 1401 | engines: {node: '>= 6'} 1402 | 1403 | concat-map@0.0.1: 1404 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 1405 | 1406 | consola@3.4.0: 1407 | resolution: {integrity: sha512-EiPU8G6dQG0GFHNR8ljnZFki/8a+cQwEQ+7wpxdChl02Q8HXlwEZWD5lqAF8vC2sEC3Tehr8hy7vErz88LHyUA==} 1408 | engines: {node: ^14.18.0 || >=16.10.0} 1409 | 1410 | cross-spawn@7.0.6: 1411 | resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} 1412 | engines: {node: '>= 8'} 1413 | 1414 | csstype@3.1.3: 1415 | resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} 1416 | 1417 | data-uri-to-buffer@4.0.1: 1418 | resolution: {integrity: sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==} 1419 | engines: {node: '>= 12'} 1420 | 1421 | data-view-buffer@1.0.2: 1422 | resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==} 1423 | engines: {node: '>= 0.4'} 1424 | 1425 | data-view-byte-length@1.0.2: 1426 | resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==} 1427 | engines: {node: '>= 0.4'} 1428 | 1429 | data-view-byte-offset@1.0.1: 1430 | resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==} 1431 | engines: {node: '>= 0.4'} 1432 | 1433 | debug@4.4.0: 1434 | resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} 1435 | engines: {node: '>=6.0'} 1436 | peerDependencies: 1437 | supports-color: '*' 1438 | peerDependenciesMeta: 1439 | supports-color: 1440 | optional: true 1441 | 1442 | deep-is@0.1.4: 1443 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} 1444 | 1445 | define-data-property@1.1.4: 1446 | resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} 1447 | engines: {node: '>= 0.4'} 1448 | 1449 | define-properties@1.2.1: 1450 | resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} 1451 | engines: {node: '>= 0.4'} 1452 | 1453 | detect-libc@2.0.2: 1454 | resolution: {integrity: sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==} 1455 | engines: {node: '>=8'} 1456 | 1457 | detect-libc@2.0.3: 1458 | resolution: {integrity: sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==} 1459 | engines: {node: '>=8'} 1460 | 1461 | doctrine@2.1.0: 1462 | resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} 1463 | engines: {node: '>=0.10.0'} 1464 | 1465 | dotenv@16.0.3: 1466 | resolution: {integrity: sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==} 1467 | engines: {node: '>=12'} 1468 | 1469 | dotenv@16.4.7: 1470 | resolution: {integrity: sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==} 1471 | engines: {node: '>=12'} 1472 | 1473 | drizzle-kit@0.30.5: 1474 | resolution: {integrity: sha512-l6dMSE100u7sDaTbLczibrQZjA35jLsHNqIV+jmhNVO3O8jzM6kywMOmV9uOz9ZVSCMPQhAZEFjL/qDPVrqpUA==} 1475 | hasBin: true 1476 | 1477 | drizzle-orm@0.40.0: 1478 | resolution: {integrity: sha512-7ptk/HQiMSrEZHnAsSlBESXWj52VwgMmyTEfoNmpNN2ZXpcz13LwHfXTIghsAEud7Z5UJhDOp8U07ujcqme7wg==} 1479 | peerDependencies: 1480 | '@aws-sdk/client-rds-data': '>=3' 1481 | '@cloudflare/workers-types': '>=4' 1482 | '@electric-sql/pglite': '>=0.2.0' 1483 | '@libsql/client': '>=0.10.0' 1484 | '@libsql/client-wasm': '>=0.10.0' 1485 | '@neondatabase/serverless': '>=0.10.0' 1486 | '@op-engineering/op-sqlite': '>=2' 1487 | '@opentelemetry/api': ^1.4.1 1488 | '@planetscale/database': '>=1' 1489 | '@prisma/client': '*' 1490 | '@tidbcloud/serverless': '*' 1491 | '@types/better-sqlite3': '*' 1492 | '@types/pg': '*' 1493 | '@types/sql.js': '*' 1494 | '@vercel/postgres': '>=0.8.0' 1495 | '@xata.io/client': '*' 1496 | better-sqlite3: '>=7' 1497 | bun-types: '*' 1498 | expo-sqlite: '>=14.0.0' 1499 | gel: '>=2' 1500 | knex: '*' 1501 | kysely: '*' 1502 | mysql2: '>=2' 1503 | pg: '>=8' 1504 | postgres: '>=3' 1505 | prisma: '*' 1506 | sql.js: '>=1' 1507 | sqlite3: '>=5' 1508 | peerDependenciesMeta: 1509 | '@aws-sdk/client-rds-data': 1510 | optional: true 1511 | '@cloudflare/workers-types': 1512 | optional: true 1513 | '@electric-sql/pglite': 1514 | optional: true 1515 | '@libsql/client': 1516 | optional: true 1517 | '@libsql/client-wasm': 1518 | optional: true 1519 | '@neondatabase/serverless': 1520 | optional: true 1521 | '@op-engineering/op-sqlite': 1522 | optional: true 1523 | '@opentelemetry/api': 1524 | optional: true 1525 | '@planetscale/database': 1526 | optional: true 1527 | '@prisma/client': 1528 | optional: true 1529 | '@tidbcloud/serverless': 1530 | optional: true 1531 | '@types/better-sqlite3': 1532 | optional: true 1533 | '@types/pg': 1534 | optional: true 1535 | '@types/sql.js': 1536 | optional: true 1537 | '@vercel/postgres': 1538 | optional: true 1539 | '@xata.io/client': 1540 | optional: true 1541 | better-sqlite3: 1542 | optional: true 1543 | bun-types: 1544 | optional: true 1545 | expo-sqlite: 1546 | optional: true 1547 | gel: 1548 | optional: true 1549 | knex: 1550 | optional: true 1551 | kysely: 1552 | optional: true 1553 | mysql2: 1554 | optional: true 1555 | pg: 1556 | optional: true 1557 | postgres: 1558 | optional: true 1559 | prisma: 1560 | optional: true 1561 | sql.js: 1562 | optional: true 1563 | sqlite3: 1564 | optional: true 1565 | 1566 | dunder-proto@1.0.1: 1567 | resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} 1568 | engines: {node: '>= 0.4'} 1569 | 1570 | eastasianwidth@0.2.0: 1571 | resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} 1572 | 1573 | emoji-regex@8.0.0: 1574 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} 1575 | 1576 | emoji-regex@9.2.2: 1577 | resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} 1578 | 1579 | env-paths@3.0.0: 1580 | resolution: {integrity: sha512-dtJUTepzMW3Lm/NPxRf3wP4642UWhjL2sQxc+ym2YMj1m/H2zDNQOlezafzkHwn6sMstjHTwG6iQQsctDW/b1A==} 1581 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 1582 | 1583 | es-abstract@1.23.9: 1584 | resolution: {integrity: sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA==} 1585 | engines: {node: '>= 0.4'} 1586 | 1587 | es-define-property@1.0.1: 1588 | resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} 1589 | engines: {node: '>= 0.4'} 1590 | 1591 | es-errors@1.3.0: 1592 | resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} 1593 | engines: {node: '>= 0.4'} 1594 | 1595 | es-iterator-helpers@1.2.1: 1596 | resolution: {integrity: sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==} 1597 | engines: {node: '>= 0.4'} 1598 | 1599 | es-object-atoms@1.1.1: 1600 | resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} 1601 | engines: {node: '>= 0.4'} 1602 | 1603 | es-set-tostringtag@2.1.0: 1604 | resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} 1605 | engines: {node: '>= 0.4'} 1606 | 1607 | es-shim-unscopables@1.1.0: 1608 | resolution: {integrity: sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==} 1609 | engines: {node: '>= 0.4'} 1610 | 1611 | es-to-primitive@1.3.0: 1612 | resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} 1613 | engines: {node: '>= 0.4'} 1614 | 1615 | esbuild-register@3.6.0: 1616 | resolution: {integrity: sha512-H2/S7Pm8a9CL1uhp9OvjwrBh5Pvx0H8qVOxNu8Wed9Y7qv56MPtq+GGM8RJpq6glYJn9Wspr8uw7l55uyinNeg==} 1617 | peerDependencies: 1618 | esbuild: '>=0.12 <1' 1619 | 1620 | esbuild@0.18.20: 1621 | resolution: {integrity: sha512-ceqxoedUrcayh7Y7ZX6NdbbDzGROiyVBgC4PriJThBKSVPWnnFHZAkfI1lJT8QFkOwH4qOS2SJkS4wvpGl8BpA==} 1622 | engines: {node: '>=12'} 1623 | hasBin: true 1624 | 1625 | esbuild@0.19.12: 1626 | resolution: {integrity: sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==} 1627 | engines: {node: '>=12'} 1628 | hasBin: true 1629 | 1630 | esbuild@0.23.1: 1631 | resolution: {integrity: sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==} 1632 | engines: {node: '>=18'} 1633 | hasBin: true 1634 | 1635 | esbuild@0.25.0: 1636 | resolution: {integrity: sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw==} 1637 | engines: {node: '>=18'} 1638 | hasBin: true 1639 | 1640 | escape-string-regexp@4.0.0: 1641 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} 1642 | engines: {node: '>=10'} 1643 | 1644 | eslint-config-prettier@10.1.1: 1645 | resolution: {integrity: sha512-4EQQr6wXwS+ZJSzaR5ZCrYgLxqvUjdXctaEtBqHcbkW944B1NQyO4qpdHQbXBONfwxXdkAY81HH4+LUfrg+zPw==} 1646 | hasBin: true 1647 | peerDependencies: 1648 | eslint: '>=7.0.0' 1649 | 1650 | eslint-plugin-only-warn@1.1.0: 1651 | resolution: {integrity: sha512-2tktqUAT+Q3hCAU0iSf4xAN1k9zOpjK5WO8104mB0rT/dGhOa09582HN5HlbxNbPRZ0THV7nLGvzugcNOSjzfA==} 1652 | engines: {node: '>=6'} 1653 | 1654 | eslint-plugin-react-hooks@5.2.0: 1655 | resolution: {integrity: sha512-+f15FfK64YQwZdJNELETdn5ibXEUQmW1DZL6KXhNnc2heoy/sg9VJJeT7n8TlMWouzWqSWavFkIhHyIbIAEapg==} 1656 | engines: {node: '>=10'} 1657 | peerDependencies: 1658 | eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 1659 | 1660 | eslint-plugin-react@7.37.4: 1661 | resolution: {integrity: sha512-BGP0jRmfYyvOyvMoRX/uoUeW+GqNj9y16bPQzqAHf3AYII/tDs+jMN0dBVkl88/OZwNGwrVFxE7riHsXVfy/LQ==} 1662 | engines: {node: '>=4'} 1663 | peerDependencies: 1664 | eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 1665 | 1666 | eslint-plugin-turbo@2.4.4: 1667 | resolution: {integrity: sha512-myEnQTjr3FkI0j1Fu0Mqnv1z8n0JW5iFTOUNzHaEevjzl+1uzMSsFwks/x8i3rGmI3EYtC1BY8K2B2pS0Vfx6w==} 1668 | peerDependencies: 1669 | eslint: '>6.6.0' 1670 | turbo: '>2.0.0' 1671 | 1672 | eslint-scope@8.3.0: 1673 | resolution: {integrity: sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==} 1674 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 1675 | 1676 | eslint-visitor-keys@3.4.3: 1677 | resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} 1678 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1679 | 1680 | eslint-visitor-keys@4.2.0: 1681 | resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} 1682 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 1683 | 1684 | eslint@9.22.0: 1685 | resolution: {integrity: sha512-9V/QURhsRN40xuHXWjV64yvrzMjcz7ZyNoF2jJFmy9j/SLk0u1OLSZgXi28MrXjymnjEGSR80WCdab3RGMDveQ==} 1686 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 1687 | hasBin: true 1688 | peerDependencies: 1689 | jiti: '*' 1690 | peerDependenciesMeta: 1691 | jiti: 1692 | optional: true 1693 | 1694 | espree@10.3.0: 1695 | resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==} 1696 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 1697 | 1698 | esquery@1.6.0: 1699 | resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} 1700 | engines: {node: '>=0.10'} 1701 | 1702 | esrecurse@4.3.0: 1703 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} 1704 | engines: {node: '>=4.0'} 1705 | 1706 | estraverse@5.3.0: 1707 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} 1708 | engines: {node: '>=4.0'} 1709 | 1710 | esutils@2.0.3: 1711 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 1712 | engines: {node: '>=0.10.0'} 1713 | 1714 | fast-deep-equal@3.1.3: 1715 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 1716 | 1717 | fast-glob@3.3.1: 1718 | resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} 1719 | engines: {node: '>=8.6.0'} 1720 | 1721 | fast-glob@3.3.3: 1722 | resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} 1723 | engines: {node: '>=8.6.0'} 1724 | 1725 | fast-json-stable-stringify@2.1.0: 1726 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 1727 | 1728 | fast-levenshtein@2.0.6: 1729 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} 1730 | 1731 | fastq@1.19.1: 1732 | resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} 1733 | 1734 | fdir@6.4.3: 1735 | resolution: {integrity: sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==} 1736 | peerDependencies: 1737 | picomatch: ^3 || ^4 1738 | peerDependenciesMeta: 1739 | picomatch: 1740 | optional: true 1741 | 1742 | fetch-blob@3.2.0: 1743 | resolution: {integrity: sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==} 1744 | engines: {node: ^12.20 || >= 14.13} 1745 | 1746 | file-entry-cache@8.0.0: 1747 | resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} 1748 | engines: {node: '>=16.0.0'} 1749 | 1750 | fill-range@7.1.1: 1751 | resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} 1752 | engines: {node: '>=8'} 1753 | 1754 | find-up@5.0.0: 1755 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 1756 | engines: {node: '>=10'} 1757 | 1758 | flat-cache@4.0.1: 1759 | resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} 1760 | engines: {node: '>=16'} 1761 | 1762 | flatted@3.3.3: 1763 | resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} 1764 | 1765 | for-each@0.3.5: 1766 | resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} 1767 | engines: {node: '>= 0.4'} 1768 | 1769 | foreground-child@3.3.1: 1770 | resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} 1771 | engines: {node: '>=14'} 1772 | 1773 | formdata-polyfill@4.0.10: 1774 | resolution: {integrity: sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==} 1775 | engines: {node: '>=12.20.0'} 1776 | 1777 | fsevents@2.3.3: 1778 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} 1779 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 1780 | os: [darwin] 1781 | 1782 | function-bind@1.1.2: 1783 | resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} 1784 | 1785 | function.prototype.name@1.1.8: 1786 | resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==} 1787 | engines: {node: '>= 0.4'} 1788 | 1789 | functions-have-names@1.2.3: 1790 | resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} 1791 | 1792 | gel@2.0.1: 1793 | resolution: {integrity: sha512-gfem3IGvqKqXwEq7XseBogyaRwGsQGuE7Cw/yQsjLGdgiyqX92G1xENPCE0ltunPGcsJIa6XBOTx/PK169mOqw==} 1794 | engines: {node: '>= 18.0.0'} 1795 | hasBin: true 1796 | 1797 | get-intrinsic@1.3.0: 1798 | resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} 1799 | engines: {node: '>= 0.4'} 1800 | 1801 | get-proto@1.0.1: 1802 | resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} 1803 | engines: {node: '>= 0.4'} 1804 | 1805 | get-symbol-description@1.1.0: 1806 | resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} 1807 | engines: {node: '>= 0.4'} 1808 | 1809 | get-tsconfig@4.10.0: 1810 | resolution: {integrity: sha512-kGzZ3LWWQcGIAmg6iWvXn0ei6WDtV26wzHRMwDSzmAbcXrTEXxHy6IehI6/4eT6VRKyMP1eF1VqwrVUmE/LR7A==} 1811 | 1812 | glob-parent@5.1.2: 1813 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 1814 | engines: {node: '>= 6'} 1815 | 1816 | glob-parent@6.0.2: 1817 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 1818 | engines: {node: '>=10.13.0'} 1819 | 1820 | glob@10.3.10: 1821 | resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==} 1822 | engines: {node: '>=16 || 14 >=14.17'} 1823 | hasBin: true 1824 | 1825 | glob@10.4.5: 1826 | resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} 1827 | hasBin: true 1828 | 1829 | globals@14.0.0: 1830 | resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} 1831 | engines: {node: '>=18'} 1832 | 1833 | globals@16.0.0: 1834 | resolution: {integrity: sha512-iInW14XItCXET01CQFqudPOWP2jYMl7T+QRQT+UNcR/iQncN/F0UNpgd76iFkBPgNQb4+X3LV9tLJYzwh+Gl3A==} 1835 | engines: {node: '>=18'} 1836 | 1837 | globalthis@1.0.4: 1838 | resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} 1839 | engines: {node: '>= 0.4'} 1840 | 1841 | gopd@1.2.0: 1842 | resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} 1843 | engines: {node: '>= 0.4'} 1844 | 1845 | graphemer@1.4.0: 1846 | resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} 1847 | 1848 | has-bigints@1.1.0: 1849 | resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} 1850 | engines: {node: '>= 0.4'} 1851 | 1852 | has-flag@4.0.0: 1853 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 1854 | engines: {node: '>=8'} 1855 | 1856 | has-property-descriptors@1.0.2: 1857 | resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} 1858 | 1859 | has-proto@1.2.0: 1860 | resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} 1861 | engines: {node: '>= 0.4'} 1862 | 1863 | has-symbols@1.1.0: 1864 | resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} 1865 | engines: {node: '>= 0.4'} 1866 | 1867 | has-tostringtag@1.0.2: 1868 | resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} 1869 | engines: {node: '>= 0.4'} 1870 | 1871 | hasown@2.0.2: 1872 | resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} 1873 | engines: {node: '>= 0.4'} 1874 | 1875 | ignore@5.3.2: 1876 | resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} 1877 | engines: {node: '>= 4'} 1878 | 1879 | import-fresh@3.3.1: 1880 | resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} 1881 | engines: {node: '>=6'} 1882 | 1883 | imurmurhash@0.1.4: 1884 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} 1885 | engines: {node: '>=0.8.19'} 1886 | 1887 | internal-slot@1.1.0: 1888 | resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} 1889 | engines: {node: '>= 0.4'} 1890 | 1891 | is-array-buffer@3.0.5: 1892 | resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} 1893 | engines: {node: '>= 0.4'} 1894 | 1895 | is-arrayish@0.3.2: 1896 | resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} 1897 | 1898 | is-async-function@2.1.1: 1899 | resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==} 1900 | engines: {node: '>= 0.4'} 1901 | 1902 | is-bigint@1.1.0: 1903 | resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} 1904 | engines: {node: '>= 0.4'} 1905 | 1906 | is-boolean-object@1.2.2: 1907 | resolution: {integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==} 1908 | engines: {node: '>= 0.4'} 1909 | 1910 | is-callable@1.2.7: 1911 | resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} 1912 | engines: {node: '>= 0.4'} 1913 | 1914 | is-core-module@2.16.1: 1915 | resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} 1916 | engines: {node: '>= 0.4'} 1917 | 1918 | is-data-view@1.0.2: 1919 | resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} 1920 | engines: {node: '>= 0.4'} 1921 | 1922 | is-date-object@1.1.0: 1923 | resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} 1924 | engines: {node: '>= 0.4'} 1925 | 1926 | is-extglob@2.1.1: 1927 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 1928 | engines: {node: '>=0.10.0'} 1929 | 1930 | is-finalizationregistry@1.1.1: 1931 | resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} 1932 | engines: {node: '>= 0.4'} 1933 | 1934 | is-fullwidth-code-point@3.0.0: 1935 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} 1936 | engines: {node: '>=8'} 1937 | 1938 | is-generator-function@1.1.0: 1939 | resolution: {integrity: sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==} 1940 | engines: {node: '>= 0.4'} 1941 | 1942 | is-glob@4.0.3: 1943 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 1944 | engines: {node: '>=0.10.0'} 1945 | 1946 | is-map@2.0.3: 1947 | resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} 1948 | engines: {node: '>= 0.4'} 1949 | 1950 | is-number-object@1.1.1: 1951 | resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} 1952 | engines: {node: '>= 0.4'} 1953 | 1954 | is-number@7.0.0: 1955 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 1956 | engines: {node: '>=0.12.0'} 1957 | 1958 | is-regex@1.2.1: 1959 | resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} 1960 | engines: {node: '>= 0.4'} 1961 | 1962 | is-set@2.0.3: 1963 | resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} 1964 | engines: {node: '>= 0.4'} 1965 | 1966 | is-shared-array-buffer@1.0.4: 1967 | resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==} 1968 | engines: {node: '>= 0.4'} 1969 | 1970 | is-string@1.1.1: 1971 | resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} 1972 | engines: {node: '>= 0.4'} 1973 | 1974 | is-symbol@1.1.1: 1975 | resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} 1976 | engines: {node: '>= 0.4'} 1977 | 1978 | is-typed-array@1.1.15: 1979 | resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} 1980 | engines: {node: '>= 0.4'} 1981 | 1982 | is-weakmap@2.0.2: 1983 | resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} 1984 | engines: {node: '>= 0.4'} 1985 | 1986 | is-weakref@1.1.1: 1987 | resolution: {integrity: sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==} 1988 | engines: {node: '>= 0.4'} 1989 | 1990 | is-weakset@2.0.4: 1991 | resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==} 1992 | engines: {node: '>= 0.4'} 1993 | 1994 | isarray@2.0.5: 1995 | resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} 1996 | 1997 | isexe@2.0.0: 1998 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 1999 | 2000 | isexe@3.1.1: 2001 | resolution: {integrity: sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==} 2002 | engines: {node: '>=16'} 2003 | 2004 | iterator.prototype@1.1.5: 2005 | resolution: {integrity: sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==} 2006 | engines: {node: '>= 0.4'} 2007 | 2008 | jackspeak@2.3.6: 2009 | resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} 2010 | engines: {node: '>=14'} 2011 | 2012 | jackspeak@3.4.3: 2013 | resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} 2014 | 2015 | joycon@3.1.1: 2016 | resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==} 2017 | engines: {node: '>=10'} 2018 | 2019 | js-base64@3.7.7: 2020 | resolution: {integrity: sha512-7rCnleh0z2CkXhH67J8K1Ytz0b2Y+yxTPL+/KOJoa20hfnVQ/3/T6W/KflYI4bRHRagNeXeU2bkNGI3v1oS/lw==} 2021 | 2022 | js-tokens@4.0.0: 2023 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 2024 | 2025 | js-yaml@4.1.0: 2026 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} 2027 | hasBin: true 2028 | 2029 | json-buffer@3.0.1: 2030 | resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} 2031 | 2032 | json-schema-traverse@0.4.1: 2033 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 2034 | 2035 | json-stable-stringify-without-jsonify@1.0.1: 2036 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} 2037 | 2038 | jsx-ast-utils@3.3.5: 2039 | resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} 2040 | engines: {node: '>=4.0'} 2041 | 2042 | keyv@4.5.4: 2043 | resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} 2044 | 2045 | levn@0.4.1: 2046 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} 2047 | engines: {node: '>= 0.8.0'} 2048 | 2049 | libsql@0.4.7: 2050 | resolution: {integrity: sha512-T9eIRCs6b0J1SHKYIvD8+KCJMcWZ900iZyxdnSCdqxN12Z1ijzT+jY5nrk72Jw4B0HGzms2NgpryArlJqvc3Lw==} 2051 | os: [darwin, linux, win32] 2052 | 2053 | lilconfig@3.1.3: 2054 | resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} 2055 | engines: {node: '>=14'} 2056 | 2057 | lines-and-columns@1.2.4: 2058 | resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} 2059 | 2060 | load-tsconfig@0.2.5: 2061 | resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==} 2062 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 2063 | 2064 | locate-path@6.0.0: 2065 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 2066 | engines: {node: '>=10'} 2067 | 2068 | lodash.merge@4.6.2: 2069 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 2070 | 2071 | lodash.sortby@4.7.0: 2072 | resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} 2073 | 2074 | loose-envify@1.4.0: 2075 | resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} 2076 | hasBin: true 2077 | 2078 | lru-cache@10.4.3: 2079 | resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} 2080 | 2081 | math-intrinsics@1.1.0: 2082 | resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} 2083 | engines: {node: '>= 0.4'} 2084 | 2085 | merge2@1.4.1: 2086 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 2087 | engines: {node: '>= 8'} 2088 | 2089 | micromatch@4.0.8: 2090 | resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} 2091 | engines: {node: '>=8.6'} 2092 | 2093 | minimatch@3.1.2: 2094 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 2095 | 2096 | minimatch@9.0.5: 2097 | resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} 2098 | engines: {node: '>=16 || 14 >=14.17'} 2099 | 2100 | minipass@7.1.2: 2101 | resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} 2102 | engines: {node: '>=16 || 14 >=14.17'} 2103 | 2104 | ms@2.1.3: 2105 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} 2106 | 2107 | mz@2.7.0: 2108 | resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} 2109 | 2110 | nanoid@3.3.9: 2111 | resolution: {integrity: sha512-SppoicMGpZvbF1l3z4x7No3OlIjP7QJvC9XR7AhZr1kL133KHnKPztkKDc+Ir4aJ/1VhTySrtKhrsycmrMQfvg==} 2112 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 2113 | hasBin: true 2114 | 2115 | natural-compare@1.4.0: 2116 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} 2117 | 2118 | next@15.2.1: 2119 | resolution: {integrity: sha512-zxbsdQv3OqWXybK5tMkPCBKyhIz63RstJ+NvlfkaLMc/m5MwXgz2e92k+hSKcyBpyADhMk2C31RIiaDjUZae7g==} 2120 | engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0} 2121 | hasBin: true 2122 | peerDependencies: 2123 | '@opentelemetry/api': ^1.1.0 2124 | '@playwright/test': ^1.41.2 2125 | babel-plugin-react-compiler: '*' 2126 | react: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 2127 | react-dom: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 2128 | sass: ^1.3.0 2129 | peerDependenciesMeta: 2130 | '@opentelemetry/api': 2131 | optional: true 2132 | '@playwright/test': 2133 | optional: true 2134 | babel-plugin-react-compiler: 2135 | optional: true 2136 | sass: 2137 | optional: true 2138 | 2139 | node-domexception@1.0.0: 2140 | resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==} 2141 | engines: {node: '>=10.5.0'} 2142 | 2143 | node-fetch@3.3.2: 2144 | resolution: {integrity: sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==} 2145 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 2146 | 2147 | object-assign@4.1.1: 2148 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} 2149 | engines: {node: '>=0.10.0'} 2150 | 2151 | object-inspect@1.13.4: 2152 | resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} 2153 | engines: {node: '>= 0.4'} 2154 | 2155 | object-keys@1.1.1: 2156 | resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} 2157 | engines: {node: '>= 0.4'} 2158 | 2159 | object.assign@4.1.7: 2160 | resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==} 2161 | engines: {node: '>= 0.4'} 2162 | 2163 | object.entries@1.1.8: 2164 | resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==} 2165 | engines: {node: '>= 0.4'} 2166 | 2167 | object.fromentries@2.0.8: 2168 | resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} 2169 | engines: {node: '>= 0.4'} 2170 | 2171 | object.values@1.2.1: 2172 | resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==} 2173 | engines: {node: '>= 0.4'} 2174 | 2175 | optionator@0.9.4: 2176 | resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} 2177 | engines: {node: '>= 0.8.0'} 2178 | 2179 | own-keys@1.0.1: 2180 | resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==} 2181 | engines: {node: '>= 0.4'} 2182 | 2183 | p-limit@3.1.0: 2184 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 2185 | engines: {node: '>=10'} 2186 | 2187 | p-locate@5.0.0: 2188 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 2189 | engines: {node: '>=10'} 2190 | 2191 | package-json-from-dist@1.0.1: 2192 | resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} 2193 | 2194 | parent-module@1.0.1: 2195 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 2196 | engines: {node: '>=6'} 2197 | 2198 | path-exists@4.0.0: 2199 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 2200 | engines: {node: '>=8'} 2201 | 2202 | path-key@3.1.1: 2203 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 2204 | engines: {node: '>=8'} 2205 | 2206 | path-parse@1.0.7: 2207 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 2208 | 2209 | path-scurry@1.11.1: 2210 | resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} 2211 | engines: {node: '>=16 || 14 >=14.18'} 2212 | 2213 | picocolors@1.1.1: 2214 | resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} 2215 | 2216 | picomatch@2.3.1: 2217 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 2218 | engines: {node: '>=8.6'} 2219 | 2220 | picomatch@4.0.2: 2221 | resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} 2222 | engines: {node: '>=12'} 2223 | 2224 | pirates@4.0.6: 2225 | resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} 2226 | engines: {node: '>= 6'} 2227 | 2228 | possible-typed-array-names@1.1.0: 2229 | resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} 2230 | engines: {node: '>= 0.4'} 2231 | 2232 | postcss-load-config@6.0.1: 2233 | resolution: {integrity: sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==} 2234 | engines: {node: '>= 18'} 2235 | peerDependencies: 2236 | jiti: '>=1.21.0' 2237 | postcss: '>=8.0.9' 2238 | tsx: ^4.8.1 2239 | yaml: ^2.4.2 2240 | peerDependenciesMeta: 2241 | jiti: 2242 | optional: true 2243 | postcss: 2244 | optional: true 2245 | tsx: 2246 | optional: true 2247 | yaml: 2248 | optional: true 2249 | 2250 | postcss@8.4.31: 2251 | resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} 2252 | engines: {node: ^10 || ^12 || >=14} 2253 | 2254 | postgres@3.4.5: 2255 | resolution: {integrity: sha512-cDWgoah1Gez9rN3H4165peY9qfpEo+SA61oQv65O3cRUE1pOEoJWwddwcqKE8XZYjbblOJlYDlLV4h67HrEVDg==} 2256 | engines: {node: '>=12'} 2257 | 2258 | prelude-ls@1.2.1: 2259 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} 2260 | engines: {node: '>= 0.8.0'} 2261 | 2262 | prettier@3.5.3: 2263 | resolution: {integrity: sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==} 2264 | engines: {node: '>=14'} 2265 | hasBin: true 2266 | 2267 | prisma@6.4.1: 2268 | resolution: {integrity: sha512-q2uJkgXnua/jj66mk6P9bX/zgYJFI/jn4Yp0aS6SPRrjH/n6VyOV7RDe1vHD0DX8Aanx4MvgmUPPoYnR6MJnPg==} 2269 | engines: {node: '>=18.18'} 2270 | hasBin: true 2271 | peerDependencies: 2272 | typescript: '>=5.1.0' 2273 | peerDependenciesMeta: 2274 | typescript: 2275 | optional: true 2276 | 2277 | promise-limit@2.7.0: 2278 | resolution: {integrity: sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw==} 2279 | 2280 | prop-types@15.8.1: 2281 | resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} 2282 | 2283 | punycode@2.3.1: 2284 | resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} 2285 | engines: {node: '>=6'} 2286 | 2287 | queue-microtask@1.2.3: 2288 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 2289 | 2290 | react-dom@19.0.0: 2291 | resolution: {integrity: sha512-4GV5sHFG0e/0AD4X+ySy6UJd3jVl1iNsNHdpad0qhABJ11twS3TTBnseqsKurKcsNqCEFeGL3uLpVChpIO3QfQ==} 2292 | peerDependencies: 2293 | react: ^19.0.0 2294 | 2295 | react-is@16.13.1: 2296 | resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} 2297 | 2298 | react@19.0.0: 2299 | resolution: {integrity: sha512-V8AVnmPIICiWpGfm6GLzCR/W5FXLchHop40W4nXBmdlEceh16rCN8O8LNWm5bh5XUX91fh7KpA+W0TgMKmgTpQ==} 2300 | engines: {node: '>=0.10.0'} 2301 | 2302 | readdirp@4.1.2: 2303 | resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} 2304 | engines: {node: '>= 14.18.0'} 2305 | 2306 | reflect.getprototypeof@1.0.10: 2307 | resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} 2308 | engines: {node: '>= 0.4'} 2309 | 2310 | regexp.prototype.flags@1.5.4: 2311 | resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} 2312 | engines: {node: '>= 0.4'} 2313 | 2314 | resolve-from@4.0.0: 2315 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 2316 | engines: {node: '>=4'} 2317 | 2318 | resolve-from@5.0.0: 2319 | resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} 2320 | engines: {node: '>=8'} 2321 | 2322 | resolve-pkg-maps@1.0.0: 2323 | resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} 2324 | 2325 | resolve@2.0.0-next.5: 2326 | resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} 2327 | hasBin: true 2328 | 2329 | reusify@1.1.0: 2330 | resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} 2331 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 2332 | 2333 | rimraf@5.0.10: 2334 | resolution: {integrity: sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==} 2335 | hasBin: true 2336 | 2337 | rollup@4.35.0: 2338 | resolution: {integrity: sha512-kg6oI4g+vc41vePJyO6dHt/yl0Rz3Thv0kJeVQ3D1kS3E5XSuKbPc29G4IpT/Kv1KQwgHVcN+HtyS+HYLNSvQg==} 2339 | engines: {node: '>=18.0.0', npm: '>=8.0.0'} 2340 | hasBin: true 2341 | 2342 | run-parallel@1.2.0: 2343 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 2344 | 2345 | safe-array-concat@1.1.3: 2346 | resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==} 2347 | engines: {node: '>=0.4'} 2348 | 2349 | safe-push-apply@1.0.0: 2350 | resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==} 2351 | engines: {node: '>= 0.4'} 2352 | 2353 | safe-regex-test@1.1.0: 2354 | resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} 2355 | engines: {node: '>= 0.4'} 2356 | 2357 | scheduler@0.25.0: 2358 | resolution: {integrity: sha512-xFVuu11jh+xcO7JOAGJNOXld8/TcEHK/4CituBUeUb5hqxJLj9YuemAEuvm9gQ/+pgXYfbQuqAkiYu+u7YEsNA==} 2359 | 2360 | semver@6.3.1: 2361 | resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} 2362 | hasBin: true 2363 | 2364 | semver@7.7.1: 2365 | resolution: {integrity: sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==} 2366 | engines: {node: '>=10'} 2367 | hasBin: true 2368 | 2369 | set-function-length@1.2.2: 2370 | resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} 2371 | engines: {node: '>= 0.4'} 2372 | 2373 | set-function-name@2.0.2: 2374 | resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} 2375 | engines: {node: '>= 0.4'} 2376 | 2377 | set-proto@1.0.0: 2378 | resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} 2379 | engines: {node: '>= 0.4'} 2380 | 2381 | sharp@0.33.5: 2382 | resolution: {integrity: sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==} 2383 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 2384 | 2385 | shebang-command@2.0.0: 2386 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 2387 | engines: {node: '>=8'} 2388 | 2389 | shebang-regex@3.0.0: 2390 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 2391 | engines: {node: '>=8'} 2392 | 2393 | shell-quote@1.8.2: 2394 | resolution: {integrity: sha512-AzqKpGKjrj7EM6rKVQEPpB288oCfnrEIuyoT9cyF4nmGa7V8Zk6f7RRqYisX8X9m+Q7bd632aZW4ky7EhbQztA==} 2395 | engines: {node: '>= 0.4'} 2396 | 2397 | side-channel-list@1.0.0: 2398 | resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} 2399 | engines: {node: '>= 0.4'} 2400 | 2401 | side-channel-map@1.0.1: 2402 | resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} 2403 | engines: {node: '>= 0.4'} 2404 | 2405 | side-channel-weakmap@1.0.2: 2406 | resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} 2407 | engines: {node: '>= 0.4'} 2408 | 2409 | side-channel@1.1.0: 2410 | resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} 2411 | engines: {node: '>= 0.4'} 2412 | 2413 | signal-exit@4.1.0: 2414 | resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} 2415 | engines: {node: '>=14'} 2416 | 2417 | simple-swizzle@0.2.2: 2418 | resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} 2419 | 2420 | source-map-js@1.2.1: 2421 | resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} 2422 | engines: {node: '>=0.10.0'} 2423 | 2424 | source-map-support@0.5.21: 2425 | resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} 2426 | 2427 | source-map@0.6.1: 2428 | resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} 2429 | engines: {node: '>=0.10.0'} 2430 | 2431 | source-map@0.8.0-beta.0: 2432 | resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==} 2433 | engines: {node: '>= 8'} 2434 | 2435 | streamsearch@1.1.0: 2436 | resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} 2437 | engines: {node: '>=10.0.0'} 2438 | 2439 | string-width@4.2.3: 2440 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} 2441 | engines: {node: '>=8'} 2442 | 2443 | string-width@5.1.2: 2444 | resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} 2445 | engines: {node: '>=12'} 2446 | 2447 | string.prototype.matchall@4.0.12: 2448 | resolution: {integrity: sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==} 2449 | engines: {node: '>= 0.4'} 2450 | 2451 | string.prototype.repeat@1.0.0: 2452 | resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} 2453 | 2454 | string.prototype.trim@1.2.10: 2455 | resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==} 2456 | engines: {node: '>= 0.4'} 2457 | 2458 | string.prototype.trimend@1.0.9: 2459 | resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==} 2460 | engines: {node: '>= 0.4'} 2461 | 2462 | string.prototype.trimstart@1.0.8: 2463 | resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} 2464 | engines: {node: '>= 0.4'} 2465 | 2466 | strip-ansi@6.0.1: 2467 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 2468 | engines: {node: '>=8'} 2469 | 2470 | strip-ansi@7.1.0: 2471 | resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} 2472 | engines: {node: '>=12'} 2473 | 2474 | strip-json-comments@3.1.1: 2475 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 2476 | engines: {node: '>=8'} 2477 | 2478 | styled-jsx@5.1.6: 2479 | resolution: {integrity: sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==} 2480 | engines: {node: '>= 12.0.0'} 2481 | peerDependencies: 2482 | '@babel/core': '*' 2483 | babel-plugin-macros: '*' 2484 | react: '>= 16.8.0 || 17.x.x || ^18.0.0-0 || ^19.0.0-0' 2485 | peerDependenciesMeta: 2486 | '@babel/core': 2487 | optional: true 2488 | babel-plugin-macros: 2489 | optional: true 2490 | 2491 | sucrase@3.35.0: 2492 | resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} 2493 | engines: {node: '>=16 || 14 >=14.17'} 2494 | hasBin: true 2495 | 2496 | supports-color@7.2.0: 2497 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 2498 | engines: {node: '>=8'} 2499 | 2500 | supports-preserve-symlinks-flag@1.0.0: 2501 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 2502 | engines: {node: '>= 0.4'} 2503 | 2504 | thenify-all@1.6.0: 2505 | resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} 2506 | engines: {node: '>=0.8'} 2507 | 2508 | thenify@3.3.1: 2509 | resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} 2510 | 2511 | tinyexec@0.3.2: 2512 | resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==} 2513 | 2514 | tinyglobby@0.2.12: 2515 | resolution: {integrity: sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==} 2516 | engines: {node: '>=12.0.0'} 2517 | 2518 | to-regex-range@5.0.1: 2519 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 2520 | engines: {node: '>=8.0'} 2521 | 2522 | tr46@1.0.1: 2523 | resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} 2524 | 2525 | tree-kill@1.2.2: 2526 | resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} 2527 | hasBin: true 2528 | 2529 | ts-api-utils@2.0.1: 2530 | resolution: {integrity: sha512-dnlgjFSVetynI8nzgJ+qF62efpglpWRk8isUEWZGWlJYySCTD6aKvbUDu+zbPeDakk3bg5H4XpitHukgfL1m9w==} 2531 | engines: {node: '>=18.12'} 2532 | peerDependencies: 2533 | typescript: '>=4.8.4' 2534 | 2535 | ts-interface-checker@0.1.13: 2536 | resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} 2537 | 2538 | tslib@2.8.1: 2539 | resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} 2540 | 2541 | tsup@8.4.0: 2542 | resolution: {integrity: sha512-b+eZbPCjz10fRryaAA7C8xlIHnf8VnsaRqydheLIqwG/Mcpfk8Z5zp3HayX7GaTygkigHl5cBUs+IhcySiIexQ==} 2543 | engines: {node: '>=18'} 2544 | hasBin: true 2545 | peerDependencies: 2546 | '@microsoft/api-extractor': ^7.36.0 2547 | '@swc/core': ^1 2548 | postcss: ^8.4.12 2549 | typescript: '>=4.5.0' 2550 | peerDependenciesMeta: 2551 | '@microsoft/api-extractor': 2552 | optional: true 2553 | '@swc/core': 2554 | optional: true 2555 | postcss: 2556 | optional: true 2557 | typescript: 2558 | optional: true 2559 | 2560 | tsx@4.19.1: 2561 | resolution: {integrity: sha512-0flMz1lh74BR4wOvBjuh9olbnwqCPc35OOlfyzHba0Dc+QNUeWX/Gq2YTbnwcWPO3BMd8fkzRVrHcsR+a7z7rA==} 2562 | engines: {node: '>=18.0.0'} 2563 | hasBin: true 2564 | 2565 | turbo-darwin-64@2.4.4: 2566 | resolution: {integrity: sha512-5kPvRkLAfmWI0MH96D+/THnDMGXlFNmjeqNRj5grLKiry+M9pKj3pRuScddAXPdlxjO5Ptz06UNaOQrrYGTx1g==} 2567 | cpu: [x64] 2568 | os: [darwin] 2569 | 2570 | turbo-darwin-arm64@2.4.4: 2571 | resolution: {integrity: sha512-/gtHPqbGQXDFhrmy+Q/MFW2HUTUlThJ97WLLSe4bxkDrKHecDYhAjbZ4rN3MM93RV9STQb3Tqy4pZBtsd4DfCw==} 2572 | cpu: [arm64] 2573 | os: [darwin] 2574 | 2575 | turbo-linux-64@2.4.4: 2576 | resolution: {integrity: sha512-SR0gri4k0bda56hw5u9VgDXLKb1Q+jrw4lM7WAhnNdXvVoep4d6LmnzgMHQQR12Wxl3KyWPbkz9d1whL6NTm2Q==} 2577 | cpu: [x64] 2578 | os: [linux] 2579 | 2580 | turbo-linux-arm64@2.4.4: 2581 | resolution: {integrity: sha512-COXXwzRd3vslQIfJhXUklgEqlwq35uFUZ7hnN+AUyXx7hUOLIiD5NblL+ETrHnhY4TzWszrbwUMfe2BYWtaPQg==} 2582 | cpu: [arm64] 2583 | os: [linux] 2584 | 2585 | turbo-windows-64@2.4.4: 2586 | resolution: {integrity: sha512-PV9rYNouGz4Ff3fd6sIfQy5L7HT9a4fcZoEv8PKRavU9O75G7PoDtm8scpHU10QnK0QQNLbE9qNxOAeRvF0fJg==} 2587 | cpu: [x64] 2588 | os: [win32] 2589 | 2590 | turbo-windows-arm64@2.4.4: 2591 | resolution: {integrity: sha512-403sqp9t5sx6YGEC32IfZTVWkRAixOQomGYB8kEc6ZD+//LirSxzeCHCnM8EmSXw7l57U1G+Fb0kxgTcKPU/Lg==} 2592 | cpu: [arm64] 2593 | os: [win32] 2594 | 2595 | turbo@2.4.4: 2596 | resolution: {integrity: sha512-N9FDOVaY3yz0YCOhYIgOGYad7+m2ptvinXygw27WPLQvcZDl3+0Sa77KGVlLSiuPDChOUEnTKE9VJwLSi9BPGQ==} 2597 | hasBin: true 2598 | 2599 | type-check@0.4.0: 2600 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} 2601 | engines: {node: '>= 0.8.0'} 2602 | 2603 | typed-array-buffer@1.0.3: 2604 | resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} 2605 | engines: {node: '>= 0.4'} 2606 | 2607 | typed-array-byte-length@1.0.3: 2608 | resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==} 2609 | engines: {node: '>= 0.4'} 2610 | 2611 | typed-array-byte-offset@1.0.4: 2612 | resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==} 2613 | engines: {node: '>= 0.4'} 2614 | 2615 | typed-array-length@1.0.7: 2616 | resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} 2617 | engines: {node: '>= 0.4'} 2618 | 2619 | typescript-eslint@8.26.0: 2620 | resolution: {integrity: sha512-PtVz9nAnuNJuAVeUFvwztjuUgSnJInODAUx47VDwWPXzd5vismPOtPtt83tzNXyOjVQbPRp786D6WFW/M2koIA==} 2621 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 2622 | peerDependencies: 2623 | eslint: ^8.57.0 || ^9.0.0 2624 | typescript: '>=4.8.4 <5.9.0' 2625 | 2626 | typescript@5.8.2: 2627 | resolution: {integrity: sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==} 2628 | engines: {node: '>=14.17'} 2629 | hasBin: true 2630 | 2631 | unbox-primitive@1.1.0: 2632 | resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} 2633 | engines: {node: '>= 0.4'} 2634 | 2635 | undici-types@6.19.8: 2636 | resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} 2637 | 2638 | uri-js@4.4.1: 2639 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 2640 | 2641 | web-streams-polyfill@3.3.3: 2642 | resolution: {integrity: sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==} 2643 | engines: {node: '>= 8'} 2644 | 2645 | webidl-conversions@4.0.2: 2646 | resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} 2647 | 2648 | whatwg-url@7.1.0: 2649 | resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==} 2650 | 2651 | which-boxed-primitive@1.1.1: 2652 | resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} 2653 | engines: {node: '>= 0.4'} 2654 | 2655 | which-builtin-type@1.2.1: 2656 | resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} 2657 | engines: {node: '>= 0.4'} 2658 | 2659 | which-collection@1.0.2: 2660 | resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} 2661 | engines: {node: '>= 0.4'} 2662 | 2663 | which-typed-array@1.1.18: 2664 | resolution: {integrity: sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==} 2665 | engines: {node: '>= 0.4'} 2666 | 2667 | which@2.0.2: 2668 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 2669 | engines: {node: '>= 8'} 2670 | hasBin: true 2671 | 2672 | which@4.0.0: 2673 | resolution: {integrity: sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==} 2674 | engines: {node: ^16.13.0 || >=18.0.0} 2675 | hasBin: true 2676 | 2677 | word-wrap@1.2.5: 2678 | resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} 2679 | engines: {node: '>=0.10.0'} 2680 | 2681 | wrap-ansi@7.0.0: 2682 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} 2683 | engines: {node: '>=10'} 2684 | 2685 | wrap-ansi@8.1.0: 2686 | resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} 2687 | engines: {node: '>=12'} 2688 | 2689 | ws@8.18.1: 2690 | resolution: {integrity: sha512-RKW2aJZMXeMxVpnZ6bck+RswznaxmzdULiBr6KY7XkTnW8uvt0iT9H5DkHUChXrc+uurzwa0rVI16n/Xzjdz1w==} 2691 | engines: {node: '>=10.0.0'} 2692 | peerDependencies: 2693 | bufferutil: ^4.0.1 2694 | utf-8-validate: '>=5.0.2' 2695 | peerDependenciesMeta: 2696 | bufferutil: 2697 | optional: true 2698 | utf-8-validate: 2699 | optional: true 2700 | 2701 | yocto-queue@0.1.0: 2702 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 2703 | engines: {node: '>=10'} 2704 | 2705 | snapshots: 2706 | 2707 | '@drizzle-team/brocli@0.10.2': {} 2708 | 2709 | '@emnapi/runtime@1.3.1': 2710 | dependencies: 2711 | tslib: 2.8.1 2712 | optional: true 2713 | 2714 | '@esbuild-kit/core-utils@3.3.2': 2715 | dependencies: 2716 | esbuild: 0.18.20 2717 | source-map-support: 0.5.21 2718 | 2719 | '@esbuild-kit/esm-loader@2.6.5': 2720 | dependencies: 2721 | '@esbuild-kit/core-utils': 3.3.2 2722 | get-tsconfig: 4.10.0 2723 | 2724 | '@esbuild/aix-ppc64@0.19.12': 2725 | optional: true 2726 | 2727 | '@esbuild/aix-ppc64@0.23.1': 2728 | optional: true 2729 | 2730 | '@esbuild/aix-ppc64@0.25.0': 2731 | optional: true 2732 | 2733 | '@esbuild/android-arm64@0.18.20': 2734 | optional: true 2735 | 2736 | '@esbuild/android-arm64@0.19.12': 2737 | optional: true 2738 | 2739 | '@esbuild/android-arm64@0.23.1': 2740 | optional: true 2741 | 2742 | '@esbuild/android-arm64@0.25.0': 2743 | optional: true 2744 | 2745 | '@esbuild/android-arm@0.18.20': 2746 | optional: true 2747 | 2748 | '@esbuild/android-arm@0.19.12': 2749 | optional: true 2750 | 2751 | '@esbuild/android-arm@0.23.1': 2752 | optional: true 2753 | 2754 | '@esbuild/android-arm@0.25.0': 2755 | optional: true 2756 | 2757 | '@esbuild/android-x64@0.18.20': 2758 | optional: true 2759 | 2760 | '@esbuild/android-x64@0.19.12': 2761 | optional: true 2762 | 2763 | '@esbuild/android-x64@0.23.1': 2764 | optional: true 2765 | 2766 | '@esbuild/android-x64@0.25.0': 2767 | optional: true 2768 | 2769 | '@esbuild/darwin-arm64@0.18.20': 2770 | optional: true 2771 | 2772 | '@esbuild/darwin-arm64@0.19.12': 2773 | optional: true 2774 | 2775 | '@esbuild/darwin-arm64@0.23.1': 2776 | optional: true 2777 | 2778 | '@esbuild/darwin-arm64@0.25.0': 2779 | optional: true 2780 | 2781 | '@esbuild/darwin-x64@0.18.20': 2782 | optional: true 2783 | 2784 | '@esbuild/darwin-x64@0.19.12': 2785 | optional: true 2786 | 2787 | '@esbuild/darwin-x64@0.23.1': 2788 | optional: true 2789 | 2790 | '@esbuild/darwin-x64@0.25.0': 2791 | optional: true 2792 | 2793 | '@esbuild/freebsd-arm64@0.18.20': 2794 | optional: true 2795 | 2796 | '@esbuild/freebsd-arm64@0.19.12': 2797 | optional: true 2798 | 2799 | '@esbuild/freebsd-arm64@0.23.1': 2800 | optional: true 2801 | 2802 | '@esbuild/freebsd-arm64@0.25.0': 2803 | optional: true 2804 | 2805 | '@esbuild/freebsd-x64@0.18.20': 2806 | optional: true 2807 | 2808 | '@esbuild/freebsd-x64@0.19.12': 2809 | optional: true 2810 | 2811 | '@esbuild/freebsd-x64@0.23.1': 2812 | optional: true 2813 | 2814 | '@esbuild/freebsd-x64@0.25.0': 2815 | optional: true 2816 | 2817 | '@esbuild/linux-arm64@0.18.20': 2818 | optional: true 2819 | 2820 | '@esbuild/linux-arm64@0.19.12': 2821 | optional: true 2822 | 2823 | '@esbuild/linux-arm64@0.23.1': 2824 | optional: true 2825 | 2826 | '@esbuild/linux-arm64@0.25.0': 2827 | optional: true 2828 | 2829 | '@esbuild/linux-arm@0.18.20': 2830 | optional: true 2831 | 2832 | '@esbuild/linux-arm@0.19.12': 2833 | optional: true 2834 | 2835 | '@esbuild/linux-arm@0.23.1': 2836 | optional: true 2837 | 2838 | '@esbuild/linux-arm@0.25.0': 2839 | optional: true 2840 | 2841 | '@esbuild/linux-ia32@0.18.20': 2842 | optional: true 2843 | 2844 | '@esbuild/linux-ia32@0.19.12': 2845 | optional: true 2846 | 2847 | '@esbuild/linux-ia32@0.23.1': 2848 | optional: true 2849 | 2850 | '@esbuild/linux-ia32@0.25.0': 2851 | optional: true 2852 | 2853 | '@esbuild/linux-loong64@0.18.20': 2854 | optional: true 2855 | 2856 | '@esbuild/linux-loong64@0.19.12': 2857 | optional: true 2858 | 2859 | '@esbuild/linux-loong64@0.23.1': 2860 | optional: true 2861 | 2862 | '@esbuild/linux-loong64@0.25.0': 2863 | optional: true 2864 | 2865 | '@esbuild/linux-mips64el@0.18.20': 2866 | optional: true 2867 | 2868 | '@esbuild/linux-mips64el@0.19.12': 2869 | optional: true 2870 | 2871 | '@esbuild/linux-mips64el@0.23.1': 2872 | optional: true 2873 | 2874 | '@esbuild/linux-mips64el@0.25.0': 2875 | optional: true 2876 | 2877 | '@esbuild/linux-ppc64@0.18.20': 2878 | optional: true 2879 | 2880 | '@esbuild/linux-ppc64@0.19.12': 2881 | optional: true 2882 | 2883 | '@esbuild/linux-ppc64@0.23.1': 2884 | optional: true 2885 | 2886 | '@esbuild/linux-ppc64@0.25.0': 2887 | optional: true 2888 | 2889 | '@esbuild/linux-riscv64@0.18.20': 2890 | optional: true 2891 | 2892 | '@esbuild/linux-riscv64@0.19.12': 2893 | optional: true 2894 | 2895 | '@esbuild/linux-riscv64@0.23.1': 2896 | optional: true 2897 | 2898 | '@esbuild/linux-riscv64@0.25.0': 2899 | optional: true 2900 | 2901 | '@esbuild/linux-s390x@0.18.20': 2902 | optional: true 2903 | 2904 | '@esbuild/linux-s390x@0.19.12': 2905 | optional: true 2906 | 2907 | '@esbuild/linux-s390x@0.23.1': 2908 | optional: true 2909 | 2910 | '@esbuild/linux-s390x@0.25.0': 2911 | optional: true 2912 | 2913 | '@esbuild/linux-x64@0.18.20': 2914 | optional: true 2915 | 2916 | '@esbuild/linux-x64@0.19.12': 2917 | optional: true 2918 | 2919 | '@esbuild/linux-x64@0.23.1': 2920 | optional: true 2921 | 2922 | '@esbuild/linux-x64@0.25.0': 2923 | optional: true 2924 | 2925 | '@esbuild/netbsd-arm64@0.25.0': 2926 | optional: true 2927 | 2928 | '@esbuild/netbsd-x64@0.18.20': 2929 | optional: true 2930 | 2931 | '@esbuild/netbsd-x64@0.19.12': 2932 | optional: true 2933 | 2934 | '@esbuild/netbsd-x64@0.23.1': 2935 | optional: true 2936 | 2937 | '@esbuild/netbsd-x64@0.25.0': 2938 | optional: true 2939 | 2940 | '@esbuild/openbsd-arm64@0.23.1': 2941 | optional: true 2942 | 2943 | '@esbuild/openbsd-arm64@0.25.0': 2944 | optional: true 2945 | 2946 | '@esbuild/openbsd-x64@0.18.20': 2947 | optional: true 2948 | 2949 | '@esbuild/openbsd-x64@0.19.12': 2950 | optional: true 2951 | 2952 | '@esbuild/openbsd-x64@0.23.1': 2953 | optional: true 2954 | 2955 | '@esbuild/openbsd-x64@0.25.0': 2956 | optional: true 2957 | 2958 | '@esbuild/sunos-x64@0.18.20': 2959 | optional: true 2960 | 2961 | '@esbuild/sunos-x64@0.19.12': 2962 | optional: true 2963 | 2964 | '@esbuild/sunos-x64@0.23.1': 2965 | optional: true 2966 | 2967 | '@esbuild/sunos-x64@0.25.0': 2968 | optional: true 2969 | 2970 | '@esbuild/win32-arm64@0.18.20': 2971 | optional: true 2972 | 2973 | '@esbuild/win32-arm64@0.19.12': 2974 | optional: true 2975 | 2976 | '@esbuild/win32-arm64@0.23.1': 2977 | optional: true 2978 | 2979 | '@esbuild/win32-arm64@0.25.0': 2980 | optional: true 2981 | 2982 | '@esbuild/win32-ia32@0.18.20': 2983 | optional: true 2984 | 2985 | '@esbuild/win32-ia32@0.19.12': 2986 | optional: true 2987 | 2988 | '@esbuild/win32-ia32@0.23.1': 2989 | optional: true 2990 | 2991 | '@esbuild/win32-ia32@0.25.0': 2992 | optional: true 2993 | 2994 | '@esbuild/win32-x64@0.18.20': 2995 | optional: true 2996 | 2997 | '@esbuild/win32-x64@0.19.12': 2998 | optional: true 2999 | 3000 | '@esbuild/win32-x64@0.23.1': 3001 | optional: true 3002 | 3003 | '@esbuild/win32-x64@0.25.0': 3004 | optional: true 3005 | 3006 | '@eslint-community/eslint-utils@4.4.1(eslint@9.22.0)': 3007 | dependencies: 3008 | eslint: 9.22.0 3009 | eslint-visitor-keys: 3.4.3 3010 | 3011 | '@eslint-community/regexpp@4.12.1': {} 3012 | 3013 | '@eslint/config-array@0.19.2': 3014 | dependencies: 3015 | '@eslint/object-schema': 2.1.6 3016 | debug: 4.4.0 3017 | minimatch: 3.1.2 3018 | transitivePeerDependencies: 3019 | - supports-color 3020 | 3021 | '@eslint/config-helpers@0.1.0': {} 3022 | 3023 | '@eslint/core@0.12.0': 3024 | dependencies: 3025 | '@types/json-schema': 7.0.15 3026 | 3027 | '@eslint/eslintrc@3.3.0': 3028 | dependencies: 3029 | ajv: 6.12.6 3030 | debug: 4.4.0 3031 | espree: 10.3.0 3032 | globals: 14.0.0 3033 | ignore: 5.3.2 3034 | import-fresh: 3.3.1 3035 | js-yaml: 4.1.0 3036 | minimatch: 3.1.2 3037 | strip-json-comments: 3.1.1 3038 | transitivePeerDependencies: 3039 | - supports-color 3040 | 3041 | '@eslint/js@9.22.0': {} 3042 | 3043 | '@eslint/object-schema@2.1.6': {} 3044 | 3045 | '@eslint/plugin-kit@0.2.7': 3046 | dependencies: 3047 | '@eslint/core': 0.12.0 3048 | levn: 0.4.1 3049 | 3050 | '@humanfs/core@0.19.1': {} 3051 | 3052 | '@humanfs/node@0.16.6': 3053 | dependencies: 3054 | '@humanfs/core': 0.19.1 3055 | '@humanwhocodes/retry': 0.3.1 3056 | 3057 | '@humanwhocodes/module-importer@1.0.1': {} 3058 | 3059 | '@humanwhocodes/retry@0.3.1': {} 3060 | 3061 | '@humanwhocodes/retry@0.4.2': {} 3062 | 3063 | '@img/sharp-darwin-arm64@0.33.5': 3064 | optionalDependencies: 3065 | '@img/sharp-libvips-darwin-arm64': 1.0.4 3066 | optional: true 3067 | 3068 | '@img/sharp-darwin-x64@0.33.5': 3069 | optionalDependencies: 3070 | '@img/sharp-libvips-darwin-x64': 1.0.4 3071 | optional: true 3072 | 3073 | '@img/sharp-libvips-darwin-arm64@1.0.4': 3074 | optional: true 3075 | 3076 | '@img/sharp-libvips-darwin-x64@1.0.4': 3077 | optional: true 3078 | 3079 | '@img/sharp-libvips-linux-arm64@1.0.4': 3080 | optional: true 3081 | 3082 | '@img/sharp-libvips-linux-arm@1.0.5': 3083 | optional: true 3084 | 3085 | '@img/sharp-libvips-linux-s390x@1.0.4': 3086 | optional: true 3087 | 3088 | '@img/sharp-libvips-linux-x64@1.0.4': 3089 | optional: true 3090 | 3091 | '@img/sharp-libvips-linuxmusl-arm64@1.0.4': 3092 | optional: true 3093 | 3094 | '@img/sharp-libvips-linuxmusl-x64@1.0.4': 3095 | optional: true 3096 | 3097 | '@img/sharp-linux-arm64@0.33.5': 3098 | optionalDependencies: 3099 | '@img/sharp-libvips-linux-arm64': 1.0.4 3100 | optional: true 3101 | 3102 | '@img/sharp-linux-arm@0.33.5': 3103 | optionalDependencies: 3104 | '@img/sharp-libvips-linux-arm': 1.0.5 3105 | optional: true 3106 | 3107 | '@img/sharp-linux-s390x@0.33.5': 3108 | optionalDependencies: 3109 | '@img/sharp-libvips-linux-s390x': 1.0.4 3110 | optional: true 3111 | 3112 | '@img/sharp-linux-x64@0.33.5': 3113 | optionalDependencies: 3114 | '@img/sharp-libvips-linux-x64': 1.0.4 3115 | optional: true 3116 | 3117 | '@img/sharp-linuxmusl-arm64@0.33.5': 3118 | optionalDependencies: 3119 | '@img/sharp-libvips-linuxmusl-arm64': 1.0.4 3120 | optional: true 3121 | 3122 | '@img/sharp-linuxmusl-x64@0.33.5': 3123 | optionalDependencies: 3124 | '@img/sharp-libvips-linuxmusl-x64': 1.0.4 3125 | optional: true 3126 | 3127 | '@img/sharp-wasm32@0.33.5': 3128 | dependencies: 3129 | '@emnapi/runtime': 1.3.1 3130 | optional: true 3131 | 3132 | '@img/sharp-win32-ia32@0.33.5': 3133 | optional: true 3134 | 3135 | '@img/sharp-win32-x64@0.33.5': 3136 | optional: true 3137 | 3138 | '@isaacs/cliui@8.0.2': 3139 | dependencies: 3140 | string-width: 5.1.2 3141 | string-width-cjs: string-width@4.2.3 3142 | strip-ansi: 7.1.0 3143 | strip-ansi-cjs: strip-ansi@6.0.1 3144 | wrap-ansi: 8.1.0 3145 | wrap-ansi-cjs: wrap-ansi@7.0.0 3146 | 3147 | '@jridgewell/gen-mapping@0.3.8': 3148 | dependencies: 3149 | '@jridgewell/set-array': 1.2.1 3150 | '@jridgewell/sourcemap-codec': 1.5.0 3151 | '@jridgewell/trace-mapping': 0.3.25 3152 | 3153 | '@jridgewell/resolve-uri@3.1.2': {} 3154 | 3155 | '@jridgewell/set-array@1.2.1': {} 3156 | 3157 | '@jridgewell/sourcemap-codec@1.5.0': {} 3158 | 3159 | '@jridgewell/trace-mapping@0.3.25': 3160 | dependencies: 3161 | '@jridgewell/resolve-uri': 3.1.2 3162 | '@jridgewell/sourcemap-codec': 1.5.0 3163 | 3164 | '@libsql/client@0.14.0': 3165 | dependencies: 3166 | '@libsql/core': 0.14.0 3167 | '@libsql/hrana-client': 0.7.0 3168 | js-base64: 3.7.7 3169 | libsql: 0.4.7 3170 | promise-limit: 2.7.0 3171 | transitivePeerDependencies: 3172 | - bufferutil 3173 | - utf-8-validate 3174 | 3175 | '@libsql/core@0.14.0': 3176 | dependencies: 3177 | js-base64: 3.7.7 3178 | 3179 | '@libsql/darwin-arm64@0.4.7': 3180 | optional: true 3181 | 3182 | '@libsql/darwin-x64@0.4.7': 3183 | optional: true 3184 | 3185 | '@libsql/hrana-client@0.7.0': 3186 | dependencies: 3187 | '@libsql/isomorphic-fetch': 0.3.1 3188 | '@libsql/isomorphic-ws': 0.1.5 3189 | js-base64: 3.7.7 3190 | node-fetch: 3.3.2 3191 | transitivePeerDependencies: 3192 | - bufferutil 3193 | - utf-8-validate 3194 | 3195 | '@libsql/isomorphic-fetch@0.3.1': {} 3196 | 3197 | '@libsql/isomorphic-ws@0.1.5': 3198 | dependencies: 3199 | '@types/ws': 8.18.0 3200 | ws: 8.18.1 3201 | transitivePeerDependencies: 3202 | - bufferutil 3203 | - utf-8-validate 3204 | 3205 | '@libsql/linux-arm64-gnu@0.4.7': 3206 | optional: true 3207 | 3208 | '@libsql/linux-arm64-musl@0.4.7': 3209 | optional: true 3210 | 3211 | '@libsql/linux-x64-gnu@0.4.7': 3212 | optional: true 3213 | 3214 | '@libsql/linux-x64-musl@0.4.7': 3215 | optional: true 3216 | 3217 | '@libsql/win32-x64-msvc@0.4.7': 3218 | optional: true 3219 | 3220 | '@neon-rs/load@0.0.4': {} 3221 | 3222 | '@next/env@15.2.1': {} 3223 | 3224 | '@next/eslint-plugin-next@14.2.24': 3225 | dependencies: 3226 | glob: 10.3.10 3227 | 3228 | '@next/eslint-plugin-next@15.2.1': 3229 | dependencies: 3230 | fast-glob: 3.3.1 3231 | 3232 | '@next/swc-darwin-arm64@15.2.1': 3233 | optional: true 3234 | 3235 | '@next/swc-darwin-x64@15.2.1': 3236 | optional: true 3237 | 3238 | '@next/swc-linux-arm64-gnu@15.2.1': 3239 | optional: true 3240 | 3241 | '@next/swc-linux-arm64-musl@15.2.1': 3242 | optional: true 3243 | 3244 | '@next/swc-linux-x64-gnu@15.2.1': 3245 | optional: true 3246 | 3247 | '@next/swc-linux-x64-musl@15.2.1': 3248 | optional: true 3249 | 3250 | '@next/swc-win32-arm64-msvc@15.2.1': 3251 | optional: true 3252 | 3253 | '@next/swc-win32-x64-msvc@15.2.1': 3254 | optional: true 3255 | 3256 | '@nodelib/fs.scandir@2.1.5': 3257 | dependencies: 3258 | '@nodelib/fs.stat': 2.0.5 3259 | run-parallel: 1.2.0 3260 | 3261 | '@nodelib/fs.stat@2.0.5': {} 3262 | 3263 | '@nodelib/fs.walk@1.2.8': 3264 | dependencies: 3265 | '@nodelib/fs.scandir': 2.1.5 3266 | fastq: 1.19.1 3267 | 3268 | '@petamoriken/float16@3.9.1': {} 3269 | 3270 | '@pkgjs/parseargs@0.11.0': 3271 | optional: true 3272 | 3273 | '@prisma/client@6.4.1(prisma@6.4.1(typescript@5.8.2))(typescript@5.8.2)': 3274 | optionalDependencies: 3275 | prisma: 6.4.1(typescript@5.8.2) 3276 | typescript: 5.8.2 3277 | optional: true 3278 | 3279 | '@prisma/debug@6.4.1': 3280 | optional: true 3281 | 3282 | '@prisma/engines-version@6.4.0-29.a9055b89e58b4b5bfb59600785423b1db3d0e75d': 3283 | optional: true 3284 | 3285 | '@prisma/engines@6.4.1': 3286 | dependencies: 3287 | '@prisma/debug': 6.4.1 3288 | '@prisma/engines-version': 6.4.0-29.a9055b89e58b4b5bfb59600785423b1db3d0e75d 3289 | '@prisma/fetch-engine': 6.4.1 3290 | '@prisma/get-platform': 6.4.1 3291 | optional: true 3292 | 3293 | '@prisma/fetch-engine@6.4.1': 3294 | dependencies: 3295 | '@prisma/debug': 6.4.1 3296 | '@prisma/engines-version': 6.4.0-29.a9055b89e58b4b5bfb59600785423b1db3d0e75d 3297 | '@prisma/get-platform': 6.4.1 3298 | optional: true 3299 | 3300 | '@prisma/get-platform@6.4.1': 3301 | dependencies: 3302 | '@prisma/debug': 6.4.1 3303 | optional: true 3304 | 3305 | '@rollup/rollup-android-arm-eabi@4.35.0': 3306 | optional: true 3307 | 3308 | '@rollup/rollup-android-arm64@4.35.0': 3309 | optional: true 3310 | 3311 | '@rollup/rollup-darwin-arm64@4.35.0': 3312 | optional: true 3313 | 3314 | '@rollup/rollup-darwin-x64@4.35.0': 3315 | optional: true 3316 | 3317 | '@rollup/rollup-freebsd-arm64@4.35.0': 3318 | optional: true 3319 | 3320 | '@rollup/rollup-freebsd-x64@4.35.0': 3321 | optional: true 3322 | 3323 | '@rollup/rollup-linux-arm-gnueabihf@4.35.0': 3324 | optional: true 3325 | 3326 | '@rollup/rollup-linux-arm-musleabihf@4.35.0': 3327 | optional: true 3328 | 3329 | '@rollup/rollup-linux-arm64-gnu@4.35.0': 3330 | optional: true 3331 | 3332 | '@rollup/rollup-linux-arm64-musl@4.35.0': 3333 | optional: true 3334 | 3335 | '@rollup/rollup-linux-loongarch64-gnu@4.35.0': 3336 | optional: true 3337 | 3338 | '@rollup/rollup-linux-powerpc64le-gnu@4.35.0': 3339 | optional: true 3340 | 3341 | '@rollup/rollup-linux-riscv64-gnu@4.35.0': 3342 | optional: true 3343 | 3344 | '@rollup/rollup-linux-s390x-gnu@4.35.0': 3345 | optional: true 3346 | 3347 | '@rollup/rollup-linux-x64-gnu@4.35.0': 3348 | optional: true 3349 | 3350 | '@rollup/rollup-linux-x64-musl@4.35.0': 3351 | optional: true 3352 | 3353 | '@rollup/rollup-win32-arm64-msvc@4.35.0': 3354 | optional: true 3355 | 3356 | '@rollup/rollup-win32-ia32-msvc@4.35.0': 3357 | optional: true 3358 | 3359 | '@rollup/rollup-win32-x64-msvc@4.35.0': 3360 | optional: true 3361 | 3362 | '@swc/counter@0.1.3': {} 3363 | 3364 | '@swc/helpers@0.5.15': 3365 | dependencies: 3366 | tslib: 2.8.1 3367 | 3368 | '@types/estree@1.0.6': {} 3369 | 3370 | '@types/json-schema@7.0.15': {} 3371 | 3372 | '@types/node@20.17.24': 3373 | dependencies: 3374 | undici-types: 6.19.8 3375 | 3376 | '@types/react-dom@19.0.4(@types/react@19.0.10)': 3377 | dependencies: 3378 | '@types/react': 19.0.10 3379 | 3380 | '@types/react@19.0.10': 3381 | dependencies: 3382 | csstype: 3.1.3 3383 | 3384 | '@types/ws@8.18.0': 3385 | dependencies: 3386 | '@types/node': 20.17.24 3387 | 3388 | '@typescript-eslint/eslint-plugin@8.26.0(@typescript-eslint/parser@8.26.0(eslint@9.22.0)(typescript@5.8.2))(eslint@9.22.0)(typescript@5.8.2)': 3389 | dependencies: 3390 | '@eslint-community/regexpp': 4.12.1 3391 | '@typescript-eslint/parser': 8.26.0(eslint@9.22.0)(typescript@5.8.2) 3392 | '@typescript-eslint/scope-manager': 8.26.0 3393 | '@typescript-eslint/type-utils': 8.26.0(eslint@9.22.0)(typescript@5.8.2) 3394 | '@typescript-eslint/utils': 8.26.0(eslint@9.22.0)(typescript@5.8.2) 3395 | '@typescript-eslint/visitor-keys': 8.26.0 3396 | eslint: 9.22.0 3397 | graphemer: 1.4.0 3398 | ignore: 5.3.2 3399 | natural-compare: 1.4.0 3400 | ts-api-utils: 2.0.1(typescript@5.8.2) 3401 | typescript: 5.8.2 3402 | transitivePeerDependencies: 3403 | - supports-color 3404 | 3405 | '@typescript-eslint/parser@8.26.0(eslint@9.22.0)(typescript@5.8.2)': 3406 | dependencies: 3407 | '@typescript-eslint/scope-manager': 8.26.0 3408 | '@typescript-eslint/types': 8.26.0 3409 | '@typescript-eslint/typescript-estree': 8.26.0(typescript@5.8.2) 3410 | '@typescript-eslint/visitor-keys': 8.26.0 3411 | debug: 4.4.0 3412 | eslint: 9.22.0 3413 | typescript: 5.8.2 3414 | transitivePeerDependencies: 3415 | - supports-color 3416 | 3417 | '@typescript-eslint/scope-manager@8.26.0': 3418 | dependencies: 3419 | '@typescript-eslint/types': 8.26.0 3420 | '@typescript-eslint/visitor-keys': 8.26.0 3421 | 3422 | '@typescript-eslint/type-utils@8.26.0(eslint@9.22.0)(typescript@5.8.2)': 3423 | dependencies: 3424 | '@typescript-eslint/typescript-estree': 8.26.0(typescript@5.8.2) 3425 | '@typescript-eslint/utils': 8.26.0(eslint@9.22.0)(typescript@5.8.2) 3426 | debug: 4.4.0 3427 | eslint: 9.22.0 3428 | ts-api-utils: 2.0.1(typescript@5.8.2) 3429 | typescript: 5.8.2 3430 | transitivePeerDependencies: 3431 | - supports-color 3432 | 3433 | '@typescript-eslint/types@8.26.0': {} 3434 | 3435 | '@typescript-eslint/typescript-estree@8.26.0(typescript@5.8.2)': 3436 | dependencies: 3437 | '@typescript-eslint/types': 8.26.0 3438 | '@typescript-eslint/visitor-keys': 8.26.0 3439 | debug: 4.4.0 3440 | fast-glob: 3.3.3 3441 | is-glob: 4.0.3 3442 | minimatch: 9.0.5 3443 | semver: 7.7.1 3444 | ts-api-utils: 2.0.1(typescript@5.8.2) 3445 | typescript: 5.8.2 3446 | transitivePeerDependencies: 3447 | - supports-color 3448 | 3449 | '@typescript-eslint/utils@8.26.0(eslint@9.22.0)(typescript@5.8.2)': 3450 | dependencies: 3451 | '@eslint-community/eslint-utils': 4.4.1(eslint@9.22.0) 3452 | '@typescript-eslint/scope-manager': 8.26.0 3453 | '@typescript-eslint/types': 8.26.0 3454 | '@typescript-eslint/typescript-estree': 8.26.0(typescript@5.8.2) 3455 | eslint: 9.22.0 3456 | typescript: 5.8.2 3457 | transitivePeerDependencies: 3458 | - supports-color 3459 | 3460 | '@typescript-eslint/visitor-keys@8.26.0': 3461 | dependencies: 3462 | '@typescript-eslint/types': 8.26.0 3463 | eslint-visitor-keys: 4.2.0 3464 | 3465 | acorn-jsx@5.3.2(acorn@8.14.1): 3466 | dependencies: 3467 | acorn: 8.14.1 3468 | 3469 | acorn@8.14.1: {} 3470 | 3471 | ajv@6.12.6: 3472 | dependencies: 3473 | fast-deep-equal: 3.1.3 3474 | fast-json-stable-stringify: 2.1.0 3475 | json-schema-traverse: 0.4.1 3476 | uri-js: 4.4.1 3477 | 3478 | ansi-regex@5.0.1: {} 3479 | 3480 | ansi-regex@6.1.0: {} 3481 | 3482 | ansi-styles@4.3.0: 3483 | dependencies: 3484 | color-convert: 2.0.1 3485 | 3486 | ansi-styles@6.2.1: {} 3487 | 3488 | any-promise@1.3.0: {} 3489 | 3490 | argparse@2.0.1: {} 3491 | 3492 | array-buffer-byte-length@1.0.2: 3493 | dependencies: 3494 | call-bound: 1.0.4 3495 | is-array-buffer: 3.0.5 3496 | 3497 | array-includes@3.1.8: 3498 | dependencies: 3499 | call-bind: 1.0.8 3500 | define-properties: 1.2.1 3501 | es-abstract: 1.23.9 3502 | es-object-atoms: 1.1.1 3503 | get-intrinsic: 1.3.0 3504 | is-string: 1.1.1 3505 | 3506 | array.prototype.findlast@1.2.5: 3507 | dependencies: 3508 | call-bind: 1.0.8 3509 | define-properties: 1.2.1 3510 | es-abstract: 1.23.9 3511 | es-errors: 1.3.0 3512 | es-object-atoms: 1.1.1 3513 | es-shim-unscopables: 1.1.0 3514 | 3515 | array.prototype.flat@1.3.3: 3516 | dependencies: 3517 | call-bind: 1.0.8 3518 | define-properties: 1.2.1 3519 | es-abstract: 1.23.9 3520 | es-shim-unscopables: 1.1.0 3521 | 3522 | array.prototype.flatmap@1.3.3: 3523 | dependencies: 3524 | call-bind: 1.0.8 3525 | define-properties: 1.2.1 3526 | es-abstract: 1.23.9 3527 | es-shim-unscopables: 1.1.0 3528 | 3529 | array.prototype.tosorted@1.1.4: 3530 | dependencies: 3531 | call-bind: 1.0.8 3532 | define-properties: 1.2.1 3533 | es-abstract: 1.23.9 3534 | es-errors: 1.3.0 3535 | es-shim-unscopables: 1.1.0 3536 | 3537 | arraybuffer.prototype.slice@1.0.4: 3538 | dependencies: 3539 | array-buffer-byte-length: 1.0.2 3540 | call-bind: 1.0.8 3541 | define-properties: 1.2.1 3542 | es-abstract: 1.23.9 3543 | es-errors: 1.3.0 3544 | get-intrinsic: 1.3.0 3545 | is-array-buffer: 3.0.5 3546 | 3547 | async-function@1.0.0: {} 3548 | 3549 | available-typed-arrays@1.0.7: 3550 | dependencies: 3551 | possible-typed-array-names: 1.1.0 3552 | 3553 | balanced-match@1.0.2: {} 3554 | 3555 | brace-expansion@1.1.11: 3556 | dependencies: 3557 | balanced-match: 1.0.2 3558 | concat-map: 0.0.1 3559 | 3560 | brace-expansion@2.0.1: 3561 | dependencies: 3562 | balanced-match: 1.0.2 3563 | 3564 | braces@3.0.3: 3565 | dependencies: 3566 | fill-range: 7.1.1 3567 | 3568 | buffer-from@1.1.2: {} 3569 | 3570 | bundle-require@5.1.0(esbuild@0.25.0): 3571 | dependencies: 3572 | esbuild: 0.25.0 3573 | load-tsconfig: 0.2.5 3574 | 3575 | busboy@1.6.0: 3576 | dependencies: 3577 | streamsearch: 1.1.0 3578 | 3579 | cac@6.7.14: {} 3580 | 3581 | call-bind-apply-helpers@1.0.2: 3582 | dependencies: 3583 | es-errors: 1.3.0 3584 | function-bind: 1.1.2 3585 | 3586 | call-bind@1.0.8: 3587 | dependencies: 3588 | call-bind-apply-helpers: 1.0.2 3589 | es-define-property: 1.0.1 3590 | get-intrinsic: 1.3.0 3591 | set-function-length: 1.2.2 3592 | 3593 | call-bound@1.0.4: 3594 | dependencies: 3595 | call-bind-apply-helpers: 1.0.2 3596 | get-intrinsic: 1.3.0 3597 | 3598 | callsites@3.1.0: {} 3599 | 3600 | caniuse-lite@1.0.30001702: {} 3601 | 3602 | chalk@4.1.2: 3603 | dependencies: 3604 | ansi-styles: 4.3.0 3605 | supports-color: 7.2.0 3606 | 3607 | chokidar@4.0.3: 3608 | dependencies: 3609 | readdirp: 4.1.2 3610 | 3611 | client-only@0.0.1: {} 3612 | 3613 | color-convert@2.0.1: 3614 | dependencies: 3615 | color-name: 1.1.4 3616 | 3617 | color-name@1.1.4: {} 3618 | 3619 | color-string@1.9.1: 3620 | dependencies: 3621 | color-name: 1.1.4 3622 | simple-swizzle: 0.2.2 3623 | optional: true 3624 | 3625 | color@4.2.3: 3626 | dependencies: 3627 | color-convert: 2.0.1 3628 | color-string: 1.9.1 3629 | optional: true 3630 | 3631 | commander@4.1.1: {} 3632 | 3633 | concat-map@0.0.1: {} 3634 | 3635 | consola@3.4.0: {} 3636 | 3637 | cross-spawn@7.0.6: 3638 | dependencies: 3639 | path-key: 3.1.1 3640 | shebang-command: 2.0.0 3641 | which: 2.0.2 3642 | 3643 | csstype@3.1.3: {} 3644 | 3645 | data-uri-to-buffer@4.0.1: {} 3646 | 3647 | data-view-buffer@1.0.2: 3648 | dependencies: 3649 | call-bound: 1.0.4 3650 | es-errors: 1.3.0 3651 | is-data-view: 1.0.2 3652 | 3653 | data-view-byte-length@1.0.2: 3654 | dependencies: 3655 | call-bound: 1.0.4 3656 | es-errors: 1.3.0 3657 | is-data-view: 1.0.2 3658 | 3659 | data-view-byte-offset@1.0.1: 3660 | dependencies: 3661 | call-bound: 1.0.4 3662 | es-errors: 1.3.0 3663 | is-data-view: 1.0.2 3664 | 3665 | debug@4.4.0: 3666 | dependencies: 3667 | ms: 2.1.3 3668 | 3669 | deep-is@0.1.4: {} 3670 | 3671 | define-data-property@1.1.4: 3672 | dependencies: 3673 | es-define-property: 1.0.1 3674 | es-errors: 1.3.0 3675 | gopd: 1.2.0 3676 | 3677 | define-properties@1.2.1: 3678 | dependencies: 3679 | define-data-property: 1.1.4 3680 | has-property-descriptors: 1.0.2 3681 | object-keys: 1.1.1 3682 | 3683 | detect-libc@2.0.2: {} 3684 | 3685 | detect-libc@2.0.3: 3686 | optional: true 3687 | 3688 | doctrine@2.1.0: 3689 | dependencies: 3690 | esutils: 2.0.3 3691 | 3692 | dotenv@16.0.3: {} 3693 | 3694 | dotenv@16.4.7: {} 3695 | 3696 | drizzle-kit@0.30.5: 3697 | dependencies: 3698 | '@drizzle-team/brocli': 0.10.2 3699 | '@esbuild-kit/esm-loader': 2.6.5 3700 | esbuild: 0.19.12 3701 | esbuild-register: 3.6.0(esbuild@0.19.12) 3702 | gel: 2.0.1 3703 | transitivePeerDependencies: 3704 | - supports-color 3705 | 3706 | drizzle-orm@0.40.0(@libsql/client@0.14.0)(@prisma/client@6.4.1(prisma@6.4.1(typescript@5.8.2))(typescript@5.8.2))(gel@2.0.1)(postgres@3.4.5)(prisma@6.4.1(typescript@5.8.2)): 3707 | optionalDependencies: 3708 | '@libsql/client': 0.14.0 3709 | '@prisma/client': 6.4.1(prisma@6.4.1(typescript@5.8.2))(typescript@5.8.2) 3710 | gel: 2.0.1 3711 | postgres: 3.4.5 3712 | prisma: 6.4.1(typescript@5.8.2) 3713 | 3714 | dunder-proto@1.0.1: 3715 | dependencies: 3716 | call-bind-apply-helpers: 1.0.2 3717 | es-errors: 1.3.0 3718 | gopd: 1.2.0 3719 | 3720 | eastasianwidth@0.2.0: {} 3721 | 3722 | emoji-regex@8.0.0: {} 3723 | 3724 | emoji-regex@9.2.2: {} 3725 | 3726 | env-paths@3.0.0: {} 3727 | 3728 | es-abstract@1.23.9: 3729 | dependencies: 3730 | array-buffer-byte-length: 1.0.2 3731 | arraybuffer.prototype.slice: 1.0.4 3732 | available-typed-arrays: 1.0.7 3733 | call-bind: 1.0.8 3734 | call-bound: 1.0.4 3735 | data-view-buffer: 1.0.2 3736 | data-view-byte-length: 1.0.2 3737 | data-view-byte-offset: 1.0.1 3738 | es-define-property: 1.0.1 3739 | es-errors: 1.3.0 3740 | es-object-atoms: 1.1.1 3741 | es-set-tostringtag: 2.1.0 3742 | es-to-primitive: 1.3.0 3743 | function.prototype.name: 1.1.8 3744 | get-intrinsic: 1.3.0 3745 | get-proto: 1.0.1 3746 | get-symbol-description: 1.1.0 3747 | globalthis: 1.0.4 3748 | gopd: 1.2.0 3749 | has-property-descriptors: 1.0.2 3750 | has-proto: 1.2.0 3751 | has-symbols: 1.1.0 3752 | hasown: 2.0.2 3753 | internal-slot: 1.1.0 3754 | is-array-buffer: 3.0.5 3755 | is-callable: 1.2.7 3756 | is-data-view: 1.0.2 3757 | is-regex: 1.2.1 3758 | is-shared-array-buffer: 1.0.4 3759 | is-string: 1.1.1 3760 | is-typed-array: 1.1.15 3761 | is-weakref: 1.1.1 3762 | math-intrinsics: 1.1.0 3763 | object-inspect: 1.13.4 3764 | object-keys: 1.1.1 3765 | object.assign: 4.1.7 3766 | own-keys: 1.0.1 3767 | regexp.prototype.flags: 1.5.4 3768 | safe-array-concat: 1.1.3 3769 | safe-push-apply: 1.0.0 3770 | safe-regex-test: 1.1.0 3771 | set-proto: 1.0.0 3772 | string.prototype.trim: 1.2.10 3773 | string.prototype.trimend: 1.0.9 3774 | string.prototype.trimstart: 1.0.8 3775 | typed-array-buffer: 1.0.3 3776 | typed-array-byte-length: 1.0.3 3777 | typed-array-byte-offset: 1.0.4 3778 | typed-array-length: 1.0.7 3779 | unbox-primitive: 1.1.0 3780 | which-typed-array: 1.1.18 3781 | 3782 | es-define-property@1.0.1: {} 3783 | 3784 | es-errors@1.3.0: {} 3785 | 3786 | es-iterator-helpers@1.2.1: 3787 | dependencies: 3788 | call-bind: 1.0.8 3789 | call-bound: 1.0.4 3790 | define-properties: 1.2.1 3791 | es-abstract: 1.23.9 3792 | es-errors: 1.3.0 3793 | es-set-tostringtag: 2.1.0 3794 | function-bind: 1.1.2 3795 | get-intrinsic: 1.3.0 3796 | globalthis: 1.0.4 3797 | gopd: 1.2.0 3798 | has-property-descriptors: 1.0.2 3799 | has-proto: 1.2.0 3800 | has-symbols: 1.1.0 3801 | internal-slot: 1.1.0 3802 | iterator.prototype: 1.1.5 3803 | safe-array-concat: 1.1.3 3804 | 3805 | es-object-atoms@1.1.1: 3806 | dependencies: 3807 | es-errors: 1.3.0 3808 | 3809 | es-set-tostringtag@2.1.0: 3810 | dependencies: 3811 | es-errors: 1.3.0 3812 | get-intrinsic: 1.3.0 3813 | has-tostringtag: 1.0.2 3814 | hasown: 2.0.2 3815 | 3816 | es-shim-unscopables@1.1.0: 3817 | dependencies: 3818 | hasown: 2.0.2 3819 | 3820 | es-to-primitive@1.3.0: 3821 | dependencies: 3822 | is-callable: 1.2.7 3823 | is-date-object: 1.1.0 3824 | is-symbol: 1.1.1 3825 | 3826 | esbuild-register@3.6.0(esbuild@0.19.12): 3827 | dependencies: 3828 | debug: 4.4.0 3829 | esbuild: 0.19.12 3830 | transitivePeerDependencies: 3831 | - supports-color 3832 | 3833 | esbuild-register@3.6.0(esbuild@0.25.0): 3834 | dependencies: 3835 | debug: 4.4.0 3836 | esbuild: 0.25.0 3837 | transitivePeerDependencies: 3838 | - supports-color 3839 | optional: true 3840 | 3841 | esbuild@0.18.20: 3842 | optionalDependencies: 3843 | '@esbuild/android-arm': 0.18.20 3844 | '@esbuild/android-arm64': 0.18.20 3845 | '@esbuild/android-x64': 0.18.20 3846 | '@esbuild/darwin-arm64': 0.18.20 3847 | '@esbuild/darwin-x64': 0.18.20 3848 | '@esbuild/freebsd-arm64': 0.18.20 3849 | '@esbuild/freebsd-x64': 0.18.20 3850 | '@esbuild/linux-arm': 0.18.20 3851 | '@esbuild/linux-arm64': 0.18.20 3852 | '@esbuild/linux-ia32': 0.18.20 3853 | '@esbuild/linux-loong64': 0.18.20 3854 | '@esbuild/linux-mips64el': 0.18.20 3855 | '@esbuild/linux-ppc64': 0.18.20 3856 | '@esbuild/linux-riscv64': 0.18.20 3857 | '@esbuild/linux-s390x': 0.18.20 3858 | '@esbuild/linux-x64': 0.18.20 3859 | '@esbuild/netbsd-x64': 0.18.20 3860 | '@esbuild/openbsd-x64': 0.18.20 3861 | '@esbuild/sunos-x64': 0.18.20 3862 | '@esbuild/win32-arm64': 0.18.20 3863 | '@esbuild/win32-ia32': 0.18.20 3864 | '@esbuild/win32-x64': 0.18.20 3865 | 3866 | esbuild@0.19.12: 3867 | optionalDependencies: 3868 | '@esbuild/aix-ppc64': 0.19.12 3869 | '@esbuild/android-arm': 0.19.12 3870 | '@esbuild/android-arm64': 0.19.12 3871 | '@esbuild/android-x64': 0.19.12 3872 | '@esbuild/darwin-arm64': 0.19.12 3873 | '@esbuild/darwin-x64': 0.19.12 3874 | '@esbuild/freebsd-arm64': 0.19.12 3875 | '@esbuild/freebsd-x64': 0.19.12 3876 | '@esbuild/linux-arm': 0.19.12 3877 | '@esbuild/linux-arm64': 0.19.12 3878 | '@esbuild/linux-ia32': 0.19.12 3879 | '@esbuild/linux-loong64': 0.19.12 3880 | '@esbuild/linux-mips64el': 0.19.12 3881 | '@esbuild/linux-ppc64': 0.19.12 3882 | '@esbuild/linux-riscv64': 0.19.12 3883 | '@esbuild/linux-s390x': 0.19.12 3884 | '@esbuild/linux-x64': 0.19.12 3885 | '@esbuild/netbsd-x64': 0.19.12 3886 | '@esbuild/openbsd-x64': 0.19.12 3887 | '@esbuild/sunos-x64': 0.19.12 3888 | '@esbuild/win32-arm64': 0.19.12 3889 | '@esbuild/win32-ia32': 0.19.12 3890 | '@esbuild/win32-x64': 0.19.12 3891 | 3892 | esbuild@0.23.1: 3893 | optionalDependencies: 3894 | '@esbuild/aix-ppc64': 0.23.1 3895 | '@esbuild/android-arm': 0.23.1 3896 | '@esbuild/android-arm64': 0.23.1 3897 | '@esbuild/android-x64': 0.23.1 3898 | '@esbuild/darwin-arm64': 0.23.1 3899 | '@esbuild/darwin-x64': 0.23.1 3900 | '@esbuild/freebsd-arm64': 0.23.1 3901 | '@esbuild/freebsd-x64': 0.23.1 3902 | '@esbuild/linux-arm': 0.23.1 3903 | '@esbuild/linux-arm64': 0.23.1 3904 | '@esbuild/linux-ia32': 0.23.1 3905 | '@esbuild/linux-loong64': 0.23.1 3906 | '@esbuild/linux-mips64el': 0.23.1 3907 | '@esbuild/linux-ppc64': 0.23.1 3908 | '@esbuild/linux-riscv64': 0.23.1 3909 | '@esbuild/linux-s390x': 0.23.1 3910 | '@esbuild/linux-x64': 0.23.1 3911 | '@esbuild/netbsd-x64': 0.23.1 3912 | '@esbuild/openbsd-arm64': 0.23.1 3913 | '@esbuild/openbsd-x64': 0.23.1 3914 | '@esbuild/sunos-x64': 0.23.1 3915 | '@esbuild/win32-arm64': 0.23.1 3916 | '@esbuild/win32-ia32': 0.23.1 3917 | '@esbuild/win32-x64': 0.23.1 3918 | 3919 | esbuild@0.25.0: 3920 | optionalDependencies: 3921 | '@esbuild/aix-ppc64': 0.25.0 3922 | '@esbuild/android-arm': 0.25.0 3923 | '@esbuild/android-arm64': 0.25.0 3924 | '@esbuild/android-x64': 0.25.0 3925 | '@esbuild/darwin-arm64': 0.25.0 3926 | '@esbuild/darwin-x64': 0.25.0 3927 | '@esbuild/freebsd-arm64': 0.25.0 3928 | '@esbuild/freebsd-x64': 0.25.0 3929 | '@esbuild/linux-arm': 0.25.0 3930 | '@esbuild/linux-arm64': 0.25.0 3931 | '@esbuild/linux-ia32': 0.25.0 3932 | '@esbuild/linux-loong64': 0.25.0 3933 | '@esbuild/linux-mips64el': 0.25.0 3934 | '@esbuild/linux-ppc64': 0.25.0 3935 | '@esbuild/linux-riscv64': 0.25.0 3936 | '@esbuild/linux-s390x': 0.25.0 3937 | '@esbuild/linux-x64': 0.25.0 3938 | '@esbuild/netbsd-arm64': 0.25.0 3939 | '@esbuild/netbsd-x64': 0.25.0 3940 | '@esbuild/openbsd-arm64': 0.25.0 3941 | '@esbuild/openbsd-x64': 0.25.0 3942 | '@esbuild/sunos-x64': 0.25.0 3943 | '@esbuild/win32-arm64': 0.25.0 3944 | '@esbuild/win32-ia32': 0.25.0 3945 | '@esbuild/win32-x64': 0.25.0 3946 | 3947 | escape-string-regexp@4.0.0: {} 3948 | 3949 | eslint-config-prettier@10.1.1(eslint@9.22.0): 3950 | dependencies: 3951 | eslint: 9.22.0 3952 | 3953 | eslint-plugin-only-warn@1.1.0: {} 3954 | 3955 | eslint-plugin-react-hooks@5.2.0(eslint@9.22.0): 3956 | dependencies: 3957 | eslint: 9.22.0 3958 | 3959 | eslint-plugin-react@7.37.4(eslint@9.22.0): 3960 | dependencies: 3961 | array-includes: 3.1.8 3962 | array.prototype.findlast: 1.2.5 3963 | array.prototype.flatmap: 1.3.3 3964 | array.prototype.tosorted: 1.1.4 3965 | doctrine: 2.1.0 3966 | es-iterator-helpers: 1.2.1 3967 | eslint: 9.22.0 3968 | estraverse: 5.3.0 3969 | hasown: 2.0.2 3970 | jsx-ast-utils: 3.3.5 3971 | minimatch: 3.1.2 3972 | object.entries: 1.1.8 3973 | object.fromentries: 2.0.8 3974 | object.values: 1.2.1 3975 | prop-types: 15.8.1 3976 | resolve: 2.0.0-next.5 3977 | semver: 6.3.1 3978 | string.prototype.matchall: 4.0.12 3979 | string.prototype.repeat: 1.0.0 3980 | 3981 | eslint-plugin-turbo@2.4.4(eslint@9.22.0)(turbo@2.4.4): 3982 | dependencies: 3983 | dotenv: 16.0.3 3984 | eslint: 9.22.0 3985 | turbo: 2.4.4 3986 | 3987 | eslint-scope@8.3.0: 3988 | dependencies: 3989 | esrecurse: 4.3.0 3990 | estraverse: 5.3.0 3991 | 3992 | eslint-visitor-keys@3.4.3: {} 3993 | 3994 | eslint-visitor-keys@4.2.0: {} 3995 | 3996 | eslint@9.22.0: 3997 | dependencies: 3998 | '@eslint-community/eslint-utils': 4.4.1(eslint@9.22.0) 3999 | '@eslint-community/regexpp': 4.12.1 4000 | '@eslint/config-array': 0.19.2 4001 | '@eslint/config-helpers': 0.1.0 4002 | '@eslint/core': 0.12.0 4003 | '@eslint/eslintrc': 3.3.0 4004 | '@eslint/js': 9.22.0 4005 | '@eslint/plugin-kit': 0.2.7 4006 | '@humanfs/node': 0.16.6 4007 | '@humanwhocodes/module-importer': 1.0.1 4008 | '@humanwhocodes/retry': 0.4.2 4009 | '@types/estree': 1.0.6 4010 | '@types/json-schema': 7.0.15 4011 | ajv: 6.12.6 4012 | chalk: 4.1.2 4013 | cross-spawn: 7.0.6 4014 | debug: 4.4.0 4015 | escape-string-regexp: 4.0.0 4016 | eslint-scope: 8.3.0 4017 | eslint-visitor-keys: 4.2.0 4018 | espree: 10.3.0 4019 | esquery: 1.6.0 4020 | esutils: 2.0.3 4021 | fast-deep-equal: 3.1.3 4022 | file-entry-cache: 8.0.0 4023 | find-up: 5.0.0 4024 | glob-parent: 6.0.2 4025 | ignore: 5.3.2 4026 | imurmurhash: 0.1.4 4027 | is-glob: 4.0.3 4028 | json-stable-stringify-without-jsonify: 1.0.1 4029 | lodash.merge: 4.6.2 4030 | minimatch: 3.1.2 4031 | natural-compare: 1.4.0 4032 | optionator: 0.9.4 4033 | transitivePeerDependencies: 4034 | - supports-color 4035 | 4036 | espree@10.3.0: 4037 | dependencies: 4038 | acorn: 8.14.1 4039 | acorn-jsx: 5.3.2(acorn@8.14.1) 4040 | eslint-visitor-keys: 4.2.0 4041 | 4042 | esquery@1.6.0: 4043 | dependencies: 4044 | estraverse: 5.3.0 4045 | 4046 | esrecurse@4.3.0: 4047 | dependencies: 4048 | estraverse: 5.3.0 4049 | 4050 | estraverse@5.3.0: {} 4051 | 4052 | esutils@2.0.3: {} 4053 | 4054 | fast-deep-equal@3.1.3: {} 4055 | 4056 | fast-glob@3.3.1: 4057 | dependencies: 4058 | '@nodelib/fs.stat': 2.0.5 4059 | '@nodelib/fs.walk': 1.2.8 4060 | glob-parent: 5.1.2 4061 | merge2: 1.4.1 4062 | micromatch: 4.0.8 4063 | 4064 | fast-glob@3.3.3: 4065 | dependencies: 4066 | '@nodelib/fs.stat': 2.0.5 4067 | '@nodelib/fs.walk': 1.2.8 4068 | glob-parent: 5.1.2 4069 | merge2: 1.4.1 4070 | micromatch: 4.0.8 4071 | 4072 | fast-json-stable-stringify@2.1.0: {} 4073 | 4074 | fast-levenshtein@2.0.6: {} 4075 | 4076 | fastq@1.19.1: 4077 | dependencies: 4078 | reusify: 1.1.0 4079 | 4080 | fdir@6.4.3(picomatch@4.0.2): 4081 | optionalDependencies: 4082 | picomatch: 4.0.2 4083 | 4084 | fetch-blob@3.2.0: 4085 | dependencies: 4086 | node-domexception: 1.0.0 4087 | web-streams-polyfill: 3.3.3 4088 | 4089 | file-entry-cache@8.0.0: 4090 | dependencies: 4091 | flat-cache: 4.0.1 4092 | 4093 | fill-range@7.1.1: 4094 | dependencies: 4095 | to-regex-range: 5.0.1 4096 | 4097 | find-up@5.0.0: 4098 | dependencies: 4099 | locate-path: 6.0.0 4100 | path-exists: 4.0.0 4101 | 4102 | flat-cache@4.0.1: 4103 | dependencies: 4104 | flatted: 3.3.3 4105 | keyv: 4.5.4 4106 | 4107 | flatted@3.3.3: {} 4108 | 4109 | for-each@0.3.5: 4110 | dependencies: 4111 | is-callable: 1.2.7 4112 | 4113 | foreground-child@3.3.1: 4114 | dependencies: 4115 | cross-spawn: 7.0.6 4116 | signal-exit: 4.1.0 4117 | 4118 | formdata-polyfill@4.0.10: 4119 | dependencies: 4120 | fetch-blob: 3.2.0 4121 | 4122 | fsevents@2.3.3: 4123 | optional: true 4124 | 4125 | function-bind@1.1.2: {} 4126 | 4127 | function.prototype.name@1.1.8: 4128 | dependencies: 4129 | call-bind: 1.0.8 4130 | call-bound: 1.0.4 4131 | define-properties: 1.2.1 4132 | functions-have-names: 1.2.3 4133 | hasown: 2.0.2 4134 | is-callable: 1.2.7 4135 | 4136 | functions-have-names@1.2.3: {} 4137 | 4138 | gel@2.0.1: 4139 | dependencies: 4140 | '@petamoriken/float16': 3.9.1 4141 | debug: 4.4.0 4142 | env-paths: 3.0.0 4143 | semver: 7.7.1 4144 | shell-quote: 1.8.2 4145 | which: 4.0.0 4146 | transitivePeerDependencies: 4147 | - supports-color 4148 | 4149 | get-intrinsic@1.3.0: 4150 | dependencies: 4151 | call-bind-apply-helpers: 1.0.2 4152 | es-define-property: 1.0.1 4153 | es-errors: 1.3.0 4154 | es-object-atoms: 1.1.1 4155 | function-bind: 1.1.2 4156 | get-proto: 1.0.1 4157 | gopd: 1.2.0 4158 | has-symbols: 1.1.0 4159 | hasown: 2.0.2 4160 | math-intrinsics: 1.1.0 4161 | 4162 | get-proto@1.0.1: 4163 | dependencies: 4164 | dunder-proto: 1.0.1 4165 | es-object-atoms: 1.1.1 4166 | 4167 | get-symbol-description@1.1.0: 4168 | dependencies: 4169 | call-bound: 1.0.4 4170 | es-errors: 1.3.0 4171 | get-intrinsic: 1.3.0 4172 | 4173 | get-tsconfig@4.10.0: 4174 | dependencies: 4175 | resolve-pkg-maps: 1.0.0 4176 | 4177 | glob-parent@5.1.2: 4178 | dependencies: 4179 | is-glob: 4.0.3 4180 | 4181 | glob-parent@6.0.2: 4182 | dependencies: 4183 | is-glob: 4.0.3 4184 | 4185 | glob@10.3.10: 4186 | dependencies: 4187 | foreground-child: 3.3.1 4188 | jackspeak: 2.3.6 4189 | minimatch: 9.0.5 4190 | minipass: 7.1.2 4191 | path-scurry: 1.11.1 4192 | 4193 | glob@10.4.5: 4194 | dependencies: 4195 | foreground-child: 3.3.1 4196 | jackspeak: 3.4.3 4197 | minimatch: 9.0.5 4198 | minipass: 7.1.2 4199 | package-json-from-dist: 1.0.1 4200 | path-scurry: 1.11.1 4201 | 4202 | globals@14.0.0: {} 4203 | 4204 | globals@16.0.0: {} 4205 | 4206 | globalthis@1.0.4: 4207 | dependencies: 4208 | define-properties: 1.2.1 4209 | gopd: 1.2.0 4210 | 4211 | gopd@1.2.0: {} 4212 | 4213 | graphemer@1.4.0: {} 4214 | 4215 | has-bigints@1.1.0: {} 4216 | 4217 | has-flag@4.0.0: {} 4218 | 4219 | has-property-descriptors@1.0.2: 4220 | dependencies: 4221 | es-define-property: 1.0.1 4222 | 4223 | has-proto@1.2.0: 4224 | dependencies: 4225 | dunder-proto: 1.0.1 4226 | 4227 | has-symbols@1.1.0: {} 4228 | 4229 | has-tostringtag@1.0.2: 4230 | dependencies: 4231 | has-symbols: 1.1.0 4232 | 4233 | hasown@2.0.2: 4234 | dependencies: 4235 | function-bind: 1.1.2 4236 | 4237 | ignore@5.3.2: {} 4238 | 4239 | import-fresh@3.3.1: 4240 | dependencies: 4241 | parent-module: 1.0.1 4242 | resolve-from: 4.0.0 4243 | 4244 | imurmurhash@0.1.4: {} 4245 | 4246 | internal-slot@1.1.0: 4247 | dependencies: 4248 | es-errors: 1.3.0 4249 | hasown: 2.0.2 4250 | side-channel: 1.1.0 4251 | 4252 | is-array-buffer@3.0.5: 4253 | dependencies: 4254 | call-bind: 1.0.8 4255 | call-bound: 1.0.4 4256 | get-intrinsic: 1.3.0 4257 | 4258 | is-arrayish@0.3.2: 4259 | optional: true 4260 | 4261 | is-async-function@2.1.1: 4262 | dependencies: 4263 | async-function: 1.0.0 4264 | call-bound: 1.0.4 4265 | get-proto: 1.0.1 4266 | has-tostringtag: 1.0.2 4267 | safe-regex-test: 1.1.0 4268 | 4269 | is-bigint@1.1.0: 4270 | dependencies: 4271 | has-bigints: 1.1.0 4272 | 4273 | is-boolean-object@1.2.2: 4274 | dependencies: 4275 | call-bound: 1.0.4 4276 | has-tostringtag: 1.0.2 4277 | 4278 | is-callable@1.2.7: {} 4279 | 4280 | is-core-module@2.16.1: 4281 | dependencies: 4282 | hasown: 2.0.2 4283 | 4284 | is-data-view@1.0.2: 4285 | dependencies: 4286 | call-bound: 1.0.4 4287 | get-intrinsic: 1.3.0 4288 | is-typed-array: 1.1.15 4289 | 4290 | is-date-object@1.1.0: 4291 | dependencies: 4292 | call-bound: 1.0.4 4293 | has-tostringtag: 1.0.2 4294 | 4295 | is-extglob@2.1.1: {} 4296 | 4297 | is-finalizationregistry@1.1.1: 4298 | dependencies: 4299 | call-bound: 1.0.4 4300 | 4301 | is-fullwidth-code-point@3.0.0: {} 4302 | 4303 | is-generator-function@1.1.0: 4304 | dependencies: 4305 | call-bound: 1.0.4 4306 | get-proto: 1.0.1 4307 | has-tostringtag: 1.0.2 4308 | safe-regex-test: 1.1.0 4309 | 4310 | is-glob@4.0.3: 4311 | dependencies: 4312 | is-extglob: 2.1.1 4313 | 4314 | is-map@2.0.3: {} 4315 | 4316 | is-number-object@1.1.1: 4317 | dependencies: 4318 | call-bound: 1.0.4 4319 | has-tostringtag: 1.0.2 4320 | 4321 | is-number@7.0.0: {} 4322 | 4323 | is-regex@1.2.1: 4324 | dependencies: 4325 | call-bound: 1.0.4 4326 | gopd: 1.2.0 4327 | has-tostringtag: 1.0.2 4328 | hasown: 2.0.2 4329 | 4330 | is-set@2.0.3: {} 4331 | 4332 | is-shared-array-buffer@1.0.4: 4333 | dependencies: 4334 | call-bound: 1.0.4 4335 | 4336 | is-string@1.1.1: 4337 | dependencies: 4338 | call-bound: 1.0.4 4339 | has-tostringtag: 1.0.2 4340 | 4341 | is-symbol@1.1.1: 4342 | dependencies: 4343 | call-bound: 1.0.4 4344 | has-symbols: 1.1.0 4345 | safe-regex-test: 1.1.0 4346 | 4347 | is-typed-array@1.1.15: 4348 | dependencies: 4349 | which-typed-array: 1.1.18 4350 | 4351 | is-weakmap@2.0.2: {} 4352 | 4353 | is-weakref@1.1.1: 4354 | dependencies: 4355 | call-bound: 1.0.4 4356 | 4357 | is-weakset@2.0.4: 4358 | dependencies: 4359 | call-bound: 1.0.4 4360 | get-intrinsic: 1.3.0 4361 | 4362 | isarray@2.0.5: {} 4363 | 4364 | isexe@2.0.0: {} 4365 | 4366 | isexe@3.1.1: {} 4367 | 4368 | iterator.prototype@1.1.5: 4369 | dependencies: 4370 | define-data-property: 1.1.4 4371 | es-object-atoms: 1.1.1 4372 | get-intrinsic: 1.3.0 4373 | get-proto: 1.0.1 4374 | has-symbols: 1.1.0 4375 | set-function-name: 2.0.2 4376 | 4377 | jackspeak@2.3.6: 4378 | dependencies: 4379 | '@isaacs/cliui': 8.0.2 4380 | optionalDependencies: 4381 | '@pkgjs/parseargs': 0.11.0 4382 | 4383 | jackspeak@3.4.3: 4384 | dependencies: 4385 | '@isaacs/cliui': 8.0.2 4386 | optionalDependencies: 4387 | '@pkgjs/parseargs': 0.11.0 4388 | 4389 | joycon@3.1.1: {} 4390 | 4391 | js-base64@3.7.7: {} 4392 | 4393 | js-tokens@4.0.0: {} 4394 | 4395 | js-yaml@4.1.0: 4396 | dependencies: 4397 | argparse: 2.0.1 4398 | 4399 | json-buffer@3.0.1: {} 4400 | 4401 | json-schema-traverse@0.4.1: {} 4402 | 4403 | json-stable-stringify-without-jsonify@1.0.1: {} 4404 | 4405 | jsx-ast-utils@3.3.5: 4406 | dependencies: 4407 | array-includes: 3.1.8 4408 | array.prototype.flat: 1.3.3 4409 | object.assign: 4.1.7 4410 | object.values: 1.2.1 4411 | 4412 | keyv@4.5.4: 4413 | dependencies: 4414 | json-buffer: 3.0.1 4415 | 4416 | levn@0.4.1: 4417 | dependencies: 4418 | prelude-ls: 1.2.1 4419 | type-check: 0.4.0 4420 | 4421 | libsql@0.4.7: 4422 | dependencies: 4423 | '@neon-rs/load': 0.0.4 4424 | detect-libc: 2.0.2 4425 | optionalDependencies: 4426 | '@libsql/darwin-arm64': 0.4.7 4427 | '@libsql/darwin-x64': 0.4.7 4428 | '@libsql/linux-arm64-gnu': 0.4.7 4429 | '@libsql/linux-arm64-musl': 0.4.7 4430 | '@libsql/linux-x64-gnu': 0.4.7 4431 | '@libsql/linux-x64-musl': 0.4.7 4432 | '@libsql/win32-x64-msvc': 0.4.7 4433 | 4434 | lilconfig@3.1.3: {} 4435 | 4436 | lines-and-columns@1.2.4: {} 4437 | 4438 | load-tsconfig@0.2.5: {} 4439 | 4440 | locate-path@6.0.0: 4441 | dependencies: 4442 | p-locate: 5.0.0 4443 | 4444 | lodash.merge@4.6.2: {} 4445 | 4446 | lodash.sortby@4.7.0: {} 4447 | 4448 | loose-envify@1.4.0: 4449 | dependencies: 4450 | js-tokens: 4.0.0 4451 | 4452 | lru-cache@10.4.3: {} 4453 | 4454 | math-intrinsics@1.1.0: {} 4455 | 4456 | merge2@1.4.1: {} 4457 | 4458 | micromatch@4.0.8: 4459 | dependencies: 4460 | braces: 3.0.3 4461 | picomatch: 2.3.1 4462 | 4463 | minimatch@3.1.2: 4464 | dependencies: 4465 | brace-expansion: 1.1.11 4466 | 4467 | minimatch@9.0.5: 4468 | dependencies: 4469 | brace-expansion: 2.0.1 4470 | 4471 | minipass@7.1.2: {} 4472 | 4473 | ms@2.1.3: {} 4474 | 4475 | mz@2.7.0: 4476 | dependencies: 4477 | any-promise: 1.3.0 4478 | object-assign: 4.1.1 4479 | thenify-all: 1.6.0 4480 | 4481 | nanoid@3.3.9: {} 4482 | 4483 | natural-compare@1.4.0: {} 4484 | 4485 | next@15.2.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0): 4486 | dependencies: 4487 | '@next/env': 15.2.1 4488 | '@swc/counter': 0.1.3 4489 | '@swc/helpers': 0.5.15 4490 | busboy: 1.6.0 4491 | caniuse-lite: 1.0.30001702 4492 | postcss: 8.4.31 4493 | react: 19.0.0 4494 | react-dom: 19.0.0(react@19.0.0) 4495 | styled-jsx: 5.1.6(react@19.0.0) 4496 | optionalDependencies: 4497 | '@next/swc-darwin-arm64': 15.2.1 4498 | '@next/swc-darwin-x64': 15.2.1 4499 | '@next/swc-linux-arm64-gnu': 15.2.1 4500 | '@next/swc-linux-arm64-musl': 15.2.1 4501 | '@next/swc-linux-x64-gnu': 15.2.1 4502 | '@next/swc-linux-x64-musl': 15.2.1 4503 | '@next/swc-win32-arm64-msvc': 15.2.1 4504 | '@next/swc-win32-x64-msvc': 15.2.1 4505 | sharp: 0.33.5 4506 | transitivePeerDependencies: 4507 | - '@babel/core' 4508 | - babel-plugin-macros 4509 | 4510 | node-domexception@1.0.0: {} 4511 | 4512 | node-fetch@3.3.2: 4513 | dependencies: 4514 | data-uri-to-buffer: 4.0.1 4515 | fetch-blob: 3.2.0 4516 | formdata-polyfill: 4.0.10 4517 | 4518 | object-assign@4.1.1: {} 4519 | 4520 | object-inspect@1.13.4: {} 4521 | 4522 | object-keys@1.1.1: {} 4523 | 4524 | object.assign@4.1.7: 4525 | dependencies: 4526 | call-bind: 1.0.8 4527 | call-bound: 1.0.4 4528 | define-properties: 1.2.1 4529 | es-object-atoms: 1.1.1 4530 | has-symbols: 1.1.0 4531 | object-keys: 1.1.1 4532 | 4533 | object.entries@1.1.8: 4534 | dependencies: 4535 | call-bind: 1.0.8 4536 | define-properties: 1.2.1 4537 | es-object-atoms: 1.1.1 4538 | 4539 | object.fromentries@2.0.8: 4540 | dependencies: 4541 | call-bind: 1.0.8 4542 | define-properties: 1.2.1 4543 | es-abstract: 1.23.9 4544 | es-object-atoms: 1.1.1 4545 | 4546 | object.values@1.2.1: 4547 | dependencies: 4548 | call-bind: 1.0.8 4549 | call-bound: 1.0.4 4550 | define-properties: 1.2.1 4551 | es-object-atoms: 1.1.1 4552 | 4553 | optionator@0.9.4: 4554 | dependencies: 4555 | deep-is: 0.1.4 4556 | fast-levenshtein: 2.0.6 4557 | levn: 0.4.1 4558 | prelude-ls: 1.2.1 4559 | type-check: 0.4.0 4560 | word-wrap: 1.2.5 4561 | 4562 | own-keys@1.0.1: 4563 | dependencies: 4564 | get-intrinsic: 1.3.0 4565 | object-keys: 1.1.1 4566 | safe-push-apply: 1.0.0 4567 | 4568 | p-limit@3.1.0: 4569 | dependencies: 4570 | yocto-queue: 0.1.0 4571 | 4572 | p-locate@5.0.0: 4573 | dependencies: 4574 | p-limit: 3.1.0 4575 | 4576 | package-json-from-dist@1.0.1: {} 4577 | 4578 | parent-module@1.0.1: 4579 | dependencies: 4580 | callsites: 3.1.0 4581 | 4582 | path-exists@4.0.0: {} 4583 | 4584 | path-key@3.1.1: {} 4585 | 4586 | path-parse@1.0.7: {} 4587 | 4588 | path-scurry@1.11.1: 4589 | dependencies: 4590 | lru-cache: 10.4.3 4591 | minipass: 7.1.2 4592 | 4593 | picocolors@1.1.1: {} 4594 | 4595 | picomatch@2.3.1: {} 4596 | 4597 | picomatch@4.0.2: {} 4598 | 4599 | pirates@4.0.6: {} 4600 | 4601 | possible-typed-array-names@1.1.0: {} 4602 | 4603 | postcss-load-config@6.0.1(postcss@8.4.31)(tsx@4.19.1): 4604 | dependencies: 4605 | lilconfig: 3.1.3 4606 | optionalDependencies: 4607 | postcss: 8.4.31 4608 | tsx: 4.19.1 4609 | 4610 | postcss@8.4.31: 4611 | dependencies: 4612 | nanoid: 3.3.9 4613 | picocolors: 1.1.1 4614 | source-map-js: 1.2.1 4615 | 4616 | postgres@3.4.5: {} 4617 | 4618 | prelude-ls@1.2.1: {} 4619 | 4620 | prettier@3.5.3: {} 4621 | 4622 | prisma@6.4.1(typescript@5.8.2): 4623 | dependencies: 4624 | '@prisma/engines': 6.4.1 4625 | esbuild: 0.25.0 4626 | esbuild-register: 3.6.0(esbuild@0.25.0) 4627 | optionalDependencies: 4628 | fsevents: 2.3.3 4629 | typescript: 5.8.2 4630 | transitivePeerDependencies: 4631 | - supports-color 4632 | optional: true 4633 | 4634 | promise-limit@2.7.0: {} 4635 | 4636 | prop-types@15.8.1: 4637 | dependencies: 4638 | loose-envify: 1.4.0 4639 | object-assign: 4.1.1 4640 | react-is: 16.13.1 4641 | 4642 | punycode@2.3.1: {} 4643 | 4644 | queue-microtask@1.2.3: {} 4645 | 4646 | react-dom@19.0.0(react@19.0.0): 4647 | dependencies: 4648 | react: 19.0.0 4649 | scheduler: 0.25.0 4650 | 4651 | react-is@16.13.1: {} 4652 | 4653 | react@19.0.0: {} 4654 | 4655 | readdirp@4.1.2: {} 4656 | 4657 | reflect.getprototypeof@1.0.10: 4658 | dependencies: 4659 | call-bind: 1.0.8 4660 | define-properties: 1.2.1 4661 | es-abstract: 1.23.9 4662 | es-errors: 1.3.0 4663 | es-object-atoms: 1.1.1 4664 | get-intrinsic: 1.3.0 4665 | get-proto: 1.0.1 4666 | which-builtin-type: 1.2.1 4667 | 4668 | regexp.prototype.flags@1.5.4: 4669 | dependencies: 4670 | call-bind: 1.0.8 4671 | define-properties: 1.2.1 4672 | es-errors: 1.3.0 4673 | get-proto: 1.0.1 4674 | gopd: 1.2.0 4675 | set-function-name: 2.0.2 4676 | 4677 | resolve-from@4.0.0: {} 4678 | 4679 | resolve-from@5.0.0: {} 4680 | 4681 | resolve-pkg-maps@1.0.0: {} 4682 | 4683 | resolve@2.0.0-next.5: 4684 | dependencies: 4685 | is-core-module: 2.16.1 4686 | path-parse: 1.0.7 4687 | supports-preserve-symlinks-flag: 1.0.0 4688 | 4689 | reusify@1.1.0: {} 4690 | 4691 | rimraf@5.0.10: 4692 | dependencies: 4693 | glob: 10.4.5 4694 | 4695 | rollup@4.35.0: 4696 | dependencies: 4697 | '@types/estree': 1.0.6 4698 | optionalDependencies: 4699 | '@rollup/rollup-android-arm-eabi': 4.35.0 4700 | '@rollup/rollup-android-arm64': 4.35.0 4701 | '@rollup/rollup-darwin-arm64': 4.35.0 4702 | '@rollup/rollup-darwin-x64': 4.35.0 4703 | '@rollup/rollup-freebsd-arm64': 4.35.0 4704 | '@rollup/rollup-freebsd-x64': 4.35.0 4705 | '@rollup/rollup-linux-arm-gnueabihf': 4.35.0 4706 | '@rollup/rollup-linux-arm-musleabihf': 4.35.0 4707 | '@rollup/rollup-linux-arm64-gnu': 4.35.0 4708 | '@rollup/rollup-linux-arm64-musl': 4.35.0 4709 | '@rollup/rollup-linux-loongarch64-gnu': 4.35.0 4710 | '@rollup/rollup-linux-powerpc64le-gnu': 4.35.0 4711 | '@rollup/rollup-linux-riscv64-gnu': 4.35.0 4712 | '@rollup/rollup-linux-s390x-gnu': 4.35.0 4713 | '@rollup/rollup-linux-x64-gnu': 4.35.0 4714 | '@rollup/rollup-linux-x64-musl': 4.35.0 4715 | '@rollup/rollup-win32-arm64-msvc': 4.35.0 4716 | '@rollup/rollup-win32-ia32-msvc': 4.35.0 4717 | '@rollup/rollup-win32-x64-msvc': 4.35.0 4718 | fsevents: 2.3.3 4719 | 4720 | run-parallel@1.2.0: 4721 | dependencies: 4722 | queue-microtask: 1.2.3 4723 | 4724 | safe-array-concat@1.1.3: 4725 | dependencies: 4726 | call-bind: 1.0.8 4727 | call-bound: 1.0.4 4728 | get-intrinsic: 1.3.0 4729 | has-symbols: 1.1.0 4730 | isarray: 2.0.5 4731 | 4732 | safe-push-apply@1.0.0: 4733 | dependencies: 4734 | es-errors: 1.3.0 4735 | isarray: 2.0.5 4736 | 4737 | safe-regex-test@1.1.0: 4738 | dependencies: 4739 | call-bound: 1.0.4 4740 | es-errors: 1.3.0 4741 | is-regex: 1.2.1 4742 | 4743 | scheduler@0.25.0: {} 4744 | 4745 | semver@6.3.1: {} 4746 | 4747 | semver@7.7.1: {} 4748 | 4749 | set-function-length@1.2.2: 4750 | dependencies: 4751 | define-data-property: 1.1.4 4752 | es-errors: 1.3.0 4753 | function-bind: 1.1.2 4754 | get-intrinsic: 1.3.0 4755 | gopd: 1.2.0 4756 | has-property-descriptors: 1.0.2 4757 | 4758 | set-function-name@2.0.2: 4759 | dependencies: 4760 | define-data-property: 1.1.4 4761 | es-errors: 1.3.0 4762 | functions-have-names: 1.2.3 4763 | has-property-descriptors: 1.0.2 4764 | 4765 | set-proto@1.0.0: 4766 | dependencies: 4767 | dunder-proto: 1.0.1 4768 | es-errors: 1.3.0 4769 | es-object-atoms: 1.1.1 4770 | 4771 | sharp@0.33.5: 4772 | dependencies: 4773 | color: 4.2.3 4774 | detect-libc: 2.0.3 4775 | semver: 7.7.1 4776 | optionalDependencies: 4777 | '@img/sharp-darwin-arm64': 0.33.5 4778 | '@img/sharp-darwin-x64': 0.33.5 4779 | '@img/sharp-libvips-darwin-arm64': 1.0.4 4780 | '@img/sharp-libvips-darwin-x64': 1.0.4 4781 | '@img/sharp-libvips-linux-arm': 1.0.5 4782 | '@img/sharp-libvips-linux-arm64': 1.0.4 4783 | '@img/sharp-libvips-linux-s390x': 1.0.4 4784 | '@img/sharp-libvips-linux-x64': 1.0.4 4785 | '@img/sharp-libvips-linuxmusl-arm64': 1.0.4 4786 | '@img/sharp-libvips-linuxmusl-x64': 1.0.4 4787 | '@img/sharp-linux-arm': 0.33.5 4788 | '@img/sharp-linux-arm64': 0.33.5 4789 | '@img/sharp-linux-s390x': 0.33.5 4790 | '@img/sharp-linux-x64': 0.33.5 4791 | '@img/sharp-linuxmusl-arm64': 0.33.5 4792 | '@img/sharp-linuxmusl-x64': 0.33.5 4793 | '@img/sharp-wasm32': 0.33.5 4794 | '@img/sharp-win32-ia32': 0.33.5 4795 | '@img/sharp-win32-x64': 0.33.5 4796 | optional: true 4797 | 4798 | shebang-command@2.0.0: 4799 | dependencies: 4800 | shebang-regex: 3.0.0 4801 | 4802 | shebang-regex@3.0.0: {} 4803 | 4804 | shell-quote@1.8.2: {} 4805 | 4806 | side-channel-list@1.0.0: 4807 | dependencies: 4808 | es-errors: 1.3.0 4809 | object-inspect: 1.13.4 4810 | 4811 | side-channel-map@1.0.1: 4812 | dependencies: 4813 | call-bound: 1.0.4 4814 | es-errors: 1.3.0 4815 | get-intrinsic: 1.3.0 4816 | object-inspect: 1.13.4 4817 | 4818 | side-channel-weakmap@1.0.2: 4819 | dependencies: 4820 | call-bound: 1.0.4 4821 | es-errors: 1.3.0 4822 | get-intrinsic: 1.3.0 4823 | object-inspect: 1.13.4 4824 | side-channel-map: 1.0.1 4825 | 4826 | side-channel@1.1.0: 4827 | dependencies: 4828 | es-errors: 1.3.0 4829 | object-inspect: 1.13.4 4830 | side-channel-list: 1.0.0 4831 | side-channel-map: 1.0.1 4832 | side-channel-weakmap: 1.0.2 4833 | 4834 | signal-exit@4.1.0: {} 4835 | 4836 | simple-swizzle@0.2.2: 4837 | dependencies: 4838 | is-arrayish: 0.3.2 4839 | optional: true 4840 | 4841 | source-map-js@1.2.1: {} 4842 | 4843 | source-map-support@0.5.21: 4844 | dependencies: 4845 | buffer-from: 1.1.2 4846 | source-map: 0.6.1 4847 | 4848 | source-map@0.6.1: {} 4849 | 4850 | source-map@0.8.0-beta.0: 4851 | dependencies: 4852 | whatwg-url: 7.1.0 4853 | 4854 | streamsearch@1.1.0: {} 4855 | 4856 | string-width@4.2.3: 4857 | dependencies: 4858 | emoji-regex: 8.0.0 4859 | is-fullwidth-code-point: 3.0.0 4860 | strip-ansi: 6.0.1 4861 | 4862 | string-width@5.1.2: 4863 | dependencies: 4864 | eastasianwidth: 0.2.0 4865 | emoji-regex: 9.2.2 4866 | strip-ansi: 7.1.0 4867 | 4868 | string.prototype.matchall@4.0.12: 4869 | dependencies: 4870 | call-bind: 1.0.8 4871 | call-bound: 1.0.4 4872 | define-properties: 1.2.1 4873 | es-abstract: 1.23.9 4874 | es-errors: 1.3.0 4875 | es-object-atoms: 1.1.1 4876 | get-intrinsic: 1.3.0 4877 | gopd: 1.2.0 4878 | has-symbols: 1.1.0 4879 | internal-slot: 1.1.0 4880 | regexp.prototype.flags: 1.5.4 4881 | set-function-name: 2.0.2 4882 | side-channel: 1.1.0 4883 | 4884 | string.prototype.repeat@1.0.0: 4885 | dependencies: 4886 | define-properties: 1.2.1 4887 | es-abstract: 1.23.9 4888 | 4889 | string.prototype.trim@1.2.10: 4890 | dependencies: 4891 | call-bind: 1.0.8 4892 | call-bound: 1.0.4 4893 | define-data-property: 1.1.4 4894 | define-properties: 1.2.1 4895 | es-abstract: 1.23.9 4896 | es-object-atoms: 1.1.1 4897 | has-property-descriptors: 1.0.2 4898 | 4899 | string.prototype.trimend@1.0.9: 4900 | dependencies: 4901 | call-bind: 1.0.8 4902 | call-bound: 1.0.4 4903 | define-properties: 1.2.1 4904 | es-object-atoms: 1.1.1 4905 | 4906 | string.prototype.trimstart@1.0.8: 4907 | dependencies: 4908 | call-bind: 1.0.8 4909 | define-properties: 1.2.1 4910 | es-object-atoms: 1.1.1 4911 | 4912 | strip-ansi@6.0.1: 4913 | dependencies: 4914 | ansi-regex: 5.0.1 4915 | 4916 | strip-ansi@7.1.0: 4917 | dependencies: 4918 | ansi-regex: 6.1.0 4919 | 4920 | strip-json-comments@3.1.1: {} 4921 | 4922 | styled-jsx@5.1.6(react@19.0.0): 4923 | dependencies: 4924 | client-only: 0.0.1 4925 | react: 19.0.0 4926 | 4927 | sucrase@3.35.0: 4928 | dependencies: 4929 | '@jridgewell/gen-mapping': 0.3.8 4930 | commander: 4.1.1 4931 | glob: 10.4.5 4932 | lines-and-columns: 1.2.4 4933 | mz: 2.7.0 4934 | pirates: 4.0.6 4935 | ts-interface-checker: 0.1.13 4936 | 4937 | supports-color@7.2.0: 4938 | dependencies: 4939 | has-flag: 4.0.0 4940 | 4941 | supports-preserve-symlinks-flag@1.0.0: {} 4942 | 4943 | thenify-all@1.6.0: 4944 | dependencies: 4945 | thenify: 3.3.1 4946 | 4947 | thenify@3.3.1: 4948 | dependencies: 4949 | any-promise: 1.3.0 4950 | 4951 | tinyexec@0.3.2: {} 4952 | 4953 | tinyglobby@0.2.12: 4954 | dependencies: 4955 | fdir: 6.4.3(picomatch@4.0.2) 4956 | picomatch: 4.0.2 4957 | 4958 | to-regex-range@5.0.1: 4959 | dependencies: 4960 | is-number: 7.0.0 4961 | 4962 | tr46@1.0.1: 4963 | dependencies: 4964 | punycode: 2.3.1 4965 | 4966 | tree-kill@1.2.2: {} 4967 | 4968 | ts-api-utils@2.0.1(typescript@5.8.2): 4969 | dependencies: 4970 | typescript: 5.8.2 4971 | 4972 | ts-interface-checker@0.1.13: {} 4973 | 4974 | tslib@2.8.1: {} 4975 | 4976 | tsup@8.4.0(postcss@8.4.31)(tsx@4.19.1)(typescript@5.8.2): 4977 | dependencies: 4978 | bundle-require: 5.1.0(esbuild@0.25.0) 4979 | cac: 6.7.14 4980 | chokidar: 4.0.3 4981 | consola: 3.4.0 4982 | debug: 4.4.0 4983 | esbuild: 0.25.0 4984 | joycon: 3.1.1 4985 | picocolors: 1.1.1 4986 | postcss-load-config: 6.0.1(postcss@8.4.31)(tsx@4.19.1) 4987 | resolve-from: 5.0.0 4988 | rollup: 4.35.0 4989 | source-map: 0.8.0-beta.0 4990 | sucrase: 3.35.0 4991 | tinyexec: 0.3.2 4992 | tinyglobby: 0.2.12 4993 | tree-kill: 1.2.2 4994 | optionalDependencies: 4995 | postcss: 8.4.31 4996 | typescript: 5.8.2 4997 | transitivePeerDependencies: 4998 | - jiti 4999 | - supports-color 5000 | - tsx 5001 | - yaml 5002 | 5003 | tsx@4.19.1: 5004 | dependencies: 5005 | esbuild: 0.23.1 5006 | get-tsconfig: 4.10.0 5007 | optionalDependencies: 5008 | fsevents: 2.3.3 5009 | 5010 | turbo-darwin-64@2.4.4: 5011 | optional: true 5012 | 5013 | turbo-darwin-arm64@2.4.4: 5014 | optional: true 5015 | 5016 | turbo-linux-64@2.4.4: 5017 | optional: true 5018 | 5019 | turbo-linux-arm64@2.4.4: 5020 | optional: true 5021 | 5022 | turbo-windows-64@2.4.4: 5023 | optional: true 5024 | 5025 | turbo-windows-arm64@2.4.4: 5026 | optional: true 5027 | 5028 | turbo@2.4.4: 5029 | optionalDependencies: 5030 | turbo-darwin-64: 2.4.4 5031 | turbo-darwin-arm64: 2.4.4 5032 | turbo-linux-64: 2.4.4 5033 | turbo-linux-arm64: 2.4.4 5034 | turbo-windows-64: 2.4.4 5035 | turbo-windows-arm64: 2.4.4 5036 | 5037 | type-check@0.4.0: 5038 | dependencies: 5039 | prelude-ls: 1.2.1 5040 | 5041 | typed-array-buffer@1.0.3: 5042 | dependencies: 5043 | call-bound: 1.0.4 5044 | es-errors: 1.3.0 5045 | is-typed-array: 1.1.15 5046 | 5047 | typed-array-byte-length@1.0.3: 5048 | dependencies: 5049 | call-bind: 1.0.8 5050 | for-each: 0.3.5 5051 | gopd: 1.2.0 5052 | has-proto: 1.2.0 5053 | is-typed-array: 1.1.15 5054 | 5055 | typed-array-byte-offset@1.0.4: 5056 | dependencies: 5057 | available-typed-arrays: 1.0.7 5058 | call-bind: 1.0.8 5059 | for-each: 0.3.5 5060 | gopd: 1.2.0 5061 | has-proto: 1.2.0 5062 | is-typed-array: 1.1.15 5063 | reflect.getprototypeof: 1.0.10 5064 | 5065 | typed-array-length@1.0.7: 5066 | dependencies: 5067 | call-bind: 1.0.8 5068 | for-each: 0.3.5 5069 | gopd: 1.2.0 5070 | is-typed-array: 1.1.15 5071 | possible-typed-array-names: 1.1.0 5072 | reflect.getprototypeof: 1.0.10 5073 | 5074 | typescript-eslint@8.26.0(eslint@9.22.0)(typescript@5.8.2): 5075 | dependencies: 5076 | '@typescript-eslint/eslint-plugin': 8.26.0(@typescript-eslint/parser@8.26.0(eslint@9.22.0)(typescript@5.8.2))(eslint@9.22.0)(typescript@5.8.2) 5077 | '@typescript-eslint/parser': 8.26.0(eslint@9.22.0)(typescript@5.8.2) 5078 | '@typescript-eslint/utils': 8.26.0(eslint@9.22.0)(typescript@5.8.2) 5079 | eslint: 9.22.0 5080 | typescript: 5.8.2 5081 | transitivePeerDependencies: 5082 | - supports-color 5083 | 5084 | typescript@5.8.2: {} 5085 | 5086 | unbox-primitive@1.1.0: 5087 | dependencies: 5088 | call-bound: 1.0.4 5089 | has-bigints: 1.1.0 5090 | has-symbols: 1.1.0 5091 | which-boxed-primitive: 1.1.1 5092 | 5093 | undici-types@6.19.8: {} 5094 | 5095 | uri-js@4.4.1: 5096 | dependencies: 5097 | punycode: 2.3.1 5098 | 5099 | web-streams-polyfill@3.3.3: {} 5100 | 5101 | webidl-conversions@4.0.2: {} 5102 | 5103 | whatwg-url@7.1.0: 5104 | dependencies: 5105 | lodash.sortby: 4.7.0 5106 | tr46: 1.0.1 5107 | webidl-conversions: 4.0.2 5108 | 5109 | which-boxed-primitive@1.1.1: 5110 | dependencies: 5111 | is-bigint: 1.1.0 5112 | is-boolean-object: 1.2.2 5113 | is-number-object: 1.1.1 5114 | is-string: 1.1.1 5115 | is-symbol: 1.1.1 5116 | 5117 | which-builtin-type@1.2.1: 5118 | dependencies: 5119 | call-bound: 1.0.4 5120 | function.prototype.name: 1.1.8 5121 | has-tostringtag: 1.0.2 5122 | is-async-function: 2.1.1 5123 | is-date-object: 1.1.0 5124 | is-finalizationregistry: 1.1.1 5125 | is-generator-function: 1.1.0 5126 | is-regex: 1.2.1 5127 | is-weakref: 1.1.1 5128 | isarray: 2.0.5 5129 | which-boxed-primitive: 1.1.1 5130 | which-collection: 1.0.2 5131 | which-typed-array: 1.1.18 5132 | 5133 | which-collection@1.0.2: 5134 | dependencies: 5135 | is-map: 2.0.3 5136 | is-set: 2.0.3 5137 | is-weakmap: 2.0.2 5138 | is-weakset: 2.0.4 5139 | 5140 | which-typed-array@1.1.18: 5141 | dependencies: 5142 | available-typed-arrays: 1.0.7 5143 | call-bind: 1.0.8 5144 | call-bound: 1.0.4 5145 | for-each: 0.3.5 5146 | gopd: 1.2.0 5147 | has-tostringtag: 1.0.2 5148 | 5149 | which@2.0.2: 5150 | dependencies: 5151 | isexe: 2.0.0 5152 | 5153 | which@4.0.0: 5154 | dependencies: 5155 | isexe: 3.1.1 5156 | 5157 | word-wrap@1.2.5: {} 5158 | 5159 | wrap-ansi@7.0.0: 5160 | dependencies: 5161 | ansi-styles: 4.3.0 5162 | string-width: 4.2.3 5163 | strip-ansi: 6.0.1 5164 | 5165 | wrap-ansi@8.1.0: 5166 | dependencies: 5167 | ansi-styles: 6.2.1 5168 | string-width: 5.1.2 5169 | strip-ansi: 7.1.0 5170 | 5171 | ws@8.18.1: {} 5172 | 5173 | yocto-queue@0.1.0: {} 5174 | -------------------------------------------------------------------------------- /pnpm-workspace.yaml: -------------------------------------------------------------------------------- 1 | packages: 2 | - "apps/*" 3 | - "packages/*" 4 | - "configs/*" 5 | - "tools/*" -------------------------------------------------------------------------------- /tools/db/.env.default: -------------------------------------------------------------------------------- 1 | DATABASE_URL="postgresql://postgres:postgres@localhost:5432/repo_development" 2 | -------------------------------------------------------------------------------- /tools/db/eslint.config.js: -------------------------------------------------------------------------------- 1 | import { nextJsConfig } from "@acme/eslint-config/next-js"; 2 | 3 | /** @type {import("eslint").Linter.Config} */ 4 | export default nextJsConfig; 5 | -------------------------------------------------------------------------------- /tools/db/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "private": true, 3 | "name": "@acme/tools-db", 4 | "type": "module", 5 | "version": "1.0.0", 6 | "scripts": { 7 | "dev": "next dev --turbopack --port 3000", 8 | "build": "next build", 9 | "start": "next start", 10 | "lint": "next lint --max-warnings 0", 11 | "db:seed": "tsx scripts/seed.ts", 12 | "db:migrate": "tsx scripts/migrate.ts" 13 | }, 14 | "dependencies": { 15 | "dotenv": "^16.4.7" 16 | }, 17 | "devDependencies": { 18 | "@acme/database-drizzle": "workspace:*", 19 | "@acme/eslint-config": "workspace:*", 20 | "@acme/typescript-config": "workspace:*" 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /tools/db/src/migrate.ts: -------------------------------------------------------------------------------- 1 | import 'dotenv/config'; 2 | 3 | import { getDbContext, migrate } from "@acme/database-drizzle"; 4 | import { getEnvVariable } from './utils'; 5 | 6 | migrate({ 7 | ...getDbContext(getEnvVariable("DATABASE_URL")), 8 | migrationsFolder: "../../migrations/drizzle", 9 | }); -------------------------------------------------------------------------------- /tools/db/src/seed.ts: -------------------------------------------------------------------------------- 1 | import 'dotenv/config'; 2 | 3 | import { getDbContext, seed } from "@acme/database-drizzle"; 4 | import { getEnvVariable } from './utils'; 5 | 6 | seed(getDbContext(getEnvVariable("DATABASE_URL"))); -------------------------------------------------------------------------------- /tools/db/src/utils.ts: -------------------------------------------------------------------------------- 1 | 2 | export const getEnvVariable = (name: string) => { 3 | const value = process.env[name]; 4 | if (value == null) throw new Error(`environment variable ${name} not found`); 5 | return value; 6 | }; 7 | -------------------------------------------------------------------------------- /tools/db/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@acme/typescript-config/nextjs.json", 3 | "compilerOptions": { "plugins": [{ "name": "next" }] }, 4 | "include": [ 5 | "next-env.d.ts", 6 | "next.config.js", 7 | "**/*.ts", 8 | "**/*.tsx", 9 | ".next/types/**/*.ts" 10 | ], 11 | "exclude": ["node_modules"] 12 | } 13 | -------------------------------------------------------------------------------- /turbo.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://turbo.build/schema.json", 3 | "tasks": { 4 | "build": { 5 | "dependsOn": ["^build"], 6 | "inputs": ["$TURBO_DEFAULT$", ".env*"], 7 | "outputs": ["dist/**", ".next/**", "!.next/cache/**"] 8 | }, 9 | "db:migrate:dev": { 10 | "cache": false, 11 | "persistent": true 12 | }, 13 | "db:migrate:deploy": { 14 | "cache": false 15 | }, 16 | "db:push": { 17 | "cache": false 18 | }, 19 | "db:seed": { 20 | "cache": false 21 | }, 22 | "dev": { 23 | "cache": false, 24 | "persistent": true 25 | }, 26 | "db:migrate": { 27 | "outputs": [] 28 | }, 29 | "generate": { 30 | "dependsOn": ["^generate"], 31 | "cache": false 32 | }, 33 | "lint": {} 34 | } 35 | } 36 | --------------------------------------------------------------------------------