├── .gitignore ├── .npmrc ├── .vscode └── settings.json ├── README.md ├── apps ├── docs │ ├── .gitignore │ ├── README.md │ ├── app │ │ ├── favicon.ico │ │ ├── globals.css │ │ ├── layout.tsx │ │ └── page.tsx │ ├── eslint.config.js │ ├── next.config.js │ ├── package.json │ ├── postcss.config.mjs │ ├── public │ │ ├── file-text.svg │ │ ├── globe.svg │ │ ├── next.svg │ │ ├── turborepo-dark.svg │ │ ├── turborepo-light.svg │ │ ├── vercel.svg │ │ └── window.svg │ └── tsconfig.json └── web │ ├── .gitignore │ ├── README.md │ ├── app │ ├── favicon.ico │ ├── globals.css │ ├── layout.tsx │ └── page.tsx │ ├── eslint.config.js │ ├── next.config.js │ ├── package.json │ ├── postcss.config.mjs │ ├── public │ ├── file-text.svg │ ├── globe.svg │ ├── next.svg │ ├── turborepo-dark.svg │ ├── turborepo-light.svg │ ├── vercel.svg │ └── window.svg │ └── tsconfig.json ├── package.json ├── packages ├── eslint-config │ ├── README.md │ ├── base.js │ ├── next.js │ ├── package.json │ └── react-internal.js ├── theme │ ├── base.css │ ├── colorful.css │ ├── default.css │ └── package.json ├── typescript-config │ ├── base.json │ ├── nextjs.json │ ├── package.json │ └── react-library.json └── ui │ ├── components.json │ ├── package.json │ ├── src │ ├── components │ │ ├── button.tsx │ │ └── code.tsx │ ├── lib │ │ └── utils.ts │ └── styles │ │ └── globals.css │ └── tsconfig.json ├── pnpm-lock.yaml ├── pnpm-workspace.yaml └── turbo.json /.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 | # Local env files 9 | .env 10 | .env.local 11 | .env.development.local 12 | .env.test.local 13 | .env.production.local 14 | 15 | # Testing 16 | coverage 17 | 18 | # Turbo 19 | .turbo 20 | 21 | # Vercel 22 | .vercel 23 | 24 | # Build Outputs 25 | .next/ 26 | out/ 27 | build 28 | dist 29 | 30 | 31 | # Debug 32 | npm-debug.log* 33 | yarn-debug.log* 34 | yarn-error.log* 35 | 36 | # Misc 37 | .DS_Store 38 | *.pem 39 | -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goncy/shadcn-tailwind4-turborepo/468b29677bb03b997d25c51d079ed94c38a8e46a/.npmrc -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "eslint.workingDirectories": [ 3 | { 4 | "mode": "auto" 5 | } 6 | ] 7 | } 8 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Monorepo with Shadcn/ui and TailwindCSS v4 2 | 3 | This project includes a `web` project and a `docs` project. Both uses a different them based on `tailwindcss` v4. 4 | 5 | There is a `ui` package that contains Shadcn components. 6 | 7 | There is a `theme` package that defines the available themes. 8 | 9 | The parent app (web and docs) define which theme to use. 10 | 11 | - Deploy `web`: https://shadcn-tailwind4-turborepo-web.vercel.app/ 12 | - Deploy `docs`: https://shadcn-tailwind4-turborepo-docs.vercel.app/ -------------------------------------------------------------------------------- /apps/docs/.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 | .yarn/install-state.gz 8 | 9 | # testing 10 | /coverage 11 | 12 | # next.js 13 | /.next/ 14 | /out/ 15 | 16 | # production 17 | /build 18 | 19 | # misc 20 | .DS_Store 21 | *.pem 22 | 23 | # debug 24 | npm-debug.log* 25 | yarn-debug.log* 26 | yarn-error.log* 27 | 28 | # env files (can opt-in for commiting if needed) 29 | .env* 30 | 31 | # vercel 32 | .vercel 33 | 34 | # typescript 35 | *.tsbuildinfo 36 | next-env.d.ts 37 | -------------------------------------------------------------------------------- /apps/docs/README.md: -------------------------------------------------------------------------------- 1 | This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/create-next-app). 2 | 3 | ## Getting Started 4 | 5 | First, run the development server: 6 | 7 | ```bash 8 | npm run dev 9 | # or 10 | yarn dev 11 | # or 12 | pnpm dev 13 | # or 14 | bun dev 15 | ``` 16 | 17 | Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. 18 | 19 | You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file. 20 | 21 | This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load Inter, a custom Google Font. 22 | 23 | ## Learn More 24 | 25 | To learn more about Next.js, take a look at the following resources: 26 | 27 | - [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. 28 | - [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. 29 | 30 | You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome! 31 | 32 | ## Deploy on Vercel 33 | 34 | The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. 35 | 36 | Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details. 37 | -------------------------------------------------------------------------------- /apps/docs/app/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goncy/shadcn-tailwind4-turborepo/468b29677bb03b997d25c51d079ed94c38a8e46a/apps/docs/app/favicon.ico -------------------------------------------------------------------------------- /apps/docs/app/globals.css: -------------------------------------------------------------------------------- 1 | @import "tailwindcss"; 2 | 3 | /* Import the UI library styles */ 4 | @import "../node_modules/@repo/ui/src/styles/globals.css"; 5 | 6 | /* Import the theme styles */ 7 | @import "../node_modules/@repo/theme/colorful.css"; 8 | -------------------------------------------------------------------------------- /apps/docs/app/layout.tsx: -------------------------------------------------------------------------------- 1 | import type { Metadata } from "next"; 2 | 3 | import "./globals.css"; 4 | 5 | export const metadata: Metadata = { 6 | title: "Create Next App", 7 | description: "Generated by create next app", 8 | }; 9 | 10 | export default function RootLayout({ 11 | children, 12 | }: Readonly<{ 13 | children: React.ReactNode; 14 | }>) { 15 | return ( 16 | 17 | 18 | {children} 19 | 20 | 21 | ); 22 | } 23 | -------------------------------------------------------------------------------- /apps/docs/app/page.tsx: -------------------------------------------------------------------------------- 1 | import { Button } from "@repo/ui/components/button"; 2 | 3 | export default function Home() { 4 | return ( 5 |
6 | 7 |
8 | ); 9 | } 10 | -------------------------------------------------------------------------------- /apps/docs/eslint.config.js: -------------------------------------------------------------------------------- 1 | import { nextJsConfig } from "@repo/eslint-config/next-js"; 2 | 3 | /** @type {import("eslint").Linter.Config} */ 4 | export default nextJsConfig; 5 | -------------------------------------------------------------------------------- /apps/docs/next.config.js: -------------------------------------------------------------------------------- 1 | /** @type {import('next').NextConfig} */ 2 | const nextConfig = {}; 3 | 4 | export default nextConfig; 5 | -------------------------------------------------------------------------------- /apps/docs/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "docs", 3 | "version": "0.1.0", 4 | "type": "module", 5 | "private": true, 6 | "scripts": { 7 | "dev": "next dev --turbopack --port 3001", 8 | "build": "next build", 9 | "start": "next start --port 3001", 10 | "lint": "next lint --max-warnings 0", 11 | "check-types": "tsc --noEmit" 12 | }, 13 | "dependencies": { 14 | "@repo/theme": "workspace:*", 15 | "@repo/ui": "workspace:*", 16 | "@tailwindcss/postcss": "^4.0.6", 17 | "next": "15.2.0-canary.63", 18 | "postcss": "^8.5.2", 19 | "react": "^19.0.0", 20 | "react-dom": "^19.0.0", 21 | "tailwindcss": "^4.0.6" 22 | }, 23 | "devDependencies": { 24 | "@repo/eslint-config": "workspace:*", 25 | "@repo/typescript-config": "workspace:*", 26 | "@types/node": "^22", 27 | "@types/react": "19.0.8", 28 | "@types/react-dom": "19.0.3", 29 | "eslint": "^9.20.0", 30 | "typescript": "5.7.3" 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /apps/docs/postcss.config.mjs: -------------------------------------------------------------------------------- 1 | const config = { 2 | plugins: { 3 | "@tailwindcss/postcss": {}, 4 | }, 5 | }; 6 | 7 | export default config; -------------------------------------------------------------------------------- /apps/docs/public/file-text.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /apps/docs/public/globe.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /apps/docs/public/next.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /apps/docs/public/turborepo-dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /apps/docs/public/turborepo-light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /apps/docs/public/vercel.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /apps/docs/public/window.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /apps/docs/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@repo/typescript-config/nextjs.json", 3 | "compilerOptions": { 4 | "plugins": [ 5 | { 6 | "name": "next" 7 | } 8 | ], 9 | "paths": { 10 | "@/*": ["./*"] 11 | } 12 | }, 13 | "include": [ 14 | "**/*.ts", 15 | "**/*.tsx", 16 | "next-env.d.ts", 17 | "next.config.js", 18 | ".next/types/**/*.ts" 19 | ], 20 | "exclude": [ 21 | "node_modules" 22 | ] 23 | } 24 | -------------------------------------------------------------------------------- /apps/web/.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 | .yarn/install-state.gz 8 | 9 | # testing 10 | /coverage 11 | 12 | # next.js 13 | /.next/ 14 | /out/ 15 | 16 | # production 17 | /build 18 | 19 | # misc 20 | .DS_Store 21 | *.pem 22 | 23 | # debug 24 | npm-debug.log* 25 | yarn-debug.log* 26 | yarn-error.log* 27 | 28 | # env files (can opt-in for commiting if needed) 29 | .env* 30 | 31 | # vercel 32 | .vercel 33 | 34 | # typescript 35 | *.tsbuildinfo 36 | next-env.d.ts 37 | -------------------------------------------------------------------------------- /apps/web/README.md: -------------------------------------------------------------------------------- 1 | This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/create-next-app). 2 | 3 | ## Getting Started 4 | 5 | First, run the development server: 6 | 7 | ```bash 8 | npm run dev 9 | # or 10 | yarn dev 11 | # or 12 | pnpm dev 13 | # or 14 | bun dev 15 | ``` 16 | 17 | Open [http://localhost:3000](http://localhost:3000) with your browser to see the result. 18 | 19 | You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file. 20 | 21 | This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load Inter, a custom Google Font. 22 | 23 | ## Learn More 24 | 25 | To learn more about Next.js, take a look at the following resources: 26 | 27 | - [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API. 28 | - [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial. 29 | 30 | You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome! 31 | 32 | ## Deploy on Vercel 33 | 34 | The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. 35 | 36 | Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details. 37 | -------------------------------------------------------------------------------- /apps/web/app/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goncy/shadcn-tailwind4-turborepo/468b29677bb03b997d25c51d079ed94c38a8e46a/apps/web/app/favicon.ico -------------------------------------------------------------------------------- /apps/web/app/globals.css: -------------------------------------------------------------------------------- 1 | @import "tailwindcss"; 2 | 3 | /* Import the UI library styles */ 4 | @import "../node_modules/@repo/ui/src/styles/globals.css"; 5 | 6 | /* Import the theme styles */ 7 | @import "../node_modules/@repo/theme/default.css"; 8 | -------------------------------------------------------------------------------- /apps/web/app/layout.tsx: -------------------------------------------------------------------------------- 1 | import type { Metadata } from "next"; 2 | 3 | import "./globals.css"; 4 | 5 | export const metadata: Metadata = { 6 | title: "Create Next App", 7 | description: "Generated by create next app", 8 | }; 9 | 10 | export default function RootLayout({ 11 | children, 12 | }: Readonly<{ 13 | children: React.ReactNode; 14 | }>) { 15 | return ( 16 | 17 | 18 | {children} 19 | 20 | 21 | ); 22 | } 23 | -------------------------------------------------------------------------------- /apps/web/app/page.tsx: -------------------------------------------------------------------------------- 1 | import { Button } from "@repo/ui/components/button"; 2 | 3 | export default function Home() { 4 | return ( 5 |
6 | 7 |
8 | ); 9 | } 10 | -------------------------------------------------------------------------------- /apps/web/eslint.config.js: -------------------------------------------------------------------------------- 1 | import { nextJsConfig } from "@repo/eslint-config/next-js"; 2 | 3 | /** @type {import("eslint").Linter.Config} */ 4 | export default nextJsConfig; 5 | -------------------------------------------------------------------------------- /apps/web/next.config.js: -------------------------------------------------------------------------------- 1 | /** @type {import('next').NextConfig} */ 2 | const nextConfig = {}; 3 | 4 | export default nextConfig; 5 | -------------------------------------------------------------------------------- /apps/web/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "web", 3 | "version": "0.1.0", 4 | "type": "module", 5 | "private": true, 6 | "scripts": { 7 | "dev": "next dev --turbopack --port 3000", 8 | "build": "next build", 9 | "start": "next start --port 3000", 10 | "lint": "next lint --max-warnings 0", 11 | "check-types": "tsc --noEmit" 12 | }, 13 | "dependencies": { 14 | "@repo/theme": "workspace:*", 15 | "@repo/ui": "workspace:*", 16 | "@tailwindcss/postcss": "^4.0.6", 17 | "next": "15.2.0-canary.63", 18 | "postcss": "^8.5.2", 19 | "react": "^19.0.0", 20 | "react-dom": "^19.0.0", 21 | "tailwindcss": "^4.0.6" 22 | }, 23 | "devDependencies": { 24 | "@repo/eslint-config": "workspace:*", 25 | "@repo/typescript-config": "workspace:*", 26 | "@types/node": "^22", 27 | "@types/react": "19.0.8", 28 | "@types/react-dom": "19.0.3", 29 | "eslint": "^9.20.0", 30 | "typescript": "5.7.3" 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /apps/web/postcss.config.mjs: -------------------------------------------------------------------------------- 1 | const config = { 2 | plugins: { 3 | "@tailwindcss/postcss": {}, 4 | }, 5 | }; 6 | 7 | export default config; -------------------------------------------------------------------------------- /apps/web/public/file-text.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /apps/web/public/globe.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /apps/web/public/next.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /apps/web/public/turborepo-dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /apps/web/public/turborepo-light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /apps/web/public/vercel.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /apps/web/public/window.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /apps/web/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@repo/typescript-config/nextjs.json", 3 | "compilerOptions": { 4 | "plugins": [ 5 | { 6 | "name": "next" 7 | } 8 | ], 9 | "baseUrl": ".", 10 | "paths": { 11 | "@/*": ["./*"] 12 | } 13 | }, 14 | "include": [ 15 | "**/*.ts", 16 | "**/*.tsx", 17 | "next-env.d.ts", 18 | "next.config.js", 19 | ".next/types/**/*.ts" 20 | ], 21 | "exclude": [ 22 | "node_modules" 23 | ] 24 | } 25 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "test-multizones", 3 | "private": true, 4 | "scripts": { 5 | "build": "turbo run build", 6 | "dev": "turbo run dev", 7 | "lint": "turbo run lint", 8 | "format": "prettier --write \"**/*.{ts,tsx,md}\"", 9 | "check-types": "turbo run check-types" 10 | }, 11 | "devDependencies": { 12 | "prettier": "^3.5.0", 13 | "turbo": "^2.4.2", 14 | "typescript": "5.7.3" 15 | }, 16 | "packageManager": "pnpm@9.0.0", 17 | "engines": { 18 | "node": ">=18" 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /packages/eslint-config/README.md: -------------------------------------------------------------------------------- 1 | # `@turbo/eslint-config` 2 | 3 | Collection of internal eslint configurations. 4 | -------------------------------------------------------------------------------- /packages/eslint-config/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 | -------------------------------------------------------------------------------- /packages/eslint-config/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 | -------------------------------------------------------------------------------- /packages/eslint-config/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@repo/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.20.0", 13 | "@next/eslint-plugin-next": "^15.1.6", 14 | "eslint": "^9.20.0", 15 | "eslint-config-prettier": "^10.0.1", 16 | "eslint-plugin-only-warn": "^1.1.0", 17 | "eslint-plugin-react": "^7.37.4", 18 | "eslint-plugin-react-hooks": "^5.1.0", 19 | "eslint-plugin-turbo": "^2.4.0", 20 | "globals": "^15.14.0", 21 | "typescript": "^5.7.3", 22 | "typescript-eslint": "^8.23.0" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /packages/eslint-config/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 | -------------------------------------------------------------------------------- /packages/theme/base.css: -------------------------------------------------------------------------------- 1 | @import "tailwindcss"; 2 | 3 | :root { 4 | @media (prefers-color-scheme: dark) {} 5 | } 6 | 7 | @theme inline {} 8 | 9 | @layer base { 10 | * { 11 | @apply border-border outline-ring/50; 12 | } 13 | body { 14 | @apply bg-background text-foreground; 15 | } 16 | } -------------------------------------------------------------------------------- /packages/theme/colorful.css: -------------------------------------------------------------------------------- 1 | @import "./base.css"; 2 | 3 | :root { 4 | --primary: oklch(0.55 0.18 142); 5 | --primary-foreground: oklch(0.97 0.015 355); 6 | --secondary: oklch(0.65 0.2 217); 7 | --secondary-foreground: oklch(0.48 0.15 224); 8 | 9 | @media (prefers-color-scheme: dark) { 10 | --primary: oklch(0.55 0.18 142); 11 | --primary-foreground: oklch(0.97 0.18 142); 12 | --secondary: oklch(0.65 0.2 217); 13 | --secondary-foreground: oklch(0.97 0.2 217); 14 | } 15 | } 16 | 17 | @theme inline {} 18 | -------------------------------------------------------------------------------- /packages/theme/default.css: -------------------------------------------------------------------------------- 1 | @import "./base.css"; 2 | 3 | :root { 4 | @media (prefers-color-scheme: dark) {} 5 | } 6 | 7 | @theme inline {} 8 | -------------------------------------------------------------------------------- /packages/theme/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@repo/theme", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "keywords": [], 10 | "author": "goncy", 11 | "license": "ISC", 12 | "dependencies": { 13 | "tailwindcss": "^4.0.6" 14 | } 15 | } -------------------------------------------------------------------------------- /packages/typescript-config/base.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://json.schemastore.org/tsconfig", 3 | "compilerOptions": { 4 | "declaration": true, 5 | "declarationMap": true, 6 | "esModuleInterop": true, 7 | "incremental": false, 8 | "isolatedModules": true, 9 | "lib": ["es2022", "DOM", "DOM.Iterable"], 10 | "module": "NodeNext", 11 | "moduleDetection": "force", 12 | "moduleResolution": "NodeNext", 13 | "noUncheckedIndexedAccess": true, 14 | "resolveJsonModule": true, 15 | "skipLibCheck": true, 16 | "strict": true, 17 | "target": "ES2022" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /packages/typescript-config/nextjs.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://json.schemastore.org/tsconfig", 3 | "extends": "./base.json", 4 | "compilerOptions": { 5 | "plugins": [{ "name": "next" }], 6 | "module": "ESNext", 7 | "moduleResolution": "Bundler", 8 | "allowJs": true, 9 | "jsx": "preserve", 10 | "noEmit": true 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /packages/typescript-config/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@repo/typescript-config", 3 | "version": "0.0.0", 4 | "private": true, 5 | "license": "MIT", 6 | "publishConfig": { 7 | "access": "public" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /packages/typescript-config/react-library.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://json.schemastore.org/tsconfig", 3 | "extends": "./base.json", 4 | "compilerOptions": { 5 | "jsx": "react-jsx" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /packages/ui/components.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://ui.shadcn.com/schema.json", 3 | "style": "new-york", 4 | "rsc": true, 5 | "tsx": true, 6 | "tailwind": { 7 | "config": "", 8 | "css": "src/styles/globals.css", 9 | "baseColor": "zinc", 10 | "cssVariables": true 11 | }, 12 | "iconLibrary": "lucide", 13 | "aliases": { 14 | "components": "@repo/ui/components", 15 | "utils": "@repo/ui/lib/utils", 16 | "hooks": "@repo/ui/hooks", 17 | "lib": "@repo/ui/lib", 18 | "ui": "@repo/ui/components" 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /packages/ui/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@repo/ui", 3 | "version": "0.0.0", 4 | "private": true, 5 | "exports": { 6 | "./lib/*": "./src/lib/*.ts", 7 | "./components/*": "./src/components/*.tsx", 8 | "./hooks/*": "./src/hooks/*.ts" 9 | }, 10 | "scripts": { 11 | "lint": "eslint . --max-warnings 0", 12 | "generate:component": "turbo gen react-component", 13 | "check-types": "tsc --noEmit" 14 | }, 15 | "devDependencies": { 16 | "@repo/eslint-config": "workspace:*", 17 | "@repo/typescript-config": "workspace:*", 18 | "@types/node": "^22.13.0", 19 | "@types/react": "19.0.8", 20 | "@types/react-dom": "19.0.3", 21 | "eslint": "^9.20.0", 22 | "typescript": "5.7.3" 23 | }, 24 | "dependencies": { 25 | "@radix-ui/react-slot": "^1.1.2", 26 | "class-variance-authority": "^0.7.1", 27 | "clsx": "^2.1.1", 28 | "react": "^19.0.0", 29 | "react-dom": "^19.0.0", 30 | "tailwind-merge": "^3.0.1", 31 | "tailwindcss": "^4.0.6", 32 | "tailwindcss-animate": "^1.0.7" 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /packages/ui/src/components/button.tsx: -------------------------------------------------------------------------------- 1 | import * as React from "react" 2 | import { Slot } from "@radix-ui/react-slot" 3 | import { cva, type VariantProps } from "class-variance-authority" 4 | 5 | import { cn } from "@repo/ui/lib/utils" 6 | 7 | const buttonVariants = cva( 8 | "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-[color,box-shadow] disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0 ring-ring/10 dark:ring-ring/20 dark:outline-ring/40 outline-ring/50 focus-visible:ring-4 focus-visible:outline-1 aria-invalid:focus-visible:ring-0", 9 | { 10 | variants: { 11 | variant: { 12 | default: 13 | "bg-primary text-primary-foreground shadow-sm hover:bg-primary/90", 14 | destructive: 15 | "bg-destructive text-destructive-foreground shadow-xs hover:bg-destructive/90", 16 | outline: 17 | "border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground", 18 | secondary: 19 | "bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80", 20 | ghost: "hover:bg-accent hover:text-accent-foreground", 21 | link: "text-primary underline-offset-4 hover:underline", 22 | }, 23 | size: { 24 | default: "h-9 px-4 py-2 has-[>svg]:px-3", 25 | sm: "h-8 rounded-md px-3 has-[>svg]:px-2.5", 26 | lg: "h-10 rounded-md px-6 has-[>svg]:px-4", 27 | icon: "size-9", 28 | }, 29 | }, 30 | defaultVariants: { 31 | variant: "default", 32 | size: "default", 33 | }, 34 | } 35 | ) 36 | 37 | function Button({ 38 | className, 39 | variant, 40 | size, 41 | asChild = false, 42 | ...props 43 | }: React.ComponentProps<"button"> & 44 | VariantProps & { 45 | asChild?: boolean 46 | }) { 47 | const Comp = asChild ? Slot : "button" 48 | 49 | return ( 50 | 55 | ) 56 | } 57 | 58 | export { Button, buttonVariants } 59 | -------------------------------------------------------------------------------- /packages/ui/src/components/code.tsx: -------------------------------------------------------------------------------- 1 | import { type JSX } from "react"; 2 | 3 | export function Code({ 4 | children, 5 | className, 6 | }: { 7 | children: React.ReactNode; 8 | className?: string; 9 | }): JSX.Element { 10 | return {children}; 11 | } 12 | -------------------------------------------------------------------------------- /packages/ui/src/lib/utils.ts: -------------------------------------------------------------------------------- 1 | import { clsx, type ClassValue } from "clsx" 2 | import { twMerge } from "tailwind-merge" 3 | 4 | export function cn(...inputs: ClassValue[]) { 5 | return twMerge(clsx(inputs)) 6 | } 7 | -------------------------------------------------------------------------------- /packages/ui/src/styles/globals.css: -------------------------------------------------------------------------------- 1 | @import "tailwindcss"; 2 | 3 | @source "../"; 4 | 5 | @plugin "tailwindcss-animate"; 6 | 7 | :root { 8 | /* Base colors */ 9 | --background: oklch(1 0 0); 10 | --foreground: oklch(0.2 0 0); 11 | 12 | /* Card colors */ 13 | --card: oklch(1 0 0); 14 | --card-foreground: oklch(0.2 0 0); 15 | 16 | /* Popover colors */ 17 | --popover: oklch(1 0 0); 18 | --popover-foreground: oklch(0.2 0 0); 19 | 20 | /* Primary colors */ 21 | --primary: oklch(0.65 0.2 280); 22 | --primary-foreground: oklch(1 0 0); 23 | 24 | /* Secondary colors */ 25 | --secondary: oklch(0.9 0.1 280); 26 | --secondary-foreground: oklch(0.3 0.15 280); 27 | 28 | /* State colors */ 29 | --muted: oklch(0.96 0 0); 30 | --muted-foreground: oklch(0.45 0 0); 31 | --accent: oklch(0.96 0 0); 32 | --accent-foreground: oklch(0.25 0 0); 33 | --destructive: oklch(0.65 0.18 15); 34 | --destructive-foreground: oklch(0.98 0 0); 35 | 36 | /* UI element colors */ 37 | --border: oklch(0.89 0 0); 38 | --input: oklch(0.89 0 0); 39 | --ring: oklch(0.2 0 0); 40 | 41 | /* Chart colors */ 42 | --chart-1: oklch(0.65 0.15 30); 43 | --chart-2: oklch(0.60 0.12 173); 44 | --chart-3: oklch(0.35 0.08 197); 45 | --chart-4: oklch(0.75 0.15 85); 46 | --chart-5: oklch(0.70 0.18 45); 47 | 48 | /* Radius */ 49 | --radius: 0.6rem; 50 | 51 | @media (prefers-color-scheme: dark) { 52 | /* Base colors */ 53 | --background: oklch(0.2 0 0); 54 | --foreground: oklch(0.98 0 0); 55 | 56 | /* Card colors */ 57 | --card: oklch(0.2 0 0); 58 | --card-foreground: oklch(0.98 0 0); 59 | 60 | /* Popover colors */ 61 | --popover: oklch(0.2 0 0); 62 | --popover-foreground: oklch(0.98 0 0); 63 | 64 | /* Primary colors */ 65 | --primary: oklch(0.65 0.2 280); 66 | --primary-foreground: oklch(1 0 0); 67 | 68 | /* Secondary colors */ 69 | --secondary: oklch(0.25 0 0); 70 | --secondary-foreground: oklch(0.98 0 0); 71 | 72 | /* State colors */ 73 | --muted: oklch(0.25 0 0); 74 | --muted-foreground: oklch(0.65 0 0); 75 | --accent: oklch(0.25 0 0); 76 | --accent-foreground: oklch(0.98 0 0); 77 | --destructive: oklch(0.45 0.15 15); 78 | --destructive-foreground: oklch(0.98 0 0); 79 | 80 | /* UI element colors */ 81 | --border: oklch(0.25 0 0); 82 | --input: oklch(0.25 0 0); 83 | --ring: oklch(0.85 0 0); 84 | 85 | /* Chart colors */ 86 | --chart-1: oklch(0.60 0.18 250); 87 | --chart-2: oklch(0.55 0.15 160); 88 | --chart-3: oklch(0.65 0.18 30); 89 | --chart-4: oklch(0.60 0.18 280); 90 | --chart-5: oklch(0.60 0.18 340); 91 | } 92 | } 93 | 94 | @theme inline { 95 | --color-background: var(--background); 96 | --color-foreground: var(--foreground); 97 | --color-card: var(--card); 98 | --color-card-foreground: var(--card-foreground); 99 | --color-popover: var(--popover); 100 | --color-popover-foreground: var(--popover-foreground); 101 | --color-primary: var(--primary); 102 | --color-primary-foreground: var(--primary-foreground); 103 | --color-secondary: var(--secondary); 104 | --color-secondary-foreground: var(--secondary-foreground); 105 | --color-muted: var(--muted); 106 | --color-muted-foreground: var(--muted-foreground); 107 | --color-accent: var(--accent); 108 | --color-accent-foreground: var(--accent-foreground); 109 | --color-destructive: var(--destructive); 110 | --color-destructive-foreground: var(--destructive-foreground); 111 | --color-border: var(--border); 112 | --color-input: var(--input); 113 | --color-ring: var(--ring); 114 | --color-chart-1: var(--chart-1); 115 | --color-chart-2: var(--chart-2); 116 | --color-chart-3: var(--chart-3); 117 | --color-chart-4: var(--chart-4); 118 | --color-chart-5: var(--chart-5); 119 | --radius-sm: calc(var(--radius) - 4px); 120 | --radius-md: calc(var(--radius) - 2px); 121 | --radius-lg: var(--radius); 122 | --radius-xl: calc(var(--radius) + 4px); 123 | } -------------------------------------------------------------------------------- /packages/ui/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "@repo/typescript-config/react-library.json", 3 | "compilerOptions": { 4 | "baseUrl": ".", 5 | "paths": { 6 | "@repo/ui/*": ["./src/*"] 7 | } 8 | }, 9 | "include": ["src"], 10 | "exclude": ["node_modules", "dist"] 11 | } 12 | -------------------------------------------------------------------------------- /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.5.0 13 | version: 3.5.0 14 | turbo: 15 | specifier: ^2.4.2 16 | version: 2.4.2 17 | typescript: 18 | specifier: 5.7.3 19 | version: 5.7.3 20 | 21 | apps/docs: 22 | dependencies: 23 | '@repo/theme': 24 | specifier: workspace:* 25 | version: link:../../packages/theme 26 | '@repo/ui': 27 | specifier: workspace:* 28 | version: link:../../packages/ui 29 | '@tailwindcss/postcss': 30 | specifier: ^4.0.6 31 | version: 4.0.6 32 | next: 33 | specifier: 15.2.0-canary.63 34 | version: 15.2.0-canary.63(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 35 | postcss: 36 | specifier: ^8.5.2 37 | version: 8.5.2 38 | react: 39 | specifier: ^19.0.0 40 | version: 19.0.0 41 | react-dom: 42 | specifier: ^19.0.0 43 | version: 19.0.0(react@19.0.0) 44 | tailwindcss: 45 | specifier: ^4.0.6 46 | version: 4.0.6 47 | devDependencies: 48 | '@repo/eslint-config': 49 | specifier: workspace:* 50 | version: link:../../packages/eslint-config 51 | '@repo/typescript-config': 52 | specifier: workspace:* 53 | version: link:../../packages/typescript-config 54 | '@types/node': 55 | specifier: ^22 56 | version: 22.13.0 57 | '@types/react': 58 | specifier: 19.0.8 59 | version: 19.0.8 60 | '@types/react-dom': 61 | specifier: 19.0.3 62 | version: 19.0.3(@types/react@19.0.8) 63 | eslint: 64 | specifier: ^9.20.0 65 | version: 9.20.0(jiti@2.4.2) 66 | typescript: 67 | specifier: 5.7.3 68 | version: 5.7.3 69 | 70 | apps/web: 71 | dependencies: 72 | '@repo/theme': 73 | specifier: workspace:* 74 | version: link:../../packages/theme 75 | '@repo/ui': 76 | specifier: workspace:* 77 | version: link:../../packages/ui 78 | '@tailwindcss/postcss': 79 | specifier: ^4.0.6 80 | version: 4.0.6 81 | next: 82 | specifier: 15.2.0-canary.63 83 | version: 15.2.0-canary.63(react-dom@19.0.0(react@19.0.0))(react@19.0.0) 84 | postcss: 85 | specifier: ^8.5.2 86 | version: 8.5.2 87 | react: 88 | specifier: ^19.0.0 89 | version: 19.0.0 90 | react-dom: 91 | specifier: ^19.0.0 92 | version: 19.0.0(react@19.0.0) 93 | tailwindcss: 94 | specifier: ^4.0.6 95 | version: 4.0.6 96 | devDependencies: 97 | '@repo/eslint-config': 98 | specifier: workspace:* 99 | version: link:../../packages/eslint-config 100 | '@repo/typescript-config': 101 | specifier: workspace:* 102 | version: link:../../packages/typescript-config 103 | '@types/node': 104 | specifier: ^22 105 | version: 22.13.0 106 | '@types/react': 107 | specifier: 19.0.8 108 | version: 19.0.8 109 | '@types/react-dom': 110 | specifier: 19.0.3 111 | version: 19.0.3(@types/react@19.0.8) 112 | eslint: 113 | specifier: ^9.20.0 114 | version: 9.20.0(jiti@2.4.2) 115 | typescript: 116 | specifier: 5.7.3 117 | version: 5.7.3 118 | 119 | packages/eslint-config: 120 | devDependencies: 121 | '@eslint/js': 122 | specifier: ^9.20.0 123 | version: 9.20.0 124 | '@next/eslint-plugin-next': 125 | specifier: ^15.1.6 126 | version: 15.1.6 127 | eslint: 128 | specifier: ^9.20.0 129 | version: 9.20.0(jiti@2.4.2) 130 | eslint-config-prettier: 131 | specifier: ^10.0.1 132 | version: 10.0.1(eslint@9.20.0(jiti@2.4.2)) 133 | eslint-plugin-only-warn: 134 | specifier: ^1.1.0 135 | version: 1.1.0 136 | eslint-plugin-react: 137 | specifier: ^7.37.4 138 | version: 7.37.4(eslint@9.20.0(jiti@2.4.2)) 139 | eslint-plugin-react-hooks: 140 | specifier: ^5.1.0 141 | version: 5.1.0(eslint@9.20.0(jiti@2.4.2)) 142 | eslint-plugin-turbo: 143 | specifier: ^2.4.0 144 | version: 2.4.0(eslint@9.20.0(jiti@2.4.2))(turbo@2.4.2) 145 | globals: 146 | specifier: ^15.14.0 147 | version: 15.14.0 148 | typescript: 149 | specifier: ^5.7.3 150 | version: 5.7.3 151 | typescript-eslint: 152 | specifier: ^8.23.0 153 | version: 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3) 154 | 155 | packages/theme: 156 | dependencies: 157 | tailwindcss: 158 | specifier: ^4.0.6 159 | version: 4.0.6 160 | 161 | packages/typescript-config: {} 162 | 163 | packages/ui: 164 | dependencies: 165 | '@radix-ui/react-slot': 166 | specifier: ^1.1.2 167 | version: 1.1.2(@types/react@19.0.8)(react@19.0.0) 168 | class-variance-authority: 169 | specifier: ^0.7.1 170 | version: 0.7.1 171 | clsx: 172 | specifier: ^2.1.1 173 | version: 2.1.1 174 | react: 175 | specifier: ^19.0.0 176 | version: 19.0.0 177 | react-dom: 178 | specifier: ^19.0.0 179 | version: 19.0.0(react@19.0.0) 180 | tailwind-merge: 181 | specifier: ^3.0.1 182 | version: 3.0.1 183 | tailwindcss: 184 | specifier: ^4.0.6 185 | version: 4.0.6 186 | tailwindcss-animate: 187 | specifier: ^1.0.7 188 | version: 1.0.7(tailwindcss@4.0.6) 189 | devDependencies: 190 | '@repo/eslint-config': 191 | specifier: workspace:* 192 | version: link:../eslint-config 193 | '@repo/typescript-config': 194 | specifier: workspace:* 195 | version: link:../typescript-config 196 | '@types/node': 197 | specifier: ^22.13.0 198 | version: 22.13.0 199 | '@types/react': 200 | specifier: 19.0.8 201 | version: 19.0.8 202 | '@types/react-dom': 203 | specifier: 19.0.3 204 | version: 19.0.3(@types/react@19.0.8) 205 | eslint: 206 | specifier: ^9.20.0 207 | version: 9.20.0(jiti@2.4.2) 208 | typescript: 209 | specifier: 5.7.3 210 | version: 5.7.3 211 | 212 | packages: 213 | 214 | '@alloc/quick-lru@5.2.0': 215 | resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} 216 | engines: {node: '>=10'} 217 | 218 | '@emnapi/runtime@1.3.1': 219 | resolution: {integrity: sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==} 220 | 221 | '@eslint-community/eslint-utils@4.4.1': 222 | resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==} 223 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 224 | peerDependencies: 225 | eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 226 | 227 | '@eslint-community/regexpp@4.12.1': 228 | resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} 229 | engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} 230 | 231 | '@eslint/config-array@0.19.2': 232 | resolution: {integrity: sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==} 233 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 234 | 235 | '@eslint/core@0.10.0': 236 | resolution: {integrity: sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==} 237 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 238 | 239 | '@eslint/core@0.11.0': 240 | resolution: {integrity: sha512-DWUB2pksgNEb6Bz2fggIy1wh6fGgZP4Xyy/Mt0QZPiloKKXerbqq9D3SBQTlCRYOrcRPu4vuz+CGjwdfqxnoWA==} 241 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 242 | 243 | '@eslint/eslintrc@3.2.0': 244 | resolution: {integrity: sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==} 245 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 246 | 247 | '@eslint/js@9.20.0': 248 | resolution: {integrity: sha512-iZA07H9io9Wn836aVTytRaNqh00Sad+EamwOVJT12GTLw1VGMFV/4JaME+JjLtr9fiGaoWgYnS54wrfWsSs4oQ==} 249 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 250 | 251 | '@eslint/object-schema@2.1.6': 252 | resolution: {integrity: sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==} 253 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 254 | 255 | '@eslint/plugin-kit@0.2.5': 256 | resolution: {integrity: sha512-lB05FkqEdUg2AA0xEbUz0SnkXT1LcCTa438W4IWTUh4hdOnVbQyOJ81OrDXsJk/LSiJHubgGEFoR5EHq1NsH1A==} 257 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 258 | 259 | '@humanfs/core@0.19.1': 260 | resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} 261 | engines: {node: '>=18.18.0'} 262 | 263 | '@humanfs/node@0.16.6': 264 | resolution: {integrity: sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==} 265 | engines: {node: '>=18.18.0'} 266 | 267 | '@humanwhocodes/module-importer@1.0.1': 268 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} 269 | engines: {node: '>=12.22'} 270 | 271 | '@humanwhocodes/retry@0.3.1': 272 | resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} 273 | engines: {node: '>=18.18'} 274 | 275 | '@humanwhocodes/retry@0.4.1': 276 | resolution: {integrity: sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==} 277 | engines: {node: '>=18.18'} 278 | 279 | '@img/sharp-darwin-arm64@0.33.5': 280 | resolution: {integrity: sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==} 281 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 282 | cpu: [arm64] 283 | os: [darwin] 284 | 285 | '@img/sharp-darwin-x64@0.33.5': 286 | resolution: {integrity: sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==} 287 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 288 | cpu: [x64] 289 | os: [darwin] 290 | 291 | '@img/sharp-libvips-darwin-arm64@1.0.4': 292 | resolution: {integrity: sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==} 293 | cpu: [arm64] 294 | os: [darwin] 295 | 296 | '@img/sharp-libvips-darwin-x64@1.0.4': 297 | resolution: {integrity: sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==} 298 | cpu: [x64] 299 | os: [darwin] 300 | 301 | '@img/sharp-libvips-linux-arm64@1.0.4': 302 | resolution: {integrity: sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==} 303 | cpu: [arm64] 304 | os: [linux] 305 | 306 | '@img/sharp-libvips-linux-arm@1.0.5': 307 | resolution: {integrity: sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g==} 308 | cpu: [arm] 309 | os: [linux] 310 | 311 | '@img/sharp-libvips-linux-s390x@1.0.4': 312 | resolution: {integrity: sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA==} 313 | cpu: [s390x] 314 | os: [linux] 315 | 316 | '@img/sharp-libvips-linux-x64@1.0.4': 317 | resolution: {integrity: sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw==} 318 | cpu: [x64] 319 | os: [linux] 320 | 321 | '@img/sharp-libvips-linuxmusl-arm64@1.0.4': 322 | resolution: {integrity: sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==} 323 | cpu: [arm64] 324 | os: [linux] 325 | 326 | '@img/sharp-libvips-linuxmusl-x64@1.0.4': 327 | resolution: {integrity: sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw==} 328 | cpu: [x64] 329 | os: [linux] 330 | 331 | '@img/sharp-linux-arm64@0.33.5': 332 | resolution: {integrity: sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==} 333 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 334 | cpu: [arm64] 335 | os: [linux] 336 | 337 | '@img/sharp-linux-arm@0.33.5': 338 | resolution: {integrity: sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ==} 339 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 340 | cpu: [arm] 341 | os: [linux] 342 | 343 | '@img/sharp-linux-s390x@0.33.5': 344 | resolution: {integrity: sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q==} 345 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 346 | cpu: [s390x] 347 | os: [linux] 348 | 349 | '@img/sharp-linux-x64@0.33.5': 350 | resolution: {integrity: sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA==} 351 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 352 | cpu: [x64] 353 | os: [linux] 354 | 355 | '@img/sharp-linuxmusl-arm64@0.33.5': 356 | resolution: {integrity: sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g==} 357 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 358 | cpu: [arm64] 359 | os: [linux] 360 | 361 | '@img/sharp-linuxmusl-x64@0.33.5': 362 | resolution: {integrity: sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw==} 363 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 364 | cpu: [x64] 365 | os: [linux] 366 | 367 | '@img/sharp-wasm32@0.33.5': 368 | resolution: {integrity: sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg==} 369 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 370 | cpu: [wasm32] 371 | 372 | '@img/sharp-win32-ia32@0.33.5': 373 | resolution: {integrity: sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ==} 374 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 375 | cpu: [ia32] 376 | os: [win32] 377 | 378 | '@img/sharp-win32-x64@0.33.5': 379 | resolution: {integrity: sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==} 380 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 381 | cpu: [x64] 382 | os: [win32] 383 | 384 | '@next/env@15.2.0-canary.63': 385 | resolution: {integrity: sha512-RtwfK4Q/Ro/Azx1zbEQm4r5arc9XjnDlzAgtqwn5f6kWLv830T82eSYvdHgPsbaekp/REGaUTSPrcr2neSE9tQ==} 386 | 387 | '@next/eslint-plugin-next@15.1.6': 388 | resolution: {integrity: sha512-+slMxhTgILUntZDGNgsKEYHUvpn72WP1YTlkmEhS51vnVd7S9jEEy0n9YAMcI21vUG4akTw9voWH02lrClt/yw==} 389 | 390 | '@next/swc-darwin-arm64@15.2.0-canary.63': 391 | resolution: {integrity: sha512-GEM1OxC7Bv9WLz6r32MN07legKsJXG1nXDx/muD1y/EDYQ3BQcUE+LLq6Pm2rA5W0wPNhsO5L9mKEHRjKGsDfg==} 392 | engines: {node: '>= 10'} 393 | cpu: [arm64] 394 | os: [darwin] 395 | 396 | '@next/swc-darwin-x64@15.2.0-canary.63': 397 | resolution: {integrity: sha512-BFdn6Oi+yh4Wv88DGYdTiuADVlTUPO8VP3L7n3Vk8UP5ZJVJ/TMD9hkwNdHJiLVyAcHUTnUAHJTim4eYjtWLbg==} 398 | engines: {node: '>= 10'} 399 | cpu: [x64] 400 | os: [darwin] 401 | 402 | '@next/swc-linux-arm64-gnu@15.2.0-canary.63': 403 | resolution: {integrity: sha512-V4wnW5xkaO9DNyTdCvyJ+xs702s5OIbyk1CtdGYqDSJmp/WmIMW5q5CQv5Pm20PxoSdYq3GEb32+aievwkn32g==} 404 | engines: {node: '>= 10'} 405 | cpu: [arm64] 406 | os: [linux] 407 | 408 | '@next/swc-linux-arm64-musl@15.2.0-canary.63': 409 | resolution: {integrity: sha512-Lae1i26H0DSJy9rF8kQIICPOG0oeSrZ/5I9b/D+js6k9fBl+mTauD09o1yh+SxS7qd8rUWiiWu+bMAtfl5wbvw==} 410 | engines: {node: '>= 10'} 411 | cpu: [arm64] 412 | os: [linux] 413 | 414 | '@next/swc-linux-x64-gnu@15.2.0-canary.63': 415 | resolution: {integrity: sha512-um92NoxZetPfaLMekvgVFHx5kS6XAseik+zFaOfqTYHK99ncn+iBn+tF5MgyzmtjhAzPHWUTtfim5SSOUbEI7w==} 416 | engines: {node: '>= 10'} 417 | cpu: [x64] 418 | os: [linux] 419 | 420 | '@next/swc-linux-x64-musl@15.2.0-canary.63': 421 | resolution: {integrity: sha512-8Ba3JYNU4CKyGfQ/WNICY51OGY951H+RLNdy5gJgSmusc25NYeOizwmQ3wAtQeWbgyaRFANvvECYeR03DwGP9w==} 422 | engines: {node: '>= 10'} 423 | cpu: [x64] 424 | os: [linux] 425 | 426 | '@next/swc-win32-arm64-msvc@15.2.0-canary.63': 427 | resolution: {integrity: sha512-iDqABo8AjqwgTLUZrhI8x9eHsfMRUJ0EAeiGwLHC3wC9NsnzYprTQ0NHc3UXy9iVTnp2WuytjIDIGeYHVnaXXQ==} 428 | engines: {node: '>= 10'} 429 | cpu: [arm64] 430 | os: [win32] 431 | 432 | '@next/swc-win32-x64-msvc@15.2.0-canary.63': 433 | resolution: {integrity: sha512-Sdk2vvrcOi7FAnwxJh4lr9XNojvrh7ozibm6dMDfDfJLo4hAN51fngMgN0kvITQ79H6Z5KHLOoQRghjo71P5hg==} 434 | engines: {node: '>= 10'} 435 | cpu: [x64] 436 | os: [win32] 437 | 438 | '@nodelib/fs.scandir@2.1.5': 439 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 440 | engines: {node: '>= 8'} 441 | 442 | '@nodelib/fs.stat@2.0.5': 443 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 444 | engines: {node: '>= 8'} 445 | 446 | '@nodelib/fs.walk@1.2.8': 447 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 448 | engines: {node: '>= 8'} 449 | 450 | '@radix-ui/react-compose-refs@1.1.1': 451 | resolution: {integrity: sha512-Y9VzoRDSJtgFMUCoiZBDVo084VQ5hfpXxVE+NgkdNsjiDBByiImMZKKhxMwCbdHvhlENG6a833CbFkOQvTricw==} 452 | peerDependencies: 453 | '@types/react': '*' 454 | react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc 455 | peerDependenciesMeta: 456 | '@types/react': 457 | optional: true 458 | 459 | '@radix-ui/react-slot@1.1.2': 460 | resolution: {integrity: sha512-YAKxaiGsSQJ38VzKH86/BPRC4rh+b1Jpa+JneA5LRE7skmLPNAyeG8kPJj/oo4STLvlrs8vkf/iYyc3A5stYCQ==} 461 | peerDependencies: 462 | '@types/react': '*' 463 | react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc 464 | peerDependenciesMeta: 465 | '@types/react': 466 | optional: true 467 | 468 | '@swc/counter@0.1.3': 469 | resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==} 470 | 471 | '@swc/helpers@0.5.15': 472 | resolution: {integrity: sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==} 473 | 474 | '@tailwindcss/node@4.0.6': 475 | resolution: {integrity: sha512-jb6E0WeSq7OQbVYcIJ6LxnZTeC4HjMvbzFBMCrQff4R50HBlo/obmYNk6V2GCUXDeqiXtvtrQgcIbT+/boB03Q==} 476 | 477 | '@tailwindcss/oxide-android-arm64@4.0.6': 478 | resolution: {integrity: sha512-xDbym6bDPW3D2XqQqX3PjqW3CKGe1KXH7Fdkc60sX5ZLVUbzPkFeunQaoP+BuYlLc2cC1FoClrIRYnRzof9Sow==} 479 | engines: {node: '>= 10'} 480 | cpu: [arm64] 481 | os: [android] 482 | 483 | '@tailwindcss/oxide-darwin-arm64@4.0.6': 484 | resolution: {integrity: sha512-1f71/ju/tvyGl5c2bDkchZHy8p8EK/tDHCxlpYJ1hGNvsYihZNurxVpZ0DefpN7cNc9RTT8DjrRoV8xXZKKRjg==} 485 | engines: {node: '>= 10'} 486 | cpu: [arm64] 487 | os: [darwin] 488 | 489 | '@tailwindcss/oxide-darwin-x64@4.0.6': 490 | resolution: {integrity: sha512-s/hg/ZPgxFIrGMb0kqyeaqZt505P891buUkSezmrDY6lxv2ixIELAlOcUVTkVh245SeaeEiUVUPiUN37cwoL2g==} 491 | engines: {node: '>= 10'} 492 | cpu: [x64] 493 | os: [darwin] 494 | 495 | '@tailwindcss/oxide-freebsd-x64@4.0.6': 496 | resolution: {integrity: sha512-Z3Wo8FWZnmio8+xlcbb7JUo/hqRMSmhQw8IGIRoRJ7GmLR0C+25Wq+bEX/135xe/yEle2lFkhu9JBHd4wZYiig==} 497 | engines: {node: '>= 10'} 498 | cpu: [x64] 499 | os: [freebsd] 500 | 501 | '@tailwindcss/oxide-linux-arm-gnueabihf@4.0.6': 502 | resolution: {integrity: sha512-SNSwkkim1myAgmnbHs4EjXsPL7rQbVGtjcok5EaIzkHkCAVK9QBQsWeP2Jm2/JJhq4wdx8tZB9Y7psMzHYWCkA==} 503 | engines: {node: '>= 10'} 504 | cpu: [arm] 505 | os: [linux] 506 | 507 | '@tailwindcss/oxide-linux-arm64-gnu@4.0.6': 508 | resolution: {integrity: sha512-tJ+mevtSDMQhKlwCCuhsFEFg058kBiSy4TkoeBG921EfrHKmexOaCyFKYhVXy4JtkaeeOcjJnCLasEeqml4i+Q==} 509 | engines: {node: '>= 10'} 510 | cpu: [arm64] 511 | os: [linux] 512 | 513 | '@tailwindcss/oxide-linux-arm64-musl@4.0.6': 514 | resolution: {integrity: sha512-IoArz1vfuTR4rALXMUXI/GWWfx2EaO4gFNtBNkDNOYhlTD4NVEwE45nbBoojYiTulajI4c2XH8UmVEVJTOJKxA==} 515 | engines: {node: '>= 10'} 516 | cpu: [arm64] 517 | os: [linux] 518 | 519 | '@tailwindcss/oxide-linux-x64-gnu@4.0.6': 520 | resolution: {integrity: sha512-QtsUfLkEAeWAC3Owx9Kg+7JdzE+k9drPhwTAXbXugYB9RZUnEWWx5x3q/au6TvUYcL+n0RBqDEO2gucZRvRFgQ==} 521 | engines: {node: '>= 10'} 522 | cpu: [x64] 523 | os: [linux] 524 | 525 | '@tailwindcss/oxide-linux-x64-musl@4.0.6': 526 | resolution: {integrity: sha512-QthvJqIji2KlGNwLcK/PPYo7w1Wsi/8NK0wAtRGbv4eOPdZHkQ9KUk+oCoP20oPO7i2a6X1aBAFQEL7i08nNMA==} 527 | engines: {node: '>= 10'} 528 | cpu: [x64] 529 | os: [linux] 530 | 531 | '@tailwindcss/oxide-win32-arm64-msvc@4.0.6': 532 | resolution: {integrity: sha512-+oka+dYX8jy9iP00DJ9Y100XsqvbqR5s0yfMZJuPR1H/lDVtDfsZiSix1UFBQ3X1HWxoEEl6iXNJHWd56TocVw==} 533 | engines: {node: '>= 10'} 534 | cpu: [arm64] 535 | os: [win32] 536 | 537 | '@tailwindcss/oxide-win32-x64-msvc@4.0.6': 538 | resolution: {integrity: sha512-+o+juAkik4p8Ue/0LiflQXPmVatl6Av3LEZXpBTfg4qkMIbZdhCGWFzHdt2NjoMiLOJCFDddoV6GYaimvK1Olw==} 539 | engines: {node: '>= 10'} 540 | cpu: [x64] 541 | os: [win32] 542 | 543 | '@tailwindcss/oxide@4.0.6': 544 | resolution: {integrity: sha512-lVyKV2y58UE9CeKVcYykULe9QaE1dtKdxDEdrTPIdbzRgBk6bdxHNAoDqvcqXbIGXubn3VOl1O/CFF77v/EqSA==} 545 | engines: {node: '>= 10'} 546 | 547 | '@tailwindcss/postcss@4.0.6': 548 | resolution: {integrity: sha512-noTaGPHjGCXTCc487TWnfAEN0VMjqDAecssWDOsfxV2hFrcZR0AHthX7IdY/0xHTg/EtpmIPdssddlZ5/B7JnQ==} 549 | 550 | '@types/estree@1.0.6': 551 | resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} 552 | 553 | '@types/json-schema@7.0.15': 554 | resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} 555 | 556 | '@types/node@22.13.0': 557 | resolution: {integrity: sha512-ClIbNe36lawluuvq3+YYhnIN2CELi+6q8NpnM7PYp4hBn/TatfboPgVSm2rwKRfnV2M+Ty9GWDFI64KEe+kysA==} 558 | 559 | '@types/react-dom@19.0.3': 560 | resolution: {integrity: sha512-0Knk+HJiMP/qOZgMyNFamlIjw9OFCsyC2ZbigmEEyXXixgre6IQpm/4V+r3qH4GC1JPvRJKInw+on2rV6YZLeA==} 561 | peerDependencies: 562 | '@types/react': ^19.0.0 563 | 564 | '@types/react@19.0.8': 565 | resolution: {integrity: sha512-9P/o1IGdfmQxrujGbIMDyYaaCykhLKc0NGCtYcECNUr9UAaDe4gwvV9bR6tvd5Br1SG0j+PBpbKr2UYY8CwqSw==} 566 | 567 | '@typescript-eslint/eslint-plugin@8.23.0': 568 | resolution: {integrity: sha512-vBz65tJgRrA1Q5gWlRfvoH+w943dq9K1p1yDBY2pc+a1nbBLZp7fB9+Hk8DaALUbzjqlMfgaqlVPT1REJdkt/w==} 569 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 570 | peerDependencies: 571 | '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 572 | eslint: ^8.57.0 || ^9.0.0 573 | typescript: '>=4.8.4 <5.8.0' 574 | 575 | '@typescript-eslint/parser@8.23.0': 576 | resolution: {integrity: sha512-h2lUByouOXFAlMec2mILeELUbME5SZRN/7R9Cw2RD2lRQQY08MWMM+PmVVKKJNK1aIwqTo9t/0CvOxwPbRIE2Q==} 577 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 578 | peerDependencies: 579 | eslint: ^8.57.0 || ^9.0.0 580 | typescript: '>=4.8.4 <5.8.0' 581 | 582 | '@typescript-eslint/scope-manager@8.23.0': 583 | resolution: {integrity: sha512-OGqo7+dXHqI7Hfm+WqkZjKjsiRtFUQHPdGMXzk5mYXhJUedO7e/Y7i8AK3MyLMgZR93TX4bIzYrfyVjLC+0VSw==} 584 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 585 | 586 | '@typescript-eslint/type-utils@8.23.0': 587 | resolution: {integrity: sha512-iIuLdYpQWZKbiH+RkCGc6iu+VwscP5rCtQ1lyQ7TYuKLrcZoeJVpcLiG8DliXVkUxirW/PWlmS+d6yD51L9jvA==} 588 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 589 | peerDependencies: 590 | eslint: ^8.57.0 || ^9.0.0 591 | typescript: '>=4.8.4 <5.8.0' 592 | 593 | '@typescript-eslint/types@8.23.0': 594 | resolution: {integrity: sha512-1sK4ILJbCmZOTt9k4vkoulT6/y5CHJ1qUYxqpF1K/DBAd8+ZUL4LlSCxOssuH5m4rUaaN0uS0HlVPvd45zjduQ==} 595 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 596 | 597 | '@typescript-eslint/typescript-estree@8.23.0': 598 | resolution: {integrity: sha512-LcqzfipsB8RTvH8FX24W4UUFk1bl+0yTOf9ZA08XngFwMg4Kj8A+9hwz8Cr/ZS4KwHrmo9PJiLZkOt49vPnuvQ==} 599 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 600 | peerDependencies: 601 | typescript: '>=4.8.4 <5.8.0' 602 | 603 | '@typescript-eslint/utils@8.23.0': 604 | resolution: {integrity: sha512-uB/+PSo6Exu02b5ZEiVtmY6RVYO7YU5xqgzTIVZwTHvvK3HsL8tZZHFaTLFtRG3CsV4A5mhOv+NZx5BlhXPyIA==} 605 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 606 | peerDependencies: 607 | eslint: ^8.57.0 || ^9.0.0 608 | typescript: '>=4.8.4 <5.8.0' 609 | 610 | '@typescript-eslint/visitor-keys@8.23.0': 611 | resolution: {integrity: sha512-oWWhcWDLwDfu++BGTZcmXWqpwtkwb5o7fxUIGksMQQDSdPW9prsSnfIOZMlsj4vBOSrcnjIUZMiIjODgGosFhQ==} 612 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 613 | 614 | acorn-jsx@5.3.2: 615 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} 616 | peerDependencies: 617 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 618 | 619 | acorn@8.14.0: 620 | resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==} 621 | engines: {node: '>=0.4.0'} 622 | 623 | ajv@6.12.6: 624 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 625 | 626 | ansi-styles@4.3.0: 627 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 628 | engines: {node: '>=8'} 629 | 630 | argparse@2.0.1: 631 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} 632 | 633 | array-buffer-byte-length@1.0.2: 634 | resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==} 635 | engines: {node: '>= 0.4'} 636 | 637 | array-includes@3.1.8: 638 | resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==} 639 | engines: {node: '>= 0.4'} 640 | 641 | array.prototype.findlast@1.2.5: 642 | resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} 643 | engines: {node: '>= 0.4'} 644 | 645 | array.prototype.flat@1.3.3: 646 | resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==} 647 | engines: {node: '>= 0.4'} 648 | 649 | array.prototype.flatmap@1.3.3: 650 | resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==} 651 | engines: {node: '>= 0.4'} 652 | 653 | array.prototype.tosorted@1.1.4: 654 | resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} 655 | engines: {node: '>= 0.4'} 656 | 657 | arraybuffer.prototype.slice@1.0.4: 658 | resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} 659 | engines: {node: '>= 0.4'} 660 | 661 | async-function@1.0.0: 662 | resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==} 663 | engines: {node: '>= 0.4'} 664 | 665 | available-typed-arrays@1.0.7: 666 | resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} 667 | engines: {node: '>= 0.4'} 668 | 669 | balanced-match@1.0.2: 670 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 671 | 672 | brace-expansion@1.1.11: 673 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 674 | 675 | brace-expansion@2.0.1: 676 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} 677 | 678 | braces@3.0.3: 679 | resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} 680 | engines: {node: '>=8'} 681 | 682 | busboy@1.6.0: 683 | resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} 684 | engines: {node: '>=10.16.0'} 685 | 686 | call-bind-apply-helpers@1.0.1: 687 | resolution: {integrity: sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==} 688 | engines: {node: '>= 0.4'} 689 | 690 | call-bind@1.0.8: 691 | resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} 692 | engines: {node: '>= 0.4'} 693 | 694 | call-bound@1.0.3: 695 | resolution: {integrity: sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==} 696 | engines: {node: '>= 0.4'} 697 | 698 | callsites@3.1.0: 699 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 700 | engines: {node: '>=6'} 701 | 702 | caniuse-lite@1.0.30001700: 703 | resolution: {integrity: sha512-2S6XIXwaE7K7erT8dY+kLQcpa5ms63XlRkMkReXjle+kf6c5g38vyMl+Z5y8dSxOFDhcFe+nxnn261PLxBSQsQ==} 704 | 705 | chalk@4.1.2: 706 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 707 | engines: {node: '>=10'} 708 | 709 | class-variance-authority@0.7.1: 710 | resolution: {integrity: sha512-Ka+9Trutv7G8M6WT6SeiRWz792K5qEqIGEGzXKhAE6xOWAY6pPH8U+9IY3oCMv6kqTmLsv7Xh/2w2RigkePMsg==} 711 | 712 | client-only@0.0.1: 713 | resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} 714 | 715 | clsx@2.1.1: 716 | resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} 717 | engines: {node: '>=6'} 718 | 719 | color-convert@2.0.1: 720 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 721 | engines: {node: '>=7.0.0'} 722 | 723 | color-name@1.1.4: 724 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 725 | 726 | color-string@1.9.1: 727 | resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} 728 | 729 | color@4.2.3: 730 | resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} 731 | engines: {node: '>=12.5.0'} 732 | 733 | concat-map@0.0.1: 734 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 735 | 736 | cross-spawn@7.0.6: 737 | resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} 738 | engines: {node: '>= 8'} 739 | 740 | csstype@3.1.3: 741 | resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} 742 | 743 | data-view-buffer@1.0.2: 744 | resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==} 745 | engines: {node: '>= 0.4'} 746 | 747 | data-view-byte-length@1.0.2: 748 | resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==} 749 | engines: {node: '>= 0.4'} 750 | 751 | data-view-byte-offset@1.0.1: 752 | resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==} 753 | engines: {node: '>= 0.4'} 754 | 755 | debug@4.4.0: 756 | resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} 757 | engines: {node: '>=6.0'} 758 | peerDependencies: 759 | supports-color: '*' 760 | peerDependenciesMeta: 761 | supports-color: 762 | optional: true 763 | 764 | deep-is@0.1.4: 765 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} 766 | 767 | define-data-property@1.1.4: 768 | resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} 769 | engines: {node: '>= 0.4'} 770 | 771 | define-properties@1.2.1: 772 | resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} 773 | engines: {node: '>= 0.4'} 774 | 775 | detect-libc@1.0.3: 776 | resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==} 777 | engines: {node: '>=0.10'} 778 | hasBin: true 779 | 780 | detect-libc@2.0.3: 781 | resolution: {integrity: sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==} 782 | engines: {node: '>=8'} 783 | 784 | doctrine@2.1.0: 785 | resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} 786 | engines: {node: '>=0.10.0'} 787 | 788 | dotenv@16.0.3: 789 | resolution: {integrity: sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==} 790 | engines: {node: '>=12'} 791 | 792 | dunder-proto@1.0.1: 793 | resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} 794 | engines: {node: '>= 0.4'} 795 | 796 | enhanced-resolve@5.18.1: 797 | resolution: {integrity: sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==} 798 | engines: {node: '>=10.13.0'} 799 | 800 | es-abstract@1.23.9: 801 | resolution: {integrity: sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA==} 802 | engines: {node: '>= 0.4'} 803 | 804 | es-define-property@1.0.1: 805 | resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} 806 | engines: {node: '>= 0.4'} 807 | 808 | es-errors@1.3.0: 809 | resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} 810 | engines: {node: '>= 0.4'} 811 | 812 | es-iterator-helpers@1.2.1: 813 | resolution: {integrity: sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==} 814 | engines: {node: '>= 0.4'} 815 | 816 | es-object-atoms@1.1.1: 817 | resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} 818 | engines: {node: '>= 0.4'} 819 | 820 | es-set-tostringtag@2.1.0: 821 | resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} 822 | engines: {node: '>= 0.4'} 823 | 824 | es-shim-unscopables@1.0.2: 825 | resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} 826 | 827 | es-to-primitive@1.3.0: 828 | resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} 829 | engines: {node: '>= 0.4'} 830 | 831 | escape-string-regexp@4.0.0: 832 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} 833 | engines: {node: '>=10'} 834 | 835 | eslint-config-prettier@10.0.1: 836 | resolution: {integrity: sha512-lZBts941cyJyeaooiKxAtzoPHTN+GbQTJFAIdQbRhA4/8whaAraEh47Whw/ZFfrjNSnlAxqfm9i0XVAEkULjCw==} 837 | hasBin: true 838 | peerDependencies: 839 | eslint: '>=7.0.0' 840 | 841 | eslint-plugin-only-warn@1.1.0: 842 | resolution: {integrity: sha512-2tktqUAT+Q3hCAU0iSf4xAN1k9zOpjK5WO8104mB0rT/dGhOa09582HN5HlbxNbPRZ0THV7nLGvzugcNOSjzfA==} 843 | engines: {node: '>=6'} 844 | 845 | eslint-plugin-react-hooks@5.1.0: 846 | resolution: {integrity: sha512-mpJRtPgHN2tNAvZ35AMfqeB3Xqeo273QxrHJsbBEPWODRM4r0yB6jfoROqKEYrOn27UtRPpcpHc2UqyBSuUNTw==} 847 | engines: {node: '>=10'} 848 | peerDependencies: 849 | eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 850 | 851 | eslint-plugin-react@7.37.4: 852 | resolution: {integrity: sha512-BGP0jRmfYyvOyvMoRX/uoUeW+GqNj9y16bPQzqAHf3AYII/tDs+jMN0dBVkl88/OZwNGwrVFxE7riHsXVfy/LQ==} 853 | engines: {node: '>=4'} 854 | peerDependencies: 855 | eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 856 | 857 | eslint-plugin-turbo@2.4.0: 858 | resolution: {integrity: sha512-qCgoRi/OTc1VMxab7+sdKiV1xlkY4qjK9sM+kS7+WogrB1DxLguJSQXvk4HA13SD5VmJsq+8FYOw5q4EUk6Ixg==} 859 | peerDependencies: 860 | eslint: '>6.6.0' 861 | turbo: '>2.0.0' 862 | 863 | eslint-scope@8.2.0: 864 | resolution: {integrity: sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==} 865 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 866 | 867 | eslint-visitor-keys@3.4.3: 868 | resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} 869 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 870 | 871 | eslint-visitor-keys@4.2.0: 872 | resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} 873 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 874 | 875 | eslint@9.20.0: 876 | resolution: {integrity: sha512-aL4F8167Hg4IvsW89ejnpTwx+B/UQRzJPGgbIOl+4XqffWsahVVsLEWoZvnrVuwpWmnRd7XeXmQI1zlKcFDteA==} 877 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 878 | hasBin: true 879 | peerDependencies: 880 | jiti: '*' 881 | peerDependenciesMeta: 882 | jiti: 883 | optional: true 884 | 885 | espree@10.3.0: 886 | resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==} 887 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 888 | 889 | esquery@1.6.0: 890 | resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} 891 | engines: {node: '>=0.10'} 892 | 893 | esrecurse@4.3.0: 894 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} 895 | engines: {node: '>=4.0'} 896 | 897 | estraverse@5.3.0: 898 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} 899 | engines: {node: '>=4.0'} 900 | 901 | esutils@2.0.3: 902 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 903 | engines: {node: '>=0.10.0'} 904 | 905 | fast-deep-equal@3.1.3: 906 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 907 | 908 | fast-glob@3.3.1: 909 | resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==} 910 | engines: {node: '>=8.6.0'} 911 | 912 | fast-glob@3.3.3: 913 | resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} 914 | engines: {node: '>=8.6.0'} 915 | 916 | fast-json-stable-stringify@2.1.0: 917 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 918 | 919 | fast-levenshtein@2.0.6: 920 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} 921 | 922 | fastq@1.18.0: 923 | resolution: {integrity: sha512-QKHXPW0hD8g4UET03SdOdunzSouc9N4AuHdsX8XNcTsuz+yYFILVNIX4l9yHABMhiEI9Db0JTTIpu0wB+Y1QQw==} 924 | 925 | file-entry-cache@8.0.0: 926 | resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} 927 | engines: {node: '>=16.0.0'} 928 | 929 | fill-range@7.1.1: 930 | resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} 931 | engines: {node: '>=8'} 932 | 933 | find-up@5.0.0: 934 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 935 | engines: {node: '>=10'} 936 | 937 | flat-cache@4.0.1: 938 | resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} 939 | engines: {node: '>=16'} 940 | 941 | flatted@3.3.2: 942 | resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==} 943 | 944 | for-each@0.3.3: 945 | resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} 946 | 947 | function-bind@1.1.2: 948 | resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} 949 | 950 | function.prototype.name@1.1.8: 951 | resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==} 952 | engines: {node: '>= 0.4'} 953 | 954 | functions-have-names@1.2.3: 955 | resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} 956 | 957 | get-intrinsic@1.2.7: 958 | resolution: {integrity: sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==} 959 | engines: {node: '>= 0.4'} 960 | 961 | get-proto@1.0.1: 962 | resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} 963 | engines: {node: '>= 0.4'} 964 | 965 | get-symbol-description@1.1.0: 966 | resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} 967 | engines: {node: '>= 0.4'} 968 | 969 | glob-parent@5.1.2: 970 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 971 | engines: {node: '>= 6'} 972 | 973 | glob-parent@6.0.2: 974 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 975 | engines: {node: '>=10.13.0'} 976 | 977 | globals@14.0.0: 978 | resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} 979 | engines: {node: '>=18'} 980 | 981 | globals@15.14.0: 982 | resolution: {integrity: sha512-OkToC372DtlQeje9/zHIo5CT8lRP/FUgEOKBEhU4e0abL7J7CD24fD9ohiLN5hagG/kWCYj4K5oaxxtj2Z0Dig==} 983 | engines: {node: '>=18'} 984 | 985 | globalthis@1.0.4: 986 | resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} 987 | engines: {node: '>= 0.4'} 988 | 989 | gopd@1.2.0: 990 | resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} 991 | engines: {node: '>= 0.4'} 992 | 993 | graceful-fs@4.2.11: 994 | resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} 995 | 996 | graphemer@1.4.0: 997 | resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} 998 | 999 | has-bigints@1.1.0: 1000 | resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==} 1001 | engines: {node: '>= 0.4'} 1002 | 1003 | has-flag@4.0.0: 1004 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 1005 | engines: {node: '>=8'} 1006 | 1007 | has-property-descriptors@1.0.2: 1008 | resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} 1009 | 1010 | has-proto@1.2.0: 1011 | resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} 1012 | engines: {node: '>= 0.4'} 1013 | 1014 | has-symbols@1.1.0: 1015 | resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} 1016 | engines: {node: '>= 0.4'} 1017 | 1018 | has-tostringtag@1.0.2: 1019 | resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} 1020 | engines: {node: '>= 0.4'} 1021 | 1022 | hasown@2.0.2: 1023 | resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} 1024 | engines: {node: '>= 0.4'} 1025 | 1026 | ignore@5.3.2: 1027 | resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} 1028 | engines: {node: '>= 4'} 1029 | 1030 | import-fresh@3.3.1: 1031 | resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} 1032 | engines: {node: '>=6'} 1033 | 1034 | imurmurhash@0.1.4: 1035 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} 1036 | engines: {node: '>=0.8.19'} 1037 | 1038 | internal-slot@1.1.0: 1039 | resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} 1040 | engines: {node: '>= 0.4'} 1041 | 1042 | is-array-buffer@3.0.5: 1043 | resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==} 1044 | engines: {node: '>= 0.4'} 1045 | 1046 | is-arrayish@0.3.2: 1047 | resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} 1048 | 1049 | is-async-function@2.1.1: 1050 | resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==} 1051 | engines: {node: '>= 0.4'} 1052 | 1053 | is-bigint@1.1.0: 1054 | resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} 1055 | engines: {node: '>= 0.4'} 1056 | 1057 | is-boolean-object@1.2.1: 1058 | resolution: {integrity: sha512-l9qO6eFlUETHtuihLcYOaLKByJ1f+N4kthcU9YjHy3N+B3hWv0y/2Nd0mu/7lTFnRQHTrSdXF50HQ3bl5fEnng==} 1059 | engines: {node: '>= 0.4'} 1060 | 1061 | is-callable@1.2.7: 1062 | resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} 1063 | engines: {node: '>= 0.4'} 1064 | 1065 | is-core-module@2.16.1: 1066 | resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} 1067 | engines: {node: '>= 0.4'} 1068 | 1069 | is-data-view@1.0.2: 1070 | resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} 1071 | engines: {node: '>= 0.4'} 1072 | 1073 | is-date-object@1.1.0: 1074 | resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} 1075 | engines: {node: '>= 0.4'} 1076 | 1077 | is-extglob@2.1.1: 1078 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 1079 | engines: {node: '>=0.10.0'} 1080 | 1081 | is-finalizationregistry@1.1.1: 1082 | resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==} 1083 | engines: {node: '>= 0.4'} 1084 | 1085 | is-generator-function@1.1.0: 1086 | resolution: {integrity: sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==} 1087 | engines: {node: '>= 0.4'} 1088 | 1089 | is-glob@4.0.3: 1090 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 1091 | engines: {node: '>=0.10.0'} 1092 | 1093 | is-map@2.0.3: 1094 | resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} 1095 | engines: {node: '>= 0.4'} 1096 | 1097 | is-number-object@1.1.1: 1098 | resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} 1099 | engines: {node: '>= 0.4'} 1100 | 1101 | is-number@7.0.0: 1102 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 1103 | engines: {node: '>=0.12.0'} 1104 | 1105 | is-regex@1.2.1: 1106 | resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} 1107 | engines: {node: '>= 0.4'} 1108 | 1109 | is-set@2.0.3: 1110 | resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} 1111 | engines: {node: '>= 0.4'} 1112 | 1113 | is-shared-array-buffer@1.0.4: 1114 | resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==} 1115 | engines: {node: '>= 0.4'} 1116 | 1117 | is-string@1.1.1: 1118 | resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} 1119 | engines: {node: '>= 0.4'} 1120 | 1121 | is-symbol@1.1.1: 1122 | resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} 1123 | engines: {node: '>= 0.4'} 1124 | 1125 | is-typed-array@1.1.15: 1126 | resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==} 1127 | engines: {node: '>= 0.4'} 1128 | 1129 | is-weakmap@2.0.2: 1130 | resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} 1131 | engines: {node: '>= 0.4'} 1132 | 1133 | is-weakref@1.1.0: 1134 | resolution: {integrity: sha512-SXM8Nwyys6nT5WP6pltOwKytLV7FqQ4UiibxVmW+EIosHcmCqkkjViTb5SNssDlkCiEYRP1/pdWUKVvZBmsR2Q==} 1135 | engines: {node: '>= 0.4'} 1136 | 1137 | is-weakset@2.0.4: 1138 | resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==} 1139 | engines: {node: '>= 0.4'} 1140 | 1141 | isarray@2.0.5: 1142 | resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} 1143 | 1144 | isexe@2.0.0: 1145 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 1146 | 1147 | iterator.prototype@1.1.5: 1148 | resolution: {integrity: sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==} 1149 | engines: {node: '>= 0.4'} 1150 | 1151 | jiti@2.4.2: 1152 | resolution: {integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==} 1153 | hasBin: true 1154 | 1155 | js-tokens@4.0.0: 1156 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 1157 | 1158 | js-yaml@4.1.0: 1159 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} 1160 | 1161 | json-buffer@3.0.1: 1162 | resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} 1163 | 1164 | json-schema-traverse@0.4.1: 1165 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 1166 | 1167 | json-stable-stringify-without-jsonify@1.0.1: 1168 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} 1169 | 1170 | jsx-ast-utils@3.3.5: 1171 | resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} 1172 | engines: {node: '>=4.0'} 1173 | 1174 | keyv@4.5.4: 1175 | resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} 1176 | 1177 | levn@0.4.1: 1178 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} 1179 | engines: {node: '>= 0.8.0'} 1180 | 1181 | lightningcss-darwin-arm64@1.29.1: 1182 | resolution: {integrity: sha512-HtR5XJ5A0lvCqYAoSv2QdZZyoHNttBpa5EP9aNuzBQeKGfbyH5+UipLWvVzpP4Uml5ej4BYs5I9Lco9u1fECqw==} 1183 | engines: {node: '>= 12.0.0'} 1184 | cpu: [arm64] 1185 | os: [darwin] 1186 | 1187 | lightningcss-darwin-x64@1.29.1: 1188 | resolution: {integrity: sha512-k33G9IzKUpHy/J/3+9MCO4e+PzaFblsgBjSGlpAaFikeBFm8B/CkO3cKU9oI4g+fjS2KlkLM/Bza9K/aw8wsNA==} 1189 | engines: {node: '>= 12.0.0'} 1190 | cpu: [x64] 1191 | os: [darwin] 1192 | 1193 | lightningcss-freebsd-x64@1.29.1: 1194 | resolution: {integrity: sha512-0SUW22fv/8kln2LnIdOCmSuXnxgxVC276W5KLTwoehiO0hxkacBxjHOL5EtHD8BAXg2BvuhsJPmVMasvby3LiQ==} 1195 | engines: {node: '>= 12.0.0'} 1196 | cpu: [x64] 1197 | os: [freebsd] 1198 | 1199 | lightningcss-linux-arm-gnueabihf@1.29.1: 1200 | resolution: {integrity: sha512-sD32pFvlR0kDlqsOZmYqH/68SqUMPNj+0pucGxToXZi4XZgZmqeX/NkxNKCPsswAXU3UeYgDSpGhu05eAufjDg==} 1201 | engines: {node: '>= 12.0.0'} 1202 | cpu: [arm] 1203 | os: [linux] 1204 | 1205 | lightningcss-linux-arm64-gnu@1.29.1: 1206 | resolution: {integrity: sha512-0+vClRIZ6mmJl/dxGuRsE197o1HDEeeRk6nzycSy2GofC2JsY4ifCRnvUWf/CUBQmlrvMzt6SMQNMSEu22csWQ==} 1207 | engines: {node: '>= 12.0.0'} 1208 | cpu: [arm64] 1209 | os: [linux] 1210 | 1211 | lightningcss-linux-arm64-musl@1.29.1: 1212 | resolution: {integrity: sha512-UKMFrG4rL/uHNgelBsDwJcBqVpzNJbzsKkbI3Ja5fg00sgQnHw/VrzUTEc4jhZ+AN2BvQYz/tkHu4vt1kLuJyw==} 1213 | engines: {node: '>= 12.0.0'} 1214 | cpu: [arm64] 1215 | os: [linux] 1216 | 1217 | lightningcss-linux-x64-gnu@1.29.1: 1218 | resolution: {integrity: sha512-u1S+xdODy/eEtjADqirA774y3jLcm8RPtYztwReEXoZKdzgsHYPl0s5V52Tst+GKzqjebkULT86XMSxejzfISw==} 1219 | engines: {node: '>= 12.0.0'} 1220 | cpu: [x64] 1221 | os: [linux] 1222 | 1223 | lightningcss-linux-x64-musl@1.29.1: 1224 | resolution: {integrity: sha512-L0Tx0DtaNUTzXv0lbGCLB/c/qEADanHbu4QdcNOXLIe1i8i22rZRpbT3gpWYsCh9aSL9zFujY/WmEXIatWvXbw==} 1225 | engines: {node: '>= 12.0.0'} 1226 | cpu: [x64] 1227 | os: [linux] 1228 | 1229 | lightningcss-win32-arm64-msvc@1.29.1: 1230 | resolution: {integrity: sha512-QoOVnkIEFfbW4xPi+dpdft/zAKmgLgsRHfJalEPYuJDOWf7cLQzYg0DEh8/sn737FaeMJxHZRc1oBreiwZCjog==} 1231 | engines: {node: '>= 12.0.0'} 1232 | cpu: [arm64] 1233 | os: [win32] 1234 | 1235 | lightningcss-win32-x64-msvc@1.29.1: 1236 | resolution: {integrity: sha512-NygcbThNBe4JElP+olyTI/doBNGJvLs3bFCRPdvuCcxZCcCZ71B858IHpdm7L1btZex0FvCmM17FK98Y9MRy1Q==} 1237 | engines: {node: '>= 12.0.0'} 1238 | cpu: [x64] 1239 | os: [win32] 1240 | 1241 | lightningcss@1.29.1: 1242 | resolution: {integrity: sha512-FmGoeD4S05ewj+AkhTY+D+myDvXI6eL27FjHIjoyUkO/uw7WZD1fBVs0QxeYWa7E17CUHJaYX/RUGISCtcrG4Q==} 1243 | engines: {node: '>= 12.0.0'} 1244 | 1245 | locate-path@6.0.0: 1246 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 1247 | engines: {node: '>=10'} 1248 | 1249 | lodash.merge@4.6.2: 1250 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 1251 | 1252 | loose-envify@1.4.0: 1253 | resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} 1254 | 1255 | math-intrinsics@1.1.0: 1256 | resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} 1257 | engines: {node: '>= 0.4'} 1258 | 1259 | merge2@1.4.1: 1260 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 1261 | engines: {node: '>= 8'} 1262 | 1263 | micromatch@4.0.8: 1264 | resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} 1265 | engines: {node: '>=8.6'} 1266 | 1267 | minimatch@3.1.2: 1268 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 1269 | 1270 | minimatch@9.0.5: 1271 | resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} 1272 | engines: {node: '>=16 || 14 >=14.17'} 1273 | 1274 | ms@2.1.3: 1275 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} 1276 | 1277 | nanoid@3.3.8: 1278 | resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} 1279 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 1280 | 1281 | natural-compare@1.4.0: 1282 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} 1283 | 1284 | next@15.2.0-canary.63: 1285 | resolution: {integrity: sha512-zg+1agjMps87e+DBe5KY7ytCBJWDUJeEsctFBh9e39+Z82G02MWSO7TNqAA/vvkUamcFxw5rWnlgQVvueShM6Q==} 1286 | engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0} 1287 | hasBin: true 1288 | peerDependencies: 1289 | '@opentelemetry/api': ^1.1.0 1290 | '@playwright/test': ^1.41.2 1291 | babel-plugin-react-compiler: '*' 1292 | react: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 1293 | react-dom: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0 1294 | sass: ^1.3.0 1295 | peerDependenciesMeta: 1296 | '@opentelemetry/api': 1297 | optional: true 1298 | '@playwright/test': 1299 | optional: true 1300 | babel-plugin-react-compiler: 1301 | optional: true 1302 | sass: 1303 | optional: true 1304 | 1305 | object-assign@4.1.1: 1306 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} 1307 | engines: {node: '>=0.10.0'} 1308 | 1309 | object-inspect@1.13.3: 1310 | resolution: {integrity: sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==} 1311 | engines: {node: '>= 0.4'} 1312 | 1313 | object-keys@1.1.1: 1314 | resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} 1315 | engines: {node: '>= 0.4'} 1316 | 1317 | object.assign@4.1.7: 1318 | resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==} 1319 | engines: {node: '>= 0.4'} 1320 | 1321 | object.entries@1.1.8: 1322 | resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==} 1323 | engines: {node: '>= 0.4'} 1324 | 1325 | object.fromentries@2.0.8: 1326 | resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} 1327 | engines: {node: '>= 0.4'} 1328 | 1329 | object.values@1.2.1: 1330 | resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==} 1331 | engines: {node: '>= 0.4'} 1332 | 1333 | optionator@0.9.4: 1334 | resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} 1335 | engines: {node: '>= 0.8.0'} 1336 | 1337 | own-keys@1.0.1: 1338 | resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==} 1339 | engines: {node: '>= 0.4'} 1340 | 1341 | p-limit@3.1.0: 1342 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 1343 | engines: {node: '>=10'} 1344 | 1345 | p-locate@5.0.0: 1346 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 1347 | engines: {node: '>=10'} 1348 | 1349 | parent-module@1.0.1: 1350 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 1351 | engines: {node: '>=6'} 1352 | 1353 | path-exists@4.0.0: 1354 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 1355 | engines: {node: '>=8'} 1356 | 1357 | path-key@3.1.1: 1358 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 1359 | engines: {node: '>=8'} 1360 | 1361 | path-parse@1.0.7: 1362 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 1363 | 1364 | picocolors@1.1.1: 1365 | resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} 1366 | 1367 | picomatch@2.3.1: 1368 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 1369 | engines: {node: '>=8.6'} 1370 | 1371 | possible-typed-array-names@1.0.0: 1372 | resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==} 1373 | engines: {node: '>= 0.4'} 1374 | 1375 | postcss@8.4.31: 1376 | resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} 1377 | engines: {node: ^10 || ^12 || >=14} 1378 | 1379 | postcss@8.5.2: 1380 | resolution: {integrity: sha512-MjOadfU3Ys9KYoX0AdkBlFEF1Vx37uCCeN4ZHnmwm9FfpbsGWMZeBLMmmpY+6Ocqod7mkdZ0DT31OlbsFrLlkA==} 1381 | engines: {node: ^10 || ^12 || >=14} 1382 | 1383 | prelude-ls@1.2.1: 1384 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} 1385 | engines: {node: '>= 0.8.0'} 1386 | 1387 | prettier@3.5.0: 1388 | resolution: {integrity: sha512-quyMrVt6svPS7CjQ9gKb3GLEX/rl3BCL2oa/QkNcXv4YNVBC9olt3s+H7ukto06q7B1Qz46PbrKLO34PR6vXcA==} 1389 | engines: {node: '>=14'} 1390 | 1391 | prop-types@15.8.1: 1392 | resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} 1393 | 1394 | punycode@2.3.1: 1395 | resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} 1396 | engines: {node: '>=6'} 1397 | 1398 | queue-microtask@1.2.3: 1399 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 1400 | 1401 | react-dom@19.0.0: 1402 | resolution: {integrity: sha512-4GV5sHFG0e/0AD4X+ySy6UJd3jVl1iNsNHdpad0qhABJ11twS3TTBnseqsKurKcsNqCEFeGL3uLpVChpIO3QfQ==} 1403 | peerDependencies: 1404 | react: ^19.0.0 1405 | 1406 | react-is@16.13.1: 1407 | resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} 1408 | 1409 | react@19.0.0: 1410 | resolution: {integrity: sha512-V8AVnmPIICiWpGfm6GLzCR/W5FXLchHop40W4nXBmdlEceh16rCN8O8LNWm5bh5XUX91fh7KpA+W0TgMKmgTpQ==} 1411 | engines: {node: '>=0.10.0'} 1412 | 1413 | reflect.getprototypeof@1.0.10: 1414 | resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==} 1415 | engines: {node: '>= 0.4'} 1416 | 1417 | regexp.prototype.flags@1.5.4: 1418 | resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==} 1419 | engines: {node: '>= 0.4'} 1420 | 1421 | resolve-from@4.0.0: 1422 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 1423 | engines: {node: '>=4'} 1424 | 1425 | resolve@2.0.0-next.5: 1426 | resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} 1427 | 1428 | reusify@1.0.4: 1429 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 1430 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 1431 | 1432 | run-parallel@1.2.0: 1433 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 1434 | 1435 | safe-array-concat@1.1.3: 1436 | resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==} 1437 | engines: {node: '>=0.4'} 1438 | 1439 | safe-push-apply@1.0.0: 1440 | resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==} 1441 | engines: {node: '>= 0.4'} 1442 | 1443 | safe-regex-test@1.1.0: 1444 | resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} 1445 | engines: {node: '>= 0.4'} 1446 | 1447 | scheduler@0.25.0: 1448 | resolution: {integrity: sha512-xFVuu11jh+xcO7JOAGJNOXld8/TcEHK/4CituBUeUb5hqxJLj9YuemAEuvm9gQ/+pgXYfbQuqAkiYu+u7YEsNA==} 1449 | 1450 | semver@6.3.1: 1451 | resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} 1452 | 1453 | semver@7.7.1: 1454 | resolution: {integrity: sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==} 1455 | engines: {node: '>=10'} 1456 | 1457 | set-function-length@1.2.2: 1458 | resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} 1459 | engines: {node: '>= 0.4'} 1460 | 1461 | set-function-name@2.0.2: 1462 | resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} 1463 | engines: {node: '>= 0.4'} 1464 | 1465 | set-proto@1.0.0: 1466 | resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==} 1467 | engines: {node: '>= 0.4'} 1468 | 1469 | sharp@0.33.5: 1470 | resolution: {integrity: sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==} 1471 | engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} 1472 | 1473 | shebang-command@2.0.0: 1474 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 1475 | engines: {node: '>=8'} 1476 | 1477 | shebang-regex@3.0.0: 1478 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 1479 | engines: {node: '>=8'} 1480 | 1481 | side-channel-list@1.0.0: 1482 | resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} 1483 | engines: {node: '>= 0.4'} 1484 | 1485 | side-channel-map@1.0.1: 1486 | resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} 1487 | engines: {node: '>= 0.4'} 1488 | 1489 | side-channel-weakmap@1.0.2: 1490 | resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} 1491 | engines: {node: '>= 0.4'} 1492 | 1493 | side-channel@1.1.0: 1494 | resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} 1495 | engines: {node: '>= 0.4'} 1496 | 1497 | simple-swizzle@0.2.2: 1498 | resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} 1499 | 1500 | source-map-js@1.2.1: 1501 | resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} 1502 | engines: {node: '>=0.10.0'} 1503 | 1504 | streamsearch@1.1.0: 1505 | resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} 1506 | engines: {node: '>=10.0.0'} 1507 | 1508 | string.prototype.matchall@4.0.12: 1509 | resolution: {integrity: sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==} 1510 | engines: {node: '>= 0.4'} 1511 | 1512 | string.prototype.repeat@1.0.0: 1513 | resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} 1514 | 1515 | string.prototype.trim@1.2.10: 1516 | resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==} 1517 | engines: {node: '>= 0.4'} 1518 | 1519 | string.prototype.trimend@1.0.9: 1520 | resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==} 1521 | engines: {node: '>= 0.4'} 1522 | 1523 | string.prototype.trimstart@1.0.8: 1524 | resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} 1525 | engines: {node: '>= 0.4'} 1526 | 1527 | strip-json-comments@3.1.1: 1528 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 1529 | engines: {node: '>=8'} 1530 | 1531 | styled-jsx@5.1.6: 1532 | resolution: {integrity: sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==} 1533 | engines: {node: '>= 12.0.0'} 1534 | peerDependencies: 1535 | '@babel/core': '*' 1536 | babel-plugin-macros: '*' 1537 | react: '>= 16.8.0 || 17.x.x || ^18.0.0-0 || ^19.0.0-0' 1538 | peerDependenciesMeta: 1539 | '@babel/core': 1540 | optional: true 1541 | babel-plugin-macros: 1542 | optional: true 1543 | 1544 | supports-color@7.2.0: 1545 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 1546 | engines: {node: '>=8'} 1547 | 1548 | supports-preserve-symlinks-flag@1.0.0: 1549 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 1550 | engines: {node: '>= 0.4'} 1551 | 1552 | tailwind-merge@3.0.1: 1553 | resolution: {integrity: sha512-AvzE8FmSoXC7nC+oU5GlQJbip2UO7tmOhOfQyOmPhrStOGXHU08j8mZEHZ4BmCqY5dWTCo4ClWkNyRNx1wpT0g==} 1554 | 1555 | tailwindcss-animate@1.0.7: 1556 | resolution: {integrity: sha512-bl6mpH3T7I3UFxuvDEXLxy/VuFxBk5bbzplh7tXI68mwMokNYd1t9qPBHlnyTwfa4JGC4zP516I1hYYtQ/vspA==} 1557 | peerDependencies: 1558 | tailwindcss: '>=3.0.0 || insiders' 1559 | 1560 | tailwindcss@4.0.6: 1561 | resolution: {integrity: sha512-mysewHYJKaXgNOW6pp5xon/emCsfAMnO8WMaGKZZ35fomnR/T5gYnRg2/yRTTrtXiEl1tiVkeRt0eMO6HxEZqw==} 1562 | 1563 | tapable@2.2.1: 1564 | resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} 1565 | engines: {node: '>=6'} 1566 | 1567 | to-regex-range@5.0.1: 1568 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 1569 | engines: {node: '>=8.0'} 1570 | 1571 | ts-api-utils@2.0.1: 1572 | resolution: {integrity: sha512-dnlgjFSVetynI8nzgJ+qF62efpglpWRk8isUEWZGWlJYySCTD6aKvbUDu+zbPeDakk3bg5H4XpitHukgfL1m9w==} 1573 | engines: {node: '>=18.12'} 1574 | peerDependencies: 1575 | typescript: '>=4.8.4' 1576 | 1577 | tslib@2.8.1: 1578 | resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} 1579 | 1580 | turbo-darwin-64@2.4.2: 1581 | resolution: {integrity: sha512-HFfemyWB60CJtEvVQj9yby5rkkWw9fLAdLtAPGtPQoU3tKh8t/uzCAZKso2aPVbib9vGUuGbPGoGpaRXdVhj5g==} 1582 | cpu: [x64] 1583 | os: [darwin] 1584 | 1585 | turbo-darwin-arm64@2.4.2: 1586 | resolution: {integrity: sha512-uwSx1dsBSSFeEC0nxyx2O219FEsS/haiESaWwE9JI8mHkQK61s6w6fN2G586krKxyNam4AIxRltleL+O2Em94g==} 1587 | cpu: [arm64] 1588 | os: [darwin] 1589 | 1590 | turbo-linux-64@2.4.2: 1591 | resolution: {integrity: sha512-Fy/uL8z/LAYcPbm7a1LwFnTY9pIi5FAi12iuHsgB7zHjdh4eeIKS2NIg4nroAmTcUTUZ0/cVTo4bDOCUcS3aKw==} 1592 | cpu: [x64] 1593 | os: [linux] 1594 | 1595 | turbo-linux-arm64@2.4.2: 1596 | resolution: {integrity: sha512-AEA0d8h5W/K6iiXfEgiNwWt0yqRL1NpBs8zQCLdc4/L7WeYeJW3sORWX8zt7xhutF/KW9gTm8ehKpiK6cCIsAA==} 1597 | cpu: [arm64] 1598 | os: [linux] 1599 | 1600 | turbo-windows-64@2.4.2: 1601 | resolution: {integrity: sha512-CybtIZ9wRgnnNFVN9En9G+rxsO+mwU81fvW4RpE8BWyNEkhQ8J28qYf4PaimueMxGHHp/28i/G7Kcdn2GAWG0g==} 1602 | cpu: [x64] 1603 | os: [win32] 1604 | 1605 | turbo-windows-arm64@2.4.2: 1606 | resolution: {integrity: sha512-7V0yneVPL8Y3TgrkUIjw7Odmwu1tHnyIiPHFM7eFcA7U+H6hPXyCxge7nC3wOKfjhKCQqUm+Vf/k6kjmLz5G4g==} 1607 | cpu: [arm64] 1608 | os: [win32] 1609 | 1610 | turbo@2.4.2: 1611 | resolution: {integrity: sha512-Qxi0ioQCxMRUCcHKHZkTnYH8e7XCpNfg9QiJcyfWIc+ZXeaCjzV5rCGlbQlTXMAtI8qgfP8fZADv3CFtPwqdPQ==} 1612 | hasBin: true 1613 | 1614 | type-check@0.4.0: 1615 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} 1616 | engines: {node: '>= 0.8.0'} 1617 | 1618 | typed-array-buffer@1.0.3: 1619 | resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} 1620 | engines: {node: '>= 0.4'} 1621 | 1622 | typed-array-byte-length@1.0.3: 1623 | resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==} 1624 | engines: {node: '>= 0.4'} 1625 | 1626 | typed-array-byte-offset@1.0.4: 1627 | resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==} 1628 | engines: {node: '>= 0.4'} 1629 | 1630 | typed-array-length@1.0.7: 1631 | resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} 1632 | engines: {node: '>= 0.4'} 1633 | 1634 | typescript-eslint@8.23.0: 1635 | resolution: {integrity: sha512-/LBRo3HrXr5LxmrdYSOCvoAMm7p2jNizNfbIpCgvG4HMsnoprRUOce/+8VJ9BDYWW68rqIENE/haVLWPeFZBVQ==} 1636 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 1637 | peerDependencies: 1638 | eslint: ^8.57.0 || ^9.0.0 1639 | typescript: '>=4.8.4 <5.8.0' 1640 | 1641 | typescript@5.7.3: 1642 | resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==} 1643 | engines: {node: '>=14.17'} 1644 | 1645 | unbox-primitive@1.1.0: 1646 | resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} 1647 | engines: {node: '>= 0.4'} 1648 | 1649 | undici-types@6.20.0: 1650 | resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==} 1651 | 1652 | uri-js@4.4.1: 1653 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 1654 | 1655 | which-boxed-primitive@1.1.1: 1656 | resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==} 1657 | engines: {node: '>= 0.4'} 1658 | 1659 | which-builtin-type@1.2.1: 1660 | resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} 1661 | engines: {node: '>= 0.4'} 1662 | 1663 | which-collection@1.0.2: 1664 | resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} 1665 | engines: {node: '>= 0.4'} 1666 | 1667 | which-typed-array@1.1.18: 1668 | resolution: {integrity: sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==} 1669 | engines: {node: '>= 0.4'} 1670 | 1671 | which@2.0.2: 1672 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 1673 | engines: {node: '>= 8'} 1674 | 1675 | word-wrap@1.2.5: 1676 | resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} 1677 | engines: {node: '>=0.10.0'} 1678 | 1679 | yocto-queue@0.1.0: 1680 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 1681 | engines: {node: '>=10'} 1682 | 1683 | snapshots: 1684 | 1685 | '@alloc/quick-lru@5.2.0': {} 1686 | 1687 | '@emnapi/runtime@1.3.1': 1688 | dependencies: 1689 | tslib: 2.8.1 1690 | optional: true 1691 | 1692 | '@eslint-community/eslint-utils@4.4.1(eslint@9.20.0(jiti@2.4.2))': 1693 | dependencies: 1694 | eslint: 9.20.0(jiti@2.4.2) 1695 | eslint-visitor-keys: 3.4.3 1696 | 1697 | '@eslint-community/regexpp@4.12.1': {} 1698 | 1699 | '@eslint/config-array@0.19.2': 1700 | dependencies: 1701 | '@eslint/object-schema': 2.1.6 1702 | debug: 4.4.0 1703 | minimatch: 3.1.2 1704 | transitivePeerDependencies: 1705 | - supports-color 1706 | 1707 | '@eslint/core@0.10.0': 1708 | dependencies: 1709 | '@types/json-schema': 7.0.15 1710 | 1711 | '@eslint/core@0.11.0': 1712 | dependencies: 1713 | '@types/json-schema': 7.0.15 1714 | 1715 | '@eslint/eslintrc@3.2.0': 1716 | dependencies: 1717 | ajv: 6.12.6 1718 | debug: 4.4.0 1719 | espree: 10.3.0 1720 | globals: 14.0.0 1721 | ignore: 5.3.2 1722 | import-fresh: 3.3.1 1723 | js-yaml: 4.1.0 1724 | minimatch: 3.1.2 1725 | strip-json-comments: 3.1.1 1726 | transitivePeerDependencies: 1727 | - supports-color 1728 | 1729 | '@eslint/js@9.20.0': {} 1730 | 1731 | '@eslint/object-schema@2.1.6': {} 1732 | 1733 | '@eslint/plugin-kit@0.2.5': 1734 | dependencies: 1735 | '@eslint/core': 0.10.0 1736 | levn: 0.4.1 1737 | 1738 | '@humanfs/core@0.19.1': {} 1739 | 1740 | '@humanfs/node@0.16.6': 1741 | dependencies: 1742 | '@humanfs/core': 0.19.1 1743 | '@humanwhocodes/retry': 0.3.1 1744 | 1745 | '@humanwhocodes/module-importer@1.0.1': {} 1746 | 1747 | '@humanwhocodes/retry@0.3.1': {} 1748 | 1749 | '@humanwhocodes/retry@0.4.1': {} 1750 | 1751 | '@img/sharp-darwin-arm64@0.33.5': 1752 | optionalDependencies: 1753 | '@img/sharp-libvips-darwin-arm64': 1.0.4 1754 | optional: true 1755 | 1756 | '@img/sharp-darwin-x64@0.33.5': 1757 | optionalDependencies: 1758 | '@img/sharp-libvips-darwin-x64': 1.0.4 1759 | optional: true 1760 | 1761 | '@img/sharp-libvips-darwin-arm64@1.0.4': 1762 | optional: true 1763 | 1764 | '@img/sharp-libvips-darwin-x64@1.0.4': 1765 | optional: true 1766 | 1767 | '@img/sharp-libvips-linux-arm64@1.0.4': 1768 | optional: true 1769 | 1770 | '@img/sharp-libvips-linux-arm@1.0.5': 1771 | optional: true 1772 | 1773 | '@img/sharp-libvips-linux-s390x@1.0.4': 1774 | optional: true 1775 | 1776 | '@img/sharp-libvips-linux-x64@1.0.4': 1777 | optional: true 1778 | 1779 | '@img/sharp-libvips-linuxmusl-arm64@1.0.4': 1780 | optional: true 1781 | 1782 | '@img/sharp-libvips-linuxmusl-x64@1.0.4': 1783 | optional: true 1784 | 1785 | '@img/sharp-linux-arm64@0.33.5': 1786 | optionalDependencies: 1787 | '@img/sharp-libvips-linux-arm64': 1.0.4 1788 | optional: true 1789 | 1790 | '@img/sharp-linux-arm@0.33.5': 1791 | optionalDependencies: 1792 | '@img/sharp-libvips-linux-arm': 1.0.5 1793 | optional: true 1794 | 1795 | '@img/sharp-linux-s390x@0.33.5': 1796 | optionalDependencies: 1797 | '@img/sharp-libvips-linux-s390x': 1.0.4 1798 | optional: true 1799 | 1800 | '@img/sharp-linux-x64@0.33.5': 1801 | optionalDependencies: 1802 | '@img/sharp-libvips-linux-x64': 1.0.4 1803 | optional: true 1804 | 1805 | '@img/sharp-linuxmusl-arm64@0.33.5': 1806 | optionalDependencies: 1807 | '@img/sharp-libvips-linuxmusl-arm64': 1.0.4 1808 | optional: true 1809 | 1810 | '@img/sharp-linuxmusl-x64@0.33.5': 1811 | optionalDependencies: 1812 | '@img/sharp-libvips-linuxmusl-x64': 1.0.4 1813 | optional: true 1814 | 1815 | '@img/sharp-wasm32@0.33.5': 1816 | dependencies: 1817 | '@emnapi/runtime': 1.3.1 1818 | optional: true 1819 | 1820 | '@img/sharp-win32-ia32@0.33.5': 1821 | optional: true 1822 | 1823 | '@img/sharp-win32-x64@0.33.5': 1824 | optional: true 1825 | 1826 | '@next/env@15.2.0-canary.63': {} 1827 | 1828 | '@next/eslint-plugin-next@15.1.6': 1829 | dependencies: 1830 | fast-glob: 3.3.1 1831 | 1832 | '@next/swc-darwin-arm64@15.2.0-canary.63': 1833 | optional: true 1834 | 1835 | '@next/swc-darwin-x64@15.2.0-canary.63': 1836 | optional: true 1837 | 1838 | '@next/swc-linux-arm64-gnu@15.2.0-canary.63': 1839 | optional: true 1840 | 1841 | '@next/swc-linux-arm64-musl@15.2.0-canary.63': 1842 | optional: true 1843 | 1844 | '@next/swc-linux-x64-gnu@15.2.0-canary.63': 1845 | optional: true 1846 | 1847 | '@next/swc-linux-x64-musl@15.2.0-canary.63': 1848 | optional: true 1849 | 1850 | '@next/swc-win32-arm64-msvc@15.2.0-canary.63': 1851 | optional: true 1852 | 1853 | '@next/swc-win32-x64-msvc@15.2.0-canary.63': 1854 | optional: true 1855 | 1856 | '@nodelib/fs.scandir@2.1.5': 1857 | dependencies: 1858 | '@nodelib/fs.stat': 2.0.5 1859 | run-parallel: 1.2.0 1860 | 1861 | '@nodelib/fs.stat@2.0.5': {} 1862 | 1863 | '@nodelib/fs.walk@1.2.8': 1864 | dependencies: 1865 | '@nodelib/fs.scandir': 2.1.5 1866 | fastq: 1.18.0 1867 | 1868 | '@radix-ui/react-compose-refs@1.1.1(@types/react@19.0.8)(react@19.0.0)': 1869 | dependencies: 1870 | react: 19.0.0 1871 | optionalDependencies: 1872 | '@types/react': 19.0.8 1873 | 1874 | '@radix-ui/react-slot@1.1.2(@types/react@19.0.8)(react@19.0.0)': 1875 | dependencies: 1876 | '@radix-ui/react-compose-refs': 1.1.1(@types/react@19.0.8)(react@19.0.0) 1877 | react: 19.0.0 1878 | optionalDependencies: 1879 | '@types/react': 19.0.8 1880 | 1881 | '@swc/counter@0.1.3': {} 1882 | 1883 | '@swc/helpers@0.5.15': 1884 | dependencies: 1885 | tslib: 2.8.1 1886 | 1887 | '@tailwindcss/node@4.0.6': 1888 | dependencies: 1889 | enhanced-resolve: 5.18.1 1890 | jiti: 2.4.2 1891 | tailwindcss: 4.0.6 1892 | 1893 | '@tailwindcss/oxide-android-arm64@4.0.6': 1894 | optional: true 1895 | 1896 | '@tailwindcss/oxide-darwin-arm64@4.0.6': 1897 | optional: true 1898 | 1899 | '@tailwindcss/oxide-darwin-x64@4.0.6': 1900 | optional: true 1901 | 1902 | '@tailwindcss/oxide-freebsd-x64@4.0.6': 1903 | optional: true 1904 | 1905 | '@tailwindcss/oxide-linux-arm-gnueabihf@4.0.6': 1906 | optional: true 1907 | 1908 | '@tailwindcss/oxide-linux-arm64-gnu@4.0.6': 1909 | optional: true 1910 | 1911 | '@tailwindcss/oxide-linux-arm64-musl@4.0.6': 1912 | optional: true 1913 | 1914 | '@tailwindcss/oxide-linux-x64-gnu@4.0.6': 1915 | optional: true 1916 | 1917 | '@tailwindcss/oxide-linux-x64-musl@4.0.6': 1918 | optional: true 1919 | 1920 | '@tailwindcss/oxide-win32-arm64-msvc@4.0.6': 1921 | optional: true 1922 | 1923 | '@tailwindcss/oxide-win32-x64-msvc@4.0.6': 1924 | optional: true 1925 | 1926 | '@tailwindcss/oxide@4.0.6': 1927 | optionalDependencies: 1928 | '@tailwindcss/oxide-android-arm64': 4.0.6 1929 | '@tailwindcss/oxide-darwin-arm64': 4.0.6 1930 | '@tailwindcss/oxide-darwin-x64': 4.0.6 1931 | '@tailwindcss/oxide-freebsd-x64': 4.0.6 1932 | '@tailwindcss/oxide-linux-arm-gnueabihf': 4.0.6 1933 | '@tailwindcss/oxide-linux-arm64-gnu': 4.0.6 1934 | '@tailwindcss/oxide-linux-arm64-musl': 4.0.6 1935 | '@tailwindcss/oxide-linux-x64-gnu': 4.0.6 1936 | '@tailwindcss/oxide-linux-x64-musl': 4.0.6 1937 | '@tailwindcss/oxide-win32-arm64-msvc': 4.0.6 1938 | '@tailwindcss/oxide-win32-x64-msvc': 4.0.6 1939 | 1940 | '@tailwindcss/postcss@4.0.6': 1941 | dependencies: 1942 | '@alloc/quick-lru': 5.2.0 1943 | '@tailwindcss/node': 4.0.6 1944 | '@tailwindcss/oxide': 4.0.6 1945 | lightningcss: 1.29.1 1946 | postcss: 8.5.2 1947 | tailwindcss: 4.0.6 1948 | 1949 | '@types/estree@1.0.6': {} 1950 | 1951 | '@types/json-schema@7.0.15': {} 1952 | 1953 | '@types/node@22.13.0': 1954 | dependencies: 1955 | undici-types: 6.20.0 1956 | 1957 | '@types/react-dom@19.0.3(@types/react@19.0.8)': 1958 | dependencies: 1959 | '@types/react': 19.0.8 1960 | 1961 | '@types/react@19.0.8': 1962 | dependencies: 1963 | csstype: 3.1.3 1964 | 1965 | '@typescript-eslint/eslint-plugin@8.23.0(@typescript-eslint/parser@8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)': 1966 | dependencies: 1967 | '@eslint-community/regexpp': 4.12.1 1968 | '@typescript-eslint/parser': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3) 1969 | '@typescript-eslint/scope-manager': 8.23.0 1970 | '@typescript-eslint/type-utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3) 1971 | '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3) 1972 | '@typescript-eslint/visitor-keys': 8.23.0 1973 | eslint: 9.20.0(jiti@2.4.2) 1974 | graphemer: 1.4.0 1975 | ignore: 5.3.2 1976 | natural-compare: 1.4.0 1977 | ts-api-utils: 2.0.1(typescript@5.7.3) 1978 | typescript: 5.7.3 1979 | transitivePeerDependencies: 1980 | - supports-color 1981 | 1982 | '@typescript-eslint/parser@8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)': 1983 | dependencies: 1984 | '@typescript-eslint/scope-manager': 8.23.0 1985 | '@typescript-eslint/types': 8.23.0 1986 | '@typescript-eslint/typescript-estree': 8.23.0(typescript@5.7.3) 1987 | '@typescript-eslint/visitor-keys': 8.23.0 1988 | debug: 4.4.0 1989 | eslint: 9.20.0(jiti@2.4.2) 1990 | typescript: 5.7.3 1991 | transitivePeerDependencies: 1992 | - supports-color 1993 | 1994 | '@typescript-eslint/scope-manager@8.23.0': 1995 | dependencies: 1996 | '@typescript-eslint/types': 8.23.0 1997 | '@typescript-eslint/visitor-keys': 8.23.0 1998 | 1999 | '@typescript-eslint/type-utils@8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)': 2000 | dependencies: 2001 | '@typescript-eslint/typescript-estree': 8.23.0(typescript@5.7.3) 2002 | '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3) 2003 | debug: 4.4.0 2004 | eslint: 9.20.0(jiti@2.4.2) 2005 | ts-api-utils: 2.0.1(typescript@5.7.3) 2006 | typescript: 5.7.3 2007 | transitivePeerDependencies: 2008 | - supports-color 2009 | 2010 | '@typescript-eslint/types@8.23.0': {} 2011 | 2012 | '@typescript-eslint/typescript-estree@8.23.0(typescript@5.7.3)': 2013 | dependencies: 2014 | '@typescript-eslint/types': 8.23.0 2015 | '@typescript-eslint/visitor-keys': 8.23.0 2016 | debug: 4.4.0 2017 | fast-glob: 3.3.3 2018 | is-glob: 4.0.3 2019 | minimatch: 9.0.5 2020 | semver: 7.7.1 2021 | ts-api-utils: 2.0.1(typescript@5.7.3) 2022 | typescript: 5.7.3 2023 | transitivePeerDependencies: 2024 | - supports-color 2025 | 2026 | '@typescript-eslint/utils@8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3)': 2027 | dependencies: 2028 | '@eslint-community/eslint-utils': 4.4.1(eslint@9.20.0(jiti@2.4.2)) 2029 | '@typescript-eslint/scope-manager': 8.23.0 2030 | '@typescript-eslint/types': 8.23.0 2031 | '@typescript-eslint/typescript-estree': 8.23.0(typescript@5.7.3) 2032 | eslint: 9.20.0(jiti@2.4.2) 2033 | typescript: 5.7.3 2034 | transitivePeerDependencies: 2035 | - supports-color 2036 | 2037 | '@typescript-eslint/visitor-keys@8.23.0': 2038 | dependencies: 2039 | '@typescript-eslint/types': 8.23.0 2040 | eslint-visitor-keys: 4.2.0 2041 | 2042 | acorn-jsx@5.3.2(acorn@8.14.0): 2043 | dependencies: 2044 | acorn: 8.14.0 2045 | 2046 | acorn@8.14.0: {} 2047 | 2048 | ajv@6.12.6: 2049 | dependencies: 2050 | fast-deep-equal: 3.1.3 2051 | fast-json-stable-stringify: 2.1.0 2052 | json-schema-traverse: 0.4.1 2053 | uri-js: 4.4.1 2054 | 2055 | ansi-styles@4.3.0: 2056 | dependencies: 2057 | color-convert: 2.0.1 2058 | 2059 | argparse@2.0.1: {} 2060 | 2061 | array-buffer-byte-length@1.0.2: 2062 | dependencies: 2063 | call-bound: 1.0.3 2064 | is-array-buffer: 3.0.5 2065 | 2066 | array-includes@3.1.8: 2067 | dependencies: 2068 | call-bind: 1.0.8 2069 | define-properties: 1.2.1 2070 | es-abstract: 1.23.9 2071 | es-object-atoms: 1.1.1 2072 | get-intrinsic: 1.2.7 2073 | is-string: 1.1.1 2074 | 2075 | array.prototype.findlast@1.2.5: 2076 | dependencies: 2077 | call-bind: 1.0.8 2078 | define-properties: 1.2.1 2079 | es-abstract: 1.23.9 2080 | es-errors: 1.3.0 2081 | es-object-atoms: 1.1.1 2082 | es-shim-unscopables: 1.0.2 2083 | 2084 | array.prototype.flat@1.3.3: 2085 | dependencies: 2086 | call-bind: 1.0.8 2087 | define-properties: 1.2.1 2088 | es-abstract: 1.23.9 2089 | es-shim-unscopables: 1.0.2 2090 | 2091 | array.prototype.flatmap@1.3.3: 2092 | dependencies: 2093 | call-bind: 1.0.8 2094 | define-properties: 1.2.1 2095 | es-abstract: 1.23.9 2096 | es-shim-unscopables: 1.0.2 2097 | 2098 | array.prototype.tosorted@1.1.4: 2099 | dependencies: 2100 | call-bind: 1.0.8 2101 | define-properties: 1.2.1 2102 | es-abstract: 1.23.9 2103 | es-errors: 1.3.0 2104 | es-shim-unscopables: 1.0.2 2105 | 2106 | arraybuffer.prototype.slice@1.0.4: 2107 | dependencies: 2108 | array-buffer-byte-length: 1.0.2 2109 | call-bind: 1.0.8 2110 | define-properties: 1.2.1 2111 | es-abstract: 1.23.9 2112 | es-errors: 1.3.0 2113 | get-intrinsic: 1.2.7 2114 | is-array-buffer: 3.0.5 2115 | 2116 | async-function@1.0.0: {} 2117 | 2118 | available-typed-arrays@1.0.7: 2119 | dependencies: 2120 | possible-typed-array-names: 1.0.0 2121 | 2122 | balanced-match@1.0.2: {} 2123 | 2124 | brace-expansion@1.1.11: 2125 | dependencies: 2126 | balanced-match: 1.0.2 2127 | concat-map: 0.0.1 2128 | 2129 | brace-expansion@2.0.1: 2130 | dependencies: 2131 | balanced-match: 1.0.2 2132 | 2133 | braces@3.0.3: 2134 | dependencies: 2135 | fill-range: 7.1.1 2136 | 2137 | busboy@1.6.0: 2138 | dependencies: 2139 | streamsearch: 1.1.0 2140 | 2141 | call-bind-apply-helpers@1.0.1: 2142 | dependencies: 2143 | es-errors: 1.3.0 2144 | function-bind: 1.1.2 2145 | 2146 | call-bind@1.0.8: 2147 | dependencies: 2148 | call-bind-apply-helpers: 1.0.1 2149 | es-define-property: 1.0.1 2150 | get-intrinsic: 1.2.7 2151 | set-function-length: 1.2.2 2152 | 2153 | call-bound@1.0.3: 2154 | dependencies: 2155 | call-bind-apply-helpers: 1.0.1 2156 | get-intrinsic: 1.2.7 2157 | 2158 | callsites@3.1.0: {} 2159 | 2160 | caniuse-lite@1.0.30001700: {} 2161 | 2162 | chalk@4.1.2: 2163 | dependencies: 2164 | ansi-styles: 4.3.0 2165 | supports-color: 7.2.0 2166 | 2167 | class-variance-authority@0.7.1: 2168 | dependencies: 2169 | clsx: 2.1.1 2170 | 2171 | client-only@0.0.1: {} 2172 | 2173 | clsx@2.1.1: {} 2174 | 2175 | color-convert@2.0.1: 2176 | dependencies: 2177 | color-name: 1.1.4 2178 | 2179 | color-name@1.1.4: {} 2180 | 2181 | color-string@1.9.1: 2182 | dependencies: 2183 | color-name: 1.1.4 2184 | simple-swizzle: 0.2.2 2185 | optional: true 2186 | 2187 | color@4.2.3: 2188 | dependencies: 2189 | color-convert: 2.0.1 2190 | color-string: 1.9.1 2191 | optional: true 2192 | 2193 | concat-map@0.0.1: {} 2194 | 2195 | cross-spawn@7.0.6: 2196 | dependencies: 2197 | path-key: 3.1.1 2198 | shebang-command: 2.0.0 2199 | which: 2.0.2 2200 | 2201 | csstype@3.1.3: {} 2202 | 2203 | data-view-buffer@1.0.2: 2204 | dependencies: 2205 | call-bound: 1.0.3 2206 | es-errors: 1.3.0 2207 | is-data-view: 1.0.2 2208 | 2209 | data-view-byte-length@1.0.2: 2210 | dependencies: 2211 | call-bound: 1.0.3 2212 | es-errors: 1.3.0 2213 | is-data-view: 1.0.2 2214 | 2215 | data-view-byte-offset@1.0.1: 2216 | dependencies: 2217 | call-bound: 1.0.3 2218 | es-errors: 1.3.0 2219 | is-data-view: 1.0.2 2220 | 2221 | debug@4.4.0: 2222 | dependencies: 2223 | ms: 2.1.3 2224 | 2225 | deep-is@0.1.4: {} 2226 | 2227 | define-data-property@1.1.4: 2228 | dependencies: 2229 | es-define-property: 1.0.1 2230 | es-errors: 1.3.0 2231 | gopd: 1.2.0 2232 | 2233 | define-properties@1.2.1: 2234 | dependencies: 2235 | define-data-property: 1.1.4 2236 | has-property-descriptors: 1.0.2 2237 | object-keys: 1.1.1 2238 | 2239 | detect-libc@1.0.3: {} 2240 | 2241 | detect-libc@2.0.3: 2242 | optional: true 2243 | 2244 | doctrine@2.1.0: 2245 | dependencies: 2246 | esutils: 2.0.3 2247 | 2248 | dotenv@16.0.3: {} 2249 | 2250 | dunder-proto@1.0.1: 2251 | dependencies: 2252 | call-bind-apply-helpers: 1.0.1 2253 | es-errors: 1.3.0 2254 | gopd: 1.2.0 2255 | 2256 | enhanced-resolve@5.18.1: 2257 | dependencies: 2258 | graceful-fs: 4.2.11 2259 | tapable: 2.2.1 2260 | 2261 | es-abstract@1.23.9: 2262 | dependencies: 2263 | array-buffer-byte-length: 1.0.2 2264 | arraybuffer.prototype.slice: 1.0.4 2265 | available-typed-arrays: 1.0.7 2266 | call-bind: 1.0.8 2267 | call-bound: 1.0.3 2268 | data-view-buffer: 1.0.2 2269 | data-view-byte-length: 1.0.2 2270 | data-view-byte-offset: 1.0.1 2271 | es-define-property: 1.0.1 2272 | es-errors: 1.3.0 2273 | es-object-atoms: 1.1.1 2274 | es-set-tostringtag: 2.1.0 2275 | es-to-primitive: 1.3.0 2276 | function.prototype.name: 1.1.8 2277 | get-intrinsic: 1.2.7 2278 | get-proto: 1.0.1 2279 | get-symbol-description: 1.1.0 2280 | globalthis: 1.0.4 2281 | gopd: 1.2.0 2282 | has-property-descriptors: 1.0.2 2283 | has-proto: 1.2.0 2284 | has-symbols: 1.1.0 2285 | hasown: 2.0.2 2286 | internal-slot: 1.1.0 2287 | is-array-buffer: 3.0.5 2288 | is-callable: 1.2.7 2289 | is-data-view: 1.0.2 2290 | is-regex: 1.2.1 2291 | is-shared-array-buffer: 1.0.4 2292 | is-string: 1.1.1 2293 | is-typed-array: 1.1.15 2294 | is-weakref: 1.1.0 2295 | math-intrinsics: 1.1.0 2296 | object-inspect: 1.13.3 2297 | object-keys: 1.1.1 2298 | object.assign: 4.1.7 2299 | own-keys: 1.0.1 2300 | regexp.prototype.flags: 1.5.4 2301 | safe-array-concat: 1.1.3 2302 | safe-push-apply: 1.0.0 2303 | safe-regex-test: 1.1.0 2304 | set-proto: 1.0.0 2305 | string.prototype.trim: 1.2.10 2306 | string.prototype.trimend: 1.0.9 2307 | string.prototype.trimstart: 1.0.8 2308 | typed-array-buffer: 1.0.3 2309 | typed-array-byte-length: 1.0.3 2310 | typed-array-byte-offset: 1.0.4 2311 | typed-array-length: 1.0.7 2312 | unbox-primitive: 1.1.0 2313 | which-typed-array: 1.1.18 2314 | 2315 | es-define-property@1.0.1: {} 2316 | 2317 | es-errors@1.3.0: {} 2318 | 2319 | es-iterator-helpers@1.2.1: 2320 | dependencies: 2321 | call-bind: 1.0.8 2322 | call-bound: 1.0.3 2323 | define-properties: 1.2.1 2324 | es-abstract: 1.23.9 2325 | es-errors: 1.3.0 2326 | es-set-tostringtag: 2.1.0 2327 | function-bind: 1.1.2 2328 | get-intrinsic: 1.2.7 2329 | globalthis: 1.0.4 2330 | gopd: 1.2.0 2331 | has-property-descriptors: 1.0.2 2332 | has-proto: 1.2.0 2333 | has-symbols: 1.1.0 2334 | internal-slot: 1.1.0 2335 | iterator.prototype: 1.1.5 2336 | safe-array-concat: 1.1.3 2337 | 2338 | es-object-atoms@1.1.1: 2339 | dependencies: 2340 | es-errors: 1.3.0 2341 | 2342 | es-set-tostringtag@2.1.0: 2343 | dependencies: 2344 | es-errors: 1.3.0 2345 | get-intrinsic: 1.2.7 2346 | has-tostringtag: 1.0.2 2347 | hasown: 2.0.2 2348 | 2349 | es-shim-unscopables@1.0.2: 2350 | dependencies: 2351 | hasown: 2.0.2 2352 | 2353 | es-to-primitive@1.3.0: 2354 | dependencies: 2355 | is-callable: 1.2.7 2356 | is-date-object: 1.1.0 2357 | is-symbol: 1.1.1 2358 | 2359 | escape-string-regexp@4.0.0: {} 2360 | 2361 | eslint-config-prettier@10.0.1(eslint@9.20.0(jiti@2.4.2)): 2362 | dependencies: 2363 | eslint: 9.20.0(jiti@2.4.2) 2364 | 2365 | eslint-plugin-only-warn@1.1.0: {} 2366 | 2367 | eslint-plugin-react-hooks@5.1.0(eslint@9.20.0(jiti@2.4.2)): 2368 | dependencies: 2369 | eslint: 9.20.0(jiti@2.4.2) 2370 | 2371 | eslint-plugin-react@7.37.4(eslint@9.20.0(jiti@2.4.2)): 2372 | dependencies: 2373 | array-includes: 3.1.8 2374 | array.prototype.findlast: 1.2.5 2375 | array.prototype.flatmap: 1.3.3 2376 | array.prototype.tosorted: 1.1.4 2377 | doctrine: 2.1.0 2378 | es-iterator-helpers: 1.2.1 2379 | eslint: 9.20.0(jiti@2.4.2) 2380 | estraverse: 5.3.0 2381 | hasown: 2.0.2 2382 | jsx-ast-utils: 3.3.5 2383 | minimatch: 3.1.2 2384 | object.entries: 1.1.8 2385 | object.fromentries: 2.0.8 2386 | object.values: 1.2.1 2387 | prop-types: 15.8.1 2388 | resolve: 2.0.0-next.5 2389 | semver: 6.3.1 2390 | string.prototype.matchall: 4.0.12 2391 | string.prototype.repeat: 1.0.0 2392 | 2393 | eslint-plugin-turbo@2.4.0(eslint@9.20.0(jiti@2.4.2))(turbo@2.4.2): 2394 | dependencies: 2395 | dotenv: 16.0.3 2396 | eslint: 9.20.0(jiti@2.4.2) 2397 | turbo: 2.4.2 2398 | 2399 | eslint-scope@8.2.0: 2400 | dependencies: 2401 | esrecurse: 4.3.0 2402 | estraverse: 5.3.0 2403 | 2404 | eslint-visitor-keys@3.4.3: {} 2405 | 2406 | eslint-visitor-keys@4.2.0: {} 2407 | 2408 | eslint@9.20.0(jiti@2.4.2): 2409 | dependencies: 2410 | '@eslint-community/eslint-utils': 4.4.1(eslint@9.20.0(jiti@2.4.2)) 2411 | '@eslint-community/regexpp': 4.12.1 2412 | '@eslint/config-array': 0.19.2 2413 | '@eslint/core': 0.11.0 2414 | '@eslint/eslintrc': 3.2.0 2415 | '@eslint/js': 9.20.0 2416 | '@eslint/plugin-kit': 0.2.5 2417 | '@humanfs/node': 0.16.6 2418 | '@humanwhocodes/module-importer': 1.0.1 2419 | '@humanwhocodes/retry': 0.4.1 2420 | '@types/estree': 1.0.6 2421 | '@types/json-schema': 7.0.15 2422 | ajv: 6.12.6 2423 | chalk: 4.1.2 2424 | cross-spawn: 7.0.6 2425 | debug: 4.4.0 2426 | escape-string-regexp: 4.0.0 2427 | eslint-scope: 8.2.0 2428 | eslint-visitor-keys: 4.2.0 2429 | espree: 10.3.0 2430 | esquery: 1.6.0 2431 | esutils: 2.0.3 2432 | fast-deep-equal: 3.1.3 2433 | file-entry-cache: 8.0.0 2434 | find-up: 5.0.0 2435 | glob-parent: 6.0.2 2436 | ignore: 5.3.2 2437 | imurmurhash: 0.1.4 2438 | is-glob: 4.0.3 2439 | json-stable-stringify-without-jsonify: 1.0.1 2440 | lodash.merge: 4.6.2 2441 | minimatch: 3.1.2 2442 | natural-compare: 1.4.0 2443 | optionator: 0.9.4 2444 | optionalDependencies: 2445 | jiti: 2.4.2 2446 | transitivePeerDependencies: 2447 | - supports-color 2448 | 2449 | espree@10.3.0: 2450 | dependencies: 2451 | acorn: 8.14.0 2452 | acorn-jsx: 5.3.2(acorn@8.14.0) 2453 | eslint-visitor-keys: 4.2.0 2454 | 2455 | esquery@1.6.0: 2456 | dependencies: 2457 | estraverse: 5.3.0 2458 | 2459 | esrecurse@4.3.0: 2460 | dependencies: 2461 | estraverse: 5.3.0 2462 | 2463 | estraverse@5.3.0: {} 2464 | 2465 | esutils@2.0.3: {} 2466 | 2467 | fast-deep-equal@3.1.3: {} 2468 | 2469 | fast-glob@3.3.1: 2470 | dependencies: 2471 | '@nodelib/fs.stat': 2.0.5 2472 | '@nodelib/fs.walk': 1.2.8 2473 | glob-parent: 5.1.2 2474 | merge2: 1.4.1 2475 | micromatch: 4.0.8 2476 | 2477 | fast-glob@3.3.3: 2478 | dependencies: 2479 | '@nodelib/fs.stat': 2.0.5 2480 | '@nodelib/fs.walk': 1.2.8 2481 | glob-parent: 5.1.2 2482 | merge2: 1.4.1 2483 | micromatch: 4.0.8 2484 | 2485 | fast-json-stable-stringify@2.1.0: {} 2486 | 2487 | fast-levenshtein@2.0.6: {} 2488 | 2489 | fastq@1.18.0: 2490 | dependencies: 2491 | reusify: 1.0.4 2492 | 2493 | file-entry-cache@8.0.0: 2494 | dependencies: 2495 | flat-cache: 4.0.1 2496 | 2497 | fill-range@7.1.1: 2498 | dependencies: 2499 | to-regex-range: 5.0.1 2500 | 2501 | find-up@5.0.0: 2502 | dependencies: 2503 | locate-path: 6.0.0 2504 | path-exists: 4.0.0 2505 | 2506 | flat-cache@4.0.1: 2507 | dependencies: 2508 | flatted: 3.3.2 2509 | keyv: 4.5.4 2510 | 2511 | flatted@3.3.2: {} 2512 | 2513 | for-each@0.3.3: 2514 | dependencies: 2515 | is-callable: 1.2.7 2516 | 2517 | function-bind@1.1.2: {} 2518 | 2519 | function.prototype.name@1.1.8: 2520 | dependencies: 2521 | call-bind: 1.0.8 2522 | call-bound: 1.0.3 2523 | define-properties: 1.2.1 2524 | functions-have-names: 1.2.3 2525 | hasown: 2.0.2 2526 | is-callable: 1.2.7 2527 | 2528 | functions-have-names@1.2.3: {} 2529 | 2530 | get-intrinsic@1.2.7: 2531 | dependencies: 2532 | call-bind-apply-helpers: 1.0.1 2533 | es-define-property: 1.0.1 2534 | es-errors: 1.3.0 2535 | es-object-atoms: 1.1.1 2536 | function-bind: 1.1.2 2537 | get-proto: 1.0.1 2538 | gopd: 1.2.0 2539 | has-symbols: 1.1.0 2540 | hasown: 2.0.2 2541 | math-intrinsics: 1.1.0 2542 | 2543 | get-proto@1.0.1: 2544 | dependencies: 2545 | dunder-proto: 1.0.1 2546 | es-object-atoms: 1.1.1 2547 | 2548 | get-symbol-description@1.1.0: 2549 | dependencies: 2550 | call-bound: 1.0.3 2551 | es-errors: 1.3.0 2552 | get-intrinsic: 1.2.7 2553 | 2554 | glob-parent@5.1.2: 2555 | dependencies: 2556 | is-glob: 4.0.3 2557 | 2558 | glob-parent@6.0.2: 2559 | dependencies: 2560 | is-glob: 4.0.3 2561 | 2562 | globals@14.0.0: {} 2563 | 2564 | globals@15.14.0: {} 2565 | 2566 | globalthis@1.0.4: 2567 | dependencies: 2568 | define-properties: 1.2.1 2569 | gopd: 1.2.0 2570 | 2571 | gopd@1.2.0: {} 2572 | 2573 | graceful-fs@4.2.11: {} 2574 | 2575 | graphemer@1.4.0: {} 2576 | 2577 | has-bigints@1.1.0: {} 2578 | 2579 | has-flag@4.0.0: {} 2580 | 2581 | has-property-descriptors@1.0.2: 2582 | dependencies: 2583 | es-define-property: 1.0.1 2584 | 2585 | has-proto@1.2.0: 2586 | dependencies: 2587 | dunder-proto: 1.0.1 2588 | 2589 | has-symbols@1.1.0: {} 2590 | 2591 | has-tostringtag@1.0.2: 2592 | dependencies: 2593 | has-symbols: 1.1.0 2594 | 2595 | hasown@2.0.2: 2596 | dependencies: 2597 | function-bind: 1.1.2 2598 | 2599 | ignore@5.3.2: {} 2600 | 2601 | import-fresh@3.3.1: 2602 | dependencies: 2603 | parent-module: 1.0.1 2604 | resolve-from: 4.0.0 2605 | 2606 | imurmurhash@0.1.4: {} 2607 | 2608 | internal-slot@1.1.0: 2609 | dependencies: 2610 | es-errors: 1.3.0 2611 | hasown: 2.0.2 2612 | side-channel: 1.1.0 2613 | 2614 | is-array-buffer@3.0.5: 2615 | dependencies: 2616 | call-bind: 1.0.8 2617 | call-bound: 1.0.3 2618 | get-intrinsic: 1.2.7 2619 | 2620 | is-arrayish@0.3.2: 2621 | optional: true 2622 | 2623 | is-async-function@2.1.1: 2624 | dependencies: 2625 | async-function: 1.0.0 2626 | call-bound: 1.0.3 2627 | get-proto: 1.0.1 2628 | has-tostringtag: 1.0.2 2629 | safe-regex-test: 1.1.0 2630 | 2631 | is-bigint@1.1.0: 2632 | dependencies: 2633 | has-bigints: 1.1.0 2634 | 2635 | is-boolean-object@1.2.1: 2636 | dependencies: 2637 | call-bound: 1.0.3 2638 | has-tostringtag: 1.0.2 2639 | 2640 | is-callable@1.2.7: {} 2641 | 2642 | is-core-module@2.16.1: 2643 | dependencies: 2644 | hasown: 2.0.2 2645 | 2646 | is-data-view@1.0.2: 2647 | dependencies: 2648 | call-bound: 1.0.3 2649 | get-intrinsic: 1.2.7 2650 | is-typed-array: 1.1.15 2651 | 2652 | is-date-object@1.1.0: 2653 | dependencies: 2654 | call-bound: 1.0.3 2655 | has-tostringtag: 1.0.2 2656 | 2657 | is-extglob@2.1.1: {} 2658 | 2659 | is-finalizationregistry@1.1.1: 2660 | dependencies: 2661 | call-bound: 1.0.3 2662 | 2663 | is-generator-function@1.1.0: 2664 | dependencies: 2665 | call-bound: 1.0.3 2666 | get-proto: 1.0.1 2667 | has-tostringtag: 1.0.2 2668 | safe-regex-test: 1.1.0 2669 | 2670 | is-glob@4.0.3: 2671 | dependencies: 2672 | is-extglob: 2.1.1 2673 | 2674 | is-map@2.0.3: {} 2675 | 2676 | is-number-object@1.1.1: 2677 | dependencies: 2678 | call-bound: 1.0.3 2679 | has-tostringtag: 1.0.2 2680 | 2681 | is-number@7.0.0: {} 2682 | 2683 | is-regex@1.2.1: 2684 | dependencies: 2685 | call-bound: 1.0.3 2686 | gopd: 1.2.0 2687 | has-tostringtag: 1.0.2 2688 | hasown: 2.0.2 2689 | 2690 | is-set@2.0.3: {} 2691 | 2692 | is-shared-array-buffer@1.0.4: 2693 | dependencies: 2694 | call-bound: 1.0.3 2695 | 2696 | is-string@1.1.1: 2697 | dependencies: 2698 | call-bound: 1.0.3 2699 | has-tostringtag: 1.0.2 2700 | 2701 | is-symbol@1.1.1: 2702 | dependencies: 2703 | call-bound: 1.0.3 2704 | has-symbols: 1.1.0 2705 | safe-regex-test: 1.1.0 2706 | 2707 | is-typed-array@1.1.15: 2708 | dependencies: 2709 | which-typed-array: 1.1.18 2710 | 2711 | is-weakmap@2.0.2: {} 2712 | 2713 | is-weakref@1.1.0: 2714 | dependencies: 2715 | call-bound: 1.0.3 2716 | 2717 | is-weakset@2.0.4: 2718 | dependencies: 2719 | call-bound: 1.0.3 2720 | get-intrinsic: 1.2.7 2721 | 2722 | isarray@2.0.5: {} 2723 | 2724 | isexe@2.0.0: {} 2725 | 2726 | iterator.prototype@1.1.5: 2727 | dependencies: 2728 | define-data-property: 1.1.4 2729 | es-object-atoms: 1.1.1 2730 | get-intrinsic: 1.2.7 2731 | get-proto: 1.0.1 2732 | has-symbols: 1.1.0 2733 | set-function-name: 2.0.2 2734 | 2735 | jiti@2.4.2: {} 2736 | 2737 | js-tokens@4.0.0: {} 2738 | 2739 | js-yaml@4.1.0: 2740 | dependencies: 2741 | argparse: 2.0.1 2742 | 2743 | json-buffer@3.0.1: {} 2744 | 2745 | json-schema-traverse@0.4.1: {} 2746 | 2747 | json-stable-stringify-without-jsonify@1.0.1: {} 2748 | 2749 | jsx-ast-utils@3.3.5: 2750 | dependencies: 2751 | array-includes: 3.1.8 2752 | array.prototype.flat: 1.3.3 2753 | object.assign: 4.1.7 2754 | object.values: 1.2.1 2755 | 2756 | keyv@4.5.4: 2757 | dependencies: 2758 | json-buffer: 3.0.1 2759 | 2760 | levn@0.4.1: 2761 | dependencies: 2762 | prelude-ls: 1.2.1 2763 | type-check: 0.4.0 2764 | 2765 | lightningcss-darwin-arm64@1.29.1: 2766 | optional: true 2767 | 2768 | lightningcss-darwin-x64@1.29.1: 2769 | optional: true 2770 | 2771 | lightningcss-freebsd-x64@1.29.1: 2772 | optional: true 2773 | 2774 | lightningcss-linux-arm-gnueabihf@1.29.1: 2775 | optional: true 2776 | 2777 | lightningcss-linux-arm64-gnu@1.29.1: 2778 | optional: true 2779 | 2780 | lightningcss-linux-arm64-musl@1.29.1: 2781 | optional: true 2782 | 2783 | lightningcss-linux-x64-gnu@1.29.1: 2784 | optional: true 2785 | 2786 | lightningcss-linux-x64-musl@1.29.1: 2787 | optional: true 2788 | 2789 | lightningcss-win32-arm64-msvc@1.29.1: 2790 | optional: true 2791 | 2792 | lightningcss-win32-x64-msvc@1.29.1: 2793 | optional: true 2794 | 2795 | lightningcss@1.29.1: 2796 | dependencies: 2797 | detect-libc: 1.0.3 2798 | optionalDependencies: 2799 | lightningcss-darwin-arm64: 1.29.1 2800 | lightningcss-darwin-x64: 1.29.1 2801 | lightningcss-freebsd-x64: 1.29.1 2802 | lightningcss-linux-arm-gnueabihf: 1.29.1 2803 | lightningcss-linux-arm64-gnu: 1.29.1 2804 | lightningcss-linux-arm64-musl: 1.29.1 2805 | lightningcss-linux-x64-gnu: 1.29.1 2806 | lightningcss-linux-x64-musl: 1.29.1 2807 | lightningcss-win32-arm64-msvc: 1.29.1 2808 | lightningcss-win32-x64-msvc: 1.29.1 2809 | 2810 | locate-path@6.0.0: 2811 | dependencies: 2812 | p-locate: 5.0.0 2813 | 2814 | lodash.merge@4.6.2: {} 2815 | 2816 | loose-envify@1.4.0: 2817 | dependencies: 2818 | js-tokens: 4.0.0 2819 | 2820 | math-intrinsics@1.1.0: {} 2821 | 2822 | merge2@1.4.1: {} 2823 | 2824 | micromatch@4.0.8: 2825 | dependencies: 2826 | braces: 3.0.3 2827 | picomatch: 2.3.1 2828 | 2829 | minimatch@3.1.2: 2830 | dependencies: 2831 | brace-expansion: 1.1.11 2832 | 2833 | minimatch@9.0.5: 2834 | dependencies: 2835 | brace-expansion: 2.0.1 2836 | 2837 | ms@2.1.3: {} 2838 | 2839 | nanoid@3.3.8: {} 2840 | 2841 | natural-compare@1.4.0: {} 2842 | 2843 | next@15.2.0-canary.63(react-dom@19.0.0(react@19.0.0))(react@19.0.0): 2844 | dependencies: 2845 | '@next/env': 15.2.0-canary.63 2846 | '@swc/counter': 0.1.3 2847 | '@swc/helpers': 0.5.15 2848 | busboy: 1.6.0 2849 | caniuse-lite: 1.0.30001700 2850 | postcss: 8.4.31 2851 | react: 19.0.0 2852 | react-dom: 19.0.0(react@19.0.0) 2853 | styled-jsx: 5.1.6(react@19.0.0) 2854 | optionalDependencies: 2855 | '@next/swc-darwin-arm64': 15.2.0-canary.63 2856 | '@next/swc-darwin-x64': 15.2.0-canary.63 2857 | '@next/swc-linux-arm64-gnu': 15.2.0-canary.63 2858 | '@next/swc-linux-arm64-musl': 15.2.0-canary.63 2859 | '@next/swc-linux-x64-gnu': 15.2.0-canary.63 2860 | '@next/swc-linux-x64-musl': 15.2.0-canary.63 2861 | '@next/swc-win32-arm64-msvc': 15.2.0-canary.63 2862 | '@next/swc-win32-x64-msvc': 15.2.0-canary.63 2863 | sharp: 0.33.5 2864 | transitivePeerDependencies: 2865 | - '@babel/core' 2866 | - babel-plugin-macros 2867 | 2868 | object-assign@4.1.1: {} 2869 | 2870 | object-inspect@1.13.3: {} 2871 | 2872 | object-keys@1.1.1: {} 2873 | 2874 | object.assign@4.1.7: 2875 | dependencies: 2876 | call-bind: 1.0.8 2877 | call-bound: 1.0.3 2878 | define-properties: 1.2.1 2879 | es-object-atoms: 1.1.1 2880 | has-symbols: 1.1.0 2881 | object-keys: 1.1.1 2882 | 2883 | object.entries@1.1.8: 2884 | dependencies: 2885 | call-bind: 1.0.8 2886 | define-properties: 1.2.1 2887 | es-object-atoms: 1.1.1 2888 | 2889 | object.fromentries@2.0.8: 2890 | dependencies: 2891 | call-bind: 1.0.8 2892 | define-properties: 1.2.1 2893 | es-abstract: 1.23.9 2894 | es-object-atoms: 1.1.1 2895 | 2896 | object.values@1.2.1: 2897 | dependencies: 2898 | call-bind: 1.0.8 2899 | call-bound: 1.0.3 2900 | define-properties: 1.2.1 2901 | es-object-atoms: 1.1.1 2902 | 2903 | optionator@0.9.4: 2904 | dependencies: 2905 | deep-is: 0.1.4 2906 | fast-levenshtein: 2.0.6 2907 | levn: 0.4.1 2908 | prelude-ls: 1.2.1 2909 | type-check: 0.4.0 2910 | word-wrap: 1.2.5 2911 | 2912 | own-keys@1.0.1: 2913 | dependencies: 2914 | get-intrinsic: 1.2.7 2915 | object-keys: 1.1.1 2916 | safe-push-apply: 1.0.0 2917 | 2918 | p-limit@3.1.0: 2919 | dependencies: 2920 | yocto-queue: 0.1.0 2921 | 2922 | p-locate@5.0.0: 2923 | dependencies: 2924 | p-limit: 3.1.0 2925 | 2926 | parent-module@1.0.1: 2927 | dependencies: 2928 | callsites: 3.1.0 2929 | 2930 | path-exists@4.0.0: {} 2931 | 2932 | path-key@3.1.1: {} 2933 | 2934 | path-parse@1.0.7: {} 2935 | 2936 | picocolors@1.1.1: {} 2937 | 2938 | picomatch@2.3.1: {} 2939 | 2940 | possible-typed-array-names@1.0.0: {} 2941 | 2942 | postcss@8.4.31: 2943 | dependencies: 2944 | nanoid: 3.3.8 2945 | picocolors: 1.1.1 2946 | source-map-js: 1.2.1 2947 | 2948 | postcss@8.5.2: 2949 | dependencies: 2950 | nanoid: 3.3.8 2951 | picocolors: 1.1.1 2952 | source-map-js: 1.2.1 2953 | 2954 | prelude-ls@1.2.1: {} 2955 | 2956 | prettier@3.5.0: {} 2957 | 2958 | prop-types@15.8.1: 2959 | dependencies: 2960 | loose-envify: 1.4.0 2961 | object-assign: 4.1.1 2962 | react-is: 16.13.1 2963 | 2964 | punycode@2.3.1: {} 2965 | 2966 | queue-microtask@1.2.3: {} 2967 | 2968 | react-dom@19.0.0(react@19.0.0): 2969 | dependencies: 2970 | react: 19.0.0 2971 | scheduler: 0.25.0 2972 | 2973 | react-is@16.13.1: {} 2974 | 2975 | react@19.0.0: {} 2976 | 2977 | reflect.getprototypeof@1.0.10: 2978 | dependencies: 2979 | call-bind: 1.0.8 2980 | define-properties: 1.2.1 2981 | es-abstract: 1.23.9 2982 | es-errors: 1.3.0 2983 | es-object-atoms: 1.1.1 2984 | get-intrinsic: 1.2.7 2985 | get-proto: 1.0.1 2986 | which-builtin-type: 1.2.1 2987 | 2988 | regexp.prototype.flags@1.5.4: 2989 | dependencies: 2990 | call-bind: 1.0.8 2991 | define-properties: 1.2.1 2992 | es-errors: 1.3.0 2993 | get-proto: 1.0.1 2994 | gopd: 1.2.0 2995 | set-function-name: 2.0.2 2996 | 2997 | resolve-from@4.0.0: {} 2998 | 2999 | resolve@2.0.0-next.5: 3000 | dependencies: 3001 | is-core-module: 2.16.1 3002 | path-parse: 1.0.7 3003 | supports-preserve-symlinks-flag: 1.0.0 3004 | 3005 | reusify@1.0.4: {} 3006 | 3007 | run-parallel@1.2.0: 3008 | dependencies: 3009 | queue-microtask: 1.2.3 3010 | 3011 | safe-array-concat@1.1.3: 3012 | dependencies: 3013 | call-bind: 1.0.8 3014 | call-bound: 1.0.3 3015 | get-intrinsic: 1.2.7 3016 | has-symbols: 1.1.0 3017 | isarray: 2.0.5 3018 | 3019 | safe-push-apply@1.0.0: 3020 | dependencies: 3021 | es-errors: 1.3.0 3022 | isarray: 2.0.5 3023 | 3024 | safe-regex-test@1.1.0: 3025 | dependencies: 3026 | call-bound: 1.0.3 3027 | es-errors: 1.3.0 3028 | is-regex: 1.2.1 3029 | 3030 | scheduler@0.25.0: {} 3031 | 3032 | semver@6.3.1: {} 3033 | 3034 | semver@7.7.1: {} 3035 | 3036 | set-function-length@1.2.2: 3037 | dependencies: 3038 | define-data-property: 1.1.4 3039 | es-errors: 1.3.0 3040 | function-bind: 1.1.2 3041 | get-intrinsic: 1.2.7 3042 | gopd: 1.2.0 3043 | has-property-descriptors: 1.0.2 3044 | 3045 | set-function-name@2.0.2: 3046 | dependencies: 3047 | define-data-property: 1.1.4 3048 | es-errors: 1.3.0 3049 | functions-have-names: 1.2.3 3050 | has-property-descriptors: 1.0.2 3051 | 3052 | set-proto@1.0.0: 3053 | dependencies: 3054 | dunder-proto: 1.0.1 3055 | es-errors: 1.3.0 3056 | es-object-atoms: 1.1.1 3057 | 3058 | sharp@0.33.5: 3059 | dependencies: 3060 | color: 4.2.3 3061 | detect-libc: 2.0.3 3062 | semver: 7.7.1 3063 | optionalDependencies: 3064 | '@img/sharp-darwin-arm64': 0.33.5 3065 | '@img/sharp-darwin-x64': 0.33.5 3066 | '@img/sharp-libvips-darwin-arm64': 1.0.4 3067 | '@img/sharp-libvips-darwin-x64': 1.0.4 3068 | '@img/sharp-libvips-linux-arm': 1.0.5 3069 | '@img/sharp-libvips-linux-arm64': 1.0.4 3070 | '@img/sharp-libvips-linux-s390x': 1.0.4 3071 | '@img/sharp-libvips-linux-x64': 1.0.4 3072 | '@img/sharp-libvips-linuxmusl-arm64': 1.0.4 3073 | '@img/sharp-libvips-linuxmusl-x64': 1.0.4 3074 | '@img/sharp-linux-arm': 0.33.5 3075 | '@img/sharp-linux-arm64': 0.33.5 3076 | '@img/sharp-linux-s390x': 0.33.5 3077 | '@img/sharp-linux-x64': 0.33.5 3078 | '@img/sharp-linuxmusl-arm64': 0.33.5 3079 | '@img/sharp-linuxmusl-x64': 0.33.5 3080 | '@img/sharp-wasm32': 0.33.5 3081 | '@img/sharp-win32-ia32': 0.33.5 3082 | '@img/sharp-win32-x64': 0.33.5 3083 | optional: true 3084 | 3085 | shebang-command@2.0.0: 3086 | dependencies: 3087 | shebang-regex: 3.0.0 3088 | 3089 | shebang-regex@3.0.0: {} 3090 | 3091 | side-channel-list@1.0.0: 3092 | dependencies: 3093 | es-errors: 1.3.0 3094 | object-inspect: 1.13.3 3095 | 3096 | side-channel-map@1.0.1: 3097 | dependencies: 3098 | call-bound: 1.0.3 3099 | es-errors: 1.3.0 3100 | get-intrinsic: 1.2.7 3101 | object-inspect: 1.13.3 3102 | 3103 | side-channel-weakmap@1.0.2: 3104 | dependencies: 3105 | call-bound: 1.0.3 3106 | es-errors: 1.3.0 3107 | get-intrinsic: 1.2.7 3108 | object-inspect: 1.13.3 3109 | side-channel-map: 1.0.1 3110 | 3111 | side-channel@1.1.0: 3112 | dependencies: 3113 | es-errors: 1.3.0 3114 | object-inspect: 1.13.3 3115 | side-channel-list: 1.0.0 3116 | side-channel-map: 1.0.1 3117 | side-channel-weakmap: 1.0.2 3118 | 3119 | simple-swizzle@0.2.2: 3120 | dependencies: 3121 | is-arrayish: 0.3.2 3122 | optional: true 3123 | 3124 | source-map-js@1.2.1: {} 3125 | 3126 | streamsearch@1.1.0: {} 3127 | 3128 | string.prototype.matchall@4.0.12: 3129 | dependencies: 3130 | call-bind: 1.0.8 3131 | call-bound: 1.0.3 3132 | define-properties: 1.2.1 3133 | es-abstract: 1.23.9 3134 | es-errors: 1.3.0 3135 | es-object-atoms: 1.1.1 3136 | get-intrinsic: 1.2.7 3137 | gopd: 1.2.0 3138 | has-symbols: 1.1.0 3139 | internal-slot: 1.1.0 3140 | regexp.prototype.flags: 1.5.4 3141 | set-function-name: 2.0.2 3142 | side-channel: 1.1.0 3143 | 3144 | string.prototype.repeat@1.0.0: 3145 | dependencies: 3146 | define-properties: 1.2.1 3147 | es-abstract: 1.23.9 3148 | 3149 | string.prototype.trim@1.2.10: 3150 | dependencies: 3151 | call-bind: 1.0.8 3152 | call-bound: 1.0.3 3153 | define-data-property: 1.1.4 3154 | define-properties: 1.2.1 3155 | es-abstract: 1.23.9 3156 | es-object-atoms: 1.1.1 3157 | has-property-descriptors: 1.0.2 3158 | 3159 | string.prototype.trimend@1.0.9: 3160 | dependencies: 3161 | call-bind: 1.0.8 3162 | call-bound: 1.0.3 3163 | define-properties: 1.2.1 3164 | es-object-atoms: 1.1.1 3165 | 3166 | string.prototype.trimstart@1.0.8: 3167 | dependencies: 3168 | call-bind: 1.0.8 3169 | define-properties: 1.2.1 3170 | es-object-atoms: 1.1.1 3171 | 3172 | strip-json-comments@3.1.1: {} 3173 | 3174 | styled-jsx@5.1.6(react@19.0.0): 3175 | dependencies: 3176 | client-only: 0.0.1 3177 | react: 19.0.0 3178 | 3179 | supports-color@7.2.0: 3180 | dependencies: 3181 | has-flag: 4.0.0 3182 | 3183 | supports-preserve-symlinks-flag@1.0.0: {} 3184 | 3185 | tailwind-merge@3.0.1: {} 3186 | 3187 | tailwindcss-animate@1.0.7(tailwindcss@4.0.6): 3188 | dependencies: 3189 | tailwindcss: 4.0.6 3190 | 3191 | tailwindcss@4.0.6: {} 3192 | 3193 | tapable@2.2.1: {} 3194 | 3195 | to-regex-range@5.0.1: 3196 | dependencies: 3197 | is-number: 7.0.0 3198 | 3199 | ts-api-utils@2.0.1(typescript@5.7.3): 3200 | dependencies: 3201 | typescript: 5.7.3 3202 | 3203 | tslib@2.8.1: {} 3204 | 3205 | turbo-darwin-64@2.4.2: 3206 | optional: true 3207 | 3208 | turbo-darwin-arm64@2.4.2: 3209 | optional: true 3210 | 3211 | turbo-linux-64@2.4.2: 3212 | optional: true 3213 | 3214 | turbo-linux-arm64@2.4.2: 3215 | optional: true 3216 | 3217 | turbo-windows-64@2.4.2: 3218 | optional: true 3219 | 3220 | turbo-windows-arm64@2.4.2: 3221 | optional: true 3222 | 3223 | turbo@2.4.2: 3224 | optionalDependencies: 3225 | turbo-darwin-64: 2.4.2 3226 | turbo-darwin-arm64: 2.4.2 3227 | turbo-linux-64: 2.4.2 3228 | turbo-linux-arm64: 2.4.2 3229 | turbo-windows-64: 2.4.2 3230 | turbo-windows-arm64: 2.4.2 3231 | 3232 | type-check@0.4.0: 3233 | dependencies: 3234 | prelude-ls: 1.2.1 3235 | 3236 | typed-array-buffer@1.0.3: 3237 | dependencies: 3238 | call-bound: 1.0.3 3239 | es-errors: 1.3.0 3240 | is-typed-array: 1.1.15 3241 | 3242 | typed-array-byte-length@1.0.3: 3243 | dependencies: 3244 | call-bind: 1.0.8 3245 | for-each: 0.3.3 3246 | gopd: 1.2.0 3247 | has-proto: 1.2.0 3248 | is-typed-array: 1.1.15 3249 | 3250 | typed-array-byte-offset@1.0.4: 3251 | dependencies: 3252 | available-typed-arrays: 1.0.7 3253 | call-bind: 1.0.8 3254 | for-each: 0.3.3 3255 | gopd: 1.2.0 3256 | has-proto: 1.2.0 3257 | is-typed-array: 1.1.15 3258 | reflect.getprototypeof: 1.0.10 3259 | 3260 | typed-array-length@1.0.7: 3261 | dependencies: 3262 | call-bind: 1.0.8 3263 | for-each: 0.3.3 3264 | gopd: 1.2.0 3265 | is-typed-array: 1.1.15 3266 | possible-typed-array-names: 1.0.0 3267 | reflect.getprototypeof: 1.0.10 3268 | 3269 | typescript-eslint@8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3): 3270 | dependencies: 3271 | '@typescript-eslint/eslint-plugin': 8.23.0(@typescript-eslint/parser@8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3))(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3) 3272 | '@typescript-eslint/parser': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3) 3273 | '@typescript-eslint/utils': 8.23.0(eslint@9.20.0(jiti@2.4.2))(typescript@5.7.3) 3274 | eslint: 9.20.0(jiti@2.4.2) 3275 | typescript: 5.7.3 3276 | transitivePeerDependencies: 3277 | - supports-color 3278 | 3279 | typescript@5.7.3: {} 3280 | 3281 | unbox-primitive@1.1.0: 3282 | dependencies: 3283 | call-bound: 1.0.3 3284 | has-bigints: 1.1.0 3285 | has-symbols: 1.1.0 3286 | which-boxed-primitive: 1.1.1 3287 | 3288 | undici-types@6.20.0: {} 3289 | 3290 | uri-js@4.4.1: 3291 | dependencies: 3292 | punycode: 2.3.1 3293 | 3294 | which-boxed-primitive@1.1.1: 3295 | dependencies: 3296 | is-bigint: 1.1.0 3297 | is-boolean-object: 1.2.1 3298 | is-number-object: 1.1.1 3299 | is-string: 1.1.1 3300 | is-symbol: 1.1.1 3301 | 3302 | which-builtin-type@1.2.1: 3303 | dependencies: 3304 | call-bound: 1.0.3 3305 | function.prototype.name: 1.1.8 3306 | has-tostringtag: 1.0.2 3307 | is-async-function: 2.1.1 3308 | is-date-object: 1.1.0 3309 | is-finalizationregistry: 1.1.1 3310 | is-generator-function: 1.1.0 3311 | is-regex: 1.2.1 3312 | is-weakref: 1.1.0 3313 | isarray: 2.0.5 3314 | which-boxed-primitive: 1.1.1 3315 | which-collection: 1.0.2 3316 | which-typed-array: 1.1.18 3317 | 3318 | which-collection@1.0.2: 3319 | dependencies: 3320 | is-map: 2.0.3 3321 | is-set: 2.0.3 3322 | is-weakmap: 2.0.2 3323 | is-weakset: 2.0.4 3324 | 3325 | which-typed-array@1.1.18: 3326 | dependencies: 3327 | available-typed-arrays: 1.0.7 3328 | call-bind: 1.0.8 3329 | call-bound: 1.0.3 3330 | for-each: 0.3.3 3331 | gopd: 1.2.0 3332 | has-tostringtag: 1.0.2 3333 | 3334 | which@2.0.2: 3335 | dependencies: 3336 | isexe: 2.0.0 3337 | 3338 | word-wrap@1.2.5: {} 3339 | 3340 | yocto-queue@0.1.0: {} 3341 | -------------------------------------------------------------------------------- /pnpm-workspace.yaml: -------------------------------------------------------------------------------- 1 | packages: 2 | - "apps/*" 3 | - "packages/*" 4 | -------------------------------------------------------------------------------- /turbo.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://turbo.build/schema.json", 3 | "ui": "tui", 4 | "tasks": { 5 | "build": { 6 | "dependsOn": ["^build"], 7 | "inputs": ["$TURBO_DEFAULT$", ".env*"], 8 | "outputs": [".next/**", "!.next/cache/**"] 9 | }, 10 | "lint": { 11 | "dependsOn": ["^lint"] 12 | }, 13 | "check-types": { 14 | "dependsOn": ["^check-types"] 15 | }, 16 | "dev": { 17 | "cache": false, 18 | "persistent": true 19 | }, 20 | "start": { 21 | "dependsOn": ["^start"] 22 | } 23 | } 24 | } 25 | --------------------------------------------------------------------------------